@decohere/forge 0.0.1-dev.13 → 0.0.1-dev.131

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 (201) hide show
  1. package/LICENSE +15 -0
  2. package/README.md +152 -0
  3. package/commonjs/src/actions/build.action.js +8 -6
  4. package/commonjs/src/actions/clean.action.js +6 -8
  5. package/commonjs/src/actions/commit.action.js +4 -6
  6. package/commonjs/src/actions/copy.action.js +62 -12
  7. package/commonjs/src/actions/dependency-report.action.js +8 -6
  8. package/commonjs/src/actions/dependency-sync.action.js +9 -5
  9. package/commonjs/src/actions/docker.action.js +209 -0
  10. package/commonjs/src/actions/index.js +6 -2
  11. package/commonjs/src/actions/link.action.js +154 -0
  12. package/commonjs/src/actions/package.action.js +234 -0
  13. package/commonjs/src/actions/paths.action.js +120 -0
  14. package/commonjs/src/actions/publish.action.js +4 -6
  15. package/commonjs/src/actions/sync-lock-file.action.js +2 -4
  16. package/commonjs/src/actions/tag.action.js +6 -9
  17. package/commonjs/src/actions/typecheck.action.js +67 -0
  18. package/commonjs/src/actions/unlink.action.js +74 -0
  19. package/commonjs/src/actions/version.action.js +14 -16
  20. package/commonjs/src/actions/watch.action.js +3 -5
  21. package/commonjs/src/commands/build.command.js +4 -3
  22. package/commonjs/src/commands/dependency.command.js +1 -3
  23. package/commonjs/src/commands/docker.command.js +26 -0
  24. package/commonjs/src/commands/forge.command.js +1 -3
  25. package/commonjs/src/commands/index.js +5 -2
  26. package/commonjs/src/commands/link.command.js +90 -0
  27. package/commonjs/src/commands/package.command.js +36 -0
  28. package/commonjs/src/commands/paths.command.js +24 -0
  29. package/commonjs/src/commands/publish.command.js +1 -3
  30. package/commonjs/src/commands/tag.command.js +1 -3
  31. package/commonjs/src/commands/typecheck.command.js +24 -0
  32. package/commonjs/src/commands/version.command.js +1 -3
  33. package/commonjs/src/const.js +0 -2
  34. package/commonjs/src/create-workspace.js +38 -0
  35. package/commonjs/src/errors.js +2 -4
  36. package/commonjs/src/extensions/project.extensions.js +11 -13
  37. package/commonjs/src/factories/swc-config.factory.js +29 -9
  38. package/commonjs/src/forge.module.js +23 -22
  39. package/commonjs/src/index.js +11 -2
  40. package/commonjs/src/packaging/dependency-pinner.service.js +118 -0
  41. package/commonjs/src/packaging/deployable.js +44 -0
  42. package/commonjs/src/packaging/import-graph.service.js +137 -0
  43. package/commonjs/src/packaging/release-exports.js +90 -0
  44. package/commonjs/src/packaging/ui-assets.js +75 -0
  45. package/commonjs/src/semver/index.js +18 -0
  46. package/commonjs/src/semver/semver.js +92 -0
  47. package/commonjs/src/services/dependency-resolver.service.js +70 -26
  48. package/commonjs/src/services/file-writer.service.js +2 -11
  49. package/commonjs/src/services/incremental-watch.js +24 -0
  50. package/commonjs/src/services/output-cache.js +39 -0
  51. package/commonjs/src/services/swc-transpiler.js +85 -99
  52. package/commonjs/src/services/transpile-cache.js +44 -0
  53. package/commonjs/src/services/ts-compiler-options.js +50 -0
  54. package/commonjs/src/services/ts-program-host.js +4 -6
  55. package/commonjs/src/services/type-emission-program.js +25 -10
  56. package/commonjs/src/services/type-emitter.js +60 -20
  57. package/commonjs/src/transpile/index.js +30 -0
  58. package/commonjs/src/types/build-target.type.js +0 -2
  59. package/commonjs/src/types/configuration.type.js +0 -2
  60. package/commonjs/src/types/dependency.types.js +0 -2
  61. package/commonjs/src/types/swc-config.type.js +0 -2
  62. package/commonjs/src/types/transform-response.model.js +3 -18
  63. package/commonjs/src/types/transformer.type.js +0 -2
  64. package/commonjs/src/types/workspace-config.type.js +0 -2
  65. package/commonjs/src/vitest/forge-build.plugin.js +28 -44
  66. package/commonjs/src/vitest/index.js +0 -2
  67. package/commonjs/src/workspace.config.js +39 -6
  68. package/es6/src/actions/build.action.js +7 -7
  69. package/es6/src/actions/clean.action.js +5 -8
  70. package/es6/src/actions/commit.action.js +3 -6
  71. package/es6/src/actions/copy.action.js +61 -12
  72. package/es6/src/actions/dependency-report.action.js +7 -7
  73. package/es6/src/actions/dependency-sync.action.js +8 -6
  74. package/es6/src/actions/docker.action.js +194 -0
  75. package/es6/src/actions/index.js +6 -2
  76. package/es6/src/actions/link.action.js +128 -0
  77. package/es6/src/actions/package.action.js +219 -0
  78. package/es6/src/actions/paths.action.js +97 -0
  79. package/es6/src/actions/publish.action.js +3 -6
  80. package/es6/src/actions/sync-lock-file.action.js +2 -4
  81. package/es6/src/actions/tag.action.js +5 -9
  82. package/es6/src/actions/typecheck.action.js +52 -0
  83. package/es6/src/actions/unlink.action.js +59 -0
  84. package/es6/src/actions/version.action.js +9 -12
  85. package/es6/src/actions/watch.action.js +2 -5
  86. package/es6/src/commands/build.command.js +4 -3
  87. package/es6/src/commands/dependency.command.js +1 -3
  88. package/es6/src/commands/docker.command.js +16 -0
  89. package/es6/src/commands/forge.command.js +1 -3
  90. package/es6/src/commands/index.js +5 -2
  91. package/es6/src/commands/link.command.js +67 -0
  92. package/es6/src/commands/package.command.js +26 -0
  93. package/es6/src/commands/paths.command.js +14 -0
  94. package/es6/src/commands/publish.command.js +1 -3
  95. package/es6/src/commands/tag.command.js +1 -3
  96. package/es6/src/commands/typecheck.command.js +14 -0
  97. package/es6/src/commands/version.command.js +1 -3
  98. package/es6/src/const.js +0 -2
  99. package/es6/src/create-workspace.js +26 -0
  100. package/es6/src/errors.js +1 -3
  101. package/es6/src/extensions/project.extensions.js +5 -7
  102. package/es6/src/factories/swc-config.factory.js +29 -9
  103. package/es6/src/forge.module.js +23 -22
  104. package/es6/src/index.js +3 -3
  105. package/es6/src/packaging/dependency-pinner.service.js +103 -0
  106. package/es6/src/packaging/deployable.js +21 -0
  107. package/es6/src/packaging/import-graph.service.js +122 -0
  108. package/es6/src/packaging/release-exports.js +80 -0
  109. package/es6/src/packaging/ui-assets.js +49 -0
  110. package/es6/src/semver/index.js +1 -0
  111. package/es6/src/semver/semver.js +71 -0
  112. package/es6/src/services/dependency-resolver.service.js +70 -26
  113. package/es6/src/services/file-writer.service.js +2 -11
  114. package/es6/src/services/incremental-watch.js +18 -0
  115. package/es6/src/services/output-cache.js +29 -0
  116. package/es6/src/services/swc-transpiler.js +85 -99
  117. package/es6/src/services/transpile-cache.js +29 -0
  118. package/es6/src/services/ts-compiler-options.js +39 -0
  119. package/es6/src/services/ts-program-host.js +4 -6
  120. package/es6/src/services/type-emission-program.js +25 -10
  121. package/es6/src/services/type-emitter.js +57 -20
  122. package/es6/src/transpile/index.js +6 -0
  123. package/es6/src/types/build-target.type.js +0 -2
  124. package/es6/src/types/configuration.type.js +0 -2
  125. package/es6/src/types/dependency.types.js +0 -2
  126. package/es6/src/types/swc-config.type.js +0 -2
  127. package/es6/src/types/transform-response.model.js +0 -7
  128. package/es6/src/types/transformer.type.js +0 -2
  129. package/es6/src/types/workspace-config.type.js +0 -2
  130. package/es6/src/vitest/forge-build.plugin.js +27 -43
  131. package/es6/src/vitest/index.js +0 -2
  132. package/es6/src/workspace.config.js +39 -5
  133. package/package.json +20 -6
  134. package/types/src/actions/build.action.d.ts +5 -4
  135. package/types/src/actions/clean.action.d.ts +3 -3
  136. package/types/src/actions/commit.action.d.ts +3 -3
  137. package/types/src/actions/copy.action.d.ts +18 -3
  138. package/types/src/actions/dependency-report.action.d.ts +3 -3
  139. package/types/src/actions/dependency-sync.action.d.ts +3 -3
  140. package/types/src/actions/docker.action.d.ts +38 -0
  141. package/types/src/actions/index.d.ts +6 -0
  142. package/types/src/actions/link.action.d.ts +25 -0
  143. package/types/src/actions/package.action.d.ts +38 -0
  144. package/types/src/actions/paths.action.d.ts +28 -0
  145. package/types/src/actions/publish.action.d.ts +4 -4
  146. package/types/src/actions/sync-lock-file.action.d.ts +2 -2
  147. package/types/src/actions/tag.action.d.ts +3 -3
  148. package/types/src/actions/typecheck.action.d.ts +14 -0
  149. package/types/src/actions/unlink.action.d.ts +9 -0
  150. package/types/src/actions/version.action.d.ts +4 -4
  151. package/types/src/actions/watch.action.d.ts +3 -3
  152. package/types/src/commands/build.command.d.ts +3 -2
  153. package/types/src/commands/dependency.command.d.ts +2 -2
  154. package/types/src/commands/docker.command.d.ts +6 -0
  155. package/types/src/commands/forge.command.d.ts +2 -2
  156. package/types/src/commands/index.d.ts +5 -0
  157. package/types/src/commands/link.command.d.ts +29 -0
  158. package/types/src/commands/package.command.d.ts +11 -0
  159. package/types/src/commands/paths.command.d.ts +6 -0
  160. package/types/src/commands/publish.command.d.ts +1 -1
  161. package/types/src/commands/tag.command.d.ts +1 -1
  162. package/types/src/commands/typecheck.command.d.ts +6 -0
  163. package/types/src/commands/version.command.d.ts +1 -1
  164. package/types/src/create-workspace.d.ts +7 -0
  165. package/types/src/errors.d.ts +1 -1
  166. package/types/src/extensions/project.extensions.d.ts +2 -2
  167. package/types/src/factories/swc-config.factory.d.ts +3 -2
  168. package/types/src/forge.module.d.ts +16 -4
  169. package/types/src/index.d.ts +3 -1
  170. package/types/src/packaging/dependency-pinner.service.d.ts +20 -0
  171. package/types/src/packaging/deployable.d.ts +17 -0
  172. package/types/src/packaging/import-graph.service.d.ts +33 -0
  173. package/types/src/packaging/release-exports.d.ts +18 -0
  174. package/types/src/packaging/ui-assets.d.ts +21 -0
  175. package/types/src/semver/index.d.ts +1 -0
  176. package/types/src/semver/semver.d.ts +18 -0
  177. package/types/src/services/dependency-resolver.service.d.ts +8 -1
  178. package/types/src/services/file-writer.service.d.ts +1 -2
  179. package/types/src/services/incremental-watch.d.ts +13 -0
  180. package/types/src/services/output-cache.d.ts +10 -0
  181. package/types/src/services/swc-transpiler.d.ts +28 -15
  182. package/types/src/services/transpile-cache.d.ts +17 -0
  183. package/types/src/services/ts-compiler-options.d.ts +8 -0
  184. package/types/src/services/ts-program-host.d.ts +2 -2
  185. package/types/src/services/type-emission-program.d.ts +10 -3
  186. package/types/src/services/type-emitter.d.ts +21 -8
  187. package/types/src/transpile/index.d.ts +6 -0
  188. package/types/src/types/configuration.type.d.ts +6 -1
  189. package/types/src/types/dependency.types.d.ts +8 -9
  190. package/types/src/types/swc-config.type.d.ts +7 -1
  191. package/types/src/types/transform-response.model.d.ts +2 -7
  192. package/types/src/types/transformer.type.d.ts +3 -12
  193. package/types/src/types/workspace-config.type.d.ts +3 -3
  194. package/types/src/vitest/forge-build.plugin.d.ts +0 -2
  195. package/types/src/workspace.config.d.ts +6 -0
  196. package/commonjs/src/mixins/caches-outputs.mixin.js +0 -44
  197. package/commonjs/src/mixins/incremental-transform.mixin.js +0 -36
  198. package/es6/src/mixins/caches-outputs.mixin.js +0 -34
  199. package/es6/src/mixins/incremental-transform.mixin.js +0 -26
  200. package/types/src/mixins/caches-outputs.mixin.d.ts +0 -7
  201. package/types/src/mixins/incremental-transform.mixin.d.ts +0 -13
