Removed leftover files from the old build process.
This commit is contained in:
parent
3dff2e250f
commit
cbe077bb69
2 changed files with 0 additions and 143 deletions
108
src/assproc.js
108
src/assproc.js
|
@ -1,108 +0,0 @@
|
||||||
const fs = require('fs');
|
|
||||||
const path = require('path');
|
|
||||||
const readline = require('readline');
|
|
||||||
const utils = require('./utils.js');
|
|
||||||
|
|
||||||
exports.process = async function(root, options) {
|
|
||||||
const macroPrefix = options.prefix || '#';
|
|
||||||
const entryPoint = options.entry || '';
|
|
||||||
|
|
||||||
root = fs.realpathSync(root);
|
|
||||||
|
|
||||||
const included = [];
|
|
||||||
|
|
||||||
const processFile = async function(fileName) {
|
|
||||||
const fullPath = path.join(root, fileName);
|
|
||||||
if(included.includes(fullPath))
|
|
||||||
return '';
|
|
||||||
included.push(fullPath);
|
|
||||||
|
|
||||||
if(!fullPath.startsWith(root))
|
|
||||||
return '/* *** INVALID PATH: ' + fullPath + ' */';
|
|
||||||
if(!fs.existsSync(fullPath))
|
|
||||||
return '/* *** FILE NOT FOUND: ' + fullPath + ' */';
|
|
||||||
|
|
||||||
const lines = readline.createInterface({
|
|
||||||
input: fs.createReadStream(fullPath),
|
|
||||||
crlfDelay: Infinity,
|
|
||||||
});
|
|
||||||
|
|
||||||
let output = '';
|
|
||||||
let lastWasEmpty = false;
|
|
||||||
|
|
||||||
if(options.showPath)
|
|
||||||
output += "/* *** PATH: " + fullPath + " */\n";
|
|
||||||
|
|
||||||
for await(const line of lines) {
|
|
||||||
const lineTrimmed = utils.trim(line);
|
|
||||||
if(lineTrimmed === '')
|
|
||||||
continue;
|
|
||||||
|
|
||||||
if(line.startsWith(macroPrefix)) {
|
|
||||||
const args = lineTrimmed.split(' ');
|
|
||||||
const macro = utils.trim(utils.trimStart(args.shift(), macroPrefix));
|
|
||||||
|
|
||||||
switch(macro) {
|
|
||||||
case 'comment':
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 'include': {
|
|
||||||
const includePath = utils.trimEnd(args.join(' '), ';');
|
|
||||||
output += utils.trim(await processFile(includePath));
|
|
||||||
output += "\n";
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
case 'buildvars':
|
|
||||||
if(typeof options.buildVars === 'object') {
|
|
||||||
const bvTarget = options.buildVarsTarget || 'window';
|
|
||||||
const bvProps = [];
|
|
||||||
|
|
||||||
for(const bvName in options.buildVars)
|
|
||||||
bvProps.push(`${bvName}: { value: ${JSON.stringify(options.buildVars[bvName])} }`);
|
|
||||||
|
|
||||||
if(Object.keys(bvProps).length > 0)
|
|
||||||
output += `Object.defineProperties(${bvTarget}, { ${bvProps.join(', ')} });\n`;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
|
||||||
output += line;
|
|
||||||
output += "\n";
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
output += line;
|
|
||||||
output += "\n";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return output;
|
|
||||||
};
|
|
||||||
|
|
||||||
return await processFile(entryPoint);
|
|
||||||
};
|
|
||||||
|
|
||||||
exports.housekeep = function(assetsPath) {
|
|
||||||
const files = fs.readdirSync(assetsPath).map(fileName => {
|
|
||||||
const stats = fs.statSync(path.join(assetsPath, fileName));
|
|
||||||
return {
|
|
||||||
name: fileName,
|
|
||||||
lastMod: stats.mtimeMs,
|
|
||||||
};
|
|
||||||
}).sort((a, b) => b.lastMod - a.lastMod).map(info => info.name);
|
|
||||||
|
|
||||||
const regex = /^(.+)[\-\.]([a-f0-9]+)\.(.+)$/i;
|
|
||||||
const counts = {};
|
|
||||||
|
|
||||||
for(const fileName of files) {
|
|
||||||
const match = fileName.match(regex);
|
|
||||||
if(match) {
|
|
||||||
const name = match[1] + '-' + match[3];
|
|
||||||
counts[name] = (counts[name] || 0) + 1;
|
|
||||||
|
|
||||||
if(counts[name] > 5)
|
|
||||||
fs.unlinkSync(path.join(assetsPath, fileName));
|
|
||||||
} else console.log(`Encountered file name in assets folder with unexpected format: ${fileName}`);
|
|
||||||
}
|
|
||||||
};
|
|
35
src/utils.js
35
src/utils.js
|
@ -1,35 +0,0 @@
|
||||||
const crypto = require('crypto');
|
|
||||||
|
|
||||||
exports.strtr = (str, replacements) => str.toString().replace(
|
|
||||||
/{([^}]+)}/g, (match, key) => replacements[key] || match
|
|
||||||
);
|
|
||||||
|
|
||||||
const trim = function(str, chars, flags) {
|
|
||||||
if(chars === undefined)
|
|
||||||
chars = " \n\r\t\v\0";
|
|
||||||
|
|
||||||
let start = 0,
|
|
||||||
end = str.length;
|
|
||||||
|
|
||||||
if(flags & 0x01)
|
|
||||||
while(start < end && chars.indexOf(str[start]) >= 0)
|
|
||||||
++start;
|
|
||||||
|
|
||||||
if(flags & 0x02)
|
|
||||||
while(end > start && chars.indexOf(str[end - 1]) >= 0)
|
|
||||||
--end;
|
|
||||||
|
|
||||||
return (start > 0 || end < str.length)
|
|
||||||
? str.substring(start, end)
|
|
||||||
: str;
|
|
||||||
};
|
|
||||||
|
|
||||||
exports.trimStart = (str, chars) => trim(str, chars, 0x01);
|
|
||||||
exports.trimEnd = (str, chars) => trim(str, chars, 0x02);
|
|
||||||
exports.trim = (str, chars) => trim(str, chars, 0x03);
|
|
||||||
|
|
||||||
exports.shortHash = function(text) {
|
|
||||||
const hash = crypto.createHash('sha256');
|
|
||||||
hash.update(text);
|
|
||||||
return hash.digest('hex').substring(0, 8);
|
|
||||||
};
|
|
Loading…
Reference in a new issue