UNPKG

1.35 kBJavaScriptView Raw
1"use strict";function _interopDefault(a){return a&&"object"==typeof a&&"default"in a?a.default:a}var cli=_interopDefault(require("yargs")),fs=_interopDefault(require("fs-extra")),path=_interopDefault(require("path"));const packageJson=require("../../../package.json"),PACKAGES_DIR=path.resolve(__dirname,"../.."),packagePaths=fs.readdirSync(PACKAGES_DIR).map(a=>{const e=path.join(PACKAGES_DIR,a,"package.json");return{basename:a,packageJsonPath:e,packageJson:fs.readJsonSync(e),packagePath:path.join(PACKAGES_DIR,a)}}),env={root:{directory:path.resolve(__dirname,"../../.."),packageJson:packageJson},packagesDir:PACKAGES_DIR,packagePaths:packagePaths};function workspace(a){return(...e)=>a(...e,env)}const tasks={};async function sync(a,e){const{target:s}=a,n="all"===s?Object.keys(tasks):[s];for(const a of n){const s=tasks[a];await s.run(e)}}var sync$1={command:"sync [target]",desc:"sync files across workspaces",builder(a){a.positional("target",{describe:"choose a target to sync",choices:["all","npm","package","readme"],default:"all"})},handler:workspace(sync)};const packageJson$1=require("../package.json"),commands=[sync$1];async function main({argv:a}){cli.scriptName(packageJson$1.name).version(packageJson$1.version).usage("Usage: $0 [options]");for(const a of commands)cli.command(a);cli.strict().parse(a.slice(2)).argv}module.exports=main;