Raiju/tests/source-helpers.js
2026-10-25 06:05:42 +03:00

17 lines
870 B
JavaScript

const { readFileSync, readdirSync } = require('node:fs');
const { resolve } = require('node:path');
const root = resolve(__dirname, '..');
function source(path) { return readFileSync(resolve(root, path), 'utf8'); }
function folderSources(path) {
return readdirSync(resolve(root, path), { withFileTypes: true }).sort((a, b) => a.name.localeCompare(b.name))
.map(entry => entry.isDirectory() ? folderSources(path + '/' + entry.name)
: /\.(php|js)$/.test(entry.name) ? source(path + '/' + entry.name) : '').join('\n');
}
function apiSource() { return source('admin/api.php') + '\n' + folderSources('admin/api'); }
function dashboardSource() {
return source('admin/dashboard.php').replace(/<\?php require __DIR__ \. '\/(dashboard\/[^']+)'; \?>/g,
(_, path) => source('admin/' + path));
}
module.exports = { apiSource, dashboardSource };