@decohere/flux 0.0.1-dev.109 → 0.0.1-dev.11

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.
Files changed (43) hide show
  1. package/commonjs/src/flux.command.js +2 -2
  2. package/commonjs/src/flux.module.js +7 -8
  3. package/commonjs/src/hot-reload-server.js +215 -302
  4. package/commonjs/src/index.js +2 -34
  5. package/commonjs/src/serve.action.js +5 -76
  6. package/commonjs/src/serve.command.js +3 -31
  7. package/es6/src/flux.command.js +2 -2
  8. package/es6/src/flux.module.js +7 -8
  9. package/es6/src/hot-reload-server.js +172 -283
  10. package/es6/src/index.js +3 -5
  11. package/es6/src/serve.action.js +7 -71
  12. package/es6/src/serve.command.js +3 -31
  13. package/package.json +6 -7
  14. package/types/src/flux.module.d.ts +0 -2
  15. package/types/src/hot-reload-server.d.ts +22 -55
  16. package/types/src/index.d.ts +1 -8
  17. package/types/src/serve.action.d.ts +1 -11
  18. package/types/src/serve.command.d.ts +0 -5
  19. package/README.md +0 -247
  20. package/commonjs/bench/load.bench.js +0 -145
  21. package/commonjs/src/deferred-script-runner.js +0 -56
  22. package/commonjs/src/flux.js +0 -56
  23. package/commonjs/src/rewrite-serve-specifier.js +0 -59
  24. package/commonjs/src/run.action.js +0 -47
  25. package/commonjs/src/run.command.js +0 -65
  26. package/commonjs/src/slice-serve.js +0 -130
  27. package/commonjs/src/source-module-loader.js +0 -237
  28. package/es6/bench/load.bench.js +0 -136
  29. package/es6/src/deferred-script-runner.js +0 -46
  30. package/es6/src/flux.js +0 -41
  31. package/es6/src/rewrite-serve-specifier.js +0 -49
  32. package/es6/src/run.action.js +0 -37
  33. package/es6/src/run.command.js +0 -55
  34. package/es6/src/slice-serve.js +0 -105
  35. package/es6/src/source-module-loader.js +0 -181
  36. package/types/bench/load.bench.d.ts +0 -1
  37. package/types/src/deferred-script-runner.d.ts +0 -18
  38. package/types/src/flux.d.ts +0 -43
  39. package/types/src/rewrite-serve-specifier.d.ts +0 -14
  40. package/types/src/run.action.d.ts +0 -15
  41. package/types/src/run.command.d.ts +0 -11
  42. package/types/src/slice-serve.d.ts +0 -52
  43. package/types/src/source-module-loader.d.ts +0 -58
@@ -9,46 +9,14 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- get DEFAULT_REBOOT_DEBOUNCE_MS () {
13
- return _hotreloadserver.DEFAULT_REBOOT_DEBOUNCE_MS;
14
- },
15
- get DeferredScriptRunner () {
16
- return _deferredscriptrunner.DeferredScriptRunner;
17
- },
18
12
  get FluxModule () {
19
13
  return _fluxmodule.FluxModule;
20
14
  },
21
15
  get HotReloadServer () {
22
16
  return _hotreloadserver.HotReloadServer;
23
- },
24
- get SourceModuleLoader () {
25
- return _sourcemoduleloader.SourceModuleLoader;
26
- },
27
- get classifySliceProject () {
28
- return _sliceserve.classifySliceProject;
29
- },
30
- get classifySliceProjects () {
31
- return _sliceserve.classifySliceProjects;
32
- },
33
- get flux () {
34
- return _flux.flux;
35
- },
36
- get normalizeSlicePrefix () {
37
- return _sliceserve.normalizeSlicePrefix;
38
- },
39
- get projectsInSlice () {
40
- return _sliceserve.projectsInSlice;
41
- },
42
- get projectsInSlices () {
43
- return _sliceserve.projectsInSlices;
44
- },
45
- get resolveDeferScript () {
46
- return _sliceserve.resolveDeferScript;
47
17
  }
