@codiac.io/codiac-cli 1.2.256 → 1.2.258

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 (214) hide show
  1. package/README.md +1 -1
  2. package/dist/apis/codiac-api/gen/contracts.d.ts +5 -1
  3. package/dist/apis/codiac-api/gen/contracts.js +3 -0
  4. package/dist/apis/codiac-api/gen/contracts.js.map +1 -1
  5. package/dist/apis/codiac-relay/gen/client.d.ts +5 -1
  6. package/dist/apis/codiac-relay/gen/client.js +28 -0
  7. package/dist/apis/codiac-relay/gen/client.js.map +1 -1
  8. package/dist/apis/codiac-relay/gen/contracts.d.ts +19 -6
  9. package/dist/apis/codiac-relay/gen/contracts.js +1 -0
  10. package/dist/apis/codiac-relay/gen/contracts.js.map +1 -1
  11. package/dist/cli-common/argument-manager.d.ts +1 -1
  12. package/dist/cli-common/built-in-cli-user-input.d.ts +3 -2
  13. package/dist/cli-common/built-in-cli-user-input.js +3 -1
  14. package/dist/cli-common/built-in-cli-user-input.js.map +1 -1
  15. package/dist/cli-common/command-base.d.ts +1 -2
  16. package/dist/cli-common/command-base.js +13 -11
  17. package/dist/cli-common/command-base.js.map +1 -1
  18. package/dist/cli-common/entities/prompt-choice.d.ts +6 -2
  19. package/dist/cli-common/mock-ui.d.ts +2 -2
  20. package/dist/cli-common/mock-ui.js.map +1 -1
  21. package/dist/cli-common/prompt-select-fuzzy.d.ts +4 -5
  22. package/dist/cli-common/prompt-select-fuzzy.js +11 -9
  23. package/dist/cli-common/prompt-select-fuzzy.js.map +1 -1
  24. package/dist/cli-common/test/tenant-contextualizer.spec.js +2 -2
  25. package/dist/command-base-enterprise.d.ts +3 -3
  26. package/dist/command-base-enterprise.js +38 -22
  27. package/dist/command-base-enterprise.js.map +1 -1
  28. package/dist/command-base-exec.js.map +1 -1
  29. package/dist/command-base-tenantless.js +2 -2
  30. package/dist/command-base-tenantless.js.map +1 -1
  31. package/dist/commands/asset/create.d.ts +16 -1
  32. package/dist/commands/asset/create.js +239 -85
  33. package/dist/commands/asset/create.js.map +1 -1
  34. package/dist/commands/asset/deploy.d.ts +0 -4
  35. package/dist/commands/asset/deploy.js +3 -15
  36. package/dist/commands/asset/deploy.js.map +1 -1
  37. package/dist/commands/asset/destroy.js +3 -3
  38. package/dist/commands/asset/destroy.js.map +1 -1
  39. package/dist/commands/asset/recycle.js +5 -5
  40. package/dist/commands/asset/recycle.js.map +1 -1
  41. package/dist/commands/asset/view.d.ts +9 -6
  42. package/dist/commands/asset/view.js +220 -127
  43. package/dist/commands/asset/view.js.map +1 -1
  44. package/dist/commands/cabinet/create.js +20 -21
  45. package/dist/commands/cabinet/create.js.map +1 -1
  46. package/dist/commands/cabinet/obliterate.js +1 -1
  47. package/dist/commands/cabinet/obliterate.js.map +1 -1
  48. package/dist/commands/config/add.js +47 -24
  49. package/dist/commands/config/add.js.map +1 -1
  50. package/dist/commands/config/delete.js +8 -7
  51. package/dist/commands/config/delete.js.map +1 -1
  52. package/dist/commands/config/deploy.d.ts +2 -2
  53. package/dist/commands/config/deploy.js +121 -64
  54. package/dist/commands/config/deploy.js.map +1 -1
  55. package/dist/commands/config/import.d.ts +19 -5
  56. package/dist/commands/config/import.js +112 -52
  57. package/dist/commands/config/import.js.map +1 -1
  58. package/dist/commands/config/settings/get.js +7 -6
  59. package/dist/commands/config/settings/get.js.map +1 -1
  60. package/dist/commands/config/view.js +11 -4
  61. package/dist/commands/config/view.js.map +1 -1
  62. package/dist/commands/csp/login.js +3 -3
  63. package/dist/commands/csp/login.js.map +1 -1
  64. package/dist/commands/dep/list.js +2 -1
  65. package/dist/commands/dep/list.js.map +1 -1
  66. package/dist/commands/deploy.js +2 -2
  67. package/dist/commands/deploy.js.map +1 -1
  68. package/dist/commands/env/add.d.ts +1 -1
  69. package/dist/commands/env/add.js +12 -12
  70. package/dist/commands/env/add.js.map +1 -1
  71. package/dist/commands/filestore/capture.js +22 -4
  72. package/dist/commands/filestore/capture.js.map +1 -1
  73. package/dist/commands/host/list.d.ts +30 -0
  74. package/dist/commands/host/list.js +106 -0
  75. package/dist/commands/host/list.js.map +1 -0
  76. package/dist/commands/host/map.js +7 -1
  77. package/dist/commands/host/map.js.map +1 -1
  78. package/dist/commands/host/view.d.ts +31 -0
  79. package/dist/commands/host/view.js +111 -0
  80. package/dist/commands/host/view.js.map +1 -0
  81. package/dist/commands/init.js +1 -2
  82. package/dist/commands/init.js.map +1 -1
  83. package/dist/commands/kit/create.js +1 -1
  84. package/dist/commands/kit/create.js.map +1 -1
  85. package/dist/commands/login.js +3 -3
  86. package/dist/commands/login.js.map +1 -1
  87. package/dist/commands/noc/cluster/deinit.d.ts +1 -0
  88. package/dist/commands/noc/cluster/deinit.js +4 -3
  89. package/dist/commands/noc/cluster/deinit.js.map +1 -1
  90. package/dist/commands/noc/cluster/destroy.js +3 -3
  91. package/dist/commands/noc/cluster/destroy.js.map +1 -1
  92. package/dist/commands/noc/cluster/forget.js +4 -4
  93. package/dist/commands/noc/cluster/forget.js.map +1 -1
  94. package/dist/commands/noc/cluster/grant.js +2 -2
  95. package/dist/commands/noc/cluster/grant.js.map +1 -1
  96. package/dist/commands/noc/cluster/init.js +3 -3
  97. package/dist/commands/noc/cluster/init.js.map +1 -1
  98. package/dist/commands/noc/cluster/recreate.js +2 -2
  99. package/dist/commands/noc/cluster/recreate.js.map +1 -1
  100. package/dist/commands/publish.js +3 -2
  101. package/dist/commands/publish.js.map +1 -1
  102. package/dist/ops/INTERFACES_CLI.d.ts +7 -1
  103. package/dist/ops/INTERFACES_CLI.js +7 -0
  104. package/dist/ops/INTERFACES_CLI.js.map +1 -1
  105. package/dist/ops/LocalOps.js +29 -28
  106. package/dist/ops/LocalOps.js.map +1 -1
  107. package/dist/ops/cli-path-walker.d.ts +18 -0
  108. package/dist/ops/cli-path-walker.js +58 -53
  109. package/dist/ops/cli-path-walker.js.map +1 -1
  110. package/dist/ops/data/cli-context-repo.js +11 -9
  111. package/dist/ops/data/cli-context-repo.js.map +1 -1
  112. package/dist/ops/i-entry-validator.d.ts +21 -0
  113. package/dist/ops/i-entry-validator.js +3 -0
  114. package/dist/ops/i-entry-validator.js.map +1 -0
  115. package/dist/ops/i-identity-handler.js +2 -2
  116. package/dist/ops/i-identity-handler.js.map +1 -1
  117. package/dist/ops/i-output-styler.d.ts +15 -0
  118. package/dist/ops/i-output-styler.js +1 -15
  119. package/dist/ops/i-output-styler.js.map +1 -1
  120. package/dist/ops/i-user-input-provider.d.ts +56 -0
  121. package/dist/ops/i-user-input-provider.js +12 -0
  122. package/dist/ops/i-user-input-provider.js.map +1 -0
  123. package/dist/ops/index.d.ts +8 -0
  124. package/dist/ops/index.js +8 -0
  125. package/dist/ops/index.js.map +1 -1
  126. package/dist/ops/no-style-output-styler.d.ts +12 -0
  127. package/dist/ops/no-style-output-styler.js +34 -28
  128. package/dist/ops/no-style-output-styler.js.map +1 -1
  129. package/dist/ops/ops-constants.d.ts +7 -0
  130. package/dist/ops/ops-constants.js +12 -0
  131. package/dist/ops/ops-constants.js.map +1 -0
  132. package/dist/ops/test/mock-ui.d.ts +1 -1
  133. package/dist/ops/test/when-git-branchline-is-attempted.spec.js +5 -4
  134. package/dist/ops/test/when-git-branchline-is-attempted.spec.js.map +1 -1
  135. package/dist/ops/test/when-versions-are-parsed.spec.js +3 -2
  136. package/dist/ops/test/when-versions-are-parsed.spec.js.map +1 -1
  137. package/dist/ops/throwing-user-input-provider.d.ts +24 -0
  138. package/dist/ops/throwing-user-input-provider.js +65 -35
  139. package/dist/ops/throwing-user-input-provider.js.map +1 -1
  140. package/dist/prettify.js.map +1 -1
  141. package/dist/relay/contracts/contracts.d.ts +2 -20
  142. package/dist/relay/contracts/contracts.js +24 -30
  143. package/dist/relay/contracts/contracts.js.map +1 -1
  144. package/dist/relay/extended-relay-client.d.ts +0 -27
  145. package/dist/relay/extended-relay-client.js +36 -26
  146. package/dist/relay/extended-relay-client.js.map +1 -1
  147. package/dist/relay/relay-container.d.ts +1 -1
  148. package/dist/relay/relay-container.js +5 -5
  149. package/dist/relay/relay-container.js.map +1 -1
  150. package/dist/uilogic/build-configurator.d.ts +1 -1
  151. package/dist/uilogic/build-configurator.js +3 -3
  152. package/dist/uilogic/build-configurator.js.map +1 -1
  153. package/dist/uilogic/cloud-provider-contextualizer.d.ts +2 -4
  154. package/dist/uilogic/cloud-provider-contextualizer.js +9 -15
  155. package/dist/uilogic/cloud-provider-contextualizer.js.map +1 -1
  156. package/dist/uilogic/cloud-resource-configurator-factory.js +5 -0
  157. package/dist/uilogic/cloud-resource-configurator-factory.js.map +1 -1
  158. package/dist/uilogic/cloud-resource-configurators/aws-resource-configurator.d.ts +3 -4
  159. package/dist/uilogic/cloud-resource-configurators/aws-resource-configurator.js +10 -13
  160. package/dist/uilogic/cloud-resource-configurators/aws-resource-configurator.js.map +1 -1
  161. package/dist/uilogic/cloud-resource-configurators/az-interactive-login-configurator.d.ts +2 -1
  162. package/dist/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js +4 -3
  163. package/dist/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js.map +1 -1
  164. package/dist/uilogic/cloud-resource-configurators/azure-resource-configurator.d.ts +3 -4
  165. package/dist/uilogic/cloud-resource-configurators/azure-resource-configurator.js +27 -24
  166. package/dist/uilogic/cloud-resource-configurators/azure-resource-configurator.js.map +1 -1
  167. package/dist/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.d.ts +1 -1
  168. package/dist/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js +3 -3
  169. package/dist/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js.map +1 -1
  170. package/dist/uilogic/cloud-resource-configurators/helm-resource-configurator.d.ts +2 -2
  171. package/dist/uilogic/cloud-resource-configurators/helm-resource-configurator.js +7 -4
  172. package/dist/uilogic/cloud-resource-configurators/helm-resource-configurator.js.map +1 -1
  173. package/dist/uilogic/cloud-resource-configurators/unsupported-resource-configurator.d.ts +1 -1
  174. package/dist/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js +2 -2
  175. package/dist/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js.map +1 -1
  176. package/dist/uilogic/config-ui-utils.d.ts +3 -3
  177. package/dist/uilogic/config-ui-utils.js +24 -13
  178. package/dist/uilogic/config-ui-utils.js.map +1 -1
  179. package/dist/uilogic/enterprise-contextualizer.d.ts +1 -1
  180. package/dist/uilogic/environment-contextualizer.d.ts +1 -1
  181. package/dist/uilogic/image-configurator.d.ts +2 -2
  182. package/dist/uilogic/image-configurator.js +1 -1
  183. package/dist/uilogic/image-configurator.js.map +1 -1
  184. package/dist/uilogic/image-contextualizer.d.ts +1 -1
  185. package/dist/uilogic/image-contextualizer.js +11 -6
  186. package/dist/uilogic/image-contextualizer.js.map +1 -1
  187. package/dist/uilogic/image-registry-contextualizer.d.ts +7 -1
  188. package/dist/uilogic/image-registry-contextualizer.js +56 -3
  189. package/dist/uilogic/image-registry-contextualizer.js.map +1 -1
  190. package/dist/uilogic/prompt-select-fuzzy.js +3 -3
  191. package/dist/uilogic/prompt-select-fuzzy.js.map +1 -1
  192. package/dist/uilogic/render-methods.d.ts +1 -0
  193. package/dist/uilogic/render-methods.js +2 -1
  194. package/dist/uilogic/render-methods.js.map +1 -1
  195. package/dist/uilogic/rootmap-ui-utils.d.ts +28 -8
  196. package/dist/uilogic/rootmap-ui-utils.js +132 -8
  197. package/dist/uilogic/rootmap-ui-utils.js.map +1 -1
  198. package/dist/uilogic/tenant-contextualizer.d.ts +1 -1
  199. package/dist/user-context-loader.js +4 -3
  200. package/dist/user-context-loader.js.map +1 -1
  201. package/oclif.manifest.json +210 -28
  202. package/package.json +3 -4
  203. package/dist/cli-common/i-user-input-provider.d.ts +0 -0
  204. package/dist/cli-common/i-user-input-provider.js +0 -19
  205. package/dist/cli-common/i-user-input-provider.js.map +0 -1
  206. package/dist/cli-common/tenant-contextualizer.d.ts +0 -0
  207. package/dist/cli-common/tenant-contextualizer.js +0 -436
  208. package/dist/cli-common/tenant-contextualizer.js.map +0 -1
  209. package/dist/ops/docker-registry-api-client/docker-registry-api-client.d.ts +0 -0
  210. package/dist/ops/docker-registry-api-client/docker-registry-api-client.js +0 -289
  211. package/dist/ops/docker-registry-api-client/docker-registry-api-client.js.map +0 -1
  212. package/dist/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.d.ts +0 -0
  213. package/dist/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js +0 -78
  214. package/dist/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js.map +0 -1