@@ -4,9 +4,14 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  _export_star(require("./build.command.js"), exports);
6
6
  _export_star(require("./dependency.command.js"), exports);
7
+ _export_star(require("./docker.command.js"), exports);
7
8
  _export_star(require("./forge.command.js"), exports);
9
+ _export_star(require("./link.command.js"), exports);
10
+ _export_star(require("./package.command.js"), exports);
11
+ _export_star(require("./paths.command.js"), exports);
8
12
  _export_star(require("./publish.command.js"), exports);
9
13
  _export_star(require("./tag.command.js"), exports);
14
+ _export_star(require("./typecheck.command.js"), exports);
10
15
  _export_star(require("./version.command.js"), exports);
11
16
  function _export_star(from, to) {
12
17
  Object.keys(from).forEach(function(k) {
@@ -21,5 +26,3 @@ function _export_star(from, to) {
21
26
  });
22
27
  return from;
23
28
  }
24
-
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9jb21tYW5kcy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9idWlsZC5jb21tYW5kLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9kZXBlbmRlbmN5LmNvbW1hbmQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2ZvcmdlLmNvbW1hbmQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3B1Ymxpc2guY29tbWFuZC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vdGFnLmNvbW1hbmQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3ZlcnNpb24uY29tbWFuZC5qc1wiO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7cUJBQWM7cUJBQ0E7cUJBQ0E7cUJBQ0E7cUJBQ0E7cUJBQ0EifQ==
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get LinkCommand () {
13
+ return LinkCommand;
14
+ },
15
+ get UnlinkCommand () {
16
+ return UnlinkCommand;
17
+ }
18
+ });
19
+ const _cli = require("@decohere/devkit/cli");
20
+ const _auto = /*#__PURE__*/ _interop_require_default(require("async/auto.js"));
21
+ const _buildaction = require("../actions/build.action.js");
22
+ const _cleanaction = require("../actions/clean.action.js");
23
+ const _copyaction = require("../actions/copy.action.js");
24
+ const _linkaction = require("../actions/link.action.js");
25
+ const _unlinkaction = require("../actions/unlink.action.js");
26
+ const _watchaction = require("../actions/watch.action.js");
27
+ function _interop_require_default(obj) {
28
+ return obj && obj.__esModule ? obj : {
29
+ default: obj
30
+ };
31
+ }
32
+ class LinkCommand extends _cli.DecohereCommand {
33
+ get actions() {
34
+ return [
35
+ _cleanaction.Clean,
36
+ _buildaction.Build,
37
+ _copyaction.Copy,
38
+ _linkaction.Link,
39
+ _watchaction.Watch
40
+ ];
41
+ }
42
+ constructor(name){
43
+ super(name ?? "link");
44
+ this.description("Symlink workspace build outputs into a consumer project's node_modules");
45
+ this.addOption(new _cli.ConfigurationOption("link"));
46
+ this.addOption(new _cli.NoCleanOptions(true));
47
+ this.option("--build", "Run forge build concurrently after linking", false);
48
+ this.option("--no-copy", "Will not copy files like package.json to outdir", true);
49
+ this.option("--target-dir <dir>", "Path to the consumer project root");
50
+ this.option("--watch", "Watch for changes after linking", false);
51
+ }
52
+ runsUntilStopped(options) {
53
+ return options.watch === true;
54
+ }
55
+ run = async (actions, options)=>{
56
+ const responses = await (0, _auto.default)({
57
+ clean: async ()=>await actions.clean.run(options),
58
+ link: [
59
+ "clean",
60
+ async ()=>await actions.link.run(options)
61
+ ],
62
+ build: [
63
+ "link",
64
+ async ()=>await actions.build.run(options)
65
+ ],
66
+ copy: [
67
+ "link",
68
+ async ()=>await actions.copy.run(options)
69
+ ],
70
+ watch: [
71
+ "link",
72
+ async ()=>await actions.watch.run(options)
73
+ ]
74
+ });
75
+ return _cli.CommandResponse.success(options, responses);
76
+ };
77
+ }
78
+ class UnlinkCommand extends _cli.DecohereCommand {
79
+ get actions() {
80
+ return [
81
+ _unlinkaction.Unlink
82
+ ];
83
+ }
84
+ constructor(name, handler){
85
+ super(name ?? "unlink");
86
+ this.description("Remove workspace symlinks from a consumer project's node_modules");
87
+ this.option("--target-dir <dir>", "Path to the consumer project root");
88
+ if (handler) this.action(handler);
89
+ }
90
+ }
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "PackageCommand", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return PackageCommand;
9
+ }
10
+ });
11
+ const _cli = require("@decohere/devkit/cli");
12
+ const _packageaction = require("../actions/package.action.js");
13
+ class PackageCommand extends _cli.DecohereCommand {
14
+ get actions() {
15
+ return [
16
+ _packageaction.PackageDeployable
17
+ ];
18
+ }
19
+ constructor(name){
20
+ super(name);
21
+ this.description("Package a deployable (a project with a Dockerfile) with the workspace libraries it imports");
22
+ this.argument("[project]", "Package name of the deployable; omit to package every project with a Dockerfile");
23
+ }
24
+ /**
25
+ * Commander passes the positional before the options; the CLI host reads only options,
26
+ * so the project name is stashed on them.
27
+ */ action(fn) {
28
+ return super.action((...args)=>{
29
+ const cmd = args.at(-1);
30
+ const opts = args.at(-2);
31
+ const project = typeof args[0] === "string" ? args[0] : undefined;
32
+ cmd.setOptionValue("project", project);
33
+ return fn(opts, cmd);
34
+ });
35
+ }
36
+ }
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "PathsCommand", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return PathsCommand;
9
+ }
10
+ });
11
+ const _cli = require("@decohere/devkit/cli");
12
+ const _pathsaction = require("../actions/paths.action.js");
13
+ class PathsCommand extends _cli.DecohereCommand {
14
+ get actions() {
15
+ return [
16
+ _pathsaction.Paths
17
+ ];
18
+ }
19
+ constructor(name){
20
+ super(name);
21
+ this.description("Write tsconfig.paths.json: tsconfig paths for the workspace packages and their exported subpaths");
22
+ this.option("--check", "Fail if tsconfig.paths.json is missing or out of date", false);
23
+ }
24
+ }
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "PublishCommand", {
8
8
  return PublishCommand;
9
9
  }
10
10
  });
11
- const _cli = require("@decohere/nexus/cli");
11
+ const _cli = require("@decohere/devkit/cli");
12
12
  const _publishaction = require("../actions/publish.action.js");
13
13
  class PublishCommand extends _cli.DecohereCommand {
14
14
  get actions() {
@@ -28,5 +28,3 @@ class PublishCommand extends _cli.DecohereCommand {
28
28
  this.option("--prompt-otp", "Prompt interactively for npm OTP only (use when already logged in)", false);
29
29
  }
30
30
  }
31
-
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9jb21tYW5kcy9wdWJsaXNoLmNvbW1hbmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uZmlndXJhdGlvbk9wdGlvbiwgRGVjb2hlcmVDb21tYW5kLCBEcnlSdW5PcHRpb24gfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL2NsaVwiO1xuaW1wb3J0IHsgUHVibGlzaCB9IGZyb20gXCIuLi9hY3Rpb25zL3B1Ymxpc2guYWN0aW9uLmpzXCI7XG5cbmV4cG9ydCBjbGFzcyBQdWJsaXNoQ29tbWFuZCBleHRlbmRzIERlY29oZXJlQ29tbWFuZCB7XG5cdHB1YmxpYyBvdmVycmlkZSBnZXQgYWN0aW9ucygpIHtcblx0XHRyZXR1cm4gW1B1Ymxpc2hdO1xuXHR9XG5cblx0cHVibGljIGNvbnN0cnVjdG9yKG5hbWU6IHN0cmluZykge1xuXHRcdHN1cGVyKG5hbWUpO1xuXHRcdHRoaXMuZGVzY3JpcHRpb24oXCJQdWJsaXNoIHdvcmtzcGFjZSBwYWNrYWdlc1wiKTtcblx0XHR0aGlzLmFkZE9wdGlvbihuZXcgQ29uZmlndXJhdGlvbk9wdGlvbihcInJlbGVhc2VcIikpO1xuXHRcdHRoaXMuYWRkT3B0aW9uKG5ldyBEcnlSdW5PcHRpb24oXCJSdW4gbnBtIHB1Ymxpc2ggdXNpbmcgZHJ5LXJ1biBmbGFnXCIpKTtcblx0XHR0aGlzLm9wdGlvbihcIi0tY2hhbm5lbCA8Y2hhbm5lbD5cIiwgXCJUaGUgcmVsZWFzZSBjaGFubmVsXCIsIFwiYmV0YVwiKTtcblx0XHR0aGlzLm9wdGlvbihcIi0tdG9rZW4gPHRva2VuPlwiLCBcIm5wbSBhY2Nlc3MgdG9rZW4gKHVzZWQgb25seSBmb3IgdGhpcyBjb21tYW5kKVwiKTtcblx0XHR0aGlzLm9wdGlvbihcIi0tb3RwIDxvdHA+XCIsIFwibnBtIG9uZS10aW1lIHBhc3N3b3JkIGZvciAyRkEtcHJvdGVjdGVkIHB1Ymxpc2hcIik7XG5cdFx0dGhpcy5vcHRpb24oXCItLXByb21wdC1hdXRoXCIsIFwiUHJvbXB0IGludGVyYWN0aXZlbHkgZm9yIG5wbSB0b2tlbiBhbmQgT1RQXCIsIGZhbHNlKTtcblx0XHR0aGlzLm9wdGlvbihcblx0XHRcdFwiLS1wcm9tcHQtb3RwXCIsXG5cdFx0XHRcIlByb21wdCBpbnRlcmFjdGl2ZWx5IGZvciBucG0gT1RQIG9ubHkgKHVzZSB3aGVuIGFscmVhZHkgbG9nZ2VkIGluKVwiLFxuXHRcdFx0ZmFsc2UsXG5cdFx0KTtcblx0fVxufVxuIl0sIm5hbWVzIjpbIlB1Ymxpc2hDb21tYW5kIiwiRGVjb2hlcmVDb21tYW5kIiwiYWN0aW9ucyIsIlB1Ymxpc2giLCJuYW1lIiwiZGVzY3JpcHRpb24iLCJhZGRPcHRpb24iLCJDb25maWd1cmF0aW9uT3B0aW9uIiwiRHJ5UnVuT3B0aW9uIiwib3B0aW9uIl0sIm1hcHBpbmdzIjoiOzs7OytCQUdhQTs7O2VBQUFBOzs7cUJBSHNEOytCQUMzQztBQUVqQixNQUFNQSx1QkFBdUJDLG9CQUFlO0lBQ2xELElBQW9CQyxVQUFVO1FBQzdCLE9BQU87WUFBQ0Msc0JBQU87U0FBQztJQUNqQjtJQUVBLFlBQW1CQyxJQUFZLENBQUU7UUFDaEMsS0FBSyxDQUFDQTtRQUNOLElBQUksQ0FBQ0MsV0FBVyxDQUFDO1FBQ2pCLElBQUksQ0FBQ0MsU0FBUyxDQUFDLElBQUlDLHdCQUFtQixDQUFDO1FBQ3ZDLElBQUksQ0FBQ0QsU0FBUyxDQUFDLElBQUlFLGlCQUFZLENBQUM7UUFDaEMsSUFBSSxDQUFDQyxNQUFNLENBQUMsdUJBQXVCLHVCQUF1QjtRQUMxRCxJQUFJLENBQUNBLE1BQU0sQ0FBQyxtQkFBbUI7UUFDL0IsSUFBSSxDQUFDQSxNQUFNLENBQUMsZUFBZTtRQUMzQixJQUFJLENBQUNBLE1BQU0sQ0FBQyxpQkFBaUIsOENBQThDO1FBQzNFLElBQUksQ0FBQ0EsTUFBTSxDQUNWLGdCQUNBLHNFQUNBO0lBRUY7QUFDRCJ9
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "TagCommand", {
8
8
  return TagCommand;
9
9
  }
10
10
  });
11
- const _cli = require("@decohere/nexus/cli");
11
+ const _cli = require("@decohere/devkit/cli");
12
12
  const _tagaction = require("../actions/tag.action.js");
