image-in-browser
Version:
Package for encoding / decoding images, transforming images, applying filters, drawing primitives on images on the client side (no need for server Node.js)
42 lines • 1.32 kB
JavaScript
import fs from 'fs';
import path from 'path';
const srcDirectory = 'src';
function getFiles(dir) {
const results = [];
const files = fs.readdirSync(dir, {
recursive: true,
});
for (const filePath of files) {
if (typeof filePath === 'string') {
const fullPath = path.join(dir, filePath);
const stat = fs.statSync(fullPath);
if (stat.isFile()) {
results.push(fullPath);
}
}
}
return results;
}
function normalizeImports() {
console.info('Import normalization...');
const regexpForImport = /(from\s+)(["'])(?!.*\.js)(\.?\.\/.*)(["'])/gm;
const stringToReplace = '$1$2$3.js$4';
const files = getFiles(srcDirectory);
for (const file of files) {
const currentContent = fs.readFileSync(file, {
encoding: 'utf8',
});
const newContent = currentContent.replace(regexpForImport, stringToReplace);
fs.writeFileSync(file, newContent, {
encoding: 'utf8',
});
}
console.info('Import normalization has been completed.');
}
function runPreBuildTasks() {
console.info('Starting pre-build tasks...');
normalizeImports();
console.info('Pre-build tasks are completed.');
}
runPreBuildTasks();
//# sourceMappingURL=pre-build.js.map