@decohere/flux 0.0.1-dev.9 → 0.0.1-dev.91
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/commonjs/src/deferred-script-runner.js +58 -0
- package/commonjs/src/flux.command.js +3 -1
- package/commonjs/src/flux.js +58 -0
- package/commonjs/src/flux.module.js +6 -2
- package/commonjs/src/hot-reload-server.js +268 -194
- package/commonjs/src/index.js +35 -1
- package/commonjs/src/rewrite-serve-specifier.js +46 -0
- package/commonjs/src/run.action.js +49 -0
- package/commonjs/src/run.command.js +67 -0
- package/commonjs/src/serve.action.js +77 -4
- package/commonjs/src/serve.command.js +32 -2
- package/commonjs/src/slice-serve.js +132 -0
- package/commonjs/src/source-module-loader.js +216 -0
- package/es6/src/deferred-script-runner.js +48 -0
- package/es6/src/flux.command.js +3 -1
- package/es6/src/flux.js +43 -0
- package/es6/src/flux.module.js +6 -2
- package/es6/src/hot-reload-server.js +249 -151
- package/es6/src/index.js +6 -2
- package/es6/src/rewrite-serve-specifier.js +40 -0
- package/es6/src/run.action.js +40 -0
- package/es6/src/run.command.js +57 -0
- package/es6/src/serve.action.js +73 -4
- package/es6/src/serve.command.js +32 -2
- package/es6/src/slice-serve.js +107 -0
- package/es6/src/source-module-loader.js +160 -0
- package/package.json +7 -6
- package/types/src/deferred-script-runner.d.ts +18 -0
- package/types/src/flux.d.ts +43 -0
- package/types/src/flux.module.d.ts +2 -0
- package/types/src/hot-reload-server.d.ts +45 -22
- package/types/src/index.d.ts +8 -1
- package/types/src/rewrite-serve-specifier.d.ts +13 -0
- package/types/src/run.action.d.ts +15 -0
- package/types/src/run.command.d.ts +11 -0
- package/types/src/serve.action.d.ts +11 -1
- package/types/src/serve.command.d.ts +5 -0
- package/types/src/slice-serve.d.ts +52 -0
- package/types/src/source-module-loader.d.ts +49 -0
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "DeferredScriptRunner", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return DeferredScriptRunner;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _nodechild_process = require("node:child_process");
|
|
12
|
+
const _decorators = require("@decohere/crucible/decorators");
|
|
13
|
+
const _interop = require("@decohere/nexus/interop");
|
|
14
|
+
const _scribe = require("@decohere/scribe");
|
|
15
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
16
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
17
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
18
|
+
else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
19
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
20
|
+
}
|
|
21
|
+
class DeferredScriptRunner {
|
|
22
|
+
logger = _scribe.scribe.logger(DeferredScriptRunner.name);
|
|
23
|
+
children = [];
|
|
24
|
+
start(options) {
|
|
25
|
+
const pm = (0, _interop.detectPackageManager)(options.workspaceRoot) ?? (0, _interop.packageManagerFromString)("pnpm");
|
|
26
|
+
this.logger.info(`deferred ${options.label} — running ${pm.name} run ${options.script} in ${options.cwd}`);
|
|
27
|
+
const child = (0, _nodechild_process.spawn)(pm.name, [
|
|
28
|
+
"run",
|
|
29
|
+
options.script
|
|
30
|
+
], {
|
|
31
|
+
cwd: options.cwd,
|
|
32
|
+
stdio: "inherit",
|
|
33
|
+
env: process.env,
|
|
34
|
+
shell: false
|
|
35
|
+
});
|
|
36
|
+
child.on("exit", (code, signal)=>{
|
|
37
|
+
if (signal) return;
|
|
38
|
+
if (code != null && code !== 0) {
|
|
39
|
+
this.logger.warn(`deferred ${options.label} exited with ${code}`);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
this.children.push(child);
|
|
43
|
+
return child;
|
|
44
|
+
}
|
|
45
|
+
async [Symbol.asyncDispose]() {
|
|
46
|
+
for (const child of this.children){
|
|
47
|
+
if (!child.killed) {
|
|
48
|
+
child.kill("SIGTERM");
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
this.children.length = 0;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
DeferredScriptRunner = _ts_decorate([
|
|
55
|
+
(0, _decorators.injectable)()
|
|
56
|
+
], DeferredScriptRunner);
|
|
57
|
+
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZsdXgvc3JjL2RlZmVycmVkLXNjcmlwdC1ydW5uZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBDaGlsZFByb2Nlc3MsIHNwYXduIH0gZnJvbSBcIm5vZGU6Y2hpbGRfcHJvY2Vzc1wiO1xuaW1wb3J0IHsgaW5qZWN0YWJsZSB9IGZyb20gXCJAZGVjb2hlcmUvY3J1Y2libGUvZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgZGV0ZWN0UGFja2FnZU1hbmFnZXIsIHBhY2thZ2VNYW5hZ2VyRnJvbVN0cmluZyB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvaW50ZXJvcFwiO1xuaW1wb3J0IHsgdHlwZSBMb2dnZXIsIHNjcmliZSB9IGZyb20gXCJAZGVjb2hlcmUvc2NyaWJlXCI7XG5cbmV4cG9ydCB0eXBlIERlZmVycmVkU2NyaXB0U3RhcnQgPSB7XG5cdHJlYWRvbmx5IGxhYmVsOiBzdHJpbmc7XG5cdHJlYWRvbmx5IGN3ZDogc3RyaW5nO1xuXHRyZWFkb25seSBzY3JpcHQ6IHN0cmluZztcblx0LyoqIFdvcmtzcGFjZSByb290IHVzZWQgdG8gZGV0ZWN0IHBucG0vbnBtL3lhcm4uICovXG5cdHJlYWRvbmx5IHdvcmtzcGFjZVJvb3Q6IHN0cmluZztcbn07XG5cbi8qKlxuICogTml4cGFja3Mtc3R5bGUgY2hpbGQgcHJvY2Vzc2VzIGZvciBmb3JlaWduIHBhY2thZ2VzIGluIGEgZmx1eCBzZXJ2ZSBzbGljZS5cbiAqIEtpbGxlZCB3aGVuIHRoZSBGbHV4IGNvbnRhaW5lciBkaXNwb3NlcyAoU0lHSU5UIOKGkiBSb290TW9kdWxlIHRlYXJkb3duKS5cbiAqL1xuQGluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERlZmVycmVkU2NyaXB0UnVubmVyIGltcGxlbWVudHMgQXN5bmNEaXNwb3NhYmxlIHtcblx0cHJpdmF0ZSByZWFkb25seSBsb2dnZXI6IExvZ2dlciA9IHNjcmliZS5sb2dnZXIoRGVmZXJyZWRTY3JpcHRSdW5uZXIubmFtZSk7XG5cdHByaXZhdGUgcmVhZG9ubHkgY2hpbGRyZW46IENoaWxkUHJvY2Vzc1tdID0gW107XG5cblx0cHVibGljIHN0YXJ0KG9wdGlvbnM6IERlZmVycmVkU2NyaXB0U3RhcnQpOiBDaGlsZFByb2Nlc3Mge1xuXHRcdGNvbnN0IHBtID0gZGV0ZWN0UGFja2FnZU1hbmFnZXIob3B0aW9ucy53b3Jrc3BhY2VSb290KSA/PyBwYWNrYWdlTWFuYWdlckZyb21TdHJpbmcoXCJwbnBtXCIpO1xuXHRcdHRoaXMubG9nZ2VyLmluZm8oXG5cdFx0XHRgZGVmZXJyZWQgJHtvcHRpb25zLmxhYmVsfSDigJQgcnVubmluZyAke3BtLm5hbWV9IHJ1biAke29wdGlvbnMuc2NyaXB0fSBpbiAke29wdGlvbnMuY3dkfWAsXG5cdFx0KTtcblx0XHRjb25zdCBjaGlsZCA9IHNwYXduKHBtLm5hbWUsIFtcInJ1blwiLCBvcHRpb25zLnNjcmlwdF0sIHtcblx0XHRcdGN3ZDogb3B0aW9ucy5jd2QsXG5cdFx0XHRzdGRpbzogXCJpbmhlcml0XCIsXG5cdFx0XHRlbnY6IHByb2Nlc3MuZW52LFxuXHRcdFx0c2hlbGw6IGZhbHNlLFxuXHRcdH0pO1xuXHRcdGNoaWxkLm9uKFwiZXhpdFwiLCAoY29kZSwgc2lnbmFsKSA9PiB7XG5cdFx0XHRpZiAoc2lnbmFsKSByZXR1cm47XG5cdFx0XHRpZiAoY29kZSAhPSBudWxsICYmIGNvZGUgIT09IDApIHtcblx0XHRcdFx0dGhpcy5sb2dnZXIud2FybihgZGVmZXJyZWQgJHtvcHRpb25zLmxhYmVsfSBleGl0ZWQgd2l0aCAke2NvZGV9YCk7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdFx0dGhpcy5jaGlsZHJlbi5wdXNoKGNoaWxkKTtcblx0XHRyZXR1cm4gY2hpbGQ7XG5cdH1cblxuXHRwdWJsaWMgYXN5bmMgW1N5bWJvbC5hc3luY0Rpc3Bvc2VdKCkge1xuXHRcdGZvciAoY29uc3QgY2hpbGQgb2YgdGhpcy5jaGlsZHJlbikge1xuXHRcdFx0aWYgKCFjaGlsZC5raWxsZWQpIHtcblx0XHRcdFx0Y2hpbGQua2lsbChcIlNJR1RFUk1cIik7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdHRoaXMuY2hpbGRyZW4ubGVuZ3RoID0gMDtcblx0fVxufVxuIl0sIm5hbWVzIjpbIkRlZmVycmVkU2NyaXB0UnVubmVyIiwibG9nZ2VyIiwic2NyaWJlIiwibmFtZSIsImNoaWxkcmVuIiwic3RhcnQiLCJvcHRpb25zIiwicG0iLCJkZXRlY3RQYWNrYWdlTWFuYWdlciIsIndvcmtzcGFjZVJvb3QiLCJwYWNrYWdlTWFuYWdlckZyb21TdHJpbmciLCJpbmZvIiwibGFiZWwiLCJzY3JpcHQiLCJjd2QiLCJjaGlsZCIsInNwYXduIiwic3RkaW8iLCJlbnYiLCJwcm9jZXNzIiwic2hlbGwiLCJvbiIsImNvZGUiLCJzaWduYWwiLCJ3YXJuIiwicHVzaCIsIlN5bWJvbCIsImFzeW5jRGlzcG9zZSIsImtpbGxlZCIsImtpbGwiLCJsZW5ndGgiXSwibWFwcGluZ3MiOiI7Ozs7K0JBa0JhQTs7O2VBQUFBOzs7bUNBbEI0Qjs0QkFDZDt5QkFDb0M7d0JBQzNCOzs7Ozs7O0FBZTdCLE1BQU1BO0lBQ0tDLFNBQWlCQyxjQUFNLENBQUNELE1BQU0sQ0FBQ0QscUJBQXFCRyxJQUFJLEVBQUU7SUFDMURDLFdBQTJCLEVBQUUsQ0FBQztJQUV4Q0MsTUFBTUMsT0FBNEIsRUFBZ0I7UUFDeEQsTUFBTUMsS0FBS0MsSUFBQUEsNkJBQW9CLEVBQUNGLFFBQVFHLGFBQWEsS0FBS0MsSUFBQUEsaUNBQXdCLEVBQUM7UUFDbkYsSUFBSSxDQUFDVCxNQUFNLENBQUNVLElBQUksQ0FDZixDQUFDLFNBQVMsRUFBRUwsUUFBUU0sS0FBSyxDQUFDLFdBQVcsRUFBRUwsR0FBR0osSUFBSSxDQUFDLEtBQUssRUFBRUcsUUFBUU8sTUFBTSxDQUFDLElBQUksRUFBRVAsUUFBUVEsR0FBRyxFQUFFO1FBRXpGLE1BQU1DLFFBQVFDLElBQUFBLHdCQUFLLEVBQUNULEdBQUdKLElBQUksRUFBRTtZQUFDO1lBQU9HLFFBQVFPLE1BQU07U0FBQyxFQUFFO1lBQ3JEQyxLQUFLUixRQUFRUSxHQUFHO1lBQ2hCRyxPQUFPO1lBQ1BDLEtBQUtDLFFBQVFELEdBQUc7WUFDaEJFLE9BQU87UUFDUjtRQUNBTCxNQUFNTSxFQUFFLENBQUMsUUFBUSxDQUFDQyxNQUFNQztZQUN2QixJQUFJQSxRQUFRO1lBQ1osSUFBSUQsUUFBUSxRQUFRQSxTQUFTLEdBQUc7Z0JBQy9CLElBQUksQ0FBQ3JCLE1BQU0sQ0FBQ3VCLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRWxCLFFBQVFNLEtBQUssQ0FBQyxhQUFhLEVBQUVVLE1BQU07WUFDakU7UUFDRDtRQUNBLElBQUksQ0FBQ2xCLFFBQVEsQ0FBQ3FCLElBQUksQ0FBQ1Y7UUFDbkIsT0FBT0E7SUFDUjtJQUVBLE1BQWEsQ0FBQ1csT0FBT0MsWUFBWSxDQUFDLEdBQUc7UUFDcEMsS0FBSyxNQUFNWixTQUFTLElBQUksQ0FBQ1gsUUFBUSxDQUFFO1lBQ2xDLElBQUksQ0FBQ1csTUFBTWEsTUFBTSxFQUFFO2dCQUNsQmIsTUFBTWMsSUFBSSxDQUFDO1lBQ1o7UUFDRDtRQUNBLElBQUksQ0FBQ3pCLFFBQVEsQ0FBQzBCLE1BQU0sR0FBRztJQUN4QjtBQUNEIn0=
|
|
@@ -9,6 +9,7 @@ Object.defineProperty(exports, "FluxCommand", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
const _cli = require("@decohere/nexus/cli");
|
|
12
|
+
const _runcommand = require("./run.command.js");
|
|
12
13
|
const _servecommand = require("./serve.command.js");
|
|
13
14
|
class FluxCommand extends _cli.DecohereCommand {
|
|
14
15
|
constructor(commands, handler){
|
|
@@ -16,6 +17,7 @@ class FluxCommand extends _cli.DecohereCommand {
|
|
|
16
17
|
this.exitOverride();
|
|
17
18
|
this.registerSubcommand({
|
|
18
19
|
serve: _servecommand.ServeCommand,
|
|
20
|
+
run: _runcommand.RunCommand,
|
|
19
21
|
...commands
|
|
20
22
|
}, handler);
|
|
21
23
|
}
|
|
@@ -24,4 +26,4 @@ class FluxCommand extends _cli.DecohereCommand {
|
|
|
24
26
|
}
|
|
25
27
|
}
|
|
26
28
|
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZsdXgvc3JjL2ZsdXguY29tbWFuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEFjdGlvbnMgfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL2NsaVwiO1xuaW1wb3J0IHtcblx0dHlwZSBDb21tYW5kSGFuZGxlcixcblx0dHlwZSBDb21tYW5kUmVzcG9uc2UsXG5cdHR5cGUgQ29tbWFuZFR5cGUsXG5cdERlY29oZXJlQ29tbWFuZCxcbn0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9jbGlcIjtcbmltcG9ydCB7IFJ1bkNvbW1hbmQgfSBmcm9tIFwiLi9ydW4uY29tbWFuZC5qc1wiO1xuaW1wb3J0IHsgU2VydmVDb21tYW5kIH0gZnJvbSBcIi4vc2VydmUuY29tbWFuZC5qc1wiO1xuXG5leHBvcnQgY2xhc3MgRmx1eENvbW1hbmQgZXh0ZW5kcyBEZWNvaGVyZUNvbW1hbmQge1xuXHRwdWJsaWMgY29uc3RydWN0b3IoY29tbWFuZHM6IFJlY29yZDxzdHJpbmcsIENvbW1hbmRUeXBlPiwgaGFuZGxlcjogQ29tbWFuZEhhbmRsZXIpIHtcblx0XHRzdXBlcihGbHV4Q29tbWFuZCk7XG5cdFx0dGhpcy5leGl0T3ZlcnJpZGUoKTtcblx0XHR0aGlzLnJlZ2lzdGVyU3ViY29tbWFuZCh7IHNlcnZlOiBTZXJ2ZUNvbW1hbmQsIHJ1bjogUnVuQ29tbWFuZCwgLi4uY29tbWFuZHMgfSwgaGFuZGxlcik7XG5cdH1cblxuXHRwdWJsaWMgcnVuKF9hY3Rpb25zOiBBY3Rpb25zLCBfb3B0aW9uczogbmV2ZXIpOiBQcm9taXNlPENvbW1hbmRSZXNwb25zZT4ge1xuXHRcdHJldHVybiB0aGlzLmhlbHAoKTtcblx0fVxufVxuIl0sIm5hbWVzIjpbIkZsdXhDb21tYW5kIiwiRGVjb2hlcmVDb21tYW5kIiwiY29tbWFuZHMiLCJoYW5kbGVyIiwiZXhpdE92ZXJyaWRlIiwicmVnaXN0ZXJTdWJjb21tYW5kIiwic2VydmUiLCJTZXJ2ZUNvbW1hbmQiLCJydW4iLCJSdW5Db21tYW5kIiwiX2FjdGlvbnMiLCJfb3B0aW9ucyIsImhlbHAiXSwibWFwcGluZ3MiOiI7Ozs7K0JBVWFBOzs7ZUFBQUE7OztxQkFKTjs0QkFDb0I7OEJBQ0U7QUFFdEIsTUFBTUEsb0JBQW9CQyxvQkFBZTtJQUMvQyxZQUFtQkMsUUFBcUMsRUFBRUMsT0FBdUIsQ0FBRTtRQUNsRixLQUFLLENBQUNIO1FBQ04sSUFBSSxDQUFDSSxZQUFZO1FBQ2pCLElBQUksQ0FBQ0Msa0JBQWtCLENBQUM7WUFBRUMsT0FBT0MsMEJBQVk7WUFBRUMsS0FBS0Msc0JBQVU7WUFBRSxHQUFHUCxRQUFRO1FBQUMsR0FBR0M7SUFDaEY7SUFFT0ssSUFBSUUsUUFBaUIsRUFBRUMsUUFBZSxFQUE0QjtRQUN4RSxPQUFPLElBQUksQ0FBQ0MsSUFBSTtJQUNqQjtBQUNEIn0=
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "flux", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return flux;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _nodepath = /*#__PURE__*/ _interop_require_default(require("node:path"));
|
|
12
|
+
const _hotreloadserver = require("./hot-reload-server.js");
|
|
13
|
+
const _sourcemoduleloader = require("./source-module-loader.js");
|
|
14
|
+
function _interop_require_default(obj) {
|
|
15
|
+
return obj && obj.__esModule ? obj : {
|
|
16
|
+
default: obj
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
/** Process-level one-shot loader so a second `run()` reconfigures instead of stacking hooks. */ const runLoader = new _sourcemoduleloader.SourceModuleLoader();
|
|
20
|
+
async function run(entry, options = {}) {
|
|
21
|
+
const trimmed = entry.trim();
|
|
22
|
+
if (trimmed == null || trimmed === "") {
|
|
23
|
+
throw new Error("flux.run requires an entry file path");
|
|
24
|
+
}
|
|
25
|
+
const absoluteEntry = _nodepath.default.resolve(trimmed);
|
|
26
|
+
await runLoader.configure({
|
|
27
|
+
workspace: options.workspace,
|
|
28
|
+
buildConfig: options.configuration ?? "debug"
|
|
29
|
+
});
|
|
30
|
+
runLoader.registerHooks();
|
|
31
|
+
process.argv = [
|
|
32
|
+
process.execPath,
|
|
33
|
+
absoluteEntry,
|
|
34
|
+
...options.args ?? []
|
|
35
|
+
];
|
|
36
|
+
return runLoader.importEntry(absoluteEntry);
|
|
37
|
+
}
|
|
38
|
+
async function serve(options = {}) {
|
|
39
|
+
const server = new _hotreloadserver.HotReloadServer();
|
|
40
|
+
await server.start({
|
|
41
|
+
buildConfig: options.configuration ?? "debug",
|
|
42
|
+
project: options.project,
|
|
43
|
+
projects: options.projects,
|
|
44
|
+
workspace: options.workspace,
|
|
45
|
+
rebootDebounceMs: options.rebootDebounceMs
|
|
46
|
+
});
|
|
47
|
+
return server;
|
|
48
|
+
}
|
|
49
|
+
function dispose() {
|
|
50
|
+
runLoader.dispose();
|
|
51
|
+
}
|
|
52
|
+
const flux = {
|
|
53
|
+
run,
|
|
54
|
+
serve,
|
|
55
|
+
dispose
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZsdXgvc3JjL2ZsdXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHBhdGggZnJvbSBcIm5vZGU6cGF0aFwiO1xuaW1wb3J0IHR5cGUgeyBXb3Jrc3BhY2UgfSBmcm9tIFwiQGRlY29oZXJlL21lc2hcIjtcbmltcG9ydCB7IEhvdFJlbG9hZFNlcnZlciB9IGZyb20gXCIuL2hvdC1yZWxvYWQtc2VydmVyLmpzXCI7XG5pbXBvcnQgeyBTb3VyY2VNb2R1bGVMb2FkZXIgfSBmcm9tIFwiLi9zb3VyY2UtbW9kdWxlLWxvYWRlci5qc1wiO1xuXG5leHBvcnQgdHlwZSBGbHV4UnVuT3B0aW9ucyA9IHtcblx0LyoqIE1lc2gvRm9yZ2UgY29uZmlndXJhdGlvbiBuYW1lLiBEZWZhdWx0cyB0byBgZGVidWdgIChgLS1jb25maWd1cmF0aW9uYCkuICovXG5cdGNvbmZpZ3VyYXRpb24/OiBzdHJpbmc7XG5cdC8qKiBBcmd1bWVudHMgZm9yd2FyZGVkIHRvIHRoZSBlbnRyeSAoYmluLXN0eWxlIGBwcm9jZXNzLmFyZ3Yuc2xpY2UoMilgKS4gKi9cblx0YXJncz86IHN0cmluZ1tdO1xuXHQvKipcblx0ICogUHJlLWJ1aWx0IFdvcmtzcGFjZSBpbnN0ZWFkIG9mIGBXb3Jrc3BhY2VGYWN0b3J5YC5cblx0ICogVXNlZnVsIGluIHRlc3RzIHRvIHNraXAgZmlsZXN5c3RlbSBkaXNjb3ZlcnkuXG5cdCAqL1xuXHR3b3Jrc3BhY2U/OiBXb3Jrc3BhY2U7XG59O1xuXG5leHBvcnQgdHlwZSBGbHV4U2VydmVPcHRpb25zID0ge1xuXHQvKiogTWVzaC9Gb3JnZSBjb25maWd1cmF0aW9uIG5hbWUuIERlZmF1bHRzIHRvIGBkZWJ1Z2AgKGAtLWNvbmZpZ3VyYXRpb25gKS4gKi9cblx0Y29uZmlndXJhdGlvbj86IHN0cmluZztcblx0LyoqIE5hbWUgb2YgdGhlIHByb2plY3QgdG8gc2VydmUuIERlZmF1bHRzIHRvIHRoZSBmaXJzdCBwcm9qZWN0IGluIHRoZSB3b3Jrc3BhY2UuICovXG5cdHByb2plY3Q/OiBzdHJpbmc7XG5cdC8qKlxuXHQgKiBNdWx0aXBsZSBGbHV4IGFwcCBwYWNrYWdlIG5hbWVzIHRvIGJvb3QgaW4gb25lIHByb2Nlc3MgKGRpcmVjdG9yeSBzbGljZSkuXG5cdCAqIFdoZW4gc2V0LCB0YWtlcyBwcmVjZWRlbmNlIG92ZXIge0BsaW5rIHByb2plY3R9LlxuXHQgKi9cblx0cHJvamVjdHM/OiByZWFkb25seSBzdHJpbmdbXTtcblx0LyoqXG5cdCAqIFByZS1idWlsdCBXb3Jrc3BhY2UgaW5zdGVhZCBvZiBgV29ya3NwYWNlRmFjdG9yeWAuXG5cdCAqIFVzZWZ1bCBpbiB0ZXN0cyB0byBza2lwIGZpbGVzeXN0ZW0gZGlzY292ZXJ5LlxuXHQgKi9cblx0d29ya3NwYWNlPzogV29ya3NwYWNlO1xuXHQvKipcblx0ICogUXVpZXQgd2luZG93IGluIG1pbGxpc2Vjb25kcyBhZnRlciB0aGUgbGFzdCBhZmZlY3Rpbmcgc2F2ZSBiZWZvcmUgYSByZWJvb3QuXG5cdCAqIFJhaXNlIHRoaXMgZm9yIGFnZW50IHNhdmUgdHJhaW5zLlxuXHQgKi9cblx0cmVib290RGVib3VuY2VNcz86IG51bWJlcjtcbn07XG5cbi8qKiBQcm9jZXNzLWxldmVsIG9uZS1zaG90IGxvYWRlciBzbyBhIHNlY29uZCBgcnVuKClgIHJlY29uZmlndXJlcyBpbnN0ZWFkIG9mIHN0YWNraW5nIGhvb2tzLiAqL1xuY29uc3QgcnVuTG9hZGVyID0gbmV3IFNvdXJjZU1vZHVsZUxvYWRlcigpO1xuXG5hc3luYyBmdW5jdGlvbiBydW4oZW50cnk6IHN0cmluZywgb3B0aW9uczogRmx1eFJ1bk9wdGlvbnMgPSB7fSk6IFByb21pc2U8dW5rbm93bj4ge1xuXHRjb25zdCB0cmltbWVkID0gZW50cnkudHJpbSgpO1xuXHRpZiAodHJpbW1lZCA9PSBudWxsIHx8IHRyaW1tZWQgPT09IFwiXCIpIHtcblx0XHR0aHJvdyBuZXcgRXJyb3IoXCJmbHV4LnJ1biByZXF1aXJlcyBhbiBlbnRyeSBmaWxlIHBhdGhcIik7XG5cdH1cblxuXHRjb25zdCBhYnNvbHV0ZUVudHJ5ID0gcGF0aC5yZXNvbHZlKHRyaW1tZWQpO1xuXHRhd2FpdCBydW5Mb2FkZXIuY29uZmlndXJlKHtcblx0XHR3b3Jrc3BhY2U6IG9wdGlvbnMud29ya3NwYWNlLFxuXHRcdGJ1aWxkQ29uZmlnOiBvcHRpb25zLmNvbmZpZ3VyYXRpb24gPz8gXCJkZWJ1Z1wiLFxuXHR9KTtcblx0cnVuTG9hZGVyLnJlZ2lzdGVySG9va3MoKTtcblx0cHJvY2Vzcy5hcmd2ID0gW3Byb2Nlc3MuZXhlY1BhdGgsIGFic29sdXRlRW50cnksIC4uLihvcHRpb25zLmFyZ3MgPz8gW10pXTtcblx0cmV0dXJuIHJ1bkxvYWRlci5pbXBvcnRFbnRyeShhYnNvbHV0ZUVudHJ5KTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gc2VydmUob3B0aW9uczogRmx1eFNlcnZlT3B0aW9ucyA9IHt9KTogUHJvbWlzZTxIb3RSZWxvYWRTZXJ2ZXI+IHtcblx0Y29uc3Qgc2VydmVyID0gbmV3IEhvdFJlbG9hZFNlcnZlcigpO1xuXHRhd2FpdCBzZXJ2ZXIuc3RhcnQoe1xuXHRcdGJ1aWxkQ29uZmlnOiBvcHRpb25zLmNvbmZpZ3VyYXRpb24gPz8gXCJkZWJ1Z1wiLFxuXHRcdHByb2plY3Q6IG9wdGlvbnMucHJvamVjdCxcblx0XHRwcm9qZWN0czogb3B0aW9ucy5wcm9qZWN0cyxcblx0XHR3b3Jrc3BhY2U6IG9wdGlvbnMud29ya3NwYWNlLFxuXHRcdHJlYm9vdERlYm91bmNlTXM6IG9wdGlvbnMucmVib290RGVib3VuY2VNcyxcblx0fSk7XG5cdHJldHVybiBzZXJ2ZXI7XG59XG5cbmZ1bmN0aW9uIGRpc3Bvc2UoKTogdm9pZCB7XG5cdHJ1bkxvYWRlci5kaXNwb3NlKCk7XG59XG5cbmV4cG9ydCBjb25zdCBmbHV4ID0geyBydW4sIHNlcnZlLCBkaXNwb3NlIH07XG4iXSwibmFtZXMiOlsiZmx1eCIsInJ1bkxvYWRlciIsIlNvdXJjZU1vZHVsZUxvYWRlciIsInJ1biIsImVudHJ5Iiwib3B0aW9ucyIsInRyaW1tZWQiLCJ0cmltIiwiRXJyb3IiLCJhYnNvbHV0ZUVudHJ5IiwicGF0aCIsInJlc29sdmUiLCJjb25maWd1cmUiLCJ3b3Jrc3BhY2UiLCJidWlsZENvbmZpZyIsImNvbmZpZ3VyYXRpb24iLCJyZWdpc3Rlckhvb2tzIiwicHJvY2VzcyIsImFyZ3YiLCJleGVjUGF0aCIsImFyZ3MiLCJpbXBvcnRFbnRyeSIsInNlcnZlIiwic2VydmVyIiwiSG90UmVsb2FkU2VydmVyIiwic3RhcnQiLCJwcm9qZWN0IiwicHJvamVjdHMiLCJyZWJvb3REZWJvdW5jZU1zIiwiZGlzcG9zZSJdLCJtYXBwaW5ncyI6Ijs7OzsrQkEwRWFBOzs7ZUFBQUE7OztpRUExRUk7aUNBRWU7b0NBQ0c7Ozs7OztBQW9DbkMsOEZBQThGLEdBQzlGLE1BQU1DLFlBQVksSUFBSUMsc0NBQWtCO0FBRXhDLGVBQWVDLElBQUlDLEtBQWEsRUFBRUMsVUFBMEIsQ0FBQyxDQUFDO0lBQzdELE1BQU1DLFVBQVVGLE1BQU1HLElBQUk7SUFDMUIsSUFBSUQsV0FBVyxRQUFRQSxZQUFZLElBQUk7UUFDdEMsTUFBTSxJQUFJRSxNQUFNO0lBQ2pCO0lBRUEsTUFBTUMsZ0JBQWdCQyxpQkFBSSxDQUFDQyxPQUFPLENBQUNMO0lBQ25DLE1BQU1MLFVBQVVXLFNBQVMsQ0FBQztRQUN6QkMsV0FBV1IsUUFBUVEsU0FBUztRQUM1QkMsYUFBYVQsUUFBUVUsYUFBYSxJQUFJO0lBQ3ZDO0lBQ0FkLFVBQVVlLGFBQWE7SUFDdkJDLFFBQVFDLElBQUksR0FBRztRQUFDRCxRQUFRRSxRQUFRO1FBQUVWO1dBQW1CSixRQUFRZSxJQUFJLElBQUksRUFBRTtLQUFFO0lBQ3pFLE9BQU9uQixVQUFVb0IsV0FBVyxDQUFDWjtBQUM5QjtBQUVBLGVBQWVhLE1BQU1qQixVQUE0QixDQUFDLENBQUM7SUFDbEQsTUFBTWtCLFNBQVMsSUFBSUMsZ0NBQWU7SUFDbEMsTUFBTUQsT0FBT0UsS0FBSyxDQUFDO1FBQ2xCWCxhQUFhVCxRQUFRVSxhQUFhLElBQUk7UUFDdENXLFNBQVNyQixRQUFRcUIsT0FBTztRQUN4QkMsVUFBVXRCLFFBQVFzQixRQUFRO1FBQzFCZCxXQUFXUixRQUFRUSxTQUFTO1FBQzVCZSxrQkFBa0J2QixRQUFRdUIsZ0JBQWdCO0lBQzNDO0lBQ0EsT0FBT0w7QUFDUjtBQUVBLFNBQVNNO0lBQ1I1QixVQUFVNEIsT0FBTztBQUNsQjtBQUVPLE1BQU03QixPQUFPO0lBQUVHO0lBQUttQjtJQUFPTztBQUFRIn0=
|
|
@@ -10,17 +10,21 @@ Object.defineProperty(exports, "FluxModule", {
|
|
|
10
10
|
});
|
|
11
11
|
const _mesh = require("@decohere/mesh");
|
|
12
12
|
const _cli = require("@decohere/nexus/cli");
|
|
13
|
+
const _deferredscriptrunner = require("./deferred-script-runner.js");
|
|
13
14
|
const _fluxcommand = require("./flux.command.js");
|
|
14
15
|
const _hotreloadserver = require("./hot-reload-server.js");
|
|
16
|
+
const _runaction = require("./run.action.js");
|
|
15
17
|
const _serveaction = require("./serve.action.js");
|
|
16
18
|
class FluxModule extends _cli.ModuleManifest {
|
|
17
19
|
id = "flux";
|
|
18
20
|
command = _fluxcommand.FluxCommand;
|
|
19
21
|
actions = {
|
|
20
|
-
serve: _serveaction.ServeAction
|
|
22
|
+
serve: _serveaction.ServeAction,
|
|
23
|
+
run: _runaction.RunAction
|
|
21
24
|
};
|
|
22
25
|
registerServices(builder) {
|
|
23
26
|
builder.registerSingleton(_hotreloadserver.HotReloadServer);
|
|
27
|
+
builder.registerSingleton(_deferredscriptrunner.DeferredScriptRunner);
|
|
24
28
|
}
|
|
25
29
|
createWorkspace(options) {
|
|
26
30
|
return _mesh.WorkspaceFactory.create({
|
|
@@ -29,4 +33,4 @@ class FluxModule extends _cli.ModuleManifest {
|
|
|
29
33
|
}
|
|
30
34
|
}
|
|
31
35
|
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZsdXgvc3JjL2ZsdXgubW9kdWxlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFdvcmtzcGFjZUZhY3RvcnkgfSBmcm9tIFwiQGRlY29oZXJlL21lc2hcIjtcbmltcG9ydCB0eXBlIHsgV29ya3NwYWNlRmFjdG9yeU9wdGlvbnMgfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL2NsaVwiO1xuaW1wb3J0IHsgTW9kdWxlTWFuaWZlc3QgfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL2NsaVwiO1xuaW1wb3J0IHR5cGUgeyBDb250YWluZXJCdWlsZGVyIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9jb21wb3NpdGlvblwiO1xuaW1wb3J0IHsgRGVmZXJyZWRTY3JpcHRSdW5uZXIgfSBmcm9tIFwiLi9kZWZlcnJlZC1zY3JpcHQtcnVubmVyLmpzXCI7XG5pbXBvcnQgeyBGbHV4Q29tbWFuZCB9IGZyb20gXCIuL2ZsdXguY29tbWFuZC5qc1wiO1xuaW1wb3J0IHsgSG90UmVsb2FkU2VydmVyIH0gZnJvbSBcIi4vaG90LXJlbG9hZC1zZXJ2ZXIuanNcIjtcbmltcG9ydCB7IFJ1bkFjdGlvbiB9IGZyb20gXCIuL3J1bi5hY3Rpb24uanNcIjtcbmltcG9ydCB7IFNlcnZlQWN0aW9uIH0gZnJvbSBcIi4vc2VydmUuYWN0aW9uLmpzXCI7XG5cbmV4cG9ydCBjbGFzcyBGbHV4TW9kdWxlIGV4dGVuZHMgTW9kdWxlTWFuaWZlc3Qge1xuXHRwdWJsaWMgcmVhZG9ubHkgaWQgPSBcImZsdXhcIjtcblx0cHVibGljIHJlYWRvbmx5IGNvbW1hbmQgPSBGbHV4Q29tbWFuZDtcblx0cHVibGljIHJlYWRvbmx5IGFjdGlvbnMgPSB7XG5cdFx0c2VydmU6IFNlcnZlQWN0aW9uLFxuXHRcdHJ1bjogUnVuQWN0aW9uLFxuXHR9O1xuXG5cdHB1YmxpYyByZWdpc3RlclNlcnZpY2VzKGJ1aWxkZXI6IENvbnRhaW5lckJ1aWxkZXIpIHtcblx0XHRidWlsZGVyLnJlZ2lzdGVyU2luZ2xldG9uKEhvdFJlbG9hZFNlcnZlcik7XG5cdFx0YnVpbGRlci5yZWdpc3RlclNpbmdsZXRvbihEZWZlcnJlZFNjcmlwdFJ1bm5lcik7XG5cdH1cblxuXHRwdWJsaWMgb3ZlcnJpZGUgY3JlYXRlV29ya3NwYWNlKG9wdGlvbnM6IFdvcmtzcGFjZUZhY3RvcnlPcHRpb25zKSB7XG5cdFx0cmV0dXJuIFdvcmtzcGFjZUZhY3RvcnkuY3JlYXRlKHsgY29uZmlnRmlsZTogb3B0aW9ucy5jb25maWdGaWxlIH0pO1xuXHR9XG59XG4iXSwibmFtZXMiOlsiRmx1eE1vZHVsZSIsIk1vZHVsZU1hbmlmZXN0IiwiaWQiLCJjb21tYW5kIiwiRmx1eENvbW1hbmQiLCJhY3Rpb25zIiwic2VydmUiLCJTZXJ2ZUFjdGlvbiIsInJ1biIsIlJ1bkFjdGlvbiIsInJlZ2lzdGVyU2VydmljZXMiLCJidWlsZGVyIiwicmVnaXN0ZXJTaW5nbGV0b24iLCJIb3RSZWxvYWRTZXJ2ZXIiLCJEZWZlcnJlZFNjcmlwdFJ1bm5lciIsImNyZWF0ZVdvcmtzcGFjZSIsIm9wdGlvbnMiLCJXb3Jrc3BhY2VGYWN0b3J5IiwiY3JlYXRlIiwiY29uZmlnRmlsZSJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFVYUE7OztlQUFBQTs7O3NCQVZvQjtxQkFFRjtzQ0FFTTs2QkFDVDtpQ0FDSTsyQkFDTjs2QkFDRTtBQUVyQixNQUFNQSxtQkFBbUJDLG1CQUFjO0lBQzdCQyxLQUFLLE9BQU87SUFDWkMsVUFBVUMsd0JBQVcsQ0FBQztJQUN0QkMsVUFBVTtRQUN6QkMsT0FBT0Msd0JBQVc7UUFDbEJDLEtBQUtDLG9CQUFTO0lBQ2YsRUFBRTtJQUVLQyxpQkFBaUJDLE9BQXlCLEVBQUU7UUFDbERBLFFBQVFDLGlCQUFpQixDQUFDQyxnQ0FBZTtRQUN6Q0YsUUFBUUMsaUJBQWlCLENBQUNFLDBDQUFvQjtJQUMvQztJQUVnQkMsZ0JBQWdCQyxPQUFnQyxFQUFFO1FBQ2pFLE9BQU9DLHNCQUFnQixDQUFDQyxNQUFNLENBQUM7WUFBRUMsWUFBWUgsUUFBUUcsVUFBVTtRQUFDO0lBQ2pFO0FBQ0QifQ==
|