13
13
  class TagCommand extends _cli.DecohereCommand {
14
14
  get actions() {
@@ -24,5 +24,3 @@ class TagCommand extends _cli.DecohereCommand {
24
24
  this.addOption(new _cli.DryRunOption("Print the tag without creating it"));
25
25
  }
26
26
  }
27
-
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9jb21tYW5kcy90YWcuY29tbWFuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZWNvaGVyZUNvbW1hbmQsIERyeVJ1bk9wdGlvbiB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvY2xpXCI7XG5pbXBvcnQgeyBUYWcgfSBmcm9tIFwiLi4vYWN0aW9ucy90YWcuYWN0aW9uLmpzXCI7XG5cbmV4cG9ydCBjbGFzcyBUYWdDb21tYW5kIGV4dGVuZHMgRGVjb2hlcmVDb21tYW5kIHtcblx0cHVibGljIG92ZXJyaWRlIGdldCBhY3Rpb25zKCkge1xuXHRcdHJldHVybiBbVGFnXTtcblx0fVxuXG5cdHB1YmxpYyBjb25zdHJ1Y3RvcihuYW1lOiBzdHJpbmcpIHtcblx0XHRzdXBlcihuYW1lKTtcblx0XHR0aGlzLmRlc2NyaXB0aW9uKFwiQ3JlYXRlIGFuZCBvcHRpb25hbGx5IHB1c2ggYSBnaXQgdGFnIGZvciB0aGUgd29ya3NwYWNlIHZlcnNpb25cIik7XG5cdFx0dGhpcy5vcHRpb24oXCItLXByZWZpeCA8cHJlZml4PlwiLCBcIlRhZyBwcmVmaXhcIiwgXCJ2XCIpO1xuXHRcdHRoaXMub3B0aW9uKFwiLS1wdXNoXCIsIFwiUHVzaCB0aGUgdGFnIGFuZCBjdXJyZW50IGJyYW5jaCB0byBvcmlnaW4gYWZ0ZXIgdGFnZ2luZ1wiLCBmYWxzZSk7XG5cdFx0dGhpcy5hZGRPcHRpb24obmV3IERyeVJ1bk9wdGlvbihcIlByaW50IHRoZSB0YWcgd2l0aG91dCBjcmVhdGluZyBpdFwiKSk7XG5cdH1cbn1cbiJdLCJuYW1lcyI6WyJUYWdDb21tYW5kIiwiRGVjb2hlcmVDb21tYW5kIiwiYWN0aW9ucyIsIlRhZyIsIm5hbWUiLCJkZXNjcmlwdGlvbiIsIm9wdGlvbiIsImFkZE9wdGlvbiIsIkRyeVJ1bk9wdGlvbiJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFHYUE7OztlQUFBQTs7O3FCQUhpQzsyQkFDMUI7QUFFYixNQUFNQSxtQkFBbUJDLG9CQUFlO0lBQzlDLElBQW9CQyxVQUFVO1FBQzdCLE9BQU87WUFBQ0MsY0FBRztTQUFDO0lBQ2I7SUFFQSxZQUFtQkMsSUFBWSxDQUFFO1FBQ2hDLEtBQUssQ0FBQ0E7UUFDTixJQUFJLENBQUNDLFdBQVcsQ0FBQztRQUNqQixJQUFJLENBQUNDLE1BQU0sQ0FBQyxxQkFBcUIsY0FBYztRQUMvQyxJQUFJLENBQUNBLE1BQU0sQ0FBQyxVQUFVLDJEQUEyRDtRQUNqRixJQUFJLENBQUNDLFNBQVMsQ0FBQyxJQUFJQyxpQkFBWSxDQUFDO0lBQ2pDO0FBQ0QifQ==
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "TypeCheckCommand", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return TypeCheckCommand;
9
+ }
10
+ });
11
+ const _cli = require("@decohere/devkit/cli");
12
+ const _typecheckaction = require("../actions/typecheck.action.js");
13
+ class TypeCheckCommand extends _cli.DecohereCommand {
14
+ get actions() {
15
+ return [
16
+ _typecheckaction.TypeCheck
17
+ ];
18
+ }
19
+ constructor(name){
20
+ super(name);
21
+ this.description("Type-check workspace projects without emitting files");
22
+ this.addOption(new _cli.ConfigurationOption("debug"));
23
+ }
24
+ }
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "VersionCommand", {
8
8
  return VersionCommand;
9
9
  }
10
10
  });
11
- const _cli = require("@decohere/nexus/cli");
11
+ const _cli = require("@decohere/devkit/cli");
12
12
  const _synclockfileaction = require("../actions/sync-lock-file.action.js");
13
13
  const _versionaction = require("../actions/version.action.js");
14
14
  class VersionCommand extends _cli.DecohereCommand {
@@ -32,5 +32,3 @@ class VersionCommand extends _cli.DecohereCommand {
32
32
  this.option("--from-changesets", "Read pending .changeset entries to determine the highest bump type (major > minor > patch)", false);
33
33
  }
34
34
  }
35
-
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9jb21tYW5kcy92ZXJzaW9uLmNvbW1hbmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uZmlndXJhdGlvbk9wdGlvbiwgRGVjb2hlcmVDb21tYW5kLCBEcnlSdW5PcHRpb24gfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL2NsaVwiO1xuaW1wb3J0IHsgU3luY0xvY2tGaWxlIH0gZnJvbSBcIi4uL2FjdGlvbnMvc3luYy1sb2NrLWZpbGUuYWN0aW9uLmpzXCI7XG5pbXBvcnQgeyBEZWZhdWx0Q2hhbm5lbCwgRGVmYXVsdFJlbGVhc2VUeXBlLCBWZXJzaW9uIH0gZnJvbSBcIi4uL2FjdGlvbnMvdmVyc2lvbi5hY3Rpb24uanNcIjtcblxudHlwZSBWZXJzaW9uQWN0aW9ucyA9IHsgdmVyc2lvbjogVmVyc2lvbjsgc3luY0xvY2tGaWxlOiBTeW5jTG9ja0ZpbGUgfTtcblxuZXhwb3J0IGNsYXNzIFZlcnNpb25Db21tYW5kIGV4dGVuZHMgRGVjb2hlcmVDb21tYW5kPFZlcnNpb25BY3Rpb25zPiB7XG5cdHB1YmxpYyBvdmVycmlkZSBnZXQgYWN0aW9ucygpIHtcblx0XHRyZXR1cm4gW1ZlcnNpb24sIFN5bmNMb2NrRmlsZV07XG5cdH1cblxuXHRwdWJsaWMgY29uc3RydWN0b3IobmFtZTogc3RyaW5nKSB7XG5cdFx0c3VwZXIobmFtZSk7XG5cdFx0dGhpcy5kZXNjcmlwdGlvbihcIkJ1bXAgd29ya3NwYWNlIHBhY2thZ2UgdmVyc2lvbnNcIik7XG5cdFx0dGhpcy5hZGRPcHRpb24obmV3IENvbmZpZ3VyYXRpb25PcHRpb24oXCJyZWxlYXNlXCIpKTtcblx0XHR0aGlzLmFkZE9wdGlvbihuZXcgRHJ5UnVuT3B0aW9uKFwiUnVuIG5wbSBwdWJsaXNoIHVzaW5nIGRyeS1ydW4gZmxhZ1wiKSk7XG5cdFx0dGhpcy5vcHRpb24oXG5cdFx0XHRcIi0tcmVsZWFzZS10eXBlIDxyZWxlYXNlVHlwZT5cIixcblx0XHRcdFwiVGhlIHNlbXZlciByZWxlYXNlIHR5cGU6IG1ham9yLCBtaW5vciwgcGF0Y2gsIHByZXJlbGVhc2VcIixcblx0XHRcdERlZmF1bHRSZWxlYXNlVHlwZSxcblx0XHQpO1xuXHRcdHRoaXMub3B0aW9uKFxuXHRcdFx0XCItLWNoYW5uZWwgPGNoYW5uZWw+XCIsXG5cdFx0XHRcIlRoZSByZWxlYXNlIGNoYW5uZWwgKHByZWlkIGZvciBwcmVyZWxlYXNlcywgZGlzdC10YWcgZm9yIHB1Ymxpc2gpXCIsXG5cdFx0XHREZWZhdWx0Q2hhbm5lbCxcblx0XHQpO1xuXHRcdHRoaXMub3B0aW9uKFxuXHRcdFx0XCItLXZlcnNpb24gPHZlcnNpb24+XCIsXG5cdFx0XHRcIkV4cGxpY2l0IGJhc2UgdmVyc2lvbiB0byBpbmNyZW1lbnQgKG92ZXJyaWRlcyBnaXQgdGFnIGRpc2NvdmVyeSlcIixcblx0XHQpO1xuXHRcdHRoaXMub3B0aW9uKFwiLS1uby1zeW5jXCIsIFwiU2tpcCBsb2NrZmlsZSBzeW5jIGFmdGVyIHZlcnNpb25pbmdcIiwgdHJ1ZSk7XG5cdFx0dGhpcy5vcHRpb24oXCItLWNvbW1pdFwiLCBcIkNvbW1pdCB2ZXJzaW9uZWQgcGFja2FnZS5qc29uIGZpbGVzIGFmdGVyIGJ1bXBpbmdcIiwgZmFsc2UpO1xuXHRcdHRoaXMub3B0aW9uKFwiLS1tZXNzYWdlIDxtZXNzYWdlPlwiLCBcIkNvbW1pdCBtZXNzYWdlICh1c2VkIHdpdGggLS1jb21taXQpXCIpO1xuXHRcdHRoaXMub3B0aW9uKFxuXHRcdFx0XCItLWZyb20tY2hhbmdlc2V0c1wiLFxuXHRcdFx0XCJSZWFkIHBlbmRpbmcgLmNoYW5nZXNldCBlbnRyaWVzIHRvIGRldGVybWluZSB0aGUgaGlnaGVzdCBidW1wIHR5cGUgKG1ham9yID4gbWlub3IgPiBwYXRjaClcIixcblx0XHRcdGZhbHNlLFxuXHRcdCk7XG5cdH1cbn1cbiJdLCJuYW1lcyI6WyJWZXJzaW9uQ29tbWFuZCIsIkRlY29oZXJlQ29tbWFuZCIsImFjdGlvbnMiLCJWZXJzaW9uIiwiU3luY0xvY2tGaWxlIiwibmFtZSIsImRlc2NyaXB0aW9uIiwiYWRkT3B0aW9uIiwiQ29uZmlndXJhdGlvbk9wdGlvbiIsIkRyeVJ1bk9wdGlvbiIsIm9wdGlvbiIsIkRlZmF1bHRSZWxlYXNlVHlwZSIsIkRlZmF1bHRDaGFubmVsIl0sIm1hcHBpbmdzIjoiOzs7OytCQU1hQTs7O2VBQUFBOzs7cUJBTnNEO29DQUN0QzsrQkFDK0I7QUFJckQsTUFBTUEsdUJBQXVCQyxvQkFBZTtJQUNsRCxJQUFvQkMsVUFBVTtRQUM3QixPQUFPO1lBQUNDLHNCQUFPO1lBQUVDLGdDQUFZO1NBQUM7SUFDL0I7SUFFQSxZQUFtQkMsSUFBWSxDQUFFO1FBQ2hDLEtBQUssQ0FBQ0E7UUFDTixJQUFJLENBQUNDLFdBQVcsQ0FBQztRQUNqQixJQUFJLENBQUNDLFNBQVMsQ0FBQyxJQUFJQyx3QkFBbUIsQ0FBQztRQUN2QyxJQUFJLENBQUNELFNBQVMsQ0FBQyxJQUFJRSxpQkFBWSxDQUFDO1FBQ2hDLElBQUksQ0FBQ0MsTUFBTSxDQUNWLGdDQUNBLDREQUNBQyxpQ0FBa0I7UUFFbkIsSUFBSSxDQUFDRCxNQUFNLENBQ1YsdUJBQ0EscUVBQ0FFLDZCQUFjO1FBRWYsSUFBSSxDQUFDRixNQUFNLENBQ1YsdUJBQ0E7UUFFRCxJQUFJLENBQUNBLE1BQU0sQ0FBQyxhQUFhLHVDQUF1QztRQUNoRSxJQUFJLENBQUNBLE1BQU0sQ0FBQyxZQUFZLHFEQUFxRDtRQUM3RSxJQUFJLENBQUNBLE1BQU0sQ0FBQyx1QkFBdUI7UUFDbkMsSUFBSSxDQUFDQSxNQUFNLENBQ1YscUJBQ0EsOEZBQ0E7SUFFRjtBQUNEIn0=
@@ -77,5 +77,3 @@ const BUILT_IN_MODULES = [
77
77
  "worker_threads",
78
78
  "zlib"
79
79
  ];