48
18
  });
49
- const _deferredscriptrunner = require("./deferred-script-runner.js");
50
- const _flux = require("./flux.js");
51
19
  const _fluxmodule = require("./flux.module.js");
52
20
  const _hotreloadserver = require("./hot-reload-server.js");
53
- const _sliceserve = require("./slice-serve.js");
54
- const _sourcemoduleloader = require("./source-module-loader.js");
21
+
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZsdXgvc3JjL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEZsdXhNb2R1bGUgfSBmcm9tIFwiLi9mbHV4Lm1vZHVsZS5qc1wiO1xuZXhwb3J0IHR5cGUgeyBIb3RSZWxvYWRTZXJ2ZXJPcHRpb25zIH0gZnJvbSBcIi4vaG90LXJlbG9hZC1zZXJ2ZXIuanNcIjtcbmV4cG9ydCB7IEhvdFJlbG9hZFNlcnZlciB9IGZyb20gXCIuL2hvdC1yZWxvYWQtc2VydmVyLmpzXCI7XG5leHBvcnQgdHlwZSB7IFNlcnZlT3B0aW9ucyB9IGZyb20gXCIuL3NlcnZlLmFjdGlvbi5qc1wiO1xuIl0sIm5hbWVzIjpbIkZsdXhNb2R1bGUiLCJIb3RSZWxvYWRTZXJ2ZXIiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O1FBQVNBO2VBQUFBLHNCQUFVOztRQUVWQztlQUFBQSxnQ0FBZTs7OzRCQUZHO2lDQUVLIn0=
@@ -8,19 +8,10 @@ Object.defineProperty(exports, "ServeAction", {
8
8
  return ServeAction;
9
9
  }
10
10
  });
11
- const _nodepath = /*#__PURE__*/ _interop_require_default(require("node:path"));
12
11
  const _decorators = require("@decohere/crucible/decorators");
13
12
  const _mesh = require("@decohere/mesh");
14
13
  const _cli = require("@decohere/nexus/cli");
15
- const _scribe = require("@decohere/scribe");
16
- const _deferredscriptrunner = require("./deferred-script-runner.js");
17
14
  const _hotreloadserver = require("./hot-reload-server.js");
