@decohere/forge 0.0.1-dev.19 → 0.0.1-dev.20261105.46

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 (200) hide show
  1. package/LICENSE +15 -0
  2. package/README.md +152 -0
  3. package/commonjs/src/actions/build.action.js +4 -6
  4. package/commonjs/src/actions/clean.action.js +4 -6
  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 +4 -2
  11. package/commonjs/src/actions/link.action.js +3 -5
  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 +1 -3
  19. package/commonjs/src/actions/version.action.js +74 -21
  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 +4 -2
  26. package/commonjs/src/commands/link.command.js +4 -3
  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 +3 -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 +17 -20
  39. package/commonjs/src/index.js +8 -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 +96 -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 +27 -6
  68. package/es6/src/actions/build.action.js +3 -7
  69. package/es6/src/actions/clean.action.js +3 -6
  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 +4 -2
  76. package/es6/src/actions/link.action.js +2 -5
  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 +1 -3
  84. package/es6/src/actions/version.action.js +69 -17
  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 +4 -2
  91. package/es6/src/commands/link.command.js +4 -3
  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 +3 -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 +17 -20
  104. package/es6/src/index.js +2 -2
  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 +75 -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 +26 -5
  133. package/package.json +20 -6
  134. package/types/src/actions/build.action.d.ts +4 -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 +4 -0
  142. package/types/src/actions/link.action.d.ts +3 -3
  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 +2 -2
  150. package/types/src/actions/version.action.d.ts +14 -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 +4 -0
  157. package/types/src/commands/link.command.d.ts +3 -2
  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 +12 -4
  169. package/types/src/index.d.ts +2 -0
  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 +20 -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/commonjs/src/mixins/caches-outputs.mixin.js +0 -44
  196. package/commonjs/src/mixins/incremental-transform.mixin.js +0 -36
  197. package/es6/src/mixins/caches-outputs.mixin.js +0 -34
  198. package/es6/src/mixins/incremental-transform.mixin.js +0 -26
  199. package/types/src/mixins/caches-outputs.mixin.d.ts +0 -7
  200. package/types/src/mixins/incremental-transform.mixin.d.ts +0 -13
@@ -9,9 +9,9 @@ Object.defineProperty(exports, "Publish", {
9
9
  }
10
10
  });
11
11
  const _decorators = require("@decohere/crucible/decorators");
12
- const _mesh = require("@decohere/mesh");
13
- const _cli = require("@decohere/nexus/cli");
14
- const _interop = require("@decohere/nexus/interop");
12
+ const _workspace = require("@decohere/workspace");
13
+ const _cli = require("@decohere/devkit/cli");
14
+ const _interop = require("@decohere/devkit/interop");
15
15
  const _scribe = require("@decohere/scribe");
16
16
  const _errors = require("../errors.js");
17
17
  function _ts_decorate(decorators, target, key, desc) {
@@ -149,8 +149,6 @@ Publish = _ts_decorate([
149
149
  (0, _decorators.injectable)(),
150
150
  _ts_metadata("design:type", Function),
151
151
  _ts_metadata("design:paramtypes", [
152
- typeof _mesh.Workspace === "undefined" ? Object : _mesh.Workspace
152
+ typeof _workspace.Workspace === "undefined" ? Object : _workspace.Workspace
153
153
  ])
154
154
  ], Publish);
155
-
156
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9hY3Rpb25zL3B1Ymxpc2guYWN0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdGFibGUgfSBmcm9tIFwiQGRlY29oZXJlL2NydWNpYmxlL2RlY29yYXRvcnNcIjtcbmltcG9ydCB0eXBlIHsgUHJvamVjdCB9IGZyb20gXCJAZGVjb2hlcmUvbWVzaFwiO1xuLy8gYmlvbWUtaWdub3JlIGxpbnQvc3R5bGUvdXNlSW1wb3J0VHlwZTogPERJPlxuaW1wb3J0IHsgV29ya3NwYWNlIH0gZnJvbSBcIkBkZWNvaGVyZS9tZXNoXCI7XG5pbXBvcnQgdHlwZSB7IEFjdGlvbiwgUmVzdWx0U3RhdHVzIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9jbGlcIjtcbmltcG9ydCB7IEFjdGlvblJlc3BvbnNlIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9jbGlcIjtcbmltcG9ydCB7IE5wbSB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvaW50ZXJvcFwiO1xuaW1wb3J0IHsgc2NyaWJlIH0gZnJvbSBcIkBkZWNvaGVyZS9zY3JpYmVcIjtcbmltcG9ydCB7IEZvcmdlRXJyb3IsIGZvcm1hdFVua25vd25FcnJvciB9IGZyb20gXCIuLi9lcnJvcnMuanNcIjtcblxuZXhwb3J0IHR5cGUgUHVibGlzaE9wdGlvbnMgPSB7XG5cdGNvbmZpZ3VyYXRpb246IHN0cmluZztcblx0Y2hhbm5lbD86IHN0cmluZztcblx0ZHJ5UnVuPzogYm9vbGVhbjtcblx0dG9rZW4/OiBzdHJpbmc7XG5cdG90cD86IHN0cmluZztcblx0cHJvbXB0QXV0aD86IGJvb2xlYW47XG5cdHByb21wdE90cD86IGJvb2xlYW47XG59O1xuXG5leHBvcnQgdHlwZSBQdWJsaXNoUmVzcG9uc2UgPSBSZXN1bHRTdGF0dXMgJiB7XG5cdHByb2plY3ROYW1lOiBzdHJpbmc7XG5cdG1lc3NhZ2U6IHN0cmluZztcblx0cGFja2FnZU5hbWU/OiBzdHJpbmc7XG59O1xuXG5AaW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUHVibGlzaCBpbXBsZW1lbnRzIEFjdGlvbjxQdWJsaXNoT3B0aW9ucz4ge1xuXHQvLyBUT0RPOiBwcm9iYWJseSBiZXN0IHRvIGluamVjdCBucG1cblx0cHJpdmF0ZSByZWFkb25seSBucG0gPSBuZXcgTnBtKCk7XG5cdCNsb2dnZXIgPSBzY3JpYmUubG9nZ2VyKFB1Ymxpc2gubmFtZSk7XG5cblx0cHVibGljIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgd29ya3NwYWNlOiBXb3Jrc3BhY2UpIHt9XG5cblx0cHVibGljIGFzeW5jIHJ1bihvcHRpb25zOiBQdWJsaXNoT3B0aW9ucyk6IFByb21pc2U8QWN0aW9uUmVzcG9uc2U8UHVibGlzaFJlc3BvbnNlPj4ge1xuXHRcdGNvbnN0IHByb2plY3RzID0gdGhpcy53b3Jrc3BhY2UuZ2V0UHJvamVjdHMob3B0aW9ucy5jb25maWd1cmF0aW9uKTtcblx0XHRjb25zdCB0b2tlbiA9IGF3YWl0IHRoaXMucmVzb2x2ZVRva2VuKG9wdGlvbnMpO1xuXHRcdGNvbnN0IG90cCA9IGF3YWl0IHRoaXMucmVzb2x2ZU90cChvcHRpb25zKTtcblxuXHRcdGlmIChwcm9qZWN0cy5sZW5ndGggPT09IDApIHtcblx0XHRcdHRocm93IG5ldyBGb3JnZUVycm9yKGBObyBwcm9qZWN0cyBmb3VuZCB0byBwdWJsaXNoYCk7XG5cdFx0fVxuXHRcdGNvbnN0IHB1Ymxpc2hSZXNwb25zZXMgPSBhd2FpdCB0aGlzLnB1Ymxpc2hQcm9qZWN0cyhwcm9qZWN0cywge1xuXHRcdFx0Li4ub3B0aW9ucyxcblx0XHRcdHRva2VuLFxuXHRcdFx0b3RwLFxuXHRcdH0pO1xuXHRcdGNvbnN0IGZhaWxlZCA9IHB1Ymxpc2hSZXNwb25zZXMuZmlsdGVyKChyKSA9PiAhci5zdWNjZWVkZWQpO1xuXHRcdGlmIChmYWlsZWQubGVuZ3RoKSB7XG5cdFx0XHRyZXR1cm4gQWN0aW9uUmVzcG9uc2UuRXJyb3IoUHVibGlzaC5uYW1lLCBwdWJsaXNoUmVzcG9uc2VzKTtcblx0XHR9XG5cdFx0cmV0dXJuIEFjdGlvblJlc3BvbnNlLlN1Y2Nlc3MoUHVibGlzaC5uYW1lLCBwdWJsaXNoUmVzcG9uc2VzKTtcblx0fVxuXG5cdHB1YmxpYyBhc3luYyBwdWJsaXNoUHJvamVjdHMocHJvamVjdHM6IHJlYWRvbmx5IFByb2plY3RbXSwgb3B0aW9uczogUHVibGlzaE9wdGlvbnMpIHtcblx0XHRyZXR1cm4gYXdhaXQgUHJvbWlzZS5hbGwoXG5cdFx0XHRwcm9qZWN0c1xuXHRcdFx0XHQuZmlsdGVyKChwcm9qZWN0KSA9PiB7XG5cdFx0XHRcdFx0aWYgKHByb2plY3QuaXNQcml2YXRlKSB7XG5cdFx0XHRcdFx0XHR0aGlzLiNsb2dnZXIuaW5mbyhgU2tpcHBpbmcgcHJpdmF0ZSBwYWNrYWdlOiAke3Byb2plY3QubmFtZX1gKTtcblx0XHRcdFx0XHRcdHJldHVybiBmYWxzZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0cmV0dXJuIHRydWU7XG5cdFx0XHRcdH0pXG5cdFx0XHRcdC5tYXAoYXN5bmMgKHByb2plY3QpID0+IGF3YWl0IHRoaXMucHVibGlzaFByb2plY3QocHJvamVjdCwgb3B0aW9ucykpLFxuXHRcdCk7XG5cdH1cblxuXHRwcml2YXRlIGFzeW5jIHB1Ymxpc2hQcm9qZWN0KFxuXHRcdHByb2plY3Q6IFByb2plY3QsXG5cdFx0b3B0aW9uczogUHVibGlzaE9wdGlvbnMsXG5cdCk6IFByb21pc2U8UHVibGlzaFJlc3BvbnNlPiB7XG5cdFx0Y29uc3QgeyBjaGFubmVsLCBkcnlSdW4sIHRva2VuLCBvdHAgfSA9IG9wdGlvbnM7XG5cdFx0Y29uc3Qgb3V0RGlyID0gcHJvamVjdC5nZXRPdXREaXIoKTtcblx0XHR0aGlzLiNsb2dnZXIuaW5mbyhgJHtkcnlSdW4gPyBcIltkcnktcnVuXSBcIiA6IFwiXCJ9UHVibGlzaGluZyAke3Byb2plY3QubmFtZX1gKTtcblxuXHRcdHRyeSB7XG5cdFx0XHRjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMubnBtLnB1Ymxpc2gob3V0RGlyLCB7XG5cdFx0XHRcdGNoYW5uZWwsXG5cdFx0XHRcdGRyeVJ1bixcblx0XHRcdFx0YXV0aFRva2VuOiB0b2tlbixcblx0XHRcdFx0b3RwLFxuXHRcdFx0XHRza2lwSWZQdWJsaXNoZWQ6IHRydWUsXG5cdFx0XHR9KTtcblxuXHRcdFx0Y29uc3QgcGFja2FnZU5hbWUgPSByZXNwb25zZS5kYXRhPy5qb2luKFwiXCIpO1xuXHRcdFx0dGhpcy4jbG9nZ2VyLnRyYWNlKGAke3Byb2plY3QubmFtZX0g4oaSICR7cGFja2FnZU5hbWUgPz8gcmVzcG9uc2UubWVzc2FnZX1gKTtcblx0XHRcdHJldHVybiB7XG5cdFx0XHRcdHByb2plY3ROYW1lOiBwcm9qZWN0Lm5hbWUsXG5cdFx0XHRcdHN1Y2NlZWRlZDogdHJ1ZSxcblx0XHRcdFx0bWVzc2FnZTogcmVzcG9uc2UubWVzc2FnZSxcblx0XHRcdFx0cGFja2FnZU5hbWUsXG5cdFx0XHR9O1xuXHRcdH0gY2F0Y2ggKHJlYXNvbikge1xuXHRcdFx0Y29uc3QgbWVzc2FnZSA9IGZvcm1hdFVua25vd25FcnJvcihyZWFzb24pO1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0cHJvamVjdE5hbWU6IHByb2plY3QubmFtZSxcblx0XHRcdFx0c3VjY2VlZGVkOiBmYWxzZSxcblx0XHRcdFx0bWVzc2FnZSxcblx0XHRcdFx0ZXJyb3I6IGAke3Byb2plY3QubmFtZX06ICR7bWVzc2FnZX1gLFxuXHRcdFx0fTtcblx0XHR9XG5cdH1cblxuXHRwcml2YXRlIGFzeW5jIHJlc29sdmVUb2tlbihvcHRpb25zOiBQdWJsaXNoT3B0aW9ucyk6IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG5cdFx0aWYgKG9wdGlvbnMudG9rZW4/LnRyaW0oKSkge1xuXHRcdFx0cmV0dXJuIG9wdGlvbnMudG9rZW4udHJpbSgpO1xuXHRcdH1cblxuXHRcdGlmIChvcHRpb25zLnByb21wdEF1dGgpIHtcblx0XHRcdHJldHVybiBhd2FpdCB0aGlzLnByb21wdFNlY3JldChcIm5wbSBhY2Nlc3MgdG9rZW46IFwiKTtcblx0XHR9XG5cblx0XHRyZXR1cm4gdW5kZWZpbmVkO1xuXHR9XG5cblx0cHJpdmF0ZSBhc3luYyByZXNvbHZlT3RwKG9wdGlvbnM6IFB1Ymxpc2hPcHRpb25zKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcblx0XHRpZiAob3B0aW9ucy5vdHA/LnRyaW0oKSkge1xuXHRcdFx0cmV0dXJuIG9wdGlvbnMub3RwLnRyaW0oKTtcblx0XHR9XG5cblx0XHRpZiAob3B0aW9ucy5wcm9tcHRBdXRoIHx8IG9wdGlvbnMucHJvbXB0T3RwKSB7XG5cdFx0XHRyZXR1cm4gYXdhaXQgdGhpcy5wcm9tcHRTZWNyZXQoXCJucG0gT1RQOiBcIik7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHVuZGVmaW5lZDtcblx0fVxuXG5cdHByaXZhdGUgYXN5bmMgcHJvbXB0U2VjcmV0KGxhYmVsOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuXHRcdGlmICghcHJvY2Vzcy5zdGRpbi5pc1RUWSB8fCAhcHJvY2Vzcy5zdGRvdXQuaXNUVFkpIHtcblx0XHRcdHRocm93IG5ldyBGb3JnZUVycm9yKGBDYW5ub3QgcHJvbXB0IGZvciBzZWNyZXQgd2l0aG91dCBhbiBpbnRlcmFjdGl2ZSBUVFlgKTtcblx0XHR9XG5cblx0XHRwcm9jZXNzLnN0ZG91dC53cml0ZShsYWJlbCk7XG5cdFx0Y29uc3Qgc3RkaW4gPSBwcm9jZXNzLnN0ZGluO1xuXHRcdHN0ZGluLnNldEVuY29kaW5nKFwidXRmOFwiKTtcblx0XHRzdGRpbi5yZXN1bWUoKTtcblx0XHRzdGRpbi5zZXRSYXdNb2RlPy4odHJ1ZSk7XG5cblx0XHRsZXQgdmFsdWUgPSBcIlwiO1xuXG5cdFx0cmV0dXJuIGF3YWl0IG5ldyBQcm9taXNlPHN0cmluZz4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuXHRcdFx0Y29uc3QgY2xlYW51cCA9ICgpID0+IHtcblx0XHRcdFx0c3RkaW4uc2V0UmF3TW9kZT8uKGZhbHNlKTtcblx0XHRcdFx0c3RkaW4ucGF1c2UoKTtcblx0XHRcdFx0c3RkaW4ucmVtb3ZlTGlzdGVuZXIoXCJkYXRhXCIsIG9uRGF0YSk7XG5cdFx0XHRcdHByb2Nlc3Muc3Rkb3V0LndyaXRlKFwiXFxuXCIpO1xuXHRcdFx0fTtcblxuXHRcdFx0Y29uc3Qgb25EYXRhID0gKGNodW5rOiBzdHJpbmcpID0+IHtcblx0XHRcdFx0Y29uc3QgY2hhciA9IGNodW5rO1xuXHRcdFx0XHRpZiAoY2hhciA9PT0gXCJcXHUwMDAzXCIpIHtcblx0XHRcdFx0XHRjbGVhbnVwKCk7XG5cdFx0XHRcdFx0cmVqZWN0KG5ldyBGb3JnZUVycm9yKFwiSW5wdXQgY2FuY2VsbGVkXCIpKTtcblx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRpZiAoY2hhciA9PT0gXCJcXHJcIiB8fCBjaGFyID09PSBcIlxcblwiKSB7XG5cdFx0XHRcdFx0Y2xlYW51cCgpO1xuXHRcdFx0XHRcdHJlc29sdmUodmFsdWUudHJpbSgpKTtcblx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRpZiAoY2hhciA9PT0gXCJcXHUwMDA4XCIgfHwgY2hhciA9PT0gXCJcXHUwMDdmXCIpIHtcblx0XHRcdFx0XHR2YWx1ZSA9IHZhbHVlLnNsaWNlKDAsIC0xKTtcblx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdH1cblxuXHRcdFx0XHR2YWx1ZSArPSBjaGFyO1xuXHRcdFx0fTtcblxuXHRcdFx0c3RkaW4ub24oXCJkYXRhXCIsIG9uRGF0YSk7XG5cdFx0fSk7XG5cdH1cbn1cbiJdLCJuYW1lcyI6WyJQdWJsaXNoIiwibnBtIiwiTnBtIiwic2NyaWJlIiwibG9nZ2VyIiwibmFtZSIsIndvcmtzcGFjZSIsInJ1biIsIm9wdGlvbnMiLCJwcm9qZWN0cyIsImdldFByb2plY3RzIiwiY29uZmlndXJhdGlvbiIsInRva2VuIiwicmVzb2x2ZVRva2VuIiwib3RwIiwicmVzb2x2ZU90cCIsImxlbmd0aCIsIkZvcmdlRXJyb3IiLCJwdWJsaXNoUmVzcG9uc2VzIiwicHVibGlzaFByb2plY3RzIiwiZmFpbGVkIiwiZmlsdGVyIiwiciIsInN1Y2NlZWRlZCIsIkFjdGlvblJlc3BvbnNlIiwiRXJyb3IiLCJTdWNjZXNzIiwiUHJvbWlzZSIsImFsbCIsInByb2plY3QiLCJpc1ByaXZhdGUiLCJpbmZvIiwibWFwIiwicHVibGlzaFByb2plY3QiLCJjaGFubmVsIiwiZHJ5UnVuIiwib3V0RGlyIiwiZ2V0T3V0RGlyIiwicmVzcG9uc2UiLCJwdWJsaXNoIiwiYXV0aFRva2VuIiwic2tpcElmUHVibGlzaGVkIiwicGFja2FnZU5hbWUiLCJkYXRhIiwiam9pbiIsInRyYWNlIiwibWVzc2FnZSIsInByb2plY3ROYW1lIiwicmVhc29uIiwiZm9ybWF0VW5rbm93bkVycm9yIiwiZXJyb3IiLCJ0cmltIiwicHJvbXB0QXV0aCIsInByb21wdFNlY3JldCIsInVuZGVmaW5lZCIsInByb21wdE90cCIsImxhYmVsIiwicHJvY2VzcyIsInN0ZGluIiwiaXNUVFkiLCJzdGRvdXQiLCJ3cml0ZSIsInNldEVuY29kaW5nIiwicmVzdW1lIiwic2V0UmF3TW9kZSIsInZhbHVlIiwicmVzb2x2ZSIsInJlamVjdCIsImNsZWFudXAiLCJwYXVzZSIsInJlbW92ZUxpc3RlbmVyIiwib25EYXRhIiwiY2h1bmsiLCJjaGFyIiwic2xpY2UiLCJvbiJdLCJtYXBwaW5ncyI6Ijs7OzsrQkEyQmFBOzs7ZUFBQUE7Ozs0QkEzQmM7c0JBR0Q7cUJBRUs7eUJBQ1g7d0JBQ0c7d0JBQ3dCOzs7Ozs7Ozs7O0FBbUJ4QyxNQUFNQTs7SUFDWixvQ0FBb0M7SUFDbkJDLE1BQU0sSUFBSUMsWUFBRyxHQUFHO0lBQ2pDLENBQUEsTUFBTyxHQUFHQyxjQUFNLENBQUNDLE1BQU0sQ0FBQ0osUUFBUUssSUFBSSxFQUFFO0lBRXRDLFlBQW1CLEFBQWlCQyxTQUFvQixDQUFFO2FBQXRCQSxZQUFBQTtJQUF1QjtJQUUzRCxNQUFh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
@@ -9,8 +9,8 @@ Object.defineProperty(exports, "SyncLockFile", {
9
9
  }
10
10
  });