80
-
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9jb25zdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgU1dDX0NPTkZJRyA9IFwiLnN3Y3JjXCI7XG5leHBvcnQgY29uc3QgTk9ERV9NT0RVTEVTID0gXCJub2RlX21vZHVsZXNcIjtcbmV4cG9ydCBjb25zdCBCVUlMVF9JTl9NT0RVTEVTID0gW1xuXHRcImFzc2VydFwiLFxuXHRcImFzc2VydC9zdHJpY3RcIixcblx0XCJhc3luY19ob29rc1wiLFxuXHRcImJ1ZmZlclwiLFxuXHRcImNoaWxkX3Byb2Nlc3NcIixcblx0XCJjbHVzdGVyXCIsXG5cdFwiY29uc29sZVwiLFxuXHRcImNvbnN0YW50c1wiLFxuXHRcImNyeXB0b1wiLFxuXHRcImRncmFtXCIsXG5cdFwiZGlhZ25vc3RpY3NfY2hhbm5lbFwiLFxuXHRcImRuc1wiLFxuXHRcImRucy9wcm9taXNlc1wiLFxuXHRcImRvbWFpblwiLFxuXHRcImV2ZW50c1wiLFxuXHRcImZzXCIsXG5cdFwiZnMvcHJvbWlzZXNcIixcblx0XCJodHRwXCIsXG5cdFwiaHR0cDJcIixcblx0XCJodHRwc1wiLFxuXHRcImluc3BlY3RvclwiLFxuXHRcImluc3BlY3Rvci9wcm9taXNlc1wiLFxuXHRcIm1vZHVsZVwiLFxuXHRcIm5ldFwiLFxuXHRcIm9zXCIsXG5cdFwicGF0aFwiLFxuXHRcInBhdGgvcG9zaXhcIixcblx0XCJwYXRoL3dpbjMyXCIsXG5cdFwicGVyZl9ob29rc1wiLFxuXHRcInByb2Nlc3NcIixcblx0XCJwdW55Y29kZVwiLFxuXHRcInF1ZXJ5c3RyaW5nXCIsXG5cdFwicmVhZGxpbmVcIixcblx0XCJyZWFkbGluZS9wcm9taXNlc1wiLFxuXHRcInJlcGxcIixcblx0XCJzdHJlYW1cIixcblx0XCJzdHJlYW0vY29uc3VtZXJzXCIsXG5cdFwic3RyZWFtL3Byb21pc2VzXCIsXG5cdFwic3RyZWFtL3dlYlwiLFxuXHRcInN0cmluZ19kZWNvZGVyXCIsXG5cdFwic3lzXCIsXG5cdFwidGltZXJzXCIsXG5cdFwidGltZXJzL3Byb21pc2VzXCIsXG5cdFwidGxzXCIsXG5cdFwidHJhY2VfZXZlbnRzXCIsXG5cdFwidHR5XCIsXG5cdFwidXJsXCIsXG5cdFwidXRpbFwiLFxuXHRcInV0aWwvdHlwZXNcIixcblx0XCJ2OFwiLFxuXHRcInZtXCIsXG5cdFwid2FzaVwiLFxuXHRcIndvcmtlcl90aHJlYWRzXCIsXG5cdFwiemxpYlwiLFxuXTtcbiJdLCJuYW1lcyI6WyJCVUlMVF9JTl9NT0RVTEVTIiwiTk9ERV9NT0RVTEVTIiwiU1dDX0NPTkZJRyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7UUFFYUE7ZUFBQUE7O1FBREFDO2VBQUFBOztRQURBQztlQUFBQTs7O0FBQU4sTUFBTUEsYUFBYTtBQUNuQixNQUFNRCxlQUFlO0FBQ3JCLE1BQU1ELG1CQUFtQjtJQUMvQjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7Q0FDQSJ9
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "createWorkspace", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return createWorkspace;
9
+ }
10
+ });
11
+ const _nodepath = /*#__PURE__*/ _interop_require_default(require("node:path"));
12
+ const _workspace = require("@decohere/workspace");
13
+ const _workspaceconfig = require("./workspace.config.js");
14
+ function _interop_require_default(obj) {
15
+ return obj && obj.__esModule ? obj : {
16
+ default: obj
17
+ };
18
+ }
19
+ async function createWorkspace(options = {}) {
20
+ const rootDir = options.rootDir ?? _workspaceconfig.WorkspaceDefaults.rootDir ?? "./";
21
+ const configFile = options.configFile ?? (rootDir === _workspaceconfig.WorkspaceDefaults.rootDir ? undefined : _nodepath.default.join(rootDir, _workspace.WORKSPACE_CONFIG));
22
+ // `projects` is dropped too: forge's defaults set it to undefined, which would override the
23
+ // user's per-project settings (docker, ui) in the merge.
24
+ const { configurations: _, projects: __, ...forgeDefaults } = _workspaceconfig.WorkspaceDefaults;
25
+ const userConfig = await _workspace.UserConfigFactory.getUserConfig(configFile);
26
+ // Only apply forge default configurations when user config doesn't provide any.
27
+ // This ensures user-defined configurations take priority while still providing
28
+ // sensible defaults (debug + release) when no config file is present.
29
+ const configurations = userConfig.configurations?.length ? undefined : _workspaceconfig.DefaultConfigurations;
30
+ return _workspace.WorkspaceFactory.create({
31
+ ...forgeDefaults,
32
+ ...configurations ? {
33
+ configurations
34
+ } : {},
35
+ configFile,
36
+ rootDir
37
+ });
38
+ }
@@ -13,13 +13,13 @@ _export(exports, {
13
13
  return ForgeError;
14
14
  },
15
15
  get WorkspaceConfigurationError () {
16
- return _mesh.WorkspaceConfigurationError;
16
+ return _workspace.WorkspaceConfigurationError;
17
17
  },
18
18
  get formatUnknownError () {
19
19
  return formatUnknownError;
20
20
  }
21
21
  });
22
- const _mesh = require("@decohere/mesh");
22
+ const _workspace = require("@decohere/workspace");
23
23
  class ForgeError extends Error {
24
24
  }
25
25
  function formatUnknownError(reason) {
@@ -35,5 +35,3 @@ function formatUnknownError(reason) {
35
35
  return "Unknown error";
36
36
  }
37
37
  }
38
-
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9lcnJvcnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgV29ya3NwYWNlQ29uZmlndXJhdGlvbkVycm9yIH0gZnJvbSBcIkBkZWNvaGVyZS9tZXNoXCI7XG5leHBvcnQgY2xhc3MgRm9yZ2VFcnJvciBleHRlbmRzIEVycm9yIHt9XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRVbmtub3duRXJyb3IocmVhc29uOiB1bmtub3duKTogc3RyaW5nIHtcblx0aWYgKHJlYXNvbiBpbnN0YW5jZW9mIEVycm9yKSB7XG5cdFx0cmV0dXJuIHJlYXNvbi5tZXNzYWdlO1xuXHR9XG5cblx0aWYgKHR5cGVvZiByZWFzb24gPT09IFwic3RyaW5nXCIpIHtcblx0XHRyZXR1cm4gcmVhc29uO1xuXHR9XG5cblx0dHJ5IHtcblx0XHRyZXR1cm4gSlNPTi5zdHJpbmdpZnkocmVhc29uKTtcblx0fSBjYXRjaCB7XG5cdFx0cmV0dXJuIFwiVW5rbm93biBlcnJvclwiO1xuXHR9XG59XG4iXSwibmFtZXMiOlsiRm9yZ2VFcnJvciIsIldvcmtzcGFjZUNvbmZpZ3VyYXRpb25FcnJvciIsImZvcm1hdFVua25vd25FcnJvciIsIkVycm9yIiwicmVhc29uIiwibWVzc2FnZSIsIkpTT04iLCJzdHJpbmdpZnkiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O1FBQ2FBO2VBQUFBOztRQURKQztlQUFBQSxpQ0FBMkI7O1FBR3BCQztlQUFBQTs7O3NCQUg0QjtBQUNyQyxNQUFNRixtQkFBbUJHO0FBQU87QUFFaEMsU0FBU0QsbUJBQW1CRSxNQUFlO0lBQ2pELElBQUlBLGtCQUFrQkQsT0FBTztRQUM1QixPQUFPQyxPQUFPQyxPQUFPO0lBQ3RCO0lBRUEsSUFBSSxPQUFPRCxXQUFXLFVBQVU7UUFDL0IsT0FBT0E7SUFDUjtJQUVBLElBQUk7UUFDSCxPQUFPRSxLQUFLQyxTQUFTLENBQUNIO0lBQ3ZCLEVBQUUsT0FBTTtRQUNQLE9BQU87SUFDUjtBQUNEIn0=
@@ -10,10 +10,10 @@ Object.defineProperty(exports, "ProjectExtensions", {
10
10
  });
11
11
  const _nodefs = /*#__PURE__*/ _interop_require_default(require("node:fs"));
12
12
  const _nodepath = /*#__PURE__*/ _interop_require_default(require("node:path"));
13
- const _mesh = require("@decohere/mesh");
14
- const _caching = require("@decohere/nexus/caching");
15
- const _extensibility = require("@decohere/nexus/extensibility");
16
- const _io = require("@decohere/nexus/io");
13
+ const _workspace = require("@decohere/workspace");
14
+ const _caching = require("@decohere/core/caching");
15
+ const _extensibility = require("@decohere/core/extensibility");
16
+ const _io = require("@decohere/core/io");
17
17
  const _const = require("../const.js");
18
18
  const _swcconfigtype = require("../types/swc-config.type.js");
19
19
  function _interop_require_default(obj) {
@@ -52,7 +52,7 @@ class ProjectExtensions {
52
52
  }
53
53
  static swcConfigPaths(project) {
54
54
  return [
55
- _nodepath.default.join(project.projectDirectory, _const.SWC_CONFIG),
55
+ _nodepath.default.join(project.projectRoot, _const.SWC_CONFIG),
56
56
  _nodepath.default.join(project.rootDir, _const.SWC_CONFIG)
57
57
  ];
58
58
  }
@@ -65,30 +65,28 @@ class ProjectExtensions {
65
65
  }
66
66
  }
67
67
  _ts_decorate([
68
- (0, _extensibility.extension)(_mesh.Project),
68
+ (0, _extensibility.extension)(_workspace.Project),
69
69
  _ts_metadata("design:type", Function),
70
70
  _ts_metadata("design:paramtypes", [
71
- typeof _mesh.Project === "undefined" ? Object : _mesh.Project
71
+ typeof _workspace.Project === "undefined" ? Object : _workspace.Project
72
72
  ]),
73
73
  _ts_metadata("design:returntype", typeof ForgeConfiguration === "undefined" ? Object : ForgeConfiguration)
74
74
  ], ProjectExtensions, "getForgeConfiguration", null);
75
75
  _ts_decorate([
76
- (0, _extensibility.extension)(_mesh.Project),
76
+ (0, _extensibility.extension)(_workspace.Project),
77
77
  (0, _caching.memoize)(),
78
78
  _ts_metadata("design:type", Function),
79
79
  _ts_metadata("design:paramtypes", [
80
- typeof _mesh.Project === "undefined" ? Object : _mesh.Project
80
+ typeof _workspace.Project === "undefined" ? Object : _workspace.Project
81
81
  ]),
82
82
  _ts_metadata("design:returntype", Promise)
83
83
  ], ProjectExtensions, "getSwcConfig", null);
84
84
  _ts_decorate([
85
- (0, _extensibility.extension)(_mesh.Project),
85
+ (0, _extensibility.extension)(_workspace.Project),
86
86
  (0, _caching.memoize)(),
87
87
  _ts_metadata("design:type", Function),
88
88
  _ts_metadata("design:paramtypes", [
89
- typeof _mesh.Project === "undefined" ? Object : _mesh.Project
89
+ typeof _workspace.Project === "undefined" ? Object : _workspace.Project
90
90
  ]),
91
91
  _ts_metadata("design:returntype", typeof _swcconfigtype.SwcConfig === "undefined" ? Object : _swcconfigtype.SwcConfig)
92
92
  ], ProjectExtensions, "getSwcConfigSync", null);