@@ -3,15 +3,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RootMapUiUtils = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const inversify_1 = require("inversify");
6
- const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
7
6
  const contracts_1 = require("../apis/codiac-api/contracts");
8
7
  const render = require("./render-methods");
9
8
  const _ = require("lodash");
9
+ const ops_1 = require("../ops");
10
+ ;
11
+ ;
10
12
  ;
11
13
  let RootMapUiUtils = class RootMapUiUtils {
12
- constructor(_ui, _styler) {
14
+ constructor(_ui, styler) {
13
15
  this._ui = _ui;
14
- this._styler = _styler;
16
+ this.styler = styler;
15
17
  }
16
18
  /** Validates the candidate's current value,
17
19
  * prompts the user if necessary,
@@ -55,10 +57,14 @@ let RootMapUiUtils = class RootMapUiUtils {
55
57
  }
56
58
  });
57
59
  }
58
- /** Returns the ultiamate asset name and the flag telling whether the original user input was changed. */
60
+ /** Returns the ultiamate asset name and the flag telling whether the original user input was changed.
61
+ *
62
+ * @param type Must be pulled from asset record, but may be undefined. MUST have this set for anything that's not a container service asset.
63
+ */
59
64
  promptForAsset(assets, current) {
60
65
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
61
66
  let selected = current;
67
+ let assetType;
62
68
  let changed = false;
63
69
  if (assets.length === 0) {
64
70
  throw new Error("This enterprise has no assets. You must create an asset to run this command.");
@@ -69,19 +75,24 @@ let RootMapUiUtils = class RootMapUiUtils {
69
75
  if (found == undefined) {
70
76
  selected = undefined;
71
77
  }
78
+ else {
79
+ assetType = found.type;
80
+ }
72
81
  }
73
82
  if (selected == undefined) {
74
83
  if (assets.length === 1) {
75
84
  selected = assets[0].name; // Auto-select the one-and-only
85
+ assetType = assets[0].type;
76
86
  }
77
87
  else {
78
88
  // PROMPT FOR IT
79
89
  let choices = assets.map(a => { return { name: a.name, value: a.name }; });
80
90
  selected = (yield this._ui.promptSelect("asset", "Asset: ", choices)); // TODO: This needs to be a fuzzy-select
91
+ assetType = assets.find(a => a.name == selected).type; // Assertion operator ok here because we chose from them
81
92
  }
82
93
  changed = Boolean(current != undefined);
83
94
  }
84
- return [selected, changed];
95
+ return [selected, changed, assetType];
85
96
  });
86
97
  }
87
98
  /** Selects a cabinet from a tree view.
@@ -114,7 +125,7 @@ let RootMapUiUtils = class RootMapUiUtils {
114
125
  }
115
126
  let keep = takeDefaults;
116
127
  if (defaultValue && Boolean(choices.find(x => x.value === `${CAB_PREFIX}${defaultValue}`)) && (changedUserInput || !takeDefaults)) {
117
- keep = yield this._ui.promptConfirm("keepCabinet", `Cabinet: ${this._styler.hilite(defaultValue)} `);
128
+ keep = yield this._ui.promptConfirm("keepCabinet", `Cabinet: ${this.styler.hilite(defaultValue)} `);
118
129
  }
119
130
  if (keep && defaultValue !== undefined) {
120
131
  output = defaultValue;
@@ -201,6 +212,115 @@ let RootMapUiUtils = class RootMapUiUtils {
201
212
  }
202
213
  return tree;
203
214
  }
215
+ /** */
216
+ promptForEnviroCluster(rootMap, enterpriseCode, defaultEnviro, defaultCluster, takeDefaults = false) {
217
+ var _a, _b;
218
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
219
+ let enviro;
220
+ let cluster;
221
+ let envTree = this.buildEnviroClusterTree(rootMap);
222
+ let choices = this.buildSelectChoicesFrom(envTree);
223
+ // Assemble the requested/default selection
224
+ let defaultValue;
225
+ if (defaultEnviro) {
226
+ defaultValue = defaultEnviro.concat(...(defaultCluster ? ["|", defaultCluster] : []));
227
+ }
228
+ // Enforce a valid default / or use the one-and-only
229
+ let defaultChoice;
230
+ let changedUserInput = false;
231
+ if (choices.length === 2) /* 2 because the first is always the enterprise */ {
232
+ if (defaultValue != choices[1].value) {
233
+ changedUserInput = !_.isEmpty(defaultValue);
234
+ defaultChoice = choices[1];
235
+ }
236
+ }
237
+ else {
238
+ defaultChoice = choices.find(x => x.value === defaultValue);
239
+ }
240
+ let keep = takeDefaults;
241
+ let selection;
242
+ if (defaultChoice && (changedUserInput || !takeDefaults)) {
243
+ keep = yield this._ui.promptConfirm("keepEnviro", `Environment: ${this.styler.hilite(this.trimTreeLines(defaultChoice.name))} `);
244
+ }
245
+ if (keep && defaultValue !== undefined) {
246
+ selection = defaultValue;
247
+ }
248
+ else {
249
+ let validator = (x) => (!_.isEmpty(x)) || "Please select an environment";
250
+ do {
251
+ selection = (yield this._ui.promptSelect("enviro", "Environment: ", choices, false, false, validator));
252
+ } while (_.isEmpty(selection)); // ensure they select a valid choice (this is only here bc validator isnt working). Consider moving this to the ui class!!!
253
+ }
254
+ // Derive entities from selection data
255
+ let parts = selection.split("|");
256
+ let entName = parts.shift();
257
+ if (entName == undefined)
258
+ throw new Error("Error selection data: enterprise was missing."); // this should never happen
259
+ let envName = parts.shift();
260
+ if (envName == undefined)
261
+ throw new Error("Error selection data: environment was missing."); // this should never happen
262
+ // assertion ok here bc choices were built from the same rootmap obj
263
+ let ent = rootMap.enterprises.find(e => e.name == entName);
264
+ enviro = ent.environments.find(e => e.name == envName);
265
+ // CLUSTER SELECTION (if needed)
266
+ let clusterName = parts.shift();
267
+ if (clusterName == undefined) {
268
+ let clusterChoices = (_a = enviro.clusters) === null || _a === void 0 ? void 0 : _a.map(c => ({ name: c.name.concat(this.styler.dim(" (".concat(c.provider, " ", c.locationName, ")"))), value: c.name })); // Assertion ok
269
+ clusterName = (yield this._ui.promptSelect("cluster", "Cluster: ", clusterChoices, false, false));
270
+ }
271
+ cluster = (_b = enviro.clusters) === null || _b === void 0 ? void 0 : _b.find(c => c.name == clusterName);
272
+ return [enviro, cluster];
273
+ });
274
+ }
275
+ /** Selects a unique "enterprise|enviro|cluster?".
276
+ *
277
+ * @param embellisher (optional) Adds custom content to each branch in the tree
278
+ * */
279
+ buildEnviroClusterTree(rootMap, embellisher) {
280
+ let tree = [];
281
+ for (let ent of rootMap.enterprises) {
282
+ let entBranch = { text: this.styler.dim(`${ent.name} enterprise:`), value: "" }; // TODO: Make this an invalid selection
283
+ embellisher === null || embellisher === void 0 ? void 0 : embellisher.eachEnterprise(entBranch, ent, rootMap);
284
+ for (let env of _.sortBy(ent.environments, e => e.sequence, e => e.name)) {
285
+ let envBranch = { text: env.name, value: ent.name.concat("|", env.name) };
286
+ // ea enviro
287
+ if (env.clusters == undefined || env.clusters.length == 0) {
288
+ envBranch.text = this.styler.dim(envBranch.text.concat(" (no cluster)")); // this should never happen, but here for clarity in case of bad data.
289
+ envBranch.value = ""; // Invalid selection (gotta have a cluster)
290
+ }
291
+ else if (env.clusters.length == 1) {
292
+ // suffix w the one and only cluster in this enviro, but only if it's one of many clusters in the enterprise
293
+ if (rootMap.clusters.length > 1) {
294
+ let cluster = env.clusters[0];
295
+ envBranch.text = env.name.concat(this.styler.dim(" (".concat(cluster.name, ", ", cluster.provider, " ", cluster.locationName, ")")));
296
+ }
297
+ envBranch.value = envBranch.value.concat("|", env.clusters[0].name);
298
+ }
299
+ else {
300
+ envBranch.text = env.name.concat(this.styler.dim(" (".concat(env.clusters.length.toString(), " clusters)")));
301
+ }
302
+ embellisher === null || embellisher === void 0 ? void 0 : embellisher.eachEnviro(envBranch, env, ent, rootMap);
303
+ // Commented out bc: selecting from many child clusters can be confusing to the user (who thinks theyre selecting an enviro). WIll have to drill down after as needed.
304
+ // // ea cluster (if there's more than one)
305
+ // if ((env.clusters?.length ?? 0) > 1) {
306
+ // for (let cluster of env.clusters ?? []) {
307
+ // let clusterBranch: TextValueParent = {
308
+ // text: cluster.name.concat(this.styler.dim(" (".concat(cluster.provider, " ", cluster.locationName, ")"))),
309
+ // value: ent.name.concat("|", env.name, "|", cluster.name)
310
+ // }
311
+ // embellisher?.eachCluster(clusterBranch, cluster, env, ent, rootMap);
312
+ // if (envBranch.children === undefined) envBranch.children = [];
313
+ // envBranch.children?.push(clusterBranch)
314
+ // }
315
+ // }
316
+ if (entBranch.children === undefined)
317
+ entBranch.children = [];
318
+ entBranch.children.push(envBranch);
319
+ }
320
+ tree.push(entBranch);
321
+ }
322
+ return tree;
323
+ }
204
324
  /** Truncates the string to the given length with an ellipses as suffix */
