Samx Here
n1udSecurity


Server : Apache
System : Linux ks5.tuic.fr 6.1.0-18-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.76-1 (2024-02-01) x86_64
User : pragmatice ( 1003)
PHP Version : 8.2.24
Disable Function : NONE
Directory :  /home/etherpad/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/etherpad/make_docs.js
import {exec} from 'child_process'
import fs from 'fs'
import path from 'path'

import pjson from './src/package.json' assert {type: "json"}

const VERSION=pjson.version
console.log(`Building docs for version ${VERSION}`)

const createDirIfNotExists = (dir) => {
    if (!fs.existsSync(dir)){
        fs.mkdirSync(dir)
    }
}


function copyFolderSync(from, to) {
    if(fs.existsSync(to)){
        const stat = fs.lstatSync(to)
        if (stat.isDirectory()){
            fs.rmSync(to, { recursive: true })
        }
        else{
            fs.rmSync(to)
        }
    }
    fs.mkdirSync(to);
    fs.readdirSync(from).forEach(element => {
        if (fs.lstatSync(path.join(from, element)).isFile()) {
            fs.copyFileSync(path.join(from, element), path.join(to, element))
        } else {
            copyFolderSync(path.join(from, element), path.join(to, element))
        }
    });
}

exec('asciidoctor -v', (err,stdout)=>{
    if (err){
        console.log('Please install asciidoctor')
        console.log('https://asciidoctor.org/docs/install-toolchain/')
        process.exit(1)
    }
});


createDirIfNotExists('./out')
createDirIfNotExists('./out/doc')
createDirIfNotExists('./out/doc/api')



exec(`asciidoctor -D out/doc doc/index.adoc */**.adoc -a VERSION=${VERSION}`)
exec(`asciidoctor -D out/doc/api  ./doc/api/*.adoc -a VERSION=${VERSION}`)

copyFolderSync('./doc/public/', './out/doc/')

SAMX