UNPKG

npx-run

Version:

Easily run scripts using npx.

46 lines (33 loc) 1.18 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getScripts = void 0; var _path = require("path"); var _modules = require("./modules"); const loadPkgModule = (pkgDir, path) => (0, _modules.loadModuleIfExists)((0, _path.join)(pkgDir, path)) || {}; const getPkgScripts = pkgDir => loadPkgModule(pkgDir, 'package.json').scripts || {}; const getScriptsModuleScripts = pkgDir => loadPkgModule(pkgDir, 'scripts').default || {}; const listScriptFiles = (pkgDir, fs) => { try { return fs.readdirSync((0, _path.join)(pkgDir, 'scripts')); } catch (_unused) { // we ignore if there is no scripts dir containing modules return []; } }; const getScriptsDirScripts = (pkgDir, fs) => { const scripts = {}; for (const fileName of listScriptFiles(pkgDir, fs)) { const name = (0, _path.basename)(fileName, '.js'); if (name !== 'index') { scripts[name] = `node -r npx-run/loaders ./scripts/${fileName}`; } } return scripts; }; const getScripts = (pkgDir, fs) => ({ ...getPkgScripts(pkgDir), ...getScriptsModuleScripts(pkgDir), ...getScriptsDirScripts(pkgDir, fs) }); exports.getScripts = getScripts;