93
-
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9leHRlbnNpb25zL3Byb2plY3QuZXh0ZW5zaW9ucy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZnMgZnJvbSBcIm5vZGU6ZnNcIjtcbmltcG9ydCBwYXRoIGZyb20gXCJub2RlOnBhdGhcIjtcbmltcG9ydCB7IFByb2plY3QgfSBmcm9tIFwiQGRlY29oZXJlL21lc2hcIjtcbmltcG9ydCB7IG1lbW9pemUgfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL2NhY2hpbmdcIjtcbmltcG9ydCB7IGV4dGVuc2lvbiB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvZXh0ZW5zaWJpbGl0eVwiO1xuaW1wb3J0IHsgaW8gfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL2lvXCI7XG5pbXBvcnQgeyBTV0NfQ09ORklHIH0gZnJvbSBcIi4uL2NvbnN0LmpzXCI7XG5pbXBvcnQgdHlwZSB7IEZvcmdlQ29uZmlndXJhdGlvbiB9IGZyb20gXCIuLi90eXBlcy9jb25maWd1cmF0aW9uLnR5cGUuanNcIjtcbmltcG9ydCB7IFN3Y0NvbmZpZyB9IGZyb20gXCIuLi90eXBlcy9zd2MtY29uZmlnLnR5cGUuanNcIjtcblxuZGVjbGFyZSBtb2R1bGUgXCJAZGVjb2hlcmUvbWVzaFwiIHtcblx0aW50ZXJmYWNlIFByb2plY3Qge1xuXHRcdGdldEZvcmdlQ29uZmlndXJhdGlvbigpOiBGb3JnZUNvbmZpZ3VyYXRpb247XG5cdFx0Z2V0U3djQ29uZmlnKCk6IFByb21pc2U8U3djQ29uZmlnPjtcblx0XHRnZXRTd2NDb25maWdTeW5jKCk6IFN3Y0NvbmZpZztcblx0fVxufVxuXG5leHBvcnQgY2xhc3MgUHJvamVjdEV4dGVuc2lvbnMge1xuXHRAZXh0ZW5zaW9uKFByb2plY3QpXG5cdHB1YmxpYyBzdGF0aWMgZ2V0Rm9yZ2VDb25maWd1cmF0aW9uKHByb2plY3Q6IFByb2plY3QpOiBGb3JnZUNvbmZpZ3VyYXRpb24ge1xuXHRcdHJldHVybiBwcm9qZWN0LmNvbmZpZ3VyYXRpb24gYXMgRm9yZ2VDb25maWd1cmF0aW9uO1xuXHR9XG5cblx0QGV4dGVuc2lvbihQcm9qZWN0KVxuXHRAbWVtb2l6ZSgpXG5cdHB1YmxpYyBzdGF0aWMgYXN5bmMgZ2V0U3djQ29uZmlnKHByb2plY3Q6IFByb2plY3QpOiBQcm9taXNlPFN3Y0NvbmZpZz4ge1xuXHRcdGZvciAoY29uc3QgY29uZmlnUGF0aCBvZiBQcm9qZWN0RXh0ZW5zaW9ucy5zd2NDb25maWdQYXRocyhwcm9qZWN0KSkge1xuXHRcdFx0aWYgKGF3YWl0IGlvLmZpbGVFeGlzdHMoY29uZmlnUGF0aCkpIHtcblx0XHRcdFx0cmV0dXJuIG5ldyBTd2NDb25maWcoYXdhaXQgaW8ucmVhZEpzb25GaWxlKGNvbmZpZ1BhdGgpKTtcblx0XHRcdH1cblx0XHR9XG5cdFx0cmV0dXJuIG5ldyBTd2NDb25maWcoKTtcblx0fVxuXG5cdEBleHRlbnNpb24oUHJvamVjdClcblx0QG1lbW9pemUoKVxuXHRwdWJsaWMgc3RhdGljIGdldFN3Y0NvbmZpZ1N5bmMocHJvamVjdDogUHJvamVjdCk6IFN3Y0NvbmZpZyB7XG5cdFx0Zm9yIChjb25zdCBjb25maWdQYXRoIG9mIFByb2plY3RFeHRlbnNpb25zLnN3Y0NvbmZpZ1BhdGhzKHByb2plY3QpKSB7XG5cdFx0XHRpZiAoUHJvamVjdEV4dGVuc2lvbnMuZmlsZUV4aXN0c1N5bmMoY29uZmlnUGF0aCkpIHtcblx0XHRcdFx0cmV0dXJuIG5ldyBTd2NDb25maWcoSlNPTi5wYXJzZShmcy5yZWFkRmlsZVN5bmMoY29uZmlnUGF0aCwgXCJ1dGY4XCIpKSk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdHJldHVybiBuZXcgU3djQ29uZmlnKCk7XG5cdH1cblxuXHRwcml2YXRlIHN0YXRpYyBzd2NDb25maWdQYXRocyhwcm9qZWN0OiBQcm9qZWN0KTogc3RyaW5nW10ge1xuXHRcdHJldHVybiBbXG5cdFx0XHRwYXRoLmpvaW4ocHJvamVjdC5wcm9qZWN0RGlyZWN0b3J5LCBTV0NfQ09ORklHKSxcblx0XHRcdHBhdGguam9pbihwcm9qZWN0LnJvb3REaXIsIFNXQ19DT05GSUcpLFxuXHRcdF07XG5cdH1cblxuXHRwcml2YXRlIHN0YXRpYyBmaWxlRXhpc3RzU3luYyhmaWxlUGF0aDogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0dHJ5IHtcblx0XHRcdHJldHVybiBmcy5zdGF0U3luYyhmaWxlUGF0aCkuaXNGaWxlKCk7XG5cdFx0fSBjYXRjaCB7XG5cdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0fVxuXHR9XG59XG4iXSwibmFtZXMiOlsiUHJvamVjdEV4dGVuc2lvbnMiLCJnZXRGb3JnZUNvbmZpZ3VyYXRpb24iLCJwcm9qZWN0IiwiY29uZmlndXJhdGlvbiIsImdldFN3Y0NvbmZpZyIsImNvbmZpZ1BhdGgiLCJzd2NDb25maWdQYXRocyIsImlvIiwiZmlsZUV4aXN0cyIsIlN3Y0NvbmZpZyIsInJlYWRKc29uRmlsZSIsImdldFN3Y0NvbmZpZ1N5bmMiLCJmaWxlRXhpc3RzU3luYyIsIkpTT04iLCJwYXJzZSIsImZzIiwicmVhZEZpbGVTeW5jIiwicGF0aCIsImpvaW4iLCJwcm9qZWN0RGlyZWN0b3J5IiwiU1dDX0NPTkZJRyIsInJvb3REaXIiLCJmaWxlUGF0aCIsInN0YXRTeW5jIiwiaXNGaWxlIl0sIm1hcHBpbmdzIjoiOzs7OytCQWtCYUE7OztlQUFBQTs7OytEQWxCRTtpRUFDRTtzQkFDTzt5QkFDQTsrQkFDRTtvQkFDUDt1QkFDUTsrQkFFRDs7Ozs7Ozs7Ozs7Ozs7O0FBVW5CLE1BQU1BO0lBQ1osT0FDY0Msc0JBQXNCQyxPQUFnQixFQUFzQjtRQUN6RSxPQUFPQSxRQUFRQyxhQUFhO0lBQzdCO0lBRUEsYUFFb0JDLGFBQWFGLE9BQWdCLEVBQXNCO1FBQ3RFLEtBQUssTUFBTUcsY0FBY0wsa0JBQWtCTSxjQUFjLENBQUNKLFNBQVU7WUFDbkUsSUFBSSxNQUFNSyxNQUFFLENBQUNDLFVBQVUsQ0FBQ0gsYUFBYTtnQkFDcEMsT0FBTyxJQUFJSSx3QkFBUyxDQUFDLE1BQU1GLE1BQUUsQ0FBQ0csWUFBWSxDQUFDTDtZQUM1QztRQUNEO1FBQ0EsT0FBTyxJQUFJSSx3QkFBUztJQUNyQjtJQUVBLE9BRWNFLGlCQUFpQlQsT0FBZ0IsRUFBYTtRQUMzRCxLQUFLLE1BQU1HLGNBQWNMLGtCQUFrQk0sY0FBYyxDQUFDSixTQUFVO1lBQ25FLElBQUlGLGtCQUFrQlksY0FBYyxDQUFDUCxhQUFhO2dCQUNqRCxPQUFPLElBQUlJLHdCQUFTLENBQUNJLEtBQUtDLEtBQUssQ0FBQ0MsZUFBRSxDQUFDQyxZQUFZLENBQUNYLFlBQVk7WUFDN0Q7UUFDRDtRQUNBLE9BQU8sSUFBSUksd0JBQVM7SUFDckI7SUFFQSxPQUFlSCxlQUFlSixPQUFnQixFQUFZO1FBQ3pELE9BQU87WUFDTmUsaUJBQUksQ0FBQ0MsSUFBSSxDQUFDaEIsUUFBUWlCLGdCQUFnQixFQUFFQyxpQkFBVTtZQUM5Q0gsaUJBQUksQ0FBQ0MsSUFBSSxDQUFDaEIsUUFBUW1CLE9BQU8sRUFBRUQsaUJBQVU7U0FDckM7SUFDRjtJQUVBLE9BQWVSLGVBQWVVLFFBQWdCLEVBQVc7UUFDeEQsSUFBSTtZQUNILE9BQU9QLGVBQUUsQ0FBQ1EsUUFBUSxDQUFDRCxVQUFVRSxNQUFNO1FBQ3BDLEVBQUUsT0FBTTtZQUNQLE9BQU87UUFDUjtJQUNEO0FBQ0QifQ==
@@ -9,8 +9,9 @@ Object.defineProperty(exports, "SwcConfigFactory", {
9
9
  }
10
10
  });
11
11
  const _nodepath = /*#__PURE__*/ _interop_require_default(require("node:path"));
12
- const _diagnostics = require("@decohere/nexus/diagnostics");
13
- const _objects = require("@decohere/nexus/objects");
12
+ const _workspace = require("@decohere/workspace");
13
+ const _diagnostics = require("@decohere/devkit/diagnostics");
14
+ const _objects = require("@decohere/core/objects");
14
15
  const _errors = require("../errors.js");