11
11
  const _decorators = require("@decohere/crucible/decorators");
12
- const _cli = require("@decohere/nexus/cli");
13
- const _interop = require("@decohere/nexus/interop");
12
+ const _cli = require("@decohere/devkit/cli");
13
+ const _interop = require("@decohere/devkit/interop");
14
14
  const _scribe = require("@decohere/scribe");
15
15
  const _errors = require("../errors.js");
16
16
  function _ts_decorate(decorators, target, key, desc) {
@@ -39,5 +39,3 @@ class SyncLockFile {
39
39
  SyncLockFile = _ts_decorate([
40
40
  (0, _decorators.injectable)()
41
41
  ], SyncLockFile);
42
-
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9hY3Rpb25zL3N5bmMtbG9jay1maWxlLmFjdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3RhYmxlIH0gZnJvbSBcIkBkZWNvaGVyZS9jcnVjaWJsZS9kZWNvcmF0b3JzXCI7XG5pbXBvcnQgdHlwZSB7IEFjdGlvbiB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvY2xpXCI7XG5pbXBvcnQgeyBBY3Rpb25SZXNwb25zZSB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvY2xpXCI7XG5pbXBvcnQgeyBQbnBtIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9pbnRlcm9wXCI7XG5pbXBvcnQgeyBzY3JpYmUgfSBmcm9tIFwiQGRlY29oZXJlL3NjcmliZVwiO1xuaW1wb3J0IHsgZm9ybWF0VW5rbm93bkVycm9yIH0gZnJvbSBcIi4uL2Vycm9ycy5qc1wiO1xuXG5leHBvcnQgdHlwZSBTeW5jTG9ja0ZpbGVPcHRpb25zID0ge1xuXHRzeW5jPzogYm9vbGVhbjtcblx0ZHJ5UnVuPzogYm9vbGVhbjtcbn07XG5cbkBpbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTeW5jTG9ja0ZpbGUgaW1wbGVtZW50cyBBY3Rpb248U3luY0xvY2tGaWxlT3B0aW9ucz4ge1xuXHQjbG9nZ2VyID0gc2NyaWJlLmxvZ2dlcihTeW5jTG9ja0ZpbGUubmFtZSk7XG5cdCNwbnBtID0gbmV3IFBucG0oKTtcblxuXHRwdWJsaWMgYXN5bmMgcnVuKG9wdGlvbnM6IFN5bmNMb2NrRmlsZU9wdGlvbnMpOiBQcm9taXNlPEFjdGlvblJlc3BvbnNlPiB7XG5cdFx0Y29uc3Qgc2hvdWxkU3luYyA9IG9wdGlvbnMuc3luYyA/PyB0cnVlO1xuXG5cdFx0aWYgKG9wdGlvbnMuZHJ5UnVuIHx8ICFzaG91bGRTeW5jKSB7XG5cdFx0XHR0aGlzLiNsb2dnZXIuaW5mbyhcblx0XHRcdFx0b3B0aW9ucy5kcnlSdW4gPyBcIltkcnktcnVuXSBTa2lwcGluZyBsb2NrZmlsZSBzeW5jXCIgOiBcIlNraXBwaW5nIGxvY2tmaWxlIHN5bmNcIixcblx0XHRcdCk7XG5cdFx0XHRyZXR1cm4gQWN0aW9uUmVzcG9uc2UuU2tpcHBlZChTeW5jTG9ja0ZpbGUubmFtZSk7XG5cdFx0fVxuXG5cdFx0dHJ5IHtcblx0XHRcdGF3YWl0IHRoaXMuI3BucG0uc3luY0xvY2tGaWxlKCk7XG5cdFx0fSBjYXRjaCAocmVhc29uKSB7XG5cdFx0XHRyZXR1cm4gQWN0aW9uUmVzcG9uc2UuRXJyb3IoXG5cdFx0XHRcdFN5bmNMb2NrRmlsZS5uYW1lLFxuXHRcdFx0XHRgRmFpbGVkIHN5bmNpbmcgbG9ja2ZpbGU6ICR7Zm9ybWF0VW5rbm93bkVycm9yKHJlYXNvbil9YCxcblx0XHRcdCk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIEFjdGlvblJlc3BvbnNlLlN1Y2Nlc3MoU3luY0xvY2tGaWxlLm5hbWUpO1xuXHR9XG59XG4iXSwibmFtZXMiOlsiU3luY0xvY2tGaWxlIiwic2NyaWJlIiwibG9nZ2VyIiwibmFtZSIsIlBucG0iLCJydW4iLCJvcHRpb25zIiwic2hvdWxkU3luYyIsInN5bmMiLCJkcnlSdW4iLCJpbmZvIiwiQWN0aW9uUmVzcG9uc2UiLCJTa2lwcGVkIiwic3luY0xvY2tGaWxlIiwicmVhc29uIiwiRXJyb3IiLCJmb3JtYXRVbmtub3duRXJyb3IiLCJTdWNjZXNzIl0sIm1hcHBpbmdzIjoiOzs7OytCQWFhQTs7O2VBQUFBOzs7NEJBYmM7cUJBRUk7eUJBQ1Y7d0JBQ0U7d0JBQ1k7Ozs7Ozs7QUFRNUIsTUFBTUE7SUFDWixDQUFBLE1BQU8sR0FBR0MsY0FBTSxDQUFDQyxNQUFNLENBQUNGLGFBQWFHLElBQUksRUFBRTtJQUMzQyxDQUFBLElBQUssR0FBRyxJQUFJQyxhQUFJLEdBQUc7SUFFbkIsTUFBYUMsSUFBSUMsT0FBNEIsRUFBMkI7UUFDdkUsTUFBTUMsYUFBYUQsUUFBUUUsSUFBSSxJQUFJO1FBRW5DLElBQUlGLFFBQVFHLE1BQU0sSUFBSSxDQUFDRixZQUFZO1lBQ2xDLElBQUksQ0FBQyxDQUFBLE1BQU8sQ0FBQ0csSUFBSSxDQUNoQkosUUFBUUcsTUFBTSxHQUFHLHFDQUFxQztZQUV2RCxPQUFPRSxtQkFBYyxDQUFDQyxPQUFPLENBQUNaLGFBQWFHLElBQUk7UUFDaEQ7UUFFQSxJQUFJO1lBQ0gsTUFBTSxJQUFJLENBQUMsQ0FBQSxJQUFLLENBQUNVLFlBQVk7UUFDOUIsRUFBRSxPQUFPQyxRQUFRO1lBQ2hCLE9BQU9ILG1CQUFjLENBQUNJLEtBQUssQ0FDMUJmLGFBQWFHLElBQUksRUFDakIsQ0FBQyx5QkFBeUIsRUFBRWEsSUFBQUEsMEJBQWtCLEVBQUNGLFNBQVM7UUFFMUQ7UUFFQSxPQUFPSCxtQkFBYyxDQUFDTSxPQUFPLENBQUNqQixhQUFhRyxJQUFJO0lBQ2hEO0FBQ0QifQ==
@@ -9,9 +9,9 @@ Object.defineProperty(exports, "Tag", {
9
9
  }
10
10
  });
11
11
  const _decorators = require("@decohere/crucible/decorators");
12
- const _mesh = require("@decohere/mesh");
13
- const _cli = require("@decohere/nexus/cli");
14
- const _interop = require("@decohere/nexus/interop");
12
+ const _workspace = require("@decohere/workspace");
13
+ const _cli = require("@decohere/devkit/cli");
14
+ const _interop = require("@decohere/devkit/interop");
15
15
  const _scribe = require("@decohere/scribe");
16
16
  const _errors = require("../errors.js");
17
17
  function _ts_decorate(decorators, target, key, desc) {
@@ -47,9 +47,8 @@ class Tag {
47
47
  const git = new _interop.Git();
48
48
  await git.tag(tag);
49
49
  if (options.push) {
50
- const branch = await git.getBranchName();
51
- this.#logger.info(`Pushing branch: ${branch}`);
52
- await git.push(branch);
50
+ // Tag-only: Publish checks out a commit SHA (detached HEAD). Pushing a
51
+ // branch name is wrong there and unnecessary — the version label is the tag.
53
52
  this.#logger.info(`Pushing tag: ${tag}`);
54
53
  await git.pushTag(tag);
55
54
  }
@@ -69,8 +68,6 @@ Tag = _ts_decorate([
69
68
  (0, _decorators.injectable)(),
70
69
  _ts_metadata("design:type", Function),
71
70
  _ts_metadata("design:paramtypes", [
72
- typeof _mesh.Workspace === "undefined" ? Object : _mesh.Workspace
71
+ typeof _workspace.Workspace === "undefined" ? Object : _workspace.Workspace
73
72
  ])
74
73
  ], Tag);
75
-
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9hY3Rpb25zL3RhZy5hY3Rpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0YWJsZSB9IGZyb20gXCJAZGVjb2hlcmUvY3J1Y2libGUvZGVjb3JhdG9yc1wiO1xuLy8gYmlvbWUtaWdub3JlIGxpbnQvc3R5bGUvdXNlSW1wb3J0VHlwZTogPERJPlxuaW1wb3J0IHsgV29ya3NwYWNlIH0gZnJvbSBcIkBkZWNvaGVyZS9tZXNoXCI7XG5pbXBvcnQgdHlwZSB7IEFjdGlvbiB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvY2xpXCI7XG5pbXBvcnQgeyBBY3Rpb25SZXNwb25zZSB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvY2xpXCI7XG5pbXBvcnQgeyBHaXQgfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL2ludGVyb3BcIjtcbmltcG9ydCB7IHNjcmliZSB9IGZyb20gXCJAZGVjb2hlcmUvc2NyaWJlXCI7XG5pbXBvcnQgeyBGb3JnZUVycm9yLCBmb3JtYXRVbmtub3duRXJyb3IgfSBmcm9tIFwiLi4vZXJyb3JzLmpzXCI7XG5cbmV4cG9ydCB0eXBlIFRhZ09wdGlvbnMgPSB7XG5cdHByZWZpeD86IHN0cmluZztcblx0ZHJ5UnVuPzogYm9vbGVhbjtcblx0cHVzaD86IGJvb2xlYW47XG59O1xuXG5leHBvcnQgdHlwZSBUYWdSZXNwb25zZSA9IHtcblx0dGFnOiBzdHJpbmc7XG5cdHN1Y2NlZWRlZDogYm9vbGVhbjtcblx0ZXJyb3I/OiBzdHJpbmc7XG59O1xuXG5AaW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVGFnIGltcGxlbWVudHMgQWN0aW9uPFRhZ09wdGlvbnM+IHtcblx0I2xvZ2dlciA9IHNjcmliZS5sb2dnZXIoVGFnLm5hbWUpO1xuXHRwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB3b3Jrc3BhY2U6IFdvcmtzcGFjZSkge31cblxuXHRwdWJsaWMgYXN5bmMgcnVuKG9wdGlvbnM6IFRhZ09wdGlvbnMpOiBQcm9taXNlPEFjdGlvblJlc3BvbnNlPFRhZ1Jlc3BvbnNlPj4ge1xuXHRcdHRyeSB7XG5cdFx0XHRjb25zdCB2ZXJzaW9uID0gYXdhaXQgdGhpcy53b3Jrc3BhY2UuZ2V0VmVyc2lvbigpO1xuXHRcdFx0Y29uc3QgcHJlZml4ID0gb3B0aW9ucy5wcmVmaXggPz8gXCJ2XCI7XG5cdFx0XHRjb25zdCB0YWcgPSBgJHtwcmVmaXh9JHt2ZXJzaW9ufWA7XG5cblx0XHRcdGlmIChvcHRpb25zLmRyeVJ1bikge1xuXHRcdFx0XHR0aGlzLiNsb2dnZXIuaW5mbyhgW2RyeS1ydW5dICR7dGFnfWApO1xuXHRcdFx0XHRyZXR1cm4gQWN0aW9uUmVzcG9uc2UuU3VjY2VzczxUYWdSZXNwb25zZT4oVGFnLm5hbWUsIFt7IHRhZywgc3VjY2VlZGVkOiB0cnVlIH1dKTtcblx0XHRcdH1cblxuXHRcdFx0dGhpcy4jbG9nZ2VyLmluZm8oYENyZWF0aW5nIHRhZzogJHt0YWd9YCk7XG5cdFx0XHRjb25zdCBnaXQgPSBuZXcgR2l0KCk7XG5cdFx0XHRhd2FpdCBnaXQudGFnKHRhZyk7XG5cblx0XHRcdGlmIChvcHRpb25zLnB1c2gpIHtcblx0XHRcdFx0Y29uc3QgYnJhbmNoID0gYXdhaXQgZ2l0LmdldEJyYW5jaE5hbWUoKTtcblx0XHRcdFx0dGhpcy4jbG9nZ2VyLmluZm8oYFB1c2hpbmcgYnJhbmNoOiAke2JyYW5jaH1gKTtcblx0XHRcdFx0YXdhaXQgZ2l0LnB1c2goYnJhbmNoKTtcblx0XHRcdFx0dGhpcy4jbG9nZ2VyLmluZm8oYFB1c2hpbmcgdGFnOiAke3RhZ31gKTtcblx0XHRcdFx0YXdhaXQgZ2l0LnB1c2hUYWcodGFnKTtcblx0XHRcdH1cblxuXHRcdFx0cmV0dXJuIEFjdGlvblJlc3BvbnNlLlN1Y2Nlc3M8VGFnUmVzcG9uc2U+KFRhZy5uYW1lLCBbeyB0YWcsIHN1Y2NlZWRlZDogdHJ1ZSB9XSk7XG5cdFx0fSBjYXRjaCAocmVhc29uKSB7XG5cdFx0XHRjb25zdCBlcnJvciA9IGZvcm1hdFVua25vd25FcnJvcihyZWFzb24pO1xuXHRcdFx0dGhyb3cgbmV3IEZvcmdlRXJyb3IoYEZhaWxlZCB0byBjcmVhdGUgdGFnOiAke2Vycm9yfWApO1xuXHRcdH1cblx0fVxufVxuIl0sIm5hbWVzIjpbIlRhZyIsInNjcmliZSIsImxvZ2dlciIsIm5hbWUiLCJ3b3Jrc3BhY2UiLCJydW4iLCJvcHRpb25zIiwidmVyc2lvbiIsImdldFZlcnNpb24iLCJwcmVmaXgiLCJ0YWciLCJkcnlSdW4iLCJpbmZvIiwiQWN0aW9uUmVzcG9uc2UiLCJTdWNjZXNzIiwic3VjY2VlZGVkIiwiZ2l0IiwiR2l0IiwicHVzaCIsImJyYW5jaCIsImdldEJyYW5jaE5hbWUiLCJwdXNoVGFnIiwicmVhc29uIiwiZXJyb3IiLCJmb3JtYXRVbmtub3duRXJyb3IiLCJGb3JnZUVycm9yIl0sIm1hcHBpbmdzIjoiOzs7OytCQXNCYUE7OztlQUFBQTs7OzRCQXRCYztzQkFFRDtxQkFFSzt5QkFDWDt3QkFDRzt3QkFDd0I7Ozs7Ozs7Ozs7QUFleEMsTUFBTUE7O0lBQ1osQ0FBQSxNQUFPLEdBQUdDLGNBQU0sQ0FBQ0MsTUFBTSxDQUFDRixJQUFJRyxJQUFJLEVBQUU7SUFDbEMsWUFBbUIsQUFBaUJDLFNBQW9CLENBQUU7YUFBdEJBLFlBQUFBO0lBQXVCO0lBRTNELE1BQWFDLElBQUlDLE9BQW1CLEVBQXdDO1FBQzNFLElBQUk7WUFDSCxNQUFNQyxVQUFVLE1BQU0sSUFBSSxDQUFDSCxTQUFTLENBQUNJLFVBQVU7WUFDL0MsTUFBTUMsU0FBU0gsUUFBUUcsTUFBTSxJQUFJO1lBQ2pDLE1BQU1DLE1BQU0sR0FBR0QsU0FBU0YsU0FBUztZQUVqQyxJQUFJRCxRQUFRSyxNQUFNLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxDQUFBLE1BQU8sQ0FBQ0MsSUFBSSxDQUFDLENBQUMsVUFBVSxFQUFFRixLQUFLO2dCQUNwQyxPQUFPRyxtQkFBYyxDQUFDQyxPQUFPLENBQWNkLElBQUlHLElBQUksRUFBRTtvQkFBQzt3QkFBRU87d0JBQUtLLFdBQVc7b0JBQUs7aUJBQUU7WUFDaEY7WUFFQSxJQUFJLENBQUMsQ0FBQSxNQUFPLENBQUNILElBQUksQ0FBQyxDQUFDLGNBQWMsRUFBRUYsS0FBSztZQUN4QyxNQUFNTSxNQUFNLElBQUlDLFlBQUc7WUFDbkIsTUFBTUQsSUFBSU4sR0FBRyxDQUFDQTtZQUVkLElBQUlKLFFBQVFZLElBQUksRUFBRTtnQkFDakIsTUFBTUMsU0FBUyxNQUFNSCxJQUFJSSxhQUFhO2dCQUN0QyxJQUFJLENBQUMsQ0FBQSxNQUFPLENBQUNSLElBQUksQ0FBQyxDQUFDLGdCQUFnQixFQUFFTyxRQUFRO2dCQUM3QyxNQUFNSCxJQUFJRSxJQUFJLENBQUNDO2dCQUNmLElBQUksQ0FBQyxDQUFBLE1BQU8sQ0FBQ1AsSUFBSSxDQUFDLENBQUMsYUFBYSxFQUFFRixLQUFLO2dCQUN2QyxNQUFNTSxJQUFJSyxPQUFPLENBQUNYO1lBQ25CO1lBRUEsT0FBT0csbUJBQWMsQ0FBQ0MsT0FBTyxDQUFjZCxJQUFJRyxJQUFJLEVBQUU7Z0JBQUM7b0JBQUVPO29CQUFLSyxXQUFXO2dCQUFLO2FBQUU7UUFDaEYsRUFBRSxPQUFPTyxRQUFRO1lBQ2hCLE1BQU1DLFFBQVFDLElBQUFBLDBCQUFrQixFQUFDRjtZQUNqQyxNQUFNLElBQUlHLGtCQUFVLENBQUMsQ0FBQyxzQkFBc0IsRUFBRUYsT0FBTztRQUN0RDtJQUNEO0FBQ0QifQ==
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "TypeCheck", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return TypeCheck;
9
+ }
10
+ });
11
+ const _decorators = require("@decohere/crucible/decorators");
12
+ const _workspace = require("@decohere/workspace");
13
+ const _cli = require("@decohere/devkit/cli");
14
+ const _diagnostics = require("@decohere/devkit/diagnostics");
15
+ const _scribe = require("@decohere/scribe");
16
+ const _typescript = /*#__PURE__*/ _interop_require_default(require("typescript"));
17
+ const _errors = require("../errors.js");
18
+ const _typeemitter = require("../services/type-emitter.js");
19
+ function _interop_require_default(obj) {
20
+ return obj && obj.__esModule ? obj : {
21
+ default: obj
22
+ };
23
+ }
24
+ function _ts_decorate(decorators, target, key, desc) {
25
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
26
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
27
+ 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;
28
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
29
+ }
30
+ function _ts_metadata(k, v) {
31
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
32
+ }
33
+ class TypeCheck {
34
+ workspace;
35
+ typeEmitter;
36
+ #logger = _scribe.scribe.logger(TypeCheck.name);
37
+ constructor(workspace, typeEmitter){
38
+ this.workspace = workspace;
39
+ this.typeEmitter = typeEmitter;
40
+ }
41
+ run = async (options)=>{
42
+ const projects = this.workspace.getProjects(options.configuration);
43
+ for (const project of projects){
44
+ this.#logger.info(`Type-checking ${project.name}`);
45
+ }
46
+ const { diagnostics, formatted } = await this.typeEmitter.checkProject([
47
+ ...projects
48
+ ]);
49
+ const errors = diagnostics.filter((diagnostic)=>diagnostic.category === _typescript.default.DiagnosticCategory.Error);
50
+ if (errors.length > 0) {
51
+ throw new _errors.ForgeError(formatted || "Type check failed");
52
+ }
53
+ if (formatted.length > 0) {
54
+ this.#logger.info(formatted);
55
+ }
56
+ return _cli.ActionResponse.Success(TypeCheck.name);
57
+ };
58
+ }
59
+ TypeCheck = _ts_decorate([
60
+ _diagnostics.Trace,
61
+ (0, _decorators.injectable)(),
62
+ _ts_metadata("design:type", Function),
63
+ _ts_metadata("design:paramtypes", [
64
+ typeof _workspace.Workspace === "undefined" ? Object : _workspace.Workspace,
65
+ typeof _typeemitter.TypeEmitter === "undefined" ? Object : _typeemitter.TypeEmitter
66
+ ])
67
+ ], TypeCheck);
@@ -11,7 +11,7 @@ Object.defineProperty(exports, "Unlink", {
11
11
  const _promises = /*#__PURE__*/ _interop_require_default(require("node:fs/promises"));
12
12
  const _nodepath = /*#__PURE__*/ _interop_require_default(require("node:path"));
13
13
  const _decorators = require("@decohere/crucible/decorators");
14
- const _cli = require("@decohere/nexus/cli");
14
+ const _cli = require("@decohere/devkit/cli");
15
15
  const _scribe = require("@decohere/scribe");
16
16
  const _errors = require("../errors.js");
17
17
  const _linkaction = require("./link.action.js");
@@ -72,5 +72,3 @@ class Unlink {
72
72
  Unlink = _ts_decorate([
73
73
  (0, _decorators.injectable)()
74
74
  ], Unlink);
75
-
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9hY3Rpb25zL3VubGluay5hY3Rpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGZzIGZyb20gXCJub2RlOmZzL3Byb21pc2VzXCI7XG5pbXBvcnQgcGF0aCBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQgeyBpbmplY3RhYmxlIH0gZnJvbSBcIkBkZWNvaGVyZS9jcnVjaWJsZS9kZWNvcmF0b3JzXCI7XG5pbXBvcnQgdHlwZSB7IEFjdGlvbiB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvY2xpXCI7XG5pbXBvcnQgeyBBY3Rpb25SZXNwb25zZSB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvY2xpXCI7XG5pbXBvcnQgeyBzY3JpYmUgfSBmcm9tIFwiQGRlY29oZXJlL3NjcmliZVwiO1xuaW1wb3J0IHsgRm9yZ2VFcnJvciB9IGZyb20gXCIuLi9lcnJvcnMuanNcIjtcbmltcG9ydCB7IExJTktfTUFOSUZFU1QsIHR5cGUgTGlua01hbmlmZXN0IH0gZnJvbSBcIi4vbGluay5hY3Rpb24uanNcIjtcblxuZXhwb3J0IHR5cGUgVW5saW5rT3B0aW9ucyA9IHtcblx0dGFyZ2V0RGlyOiBzdHJpbmc7XG59O1xuXG5AaW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVW5saW5rIGltcGxlbWVudHMgQWN0aW9uPFVubGlua09wdGlvbnM+IHtcblx0I2xvZ2dlciA9IHNjcmliZS5sb2dnZXIoVW5saW5rLm5hbWUpO1xuXG5cdHB1YmxpYyBydW4gPSBhc3luYyAob3B0aW9uczogVW5saW5rT3B0aW9ucyk6IFByb21pc2U8QWN0aW9uUmVzcG9uc2U+ID0+IHtcblx0XHRjb25zdCB0YXJnZXREaXIgPSBwYXRoLnJlc29sdmUob3B0aW9ucy50YXJnZXREaXIpO1xuXHRcdGNvbnN0IG1hbmlmZXN0UGF0aCA9IHBhdGguam9pbih0YXJnZXREaXIsIExJTktfTUFOSUZFU1QpO1xuXG5cdFx0Y29uc3QgbWFuaWZlc3RTdGF0ID0gYXdhaXQgZnMuc3RhdChtYW5pZmVzdFBhdGgpLmNhdGNoKCgpID0+IG51bGwpO1xuXHRcdGlmIChtYW5pZmVzdFN0YXQgPT0gbnVsbCkge1xuXHRcdFx0dGhyb3cgbmV3IEZvcmdlRXJyb3IoYE5vIGxpbmsgbWFuaWZlc3QgZm91bmQgYXQgXCIke21hbmlmZXN0UGF0aH1cIi4gTm90aGluZyB0byB1bmxpbmsuYCk7XG5cdFx0fVxuXG5cdFx0Y29uc3QgbWFuaWZlc3Q6IExpbmtNYW5pZmVzdCA9IEpTT04ucGFyc2UoYXdhaXQgZnMucmVhZEZpbGUobWFuaWZlc3RQYXRoLCBcInV0ZjhcIikpO1xuXG5cdFx0Zm9yIChjb25zdCB7IHBhY2thZ2VOYW1lLCBzeW1saW5rUGF0aCwgb3JpZ2luYWxQYXRoIH0gb2YgbWFuaWZlc3QubGlua3MpIHtcblx0XHRcdGNvbnN0IHN0YXQgPSBhd2FpdCBmcy5sc3RhdChzeW1saW5rUGF0aCkuY2F0Y2goKCkgPT4gbnVsbCk7XG5cdFx0XHRpZiAoc3RhdD8uaXNTeW1ib2xpY0xpbmsoKSkge1xuXHRcdFx0XHRhd2FpdCBmcy51bmxpbmsoc3ltbGlua1BhdGgpO1xuXHRcdFx0XHR0aGlzLiNsb2dnZXIudHJhY2UoYFJlbW92ZWQgc3ltbGluayBmb3IgJHtwYWNrYWdlTmFtZX1gKTtcblx0XHRcdH1cblxuXHRcdFx0aWYgKG9yaWdpbmFsUGF0aCAhPSBudWxsKSB7XG5cdFx0XHRcdGNvbnN0IGJhY2t1cFN0YXQgPSBhd2FpdCBmcy5zdGF0KG9yaWdpbmFsUGF0aCkuY2F0Y2goKCkgPT4gbnVsbCk7XG5cdFx0XHRcdGlmIChiYWNrdXBTdGF0ICE9IG51bGwpIHtcblx0XHRcdFx0XHRhd2FpdCBmcy5yZW5hbWUob3JpZ2luYWxQYXRoLCBzeW1saW5rUGF0aCk7XG5cdFx0XHRcdFx0dGhpcy4jbG9nZ2VyLnRyYWNlKGBSZXN0b3JlZCBvcmlnaW5hbCBkaXIgZm9yICR7cGFja2FnZU5hbWV9YCk7XG5cdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0Ly8gb3JpZ2luYWxQYXRoIGlzIGEgc3ltbGluayB0YXJnZXQgc3RyaW5nIOKAlCByZWNyZWF0ZSB0aGUgc3ltbGlua1xuXHRcdFx0XHRcdGF3YWl0IGZzLm1rZGlyKHBhdGguZGlybmFtZShzeW1saW5rUGF0aCksIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuXHRcdFx0XHRcdGF3YWl0IGZzLnN5bWxpbmsob3JpZ2luYWxQYXRoLCBzeW1saW5rUGF0aCwgXCJkaXJcIik7XG5cdFx0XHRcdFx0dGhpcy4jbG9nZ2VyLnRyYWNlKGBSZXN0b3JlZCBvcmlnaW5hbCBzeW1saW5rIGZvciAke3BhY2thZ2VOYW1lfWApO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdHRoaXMuI2xvZ2dlci5pbmZvKGBVbmxpbmtlZCAke3BhY2thZ2VOYW1lfWApO1xuXHRcdH1cblxuXHRcdGF3YWl0IGZzLnVubGluayhtYW5pZmVzdFBhdGgpO1xuXG5cdFx0aWYgKG1hbmlmZXN0LnBlZXJOb2RlTW9kdWxlc0RpciAhPSBudWxsKSB7XG5cdFx0XHRhd2FpdCBmcy5ybShtYW5pZmVzdC5wZWVyTm9kZU1vZHVsZXNEaXIsIHsgcmVjdXJzaXZlOiB0cnVlLCBmb3JjZTogdHJ1ZSB9KTtcblx0XHRcdHRoaXMuI2xvZ2dlci5pbmZvKGBSZW1vdmVkIHBlZXIgbm9kZV9tb2R1bGVzIGF0ICR7bWFuaWZlc3QucGVlck5vZGVNb2R1bGVzRGlyfWApO1xuXHRcdH1cblxuXHRcdHJldHVybiBBY3Rpb25SZXNwb25zZS5TdWNjZXNzKFVubGluay5uYW1lKTtcblx0fTtcbn1cbiJdLCJuYW1lcyI6WyJVbmxpbmsiLCJzY3JpYmUiLCJsb2dnZXIiLCJuYW1lIiwicnVuIiwib3B0aW9ucyIsInRhcmdldERpciIsInBhdGgiLCJyZXNvbHZlIiwibWFuaWZlc3RQYXRoIiwiam9pbiIsIkxJTktfTUFOSUZFU1QiLCJtYW5pZmVzdFN0YXQiLCJmcyIsInN0YXQiLCJjYXRjaCIsIkZvcmdlRXJyb3IiLCJtYW5pZmVzdCIsIkpTT04iLCJwYXJzZSIsInJlYWRGaWxlIiwicGFja2FnZU5hbWUiLCJzeW1saW5rUGF0aCIsIm9yaWdpbmFsUGF0aCIsImxpbmtzIiwibHN0YXQiLCJpc1N5bWJvbGljTGluayIsInVubGluayIsInRyYWNlIiwiYmFja3VwU3RhdCIsInJlbmFtZSIsIm1rZGlyIiwiZGlybmFtZSIsInJlY3Vyc2l2ZSIsInN5bWxpbmsiLCJpbmZvIiwicGVlck5vZGVNb2R1bGVzRGlyIiwicm0iLCJmb3JjZSIsIkFjdGlvblJlc3BvbnNlIiwiU3VjY2VzcyJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFjYUE7OztlQUFBQTs7O2lFQWRFO2lFQUNFOzRCQUNVO3FCQUVJO3dCQUNSO3dCQUNJOzRCQUNzQjs7Ozs7Ozs7Ozs7O0FBTzFDLE1BQU1BO0lBQ1osQ0FBQSxNQUFPLEdBQUdDLGNBQU0sQ0FBQ0MsTUFBTSxDQUFDRixPQUFPRyxJQUFJLEVBQUU7SUFFOUJDLE1BQU0sT0FBT0M7UUFDbkIsTUFBTUMsWUFBWUMsaUJBQUksQ0FBQ0MsT0FBTyxDQUFDSCxRQUFRQyxTQUFTO1FBQ2hELE1BQU1HLGVBQWVGLGlCQUFJLENBQUNHLElBQUksQ0FBQ0osV0FBV0sseUJBQWE7UUFFdkQsTUFBTUMsZUFBZSxNQUFNQyxpQkFBRSxDQUFDQyxJQUFJLENBQUNMLGNBQWNNLEtBQUssQ0FBQyxJQUFNO1FBQzdELElBQUlILGdCQUFnQixNQUFNO1lBQ3pCLE1BQU0sSUFBSUksa0JBQVUsQ0FBQyxDQUFDLDJCQUEyQixFQUFFUCxhQUFhLHFCQUFxQixDQUFDO1FBQ3ZGO1FBRUEsTUFBTVEsV0FBeUJDLEtBQUtDLEtBQUssQ0FBQyxNQUFNTixpQkFBRSxDQUFDTyxRQUFRLENBQUNYLGNBQWM7UUFFMUUsS0FBSyxNQUFNLEVBQUVZLFdBQVcsRUFBRUMsV0FBVyxFQUFFQyxZQUFZLEVBQUUsSUFBSU4sU0FBU08sS0FBSyxDQUFFO1lBQ3hFLE1BQU1WLE9BQU8sTUFBTUQsaUJBQUUsQ0FBQ1ksS0FBSyxDQUFDSCxhQUFhUCxLQUFLLENBQUMsSUFBTTtZQUNyRCxJQUFJRCxNQUFNWSxrQkFBa0I7Z0JBQzNCLE1BQU1iLGlCQUFFLENBQUNjLE1BQU0sQ0FBQ0w7Z0JBQ2hCLElBQUksQ0FBQyxDQUFBLE1BQU8sQ0FBQ00sS0FBSyxDQUFDLENBQUMsb0JBQW9CLEVBQUVQLGFBQWE7WUFDeEQ7WUFFQSxJQUFJRSxnQkFBZ0IsTUFBTTtnQkFDekIsTUFBTU0sYUFBYSxNQUFNaEIsaUJBQUUsQ0FBQ0MsSUFBSSxDQUFDUyxjQUFjUixLQUFLLENBQUMsSUFBTTtnQkFDM0QsSUFBSWMsY0FBYyxNQUFNO29CQUN2QixNQUFNaEIsaUJBQUUsQ0FBQ2lCLE1BQU0sQ0FBQ1AsY0FBY0Q7b0JBQzlCLElBQUksQ0FBQyxDQUFBLE1BQU8sQ0FBQ00sS0FBSyxDQUFDLENBQUMsMEJBQTBCLEVBQUVQLGFBQWE7Z0JBQzlELE9BQU87b0JBQ04saUVBQWlFO29CQUNqRSxNQUFNUixpQkFBRSxDQUFDa0IsS0FBSyxDQUFDeEIsaUJBQUksQ0FBQ3lCLE9BQU8sQ0FBQ1YsY0FBYzt3QkFBRVcsV0FBVztvQkFBSztvQkFDNUQsTUFBTXBCLGlCQUFFLENBQUNxQixPQUFPLENBQUNYLGNBQWNELGFBQWE7b0JBQzVDLElBQUksQ0FBQyxDQUFBLE1BQU8sQ0FBQ00sS0FBSyxDQUFDLENBQUMsOEJBQThCLEVBQUVQLGFBQWE7Z0JBQ2xFO1lBQ0Q7WUFFQSxJQUFJLENBQUMsQ0FBQSxNQUFPLENBQUNjLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRWQsYUFBYTtRQUM1QztRQUVBLE1BQU1SLGlCQUFFLENBQUNjLE1BQU0sQ0FBQ2xCO1FBRWhCLElBQUlRLFNBQVNtQixrQkFBa0IsSUFBSSxNQUFNO1lBQ3hDLE1BQU12QixpQkFBRSxDQUFDd0IsRUFBRSxDQUFDcEIsU0FBU21CLGtCQUFrQixFQUFFO2dCQUFFSCxXQUFXO2dCQUFNSyxPQUFPO1lBQUs7WUFDeEUsSUFBSSxDQUFDLENBQUEsTUFBTyxDQUFDSCxJQUFJLENBQUMsQ0FBQyw2QkFBNkIsRUFBRWxCLFNBQVNtQixrQkFBa0IsRUFBRTtRQUNoRjtRQUVBLE9BQU9HLG1CQUFjLENBQUNDLE9BQU8sQ0FBQ3hDLE9BQU9HLElBQUk7SUFDMUMsRUFBRTtBQUNIIn0=
@@ -23,10 +23,10 @@ const _nodechild_process = require("node:child_process");
23
23
  const _promises = require("node:fs/promises");
24
24
  const _nodepath = require("node:path");
25
25
  const _decorators = require("@decohere/crucible/decorators");
26
- const _mesh = require("@decohere/mesh");
27
- const _cli = require("@decohere/nexus/cli");
28
- const _interop = require("@decohere/nexus/interop");
29
- const _semver = require("@decohere/nexus/semver");
26
+ const _workspace = require("@decohere/workspace");
27
+ const _cli = require("@decohere/devkit/cli");
28
+ const _interop = require("@decohere/devkit/interop");
29
+ const _index = require("../semver/index.js");
30
30
  const _scribe = require("@decohere/scribe");
31
31
  const _errors = require("../errors.js");
32
32
  function _ts_decorate(decorators, target, key, desc) {
@@ -39,7 +39,7 @@ function _ts_metadata(k, v) {
39
39
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
40
40
  }
41
41
  const DefaultChannel = "beta";
42
- const DefaultReleaseType = _semver.VersionTypes.prerelease;
42
+ const DefaultReleaseType = _index.VersionTypes.prerelease;
43
43
  const DefaultVersionOptions = {
44
44
  releaseType: DefaultReleaseType,
45
45
  channel: DefaultChannel,
@@ -63,11 +63,7 @@ class Version {
63
63
  }
64
64
  async version(workspace, options = DefaultVersionOptions) {
65
65
  const projects = workspace.getProjects("debug");
66
- const rootVersion = await this.resolveBaseVersion(workspace, options);
67
- const releaseType = options.fromChangesets ? await this.resolveReleaseTypeFromChangesets() : options.releaseType ?? DefaultReleaseType;
68
- const channel = options.channel ?? DefaultChannel;
69
- const nextVersion = this.getNextVersion(rootVersion, releaseType, channel);
70
- this.#logger.info(`${rootVersion} → ${nextVersion} [${releaseType}]`);
66
+ const nextVersion = await this.resolveNextVersion(workspace, options);
71
67
  if (options.dryRun) {
72
68
  this.#logger.info(`[dry-run] Would bump all packages to ${nextVersion} — skipping file writes`);
73
69
  return _cli.ActionResponse.Success(Version.name, [
@@ -82,11 +78,11 @@ class Version {
82
78
  ]);
83
79
  }
84
80
  await workspace.persistPackageJson((await workspace.getPackageJson()).withVersion(nextVersion.toString()));
81
+ // Standalone, the project's package.json is the root's: write it once.
82
+ const projectsToWrite = workspace.isStandalone ? [] : projects;
85
83
  const responses = await Promise.all([
86
- ...[
87
- this.updatePackageJson(workspace.name, workspace, nextVersion)
88
- ],
89
- ...projects.map((project)=>this.updatePackageJson(project.name, project, nextVersion))
84
+ this.updatePackageJson(workspace.name, workspace, nextVersion),
85
+ ...projectsToWrite.map((project)=>this.updatePackageJson(project.name, project, nextVersion))
90
86
  ]);
91
87
  const failed = responses.filter((r)=>!r.succeeded);
92
88
  if (failed.length) {
@@ -95,7 +91,7 @@ class Version {
95
91
  if (options.commit) {
96
92
  const files = [
97
93
  workspace.packageJsonPath,
98
- ...projects.map((p)=>p.packageJsonPath)
94
+ ...projectsToWrite.map((p)=>p.packageJsonPath)
99
95
  ];
100
96
  const message = options.message ?? `chore: version packages ${nextVersion}`;
101
97
  this.#logger.info(`Committing: ${message}`);
@@ -105,6 +101,65 @@ class Version {
105
101
  }
106
102
  return _cli.ActionResponse.Success(Version.name, responses);
107
103
  }
104
+ async resolveNextVersion(workspace, options) {
105
+ if (options.buildNumber != null && options.fromBuild) {
106
+ throw new _errors.ForgeError("Use --build-number or --from-build, not both");
107
+ }
108
+ if (options.buildNumber != null) {
109
+ return await this.versionFromBuildNumber(workspace, options);
110
+ }
111
+ if (options.fromBuild) {
112
+ return await this.versionFromBuild(workspace, options);
113
+ }
114
+ const rootVersion = await this.resolveBaseVersion(workspace, options);
115
+ const releaseType = options.fromChangesets ? await this.resolveReleaseTypeFromChangesets() : options.releaseType ?? DefaultReleaseType;
116
+ const channel = options.channel ?? DefaultChannel;
117
+ const nextVersion = this.getNextVersion(rootVersion, releaseType, channel);
118
+ this.#logger.info(`${rootVersion} → ${nextVersion} [${releaseType}]`);
119
+ return nextVersion;
120
+ }
121
+ async versionFromBuildNumber(workspace, options) {
122
+ const { buildNumber, channel = DefaultChannel } = options;
123
+ if (buildNumber == null || !/^[1-9]\d*$/.test(buildNumber)) {
124
+ throw new _errors.ForgeError(`--build-number must be a positive whole number: ${buildNumber}`);
125
+ }
126
+ const seconds = await new _interop.Git().getHeadCommitTime({
127
+ cwd: workspace.rootDir
128
+ });
129
+ const utcDay = new Date(seconds * 1000).toISOString().slice(0, 10).replaceAll("-", "");
130
+ const nextVersion = new _index.Semver(await workspace.getVersion()).withPrerelease(`${channel}.${utcDay}.${buildNumber}`);
131
+ this.#logger.info(`Version from build number: ${nextVersion}`);
132
+ return nextVersion;
133
+ }
134
+ async versionFromBuild(workspace, options) {
135
+ const projects = workspace.getProjects(options.configuration ?? "release");
136
+ const built = await Promise.all(projects.map(async (project)=>({
137
+ name: project.name,
138
+ version: await this.readBuiltVersion(project.getOutDir(), project.name)
139
+ })));
140
+ const versions = [
141
+ ...new Set(built.map((b)=>b.version))
142
+ ];
143
+ if (versions.length !== 1) {
144
+ throw new _errors.ForgeError(`Built packages disagree on the version: ${built.map((b)=>`${b.name}@${b.version}`).join(", ")}`);
145
+ }
146
+ this.#logger.info(`Version from the build: ${versions[0]}`);
147
+ return new _index.Semver(versions[0]);
148
+ }
149
+ async readBuiltVersion(outDir, name) {
150
+ const file = (0, _nodepath.join)(outDir, "package.json");
151
+ let text;
152
+ try {
153
+ text = await (0, _promises.readFile)(file, "utf8");
154
+ } catch (reason) {
155
+ throw new _errors.ForgeError(`No build for ${name} at ${file}: ${(0, _errors.formatUnknownError)(reason)}`);
156
+ }
157
+ const { version } = JSON.parse(text);
158
+ if (typeof version !== "string") {
159
+ throw new _errors.ForgeError(`The build of ${name} has no version: ${file}`);
160
+ }
161
+ return version;
162
+ }
108
163
  async resolveBaseVersion(workspace, options) {
109
164
  if (options.version != null && options.version.trim().length > 0) {
110
165
  return options.version.trim();
@@ -152,7 +207,7 @@ class Version {
152
207
  patch: 1,
153
208
  prerelease: 0
154
209
  };
155
- let maxType = _semver.VersionTypes.patch;
210
+ let maxType = _index.VersionTypes.patch;
156
211
  let maxPrecedence = 0;
157
212
  for (const file of files){
158
213
  const content = await (0, _promises.readFile)((0, _nodepath.join)(changesetDir, file), "utf8");
@@ -172,9 +227,9 @@ class Version {
172
227
  }
173
228
  getNextVersion(currentVersion, versionType, preid) {
174
229
  try {
175
- return new _semver.Semver(currentVersion).increment(versionType, preid);
230
+ return new _index.Semver(currentVersion).increment(versionType, preid);
176
231
  } catch (error) {
177
- if (error instanceof _semver.SemverError) {
232
+ if (error instanceof _index.SemverError) {
178
233
  throw new _errors.ForgeError(error.message);
179
234
  }
180
235
  throw error;
@@ -202,8 +257,6 @@ Version = _ts_decorate([
202
257
  (0, _decorators.injectable)(),
203
258
  _ts_metadata("design:type", Function),
204
259
  _ts_metadata("design:paramtypes", [
205
- typeof _mesh.Workspace === "undefined" ? Object : _mesh.Workspace
260
+ typeof _workspace.Workspace === "undefined" ? Object : _workspace.Workspace
206
261
  ])
207
262
  ], Version);
208
-
209
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9hY3Rpb25zL3ZlcnNpb24uYWN0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4ZWNTeW5jIH0gZnJvbSBcIm5vZGU6Y2hpbGRfcHJvY2Vzc1wiO1xuaW1wb3J0IHsgcmVhZGRpciwgcmVhZEZpbGUgfSBmcm9tIFwibm9kZTpmcy9wcm9taXNlc1wiO1xuaW1wb3J0IHsgam9pbiB9IGZyb20gXCJub2RlOnBhdGhcIjtcbmltcG9ydCB7IGluamVjdGFibGUgfSBmcm9tIFwiQGRlY29oZXJlL2NydWNpYmxlL2RlY29yYXRvcnNcIjtcbmltcG9ydCB0eXBlIHsgSGFzUGFja2FnZUpzb24gfSBmcm9tIFwiQGRlY29oZXJlL21lc2hcIjtcbi8vIGJpb21lLWlnbm9yZSBsaW50L3N0eWxlL3VzZUltcG9ydFR5cGU6IDxEST5cbmltcG9ydCB7IFdvcmtzcGFjZSB9IGZyb20gXCJAZGVjb2hlcmUvbWVzaFwiO1xuaW1wb3J0IHR5cGUgeyBBY3Rpb24sIFJlc3VsdFN0YXR1cyB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvY2xpXCI7XG5pbXBvcnQgeyBBY3Rpb25SZXNwb25zZSB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvY2xpXCI7XG5pbXBvcnQgeyBHaXQgfSBmcm9tIFwiQGRlY29oZXJlL25leHVzL2ludGVyb3BcIjtcbmltcG9ydCB7IFNlbXZlciwgU2VtdmVyRXJyb3IsIHR5cGUgVmVyc2lvblR5cGUsIFZlcnNpb25UeXBlcyB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvc2VtdmVyXCI7XG5pbXBvcnQgeyBzY3JpYmUgfSBmcm9tIFwiQGRlY29oZXJlL3NjcmliZVwiO1xuaW1wb3J0IHsgRm9yZ2VFcnJvciwgZm9ybWF0VW5rbm93bkVycm9yIH0gZnJvbSBcIi4uL2Vycm9ycy5qc1wiO1xuXG5leHBvcnQgdHlwZSBWZXJzaW9uUmVzcG9uc2UgPSBSZXN1bHRTdGF0dXMgJiB7XG5cdG5hbWU6IHN0cmluZztcbn07XG5cbmV4cG9ydCBjb25zdCBEZWZhdWx0Q2hhbm5lbCA9IFwiYmV0YVwiO1xuZXhwb3J0IGNvbnN0IERlZmF1bHRSZWxlYXNlVHlwZSA9IFZlcnNpb25UeXBlcy5wcmVyZWxlYXNlO1xuXG5leHBvcnQgdHlwZSBWZXJzaW9uT3B0aW9ucyA9IHtcblx0cmVsZWFzZVR5cGU/OiBWZXJzaW9uVHlwZTtcblx0Y2hhbm5lbD86IHN0cmluZztcblx0dmVyc2lvbj86IHN0cmluZztcblx0ZHJ5UnVuPzogYm9vbGVhbjtcblx0Y29tbWl0PzogYm9vbGVhbjtcblx0bWVzc2FnZT86IHN0cmluZztcblx0LyoqIFJlYWQgcGVuZGluZyAuY2hhbmdlc2V0IGVudHJpZXMgdG8gZGV0ZXJtaW5lIHRoZSBoaWdoZXN0IGJ1bXAgdHlwZSAqL1xuXHRmcm9tQ2hhbmdlc2V0cz86IGJvb2xlYW47XG59O1xuXG5jb25zdCBEZWZhdWx0VmVyc2lvbk9wdGlvbnM6IFZlcnNpb25PcHRpb25zID0ge1xuXHRyZWxlYXNlVHlwZTogRGVmYXVsdFJlbGVhc2VUeXBlLFxuXHRjaGFubmVsOiBEZWZhdWx0Q2hhbm5lbCxcblx0ZHJ5UnVuOiBmYWxzZSxcbn07XG5cbkBpbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBWZXJzaW9uIGltcGxlbWVudHMgQWN0aW9uPFZlcnNpb25PcHRpb25zPiB7XG5cdCNsb2dnZXIgPSBzY3JpYmUubG9nZ2VyKFZlcnNpb24ubmFtZSk7XG5cdHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHdvcmtzcGFjZTogV29ya3NwYWNlKSB7fVxuXHRwdWJsaWMgYXN5bmMgcnVuKG9wdGlvbnM6IFZlcnNpb25PcHRpb25zKTogUHJvbWlzZTxBY3Rpb25SZXNwb25zZT4ge1xuXHRcdGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy52ZXJzaW9uKHRoaXMud29ya3NwYWNlLCBvcHRpb25zKTtcblx0XHRjb25zdCBtZXNzYWdlcyA9IHJlc3BvbnNlLmRhdGFcblx0XHRcdC5mbGF0TWFwKChkKSA9PiAoIWQuc3VjY2VlZGVkICYmIGQuZXJyb3IgPyBbZC5lcnJvcl0gOiBbXSkpXG5cdFx0XHQuam9pbihcIlxcblwiKTtcblx0XHRpZiAobWVzc2FnZXMpIHtcblx0XHRcdHRocm93IG5ldyBGb3JnZUVycm9yKGBUaGVyZSB3YXMgYW4gZXJyb3IgdmVyc2lvbmluZyB0aGUgd29ya3NwYWNlICR7bWVzc2FnZXN9YCk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHJlc3BvbnNlO1xuXHR9XG5cblx0cHVibGljIGFzeW5jIHZlcnNpb24oXG5cdFx0d29ya3NwYWNlOiBXb3Jrc3BhY2UsXG5cdFx0b3B0aW9uczogVmVyc2lvbk9wdGlvbnMgPSBEZWZhdWx0VmVyc2lvbk9wdGlvbnMsXG5cdCk6IFByb21pc2U8QWN0aW9uUmVzcG9uc2U8VmVyc2lvblJlc3BvbnNlPj4ge1xuXHRcdGNvbnN0IHByb2plY3RzID0gd29ya3NwYWNlLmdldFByb2plY3RzKFwiZGVidWdcIik7XG5cdFx0Y29uc3Qgcm9vdFZlcnNpb24gPSBhd2FpdCB0aGlzLnJlc29sdmVCYXNlVmVyc2lvbih3b3Jrc3BhY2UsIG9wdGlvbnMpO1xuXHRcdGNvbnN0IHJlbGVhc2VUeXBlID0gb3B0aW9ucy5mcm9tQ2hhbmdlc2V0c1xuXHRcdFx0PyBhd2FpdCB0aGlzLnJlc29sdmVSZWxlYXNlVHlwZUZyb21DaGFuZ2VzZXRzKClcblx0XHRcdDogKG9wdGlvbnMucmVsZWFzZVR5cGUgPz8gRGVmYXVsdFJlbGVhc2VUeXBlKTtcblx0XHRjb25zdCBjaGFubmVsID0gb3B0aW9ucy5jaGFubmVsID8/IERlZmF1bHRDaGFubmVsO1xuXHRcdGNvbnN0IG5leHRWZXJzaW9uID0gdGhpcy5nZXROZXh0VmVyc2lvbihyb290VmVyc2lvbiwgcmVsZWFzZVR5cGUsIGNoYW5uZWwpO1xuXHRcdHRoaXMuI2xvZ2dlci5pbmZvKGAke3Jvb3RWZXJzaW9ufSDihpIgJHtuZXh0VmVyc2lvbn0gWyR7cmVsZWFzZVR5cGV9XWApO1xuXG5cdFx0aWYgKG9wdGlvbnMuZHJ5UnVuKSB7XG5cdFx0XHR0aGlzLiNsb2dnZXIuaW5mbyhcblx0XHRcdFx0YFtkcnktcnVuXSBXb3VsZCBidW1wIGFsbCBwYWNrYWdlcyB0byAke25leHRWZXJzaW9ufSDigJQgc2tpcHBpbmcgZmlsZSB3cml0ZXNgLFxuXHRcdFx0KTtcblx0XHRcdHJldHVybiBBY3Rpb25SZXNwb25zZS5TdWNjZXNzKFZlcnNpb24ubmFtZSwgW1xuXHRcdFx0XHR7IG5hbWU6IHdvcmtzcGFjZS5uYW1lLCBzdWNjZWVkZWQ6IHRydWUgfSxcblx0XHRcdFx0Li4ucHJvamVjdHMubWFwKChwKSA9PiAoeyBuYW1lOiBwLm5hbWUsIHN1Y2NlZWRlZDogdHJ1ZSB9KSksXG5cdFx0XHRdKTtcblx0XHR9XG5cblx0XHRhd2FpdCB3b3Jrc3BhY2UucGVyc2lzdFBhY2thZ2VKc29uKFxuXHRcdFx0KGF3YWl0IHdvcmtzcGFjZS5nZXRQYWNrYWdlSnNvbigpKS53aXRoVmVyc2lvbihuZXh0VmVyc2lvbi50b1N0cmluZygpKSxcblx0XHQpO1xuXG5cdFx0Y29uc3QgcmVzcG9uc2VzID0gYXdhaXQgUHJvbWlzZS5hbGwoW1xuXHRcdFx0Li4uW3RoaXMudXBkYXRlUGFja2FnZUpzb24od29ya3NwYWNlLm5hbWUsIHdvcmtzcGFjZSwgbmV4dFZlcnNpb24pXSxcblx0XHRcdC4uLnByb2plY3RzLm1hcCgocHJvamVjdCkgPT4gdGhpcy51cGRhdGVQYWNrYWdlSnNvbihwcm9qZWN0Lm5hbWUsIHByb2plY3QsIG5leHRWZXJzaW9uKSksXG5cdFx0XSk7XG5cdFx0Y29uc3QgZmFpbGVkID0gcmVzcG9uc2VzLmZpbHRlcigocikgPT4gIXIuc3VjY2VlZGVkKTtcblx0XHRpZiAoZmFpbGVkLmxlbmd0aCkge1xuXHRcdFx0cmV0dXJuIEFjdGlvblJlc3BvbnNlLkVycm9yKFZlcnNpb24ubmFtZSwgcmVzcG9uc2VzKTtcblx0XHR9XG5cblx0XHRpZiAob3B0aW9ucy5jb21taXQpIHtcblx0XHRcdGNvbnN0IGZpbGVzID0gW3dvcmtzcGFjZS5wYWNrYWdlSnNvblBhdGgsIC4uLnByb2plY3RzLm1hcCgocCkgPT4gcC5wYWNrYWdlSnNvblBhdGgpXTtcblx0XHRcdGNvbnN0IG1lc3NhZ2UgPSBvcHRpb25zLm1lc3NhZ2UgPz8gYGNob3JlOiB2ZXJzaW9uIHBhY2thZ2VzICR7bmV4dFZlcnNpb259YDtcblx0XHRcdHRoaXMuI2xvZ2dlci5pbmZvKGBDb21taXR0aW5nOiAke21lc3NhZ2V9YCk7XG5cdFx0XHRhd2FpdCBuZXcgR2l0KCkuY29tbWl0KG1lc3NhZ2UsIHsgZmlsZXMgfSk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIEFjdGlvblJlc3BvbnNlLlN1Y2Nlc3MoVmVyc2lvbi5uYW1lLCByZXNwb25zZXMpO1xuXHR9XG5cblx0cHJpdmF0ZSBhc3luYyByZXNvbHZlQmFzZVZlcnNpb24oXG5cdFx0d29ya3NwYWNlOiBXb3Jrc3BhY2UsXG5cdFx0b3B0aW9uczogVmVyc2lvbk9wdGlvbnMsXG5cdCk6IFByb21pc2U8c3RyaW5nPiB7XG5cdFx0aWYgKG9wdGlvbnMudmVyc2lvbiAhPSBudWxsICYmIG9wdGlvbnMudmVyc2lvbi50cmltKCkubGVuZ3RoID4gMCkge1xuXHRcdFx0cmV0dXJuIG9wdGlvbnMudmVyc2lvbi50cmltKCk7XG5cdFx0fVxuXG5cdFx0Y29uc3QgZ2l0VGFnVmVyc2lvbiA9IHRoaXMucmVzb2x2ZVZlcnNpb25Gcm9tR2l0VGFnKCk7XG5cdFx0aWYgKGdpdFRhZ1ZlcnNpb24gIT0gbnVsbCkge1xuXHRcdFx0dGhpcy4jbG9nZ2VyLmluZm8oYFVzaW5nIGxhdGVzdCBnaXQgdGFnIHZlcnNpb24gYXMgYmFzZTogJHtnaXRUYWdWZXJzaW9ufWApO1xuXHRcdFx0cmV0dXJuIGdpdFRhZ1ZlcnNpb247XG5cdFx0fVxuXG5cdFx0Y29uc3Qgd29ya3NwYWNlVmVyc2lvbiA9IGF3YWl0IHdvcmtzcGFjZS5nZXRWZXJzaW9uKCk7XG5cdFx0dGhpcy4jbG9nZ2VyLmluZm8oXG5cdFx0XHRgTm8gc2VtdmVyIGdpdCB0YWdzIGZvdW5kLCBmYWxsaW5nIGJhY2sgdG8gd29ya3NwYWNlIHBhY2thZ2UuanNvbiB2ZXJzaW9uOiAke3dvcmtzcGFjZVZlcnNpb259YCxcblx0XHQpO1xuXHRcdHJldHVybiB3b3Jrc3BhY2VWZXJzaW9uO1xuXHR9XG5cblx0cHJpdmF0ZSByZXNvbHZlVmVyc2lvbkZyb21HaXRUYWcoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcblx0XHR0cnkge1xuXHRcdFx0Y29uc3QgdGFncyA9IGV4ZWNTeW5jKCdnaXQgdGFnIC0tbGlzdCBcInYqXCIgLS1zb3J0PS12ZXJzaW9uOnJlZm5hbWUnLCB7XG5cdFx0XHRcdGVuY29kaW5nOiBcInV0ZjhcIixcblx0XHRcdH0pXG5cdFx0XHRcdC50cmltKClcblx0XHRcdFx0LnNwbGl0KFwiXFxuXCIpXG5cdFx0XHRcdC5maWx0ZXIoQm9vbGVhbik7XG5cblx0XHRcdGlmICh0YWdzLmxlbmd0aCA9PT0gMCkge1xuXHRcdFx0XHRyZXR1cm4gdW5kZWZpbmVkO1xuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4gdGFnc1swXS5yZXBsYWNlKC9edi8sIFwiXCIpO1xuXHRcdH0gY2F0Y2gge1xuXHRcdFx0cmV0dXJuIHVuZGVmaW5lZDtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogUmVhZHMgYWxsIHBlbmRpbmcgLmNoYW5nZXNldC8qLm1kIGVudHJpZXMgYW5kIHJldHVybnMgdGhlIGhpZ2hlc3QgYnVtcCB0eXBlXG5cdCAqIGZvdW5kIGFjcm9zcyBhbGwgb2YgdGhlbS4gUHJlY2VkZW5jZTogbWFqb3IgPiBtaW5vciA+IHBhdGNoLlxuXHQgKi9cblx0cHJpdmF0ZSBhc3luYyByZXNvbHZlUmVsZWFzZVR5cGVGcm9tQ2hhbmdlc2V0cygpOiBQcm9taXNlPFZlcnNpb25UeXBlPiB7XG5cdFx0Y29uc3QgY2hhbmdlc2V0RGlyID0gam9pbihwcm9jZXNzLmN3ZCgpLCBcIi5jaGFuZ2VzZXRcIik7XG5cdFx0bGV0IGVudHJpZXM6IHN0cmluZ1tdO1xuXHRcdHRyeSB7XG5cdFx0XHRlbnRyaWVzID0gYXdhaXQgcmVhZGRpcihjaGFuZ2VzZXREaXIpO1xuXHRcdH0gY2F0Y2gge1xuXHRcdFx0dGhyb3cgbmV3IEZvcmdlRXJyb3IoXG5cdFx0XHRcdFwiTm8gLmNoYW5nZXNldCBkaXJlY3RvcnkgZm91bmQuIFJ1biBgcG5wbSBjaGFuZ2VzZXRgIHRvIGNyZWF0ZSBhbiBlbnRyeS5cIixcblx0XHRcdCk7XG5cdFx0fVxuXG5cdFx0Y29uc3QgZmlsZXMgPSBlbnRyaWVzLmZpbHRlcigoZSkgPT4gZS5lbmRzV2l0aChcIi5tZFwiKSAmJiBlICE9PSBcIlJFQURNRS5tZFwiKTtcblx0XHRpZiAoZmlsZXMubGVuZ3RoID09PSAwKSB7XG5cdFx0XHR0aHJvdyBuZXcgRm9yZ2VFcnJvcihcblx0XHRcdFx0XCJObyBwZW5kaW5nIGNoYW5nZXNldCBlbnRyaWVzIGZvdW5kIGluIC5jaGFuZ2VzZXQvLiBSdW4gYHBucG0gY2hhbmdlc2V0YCB0byBjcmVhdGUgb25lLlwiLFxuXHRcdFx0KTtcblx0XHR9XG5cblx0XHRjb25zdCBwcmVjZWRlbmNlOiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+ID0geyBtYWpvcjogMywgbWlub3I6IDIsIHBhdGNoOiAxLCBwcmVyZWxlYXNlOiAwIH07XG5cdFx0bGV0IG1heFR5cGU6IFZlcnNpb25UeXBlID0gVmVyc2lvblR5cGVzLnBhdGNoO1xuXHRcdGxldCBtYXhQcmVjZWRlbmNlID0gMDtcblxuXHRcdGZvciAoY29uc3QgZmlsZSBvZiBmaWxlcykge1xuXHRcdFx0Y29uc3QgY29udGVudCA9IGF3YWl0IHJlYWRGaWxlKGpvaW4oY2hhbmdlc2V0RGlyLCBmaWxlKSwgXCJ1dGY4XCIpO1xuXHRcdFx0Y29uc3QgbWF0Y2ggPSBjb250ZW50Lm1hdGNoKC9eLS0tXFxuKFtcXHNcXFNdKj8pXFxuLS0tLyk7XG5cdFx0XHRpZiAoIW1hdGNoKSBjb250aW51ZTtcblx0XHRcdGZvciAoY29uc3QgbGluZSBvZiBtYXRjaFsxXS5zcGxpdChcIlxcblwiKSkge1xuXHRcdFx0XHRjb25zdCBidW1wVHlwZSA9IGxpbmUubWF0Y2goL15cIlteXCJdK1wiXFxzKjpcXHMqKFxcdyspLyk/LlsxXSBhcyBWZXJzaW9uVHlwZSB8IHVuZGVmaW5lZDtcblx0XHRcdFx0Y29uc3QgcCA9IGJ1bXBUeXBlICE9IG51bGwgPyAocHJlY2VkZW5jZVtidW1wVHlwZV0gPz8gLTEpIDogLTE7XG5cdFx0XHRcdGlmIChwID4gbWF4UHJlY2VkZW5jZSkge1xuXHRcdFx0XHRcdG1heFR5cGUgPSBidW1wVHlwZSBhcyBWZXJzaW9uVHlwZTtcblx0XHRcdFx0XHRtYXhQcmVjZWRlbmNlID0gcDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHRoaXMuI2xvZ2dlci5pbmZvKGBSZXNvbHZlZCByZWxlYXNlIHR5cGUgZnJvbSAke2ZpbGVzLmxlbmd0aH0gY2hhbmdlc2V0KHMpOiAke21heFR5cGV9YCk7XG5cdFx0cmV0dXJuIG1heFR5cGU7XG5cdH1cblxuXHRwcml2YXRlIGdldE5leHRWZXJzaW9uKFxuXHRcdGN1cnJlbnRWZXJzaW9uOiBzdHJpbmcsXG5cdFx0dmVyc2lvblR5cGU6IFZlcnNpb25UeXBlLFxuXHRcdHByZWlkOiBzdHJpbmcsXG5cdCk6IFNlbXZlciB7XG5cdFx0dHJ5IHtcblx0XHRcdHJldHVybiBuZXcgU2VtdmVyKGN1cnJlbnRWZXJzaW9uKS5pbmNyZW1lbnQodmVyc2lvblR5cGUsIHByZWlkKTtcblx0XHR9IGNhdGNoIChlcnJvcikge1xuXHRcdFx0aWYgKGVycm9yIGluc3RhbmNlb2YgU2VtdmVyRXJyb3IpIHtcblx0XHRcdFx0dGhyb3cgbmV3IEZvcmdlRXJyb3IoZXJyb3IubWVzc2FnZSk7XG5cdFx0XHR9XG5cblx0XHRcdHRocm93IGVycm9yO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgYXN5bmMgdXBkYXRlUGFja2FnZUpzb24oXG5cdFx0bmFtZTogc3RyaW5nLFxuXHRcdGhhc0pzb246IEhhc1BhY2thZ2VKc29uLFxuXHRcdHZlcnNpb246IFNlbXZlcixcblx0KTogUHJvbWlzZTxWZXJzaW9uUmVzcG9uc2U+IHtcblx0XHR0cnkge1xuXHRcdFx0Y29uc3QgcGFja2FnZUpzb24gPSBhd2FpdCBoYXNKc29uLmdldFBhY2thZ2VKc29uKCk7XG5cdFx0XHRhd2FpdCBoYXNKc29uLnBlcnNpc3RQYWNrYWdlSnNvbihwYWNrYWdlSnNvbi53aXRoVmVyc2lvbih2ZXJzaW9uLnRvU3RyaW5nKCkpKTtcblx0XHRcdHRoaXMuI2xvZ2dlci50cmFjZShuYW1lKTtcblx0XHRcdHJldHVybiB7XG5cdFx0XHRcdG5hbWUsXG5cdFx0XHRcdHN1Y2NlZWRlZDogdHJ1ZSxcblx0XHRcdH07XG5cdFx0fSBjYXRjaCAocmVhc29uKSB7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRuYW1lLFxuXHRcdFx0XHRzdWNjZWVkZWQ6IGZhbHNlLFxuXHRcdFx0XHRlcnJvcjogYCR7bmFtZX06ICR7Zm9ybWF0VW5rbm93bkVycm9yKHJlYXNvbil9YCxcblx0XHRcdH07XG5cdFx0fVxuXHR9XG59XG4iXSwibmFtZXMiOlsiRGVmYXVsdENoYW5uZWwiLCJEZWZhdWx0UmVsZWFzZVR5cGUiLCJWZXJzaW9uIiwiVmVyc2lvblR5cGVzIiwicHJlcmVsZWFzZSIsIkRlZmF1bHRWZXJzaW9uT3B0aW9ucyIsInJlbGVhc2VUeXBlIiwiY2hhbm5lbCIsImRyeVJ1biIsInNjcmliZSIsImxvZ2dlciIsIm5hbWUiLCJ3b3Jrc3BhY2UiLCJydW4iLCJvcHRpb25zIiwicmVzcG9uc2UiLCJ2ZXJzaW9uIiwibWVzc2FnZXMiLCJkYXRhIiwiZmxhdE1hcCIsImQiLCJzdWNjZWVkZWQiLCJlcnJvciIsImpvaW4iLCJGb3JnZUVycm9yIiwicHJvamVjdHMiLCJnZXRQcm9qZWN0cyIsInJvb3RWZXJzaW9uIiwicmVzb2x2ZUJhc2VWZXJzaW9uIiwiZnJvbUNoYW5nZXNldHMiLCJyZXNvbHZlUmVsZWFzZVR5cGVGcm9tQ2hhbmdlc2V0cyIsIm5leHRWZXJzaW9uIiwiZ2V0TmV4dFZlcnNpb24iLCJpbmZvIiwiQWN0aW9uUmVzcG9uc2UiLCJTdWNjZXNzIiwibWFwIiwicCIsInBlcnNpc3RQYWNrYWdlSnNvbiIsImdldFBhY2thZ2VKc29uIiwid2l0aFZlcnNpb24iLCJ0b1N0cmluZyIsInJlc3BvbnNlcyIsIlByb21pc2UiLCJhbGwiLCJ1cGRhdGVQYWNrYWdlSnNvbiIsInByb2plY3QiLCJmYWlsZWQiLCJmaWx0ZXIiLCJyIiwibGVuZ3RoIiwiRXJyb3IiLCJjb21taXQiLCJmaWxlcyIsInBhY2thZ2VKc29uUGF0aCIsIm1lc3NhZ2UiLCJHaXQiLCJ0cmltIiwiZ2l0VGFnVmVyc2lvbiIsInJlc29sdmVWZXJzaW9uRnJvbUdpdFRhZyIsIndvcmtzcGFjZVZlcnNpb24iLCJnZXRWZXJzaW9uIiwidGFncyIsImV4ZWNTeW5jIiwiZW5jb2RpbmciLCJzcGxpdCIsIkJvb2xlYW4iLCJ1bmRlZmluZWQiLCJyZXBsYWNlIiwiY2hhbmdlc2V0RGlyIiwicHJvY2VzcyIsImN3ZCIsImVudHJpZXMiLCJyZWFkZGlyIiwiZSIsImVuZHNXaXRoIiwicHJlY2VkZW5jZSIsIm1ham9yIiwibWlub3IiLCJwYXRjaCIsIm1heFR5cGUiLCJtYXhQcmVjZWRlbmNlIiwiZmlsZSIsImNvbnRlbnQiLCJyZWFkRmlsZSIsIm1hdGNoIiwibGluZSIsImJ1bXBUeXBlIiwiY3VycmVudFZlcnNpb24iLCJ2ZXJzaW9uVHlwZSIsInByZWlkIiwiU2VtdmVyIiwiaW5jcmVtZW50IiwiU2VtdmVyRXJyb3IiLCJoYXNKc29uIiwicGFja2FnZUpzb24iLCJ0cmFjZSIsInJlYXNvbiIsImZvcm1hdFVua25vd25FcnJvciJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7UUFrQmFBO2VBQUFBOztRQUNBQztlQUFBQTs7UUFvQkFDO2VBQUFBOzs7bUNBdkNZOzBCQUNTOzBCQUNiOzRCQUNNO3NCQUdEO3FCQUVLO3lCQUNYO3dCQUNnRDt3QkFDN0M7d0JBQ3dCOzs7Ozs7Ozs7O0FBTXhDLE1BQU1GLGlCQUFpQjtBQUN2QixNQUFNQyxxQkFBcUJF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
@@ -9,8 +9,8 @@ Object.defineProperty(exports, "Watch", {
9
9
  }
10
10
  });
11
11
  const _decorators = require("@decohere/crucible/decorators");
12
- const _mesh = require("@decohere/mesh");
13
- const _cli = require("@decohere/nexus/cli");
12
+ const _workspace = require("@decohere/workspace");
13
+ const _cli = require("@decohere/devkit/cli");
14
14
  const _scribe = require("@decohere/scribe");
15
15
  function _ts_decorate(decorators, target, key, desc) {
16
16
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -44,8 +44,6 @@ Watch = _ts_decorate([
44
44
  (0, _decorators.injectable)(),
45
45
  _ts_metadata("design:type", Function),
46
46
  _ts_metadata("design:paramtypes", [
47
- typeof _mesh.Workspace === "undefined" ? Object : _mesh.Workspace
47
+ typeof _workspace.Workspace === "undefined" ? Object : _workspace.Workspace
48
48
  ])
49
49
  ], Watch);
50
-
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9hY3Rpb25zL3dhdGNoLmFjdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3RhYmxlIH0gZnJvbSBcIkBkZWNvaGVyZS9jcnVjaWJsZS9kZWNvcmF0b3JzXCI7XG4vLyBiaW9tZS1pZ25vcmUgbGludC9zdHlsZS91c2VJbXBvcnRUeXBlOiA8REk+XG5pbXBvcnQgeyBXb3Jrc3BhY2UgfSBmcm9tIFwiQGRlY29oZXJlL21lc2hcIjtcbmltcG9ydCB0eXBlIHsgQWN0aW9uIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9jbGlcIjtcbmltcG9ydCB7IEFjdGlvblJlc3BvbnNlIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9jbGlcIjtcbmltcG9ydCB7IHNjcmliZSB9IGZyb20gXCJAZGVjb2hlcmUvc2NyaWJlXCI7XG5cbmV4cG9ydCB0eXBlIFdhdGNoT3B0aW9ucyA9IHtcblx0d2F0Y2g6IGJvb2xlYW47XG5cdGNvbmZpZ3VyYXRpb246IHN0cmluZztcbn07XG5cbkBpbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBXYXRjaCBpbXBsZW1lbnRzIEFjdGlvbjxXYXRjaE9wdGlvbnM+IHtcblx0I2xvZ2dlciA9IHNjcmliZS5sb2dnZXIoV2F0Y2gubmFtZSk7XG5cdHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHdvcmtzcGFjZTogV29ya3NwYWNlKSB7fVxuXG5cdHB1YmxpYyBydW4gPSBhc3luYyAob3B0aW9uczogV2F0Y2hPcHRpb25zKTogUHJvbWlzZTxBY3Rpb25SZXNwb25zZT4gPT4ge1xuXHRcdGlmICghb3B0aW9ucy53YXRjaCkge1xuXHRcdFx0dGhpcy4jbG9nZ2VyLmluZm8oYFNraXBwaW5nICR7V2F0Y2gubmFtZX1gKTtcblx0XHRcdHJldHVybiBBY3Rpb25SZXNwb25zZS5Ta2lwcGVkKFdhdGNoLm5hbWUpO1xuXHRcdH1cblxuXHRcdGF3YWl0IHRoaXMud29ya3NwYWNlLndhdGNoKG9wdGlvbnMuY29uZmlndXJhdGlvbik7XG5cdFx0dGhpcy4jbG9nZ2VyLmluZm8oYFN0YXJ0aW5nIHdhdGNoYCk7XG5cdFx0cmV0dXJuIEFjdGlvblJlc3BvbnNlLkJsb2NraW5nKFdhdGNoLm5hbWUpO1xuXHR9O1xuXG5cdHB1YmxpYyBbU3ltYm9sLmRpc3Bvc2VdKCkge1xuXHRcdHRoaXMud29ya3NwYWNlLnN0b3BXYXRjaGluZygpO1xuXHR9XG59XG4iXSwibmFtZXMiOlsiV2F0Y2giLCJzY3JpYmUiLCJsb2dnZXIiLCJuYW1lIiwid29ya3NwYWNlIiwicnVuIiwib3B0aW9ucyIsIndhdGNoIiwiaW5mbyIsIkFjdGlvblJlc3BvbnNlIiwiU2tpcHBlZCIsImNvbmZpZ3VyYXRpb24iLCJCbG9ja2luZyIsIlN5bWJvbCIsImRpc3Bvc2UiLCJzdG9wV2F0Y2hpbmciXSwibWFwcGluZ3MiOiI7Ozs7K0JBYWFBOzs7ZUFBQUE7Ozs0QkFiYztzQkFFRDtxQkFFSzt3QkFDUjs7Ozs7Ozs7OztBQVFoQixNQUFNQTs7SUFDWixDQUFBLE1BQU8sR0FBR0MsY0FBTSxDQUFDQyxNQUFNLENBQUNGLE1BQU1HLElBQUksRUFBRTtJQUNwQyxZQUFtQixBQUFpQkMsU0FBb0IsQ0FBRTthQUF0QkEsWUFBQUE7SUFBdUI7SUFFcERDLE1BQU0sT0FBT0M7UUFDbkIsSUFBSSxDQUFDQSxRQUFRQyxLQUFLLEVBQUU7WUFDbkIsSUFBSSxDQUFDLENBQUEsTUFBTyxDQUFDQyxJQUFJLENBQUMsQ0FBQyxTQUFTLEVBQUVSLE1BQU1HLElBQUksRUFBRTtZQUMxQyxPQUFPTSxtQkFBYyxDQUFDQyxPQUFPLENBQUNWLE1BQU1HLElBQUk7UUFDekM7UUFFQSxNQUFNLElBQUksQ0FBQ0MsU0FBUyxDQUFDRyxLQUFLLENBQUNELFFBQVFLLGFBQWE7UUFDaEQsSUFBSSxDQUFDLENBQUEsTUFBTyxDQUFDSCxJQUFJLENBQUMsQ0FBQyxjQUFjLENBQUM7UUFDbEMsT0FBT0MsbUJBQWMsQ0FBQ0csUUFBUSxDQUFDWixNQUFNRyxJQUFJO0lBQzFDLEVBQUU7SUFFSyxDQUFDVSxPQUFPQyxPQUFPLENBQUMsR0FBRztRQUN6QixJQUFJLENBQUNWLFNBQVMsQ0FBQ1csWUFBWTtJQUM1QjtBQUNEIn0=
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "BuildCommand", {
8
8
  return BuildCommand;
9
9
  }
10
10
  });
11
- const _cli = require("@decohere/nexus/cli");
11
+ const _cli = require("@decohere/devkit/cli");
12
12
  const _auto = /*#__PURE__*/ _interop_require_default(require("async/auto.js"));
13
13
  function _interop_require_default(obj) {
14
14
  return obj && obj.__esModule ? obj : {
@@ -25,6 +25,9 @@ class BuildCommand extends _cli.DecohereCommand {
25
25
  this.option("--watch", "Watches for changes in the source dir", false);
26
26
  this.option("--file <file>", "File to build");
27
27
  }
28
+ runsUntilStopped(options) {
29
+ return options.watch === true;
30
+ }
28
31
  run = async (actions, options)=>{
29
32
  const responses = await (0, _auto.default)({
30
33
  clean: async ()=>await actions.clean.run(options),
@@ -45,5 +48,3 @@ class BuildCommand extends _cli.DecohereCommand {
45
48
  return _cli.CommandResponse.success(options, responses);
46
49
  };
47
50
  }
48
-
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9jb21tYW5kcy9idWlsZC5jb21tYW5kLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTWVyZ2VPcHRpb25zIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9jbGlcIjtcbmltcG9ydCB7XG5cdENvbW1hbmRSZXNwb25zZSxcblx0Q29uZmlndXJhdGlvbk9wdGlvbixcblx0RGVjb2hlcmVDb21tYW5kLFxuXHROb0NsZWFuT3B0aW9ucyxcbn0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9jbGlcIjtcbmltcG9ydCBhdXRvIGZyb20gXCJhc3luYy9hdXRvLmpzXCI7XG5pbXBvcnQgdHlwZSB7IEJ1aWxkIH0gZnJvbSBcIi4uL2FjdGlvbnMvYnVpbGQuYWN0aW9uLmpzXCI7XG5pbXBvcnQgdHlwZSB7IENsZWFuIH0gZnJvbSBcIi4uL2FjdGlvbnMvY2xlYW4uYWN0aW9uLmpzXCI7XG5pbXBvcnQgdHlwZSB7IENvcHkgfSBmcm9tIFwiLi4vYWN0aW9ucy9jb3B5LmFjdGlvbi5qc1wiO1xuaW1wb3J0IHR5cGUgeyBXYXRjaCB9IGZyb20gXCIuLi9hY3Rpb25zL3dhdGNoLmFjdGlvbi5qc1wiO1xuXG5leHBvcnQgdHlwZSBCdWlsZEFjdGlvbnMgPSB7IGNsZWFuOiBDbGVhbjsgYnVpbGQ6IEJ1aWxkOyB3YXRjaDogV2F0Y2g7IGNvcHk6IENvcHkgfTtcbmV4cG9ydCBjbGFzcyBCdWlsZENvbW1hbmQgZXh0ZW5kcyBEZWNvaGVyZUNvbW1hbmQ8QnVpbGRBY3Rpb25zPiB7XG5cdHB1YmxpYyBjb25zdHJ1Y3RvcihuYW1lPzogc3RyaW5nKSB7XG5cdFx0c3VwZXIobmFtZSA/PyBCdWlsZENvbW1hbmQubmFtZSk7XG5cdFx0dGhpcy5kZXNjcmlwdGlvbihcIkJ1aWxkIHdvcmtzcGFjZSBwcm9qZWN0c1wiKTtcblx0XHR0aGlzLmFkZE9wdGlvbihuZXcgQ29uZmlndXJhdGlvbk9wdGlvbihcImRlYnVnXCIpKTtcblx0XHR0aGlzLmFkZE9wdGlvbihuZXcgTm9DbGVhbk9wdGlvbnModHJ1ZSkpO1xuXHRcdHRoaXMub3B0aW9uKFwiLS1uby1jb3B5XCIsIFwiV2lsbCBub3QgY29weSBmaWxlcyBsaWtlIHBhY2thZ2UuanNvbiB0byBvdXRkaXJcIiwgdHJ1ZSk7XG5cdFx0dGhpcy5vcHRpb24oXCItLXdhdGNoXCIsIFwiV2F0Y2hlcyBmb3IgY2hhbmdlcyBpbiB0aGUgc291cmNlIGRpclwiLCBmYWxzZSk7XG5cdFx0dGhpcy5vcHRpb24oXCItLWZpbGUgPGZpbGU+XCIsIFwiRmlsZSB0byBidWlsZFwiKTtcblx0fVxuXG5cdHB1YmxpYyBydW4gPSBhc3luYyAoXG5cdFx0YWN0aW9uczogQnVpbGRBY3Rpb25zLFxuXHRcdG9wdGlvbnM6IE1lcmdlT3B0aW9uczxCdWlsZEFjdGlvbnM+LFxuXHQpOiBQcm9taXNlPENvbW1hbmRSZXNwb25zZTxCdWlsZEFjdGlvbnM+PiA9PiB7XG5cdFx0Y29uc3QgcmVzcG9uc2VzID0gYXdhaXQgYXV0bzxCdWlsZEFjdGlvbnM+KHtcblx0XHRcdGNsZWFuOiBhc3luYyAoKSA9PiBhd2FpdCBhY3Rpb25zLmNsZWFuLnJ1bihvcHRpb25zKSxcblx0XHRcdGJ1aWxkOiBbXCJjbGVhblwiLCBhc3luYyAoKSA9PiBhd2FpdCBhY3Rpb25zLmJ1aWxkLnJ1bihvcHRpb25zKV0sXG5cdFx0XHRjb3B5OiBbXCJjbGVhblwiLCBhc3luYyAoKSA9PiBhd2FpdCBhY3Rpb25zLmNvcHkucnVuKG9wdGlvbnMpXSxcblx0XHRcdHdhdGNoOiBbXCJidWlsZFwiLCBcImNvcHlcIiwgYXN5bmMgKCkgPT4gYXdhaXQgYWN0aW9ucy53YXRjaC5ydW4ob3B0aW9ucyldLFxuXHRcdH0pO1xuXG5cdFx0cmV0dXJuIENvbW1hbmRSZXNwb25zZS5zdWNjZXNzKG9wdGlvbnMsIHJlc3BvbnNlcyk7XG5cdH07XG59XG4iXSwibmFtZXMiOlsiQnVpbGRDb21tYW5kIiwiRGVjb2hlcmVDb21tYW5kIiwibmFtZSIsImRlc2NyaXB0aW9uIiwiYWRkT3B0aW9uIiwiQ29uZmlndXJhdGlvbk9wdGlvbiIsIk5vQ2xlYW5PcHRpb25zIiwib3B0aW9uIiwicnVuIiwiYWN0aW9ucyIsIm9wdGlvbnMiLCJyZXNwb25zZXMiLCJhdXRvIiwiY2xlYW4iLCJidWlsZCIsImNvcHkiLCJ3YXRjaCIsIkNvbW1hbmRSZXNwb25zZSIsInN1Y2Nlc3MiXSwibWFwcGluZ3MiOiI7Ozs7K0JBY2FBOzs7ZUFBQUE7OztxQkFSTjs2REFDVTs7Ozs7O0FBT1YsTUFBTUEscUJBQXFCQyxvQkFBZTtJQUNoRCxZQUFtQkMsSUFBYSxDQUFFO1FBQ2pDLEtBQUssQ0FBQ0EsUUFBUUYsYUFBYUUsSUFBSTtRQUMvQixJQUFJLENBQUNDLFdBQVcsQ0FBQztRQUNqQixJQUFJLENBQUNDLFNBQVMsQ0FBQyxJQUFJQyx3QkFBbUIsQ0FBQztRQUN2QyxJQUFJLENBQUNELFNBQVMsQ0FBQyxJQUFJRSxtQkFBYyxDQUFDO1FBQ2xDLElBQUksQ0FBQ0MsTUFBTSxDQUFDLGFBQWEsbURBQW1EO1FBQzVFLElBQUksQ0FBQ0EsTUFBTSxDQUFDLFdBQVcseUNBQXlDO1FBQ2hFLElBQUksQ0FBQ0EsTUFBTSxDQUFDLGlCQUFpQjtJQUM5QjtJQUVPQyxNQUFNLE9BQ1pDLFNBQ0FDO1FBRUEsTUFBTUMsWUFBWSxNQUFNQyxJQUFBQSxhQUFJLEVBQWU7WUFDMUNDLE9BQU8sVUFBWSxNQUFNSixRQUFRSSxLQUFLLENBQUNMLEdBQUcsQ0FBQ0U7WUFDM0NJLE9BQU87Z0JBQUM7Z0JBQVMsVUFBWSxNQUFNTCxRQUFRSyxLQUFLLENBQUNOLEdBQUcsQ0FBQ0U7YUFBUztZQUM5REssTUFBTTtnQkFBQztnQkFBUyxVQUFZLE1BQU1OLFFBQVFNLElBQUksQ0FBQ1AsR0FBRyxDQUFDRTthQUFTO1lBQzVETSxPQUFPO2dCQUFDO2dCQUFTO2dCQUFRLFVBQVksTUFBTVAsUUFBUU8sS0FBSyxDQUFDUixHQUFHLENBQUNFO2FBQVM7UUFDdkU7UUFFQSxPQUFPTyxvQkFBZSxDQUFDQyxPQUFPLENBQUNSLFNBQVNDO0lBQ3pDLEVBQUU7QUFDSCJ9
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "DependencyCommand", {
8
8
  return DependencyCommand;
9
9
  }
10
10
  });
11
- const _cli = require("@decohere/nexus/cli");
11
+ const _cli = require("@decohere/devkit/cli");
12
12
  const _commitaction = require("../actions/commit.action.js");
13
13
  const _dependencyreportaction = require("../actions/dependency-report.action.js");
14
14
  const _dependencysyncaction = require("../actions/dependency-sync.action.js");
@@ -84,5 +84,3 @@ class ReportCommand extends _cli.DecohereCommand {
84
84
  this.option("--fail-on-drift", "Exit with an error if resolved dependencies differ from what is declared in package.json", false);
85
85
  }
86
86
  }
87
-
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9jb21tYW5kcy9kZXBlbmRlbmN5LmNvbW1hbmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDb21tYW5kSGFuZGxlciB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvY2xpXCI7XG5pbXBvcnQgeyBDb21tYW5kUmVzcG9uc2UsIENvbmZpZ3VyYXRpb25PcHRpb24sIERlY29oZXJlQ29tbWFuZCB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvY2xpXCI7XG5pbXBvcnQgdHlwZSB7IENvbW1pdEZpbGVzT3B0aW9ucyB9IGZyb20gXCIuLi9hY3Rpb25zL2NvbW1pdC5hY3Rpb24uanNcIjtcbmltcG9ydCB7IENvbW1pdEZpbGVzIH0gZnJvbSBcIi4uL2FjdGlvbnMvY29tbWl0LmFjdGlvbi5qc1wiO1xuaW1wb3J0IHsgUmVwb3J0RGVwZW5kZW5jaWVzIH0gZnJvbSBcIi4uL2FjdGlvbnMvZGVwZW5kZW5jeS1yZXBvcnQuYWN0aW9uLmpzXCI7XG5pbXBvcnQgdHlwZSB7IERlcGVuZGVuY2llc09wdGlvbnMgfSBmcm9tIFwiLi4vYWN0aW9ucy9kZXBlbmRlbmN5LXN5bmMuYWN0aW9uLmpzXCI7XG5pbXBvcnQgeyBTeW5jRGVwZW5kZW5jaWVzIGFzIERlcGVuZGVuY3lTeW5jIH0gZnJvbSBcIi4uL2FjdGlvbnMvZGVwZW5kZW5jeS1zeW5jLmFjdGlvbi5qc1wiO1xuaW1wb3J0IHR5cGUgeyBTeW5jTG9ja0ZpbGVPcHRpb25zIH0gZnJvbSBcIi4uL2FjdGlvbnMvc3luYy1sb2NrLWZpbGUuYWN0aW9uLmpzXCI7XG5pbXBvcnQgeyBTeW5jTG9ja0ZpbGUgfSBmcm9tIFwiLi4vYWN0aW9ucy9zeW5jLWxvY2stZmlsZS5hY3Rpb24uanNcIjtcbmltcG9ydCB7IFJlbGVhc2UgfSBmcm9tIFwiLi4vd29ya3NwYWNlLmNvbmZpZy5qc1wiO1xuXG5leHBvcnQgY2xhc3MgRGVwZW5kZW5jeUNvbW1hbmQgZXh0ZW5kcyBEZWNvaGVyZUNvbW1hbmQge1xuXHRwdWJsaWMgY29uc3RydWN0b3IobmFtZT86IHN0cmluZywgaGFuZGxlcj86IENvbW1hbmRIYW5kbGVyKSB7XG5cdFx0c3VwZXIobmFtZSA/PyBEZXBlbmRlbmN5Q29tbWFuZCk7XG5cdFx0dGhpcy5kZXNjcmlwdGlvbihcIkFuYWx5emUgYW5kIHN5bmMgd29ya3NwYWNlIGRlcGVuZGVuY2llc1wiKTtcblx0XHR0aGlzLmFkZE9wdGlvbihuZXcgQ29uZmlndXJhdGlvbk9wdGlvbihcInJlbGVhc2VcIikpO1xuXHRcdHRoaXMucmVnaXN0ZXJTdWJjb21tYW5kKFJlcG9ydENvbW1hbmQsIGhhbmRsZXIpO1xuXHRcdHRoaXMucmVnaXN0ZXJTdWJjb21tYW5kKFN5bmNDb21tYW5kLCBoYW5kbGVyKTtcblx0fVxufVxuXG50eXBlIFN5bmNBY3Rpb25zID0ge1xuXHRzeW5jRGVwZW5kZW5jaWVzOiBEZXBlbmRlbmN5U3luYztcblx0c3luY0xvY2tGaWxlOiBTeW5jTG9ja0ZpbGU7XG5cdGNvbW1pdEZpbGVzOiBDb21taXRGaWxlcztcbn07XG5cbmNsYXNzIFN5bmNDb21tYW5kIGV4dGVuZHMgRGVjb2hlcmVDb21tYW5kPFN5bmNBY3Rpb25zPiB7XG5cdHB1YmxpYyBvdmVycmlkZSBnZXQgYWN0aW9ucygpIHtcblx0XHRyZXR1cm4gW0RlcGVuZGVuY3lTeW5jLCBTeW5jTG9ja0ZpbGUsIENvbW1pdEZpbGVzXTtcblx0fVxuXG5cdHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcblx0XHRzdXBlcihTeW5jQ29tbWFuZCk7XG5cdFx0dGhpcy5kZXNjcmlwdGlvbihcIlN5bmMgd29ya3NwYWNlIGRlcGVuZGVuY3kgbWFuaWZlc3RzXCIpO1xuXHRcdHRoaXMub3B0aW9uKFxuXHRcdFx0XCItLWxvZy1kaWZmXCIsXG5cdFx0XHRcIkxvZyB3aGF0IGNoYW5nZWQgaW4gZWFjaCBwcm9qZWN0J3MgZGVwZW5kZW5jaWVzIGFmdGVyIHN5bmNpbmdcIixcblx0XHRcdGZhbHNlLFxuXHRcdCk7XG5cdFx0dGhpcy5vcHRpb24oXCItLW5vLXN5bmNcIiwgXCJTa2lwIGxvY2tmaWxlIHN5bmMgYWZ0ZXIgc3luY2luZyBkZXBlbmRlbmNpZXNcIiwgdHJ1ZSk7XG5cdFx0dGhpcy5vcHRpb24oXCItLWNvbW1pdFwiLCBcIkNvbW1pdCBzeW5jZWQgd29ya3NwYWNlIG1hbmlmZXN0IGNoYW5nZXNcIiwgZmFsc2UpO1xuXHRcdHRoaXMub3B0aW9uKFwiLS1tZXNzYWdlIDxtZXNzYWdlPlwiLCBcIkNvbW1pdCBtZXNzYWdlICh1c2VkIHdpdGggLS1jb21taXQpXCIpO1xuXHR9XG5cblx0cHVibGljIG92ZXJyaWRlIGFzeW5jIHJ1bihhY3Rpb25zOiBTeW5jQWN0aW9ucywgb3B0aW9uczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pIHtcblx0XHRjb25zdCByZXNwb25zZXM6IENvbW1hbmRSZXNwb25zZTxTeW5jQWN0aW9ucz4gPSB7fTtcblx0XHRjb25zdCBjb25maWd1cmF0aW9uID1cblx0XHRcdHR5cGVvZiBvcHRpb25zLmNvbmZpZ3VyYXRpb24gPT09IFwic3RyaW5nXCIgPyBvcHRpb25zLmNvbmZpZ3VyYXRpb24gOiBSZWxlYXNlLm5hbWU7XG5cblx0XHRjb25zdCBzeW5jRGVwZW5kZW5jeU9wdGlvbnM6IERlcGVuZGVuY2llc09wdGlvbnMgPSB7XG5cdFx0XHRjb25maWd1cmF0aW9uLFxuXHRcdFx0bG9nRGlmZjogb3B0aW9ucy5sb2dEaWZmID09PSB0cnVlLFxuXHRcdH07XG5cblx0XHRjb25zdCBzeW5jTG9ja09wdGlvbnM6IFN5bmNMb2NrRmlsZU9wdGlvbnMgPSB7XG5cdFx0XHRzeW5jOiBvcHRpb25zLnN5bmMgIT09IGZhbHNlLFxuXHRcdFx0ZHJ5UnVuOiBvcHRpb25zLmRyeVJ1biA9PT0gdHJ1ZSxcblx0XHR9O1xuXG5cdFx0Y29uc3QgY29tbWl0T3B0aW9uczogQ29tbWl0RmlsZXNPcHRpb25zID0ge1xuXHRcdFx0Y29uZmlndXJhdGlvbixcblx0XHRcdGNvbW1pdDogb3B0aW9ucy5jb21taXQgPT09IHRydWUsXG5cdFx0XHRkcnlSdW46IG9wdGlvbnMuZHJ5UnVuID09PSB0cnVlLFxuXHRcdFx0bWVzc2FnZTogdHlwZW9mIG9wdGlvbnMubWVzc2FnZSA9PT0gXCJzdHJpbmdcIiA/IG9wdGlvbnMubWVzc2FnZSA6IHVuZGVmaW5lZCxcblx0XHR9O1xuXG5cdFx0cmVzcG9uc2VzLnN5bmNEZXBlbmRlbmNpZXMgPSBhd2FpdCBhY3Rpb25zLnN5bmNEZXBlbmRlbmNpZXMucnVuKHN5bmNEZXBlbmRlbmN5T3B0aW9ucyk7XG5cdFx0dGhpcy50aHJvd09uRXJyb3JzKHsgc3luY0RlcGVuZGVuY2llczogcmVzcG9uc2VzLnN5bmNEZXBlbmRlbmNpZXMgfSk7XG5cblx0XHRyZXNwb25zZXMuc3luY0xvY2tGaWxlID0gYXdhaXQgYWN0aW9ucy5zeW5jTG9ja0ZpbGUucnVuKHN5bmNMb2NrT3B0aW9ucyk7XG5cdFx0dGhpcy50aHJvd09uRXJyb3JzKHsgc3luY0xvY2tGaWxlOiByZXNwb25zZXMuc3luY0xvY2tGaWxlIH0pO1xuXG5cdFx0cmVzcG9uc2VzLmNvbW1pdEZpbGVzID0gYXdhaXQgYWN0aW9ucy5jb21taXRGaWxlcy5ydW4oY29tbWl0T3B0aW9ucyk7XG5cdFx0dGhpcy50aHJvd09uRXJyb3JzKHsgY29tbWl0RmlsZXM6IHJlc3BvbnNlcy5jb21taXRGaWxlcyB9KTtcblxuXHRcdHJldHVybiBDb21tYW5kUmVzcG9uc2Uuc3VjY2VzcyhvcHRpb25zLCByZXNwb25zZXMpO1xuXHR9XG59XG5cbmNsYXNzIFJlcG9ydENvbW1hbmQgZXh0ZW5kcyBEZWNvaGVyZUNvbW1hbmQge1xuXHRwdWJsaWMgb3ZlcnJpZGUgZ2V0IGFjdGlvbnMoKSB7XG5cdFx0cmV0dXJuIFtSZXBvcnREZXBlbmRlbmNpZXNdO1xuXHR9XG5cblx0cHVibGljIGNvbnN0cnVjdG9yKCkge1xuXHRcdHN1cGVyKFJlcG9ydENvbW1hbmQpO1xuXHRcdHRoaXMuZGVzY3JpcHRpb24oXCJSZXBvcnQgcmVzb2x2ZWQgZGVwZW5kZW5jaWVzIGZvciB3b3Jrc3BhY2UgcHJvamVjdHNcIik7XG5cdFx0dGhpcy5vcHRpb24oXCItLWZpbGUgPGZpbGU+XCIsIFwiT3B0aW9uYWwgZmlsZSBwYXRoIHRvIHdyaXRlIHRoZSByZXBvcnQgdG9cIik7XG5cdFx0dGhpcy5vcHRpb24oXG5cdFx0XHRcIi0tZmFpbC1vbi1kcmlmdFwiLFxuXHRcdFx0XCJFeGl0IHdpdGggYW4gZXJyb3IgaWYgcmVzb2x2ZWQgZGVwZW5kZW5jaWVzIGRpZmZlciBmcm9tIHdoYXQgaXMgZGVjbGFyZWQgaW4gcGFja2FnZS5qc29uXCIsXG5cdFx0XHRmYWxzZSxcblx0XHQpO1xuXHR9XG59XG4iXSwibmFtZXMiOlsiRGVwZW5kZW5jeUNvbW1hbmQiLCJEZWNvaGVyZUNvbW1hbmQiLCJuYW1lIiwiaGFuZGxlciIsImRlc2NyaXB0aW9uIiwiYWRkT3B0aW9uIiwiQ29uZmlndXJhdGlvbk9wdGlvbiIsInJlZ2lzdGVyU3ViY29tbWFuZCIsIlJlcG9ydENvbW1hbmQiLCJTeW5jQ29tbWFuZCIsImFjdGlvbnMiLCJEZXBlbmRlbmN5U3luYyIsIlN5bmNMb2NrRmlsZSIsIkNvbW1pdEZpbGVzIiwib3B0aW9uIiwicnVuIiwib3B0aW9ucyIsInJlc3BvbnNlcyIsImNvbmZpZ3VyYXRpb24iLCJSZWxlYXNlIiwic3luY0RlcGVuZGVuY3lPcHRpb25zIiwibG9nRGlmZiIsInN5bmNMb2NrT3B0aW9ucyIsInN5bmMiLCJkcnlSdW4iLCJjb21taXRPcHRpb25zIiwiY29tbWl0IiwibWVzc2FnZSIsInVuZGVmaW5lZCIsInN5bmNEZXBlbmRlbmNpZXMiLCJ0aHJvd09uRXJyb3JzIiwic3luY0xvY2tGaWxlIiwiY29tbWl0RmlsZXMiLCJDb21tYW5kUmVzcG9uc2UiLCJzdWNjZXNzIiwiUmVwb3J0RGVwZW5kZW5jaWVzIl0sIm1hcHBpbmdzIjoiOzs7OytCQVdhQTs7O2VBQUFBOzs7cUJBVnlEOzhCQUUxQzt3Q0FDTztzQ0FFZ0I7b0NBRXRCO2lDQUNMO0FBRWpCLE1BQU1BLDBCQUEwQkMsb0JBQWU7SUFDckQsWUFBbUJDLElBQWEsRUFBRUMsT0FBd0IsQ0FBRTtRQUMzRCxLQUFLLENBQUNELFFBQVFGO1FBQ2QsSUFBSSxDQUFDSSxXQUFXLENBQUM7UUFDakIsSUFBSSxDQUFDQyxTQUFTLENBQUMsSUFBSUMsd0JBQW1CLENBQUM7UUFDdkMsSUFBSSxDQUFDQyxrQkFBa0IsQ0FBQ0MsZUFBZUw7UUFDdkMsSUFBSSxDQUFDSSxrQkFBa0IsQ0FBQ0UsYUFBYU47SUFDdEM7QUFDRDtBQVFBLE1BQU1NLG9CQUFvQlIsb0JBQWU7SUFDeEMsSUFBb0JTLFVBQVU7UUFDN0IsT0FBTztZQUFDQyxzQ0FBYztZQUFFQyxnQ0FBWTtZQUFFQyx5QkFBVztTQUFDO0lBQ25EO0lBRUEsYUFBcUI7UUFDcEIsS0FBSyxDQUFDSjtRQUNOLElBQUksQ0FBQ0wsV0FBVyxDQUFDO1FBQ2pCLElBQUksQ0FBQ1UsTUFBTSxDQUNWLGNBQ0EsaUVBQ0E7UUFFRCxJQUFJLENBQUNBLE1BQU0sQ0FBQyxhQUFhLGlEQUFpRDtRQUMxRSxJQUFJLENBQUNBLE1BQU0sQ0FBQyxZQUFZLDRDQUE0QztRQUNwRSxJQUFJLENBQUNBLE1BQU0sQ0FBQyx1QkFBdUI7SUFDcEM7SUFFQSxNQUFzQkMsSUFBSUwsT0FBb0IsRUFBRU0sT0FBZ0MsRUFBRTtRQUNqRixNQUFNQyxZQUEwQyxDQUFDO1FBQ2pELE1BQU1DLGdCQUNMLE9BQU9GLFFBQVFFLGFBQWEsS0FBSyxXQUFXRixRQUFRRSxhQUFhLEdBQUdDLHdCQUFPLENBQUNqQixJQUFJO1FBRWpGLE1BQU1rQix3QkFBNkM7WUFDbERGO1lBQ0FHLFNBQVNMLFFBQVFLLE9BQU8sS0FBSztRQUM5QjtRQUVBLE1BQU1DLGtCQUF1QztZQUM1Q0MsTUFBTVAsUUFBUU8sSUFBSSxLQUFLO1lBQ3ZCQyxRQUFRUixRQUFRUSxNQUFNLEtBQUs7UUFDNUI7UUFFQSxNQUFNQyxnQkFBb0M7WUFDekNQO1lBQ0FRLFFBQVFWLFFBQVFVLE1BQU0sS0FBSztZQUMzQkYsUUFBUVIsUUFBUVEsTUFBTSxLQUFLO1lBQzNCRyxTQUFTLE9BQU9YLFFBQVFXLE9BQU8sS0FBSyxXQUFXWCxRQUFRVyxPQUFPLEdBQUdDO1FBQ2xFO1FBRUFYLFVBQVVZLGdCQUFnQixHQUFHLE1BQU1uQixRQUFRbUIsZ0JBQWdCLENBQUNkLEdBQUcsQ0FBQ0s7UUFDaEUsSUFBSSxDQUFDVSxhQUFhLENBQUM7WUFBRUQsa0JBQWtCWixVQUFVWSxnQkFBZ0I7UUFBQztRQUVsRVosVUFBVWMsWUFBWSxHQUFHLE1BQU1yQixRQUFRcUIsWUFBWSxDQUFDaEIsR0FBRyxDQUFDTztRQUN4RCxJQUFJLENBQUNRLGFBQWEsQ0FBQztZQUFFQyxjQUFjZCxVQUFVYyxZQUFZO1FBQUM7UUFFMURkLFVBQVVlLFdBQVcsR0FBRyxNQUFNdEIsUUFBUXNCLFdBQVcsQ0FBQ2pCLEdBQUcsQ0FBQ1U7UUFDdEQsSUFBSSxDQUFDSyxhQUFhLENBQUM7WUFBRUUsYUFBYWYsVUFBVWUsV0FBVztRQUFDO1FBRXhELE9BQU9DLG9CQUFlLENBQUNDLE9BQU8sQ0FBQ2xCLFNBQVNDO0lBQ3pDO0FBQ0Q7QUFFQSxNQUFNVCxzQkFBc0JQLG9CQUFlO0lBQzFDLElBQW9CUyxVQUFVO1FBQzdCLE9BQU87WUFBQ3lCLDBDQUFrQjtTQUFDO0lBQzVCO0lBRUEsYUFBcUI7UUFDcEIsS0FBSyxDQUFDM0I7UUFDTixJQUFJLENBQUNKLFdBQVcsQ0FBQztRQUNqQixJQUFJLENBQUNVLE1BQU0sQ0FBQyxpQkFBaUI7UUFDN0IsSUFBSSxDQUFDQSxNQUFNLENBQ1YsbUJBQ0EsNEZBQ0E7SUFFRjtBQUNEIn0=
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "DockerCommand", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return DockerCommand;
9
+ }
10
+ });
11
+ const _cli = require("@decohere/devkit/cli");
12
+ const _dockeraction = require("../actions/docker.action.js");
13
+ class DockerCommand extends _cli.DecohereCommand {
14
+ get actions() {
15
+ return [
16
+ _dockeraction.Docker
17
+ ];
18
+ }
19
+ constructor(name){
20
+ super(name);
21
+ this.description("Build Docker images for workspace projects");
22
+ this.addOption(new _cli.ConfigurationOption("release"));
23
+ this.addOption(new _cli.DryRunOption("Build images without pushing to a registry"));
24
+ this.option("--push", "Push built images after a successful build", false);
25
+ }
26
+ }
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "ForgeCommand", {
8
8
  return ForgeCommand;
9
9
  }
10
10
  });
11
- const _cli = require("@decohere/nexus/cli");
11
+ const _cli = require("@decohere/devkit/cli");
12
12
  class ForgeCommand extends _cli.DecohereCommand {
13
13
  constructor(commands, handler){
14
14
  super(ForgeCommand);
@@ -20,5 +20,3 @@ class ForgeCommand extends _cli.DecohereCommand {
20
20
  return this.help();
21
21
  }
22
22
  }
23
-
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9jb21tYW5kcy9mb3JnZS5jb21tYW5kLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQWN0aW9ucyB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvY2xpXCI7XG5pbXBvcnQge1xuXHR0eXBlIENvbW1hbmRIYW5kbGVyLFxuXHR0eXBlIENvbW1hbmRSZXNwb25zZSxcblx0dHlwZSBDb21tYW5kVHlwZSxcblx0RGVjb2hlcmVDb21tYW5kLFxufSBmcm9tIFwiQGRlY29oZXJlL25leHVzL2NsaVwiO1xuXG5leHBvcnQgY2xhc3MgRm9yZ2VDb21tYW5kIGV4dGVuZHMgRGVjb2hlcmVDb21tYW5kIHtcblx0cHVibGljIGNvbnN0cnVjdG9yKGNvbW1hbmRzOiBSZWNvcmQ8c3RyaW5nLCBDb21tYW5kVHlwZT4sIGhhbmRsZXI6IENvbW1hbmRIYW5kbGVyKSB7XG5cdFx0c3VwZXIoRm9yZ2VDb21tYW5kKTtcblx0XHR0aGlzLmRlc2NyaXB0aW9uKFwiUnVuIGZvcmdlIHdvcmtzcGFjZSB3b3JrZmxvd3NcIik7XG5cdFx0dGhpcy5leGl0T3ZlcnJpZGUoKTtcblx0XHR0aGlzLnJlZ2lzdGVyU3ViY29tbWFuZChjb21tYW5kcywgaGFuZGxlcik7XG5cdH1cblxuXHRwdWJsaWMgcnVuKF9hY3Rpb25zOiBBY3Rpb25zLCBfb3B0aW9uczogbmV2ZXIpOiBQcm9taXNlPENvbW1hbmRSZXNwb25zZT4ge1xuXHRcdHJldHVybiB0aGlzLmhlbHAoKTtcblx0fVxufVxuIl0sIm5hbWVzIjpbIkZvcmdlQ29tbWFuZCIsIkRlY29oZXJlQ29tbWFuZCIsImNvbW1hbmRzIiwiaGFuZGxlciIsImRlc2NyaXB0aW9uIiwiZXhpdE92ZXJyaWRlIiwicmVnaXN0ZXJTdWJjb21tYW5kIiwicnVuIiwiX2FjdGlvbnMiLCJfb3B0aW9ucyIsImhlbHAiXSwibWFwcGluZ3MiOiI7Ozs7K0JBUWFBOzs7ZUFBQUE7OztxQkFGTjtBQUVBLE1BQU1BLHFCQUFxQkMsb0JBQWU7SUFDaEQsWUFBbUJDLFFBQXFDLEVBQUVDLE9BQXVCLENBQUU7UUFDbEYsS0FBSyxDQUFDSDtRQUNOLElBQUksQ0FBQ0ksV0FBVyxDQUFDO1FBQ2pCLElBQUksQ0FBQ0MsWUFBWTtRQUNqQixJQUFJLENBQUNDLGtCQUFrQixDQUFDSixVQUFVQztJQUNuQztJQUVPSSxJQUFJQyxRQUFpQixFQUFFQyxRQUFlLEVBQTRCO1FBQ3hFLE9BQU8sSUFBSSxDQUFDQyxJQUFJO0lBQ2pCO0FBQ0QifQ==
@@ -4,10 +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);
8
9
  _export_star(require("./link.command.js"), exports);
10
+ _export_star(require("./package.command.js"), exports);
11
+ _export_star(require("./paths.command.js"), exports);
9
12
  _export_star(require("./publish.command.js"), exports);
10
13
  _export_star(require("./tag.command.js"), exports);
14
+ _export_star(require("./typecheck.command.js"), exports);
11
15
  _export_star(require("./version.command.js"), exports);
12
16
  function _export_star(from, to) {
13
17
  Object.keys(from).forEach(function(k) {
@@ -22,5 +26,3 @@ function _export_star(from, to) {
22
26
  });
23
27
  return from;
24
28
  }
25
-
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9jb21tYW5kcy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9idWlsZC5jb21tYW5kLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9kZXBlbmRlbmN5LmNvbW1hbmQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2ZvcmdlLmNvbW1hbmQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2xpbmsuY29tbWFuZC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vcHVibGlzaC5jb21tYW5kLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi90YWcuY29tbWFuZC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vdmVyc2lvbi5jb21tYW5kLmpzXCI7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztxQkFBYztxQkFDQTtxQkFDQTtxQkFDQTtxQkFDQTtxQkFDQTtxQkFDQSJ9
@@ -16,7 +16,7 @@ _export(exports, {
16
16
  return UnlinkCommand;
17
17
  }
18
18
  });
19
- const _cli = require("@decohere/nexus/cli");
19
+ const _cli = require("@decohere/devkit/cli");
20
20
  const _auto = /*#__PURE__*/ _interop_require_default(require("async/auto.js"));
21
21
  const _buildaction = require("../actions/build.action.js");
22
22
  const _cleanaction = require("../actions/clean.action.js");
@@ -49,6 +49,9 @@ class LinkCommand extends _cli.DecohereCommand {
49
49
  this.option("--target-dir <dir>", "Path to the consumer project root");
50
50
  this.option("--watch", "Watch for changes after linking", false);
51
51
  }
52
+ runsUntilStopped(options) {
53
+ return options.watch === true;
54
+ }
52
55
  run = async (actions, options)=>{
53
56
  const responses = await (0, _auto.default)({
54
57
  clean: async ()=>await actions.clean.run(options),
@@ -85,5 +88,3 @@ class UnlinkCommand extends _cli.DecohereCommand {
85
88
  if (handler) this.action(handler);
86
89
  }
87
90
  }
88
-
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2ZvcmdlL3NyYy9jb21tYW5kcy9saW5rLmNvbW1hbmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDb21tYW5kSGFuZGxlciwgTWVyZ2VPcHRpb25zIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9jbGlcIjtcbmltcG9ydCB7XG5cdENvbW1hbmRSZXNwb25zZSxcblx0Q29uZmlndXJhdGlvbk9wdGlvbixcblx0RGVjb2hlcmVDb21tYW5kLFxuXHROb0NsZWFuT3B0aW9ucyxcbn0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9jbGlcIjtcbmltcG9ydCBhdXRvIGZyb20gXCJhc3luYy9hdXRvLmpzXCI7XG5pbXBvcnQgeyBCdWlsZCB9IGZyb20gXCIuLi9hY3Rpb25zL2J1aWxkLmFjdGlvbi5qc1wiO1xuaW1wb3J0IHsgQ2xlYW4gfSBmcm9tIFwiLi4vYWN0aW9ucy9jbGVhbi5hY3Rpb24uanNcIjtcbmltcG9ydCB7IENvcHkgfSBmcm9tIFwiLi4vYWN0aW9ucy9jb3B5LmFjdGlvbi5qc1wiO1xuaW1wb3J0IHsgTGluayB9IGZyb20gXCIuLi9hY3Rpb25zL2xpbmsuYWN0aW9uLmpzXCI7XG5pbXBvcnQgeyBVbmxpbmsgfSBmcm9tIFwiLi4vYWN0aW9ucy91bmxpbmsuYWN0aW9uLmpzXCI7XG5pbXBvcnQgeyBXYXRjaCB9IGZyb20gXCIuLi9hY3Rpb25zL3dhdGNoLmFjdGlvbi5qc1wiO1xuXG5leHBvcnQgdHlwZSBMaW5rQWN0aW9ucyA9IHsgY2xlYW46IENsZWFuOyBidWlsZDogQnVpbGQ7IGNvcHk6IENvcHk7IGxpbms6IExpbms7IHdhdGNoOiBXYXRjaCB9O1xudHlwZSBVbmxpbmtBY3Rpb25zID0geyB1bmxpbms6IFVubGluayB9O1xuXG5leHBvcnQgY2xhc3MgTGlua0NvbW1hbmQgZXh0ZW5kcyBEZWNvaGVyZUNvbW1hbmQ8TGlua0FjdGlvbnM+IHtcblx0cHVibGljIG92ZXJyaWRlIGdldCBhY3Rpb25zKCkge1xuXHRcdHJldHVybiBbQ2xlYW4sIEJ1aWxkLCBDb3B5LCBMaW5rLCBXYXRjaF07XG5cdH1cblxuXHRwdWJsaWMgY29uc3RydWN0b3IobmFtZT86IHN0cmluZykge1xuXHRcdHN1cGVyKG5hbWUgPz8gXCJsaW5rXCIpO1xuXHRcdHRoaXMuZGVzY3JpcHRpb24oXCJTeW1saW5rIHdvcmtzcGFjZSBidWlsZCBvdXRwdXRzIGludG8gYSBjb25zdW1lciBwcm9qZWN0J3Mgbm9kZV9tb2R1bGVzXCIpO1xuXHRcdHRoaXMuYWRkT3B0aW9uKG5ldyBDb25maWd1cmF0aW9uT3B0aW9uKFwibGlua1wiKSk7XG5cdFx0dGhpcy5hZGRPcHRpb24obmV3IE5vQ2xlYW5PcHRpb25zKHRydWUpKTtcblx0XHR0aGlzLm9wdGlvbihcIi0tYnVpbGRcIiwgXCJSdW4gZm9yZ2UgYnVpbGQgY29uY3VycmVudGx5IGFmdGVyIGxpbmtpbmdcIiwgZmFsc2UpO1xuXHRcdHRoaXMub3B0aW9uKFwiLS1uby1jb3B5XCIsIFwiV2lsbCBub3QgY29weSBmaWxlcyBsaWtlIHBhY2thZ2UuanNvbiB0byBvdXRkaXJcIiwgdHJ1ZSk7XG5cdFx0dGhpcy5vcHRpb24oXCItLXRhcmdldC1kaXIgPGRpcj5cIiwgXCJQYXRoIHRvIHRoZSBjb25zdW1lciBwcm9qZWN0IHJvb3RcIik7XG5cdFx0dGhpcy5vcHRpb24oXCItLXdhdGNoXCIsIFwiV2F0Y2ggZm9yIGNoYW5nZXMgYWZ0ZXIgbGlua2luZ1wiLCBmYWxzZSk7XG5cdH1cblxuXHRwdWJsaWMgcnVuID0gYXN5bmMgKFxuXHRcdGFjdGlvbnM6IExpbmtBY3Rpb25zLFxuXHRcdG9wdGlvbnM6IE1lcmdlT3B0aW9uczxMaW5rQWN0aW9ucz4sXG5cdCk6IFByb21pc2U8Q29tbWFuZFJlc3BvbnNlPExpbmtBY3Rpb25zPj4gPT4ge1xuXHRcdGNvbnN0IHJlc3BvbnNlcyA9IGF3YWl0IGF1dG88TGlua0FjdGlvbnM+KHtcblx0XHRcdGNsZWFuOiBhc3luYyAoKSA9PiBhd2FpdCBhY3Rpb25zLmNsZWFuLnJ1bihvcHRpb25zKSxcblx0XHRcdGxpbms6IFtcImNsZWFuXCIsIGFzeW5jICgpID0+IGF3YWl0IGFjdGlvbnMubGluay5ydW4ob3B0aW9ucyldLFxuXHRcdFx0YnVpbGQ6IFtcImxpbmtcIiwgYXN5bmMgKCkgPT4gYXdhaXQgYWN0aW9ucy5idWlsZC5ydW4ob3B0aW9ucyldLFxuXHRcdFx0Y29weTogW1wibGlua1wiLCBhc3luYyAoKSA9PiBhd2FpdCBhY3Rpb25zLmNvcHkucnVuKG9wdGlvbnMpXSxcblx0XHRcdHdhdGNoOiBbXCJsaW5rXCIsIGFzeW5jICgpID0+IGF3YWl0IGFjdGlvbnMud2F0Y2gucnVuKG9wdGlvbnMpXSxcblx0XHR9KTtcblxuXHRcdHJldHVybiBDb21tYW5kUmVzcG9uc2Uuc3VjY2VzcyhvcHRpb25zLCByZXNwb25zZXMpO1xuXHR9O1xufVxuXG5leHBvcnQgY2xhc3MgVW5saW5rQ29tbWFuZCBleHRlbmRzIERlY29oZXJlQ29tbWFuZDxVbmxpbmtBY3Rpb25zPiB7XG5cdHB1YmxpYyBvdmVycmlkZSBnZXQgYWN0aW9ucygpIHtcblx0XHRyZXR1cm4gW1VubGlua107XG5cdH1cblxuXHRwdWJsaWMgY29uc3RydWN0b3IobmFtZT86IHN0cmluZywgaGFuZGxlcj86IENvbW1hbmRIYW5kbGVyKSB7XG5cdFx0c3VwZXIobmFtZSA/PyBcInVubGlua1wiKTtcblx0XHR0aGlzLmRlc2NyaXB0aW9uKFwiUmVtb3ZlIHdvcmtzcGFjZSBzeW1saW5rcyBmcm9tIGEgY29uc3VtZXIgcHJvamVjdCdzIG5vZGVfbW9kdWxlc1wiKTtcblx0XHR0aGlzLm9wdGlvbihcIi0tdGFyZ2V0LWRpciA8ZGlyPlwiLCBcIlBhdGggdG8gdGhlIGNvbnN1bWVyIHByb2plY3Qgcm9vdFwiKTtcblx0XHRpZiAoaGFuZGxlcikgdGhpcy5hY3Rpb24oaGFuZGxlcik7XG5cdH1cbn1cbiJdLCJuYW1lcyI6WyJMaW5rQ29tbWFuZCIsIlVubGlua0NvbW1hbmQiLCJEZWNvaGVyZUNvbW1hbmQiLCJhY3Rpb25zIiwiQ2xlYW4iLCJCdWlsZCIsIkNvcHkiLCJMaW5rIiwiV2F0Y2giLCJuYW1lIiwiZGVzY3JpcHRpb24iLCJhZGRPcHRpb24iLCJDb25maWd1cmF0aW9uT3B0aW9uIiwiTm9DbGVhbk9wdGlvbnMiLCJvcHRpb24iLCJydW4iLCJvcHRpb25zIiwicmVzcG9uc2VzIiwiYXV0byIsImNsZWFuIiwibGluayIsImJ1aWxkIiwiY29weSIsIndhdGNoIiwiQ29tbWFuZFJlc3BvbnNlIiwic3VjY2VzcyIsIlVubGluayIsImhhbmRsZXIiLCJhY3Rpb24iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O1FBa0JhQTtlQUFBQTs7UUFnQ0FDO2VBQUFBOzs7cUJBNUNOOzZEQUNVOzZCQUNLOzZCQUNBOzRCQUNEOzRCQUNBOzhCQUNFOzZCQUNEOzs7Ozs7QUFLZixNQUFNRCxvQkFBb0JFLG9CQUFlO0lBQy9DLElBQW9CQyxVQUFVO1FBQzdCLE9BQU87WUFBQ0Msa0JBQUs7WUFBRUMsa0JBQUs7WUFBRUMsZ0JBQUk7WUFBRUMsZ0JBQUk7WUFBRUMsa0JBQUs7U0FBQztJQUN6QztJQUVBLFlBQW1CQyxJQUFhLENBQUU7UUFDakMsS0FBSyxDQUFDQSxRQUFRO1FBQ2QsSUFBSSxDQUFDQyxXQUFXLENBQUM7UUFDakIsSUFBSSxDQUFDQyxTQUFTLENBQUMsSUFBSUMsd0JBQW1CLENBQUM7UUFDdkMsSUFBSSxDQUFDRCxTQUFTLENBQUMsSUFBSUUsbUJBQWMsQ0FBQztRQUNsQyxJQUFJLENBQUNDLE1BQU0sQ0FBQyxXQUFXLDhDQUE4QztRQUNyRSxJQUFJLENBQUNBLE1BQU0sQ0FBQyxhQUFhLG1EQUFtRDtRQUM1RSxJQUFJLENBQUNBLE1BQU0sQ0FBQyxzQkFBc0I7UUFDbEMsSUFBSSxDQUFDQSxNQUFNLENBQUMsV0FBVyxtQ0FBbUM7SUFDM0Q7SUFFT0MsTUFBTSxPQUNaWixTQUNBYTtRQUVBLE1BQU1DLFlBQVksTUFBTUMsSUFBQUEsYUFBSSxFQUFjO1lBQ3pDQyxPQUFPLFVBQVksTUFBTWhCLFFBQVFnQixLQUFLLENBQUNKLEdBQUcsQ0FBQ0M7WUFDM0NJLE1BQU07Z0JBQUM7Z0JBQVMsVUFBWSxNQUFNakIsUUFBUWlCLElBQUksQ0FBQ0wsR0FBRyxDQUFDQzthQUFTO1lBQzVESyxPQUFPO2dCQUFDO2dCQUFRLFVBQVksTUFBTWxCLFFBQVFrQixLQUFLLENBQUNOLEdBQUcsQ0FBQ0M7YUFBUztZQUM3RE0sTUFBTTtnQkFBQztnQkFBUSxVQUFZLE1BQU1uQixRQUFRbUIsSUFBSSxDQUFDUCxHQUFHLENBQUNDO2FBQVM7WUFDM0RPLE9BQU87Z0JBQUM7Z0JBQVEsVUFBWSxNQUFNcEIsUUFBUW9CLEtBQUssQ0FBQ1IsR0FBRyxDQUFDQzthQUFTO1FBQzlEO1FBRUEsT0FBT1Esb0JBQWUsQ0FBQ0MsT0FBTyxDQUFDVCxTQUFTQztJQUN6QyxFQUFFO0FBQ0g7QUFFTyxNQUFNaEIsc0JBQXNCQyxvQkFBZTtJQUNqRCxJQUFvQkMsVUFBVTtRQUM3QixPQUFPO1lBQUN1QixvQkFBTTtTQUFDO0lBQ2hCO0lBRUEsWUFBbUJqQixJQUFhLEVBQUVrQixPQUF3QixDQUFFO1FBQzNELEtBQUssQ0FBQ2xCLFFBQVE7UUFDZCxJQUFJLENBQUNDLFdBQVcsQ0FBQztRQUNqQixJQUFJLENBQUNJLE1BQU0sQ0FBQyxzQkFBc0I7UUFDbEMsSUFBSWEsU0FBUyxJQUFJLENBQUNDLE1BQU0sQ0FBQ0Q7SUFDMUI7QUFDRCJ9