Files
liberama/build/includer.js

20 lines
614 B
JavaScript

const path = require('path');
const fs = require('fs');
exports.default = function includer(source) {
const lines = source.split('\n');
let result = [];
for (const line of lines) {
const trimmed = line.trim();
const m = trimmed.match(/^@@[\s]*?include[\s]*?\(['"](.*)['"]\)/);
if (m) {
const includedFile = path.resolve(path.dirname(this.resourcePath), m[1]);
const fileContent = fs.readFileSync(includedFile, 'utf8');
result.push(fileContent);
} else {
result.push(line);
}
}
return result.join('\n');
}