function loadConfigFile(configFile) { // .conf.js config file if (path.extname(configFile) === '.js') { return Config.create(require(configFile).config); } // json config provided if (path.extname(configFile) === '.json') { return Config.create(JSON.parse(fs.readFileSync(configFile, 'utf8'))); } throw new Error(`Config file ${configFile} can't be loaded`); }
function useAsync(entry) { return entry.package.options.await && shared.support.await && entry.extname !== ".mjs" }
fs .readdirSync(dir, { withFileTypes: true }) .filter(file => file.isFile()) .reduce((acc, file) => { const key = path.basename(file.name, path.extname(file.name)); acc[key] = loadFile(path.resolve(dir, file.name)); return acc; }, {})
task.plugin('uglify', {}, function * (file, opts) { opts = Object.assign({}, opts, { fromString:true }); const ext = extname(file.base); const rgx = new RegExp(`\\${ext}$`, 'i'); // replace extension with `.js` file.base = file.base.replace(rgx, '.js'); const out = minify(file.data.toString(), opts); // write output file.data = new Buffer(out.code); });
/** * Filter file on a list extension, can be used to find al image files * @param torrent Torrent to filter files from * @param extensions File extensions to filter on * @returns {Array} Array of torrent file objects matching one of the given extensions */ function filterOnExtension (torrent, extensions) { return torrent.files.filter(file => { const extname = path.extname(file.name).toLowerCase() return extensions.indexOf(extname) !== -1 }) }
through.obj((file, enc, next) => { if (file.isNull() || file.isDirectory()) { next(null, file); return; } if (!some(file.extname, file.history[0])) { next(null, file); return; } file.$ = cheerio.load(file.contents.toString(), options); next(null, file); })
const loadFile = file => { const ext = path.extname(file); switch (ext) { case '.js': return loadJsFile(file); case '.json': return loadJSONFile(file); default: return {}; } }
const globFiles = async (patterns, {ignores, extensions, cwd}) => ( await globby( patterns.length === 0 ? [`**/*.{${extensions.join(',')}}`] : arrify(patterns), {ignore: ignores, gitignore: true, cwd} )).filter(file => extensions.includes(path.extname(file).slice(1))).map(file => path.resolve(cwd, file))
visit(tree, 'link', node => { if ( !isUrl(node.url) && isRelative(node.url) && path.extname(node.url) && options.processFiles !== false && !/^mailto:/.test(node.url) ) { node.type = 'g-link' } })
function getTestRoot(currentPath) { if (!currentPath) currentPath = '.'; if (!path.isAbsolute(currentPath)) currentPath = path.join(process.cwd(), currentPath); currentPath = fs.lstatSync(currentPath).isDirectory() || !path.extname(currentPath) ? currentPath : path.dirname(currentPath); return currentPath; }
through.obj((file, enc, next) => { if (file.isNull() || file.isDirectory()) { next(null, file); return; } if (!some(file.extname, file.history[0])) { next(null, file); return; } file.$ = cheerio.load(file.contents.toString(), options); next(null, file); })
task.plugin('uglify', {}, function * (file, opts) { opts = Object.assign({}, opts, { fromString:true }); const ext = extname(file.base); const rgx = new RegExp(`\\${ext}$`, 'i'); // replace extension with `.js` file.base = file.base.replace(rgx, '.js'); const out = minify(file.data.toString(), opts); // write output file.data = new Buffer(out.code); });
visit(tree, 'link', node => { if ( !isUrl(node.url) && isRelative(node.url) && path.extname(node.url) && options.processFiles !== false && !/^mailto:/.test(node.url) ) { node.type = 'g-link' } })
fs .readdirSync(dir, { withFileTypes: true }) .filter(file => file.isFile()) .reduce((acc, file) => { const key = path.basename(file.name, path.extname(file.name)); acc[key] = loadFile(path.resolve(dir, file.name)); return acc; }, {})
const loadFile = file => { const ext = path.extname(file); switch (ext) { case '.js': return loadJsFile(file); case '.json': return loadJSONFile(file); default: return {}; } }