18
- const _sliceserve = require("./slice-serve.js");
19
- function _interop_require_default(obj) {
20
- return obj && obj.__esModule ? obj : {
21
- default: obj
22
- };
23
- }
24
15
  function _ts_decorate(decorators, target, key, desc) {
25
16
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
26
17
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -33,88 +24,26 @@ function _ts_metadata(k, v) {
33
24
  class ServeAction {
34
25
  server;
35
26
  workspace;
36
- deferredScripts;
37
- logger = _scribe.scribe.logger(ServeAction.name);
38
- constructor(server, workspace, deferredScripts){
27
+ constructor(server, workspace){
39
28
  this.server = server;
40
29
  this.workspace = workspace;
41
- this.deferredScripts = deferredScripts;
42
30
  }
43
31
  async run(options) {
44
- const slices = (options.slices ?? []).filter((s)=>s !== "");
45
- if (slices.length > 0 && options.project != null) {
46
- throw new Error("Use either directory slices or --project, not both");
47
- }
48
- if (slices.length > 0) {
49
- return this.runSlices(options, slices);
50
- }
51
32
  await this.server.start({
52
33
  workspace: this.workspace,
53
34
  buildConfig: options.configuration,
54
- project: options.project,
55
- rebootDebounceMs: options.rebootDebounceMs
35
+ project: options.project
56
36
  });
57
37
  return _cli.ActionResponse.Blocking(ServeAction.name);
58
38
  }
59
- async runSlices(options, slices) {
60
- const views = await this.toSliceViews(options.configuration);
61
- const classified = (0, _sliceserve.classifySliceProjects)(views, slices);
62
- const label = slices.join(" ");
63
- for (const skipped of classified.skip){
64
- this.logger.info(`skipped ${skipped.projectDirectory} — library (no Flux entry / scripts)`);
65
- }
66
- if (classified.flux.length === 0 && classified.defer.length === 0) {
67
- throw new Error(`No runnable projects in slice(s) "${label}" (need Flux main.ts apps and/or package scripts.dev/serve)`);
68
- }
69
- const workspaceRoot = _nodepath.default.resolve(this.workspace.rootDir ?? process.cwd());
70
- for (const deferred of classified.defer){
71
- const script = (0, _sliceserve.resolveDeferScript)(deferred.scripts);
72
- if (script == null) continue;
73
- const project = this.findProject(options.configuration, deferred.name);
74
- this.deferredScripts.start({
75
- label: deferred.projectDirectory,
76
- cwd: project.projectRoot,
77
- script,
78
- workspaceRoot
79
- });
80
- }
81
- if (classified.flux.length > 0) {
82
- await this.server.start({
83
- workspace: this.workspace,
84
- buildConfig: options.configuration,
85
- projects: classified.flux.map((p)=>p.name),
86
- rebootDebounceMs: options.rebootDebounceMs
87
- });
88
- }
89
- return _cli.ActionResponse.Blocking(ServeAction.name);
90
- }
91
- async toSliceViews(configuration) {
92
- const projects = this.workspace.getProjects(configuration);
93
- return Promise.all(projects.map((project)=>this.toSliceView(project)));
94
- }
95
- async toSliceView(project) {
96
- const pkg = await project.getPackageJson();
97
- return {
98
- name: project.name,
99
- projectDirectory: project.projectDirectory.replaceAll("\\", "/"),
100
- main: pkg.main ?? "src/index.ts",
101
- scripts: pkg.scripts ?? {}
102
- };
103
- }
104
- findProject(configuration, name) {
105
- const found = this.workspace.getProjects(configuration).find((p)=>p.name === name);
106
- if (found == null) {
107
- throw new Error(`Project "${name}" not found in workspace`);
108
- }
109
- return found;
110
- }
111
39
  }
112
40
  ServeAction = _ts_decorate([
113
41
  (0, _decorators.injectable)(),
114
42
  _ts_metadata("design:type", Function),
115
43
  _ts_metadata("design:paramtypes", [
116
44
  typeof _hotreloadserver.HotReloadServer === "undefined" ? Object : _hotreloadserver.HotReloadServer,
117
- typeof _mesh.Workspace === "undefined" ? Object : _mesh.Workspace,
118
- typeof _deferredscriptrunner.DeferredScriptRunner === "undefined" ? Object : _deferredscriptrunner.DeferredScriptRunner
45
+ typeof _mesh.Workspace === "undefined" ? Object : _mesh.Workspace
119
46
  ])
120
47
  ], ServeAction);
48
+
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZsdXgvc3JjL3NlcnZlLmFjdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3RhYmxlIH0gZnJvbSBcIkBkZWNvaGVyZS9jcnVjaWJsZS9kZWNvcmF0b3JzXCI7XG4vLyBiaW9tZS1pZ25vcmUgbGludC9zdHlsZS91c2VJbXBvcnRUeXBlOiA8REk+XG5pbXBvcnQgeyBXb3Jrc3BhY2UgfSBmcm9tIFwiQGRlY29oZXJlL21lc2hcIjtcbmltcG9ydCB7IHR5cGUgQWN0aW9uLCBBY3Rpb25SZXNwb25zZSB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvY2xpXCI7XG4vLyBiaW9tZS1pZ25vcmUgbGludC9zdHlsZS91c2VJbXBvcnRUeXBlOiA8REk+XG5pbXBvcnQgeyBIb3RSZWxvYWRTZXJ2ZXIgfSBmcm9tIFwiLi9ob3QtcmVsb2FkLXNlcnZlci5qc1wiO1xuXG5leHBvcnQgdHlwZSBTZXJ2ZU9wdGlvbnMgPSB7XG5cdGNvbmZpZ3VyYXRpb246IHN0cmluZztcblx0cHJvamVjdD86IHN0cmluZztcbn07XG5cbkBpbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTZXJ2ZUFjdGlvbiBpbXBsZW1lbnRzIEFjdGlvbjxTZXJ2ZU9wdGlvbnM+IHtcblx0cHVibGljIGNvbnN0cnVjdG9yKFxuXHRcdHByaXZhdGUgcmVhZG9ubHkgc2VydmVyOiBIb3RSZWxvYWRTZXJ2ZXIsXG5cdFx0cHJpdmF0ZSByZWFkb25seSB3b3Jrc3BhY2U6IFdvcmtzcGFjZSxcblx0KSB7fVxuXG5cdHB1YmxpYyBhc3luYyBydW4ob3B0aW9uczogU2VydmVPcHRpb25zKTogUHJvbWlzZTxBY3Rpb25SZXNwb25zZT4ge1xuXHRcdGF3YWl0IHRoaXMuc2VydmVyLnN0YXJ0KHtcblx0XHRcdHdvcmtzcGFjZTogdGhpcy53b3Jrc3BhY2UsXG5cdFx0XHRidWlsZENvbmZpZzogb3B0aW9ucy5jb25maWd1cmF0aW9uLFxuXHRcdFx0cHJvamVjdDogb3B0aW9ucy5wcm9qZWN0LFxuXHRcdH0pO1xuXHRcdHJldHVybiBBY3Rpb25SZXNwb25zZS5CbG9ja2luZyhTZXJ2ZUFjdGlvbi5uYW1lKTtcblx0fVxufVxuIl0sIm5hbWVzIjpbIlNlcnZlQWN0aW9uIiwic2VydmVyIiwid29ya3NwYWNlIiwicnVuIiwib3B0aW9ucyIsInN0YXJ0IiwiYnVpbGRDb25maWciLCJjb25maWd1cmF0aW9uIiwicHJvamVjdCIsIkFjdGlvblJlc3BvbnNlIiwiQmxvY2tpbmciLCJuYW1lIl0sIm1hcHBpbmdzIjoiOzs7OytCQWFhQTs7O2VBQUFBOzs7NEJBYmM7c0JBRUQ7cUJBQ2tCO2lDQUVaOzs7Ozs7Ozs7O0FBUXpCLE1BQU1BOzs7SUFDWixZQUNDLEFBQWlCQyxNQUF1QixFQUN4QyxBQUFpQkMsU0FBb0IsQ0FDcEM7YUFGZ0JELFNBQUFBO2FBQ0FDLFlBQUFBO0lBQ2Y7SUFFSCxNQUFhQyxJQUFJQyxPQUFxQixFQUEyQjtRQUNoRSxNQUFNLElBQUksQ0FBQ0gsTUFBTSxDQUFDSSxLQUFLLENBQUM7WUFDdkJILFdBQVcsSUFBSSxDQUFDQSxTQUFTO1lBQ3pCSSxhQUFhRixRQUFRRyxhQUFhO1lBQ2xDQyxTQUFTSixRQUFRSSxPQUFPO1FBQ3pCO1FBQ0EsT0FBT0MsbUJBQWMsQ0FBQ0MsUUFBUSxDQUFDVixZQUFZVyxJQUFJO0lBQ2hEO0FBQ0QifQ==
@@ -9,7 +9,6 @@ Object.defineProperty(exports, "ServeCommand", {
9
9
  }
10
10
  });
11
11
  const _cli = require("@decohere/nexus/cli");
12
- const _hotreloadserver = require("./hot-reload-server.js");
13
12
  const _serveaction = require("./serve.action.js");
14
13
  class ServeCommand extends _cli.DecohereCommand {
15
14
  get actions() {
@@ -19,37 +18,10 @@ class ServeCommand extends _cli.DecohereCommand {
19
18
  }
20
19
  constructor(name){
21
20
  super(name);
22
- this.description("Serve a project or directory slices (Flux apps in-process; foreign packages via package scripts)");
23
- this.argument("[slices...]", "Module directories to serve (e.g. funding shell secmaster, or projects/funding)");
21
+ this.description("Serve a project in a workspace configuration");
24
22
  this.addOption(new _cli.ConfigurationOption("debug"));
25
23
  this.addOption(new _cli.ProjectOption());
26
- this.option("--reboot-debounce-ms <ms>", "Quiet window in milliseconds after the last affecting save before a reboot", (value)=>(0, _hotreloadserver.resolveRebootDebounceMs)(Number(value)), _hotreloadserver.DEFAULT_REBOOT_DEBOUNCE_MS);
27
24
  }
28
- /**
29
- * Commander passes positional args before options when `[slices...]` is declared.
30
- * The CLI host ModuleFactory expects `(opts, cmd)` — normalize here.
31
- */ action(fn) {
32
- return super.action((...args)=>{
33
- const cmd = args.at(-1);
34
- const first = args[0];
35
- const hasPositionalSlices = Array.isArray(first) || typeof first === "string" || first === undefined;
36
- const opts = hasPositionalSlices ? args[1] : args[0];
37
- const slices = normalizePositionalSlices(first);
38
- if (slices.length > 0) {
39
- cmd.setOptionValue("slices", slices);
40
- }
41
- return fn(opts, cmd);
42
- });
43
- }
44
- }
45
- function normalizePositionalSlices(first) {
46
- if (Array.isArray(first)) {
47
- return first.filter((s)=>typeof s === "string" && s !== "");
48
- }
49
- if (typeof first === "string" && first !== "") {
50
- return [
51
- first
52
- ];
53
- }
54
- return [];
55
25
  }
26
+
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZsdXgvc3JjL3NlcnZlLmNvbW1hbmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uZmlndXJhdGlvbk9wdGlvbiwgRGVjb2hlcmVDb21tYW5kLCBQcm9qZWN0T3B0aW9uIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9jbGlcIjtcbmltcG9ydCB7IFNlcnZlQWN0aW9uIH0gZnJvbSBcIi4vc2VydmUuYWN0aW9uLmpzXCI7XG5cbmV4cG9ydCBjbGFzcyBTZXJ2ZUNvbW1hbmQgZXh0ZW5kcyBEZWNvaGVyZUNvbW1hbmQge1xuXHRwdWJsaWMgb3ZlcnJpZGUgZ2V0IGFjdGlvbnMoKSB7XG5cdFx0cmV0dXJuIFtTZXJ2ZUFjdGlvbl07XG5cdH1cblxuXHRwdWJsaWMgY29uc3RydWN0b3IobmFtZTogc3RyaW5nKSB7XG5cdFx0c3VwZXIobmFtZSk7XG5cdFx0dGhpcy5kZXNjcmlwdGlvbihcIlNlcnZlIGEgcHJvamVjdCBpbiBhIHdvcmtzcGFjZSBjb25maWd1cmF0aW9uXCIpO1xuXHRcdHRoaXMuYWRkT3B0aW9uKG5ldyBDb25maWd1cmF0aW9uT3B0aW9uKFwiZGVidWdcIikpO1xuXHRcdHRoaXMuYWRkT3B0aW9uKG5ldyBQcm9qZWN0T3B0aW9uKCkpO1xuXHR9XG59XG4iXSwibmFtZXMiOlsiU2VydmVDb21tYW5kIiwiRGVjb2hlcmVDb21tYW5kIiwiYWN0aW9ucyIsIlNlcnZlQWN0aW9uIiwibmFtZSIsImRlc2NyaXB0aW9uIiwiYWRkT3B0aW9uIiwiQ29uZmlndXJhdGlvbk9wdGlvbiIsIlByb2plY3RPcHRpb24iXSwibWFwcGluZ3MiOiI7Ozs7K0JBR2FBOzs7ZUFBQUE7OztxQkFIdUQ7NkJBQ3hDO0FBRXJCLE1BQU1BLHFCQUFxQkMsb0JBQWU7SUFDaEQsSUFBb0JDLFVBQVU7UUFDN0IsT0FBTztZQUFDQyx3QkFBVztTQUFDO0lBQ3JCO0lBRUEsWUFBbUJDLElBQVksQ0FBRTtRQUNoQyxLQUFLLENBQUNBO1FBQ04sSUFBSSxDQUFDQyxXQUFXLENBQUM7UUFDakIsSUFBSSxDQUFDQyxTQUFTLENBQUMsSUFBSUMsd0JBQW1CLENBQUM7UUFDdkMsSUFBSSxDQUFDRCxTQUFTLENBQUMsSUFBSUUsa0JBQWE7SUFDakM7QUFDRCJ9
@@ -1,5 +1,4 @@
1
1
  import { DecohereCommand } from "@decohere/nexus/cli";
2
- import { RunCommand } from "./run.command.js";
3
2
  import { ServeCommand } from "./serve.command.js";
4
3
  export class FluxCommand extends DecohereCommand {
5
4
  constructor(commands, handler){
@@ -7,7 +6,6 @@ export class FluxCommand extends DecohereCommand {
7
6
  this.exitOverride();
8
7
  this.registerSubcommand({
9
8
  serve: ServeCommand,
10
- run: RunCommand,
11
9
  ...commands
12
10
  }, handler);
13
11
  }
@@ -15,3 +13,5 @@ export class FluxCommand extends DecohereCommand {
15
13
  return this.help();
16
14
  }
17
15
  }
16
+
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZsdXgvc3JjL2ZsdXguY29tbWFuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEFjdGlvbnMgfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL2NsaVwiO1xuaW1wb3J0IHtcblx0dHlwZSBDb21tYW5kSGFuZGxlcixcblx0dHlwZSBDb21tYW5kUmVzcG9uc2UsXG5cdHR5cGUgQ29tbWFuZFR5cGUsXG5cdERlY29oZXJlQ29tbWFuZCxcbn0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9jbGlcIjtcbmltcG9ydCB7IFNlcnZlQ29tbWFuZCB9IGZyb20gXCIuL3NlcnZlLmNvbW1hbmQuanNcIjtcblxuZXhwb3J0IGNsYXNzIEZsdXhDb21tYW5kIGV4dGVuZHMgRGVjb2hlcmVDb21tYW5kIHtcblx0cHVibGljIGNvbnN0cnVjdG9yKGNvbW1hbmRzOiBSZWNvcmQ8c3RyaW5nLCBDb21tYW5kVHlwZT4sIGhhbmRsZXI6IENvbW1hbmRIYW5kbGVyKSB7XG5cdFx0c3VwZXIoRmx1eENvbW1hbmQpO1xuXHRcdHRoaXMuZXhpdE92ZXJyaWRlKCk7XG5cdFx0dGhpcy5yZWdpc3RlclN1YmNvbW1hbmQoeyBzZXJ2ZTogU2VydmVDb21tYW5kLCAuLi5jb21tYW5kcyB9LCBoYW5kbGVyKTtcblx0fVxuXG5cdHB1YmxpYyBydW4oX2FjdGlvbnM6IEFjdGlvbnMsIF9vcHRpb25zOiBuZXZlcik6IFByb21pc2U8Q29tbWFuZFJlc3BvbnNlPiB7XG5cdFx0cmV0dXJuIHRoaXMuaGVscCgpO1xuXHR9XG59XG4iXSwibmFtZXMiOlsiRGVjb2hlcmVDb21tYW5kIiwiU2VydmVDb21tYW5kIiwiRmx1eENvbW1hbmQiLCJjb21tYW5kcyIsImhhbmRsZXIiLCJleGl0T3ZlcnJpZGUiLCJyZWdpc3RlclN1YmNvbW1hbmQiLCJzZXJ2ZSIsInJ1biIsIl9hY3Rpb25zIiwiX29wdGlvbnMiLCJoZWxwIl0sIm1hcHBpbmdzIjoiQUFDQSxTQUlDQSxlQUFlLFFBQ1Qsc0JBQXNCO0FBQzdCLFNBQVNDLFlBQVksUUFBUSxxQkFBcUI7QUFFbEQsT0FBTyxNQUFNQyxvQkFBb0JGO0lBQ2hDLFlBQW1CRyxRQUFxQyxFQUFFQyxPQUF1QixDQUFFO1FBQ2xGLEtBQUssQ0FBQ0Y7UUFDTixJQUFJLENBQUNHLFlBQVk7UUFDakIsSUFBSSxDQUFDQyxrQkFBa0IsQ0FBQztZQUFFQyxPQUFPTjtZQUFjLEdBQUdFLFFBQVE7UUFBQyxHQUFHQztJQUMvRDtJQUVPSSxJQUFJQyxRQUFpQixFQUFFQyxRQUFlLEVBQTRCO1FBQ3hFLE9BQU8sSUFBSSxDQUFDQyxJQUFJO0lBQ2pCO0FBQ0QifQ==
@@ -1,23 +1,22 @@
1
- import { createWorkspace } from "@decohere/forge";
1
+ import { WorkspaceFactory } from "@decohere/mesh";
2
2
  import { ModuleManifest } from "@decohere/nexus/cli";
3
- import { DeferredScriptRunner } from "./deferred-script-runner.js";
4
3
  import { FluxCommand } from "./flux.command.js";
5
4
  import { HotReloadServer } from "./hot-reload-server.js";
6
- import { RunAction } from "./run.action.js";
7
5
  import { ServeAction } from "./serve.action.js";
8
6
  export class FluxModule extends ModuleManifest {
9
7
  id = "flux";
10
8
  command = FluxCommand;
11
9
  actions = {
12
- serve: ServeAction,
13
- run: RunAction
10
+ serve: ServeAction
14
11
  };
15
12
  registerServices(builder) {
16
13
  builder.registerSingleton(HotReloadServer);
17
- builder.registerSingleton(DeferredScriptRunner);
18
14
  }
19
15
  createWorkspace(options) {
20
- // Same workspace as `flux.run` / `flux.serve` and forge (#516).
21
- return createWorkspace(options);
16
+ return WorkspaceFactory.create({
17
+ configFile: options.configFile
18
+ });
22
19
  }
23
20
  }
21
+
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZsdXgvc3JjL2ZsdXgubW9kdWxlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFdvcmtzcGFjZUZhY3RvcnkgfSBmcm9tIFwiQGRlY29oZXJlL21lc2hcIjtcbmltcG9ydCB0eXBlIHsgV29ya3NwYWNlRmFjdG9yeU9wdGlvbnMgfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL2NsaVwiO1xuaW1wb3J0IHsgTW9kdWxlTWFuaWZlc3QgfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL2NsaVwiO1xuaW1wb3J0IHR5cGUgeyBDb250YWluZXJCdWlsZGVyIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9jb21wb3NpdGlvblwiO1xuaW1wb3J0IHsgRmx1eENvbW1hbmQgfSBmcm9tIFwiLi9mbHV4LmNvbW1hbmQuanNcIjtcbmltcG9ydCB7IEhvdFJlbG9hZFNlcnZlciB9IGZyb20gXCIuL2hvdC1yZWxvYWQtc2VydmVyLmpzXCI7XG5pbXBvcnQgeyBTZXJ2ZUFjdGlvbiB9IGZyb20gXCIuL3NlcnZlLmFjdGlvbi5qc1wiO1xuXG5leHBvcnQgY2xhc3MgRmx1eE1vZHVsZSBleHRlbmRzIE1vZHVsZU1hbmlmZXN0IHtcblx0cHVibGljIHJlYWRvbmx5IGlkID0gXCJmbHV4XCI7XG5cdHB1YmxpYyByZWFkb25seSBjb21tYW5kID0gRmx1eENvbW1hbmQ7XG5cdHB1YmxpYyByZWFkb25seSBhY3Rpb25zID0ge1xuXHRcdHNlcnZlOiBTZXJ2ZUFjdGlvbixcblx0fTtcblxuXHRwdWJsaWMgcmVnaXN0ZXJTZXJ2aWNlcyhidWlsZGVyOiBDb250YWluZXJCdWlsZGVyKSB7XG5cdFx0YnVpbGRlci5yZWdpc3RlclNpbmdsZXRvbihIb3RSZWxvYWRTZXJ2ZXIpO1xuXHR9XG5cblx0cHVibGljIG92ZXJyaWRlIGNyZWF0ZVdvcmtzcGFjZShvcHRpb25zOiBXb3Jrc3BhY2VGYWN0b3J5T3B0aW9ucykge1xuXHRcdHJldHVybiBXb3Jrc3BhY2VGYWN0b3J5LmNyZWF0ZSh7IGNvbmZpZ0ZpbGU6IG9wdGlvbnMuY29uZmlnRmlsZSB9KTtcblx0fVxufVxuIl0sIm5hbWVzIjpbIldvcmtzcGFjZUZhY3RvcnkiLCJNb2R1bGVNYW5pZmVzdCIsIkZsdXhDb21tYW5kIiwiSG90UmVsb2FkU2VydmVyIiwiU2VydmVBY3Rpb24iLCJGbHV4TW9kdWxlIiwiaWQiLCJjb21tYW5kIiwiYWN0aW9ucyIsInNlcnZlIiwicmVnaXN0ZXJTZXJ2aWNlcyIsImJ1aWxkZXIiLCJyZWdpc3RlclNpbmdsZXRvbiIsImNyZWF0ZVdvcmtzcGFjZSIsIm9wdGlvbnMiLCJjcmVhdGUiLCJjb25maWdGaWxlIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxnQkFBZ0IsUUFBUSxpQkFBaUI7QUFFbEQsU0FBU0MsY0FBYyxRQUFRLHNCQUFzQjtBQUVyRCxTQUFTQyxXQUFXLFFBQVEsb0JBQW9CO0FBQ2hELFNBQVNDLGVBQWUsUUFBUSx5QkFBeUI7QUFDekQsU0FBU0MsV0FBVyxRQUFRLG9CQUFvQjtBQUVoRCxPQUFPLE1BQU1DLG1CQUFtQko7SUFDZkssS0FBSyxPQUFPO0lBQ1pDLFVBQVVMLFlBQVk7SUFDdEJNLFVBQVU7UUFDekJDLE9BQU9MO0lBQ1IsRUFBRTtJQUVLTSxpQkFBaUJDLE9BQXlCLEVBQUU7UUFDbERBLFFBQVFDLGlCQUFpQixDQUFDVDtJQUMzQjtJQUVnQlUsZ0JBQWdCQyxPQUFnQyxFQUFFO1FBQ2pFLE9BQU9kLGlCQUFpQmUsTUFBTSxDQUFDO1lBQUVDLFlBQVlGLFFBQVFFLFVBQVU7UUFBQztJQUNqRTtBQUNEIn0=