15
16
  function _interop_require_default(obj) {
16
17
  return obj && obj.__esModule ? obj : {
@@ -47,10 +48,15 @@ class SwcConfigFactory {
47
48
  * Creates a base config for a project+target combination, without a filename.
48
49
  * Call once per (project, target) and then use createFileConfig() per file.
49
50
  */ createBaseConfig(buildTarget, configOptions) {
50
- const { userConfig, tsConfig, aliasPaths } = configOptions;
51
+ const { userConfig, tsConfig, aliasPaths, sourceMaps, workspace, projects } = configOptions;
51
52
  const { compilerOptions } = tsConfig ?? {};
52
- const paths = aliasPaths ? compilerOptions?.paths : undefined;
53
- const baseUrl = SwcConfigFactory.getBaseUrl(tsConfig) ?? (paths != null ? _nodepath.default.resolve(".") : undefined);
53
+ const aliases = aliasPaths ? workspace != null ? workspace.getPackageAliases(projects?.[0]?.configuration.name ?? "debug") : projects != null && projects.length > 0 ? _workspace.packageAliases.build(projects, {
54
+ baseUrl: SwcConfigFactory.getBaseUrl(tsConfig) ?? _nodepath.default.resolve(projects[0].rootDir),
55
+ tsconfigPaths: compilerOptions?.paths
56
+ }) : undefined : undefined;
57
+ const tsconfigOnlyPaths = aliasPaths && aliases == null ? compilerOptions?.paths : undefined;
58
+ const paths = SwcConfigFactory.nonemptyPaths(aliases?.paths ?? tsconfigOnlyPaths);
59
+ const baseUrl = aliases?.baseUrl ?? SwcConfigFactory.getBaseUrl(tsConfig) ?? (workspace != null ? _nodepath.default.resolve(workspace.rootDir) : undefined) ?? (paths != null ? _nodepath.default.resolve(".") : undefined);
54
60
  const options = {
55
61
  jsc: {
56
62
  baseUrl,
@@ -58,20 +64,36 @@ class SwcConfigFactory {
58
64
  },
59
65
  module: {
60
66
  type: buildTarget
61
- }
67
+ },
68
+ ...sourceMaps === false ? {
69
+ sourceMaps: false
70
+ } : {}
62
71
  };
63
72
  return _objects.merge.withOptions({
64
73
  mergeArrays: false
65
74
  }, defaultOptions, options, userConfig ?? {});
66
75
  }
67
- /** Stamps a per-file filename onto a pre-built base config. */ createFileConfig(file, baseConfig) {
76
+ /** Stamps a per-file filename onto a pre-built base config; `.tsx` also turns on JSX. */ createFileConfig(file, baseConfig) {
77
+ const tsx = file.fullPath.endsWith(".tsx");
78
+ const jsc = tsx && baseConfig.jsc?.parser?.syntax === "typescript" ? {
79
+ ...baseConfig.jsc,
80
+ parser: {
81
+ ...baseConfig.jsc.parser,
82
+ tsx: true
83
+ }
84
+ } : baseConfig.jsc;
68
85
  const config = {
69
86
  ...baseConfig,
87
+ jsc,
70
88
  filename: file.fullPath
71
89
  };
72
90
  this.validate(config);
73
91
  return config;
74
92
  }
93
+ static nonemptyPaths(paths) {
94
+ if (paths == null || Object.keys(paths).length === 0) return undefined;
95
+ return paths;
96
+ }
75
97
  /**
76
98
  * Validates SWC options against known causes of Rust/NAPI process crashes.
77
99
  * Throws a ForgeError with a descriptive message instead of letting the
@@ -94,5 +116,3 @@ class SwcConfigFactory {
94
116
  SwcConfigFactory = _ts_decorate([
95
117
  _diagnostics.Trace
96
118
  ], SwcConfigFactory);
97
-
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9mYWN0b3JpZXMvc3djLWNvbmZpZy5mYWN0b3J5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gXCJub2RlOnBhdGhcIjtcbmltcG9ydCB0eXBlIHsgVHNjb25maWcgfSBmcm9tIFwiQGRlY29oZXJlL21lc2hcIjtcbmltcG9ydCB7IFRyYWNlIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9kaWFnbm9zdGljc1wiO1xuaW1wb3J0IHR5cGUgeyBGaWxlRXggfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL2lvXCI7XG5pbXBvcnQgeyBtZXJnZSB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvb2JqZWN0c1wiO1xuaW1wb3J0IHR5cGUgeyBPcHRpb25zIH0gZnJvbSBcIkBzd2MvY29yZVwiO1xuaW1wb3J0IHsgRm9yZ2VFcnJvciB9IGZyb20gXCIuLi9lcnJvcnMuanNcIjtcbmltcG9ydCB0eXBlIHsgVHJhbnNwaWxlVGFyZ2V0IH0gZnJvbSBcIi4uL3R5cGVzL2J1aWxkLXRhcmdldC50eXBlLmpzXCI7XG5pbXBvcnQgdHlwZSB7IFN3Y0NvbmZpZ09wdGlvbnMgfSBmcm9tIFwiLi4vdHlwZXMvc3djLWNvbmZpZy50eXBlLmpzXCI7XG5cbmNvbnN0IGRlZmF1bHRPcHRpb25zID0ge1xuXHRqc2M6IHtcblx0XHRwYXJzZXI6IHtcblx0XHRcdHN5bnRheDogXCJ0eXBlc2NyaXB0XCIsXG5cdFx0XHRkZWNvcmF0b3JzOiB0cnVlLFxuXHRcdH0sXG5cdFx0dGFyZ2V0OiBcImVzbmV4dFwiLFxuXHRcdHRyYW5zZm9ybToge1xuXHRcdFx0ZGVjb3JhdG9yTWV0YWRhdGE6IHRydWUsXG5cdFx0fSxcblx0XHRleHBlcmltZW50YWw6IHsga2VlcEltcG9ydEF0dHJpYnV0ZXM6IHRydWUgfSxcblx0fSxcblx0bW9kdWxlOiB7XG5cdFx0cmVzb2x2ZUZ1bGx5OiB0cnVlLFxuXHR9LFxuXHRzb3VyY2VNYXBzOiBcImlubGluZVwiLFxufTtcblxuQFRyYWNlXG5leHBvcnQgY2xhc3MgU3djQ29uZmlnRmFjdG9yeSB7XG5cdC8qKlxuXHQgKiBDcmVhdGVzIGEgYmFzZSBjb25maWcgZm9yIGEgcHJvamVjdCt0YXJnZXQgY29tYmluYXRpb24sIHdpdGhvdXQgYSBmaWxlbmFtZS5cblx0ICogQ2FsbCBvbmNlIHBlciAocHJvamVjdCwgdGFyZ2V0KSBhbmQgdGhlbiB1c2UgY3JlYXRlRmlsZUNvbmZpZygpIHBlciBmaWxlLlxuXHQgKi9cblx0cHVibGljIGNyZWF0ZUJhc2VDb25maWcoXG5cdFx0YnVpbGRUYXJnZXQ6IFRyYW5zcGlsZVRhcmdldCxcblx0XHRjb25maWdPcHRpb25zOiBTd2NDb25maWdPcHRpb25zLFxuXHQpOiBPcHRpb25zIHtcblx0XHRjb25zdCB7IHVzZXJDb25maWcsIHRzQ29uZmlnLCBhbGlhc1BhdGhzIH0gPSBjb25maWdPcHRpb25zO1xuXHRcdGNvbnN0IHsgY29tcGlsZXJPcHRpb25zIH0gPSB0c0NvbmZpZyA/PyB7fTtcblx0XHRjb25zdCBwYXRocyA9IGFsaWFzUGF0aHMgPyBjb21waWxlck9wdGlvbnM/LnBhdGhzIDogdW5kZWZpbmVkO1xuXHRcdGNvbnN0IGJhc2VVcmwgPVxuXHRcdFx0U3djQ29uZmlnRmFjdG9yeS5nZXRCYXNlVXJsKHRzQ29uZmlnKSA/PyAocGF0aHMgIT0gbnVsbCA/IHBhdGgucmVzb2x2ZShcIi5cIikgOiB1bmRlZmluZWQpO1xuXG5cdFx0Y29uc3Qgb3B0aW9uczogT3B0aW9ucyA9IHtcblx0XHRcdGpzYzoge1xuXHRcdFx0XHRiYXNlVXJsLFxuXHRcdFx0XHRwYXRocyxcblx0XHRcdH0sXG5cdFx0XHRtb2R1bGU6IHtcblx0XHRcdFx0dHlwZTogYnVpbGRUYXJnZXQsXG5cdFx0XHR9LFxuXHRcdH07XG5cblx0XHRyZXR1cm4gbWVyZ2Uud2l0aE9wdGlvbnM8T3B0aW9ucz4oXG5cdFx0XHR7IG1lcmdlQXJyYXlzOiBmYWxzZSB9LFxuXHRcdFx0ZGVmYXVsdE9wdGlvbnMsXG5cdFx0XHRvcHRpb25zLFxuXHRcdFx0dXNlckNvbmZpZyA/PyB7fSxcblx0XHQpO1xuXHR9XG5cblx0LyoqIFN0YW1wcyBhIHBlci1maWxlIGZpbGVuYW1lIG9udG8gYSBwcmUtYnVpbHQgYmFzZSBjb25maWcuICovXG5cdHB1YmxpYyBjcmVhdGVGaWxlQ29uZmlnKGZpbGU6IEZpbGVFeCwgYmFzZUNvbmZpZzogT3B0aW9ucyk6IE9wdGlvbnMge1xuXHRcdGNvbnN0IGNvbmZpZyA9IHsgLi4uYmFzZUNvbmZpZywgZmlsZW5hbWU6IGZpbGUuZnVsbFBhdGggfTtcblx0XHR0aGlzLnZhbGlkYXRlKGNvbmZpZyk7XG5cdFx0cmV0dXJuIGNvbmZpZztcblx0fVxuXG5cdC8qKlxuXHQgKiBWYWxpZGF0ZXMgU1dDIG9wdGlvbnMgYWdhaW5zdCBrbm93biBjYXVzZXMgb2YgUnVzdC9OQVBJIHByb2Nlc3MgY3Jhc2hlcy5cblx0ICogVGhyb3dzIGEgRm9yZ2VFcnJvciB3aXRoIGEgZGVzY3JpcHRpdmUgbWVzc2FnZSBpbnN0ZWFkIG9mIGxldHRpbmcgdGhlXG5cdCAqIE5BUEkgbGF5ZXIgYWJvcnQgdGhlIHByb2Nlc3MuXG5cdCAqXG5cdCAqIEtub3duIGNyYXNoIGNhdXNlczpcblx0ICogLSBganNjLmJhc2VVcmxgIHNldCB0byBhIHJlbGF0aXZlIHBhdGggKFNXQyByZXF1aXJlcyBhbiBhYnNvbHV0ZSBwYXRoKVxuXHQgKi9cblx0cHVibGljIHZhbGlkYXRlKG9wdGlvbnM6IE9wdGlvbnMpOiB2b2lkIHtcblx0XHRjb25zdCBiYXNlVXJsID0gb3B0aW9ucy5qc2M/LmJhc2VVcmw7XG5cdFx0aWYgKGJhc2VVcmwgIT0gbnVsbCAmJiAhcGF0aC5pc0Fic29sdXRlKGJhc2VVcmwpKSB7XG5cdFx0XHR0aHJvdyBuZXcgRm9yZ2VFcnJvcihcblx0XHRcdFx0YFNXQyBjb25maWc6IGpzYy5iYXNlVXJsIG11c3QgYmUgYW4gYWJzb2x1dGUgcGF0aCB0byBhdm9pZCBhIHByb2Nlc3MgY3Jhc2gsIGdvdDogXCIke2Jhc2VVcmx9XCIuIFVzZSBwYXRoLnJlc29sdmUoKSB0byBjb252ZXJ0IGl0LmAsXG5cdFx0XHQpO1xuXHRcdH1cblx0fVxuXG5cdC8qKiBSZXNvbHZlcyB0c2NvbmZpZyBiYXNlVXJsIHRvIGFuIGFic29sdXRlIHBhdGguIFJldHVybnMgdW5kZWZpbmVkIGlmIG5vdCBzZXQuICovXG5cdHByaXZhdGUgc3RhdGljIGdldEJhc2VVcmwodHNDb25maWc6IFRzY29uZmlnIHwgdW5kZWZpbmVkKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcblx0XHRjb25zdCBiYXNlVXJsID0gdHNDb25maWc/LmNvbXBpbGVyT3B0aW9ucz8uYmFzZVVybDtcblx0XHRpZiAoYmFzZVVybCA9PSBudWxsKSByZXR1cm4gdW5kZWZpbmVkO1xuXHRcdHJldHVybiBwYXRoLnJlc29sdmUoYmFzZVVybCk7XG5cdH1cbn1cbiJdLCJuYW1lcyI6WyJTd2NDb25maWdGYWN0b3J5IiwiZGVmYXVsdE9wdGlvbnMiLCJqc2MiLCJwYXJzZXIiLCJzeW50YXgiLCJkZWNvcmF0b3JzIiwidGFyZ2V0IiwidHJhbnNmb3JtIiwiZGVjb3JhdG9yTWV0YWRhdGEiLCJleHBlcmltZW50YWwiLCJrZWVwSW1wb3J0QXR0cmlidXRlcyIsIm1vZHVsZSIsInJlc29sdmVGdWxseSIsInNvdXJjZU1hcHMiLCJjcmVhdGVCYXNlQ29uZmlnIiwiYnVpbGRUYXJnZXQiLCJjb25maWdPcHRpb25zIiwidXNlckNvbmZpZyIsInRzQ29uZmlnIiwiYWxpYXNQYXRocyIsImNvbXBpbGVyT3B0aW9ucyIsInBhdGhzIiwidW5kZWZpbmVkIiwiYmFzZVVybCIsImdldEJhc2VVcmwiLCJwYXRoIiwicmVzb2x2ZSIsIm9wdGlvbnMiLCJ0eXBlIiwibWVyZ2UiLCJ3aXRoT3B0aW9ucyIsIm1lcmdlQXJyYXlzIiwiY3JlYXRlRmlsZUNvbmZpZyIsImZpbGUiLCJiYXNlQ29uZmlnIiwiY29uZmlnIiwiZmlsZW5hbWUiLCJmdWxsUGF0aCIsInZhbGlkYXRlIiwiaXNBYnNvbHV0ZSIsIkZvcmdlRXJyb3IiXSwibWFwcGluZ3MiOiI7Ozs7K0JBNkJhQTs7O2VBQUFBOzs7aUVBN0JJOzZCQUVLO3lCQUVBO3dCQUVLOzs7Ozs7Ozs7Ozs7QUFJM0IsTUFBTUMsaUJBQWlCO0lBQ3RCQyxLQUFLO1FBQ0pDLFFBQVE7WUFDUEMsUUFBUTtZQUNSQyxZQUFZO1FBQ2I7UUFDQUMsUUFBUTtRQUNSQyxXQUFXO1lBQ1ZDLG1CQUFtQjtRQUNwQjtRQUNBQyxjQUFjO1lBQUVDLHNCQUFzQjtRQUFLO0lBQzVDO0lBQ0FDLFFBQVE7UUFDUEMsY0FBYztJQUNmO0lBQ0FDLFlBQVk7QUFDYjtBQUdPLE1BQU1iO0lBQ1o7OztFQUdDLEdBQ0QsQUFBT2MsaUJBQ05DLFdBQTRCLEVBQzVCQyxhQUErQixFQUNyQjtRQUNWLE1BQU0sRUFBRUMsVUFBVSxFQUFFQyxRQUFRLEVBQUVDLFVBQVUsRUFBRSxHQUFHSDtRQUM3QyxNQUFNLEVBQUVJLGVBQWUsRUFBRSxHQUFHRixZQUFZLENBQUM7UUFDekMsTUFBTUcsUUFBUUYsYUFBYUMsaUJBQWlCQyxRQUFRQztRQUNwRCxNQUFNQyxVQUNMdkIsaUJBQWlCd0IsVUFBVSxDQUFDTixhQUFjRyxDQUFBQSxTQUFTLE9BQU9JLGlCQUFJLENBQUNDLE9BQU8sQ0FBQyxPQUFPSixTQUFRO1FBRXZGLE1BQU1LLFVBQW1CO1lBQ3hCekIsS0FBSztnQkFDSnFCO2dCQUNBRjtZQUNEO1lBQ0FWLFFBQVE7Z0JBQ1BpQixNQUFNYjtZQUNQO1FBQ0Q7UUFFQSxPQUFPYyxjQUFLLENBQUNDLFdBQVcsQ0FDdkI7WUFBRUMsYUFBYTtRQUFNLEdBQ3JCOUIsZ0JBQ0EwQixTQUNBVixjQUFjLENBQUM7SUFFakI7SUFFQSw2REFBNkQsR0FDN0QsQUFBT2UsaUJBQWlCQyxJQUFZLEVBQUVDLFVBQW1CLEVBQVc7UUFDbkUsTUFBTUMsU0FBUztZQUFFLEdBQUdELFVBQVU7WUFBRUUsVUFBVUgsS0FBS0ksUUFBUTtRQUFDO1FBQ3hELElBQUksQ0FBQ0MsUUFBUSxDQUFDSDtRQUNkLE9BQU9BO0lBQ1I7SUFFQTs7Ozs7OztFQU9DLEdBQ0QsQUFBT0csU0FBU1gsT0FBZ0IsRUFBUTtRQUN2QyxNQUFNSixVQUFVSSxRQUFRekIsR0FBRyxFQUFFcUI7UUFDN0IsSUFBSUEsV0FBVyxRQUFRLENBQUNFLGlCQUFJLENBQUNjLFVBQVUsQ0FBQ2hCLFVBQVU7WUFDakQsTUFBTSxJQUFJaUIsa0JBQVUsQ0FDbkIsQ0FBQyxpRkFBaUYsRUFBRWpCLFFBQVEsb0NBQW9DLENBQUM7UUFFbkk7SUFDRDtJQUVBLGlGQUFpRixHQUNqRixPQUFlQyxXQUFXTixRQUE4QixFQUFzQjtRQUM3RSxNQUFNSyxVQUFVTCxVQUFVRSxpQkFBaUJHO1FBQzNDLElBQUlBLFdBQVcsTUFBTSxPQUFPRDtRQUM1QixPQUFPRyxpQkFBSSxDQUFDQyxPQUFPLENBQUNIO0lBQ3JCO0FBQ0QifQ==
@@ -8,16 +8,17 @@ Object.defineProperty(exports, "ForgeModule", {
8
8
  return ForgeModule;
9
9
  }
10
10
  });
11
- const _mesh = require("@decohere/mesh");
12
- const _cli = require("@decohere/nexus/cli");
11
+ const _cli = require("@decohere/devkit/cli");
13
12
  const _index = /*#__PURE__*/ _interop_require_wildcard(require("./actions/index.js"));
14
13
  const _index1 = /*#__PURE__*/ _interop_require_wildcard(require("./commands/index.js"));
14
+ const _createworkspace = require("./create-workspace.js");
15
+ const _dependencypinnerservice = require("./packaging/dependency-pinner.service.js");
16
+ const _importgraphservice = require("./packaging/import-graph.service.js");
15
17
  const _dependencyresolverservice = require("./services/dependency-resolver.service.js");
16
18
  const _filewriterservice = require("./services/file-writer.service.js");
17
19
  const _swctranspiler = require("./services/swc-transpiler.js");
18
20
  const _typeemitter = require("./services/type-emitter.js");
19
21
  const _transformertype = require("./types/transformer.type.js");
20
- const _workspaceconfig = require("./workspace.config.js");
21
22
  function _getRequireWildcardCache(nodeInterop) {
22
23
  if (typeof WeakMap !== "function") return null;
23
24
  var cacheBabelInterop = new WeakMap();
@@ -65,6 +66,8 @@ class ForgeModule extends _cli.ModuleManifest {
65
66
  actions = {
66
67
  clean: _index.Clean,
67
68
  copy: _index.Copy,
69
+ docker: _index.Docker,
70
+ package: _index.PackageDeployable,
68
71
  build: _index.Build,
69
72
  watch: _index.Watch,
70
73
  publish: _index.Publish,
@@ -73,37 +76,35 @@ class ForgeModule extends _cli.ModuleManifest {
73
76
  reportDependencies: _index.ReportDependencies,
74
77
  version: _index.Version,
75
78
  tag: _index.Tag,
76
- commitFiles: _index.CommitFiles
79
+ paths: _index.Paths,
80
+ typecheck: _index.TypeCheck,
81
+ commitFiles: _index.CommitFiles,
82
+ link: _index.Link,
83
+ unlink: _index.Unlink
77
84
  };
78
85
  commands = {
79
86
  build: _index1.BuildCommand,
80
87
  publish: _index1.PublishCommand,
81
88
  dependencies: _index1.DependencyCommand,
89
+ docker: _index1.DockerCommand,
90
+ package: _index1.PackageCommand,
82
91
  version: _index1.VersionCommand,
83
- tag: _index1.TagCommand
92
+ tag: _index1.TagCommand,
93
+ paths: _index1.PathsCommand,
94
+ typecheck: _index1.TypeCheckCommand,
95
+ link: _index1.LinkCommand,
96
+ unlink: _index1.UnlinkCommand
84
97
  };
85
98
  registerServices(builder) {
99
+ builder.registerSingleton(_typeemitter.TypeEmitter);
86
100
  builder.registerSingleton(_transformertype.TransformerKey, _swctranspiler.SwcTranspiler);
87
101
  builder.registerSingleton(_transformertype.TransformerKey, _typeemitter.TypeEmitter);
88
102
  builder.registerSingleton(_dependencyresolverservice.DependencyResolver);
103
+ builder.registerSingleton(_importgraphservice.ImportGraph);
104
+ builder.registerSingleton(_dependencypinnerservice.DependencyPinner);
89
105
  builder.registerSingleton(_filewriterservice.FileWriterService);
90
106
  }
91
- async createWorkspace(options) {
92
- const { configurations: _, ...forgeDefaults } = _workspaceconfig.WorkspaceDefaults;
93
- const userConfig = await _mesh.UserConfigFactory.getUserConfig(options.configFile);
94
- // Only apply forge default configurations when user config doesn't provide any.
95
- // This ensures user-defined configurations take priority while still providing
96
- // sensible defaults (debug + release) when no config file is present.
97
- const configurations = userConfig.configurations?.length ? undefined : _workspaceconfig.DefaultConfigurations;
98
- return _mesh.WorkspaceFactory.create({
99
- ...forgeDefaults,
100
- ...configurations ? {
101
- configurations
102
- } : {},
103
- configFile: options.configFile,
104
- rootDir: options.rootDir ?? _workspaceconfig.WorkspaceDefaults.rootDir
105
- });
107
+ createWorkspace(options) {
108
+ return (0, _createworkspace.createWorkspace)(options);
106
109
  }
107
110
  }
108
-
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9mb3JnZS5tb2R1bGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXNlckNvbmZpZ0ZhY3RvcnksIFdvcmtzcGFjZUZhY3RvcnkgfSBmcm9tIFwiQGRlY29oZXJlL21lc2hcIjtcbmltcG9ydCB0eXBlIHsgV29ya3NwYWNlRmFjdG9yeU9wdGlvbnMgfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL2NsaVwiO1xuaW1wb3J0IHsgTW9kdWxlTWFuaWZlc3QgfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL2NsaVwiO1xuaW1wb3J0IHR5cGUgeyBDb250YWluZXJCdWlsZGVyIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9jb21wb3NpdGlvblwiO1xuaW1wb3J0ICogYXMgQWN0aW9ucyBmcm9tIFwiLi9hY3Rpb25zL2luZGV4LmpzXCI7XG5pbXBvcnQgKiBhcyBDb21tYW5kcyBmcm9tIFwiLi9jb21tYW5kcy9pbmRleC5qc1wiO1xuaW1wb3J0IHsgRGVwZW5kZW5jeVJlc29sdmVyIH0gZnJvbSBcIi4vc2VydmljZXMvZGVwZW5kZW5jeS1yZXNvbHZlci5zZXJ2aWNlLmpzXCI7XG5pbXBvcnQgeyBGaWxlV3JpdGVyU2VydmljZSB9IGZyb20gXCIuL3NlcnZpY2VzL2ZpbGUtd3JpdGVyLnNlcnZpY2UuanNcIjtcbmltcG9ydCB7IFN3Y1RyYW5zcGlsZXIgfSBmcm9tIFwiLi9zZXJ2aWNlcy9zd2MtdHJhbnNwaWxlci5qc1wiO1xuaW1wb3J0IHsgVHlwZUVtaXR0ZXIgfSBmcm9tIFwiLi9zZXJ2aWNlcy90eXBlLWVtaXR0ZXIuanNcIjtcbmltcG9ydCB7IFRyYW5zZm9ybWVyS2V5IH0gZnJvbSBcIi4vdHlwZXMvdHJhbnNmb3JtZXIudHlwZS5qc1wiO1xuaW1wb3J0IHsgRGVmYXVsdENvbmZpZ3VyYXRpb25zLCBXb3Jrc3BhY2VEZWZhdWx0cyB9IGZyb20gXCIuL3dvcmtzcGFjZS5jb25maWcuanNcIjtcblxuZXhwb3J0IGNsYXNzIEZvcmdlTW9kdWxlIGV4dGVuZHMgTW9kdWxlTWFuaWZlc3Qge1xuXHRwdWJsaWMgcmVhZG9ubHkgaWQgPSBcImZvcmdlXCI7XG5cdHB1YmxpYyByZWFkb25seSBjb21tYW5kID0gQ29tbWFuZHMuRm9yZ2VDb21tYW5kO1xuXHRwdWJsaWMgcmVhZG9ubHkgYWN0aW9ucyA9IHtcblx0XHRjbGVhbjogQWN0aW9ucy5DbGVhbixcblx0XHRjb3B5OiBBY3Rpb25zLkNvcHksXG5cdFx0YnVpbGQ6IEFjdGlvbnMuQnVpbGQsXG5cdFx0d2F0Y2g6IEFjdGlvbnMuV2F0Y2gsXG5cdFx0cHVibGlzaDogQWN0aW9ucy5QdWJsaXNoLFxuXHRcdHN5bmNEZXBlbmRlbmNpZXM6IEFjdGlvbnMuU3luY0RlcGVuZGVuY2llcyxcblx0XHRzeW5jTG9ja0ZpbGU6IEFjdGlvbnMuU3luY0xvY2tGaWxlLFxuXHRcdHJlcG9ydERlcGVuZGVuY2llczogQWN0aW9ucy5SZXBvcnREZXBlbmRlbmNpZXMsXG5cdFx0dmVyc2lvbjogQWN0aW9ucy5WZXJzaW9uLFxuXHRcdHRhZzogQWN0aW9ucy5UYWcsXG5cdFx0Y29tbWl0RmlsZXM6IEFjdGlvbnMuQ29tbWl0RmlsZXMsXG5cdH07XG5cdHB1YmxpYyByZWFkb25seSBjb21tYW5kcyA9IHtcblx0XHRidWlsZDogQ29tbWFuZHMuQnVpbGRDb21tYW5kLFxuXHRcdHB1Ymxpc2g6IENvbW1hbmRzLlB1Ymxpc2hDb21tYW5kLFxuXHRcdGRlcGVuZGVuY2llczogQ29tbWFuZHMuRGVwZW5kZW5jeUNvbW1hbmQsXG5cdFx0dmVyc2lvbjogQ29tbWFuZHMuVmVyc2lvbkNvbW1hbmQsXG5cdFx0dGFnOiBDb21tYW5kcy5UYWdDb21tYW5kLFxuXHR9O1xuXG5cdHB1YmxpYyByZWdpc3RlclNlcnZpY2VzKGJ1aWxkZXI6IENvbnRhaW5lckJ1aWxkZXIpIHtcblx0XHRidWlsZGVyLnJlZ2lzdGVyU2luZ2xldG9uKFRyYW5zZm9ybWVyS2V5LCBTd2NUcmFuc3BpbGVyKTtcblx0XHRidWlsZGVyLnJlZ2lzdGVyU2luZ2xldG9uKFRyYW5zZm9ybWVyS2V5LCBUeXBlRW1pdHRlcik7XG5cdFx0YnVpbGRlci5yZWdpc3RlclNpbmdsZXRvbihEZXBlbmRlbmN5UmVzb2x2ZXIpO1xuXHRcdGJ1aWxkZXIucmVnaXN0ZXJTaW5nbGV0b24oRmlsZVdyaXRlclNlcnZpY2UpO1xuXHR9XG5cblx0cHVibGljIG92ZXJyaWRlIGFzeW5jIGNyZWF0ZVdvcmtzcGFjZShvcHRpb25zOiBXb3Jrc3BhY2VGYWN0b3J5T3B0aW9ucykge1xuXHRcdGNvbnN0IHsgY29uZmlndXJhdGlvbnM6IF8sIC4uLmZvcmdlRGVmYXVsdHMgfSA9IFdvcmtzcGFjZURlZmF1bHRzO1xuXHRcdGNvbnN0IHVzZXJDb25maWcgPSBhd2FpdCBVc2VyQ29uZmlnRmFjdG9yeS5nZXRVc2VyQ29uZmlnKG9wdGlvbnMuY29uZmlnRmlsZSk7XG5cdFx0Ly8gT25seSBhcHBseSBmb3JnZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb25zIHdoZW4gdXNlciBjb25maWcgZG9lc24ndCBwcm92aWRlIGFueS5cblx0XHQvLyBUaGlzIGVuc3VyZXMgdXNlci1kZWZpbmVkIGNvbmZpZ3VyYXRpb25zIHRha2UgcHJpb3JpdHkgd2hpbGUgc3RpbGwgcHJvdmlkaW5nXG5cdFx0Ly8gc2Vuc2libGUgZGVmYXVsdHMgKGRlYnVnICsgcmVsZWFzZSkgd2hlbiBubyBjb25maWcgZmlsZSBpcyBwcmVzZW50LlxuXHRcdGNvbnN0IGNvbmZpZ3VyYXRpb25zID0gdXNlckNvbmZpZy5jb25maWd1cmF0aW9ucz8ubGVuZ3RoXG5cdFx0XHQ/IHVuZGVmaW5lZFxuXHRcdFx0OiBEZWZhdWx0Q29uZmlndXJhdGlvbnM7XG5cdFx0cmV0dXJuIFdvcmtzcGFjZUZhY3RvcnkuY3JlYXRlKHtcblx0XHRcdC4uLmZvcmdlRGVmYXVsdHMsXG5cdFx0XHQuLi4oY29uZmlndXJhdGlvbnMgPyB7IGNvbmZpZ3VyYXRpb25zIH0gOiB7fSksXG5cdFx0XHRjb25maWdGaWxlOiBvcHRpb25zLmNvbmZpZ0ZpbGUsXG5cdFx0XHRyb290RGlyOiBvcHRpb25zLnJvb3REaXIgPz8gV29ya3NwYWNlRGVmYXVsdHMucm9vdERpcixcblx0XHR9KTtcblx0fVxufVxuIl0sIm5hbWVzIjpbIkZvcmdlTW9kdWxlIiwiTW9kdWxlTWFuaWZlc3QiLCJpZCIsImNvbW1hbmQiLCJDb21tYW5kcyIsIkZvcmdlQ29tbWFuZCIsImFjdGlvbnMiLCJjbGVhbiIsIkFjdGlvbnMiLCJDbGVhbiIsImNvcHkiLCJDb3B5IiwiYnVpbGQiLCJCdWlsZCIsIndhdGNoIiwiV2F0Y2giLCJwdWJsaXNoIiwiUHVibGlzaCIsInN5bmNEZXBlbmRlbmNpZXMiLCJTeW5jRGVwZW5kZW5jaWVzIiwic3luY0xvY2tGaWxlIiwiU3luY0xvY2tGaWxlIiwicmVwb3J0RGVwZW5kZW5jaWVzIiwiUmVwb3J0RGVwZW5kZW5jaWVzIiwidmVyc2lvbiIsIlZlcnNpb24iLCJ0YWciLCJUYWciLCJjb21taXRGaWxlcyIsIkNvbW1pdEZpbGVzIiwiY29tbWFuZHMiLCJCdWlsZENvbW1hbmQiLCJQdWJsaXNoQ29tbWFuZCIsImRlcGVuZGVuY2llcyIsIkRlcGVuZGVuY3lDb21tYW5kIiwiVmVyc2lvbkNvbW1hbmQiLCJUYWdDb21tYW5kIiwicmVnaXN0ZXJTZXJ2aWNlcyIsImJ1aWxkZXIiLCJyZWdpc3RlclNpbmdsZXRvbiIsIlRyYW5zZm9ybWVyS2V5IiwiU3djVHJhbnNwaWxlciIsIlR5cGVFbWl0dGVyIiwiRGVwZW5kZW5jeVJlc29sdmVyIiwiRmlsZVdyaXRlclNlcnZpY2UiLCJjcmVhdGVXb3Jrc3BhY2UiLCJvcHRpb25zIiwiY29uZmlndXJhdGlvbnMiLCJfIiwiZm9yZ2VEZWZhdWx0cyIsIldvcmtzcGFjZURlZmF1bHRzIiwidXNlckNvbmZpZyIsIlVzZXJDb25maWdGYWN0b3J5IiwiZ2V0VXNlckNvbmZpZyIsImNvbmZpZ0ZpbGUiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJEZWZhdWx0Q29uZmlndXJhdGlvbnMiLCJXb3Jrc3BhY2VGYWN0b3J5IiwiY3JlYXRlIiwicm9vdERpciJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFhYUE7OztlQUFBQTs7O3NCQWJ1QztxQkFFckI7K0RBRU47Z0VBQ0M7MkNBQ1M7bUNBQ0Q7K0JBQ0o7NkJBQ0Y7aUNBQ0c7aUNBQzBCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFbEQsTUFBTUEsb0JBQW9CQyxtQkFBYztJQUM5QkMsS0FBSyxRQUFRO0lBQ2JDLFVBQVVDLFFBQVNDLFlBQVksQ0FBQztJQUNoQ0MsVUFBVTtRQUN6QkMsT0FBT0MsT0FBUUMsS0FBSztRQUNwQkMsTUFBTUYsT0FBUUcsSUFBSTtRQUNsQkMsT0FBT0osT0FBUUssS0FBSztRQUNwQkMsT0FBT04sT0FBUU8sS0FBSztRQUNwQkMsU0FBU1IsT0FBUVMsT0FBTztRQUN4QkMsa0JBQWtCVixPQUFRVyxnQkFBZ0I7UUFDMUNDLGNBQWNaLE9BQVFhLFlBQVk7UUFDbENDLG9CQUFvQmQsT0FBUWUsa0JBQWtCO1FBQzlDQyxTQUFTaEIsT0FBUWlCLE9BQU87UUFDeEJDLEtBQUtsQixPQUFRbUIsR0FBRztRQUNoQkMsYUFBYXBCLE9BQVFxQixXQUFXO0lBQ2pDLEVBQUU7SUFDY0MsV0FBVztRQUMxQmxCLE9BQU9SLFFBQVMyQixZQUFZO1FBQzVCZixTQUFTWixRQUFTNEIsY0FBYztRQUNoQ0MsY0FBYzdCLFFBQVM4QixpQkFBaUI7UUFDeENWLFNBQVNwQixRQUFTK0IsY0FBYztRQUNoQ1QsS0FBS3RCLFFBQVNnQyxVQUFVO0lBQ3pCLEVBQUU7SUFFS0MsaUJBQWlCQyxPQUF5QixFQUFFO1FBQ2xEQSxRQUFRQyxpQkFBaUIsQ0FBQ0MsK0JBQWMsRUFBRUMsNEJBQWE7UUFDdkRILFFBQVFDLGlCQUFpQixDQUFDQywrQkFBYyxFQUFFRSx3QkFBVztRQUNyREosUUFBUUMsaUJBQWlCLENBQUNJLDZDQUFrQjtRQUM1Q0wsUUFBUUMsaUJBQWlCLENBQUNLLG9DQUFpQjtJQUM1QztJQUVBLE1BQXNCQyxnQkFBZ0JDLE9BQWdDLEVBQUU7UUFDdkUsTUFBTSxFQUFFQyxnQkFBZ0JDLENBQUMsRUFBRSxHQUFHQyxlQUFlLEdBQUdDLGtDQUFpQjtRQUNqRSxNQUFNQyxhQUFhLE1BQU1DLHVCQUFpQixDQUFDQyxhQUFhLENBQUNQLFFBQVFRLFVBQVU7UUFDM0UsZ0ZBQWdGO1FBQ2hGLCtFQUErRTtRQUMvRSxzRUFBc0U7UUFDdEUsTUFBTVAsaUJBQWlCSSxXQUFXSixjQUFjLEVBQUVRLFNBQy9DQyxZQUNBQyxzQ0FBcUI7UUFDeEIsT0FBT0Msc0JBQWdCLENBQUNDLE1BQU0sQ0FBQztZQUM5QixHQUFHVixhQUFhO1lBQ2hCLEdBQUlGLGlCQUFpQjtnQkFBRUE7WUFBZSxJQUFJLENBQUMsQ0FBQztZQUM1Q08sWUFBWVIsUUFBUVEsVUFBVTtZQUM5Qk0sU0FBU2QsUUFBUWMsT0FBTyxJQUFJVixrQ0FBaUIsQ0FBQ1UsT0FBTztRQUN0RDtJQUNEO0FBQ0QifQ==
@@ -24,6 +24,9 @@ _export(exports, {
24
24
  get ForgeModule () {
25
25
  return _forgemodule.ForgeModule;
26
26
  },
27
+ get LinkConfiguration () {
28
+ return _workspaceconfig.Link;
29
+ },
27
30
  get ReleaseConfiguration () {
28
31
  return _workspaceconfig.Release;
29
32
  },
@@ -32,12 +35,18 @@ _export(exports, {
32
35
  },
33
36
  get WorkspaceDefaults () {
34
37
  return _workspaceconfig.WorkspaceDefaults;
38
+ },
39
+ get createWorkspace () {
40
+ return _createworkspace.createWorkspace;
41
+ },
42
+ get transpileCache () {
43
+ return _transpilecache.transpileCache;
35
44
  }
36
45
  });
46
+ const _createworkspace = require("./create-workspace.js");
37
47
  const _errors = require("./errors.js");
38
48
  const _forgemodule = require("./forge.module.js");
39
49
  const _swctranspiler = require("./services/swc-transpiler.js");
50
+ const _transpilecache = require("./services/transpile-cache.js");
40
51
  const _buildtargettype = require("./types/build-target.type.js");
41
52
  const _workspaceconfig = require("./workspace.config.js");
42
-
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBGb3JnZUVycm9yIH0gZnJvbSBcIi4vZXJyb3JzLmpzXCI7XG5leHBvcnQgeyBGb3JnZU1vZHVsZSB9IGZyb20gXCIuL2ZvcmdlLm1vZHVsZS5qc1wiO1xuZXhwb3J0IHR5cGUgeyBUcmFuc3BpbGVPcHRpb25zIH0gZnJvbSBcIi4vc2VydmljZXMvc3djLXRyYW5zcGlsZXIuanNcIjtcbmV4cG9ydCB7IFN3Y1RyYW5zcGlsZXIgfSBmcm9tIFwiLi9zZXJ2aWNlcy9zd2MtdHJhbnNwaWxlci5qc1wiO1xuZXhwb3J0IHR5cGUgeyBCdWlsZFRhcmdldCwgVHJhbnNwaWxlVGFyZ2V0IH0gZnJvbSBcIi4vdHlwZXMvYnVpbGQtdGFyZ2V0LnR5cGUuanNcIjtcbmV4cG9ydCB7IEJ1aWxkVGFyZ2V0cyB9IGZyb20gXCIuL3R5cGVzL2J1aWxkLXRhcmdldC50eXBlLmpzXCI7XG5leHBvcnQgdHlwZSB7IEZvcmdlQ29uZmlndXJhdGlvbiB9IGZyb20gXCIuL3R5cGVzL2NvbmZpZ3VyYXRpb24udHlwZS5qc1wiO1xuZXhwb3J0IHR5cGUgeyBXb3Jrc3BhY2VPcHRpb25zIH0gZnJvbSBcIi4vdHlwZXMvd29ya3NwYWNlLWNvbmZpZy50eXBlLmpzXCI7XG5leHBvcnQge1xuXHREZWJ1ZyBhcyBEZWJ1Z0NvbmZpZ3VyYXRpb24sXG5cdERlZmF1bHRDb25maWd1cmF0aW9ucyxcblx0UmVsZWFzZSBhcyBSZWxlYXNlQ29uZmlndXJhdGlvbixcblx0V29ya3NwYWNlRGVmYXVsdHMsXG59IGZyb20gXCIuL3dvcmtzcGFjZS5jb25maWcuanNcIjtcbiJdLCJuYW1lcyI6WyJCdWlsZFRhcmdldHMiLCJEZWJ1Z0NvbmZpZ3VyYXRpb24iLCJEZWJ1ZyIsIkRlZmF1bHRDb25maWd1cmF0aW9ucyIsIkZvcmdlRXJyb3IiLCJGb3JnZU1vZHVsZSIsIlJlbGVhc2VDb25maWd1cmF0aW9uIiwiUmVsZWFzZSIsIlN3Y1RyYW5zcGlsZXIiLCJXb3Jrc3BhY2VEZWZhdWx0cyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7UUFLU0E7ZUFBQUEsNkJBQVk7O1FBSVhDO2VBQVRDLHNCQUFLOztRQUNMQztlQUFBQSxzQ0FBcUI7O1FBVmJDO2VBQUFBLGtCQUFVOztRQUNWQztlQUFBQSx3QkFBVzs7UUFVUkM7ZUFBWEMsd0JBQU87O1FBUkNDO2VBQUFBLDRCQUFhOztRQVNyQkM7ZUFBQUEsa0NBQWlCOzs7d0JBWlM7NkJBQ0M7K0JBRUU7aUNBRUQ7aUNBUXRCIn0=