205
325
  ellipsis(maxLength, value) {
206
326
  let output = value;
@@ -210,6 +330,10 @@ let RootMapUiUtils = class RootMapUiUtils {
210
330
  }
211
331
  return output;
212
332
  }
333
+ trimTreeLines(candidate) {
334
+ let rxPattern = /^[│├└─\s]+/;
335
+ return candidate.replace(rxPattern, "").trim();
336
+ }
213
337
  buildSelectChoicesFrom(tree) {
214
338
  try {
215
339
  let choices = [];
@@ -235,8 +359,8 @@ let RootMapUiUtils = class RootMapUiUtils {
235
359
  };
236
360
  RootMapUiUtils = tslib_1.__decorate([
237
361
  (0, inversify_1.injectable)(),
238
- tslib_1.__param(0, (0, inversify_1.inject)(codiac_ops_common_1.INTERFACES_OPS.IUserInputProvider)),
239
- tslib_1.__param(1, (0, inversify_1.inject)(codiac_ops_common_1.INTERFACES_OPS.IOutputStyler)),
362
+ tslib_1.__param(0, (0, inversify_1.inject)(ops_1.INTERFACES_CLI.IUserInputProvider)),
363
+ tslib_1.__param(1, (0, inversify_1.inject)(ops_1.INTERFACES_CLI.IOutputStyler)),
240
364
  tslib_1.__metadata("design:paramtypes", [Object, Object])
241
365
  ], RootMapUiUtils);
242
366
  exports.RootMapUiUtils = RootMapUiUtils;
@@ -1 +1 @@
1
- {"version":3,"file":"rootmap-ui-utils.js","sourceRoot":"","sources":["../../src/uilogic/rootmap-ui-utils.ts"],"names":[],"mappings":";;;;AAAA,yCAA+C;AAC/C,oEAAiG;AAEjG,4DAAwH;AACxH,2CAA2C;AAC3C,4BAA6B;AAS5B,CAAC;AAIK,IAAM,cAAc,GAApB,MAAM,cAAc;IAEzB,YACuD,GAAuB,EAC5B,OAAsB;QADjB,QAAG,GAAH,GAAG,CAAoB;QAC5B,YAAO,GAAP,OAAO,CAAe;IAGxE,CAAC;IAID;;;;;;+EAM2E;IAC9D,mBAAmB,CAAyD,SAAqB,EAAE,OAAgB;;YAC9H,IAAI;gBACF,IAAI,GAAmB,CAAC;gBACxB,IAAI,SAAS,CAAC,UAAU,IAAI,SAAS,EAAE;oBACrC,gCAAgC;oBAChC,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;wBACpC,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;qBAC7F;oBACD,IAAI,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,UAAU,CAAC,CAAC;oBAC3E,IAAI,KAAK,IAAI,SAAS;wBAAE,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC;iBAC1D;gBACD,IAAI,SAAS,CAAC,UAAU,IAAI,SAAS,EAAE;oBACrC,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,UAAU,CAAE,CAAC,CAAC,0EAA0E;iBAClJ;qBAAM;oBACL,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;wBACpC,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;wBAC5B,SAAS,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,CAAE,+BAA+B;qBAClE;yBAAM;wBACL,gBAAgB;wBAChB,IAAI,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;wBACnD,SAAS,CAAC,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,YAAY,EAAE,cAAc,EAAE,OAAO,CAAC,CAAE,CAAC;wBAC7F,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,UAAU,CAAC,CAAE,CAAC,CAAE,4DAA4D;qBACvI;iBACF;gBACD,OAAO,GAAG,CAAC;aAEZ;YAAC,OAAO,GAAG,EAAE;gBACZ,MAAM,GAAG,CAAC;aACX;QACH,CAAC;KAAA;IAGD,yGAAyG;IAC5F,cAAc,CAAC,MAA0B,EAAE,OAA4B;;YAElF,IAAI,QAAQ,GAAuB,OAAO,CAAC;YAC3C,IAAI,OAAO,GAAY,KAAK,CAAC;YAE7B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;gBACvB,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;aACjG;YACD,IAAI,QAAQ,IAAI,SAAS,EAAE;gBACzB,wCAAwC;gBACxC,IAAI,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;gBAClD,IAAI,KAAK,IAAI,SAAS,EAAE;oBACtB,QAAQ,GAAG,SAAS,CAAC;iBACtB;aACF;YACD,IAAI,QAAQ,IAAI,SAAS,EAAE;gBACzB,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;oBACvB,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,+BAA+B;iBAC3D;qBAAM;oBACL,gBAAgB;oBAChB,IAAI,OAAO,GAAmB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC3F,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAE,CAAC,CAAE,wCAAwC;iBAClH;gBACD,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC;aACzC;YACD,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC7B,CAAC;KAAA;IAKD;;;;OAIG;IACU,gBAAgB,CAAC,UAAkB,EAAE,OAAgB,EAAE,YAAiC,EAAE,eAAwB,KAAK,EAAE,WAAqC;;YACzK,IAAI;gBACF,IAAI,MAAc,CAAC;gBAEnB,4CAA4C;gBAC5C,IAAI,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;gBAC1D,IAAI,OAAO,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;gBAGnD,UAAU;gBACV,wDAAwD;gBACxD,4DAA4D;gBAC5D,sIAAsI;gBACtI,wEAAwE;gBACxE,kJAAkJ;gBAElJ,iHAAiH;gBACjH,MAAM,UAAU,GAAG,UAAU,CAAC;gBAC9B,IAAI,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;gBACrE,IAAI,gBAAgB,GAAG,KAAK,CAAC;gBAC7B,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC3B,IAAI,YAAY,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;wBAChE,gBAAgB,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;wBAC5C,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;qBAC7D;iBACF;gBAED,IAAI,IAAI,GAAG,YAAY,CAAC;gBACxB,IAAI,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,GAAG,UAAU,GAAG,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,YAAY,CAAC,EAAE;oBACjI,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,aAAa,EAAE,YAAY,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;iBACtG;gBACD,IAAI,IAAI,IAAI,YAAY,KAAK,SAAS,EAAE;oBACtC,MAAM,GAAG,YAAY,CAAC;iBACvB;qBAAM;oBACL,IAAI,KAAyB,CAAC;oBAC9B,IAAI,MAA0B,CAAC;oBAC/B,GAAG;wBACD,IAAI,KAAK,KAAK,aAAa,EAAE;4BAC3B,4CAA4C;yBAC7C;wBACD,IAAI,SAAS,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAE,CAAC;wBAC9F,IAAI,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBACjC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;wBACjB,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;qBACnB,QAAQ,KAAK,KAAK,SAAS,EAAC,CAAG,+BAA+B;oBAC/D,MAAM,GAAG,MAAM,CAAC;iBACjB;gBAED,IAAI,GAAG,GAAG,IAAI,CAAC,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAE,0DAA0D;gBAC9H,IAAI,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;gBAEzE,iBAAiB;gBACjB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;aAC3B;YAAC,OAAO,GAAG,EAAE;gBACZ,MAAM,CAAC,GAAG,CAAC,CAAC;aACb;QACH,CAAC;KAAA;IAIM,qBAAqB,CAAC,UAAkB,EAAE,OAAe,EAAE,OAAgB;QAChF,IAAI;YAEF,IAAI,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;YAC/D,IAAI,GAAG,KAAK,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,UAAU,GAAG,CAAC,CAAC;YAEhH,IAAI,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC;YAClF,IAAI,MAAM,KAAK,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,OAAO,GAAG,CAAC,CAAC;YAE7G,OAAO,MAAM,CAAC;SACf;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,GAAG,CAAC;SACX;IACH,CAAC;IAGD,qDAAqD;IAC9C,eAAe,CAAC,UAAkB,EAAE,WAAmB,EAAE,OAAe,EAAE,OAAgB;QAC/F,IAAI;YACF,IAAI,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,UAAU,CAAE,CAAC;YACzE,IAAI,SAAS,GAAG,SAAS;iBACtB,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,WAAW,CAAE;iBAClD,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,OAAO,CAAE,CAAC;YAE1C,OAAO,SAAS,CAAC;SAClB;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,GAAG,CAAC;SACX;IACH,CAAC;IAID;;;QAGI;IACG,gBAAgB,CAAC,OAAgB,EAAE,WAAqC;;QAC7E,IAAI,IAAI,GAAsB,EAAE,CAAC;QAEjC,KAAK,IAAI,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE;YACnC,IAAI,SAAS,GAAoB,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,IAAI,cAAc,EAAE,KAAK,EAAE,GAAG,sBAAU,CAAC,UAAU,IAAI,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;YACpH,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;YAErD,KAAK,IAAI,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;gBACxE,IAAI,SAAS,GAAoB,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,sBAAU,CAAC,WAAW,IAAI,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;gBACzG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,UAAU,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;gBAEtD,KAAK,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE;oBAC5B,IAAI,SAAS,GAAoB;wBAC/B,IAAI,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE;wBACnB,KAAK,EAAE,GAAG,sBAAU,CAAC,OAAO,IAAI,GAAG,CAAC,IAAI,EAAE;qBAC3C,CAAA;oBACD,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,WAAW,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;oBAE5D,IAAI,SAAS,CAAC,QAAQ,KAAK,SAAS;wBAAE,SAAS,CAAC,QAAQ,GAAG,EAAE,CAAC;oBAC9D,MAAA,SAAS,CAAC,QAAQ,0CAAE,IAAI,CAAC,SAAS,CAAC,CAAA;iBACpC;gBAED,IAAI,SAAS,CAAC,QAAQ,KAAK,SAAS;oBAAE,SAAS,CAAC,QAAQ,GAAG,EAAE,CAAC;gBAC9D,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACpC;YAED,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACtB;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAKD,0EAA0E;IAChE,QAAQ,CAAC,SAAiB,EAAE,KAAa;QACjD,IAAI,MAAM,GAAW,KAAK,CAAC;QAC3B,IAAI,MAAM,CAAC,MAAM,GAAG,SAAS,EAAE;YAC7B,IAAI,QAAQ,GAAG,KAAK,CAAC,CAAE,uGAAuG;YAC9H,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;SAC5E;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAKS,sBAAsB,CAAC,IAAuB;QACtD,IAAI;YACF,IAAI,OAAO,GAAmB,EAAE,CAAC;YAEjC,mEAAmE;YACnE,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAoB,IAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAGhH,8BAA8B;YAC9B,2BAA2B;YAC3B,GAAG;YACH,0EAA0E;YAC1E,8BAA8B;YAC9B,GAAG;YACH,qDAAqD;YACrD,iEAAiE;YACjE,iCAAiC;YACjC,MAAM;YACN,IAAI;YAEJ,OAAO,OAAO,CAAC;SAChB;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,GAAG,CAAC;SACX;IACH,CAAC;CAGF,CAAA;AAlQY,cAAc;IAD1B,IAAA,sBAAU,GAAE;IAIR,mBAAA,IAAA,kBAAM,EAAC,kCAAc,CAAC,kBAAkB,CAAC,CAAA;IACzC,mBAAA,IAAA,kBAAM,EAAC,kCAAc,CAAC,aAAa,CAAC,CAAA;;GAJ5B,cAAc,CAkQ1B;AAlQY,wCAAc"}
1
+ {"version":3,"file":"rootmap-ui-utils.js","sourceRoot":"","sources":["../../src/uilogic/rootmap-ui-utils.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { AuthTenant } from '@codiac.io/codiac-common/security/auth-entities';
2
2
  import { CodiacClient, CodiacClient as AuthClient } from '../apis/codiac-api';
3
3
  import { ProjectConfig, UserContext } from '@codiac.io/codiac-relay-contracts';
4
4
  import { IBetterLogger } from '@codiac.io/codiac-common/IBetterLogger';
5
- import { IUserInputProvider, IOutputStyler } from '@codiac.io/codiac-ops-common';
5
+ import { IUserInputProvider, IOutputStyler } from '../ops';
6
6
  import { ProjectContextRepo } from '../ops';
7
7
  /** Interfaces with CLI user to establish a tenant context. */
8
8
  export declare class TenantContextualizer {
@@ -7,6 +7,7 @@ const fs = require("fs");
7
7
  const codiac_relay_contracts_1 = require("@codiac.io/codiac-relay-contracts");
8
8
  const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
9
9
  const codiac_constants_1 = require("./codiac-constants");
10
+ const ops_1 = require("./ops");
10
11
  /** Simply deserializes the currently cached user context from its config file.
11
12
  * This class exists so that the load methods can be called before an api client gets instantiated. */
12
13
  class UserContextLoader {
@@ -31,7 +32,7 @@ class UserContextLoader {
31
32
  loadUserContext(tenantCode) {
32
33
  // let output: UserContext | undefined;
33
34
  let homeDir = "~/"; // path.posix.resolve("~/"); // NOTE: This tilde (~) may not be valid on a windows box.
34
- let pathName = path.posix.join(homeDir, codiac_ops_common_1.OpsConstants.CLI_CONFIG_FOLDER_NAME, codiac_constants_1.CliConstants.USER_CONTEXT_FILENAME);
35
+ let pathName = path.posix.join(homeDir, ops_1.OpsConstants.CLI_CONFIG_FOLDER_NAME, codiac_constants_1.CliConstants.USER_CONTEXT_FILENAME);
35
36
  this.logger.trace(`Reading ${pathName}...`);
36
37
  let machineUserContext = codiac_ops_common_1.JsonUtils.deserializeJsonFile(pathName);
37
38
  if (machineUserContext) {
@@ -79,7 +80,7 @@ class UserContextLoader {
79
80
  return new Promise((resolve, reject) => {
80
81
  try {
81
82
  let homeDir = "~/"; // path.posix.resolve("~/"); // NOTE: This tilde (~) may not be valid on a windows box.
82
- let pathName = path.posix.join(codiac_ops_common_1.OpsUtils.resolveHomeDir(homeDir), codiac_ops_common_1.OpsConstants.CLI_CONFIG_FOLDER_NAME, codiac_constants_1.CliConstants.USER_CONTEXT_FILENAME);
83
+ let pathName = path.posix.join(codiac_ops_common_1.OpsUtils.resolveHomeDir(homeDir), ops_1.OpsConstants.CLI_CONFIG_FOLDER_NAME, codiac_constants_1.CliConstants.USER_CONTEXT_FILENAME);
83
84
  pathName = path.normalize(pathName);
84
85
  if (fs.existsSync(pathName)) {
85
86
  fs.rm(pathName, { force: true }, () => {
@@ -144,7 +145,7 @@ class UserContextManager {
144
145
  * TODO: Consider writing this to the cache folder instead of the config folder.
145
146
  * Throws any encountered exceptions. */
146
147
  writeUserContext(userContext) {
147
- let pathName = path.join("~/", codiac_ops_common_1.OpsConstants.CLI_CONFIG_FOLDER_NAME, codiac_constants_1.CliConstants.USER_CONTEXT_FILENAME);
148
+ let pathName = path.join("~/", ops_1.OpsConstants.CLI_CONFIG_FOLDER_NAME, codiac_constants_1.CliConstants.USER_CONTEXT_FILENAME);
148
149
  this.logger.debug(`Writing UserContext to ${pathName}`);
149
150
  codiac_ops_common_1.JsonUtils.serializeJsonFile(userContext, pathName);
150
151
  }
@@ -1 +1 @@
1
- {"version":3,"file":"user-context-loader.js","sourceRoot":"","sources":["../src/user-context-loader.ts"],"names":[],"mappings":";;;;AAAA,6BAA6B;AAC7B,yBAAyB;AAKzB,8EAAgE;AAChE,oEAAiF;AACjF,yDAAkD;AAGlD;sGACsG;AACtG,MAAa,iBAAiB;IAC5B,YAAoB,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IACzC,CAAC;IAED;;;;;;;;;;;;;;SAcK;IACL,eAAe,CAAC,UAA+B;QAC7C,uCAAuC;QACvC,IAAI,OAAO,GAAG,IAAI,CAAC,CAAC,yFAAyF;QAC7G,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,gCAAY,CAAC,sBAAsB,EAAE,+BAAY,CAAC,qBAAqB,CAAC,CAAC;QACjH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,QAAQ,KAAK,CAAC,CAAA;QAC3C,IAAI,kBAAkB,GAAG,6BAAS,CAAC,mBAAmB,CAAc,QAAQ,CAAC,CAAC;QAC9E,IAAI,kBAAkB,EAAE;YACtB,IAAI,UAAU,KAAK,SAAS,EAAE;gBAC5B,+BAA+B;aAChC;iBAAM,EAAG,+BAA+B;gBACvC,IAAI,kBAAkB,CAAC,iBAAiB,KAAK,UAAU,EAAE;oBACvD,+BAA+B;iBAChC;qBAAM;oBACL,IAAI,CAAC,uBAAuB,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;oBAC7D,+BAA+B;iBAChC;aACF;YACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6CAA6C,kBAAkB,CAAC,QAAQ,iBAAiB,kBAAkB,CAAC,iBAAiB,EAAE,CAAC,CAAA;SACnJ;QACD,OAAO,kBAAkB,CAAC,CAAC,UAAU;IACvC,CAAC;IAGD;;;;;;;;MAQE;IACF,uBAAuB,CAAC,UAAkB,EAAE,WAAwB;QAElE,WAAW,CAAC,iBAAiB,GAAG,WAAW,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC3E,WAAW,CAAC,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAE1D,sEAAsE;QACtE,8IAA8I;QAC9I,WAAW,CAAC,eAAe,GAAG,SAAS,CAAC;QAExC,yDAAyD;QACzD,WAAW,CAAC,iBAAiB,GAAG,SAAS,CAAC;QAC1C,IACE,CAAC,WAAW,CAAC,YAAY,KAAK,SAAS,IAAI,WAAW,CAAC,YAAY,KAAK,EAAE,CAAC;eACxE,CAAC,WAAW,CAAC,iBAAiB,KAAK,SAAS,CAAC,EAChD;YACA,WAAW,CAAC,iBAAiB,GAAG,UAAU,CAAC;SAC5C;IACH,CAAC;IAGD,uEAAuE;IACjE,gBAAgB;;YACpB,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC3C,IAAI;oBACF,IAAI,OAAO,GAAG,IAAI,CAAC,CAAC,yFAAyF;oBAC7G,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,4BAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,gCAAY,CAAC,sBAAsB,EAAE,+BAAY,CAAC,qBAAqB,CAAC,CAAC;oBAC1I,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;oBAEpC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;wBAC3B,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE;4BACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,QAAQ,IAAI,CAAC,CAAC;4BAC9D,OAAO,EAAE,CAAC;wBACZ,CAAC,CAAC,CAAC;qBACJ;yBAAM;wBACL,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uDAAuD,QAAQ,GAAG,CAAC,CAAC;wBACtF,OAAO,EAAE,CAAC;qBACX;iBAEF;gBAAC,OAAO,GAAG,EAAE;oBACZ,MAAM,CAAC,GAAG,CAAC,CAAC;iBACb;YACH,CAAC,CAAC,CAAC;QACL,CAAC;KAAA;CACF;AA9FD,8CA8FC;AAGD,wFAAwF;AACxF,MAAa,kBAAkB;IAC7B,YAAoB,UAAsB,EAAU,MAAqB;QAArD,eAAU,GAAV,UAAU,CAAY;QAAU,WAAM,GAAN,MAAM,CAAe;QACvE,IAAI,CAAC,MAAM,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC;IAGD;;;OAGG;IACG,kBAAkB,CAAC,cAA2B;;YAClD,OAAO,IAAI,OAAO,CAA+C,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;gBACzF,IAAI;oBACF,IAAI,MAAM,GAAiD,EAAE,CAAC;oBAC9D,IAAI,CAAC,cAAc;wBAAE,cAAc,GAAG,IAAI,oCAAW,EAAE,CAAC;oBACxD,IAAI,cAAc,CAAC,YAAY,EAAE;wBAC/B,IAAI,aAAa,GAAG,MAAM,IAAI,CAAC,UAAW,CAAC,UAAU,CAAC,YAAY,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;wBAEhG,IAAI,aAAa,CAAC,OAAO;4BAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,aAAa,CAAC,OAAO,EAAE,CAAC,CAAA;wBAEvF,IAAI,aAAa,CAAC,MAAM,EAAE;4BACxB,MAAM,CAAC,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,2CAA2C;yBACrF;wBACD,IAAI,aAAa,CAAC,OAAO,IAAI,aAAa,CAAC,MAAM,EAAE;4BACjD,cAAc,CAAC,YAAY,GAAG,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC;4BACzD,cAAc,CAAC,eAAe,GAAG,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC;4BACjE,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;4BACtC,MAAM,CAAC,OAAO,GAAG,cAAc,CAAC;yBACjC;qBACF;oBACD,OAAO,CAAC,MAAM,CAAC,CAAC;iBACjB;gBAAC,OAAO,GAAG,EAAE;oBACZ,MAAM,CAAC,GAAG,CAAC,CAAC;iBACb;YACH,CAAC,CAAA,CAAC,CAAC;QACL,CAAC;KAAA;IAGD;;4CAEwC;IACxC,gBAAgB,CAAC,WAAwB;QACvC,IAAI,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,gCAAY,CAAC,sBAAsB,EAAE,+BAAY,CAAC,qBAAqB,CAAC,CAAC;QACxG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,QAAQ,EAAE,CAAC,CAAC;QACxD,6BAAS,CAAC,iBAAiB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IAID;gEAC4D;IAC/C,iBAAiB,CAAC,cAAuC,EAAE,QAAgB,EAAE,KAAa,EAAE,UAAmB,EAAE,eAAsB;;YAClJ,OAAO,IAAI,OAAO,CAAc,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;gBACxD,IAAI;oBACF,kBAAkB;oBAClB,IAAI,CAAC,cAAc,EAAE,EAAG,iFAAiF;wBACvG,cAAc,GAAG,IAAI,oCAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC;qBAChF;yBAAM;wBACL,cAAc,CAAC,QAAQ,GAAG,QAAQ,CAAC;wBACnC,cAAc,CAAC,iBAAiB,GAAG,UAAU,CAAC;wBAC9C,cAAc,CAAC,YAAY,GAAG,KAAK,CAAC;wBACpC,cAAc,CAAC,eAAe,GAAG,eAAe,CAAC;wBACjD,IAAI,UAAU;4BAAE,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,KAAK,CAAA;qBAC1D;oBACD,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;oBAC5C,WAAW;oBACX,gCAAgC;oBAChC,gGAAgG;oBAChG,IAAI;oBACJ,OAAO,CAAC,cAAc,CAAC,CAAC;iBACzB;gBAAC,OAAO,GAAG,EAAE;oBACZ,MAAM,CAAC,GAAG,CAAC,CAAC;iBACb;YACH,CAAC,CAAA,CAAC,CAAC;QACL,CAAC;KAAA;CAEF;AA5ED,gDA4EC"}
1
+ {"version":3,"file":"user-context-loader.js","sourceRoot":"","sources":["../src/user-context-loader.ts"],"names":[],"mappings":"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"}