as-soon 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.cjs CHANGED
@@ -88,7 +88,10 @@ var commandToUse = command;
88
88
  (0, import_ldenv.loadEnv)({ mode: deploymentContext });
89
89
  function _execute() {
90
90
  return __async(this, null, function* () {
91
- (0, import_child_process.execFileSync)(commandToUse, commandArgs, { stdio: ["inherit", "inherit", "inherit"] });
91
+ try {
92
+ (0, import_child_process.execFileSync)(commandToUse, commandArgs, { stdio: ["inherit", "inherit", "inherit"] });
93
+ } catch (e) {
94
+ }
92
95
  });
93
96
  }
94
97
  function subscribe_target(absolute_path, execute) {
package/dist/cli.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/cli.ts"],"sourcesContent":["#!/usr/bin/env node\nimport { execFileSync } from 'child_process';\nimport watcher, { AsyncSubscription } from \"@parcel/watcher\";\nimport path from \"node:path\";\nimport fs from \"node:fs\";\nimport { debounce } from \"lodash\";\nimport { loadEnv } from \"ldenv\";\n\nconst args = process.argv.slice(2);\n\nfunction error(msg: string) {\n console.error(msg);\n process.exit(1);\n}\n\nlet deploymentContext = \"localhost\";\nlet argToConsume;\nlet command: string | undefined;\nlet commandArgs: string[] | undefined;\nconst options: { [key: string]: string[] } = {};\nfor (let i = 0; i < args.length; i++) {\n const arg = args[i];\n if (arg.startsWith(\"--\")) {\n argToConsume = arg.substring(2);\n } else if (arg.startsWith(\"-\")) {\n argToConsume = arg.substring(1);\n } else {\n if (argToConsume) {\n if (options[argToConsume]) {\n options[argToConsume].push(arg);\n } else {\n options[argToConsume] = [arg];\n }\n argToConsume = undefined;\n } else {\n command = arg;\n commandArgs = args.slice(i + 1);\n break;\n }\n }\n}\n\nif (!command) {\n error(`please specify a command`);\n}\nconst commandToUse = command!;\n\nloadEnv({ mode: deploymentContext });\n\nasync function _execute() {\n execFileSync(commandToUse, commandArgs, { stdio: [\"inherit\", \"inherit\", \"inherit\"] });\n}\n\n// let counter = 0;\nasync function subscribe_target(absolute_path: string, execute: () => void) {\n // const c = ++counter;\n const p = path.relative(process.cwd(), absolute_path);\n const subscription = await watcher.subscribe(absolute_path, (err, events) => {\n // console.log(`Files changed under ${p} (${c})`);\n console.log(`Files changed under ${p}`);\n for (const event of events) {\n if (event.type === 'delete' && event.path === absolute_path) {\n subscription.unsubscribe();\n listen(absolute_path, execute);\n return;\n }\n }\n execute();\n });\n}\n\nasync function listen(absolute_path: string, execute: () => void) {\n if (fs.existsSync(absolute_path)) {\n subscribe_target(absolute_path, execute);\n } else {\n // console.log(`${absolute_path} do not exist yet, listening on parent`)\n let tmp_subscription: AsyncSubscription | undefined = await watcher.subscribe(path.dirname(absolute_path), (err, events) => {\n for (const event of events) {\n if (event.type === 'create' && path.normalize(event.path) === absolute_path) {\n // console.log(`${absolute_path} just got created, listening for it...`);\n tmp_subscription?.unsubscribe();\n tmp_subscription = undefined;\n // wrap in a timeout to ensure @parcel/watcher hook on the correct inode?\n setTimeout(v => {\n subscribe_target(absolute_path, execute);\n }, 500);\n }\n }\n });\n }\n}\n\nasync function main() {\n const execute = debounce(_execute, 50);\n for (const p of options[\"w\"]) {\n const absolute_path = path.normalize(path.join(process.cwd(), p));\n listen(absolute_path, execute);\n }\n execute();\n}\nmain();\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,2BAA6B;AAC7B,qBAA2C;AAC3C,uBAAiB;AACjB,qBAAe;AACf,oBAAyB;AACzB,mBAAwB;AAExB,IAAM,OAAO,QAAQ,KAAK,MAAM,CAAC;AAEjC,SAAS,MAAM,KAAa;AAC1B,UAAQ,MAAM,GAAG;AACjB,UAAQ,KAAK,CAAC;AAChB;AAEA,IAAI,oBAAoB;AACxB,IAAI;AACJ,IAAI;AACJ,IAAI;AACJ,IAAM,UAAuC,CAAC;AAC9C,SAAS,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;AACpC,QAAM,MAAM,KAAK,CAAC;AAClB,MAAI,IAAI,WAAW,IAAI,GAAG;AACxB,mBAAe,IAAI,UAAU,CAAC;AAAA,EAChC,WAAW,IAAI,WAAW,GAAG,GAAG;AAC9B,mBAAe,IAAI,UAAU,CAAC;AAAA,EAChC,OAAO;AACL,QAAI,cAAc;AAChB,UAAI,QAAQ,YAAY,GAAG;AACzB,gBAAQ,YAAY,EAAE,KAAK,GAAG;AAAA,MAChC,OAAO;AACL,gBAAQ,YAAY,IAAI,CAAC,GAAG;AAAA,MAC9B;AACA,qBAAe;AAAA,IACjB,OAAO;AACL,gBAAU;AACV,oBAAc,KAAK,MAAM,IAAI,CAAC;AAC9B;AAAA,IACF;AAAA,EACF;AACF;AAEA,IAAI,CAAC,SAAS;AACZ,QAAM,0BAA0B;AAClC;AACA,IAAM,eAAe;AAAA,IAErB,sBAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEnC,SAAe,WAAW;AAAA;AACxB,2CAAa,cAAc,aAAa,EAAE,OAAO,CAAC,WAAW,WAAW,SAAS,EAAE,CAAC;AAAA,EACtF;AAAA;AAGA,SAAe,iBAAiB,eAAuB,SAAqB;AAAA;AAE1E,UAAM,IAAI,iBAAAA,QAAK,SAAS,QAAQ,IAAI,GAAG,aAAa;AACpD,UAAM,eAAe,MAAM,eAAAC,QAAQ,UAAU,eAAe,CAAC,KAAK,WAAW;AAE3E,cAAQ,IAAI,uBAAuB,GAAG;AACtC,iBAAW,SAAS,QAAQ;AAC1B,YAAI,MAAM,SAAS,YAAY,MAAM,SAAS,eAAe;AAC3D,uBAAa,YAAY;AACzB,iBAAO,eAAe,OAAO;AAC7B;AAAA,QACF;AAAA,MACF;AACA,cAAQ;AAAA,IACV,CAAC;AAAA,EACH;AAAA;AAEA,SAAe,OAAO,eAAuB,SAAqB;AAAA;AAChE,QAAI,eAAAC,QAAG,WAAW,aAAa,GAAG;AAChC,uBAAiB,eAAe,OAAO;AAAA,IACzC,OAAO;AAEL,UAAI,mBAAkD,MAAM,eAAAD,QAAQ,UAAU,iBAAAD,QAAK,QAAQ,aAAa,GAAG,CAAC,KAAK,WAAW;AAC1H,mBAAW,SAAS,QAAQ;AAC1B,cAAI,MAAM,SAAS,YAAY,iBAAAA,QAAK,UAAU,MAAM,IAAI,MAAM,eAAe;AAE3E,iEAAkB;AAClB,+BAAmB;AAEnB,uBAAW,OAAK;AACd,+BAAiB,eAAe,OAAO;AAAA,YACzC,GAAG,GAAG;AAAA,UACR;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF;AAAA;AAEA,SAAe,OAAO;AAAA;AACpB,UAAM,cAAU,wBAAS,UAAU,EAAE;AACrC,eAAW,KAAK,QAAQ,GAAG,GAAG;AAC5B,YAAM,gBAAgB,iBAAAA,QAAK,UAAU,iBAAAA,QAAK,KAAK,QAAQ,IAAI,GAAG,CAAC,CAAC;AAChE,aAAO,eAAe,OAAO;AAAA,IAC/B;AACA,YAAQ;AAAA,EACV;AAAA;AACA,KAAK;","names":["path","watcher","fs"]}
1
+ {"version":3,"sources":["../src/cli.ts"],"sourcesContent":["#!/usr/bin/env node\nimport { execFileSync } from 'child_process';\nimport watcher, { AsyncSubscription } from \"@parcel/watcher\";\nimport path from \"node:path\";\nimport fs from \"node:fs\";\nimport { debounce } from \"lodash\";\nimport { loadEnv } from \"ldenv\";\n\nconst args = process.argv.slice(2);\n\nfunction error(msg: string) {\n console.error(msg);\n process.exit(1);\n}\n\nlet deploymentContext = \"localhost\";\nlet argToConsume;\nlet command: string | undefined;\nlet commandArgs: string[] | undefined;\nconst options: { [key: string]: string[] } = {};\nfor (let i = 0; i < args.length; i++) {\n const arg = args[i];\n if (arg.startsWith(\"--\")) {\n argToConsume = arg.substring(2);\n } else if (arg.startsWith(\"-\")) {\n argToConsume = arg.substring(1);\n } else {\n if (argToConsume) {\n if (options[argToConsume]) {\n options[argToConsume].push(arg);\n } else {\n options[argToConsume] = [arg];\n }\n argToConsume = undefined;\n } else {\n command = arg;\n commandArgs = args.slice(i + 1);\n break;\n }\n }\n}\n\nif (!command) {\n error(`please specify a command`);\n}\nconst commandToUse = command!;\n\nloadEnv({ mode: deploymentContext });\n\nasync function _execute() {\n try {\n execFileSync(commandToUse, commandArgs, { stdio: [\"inherit\", \"inherit\", \"inherit\"] });\n } catch { }\n}\n\n// let counter = 0;\nasync function subscribe_target(absolute_path: string, execute: () => void) {\n // const c = ++counter;\n const p = path.relative(process.cwd(), absolute_path);\n const subscription = await watcher.subscribe(absolute_path, (err, events) => {\n // console.log(`Files changed under ${p} (${c})`);\n console.log(`Files changed under ${p}`);\n for (const event of events) {\n if (event.type === 'delete' && event.path === absolute_path) {\n subscription.unsubscribe();\n listen(absolute_path, execute);\n return;\n }\n }\n execute();\n });\n}\n\nasync function listen(absolute_path: string, execute: () => void) {\n if (fs.existsSync(absolute_path)) {\n subscribe_target(absolute_path, execute);\n } else {\n // console.log(`${absolute_path} do not exist yet, listening on parent`)\n let tmp_subscription: AsyncSubscription | undefined = await watcher.subscribe(path.dirname(absolute_path), (err, events) => {\n for (const event of events) {\n if (event.type === 'create' && path.normalize(event.path) === absolute_path) {\n // console.log(`${absolute_path} just got created, listening for it...`);\n tmp_subscription?.unsubscribe();\n tmp_subscription = undefined;\n // wrap in a timeout to ensure @parcel/watcher hook on the correct inode?\n setTimeout(v => {\n subscribe_target(absolute_path, execute);\n }, 500);\n }\n }\n });\n }\n}\n\nasync function main() {\n const execute = debounce(_execute, 50);\n for (const p of options[\"w\"]) {\n const absolute_path = path.normalize(path.join(process.cwd(), p));\n listen(absolute_path, execute);\n }\n execute();\n}\nmain();\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,2BAA6B;AAC7B,qBAA2C;AAC3C,uBAAiB;AACjB,qBAAe;AACf,oBAAyB;AACzB,mBAAwB;AAExB,IAAM,OAAO,QAAQ,KAAK,MAAM,CAAC;AAEjC,SAAS,MAAM,KAAa;AAC1B,UAAQ,MAAM,GAAG;AACjB,UAAQ,KAAK,CAAC;AAChB;AAEA,IAAI,oBAAoB;AACxB,IAAI;AACJ,IAAI;AACJ,IAAI;AACJ,IAAM,UAAuC,CAAC;AAC9C,SAAS,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;AACpC,QAAM,MAAM,KAAK,CAAC;AAClB,MAAI,IAAI,WAAW,IAAI,GAAG;AACxB,mBAAe,IAAI,UAAU,CAAC;AAAA,EAChC,WAAW,IAAI,WAAW,GAAG,GAAG;AAC9B,mBAAe,IAAI,UAAU,CAAC;AAAA,EAChC,OAAO;AACL,QAAI,cAAc;AAChB,UAAI,QAAQ,YAAY,GAAG;AACzB,gBAAQ,YAAY,EAAE,KAAK,GAAG;AAAA,MAChC,OAAO;AACL,gBAAQ,YAAY,IAAI,CAAC,GAAG;AAAA,MAC9B;AACA,qBAAe;AAAA,IACjB,OAAO;AACL,gBAAU;AACV,oBAAc,KAAK,MAAM,IAAI,CAAC;AAC9B;AAAA,IACF;AAAA,EACF;AACF;AAEA,IAAI,CAAC,SAAS;AACZ,QAAM,0BAA0B;AAClC;AACA,IAAM,eAAe;AAAA,IAErB,sBAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEnC,SAAe,WAAW;AAAA;AACxB,QAAI;AACF,6CAAa,cAAc,aAAa,EAAE,OAAO,CAAC,WAAW,WAAW,SAAS,EAAE,CAAC;AAAA,IACtF,SAAQ,GAAN;AAAA,IAAQ;AAAA,EACZ;AAAA;AAGA,SAAe,iBAAiB,eAAuB,SAAqB;AAAA;AAE1E,UAAM,IAAI,iBAAAA,QAAK,SAAS,QAAQ,IAAI,GAAG,aAAa;AACpD,UAAM,eAAe,MAAM,eAAAC,QAAQ,UAAU,eAAe,CAAC,KAAK,WAAW;AAE3E,cAAQ,IAAI,uBAAuB,GAAG;AACtC,iBAAW,SAAS,QAAQ;AAC1B,YAAI,MAAM,SAAS,YAAY,MAAM,SAAS,eAAe;AAC3D,uBAAa,YAAY;AACzB,iBAAO,eAAe,OAAO;AAC7B;AAAA,QACF;AAAA,MACF;AACA,cAAQ;AAAA,IACV,CAAC;AAAA,EACH;AAAA;AAEA,SAAe,OAAO,eAAuB,SAAqB;AAAA;AAChE,QAAI,eAAAC,QAAG,WAAW,aAAa,GAAG;AAChC,uBAAiB,eAAe,OAAO;AAAA,IACzC,OAAO;AAEL,UAAI,mBAAkD,MAAM,eAAAD,QAAQ,UAAU,iBAAAD,QAAK,QAAQ,aAAa,GAAG,CAAC,KAAK,WAAW;AAC1H,mBAAW,SAAS,QAAQ;AAC1B,cAAI,MAAM,SAAS,YAAY,iBAAAA,QAAK,UAAU,MAAM,IAAI,MAAM,eAAe;AAE3E,iEAAkB;AAClB,+BAAmB;AAEnB,uBAAW,OAAK;AACd,+BAAiB,eAAe,OAAO;AAAA,YACzC,GAAG,GAAG;AAAA,UACR;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF;AAAA;AAEA,SAAe,OAAO;AAAA;AACpB,UAAM,cAAU,wBAAS,UAAU,EAAE;AACrC,eAAW,KAAK,QAAQ,GAAG,GAAG;AAC5B,YAAM,gBAAgB,iBAAAA,QAAK,UAAU,iBAAAA,QAAK,KAAK,QAAQ,IAAI,GAAG,CAAC,CAAC;AAChE,aAAO,eAAe,OAAO;AAAA,IAC/B;AACA,YAAQ;AAAA,EACV;AAAA;AACA,KAAK;","names":["path","watcher","fs"]}
package/dist/cli.js CHANGED
@@ -48,7 +48,10 @@ var commandToUse = command;
48
48
  loadEnv({ mode: deploymentContext });
49
49
  function _execute() {
50
50
  return __async(this, null, function* () {
51
- execFileSync(commandToUse, commandArgs, { stdio: ["inherit", "inherit", "inherit"] });
51
+ try {
52
+ execFileSync(commandToUse, commandArgs, { stdio: ["inherit", "inherit", "inherit"] });
53
+ } catch (e) {
54
+ }
52
55
  });
53
56
  }
54
57
  function subscribe_target(absolute_path, execute) {
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/cli.ts"],"sourcesContent":["#!/usr/bin/env node\nimport { execFileSync } from 'child_process';\nimport watcher, { AsyncSubscription } from \"@parcel/watcher\";\nimport path from \"node:path\";\nimport fs from \"node:fs\";\nimport { debounce } from \"lodash\";\nimport { loadEnv } from \"ldenv\";\n\nconst args = process.argv.slice(2);\n\nfunction error(msg: string) {\n console.error(msg);\n process.exit(1);\n}\n\nlet deploymentContext = \"localhost\";\nlet argToConsume;\nlet command: string | undefined;\nlet commandArgs: string[] | undefined;\nconst options: { [key: string]: string[] } = {};\nfor (let i = 0; i < args.length; i++) {\n const arg = args[i];\n if (arg.startsWith(\"--\")) {\n argToConsume = arg.substring(2);\n } else if (arg.startsWith(\"-\")) {\n argToConsume = arg.substring(1);\n } else {\n if (argToConsume) {\n if (options[argToConsume]) {\n options[argToConsume].push(arg);\n } else {\n options[argToConsume] = [arg];\n }\n argToConsume = undefined;\n } else {\n command = arg;\n commandArgs = args.slice(i + 1);\n break;\n }\n }\n}\n\nif (!command) {\n error(`please specify a command`);\n}\nconst commandToUse = command!;\n\nloadEnv({ mode: deploymentContext });\n\nasync function _execute() {\n execFileSync(commandToUse, commandArgs, { stdio: [\"inherit\", \"inherit\", \"inherit\"] });\n}\n\n// let counter = 0;\nasync function subscribe_target(absolute_path: string, execute: () => void) {\n // const c = ++counter;\n const p = path.relative(process.cwd(), absolute_path);\n const subscription = await watcher.subscribe(absolute_path, (err, events) => {\n // console.log(`Files changed under ${p} (${c})`);\n console.log(`Files changed under ${p}`);\n for (const event of events) {\n if (event.type === 'delete' && event.path === absolute_path) {\n subscription.unsubscribe();\n listen(absolute_path, execute);\n return;\n }\n }\n execute();\n });\n}\n\nasync function listen(absolute_path: string, execute: () => void) {\n if (fs.existsSync(absolute_path)) {\n subscribe_target(absolute_path, execute);\n } else {\n // console.log(`${absolute_path} do not exist yet, listening on parent`)\n let tmp_subscription: AsyncSubscription | undefined = await watcher.subscribe(path.dirname(absolute_path), (err, events) => {\n for (const event of events) {\n if (event.type === 'create' && path.normalize(event.path) === absolute_path) {\n // console.log(`${absolute_path} just got created, listening for it...`);\n tmp_subscription?.unsubscribe();\n tmp_subscription = undefined;\n // wrap in a timeout to ensure @parcel/watcher hook on the correct inode?\n setTimeout(v => {\n subscribe_target(absolute_path, execute);\n }, 500);\n }\n }\n });\n }\n}\n\nasync function main() {\n const execute = debounce(_execute, 50);\n for (const p of options[\"w\"]) {\n const absolute_path = path.normalize(path.join(process.cwd(), p));\n listen(absolute_path, execute);\n }\n execute();\n}\nmain();\n"],"mappings":";;;;;;AACA,SAAS,oBAAoB;AAC7B,OAAO,aAAoC;AAC3C,OAAO,UAAU;AACjB,OAAO,QAAQ;AACf,SAAS,gBAAgB;AACzB,SAAS,eAAe;AAExB,IAAM,OAAO,QAAQ,KAAK,MAAM,CAAC;AAEjC,SAAS,MAAM,KAAa;AAC1B,UAAQ,MAAM,GAAG;AACjB,UAAQ,KAAK,CAAC;AAChB;AAEA,IAAI,oBAAoB;AACxB,IAAI;AACJ,IAAI;AACJ,IAAI;AACJ,IAAM,UAAuC,CAAC;AAC9C,SAAS,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;AACpC,QAAM,MAAM,KAAK,CAAC;AAClB,MAAI,IAAI,WAAW,IAAI,GAAG;AACxB,mBAAe,IAAI,UAAU,CAAC;AAAA,EAChC,WAAW,IAAI,WAAW,GAAG,GAAG;AAC9B,mBAAe,IAAI,UAAU,CAAC;AAAA,EAChC,OAAO;AACL,QAAI,cAAc;AAChB,UAAI,QAAQ,YAAY,GAAG;AACzB,gBAAQ,YAAY,EAAE,KAAK,GAAG;AAAA,MAChC,OAAO;AACL,gBAAQ,YAAY,IAAI,CAAC,GAAG;AAAA,MAC9B;AACA,qBAAe;AAAA,IACjB,OAAO;AACL,gBAAU;AACV,oBAAc,KAAK,MAAM,IAAI,CAAC;AAC9B;AAAA,IACF;AAAA,EACF;AACF;AAEA,IAAI,CAAC,SAAS;AACZ,QAAM,0BAA0B;AAClC;AACA,IAAM,eAAe;AAErB,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEnC,SAAe,WAAW;AAAA;AACxB,iBAAa,cAAc,aAAa,EAAE,OAAO,CAAC,WAAW,WAAW,SAAS,EAAE,CAAC;AAAA,EACtF;AAAA;AAGA,SAAe,iBAAiB,eAAuB,SAAqB;AAAA;AAE1E,UAAM,IAAI,KAAK,SAAS,QAAQ,IAAI,GAAG,aAAa;AACpD,UAAM,eAAe,MAAM,QAAQ,UAAU,eAAe,CAAC,KAAK,WAAW;AAE3E,cAAQ,IAAI,uBAAuB,GAAG;AACtC,iBAAW,SAAS,QAAQ;AAC1B,YAAI,MAAM,SAAS,YAAY,MAAM,SAAS,eAAe;AAC3D,uBAAa,YAAY;AACzB,iBAAO,eAAe,OAAO;AAC7B;AAAA,QACF;AAAA,MACF;AACA,cAAQ;AAAA,IACV,CAAC;AAAA,EACH;AAAA;AAEA,SAAe,OAAO,eAAuB,SAAqB;AAAA;AAChE,QAAI,GAAG,WAAW,aAAa,GAAG;AAChC,uBAAiB,eAAe,OAAO;AAAA,IACzC,OAAO;AAEL,UAAI,mBAAkD,MAAM,QAAQ,UAAU,KAAK,QAAQ,aAAa,GAAG,CAAC,KAAK,WAAW;AAC1H,mBAAW,SAAS,QAAQ;AAC1B,cAAI,MAAM,SAAS,YAAY,KAAK,UAAU,MAAM,IAAI,MAAM,eAAe;AAE3E,iEAAkB;AAClB,+BAAmB;AAEnB,uBAAW,OAAK;AACd,+BAAiB,eAAe,OAAO;AAAA,YACzC,GAAG,GAAG;AAAA,UACR;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF;AAAA;AAEA,SAAe,OAAO;AAAA;AACpB,UAAM,UAAU,SAAS,UAAU,EAAE;AACrC,eAAW,KAAK,QAAQ,GAAG,GAAG;AAC5B,YAAM,gBAAgB,KAAK,UAAU,KAAK,KAAK,QAAQ,IAAI,GAAG,CAAC,CAAC;AAChE,aAAO,eAAe,OAAO;AAAA,IAC/B;AACA,YAAQ;AAAA,EACV;AAAA;AACA,KAAK;","names":[]}
1
+ {"version":3,"sources":["../src/cli.ts"],"sourcesContent":["#!/usr/bin/env node\nimport { execFileSync } from 'child_process';\nimport watcher, { AsyncSubscription } from \"@parcel/watcher\";\nimport path from \"node:path\";\nimport fs from \"node:fs\";\nimport { debounce } from \"lodash\";\nimport { loadEnv } from \"ldenv\";\n\nconst args = process.argv.slice(2);\n\nfunction error(msg: string) {\n console.error(msg);\n process.exit(1);\n}\n\nlet deploymentContext = \"localhost\";\nlet argToConsume;\nlet command: string | undefined;\nlet commandArgs: string[] | undefined;\nconst options: { [key: string]: string[] } = {};\nfor (let i = 0; i < args.length; i++) {\n const arg = args[i];\n if (arg.startsWith(\"--\")) {\n argToConsume = arg.substring(2);\n } else if (arg.startsWith(\"-\")) {\n argToConsume = arg.substring(1);\n } else {\n if (argToConsume) {\n if (options[argToConsume]) {\n options[argToConsume].push(arg);\n } else {\n options[argToConsume] = [arg];\n }\n argToConsume = undefined;\n } else {\n command = arg;\n commandArgs = args.slice(i + 1);\n break;\n }\n }\n}\n\nif (!command) {\n error(`please specify a command`);\n}\nconst commandToUse = command!;\n\nloadEnv({ mode: deploymentContext });\n\nasync function _execute() {\n try {\n execFileSync(commandToUse, commandArgs, { stdio: [\"inherit\", \"inherit\", \"inherit\"] });\n } catch { }\n}\n\n// let counter = 0;\nasync function subscribe_target(absolute_path: string, execute: () => void) {\n // const c = ++counter;\n const p = path.relative(process.cwd(), absolute_path);\n const subscription = await watcher.subscribe(absolute_path, (err, events) => {\n // console.log(`Files changed under ${p} (${c})`);\n console.log(`Files changed under ${p}`);\n for (const event of events) {\n if (event.type === 'delete' && event.path === absolute_path) {\n subscription.unsubscribe();\n listen(absolute_path, execute);\n return;\n }\n }\n execute();\n });\n}\n\nasync function listen(absolute_path: string, execute: () => void) {\n if (fs.existsSync(absolute_path)) {\n subscribe_target(absolute_path, execute);\n } else {\n // console.log(`${absolute_path} do not exist yet, listening on parent`)\n let tmp_subscription: AsyncSubscription | undefined = await watcher.subscribe(path.dirname(absolute_path), (err, events) => {\n for (const event of events) {\n if (event.type === 'create' && path.normalize(event.path) === absolute_path) {\n // console.log(`${absolute_path} just got created, listening for it...`);\n tmp_subscription?.unsubscribe();\n tmp_subscription = undefined;\n // wrap in a timeout to ensure @parcel/watcher hook on the correct inode?\n setTimeout(v => {\n subscribe_target(absolute_path, execute);\n }, 500);\n }\n }\n });\n }\n}\n\nasync function main() {\n const execute = debounce(_execute, 50);\n for (const p of options[\"w\"]) {\n const absolute_path = path.normalize(path.join(process.cwd(), p));\n listen(absolute_path, execute);\n }\n execute();\n}\nmain();\n"],"mappings":";;;;;;AACA,SAAS,oBAAoB;AAC7B,OAAO,aAAoC;AAC3C,OAAO,UAAU;AACjB,OAAO,QAAQ;AACf,SAAS,gBAAgB;AACzB,SAAS,eAAe;AAExB,IAAM,OAAO,QAAQ,KAAK,MAAM,CAAC;AAEjC,SAAS,MAAM,KAAa;AAC1B,UAAQ,MAAM,GAAG;AACjB,UAAQ,KAAK,CAAC;AAChB;AAEA,IAAI,oBAAoB;AACxB,IAAI;AACJ,IAAI;AACJ,IAAI;AACJ,IAAM,UAAuC,CAAC;AAC9C,SAAS,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;AACpC,QAAM,MAAM,KAAK,CAAC;AAClB,MAAI,IAAI,WAAW,IAAI,GAAG;AACxB,mBAAe,IAAI,UAAU,CAAC;AAAA,EAChC,WAAW,IAAI,WAAW,GAAG,GAAG;AAC9B,mBAAe,IAAI,UAAU,CAAC;AAAA,EAChC,OAAO;AACL,QAAI,cAAc;AAChB,UAAI,QAAQ,YAAY,GAAG;AACzB,gBAAQ,YAAY,EAAE,KAAK,GAAG;AAAA,MAChC,OAAO;AACL,gBAAQ,YAAY,IAAI,CAAC,GAAG;AAAA,MAC9B;AACA,qBAAe;AAAA,IACjB,OAAO;AACL,gBAAU;AACV,oBAAc,KAAK,MAAM,IAAI,CAAC;AAC9B;AAAA,IACF;AAAA,EACF;AACF;AAEA,IAAI,CAAC,SAAS;AACZ,QAAM,0BAA0B;AAClC;AACA,IAAM,eAAe;AAErB,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEnC,SAAe,WAAW;AAAA;AACxB,QAAI;AACF,mBAAa,cAAc,aAAa,EAAE,OAAO,CAAC,WAAW,WAAW,SAAS,EAAE,CAAC;AAAA,IACtF,SAAQ,GAAN;AAAA,IAAQ;AAAA,EACZ;AAAA;AAGA,SAAe,iBAAiB,eAAuB,SAAqB;AAAA;AAE1E,UAAM,IAAI,KAAK,SAAS,QAAQ,IAAI,GAAG,aAAa;AACpD,UAAM,eAAe,MAAM,QAAQ,UAAU,eAAe,CAAC,KAAK,WAAW;AAE3E,cAAQ,IAAI,uBAAuB,GAAG;AACtC,iBAAW,SAAS,QAAQ;AAC1B,YAAI,MAAM,SAAS,YAAY,MAAM,SAAS,eAAe;AAC3D,uBAAa,YAAY;AACzB,iBAAO,eAAe,OAAO;AAC7B;AAAA,QACF;AAAA,MACF;AACA,cAAQ;AAAA,IACV,CAAC;AAAA,EACH;AAAA;AAEA,SAAe,OAAO,eAAuB,SAAqB;AAAA;AAChE,QAAI,GAAG,WAAW,aAAa,GAAG;AAChC,uBAAiB,eAAe,OAAO;AAAA,IACzC,OAAO;AAEL,UAAI,mBAAkD,MAAM,QAAQ,UAAU,KAAK,QAAQ,aAAa,GAAG,CAAC,KAAK,WAAW;AAC1H,mBAAW,SAAS,QAAQ;AAC1B,cAAI,MAAM,SAAS,YAAY,KAAK,UAAU,MAAM,IAAI,MAAM,eAAe;AAE3E,iEAAkB;AAClB,+BAAmB;AAEnB,uBAAW,OAAK;AACd,+BAAiB,eAAe,OAAO;AAAA,YACzC,GAAG,GAAG;AAAA,UACR;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF;AAAA;AAEA,SAAe,OAAO;AAAA;AACpB,UAAM,UAAU,SAAS,UAAU,EAAE;AACrC,eAAW,KAAK,QAAQ,GAAG,GAAG;AAC5B,YAAM,gBAAgB,KAAK,UAAU,KAAK,KAAK,QAAQ,IAAI,GAAG,CAAC,CAAC;AAChE,aAAO,eAAe,OAAO;AAAA,IAC/B;AACA,YAAQ;AAAA,EACV;AAAA;AACA,KAAK;","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "as-soon",
3
- "version": "0.0.3",
3
+ "version": "0.0.4",
4
4
  "description": "watch and execute",
5
5
  "publishConfig": {
6
6
  "access": "public"
package/src/cli.ts CHANGED
@@ -48,7 +48,9 @@ const commandToUse = command!;
48
48
  loadEnv({ mode: deploymentContext });
49
49
 
50
50
  async function _execute() {
51
- execFileSync(commandToUse, commandArgs, { stdio: ["inherit", "inherit", "inherit"] });
51
+ try {
52
+ execFileSync(commandToUse, commandArgs, { stdio: ["inherit", "inherit", "inherit"] });
53
+ } catch { }
52
54
  }
53
55
 
54
56
  // let counter = 0;