@codiac.io/codiac-cli 1.2.219 → 1.2.222

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 (1279) hide show
  1. package/README.md +4636 -4651
  2. package/bin/dev +16 -16
  3. package/bin/dev.cmd +2 -2
  4. package/bin/run +3 -3
  5. package/bin/run.cmd +3 -3
  6. package/codiac.json +9 -9
  7. package/dist/apis/codiac-api/common/api-client-base.d.ts +165 -165
  8. package/dist/apis/codiac-api/common/api-client-base.js +547 -547
  9. package/dist/apis/codiac-api/common/api-user-creds.d.ts +7 -7
  10. package/dist/apis/codiac-api/common/api-user-creds.js +18 -18
  11. package/dist/apis/codiac-api/common/config-loader.d.ts +6 -6
  12. package/dist/apis/codiac-api/common/config-loader.js +18 -18
  13. package/dist/apis/codiac-api/common/endpoint-spec.d.ts +17 -17
  14. package/dist/apis/codiac-api/common/endpoint-spec.js +27 -27
  15. package/dist/apis/codiac-api/common/security/api-auth-methods-legacy.d.ts +87 -87
  16. package/dist/apis/codiac-api/common/security/api-auth-methods-legacy.js +367 -367
  17. package/dist/apis/codiac-api/common/security/auth-constants.d.ts +15 -15
  18. package/dist/apis/codiac-api/common/security/auth-constants.js +21 -21
  19. package/dist/apis/codiac-api/common/security/i-auth-client.d.ts +44 -44
  20. package/dist/apis/codiac-api/common/security/i-auth-client.js +2 -2
  21. package/dist/apis/codiac-api/common/security/token-holder.d.ts +13 -13
  22. package/dist/apis/codiac-api/common/security/token-holder.js +17 -17
  23. package/dist/apis/codiac-api/common/utils.d.ts +23 -23
  24. package/dist/apis/codiac-api/common/utils.js +82 -82
  25. package/dist/apis/codiac-api/contracts/index.d.ts +1 -1
  26. package/dist/apis/codiac-api/contracts/index.js +4 -4
  27. package/dist/apis/codiac-api/gen/client-config.d.ts +10 -10
  28. package/dist/apis/codiac-api/gen/client-config.js +28 -28
  29. package/dist/apis/codiac-api/gen/client.d.ts +1663 -1663
  30. package/dist/apis/codiac-api/gen/client.js +15630 -15629
  31. package/dist/apis/codiac-api/gen/client.js.map +1 -1
  32. package/dist/apis/codiac-api/gen/contracts.d.ts +2722 -2722
  33. package/dist/apis/codiac-api/gen/contracts.js +402 -402
  34. package/dist/apis/codiac-api/index.d.ts +3 -3
  35. package/dist/apis/codiac-api/index.js +8 -8
  36. package/dist/apis/codiac-relay/common/api-client-base.d.ts +165 -165
  37. package/dist/apis/codiac-relay/common/api-client-base.js +547 -547
  38. package/dist/apis/codiac-relay/common/api-user-creds.d.ts +7 -7
  39. package/dist/apis/codiac-relay/common/api-user-creds.js +18 -18
  40. package/dist/apis/codiac-relay/common/config-loader.d.ts +6 -6
  41. package/dist/apis/codiac-relay/common/config-loader.js +18 -18
  42. package/dist/apis/codiac-relay/common/endpoint-spec.d.ts +17 -17
  43. package/dist/apis/codiac-relay/common/endpoint-spec.js +27 -27
  44. package/dist/apis/codiac-relay/common/security/api-auth-methods-legacy.d.ts +87 -87
  45. package/dist/apis/codiac-relay/common/security/api-auth-methods-legacy.js +367 -367
  46. package/dist/apis/codiac-relay/common/security/auth-constants.d.ts +15 -15
  47. package/dist/apis/codiac-relay/common/security/auth-constants.js +21 -21
  48. package/dist/apis/codiac-relay/common/security/i-auth-client.d.ts +44 -44
  49. package/dist/apis/codiac-relay/common/security/i-auth-client.js +2 -2
  50. package/dist/apis/codiac-relay/common/security/token-holder.d.ts +13 -13
  51. package/dist/apis/codiac-relay/common/security/token-holder.js +17 -17
  52. package/dist/apis/codiac-relay/common/utils.d.ts +23 -23
  53. package/dist/apis/codiac-relay/common/utils.js +82 -82
  54. package/dist/apis/codiac-relay/contracts/index.d.ts +1 -1
  55. package/dist/apis/codiac-relay/contracts/index.js +4 -4
  56. package/dist/apis/codiac-relay/gen/client-config.d.ts +10 -10
  57. package/dist/apis/codiac-relay/gen/client-config.js +28 -28
  58. package/dist/apis/codiac-relay/gen/client.d.ts +244 -244
  59. package/dist/apis/codiac-relay/gen/client.js +1862 -1862
  60. package/dist/apis/codiac-relay/gen/contracts.d.ts +3115 -3115
  61. package/dist/apis/codiac-relay/gen/contracts.js +434 -434
  62. package/dist/apis/codiac-relay/index.d.ts +3 -3
  63. package/dist/apis/codiac-relay/index.js +8 -8
  64. package/dist/cli-common/ImagesList.js +66 -66
  65. package/dist/cli-common/argument-manager.d.ts +28 -28
  66. package/dist/cli-common/argument-manager.js +194 -194
  67. package/dist/cli-common/built-in-cli-user-input.d.ts +18 -18
  68. package/dist/cli-common/built-in-cli-user-input.js +309 -309
  69. package/dist/cli-common/cli-interfaces.js +6 -6
  70. package/dist/cli-common/command-base.d.ts +74 -72
  71. package/dist/cli-common/command-base.js +197 -182
  72. package/dist/cli-common/command-base.js.map +1 -1
  73. package/dist/cli-common/entities/index.d.ts +1 -1
  74. package/dist/cli-common/entities/index.js +4 -4
  75. package/dist/cli-common/entities/prompt-choice.d.ts +7 -7
  76. package/dist/cli-common/entities/prompt-choice.js +2 -2
  77. package/dist/cli-common/file-selector.d.ts +48 -48
  78. package/dist/cli-common/file-selector.js +186 -186
  79. package/dist/cli-common/i-user-input-provider.js +18 -18
  80. package/dist/cli-common/index.d.ts +4 -4
  81. package/dist/cli-common/index.js +10 -10
  82. package/dist/cli-common/mock-ui.d.ts +27 -27
  83. package/dist/cli-common/mock-ui.js +82 -82
  84. package/dist/cli-common/prompt-select-fuzzy.d.ts +19 -19
  85. package/dist/cli-common/prompt-select-fuzzy.js +118 -118
  86. package/dist/cli-common/tenant-contextualizer.js +435 -435
  87. package/dist/cli-common/test/tenant-contextualizer.spec.js +142 -142
  88. package/dist/cli-entities/output-format-enum.d.ts +7 -7
  89. package/dist/cli-entities/output-format-enum.js +11 -11
  90. package/dist/cli-entities/prompt-choice.js +5 -5
  91. package/dist/codiac-constants.d.ts +48 -38
  92. package/dist/codiac-constants.js +53 -43
  93. package/dist/codiac-constants.js.map +1 -1
  94. package/dist/codiac-entities/asset-binding.d.ts +12 -12
  95. package/dist/codiac-entities/asset-binding.js +17 -17
  96. package/dist/codiac-entities/azure-container-registry.d.ts +4 -4
  97. package/dist/codiac-entities/azure-container-registry.js +2 -2
  98. package/dist/codiac-entities/azure-service-principal.d.ts +23 -23
  99. package/dist/codiac-entities/azure-service-principal.js +23 -23
  100. package/dist/codiac-entities/cloud-account-ref.d.ts +28 -28
  101. package/dist/codiac-entities/cloud-account-ref.js +36 -36
  102. package/dist/codiac-entities/deployment-temp.js +132 -132
  103. package/dist/codiac-entities/i-cloud-account-ref.d.ts +5 -5
  104. package/dist/codiac-entities/i-cloud-account-ref.js +2 -2
  105. package/dist/command-base-enterprise.d.ts +121 -121
  106. package/dist/command-base-enterprise.js +523 -523
  107. package/dist/command-base-tenantless.d.ts +44 -44
  108. package/dist/command-base-tenantless.js +179 -179
  109. package/dist/commands/asset/create.d.ts +42 -42
  110. package/dist/commands/asset/create.js +475 -475
  111. package/dist/commands/asset/destroy.d.ts +20 -20
  112. package/dist/commands/asset/destroy.js +128 -128
  113. package/dist/commands/asset/helm.d.ts +23 -23
  114. package/dist/commands/asset/helm.js +152 -152
  115. package/dist/commands/asset/list.d.ts +28 -28
  116. package/dist/commands/asset/list.js +171 -171
  117. package/dist/commands/asset/probe/create.d.ts +38 -38
  118. package/dist/commands/asset/probe/create.js +186 -186
  119. package/dist/commands/asset/recycle.d.ts +23 -23
  120. package/dist/commands/asset/recycle.js +174 -174
  121. package/dist/commands/asset/view.d.ts +188 -188
  122. package/dist/commands/asset/view.js +1394 -1394
  123. package/dist/commands/asset/volume/create.d.ts +23 -23
  124. package/dist/commands/asset/volume/create.js +175 -175
  125. package/dist/commands/asset/volume/delete.d.ts +19 -19
  126. package/dist/commands/asset/volume/delete.js +111 -111
  127. package/dist/commands/asset/volume/list.d.ts +19 -19
  128. package/dist/commands/asset/volume/list.js +69 -69
  129. package/dist/commands/branch/current.d.ts +10 -10
  130. package/dist/commands/branch/current.js +33 -33
  131. package/dist/commands/branch/list.d.ts +15 -15
  132. package/dist/commands/branch/list.js +55 -55
  133. package/dist/commands/branch.d.ts +12 -12
  134. package/dist/commands/branch.js +41 -41
  135. package/dist/commands/build.d.ts +38 -38
  136. package/dist/commands/build.js +119 -119
  137. package/dist/commands/cabinet/create.d.ts +21 -21
  138. package/dist/commands/cabinet/create.js +107 -107
  139. package/dist/commands/cabinet/list.d.ts +23 -23
  140. package/dist/commands/cabinet/list.js +133 -133
  141. package/dist/commands/cabinet/obliterate.d.ts +20 -20
  142. package/dist/commands/cabinet/obliterate.js +82 -82
  143. package/dist/commands/cli.d.ts +10 -10
  144. package/dist/commands/cli.js +99 -99
  145. package/dist/commands/commit.d.ts +11 -11
  146. package/dist/commands/commit.js +39 -39
  147. package/dist/commands/config/add.d.ts +92 -78
  148. package/dist/commands/config/add.js +684 -559
  149. package/dist/commands/config/add.js.map +1 -1
  150. package/dist/commands/config/delete.d.ts +36 -18
  151. package/dist/commands/config/delete.js +307 -118
  152. package/dist/commands/config/delete.js.map +1 -1
  153. package/dist/commands/config/deploy.d.ts +22 -22
  154. package/dist/commands/config/deploy.js +124 -124
  155. package/dist/commands/config/import.d.ts +27 -27
  156. package/dist/commands/config/import.js +195 -195
  157. package/dist/commands/config/settings/get.d.ts +42 -0
  158. package/dist/commands/config/settings/get.js +315 -0
  159. package/dist/commands/config/settings/get.js.map +1 -0
  160. package/dist/commands/config/view.d.ts +25 -25
  161. package/dist/commands/config/view.js +120 -120
  162. package/dist/commands/csp/login.d.ts +18 -18
  163. package/dist/commands/csp/login.js +122 -122
  164. package/dist/commands/csp/logout.d.ts +15 -15
  165. package/dist/commands/csp/logout.js +73 -73
  166. package/dist/commands/dep/create.d.ts +13 -13
  167. package/dist/commands/dep/create.js +40 -40
  168. package/dist/commands/dep/install.d.ts +9 -9
  169. package/dist/commands/dep/install.js +29 -29
  170. package/dist/commands/dep/list.d.ts +55 -55
  171. package/dist/commands/dep/list.js +97 -97
  172. package/dist/commands/dep/remove.d.ts +12 -12
  173. package/dist/commands/dep/remove.js +61 -61
  174. package/dist/commands/dep/source.d.ts +13 -13
  175. package/dist/commands/dep/source.js +82 -82
  176. package/dist/commands/dep/syncup.d.ts +11 -11
  177. package/dist/commands/dep/syncup.js +53 -53
  178. package/dist/commands/dep/unsource.d.ts +14 -14
  179. package/dist/commands/dep/unsource.js +67 -67
  180. package/dist/commands/dep/upgrade.d.ts +44 -44
  181. package/dist/commands/dep/upgrade.js +243 -243
  182. package/dist/commands/dep.d.ts +12 -12
  183. package/dist/commands/dep.js +50 -50
  184. package/dist/commands/deploy.d.ts +38 -38
  185. package/dist/commands/deploy.js +385 -385
  186. package/dist/commands/enterprise/create.d.ts +20 -20
  187. package/dist/commands/enterprise/create.js +97 -97
  188. package/dist/commands/enterprise/list.d.ts +14 -14
  189. package/dist/commands/enterprise/list.js +83 -83
  190. package/dist/commands/env/add.d.ts +22 -22
  191. package/dist/commands/env/add.js +199 -199
  192. package/dist/commands/environment/create.d.ts +19 -19
  193. package/dist/commands/environment/create.js +88 -88
  194. package/dist/commands/environment/list.d.ts +25 -25
  195. package/dist/commands/environment/list.js +157 -157
  196. package/dist/commands/filestore/capture.d.ts +31 -31
  197. package/dist/commands/filestore/capture.js +341 -341
  198. package/dist/commands/host/map.d.ts +33 -33
  199. package/dist/commands/host/map.js +346 -346
  200. package/dist/commands/identity/delete.d.ts +15 -15
  201. package/dist/commands/identity/delete.js +82 -82
  202. package/dist/commands/identity/list.d.ts +11 -11
  203. package/dist/commands/identity/list.js +42 -42
  204. package/dist/commands/identity.d.ts +22 -22
  205. package/dist/commands/identity.js +76 -76
  206. package/dist/commands/imageRegistry/capture.d.ts +27 -27
  207. package/dist/commands/imageRegistry/capture.js +159 -159
  208. package/dist/commands/imageRegistry/forget.d.ts +23 -23
  209. package/dist/commands/imageRegistry/forget.js +160 -160
  210. package/dist/commands/imageRegistry/pullSecret/set.d.ts +27 -27
  211. package/dist/commands/imageRegistry/pullSecret/set.js +310 -310
  212. package/dist/commands/imageRegistry/pullSecret/unset.d.ts +24 -24
  213. package/dist/commands/imageRegistry/pullSecret/unset.js +242 -242
  214. package/dist/commands/images/add.d.ts +25 -25
  215. package/dist/commands/images/add.js +75 -75
  216. package/dist/commands/images/list.d.ts +14 -14
  217. package/dist/commands/images/list.js +71 -71
  218. package/dist/commands/images/patch.d.ts +14 -14
  219. package/dist/commands/images/patch.js +92 -92
  220. package/dist/commands/images/remove.d.ts +12 -12
  221. package/dist/commands/images/remove.js +37 -37
  222. package/dist/commands/images/version/bump.d.ts +18 -18
  223. package/dist/commands/images/version/bump.js +60 -60
  224. package/dist/commands/images/version.d.ts +16 -16
  225. package/dist/commands/images/version.js +64 -64
  226. package/dist/commands/init.d.ts +17 -17
  227. package/dist/commands/init.js +130 -130
  228. package/dist/commands/kit/create.d.ts +25 -25
  229. package/dist/commands/kit/create.js +141 -141
  230. package/dist/commands/login.d.ts +22 -22
  231. package/dist/commands/login.js +92 -92
  232. package/dist/commands/logout.d.ts +8 -8
  233. package/dist/commands/logout.js +36 -36
  234. package/dist/commands/merge.d.ts +12 -12
  235. package/dist/commands/merge.js +42 -42
  236. package/dist/commands/noc/cluster/create.d.ts +28 -28
  237. package/dist/commands/noc/cluster/create.js +135 -135
  238. package/dist/commands/noc/cluster/deinit.d.ts +17 -17
  239. package/dist/commands/noc/cluster/deinit.js +116 -116
  240. package/dist/commands/noc/cluster/destroy.d.ts +20 -20
  241. package/dist/commands/noc/cluster/destroy.js +137 -137
  242. package/dist/commands/noc/cluster/forget.d.ts +16 -16
  243. package/dist/commands/noc/cluster/forget.js +136 -136
  244. package/dist/commands/noc/cluster/grant.d.ts +24 -24
  245. package/dist/commands/noc/cluster/grant.js +159 -159
  246. package/dist/commands/noc/cluster/init.d.ts +17 -17
  247. package/dist/commands/noc/cluster/init.js +116 -116
  248. package/dist/commands/noc/cluster/list.d.ts +21 -21
  249. package/dist/commands/noc/cluster/list.js +83 -83
  250. package/dist/commands/noc/cluster/recreate.d.ts +28 -28
  251. package/dist/commands/noc/cluster/recreate.js +188 -188
  252. package/dist/commands/pkg/add.d.ts +15 -15
  253. package/dist/commands/pkg/add.js +42 -42
  254. package/dist/commands/pkg/list.d.ts +9 -9
  255. package/dist/commands/pkg/list.js +32 -32
  256. package/dist/commands/pkg/patch.d.ts +13 -13
  257. package/dist/commands/pkg/patch.js +78 -78
  258. package/dist/commands/pkg/remove.d.ts +12 -12
  259. package/dist/commands/pkg/remove.js +69 -69
  260. package/dist/commands/portal.d.ts +11 -11
  261. package/dist/commands/portal.js +81 -81
  262. package/dist/commands/publish.d.ts +21 -21
  263. package/dist/commands/publish.js +51 -51
  264. package/dist/commands/pull.d.ts +13 -13
  265. package/dist/commands/pull.js +29 -29
  266. package/dist/commands/push.d.ts +13 -13
  267. package/dist/commands/push.js +29 -29
  268. package/dist/commands/run.d.ts +35 -35
  269. package/dist/commands/run.js +193 -193
  270. package/dist/commands/secretStore/capture.d.ts +27 -27
  271. package/dist/commands/secretStore/capture.js +174 -174
  272. package/dist/commands/secretStore/forget.d.ts +20 -20
  273. package/dist/commands/secretStore/forget.js +146 -146
  274. package/dist/commands/stage.d.ts +13 -13
  275. package/dist/commands/stage.js +64 -64
  276. package/dist/commands/stash.d.ts +13 -13
  277. package/dist/commands/stash.js +30 -30
  278. package/dist/commands/status.d.ts +12 -12
  279. package/dist/commands/status.js +48 -48
  280. package/dist/commands/stop.d.ts +10 -10
  281. package/dist/commands/stop.js +51 -51
  282. package/dist/commands/switch.d.ts +11 -11
  283. package/dist/commands/switch.js +41 -41
  284. package/dist/commands/sync.d.ts +14 -14
  285. package/dist/commands/sync.js +20 -20
  286. package/dist/commands/tenant/create.d.ts +27 -27
  287. package/dist/commands/tenant/create.js +119 -119
  288. package/dist/commands/tenant/switch.d.ts +24 -24
  289. package/dist/commands/tenant/switch.js +108 -108
  290. package/dist/commands/unstage.d.ts +12 -12
  291. package/dist/commands/unstage.js +57 -57
  292. package/dist/commands/whereami.d.ts +15 -15
  293. package/dist/commands/whereami.js +122 -122
  294. package/dist/commands/whoami.d.ts +8 -8
  295. package/dist/commands/whoami.js +39 -39
  296. package/dist/errors/NoMembershipError.d.ts +8 -8
  297. package/dist/errors/NoMembershipError.js +14 -14
  298. package/dist/index.d.ts +1 -1
  299. package/dist/index.js +16 -16
  300. package/dist/log-update-wrapper.d.ts +24 -24
  301. package/dist/log-update-wrapper.js +28 -28
  302. package/dist/log4js-logger.d.ts +26 -26
  303. package/dist/log4js-logger.js +137 -137
  304. package/dist/ops/INTERFACES_CLI.d.ts +3 -3
  305. package/dist/ops/INTERFACES_CLI.js +7 -7
  306. package/dist/ops/LocalOps.d.ts +417 -417
  307. package/dist/ops/LocalOps.js +3121 -3121
  308. package/dist/ops/azure-container-registry-client/azure-container-registry-client.js +147 -147
  309. package/dist/ops/cli-path-walker.js +54 -54
  310. package/dist/ops/codiac-entities/dependency.d.ts +5 -5
  311. package/dist/ops/codiac-entities/dependency.js +10 -10
  312. package/dist/ops/codiac-entities/index.d.ts +1 -1
  313. package/dist/ops/codiac-entities/index.js +4 -4
  314. package/dist/ops/composite-image-registry-client.js +73 -73
  315. package/dist/ops/data/cli-context-repo.d.ts +61 -61
  316. package/dist/ops/data/cli-context-repo.js +269 -269
  317. package/dist/ops/data/index.d.ts +2 -2
  318. package/dist/ops/data/index.js +5 -5
  319. package/dist/ops/data/npm-config-repo.d.ts +13 -13
  320. package/dist/ops/data/npm-config-repo.js +64 -64
  321. package/dist/ops/docker-config.js +130 -130
  322. package/dist/ops/docker-constants.js +21 -21
  323. package/dist/ops/docker-credentials-store.js +237 -237
  324. package/dist/ops/docker-registry-api-client/docker-registry-api-client.js +288 -288
  325. package/dist/ops/docker-registry-api-client/entities/blob-sum.d.ts +7 -7
  326. package/dist/ops/docker-registry-api-client/entities/blob-sum.js +12 -12
  327. package/dist/ops/docker-registry-api-client/entities/docker-access-actions-enum.d.ts +5 -5
  328. package/dist/ops/docker-registry-api-client/entities/docker-access-actions-enum.js +9 -9
  329. package/dist/ops/docker-registry-api-client/entities/docker-auth-token-criteria.d.ts +30 -30
  330. package/dist/ops/docker-registry-api-client/entities/docker-auth-token-criteria.js +35 -35
  331. package/dist/ops/docker-registry-api-client/entities/i-docker-error-response.d.ts +55 -55
  332. package/dist/ops/docker-registry-api-client/entities/i-docker-error-response.js +51 -51
  333. package/dist/ops/docker-registry-api-client/entities/i-docker-list-response.d.ts +7 -7
  334. package/dist/ops/docker-registry-api-client/entities/i-docker-list-response.js +2 -2
  335. package/dist/ops/docker-registry-api-client/entities/image-repository.d.ts +31 -31
  336. package/dist/ops/docker-registry-api-client/entities/image-repository.js +29 -29
  337. package/dist/ops/docker-registry-api-client/entities/image-tag-criteria.d.ts +8 -8
  338. package/dist/ops/docker-registry-api-client/entities/image-tag-criteria.js +13 -13
  339. package/dist/ops/docker-registry-api-client/entities/image-tag-list.d.ts +7 -7
  340. package/dist/ops/docker-registry-api-client/entities/image-tag-list.js +12 -12
  341. package/dist/ops/docker-registry-api-client/entities/manifest-criteria.d.ts +9 -9
  342. package/dist/ops/docker-registry-api-client/entities/manifest-criteria.js +14 -14
  343. package/dist/ops/docker-registry-api-client/entities/manifest.d.ts +15 -15
  344. package/dist/ops/docker-registry-api-client/entities/manifest.js +20 -20
  345. package/dist/ops/docker-registry-api-client/entities/repository-criteria.d.ts +16 -16
  346. package/dist/ops/docker-registry-api-client/entities/repository-criteria.js +23 -23
  347. package/dist/ops/docker-registry-api-client/entities/token-response.d.ts +15 -15
  348. package/dist/ops/docker-registry-api-client/entities/token-response.js +14 -14
  349. package/dist/ops/docker-registry-api-client/entities/token.d.ts +17 -17
  350. package/dist/ops/docker-registry-api-client/entities/token.js +21 -21
  351. package/dist/ops/docker-registry-api-client/entities/version-check-criteria.d.ts +4 -4
  352. package/dist/ops/docker-registry-api-client/entities/version-check-criteria.js +9 -9
  353. package/dist/ops/dx-constants.d.ts +26 -26
  354. package/dist/ops/dx-constants.js +42 -42
  355. package/dist/ops/entities/ImageBuildContext.d.ts +12 -12
  356. package/dist/ops/entities/ImageBuildContext.js +18 -18
  357. package/dist/ops/entities/PipelineContext.d.ts +21 -21
  358. package/dist/ops/entities/PipelineContext.js +22 -22
  359. package/dist/ops/entities/TenantContext.d.ts +10 -10
  360. package/dist/ops/entities/TenantContext.js +15 -15
  361. package/dist/ops/entities/ThaulConfig.js +29 -29
  362. package/dist/ops/entities/azure-service-principal.d.ts +23 -23
  363. package/dist/ops/entities/azure-service-principal.js +23 -23
  364. package/dist/ops/entities/better-logger.js +1 -1
  365. package/dist/ops/entities/branch.d.ts +13 -13
  366. package/dist/ops/entities/branch.js +15 -15
  367. package/dist/ops/entities/cli-config.d.ts +48 -48
  368. package/dist/ops/entities/cli-config.js +60 -60
  369. package/dist/ops/entities/docker-image.d.ts +60 -60
  370. package/dist/ops/entities/docker-image.js +2 -2
  371. package/dist/ops/entities/helm-spec.d.ts +15 -15
  372. package/dist/ops/entities/helm-spec.js +22 -22
  373. package/dist/ops/entities/index.d.ts +4 -4
  374. package/dist/ops/entities/index.js +11 -11
  375. package/dist/ops/entities/operation-meta.d.ts +8 -8
  376. package/dist/ops/entities/operation-meta.js +18 -18
  377. package/dist/ops/entities/scaffolding.d.ts +19 -19
  378. package/dist/ops/entities/scaffolding.js +20 -20
  379. package/dist/ops/extensions/azart-identity-adapter.d.ts +19 -19
  380. package/dist/ops/extensions/azart-identity-adapter.js +96 -96
  381. package/dist/ops/extensions/npm-identity-adapter-base.d.ts +13 -13
  382. package/dist/ops/extensions/npm-identity-adapter-base.js +2 -2
  383. package/dist/ops/extensions/npmjs-identity-adapter.d.ts +13 -13
  384. package/dist/ops/extensions/npmjs-identity-adapter.js +63 -63
  385. package/dist/ops/git-ops.d.ts +8 -8
  386. package/dist/ops/git-ops.js +13 -13
  387. package/dist/ops/i-client-for-image-registry.js +16 -16
  388. package/dist/ops/i-identity-handler.d.ts +33 -33
  389. package/dist/ops/i-identity-handler.js +164 -164
  390. package/dist/ops/i-output-styler.js +16 -16
  391. package/dist/ops/index.d.ts +12 -12
  392. package/dist/ops/index.js +14 -14
  393. package/dist/ops/json-utils.js +58 -58
  394. package/dist/ops/no-style-output-styler.js +29 -29
  395. package/dist/ops/oauth2-client.ts/oauth2-client.d.ts +23 -23
  396. package/dist/ops/oauth2-client.ts/oauth2-client.js +63 -63
  397. package/dist/ops/project-initializer.d.ts +36 -36
  398. package/dist/ops/project-initializer.js +218 -218
  399. package/dist/ops/scaffolding/base-scaffolding.d.ts +7 -7
  400. package/dist/ops/scaffolding/base-scaffolding.js +20 -20
  401. package/dist/ops/scaffolding/codiac-api-scaffolding.d.ts +7 -7
  402. package/dist/ops/scaffolding/codiac-api-scaffolding.js +63 -63
  403. package/dist/ops/scaffolding/typescript-scaffolding.d.ts +15 -15
  404. package/dist/ops/scaffolding/typescript-scaffolding.js +162 -162
  405. package/dist/ops/test/mock-ui.d.ts +26 -26
  406. package/dist/ops/test/mock-ui.js +87 -87
  407. package/dist/ops/test/test-extensions.d.ts +13 -13
  408. package/dist/ops/test/test-extensions.js +70 -70
  409. package/dist/ops/test/when-a-recursive-file-search-is-run.spec.d.ts +2 -2
  410. package/dist/ops/test/when-a-recursive-file-search-is-run.spec.js +54 -54
  411. package/dist/ops/test/when-git-branchline-is-attempted.spec.d.ts +2 -2
  412. package/dist/ops/test/when-git-branchline-is-attempted.spec.js +37 -37
  413. package/dist/ops/test/when-versions-are-parsed.spec.d.ts +2 -2
  414. package/dist/ops/test/when-versions-are-parsed.spec.js +61 -61
  415. package/dist/ops/throwing-user-input-provider.js +36 -36
  416. package/dist/ops/workspace-versioner.d.ts +122 -122
  417. package/dist/ops/workspace-versioner.js +291 -291
  418. package/dist/prettify.d.ts +7 -7
  419. package/dist/prettify.js +23 -23
  420. package/dist/read-stdin.d.ts +2 -2
  421. package/dist/read-stdin.js +28 -28
  422. package/dist/relay/contracts/contracts.d.ts +207 -207
  423. package/dist/relay/contracts/contracts.js +229 -229
  424. package/dist/relay/extended-relay-client.d.ts +27 -27
  425. package/dist/relay/extended-relay-client.js +27 -27
  426. package/dist/relay/relay-container.d.ts +41 -41
  427. package/dist/relay/relay-container.js +297 -297
  428. package/dist/relay/wsclient/relay-socket-listener.d.ts +68 -68
  429. package/dist/relay/wsclient/relay-socket-listener.js +164 -164
  430. package/dist/relay/wsclient/relay-websocket-client.d.ts +33 -33
  431. package/dist/relay/wsclient/relay-websocket-client.js +178 -178
  432. package/dist/relay/wsclient/rx-websocket-subject.d.ts +25 -25
  433. package/dist/relay/wsclient/rx-websocket-subject.js +133 -133
  434. package/dist/relay/wsclient/socket-contracts.d.ts +22 -22
  435. package/dist/relay/wsclient/socket-contracts.js +2 -2
  436. package/dist/standard-probes.d.ts +5 -5
  437. package/dist/standard-probes.js +21 -21
  438. package/dist/uilogic/build-configurator.d.ts +21 -21
  439. package/dist/uilogic/build-configurator.js +110 -110
  440. package/dist/uilogic/cloud-provider-contextualizer.d.ts +46 -46
  441. package/dist/uilogic/cloud-provider-contextualizer.js +193 -193
  442. package/dist/uilogic/cloud-resource-configurator-factory.d.ts +41 -41
  443. package/dist/uilogic/cloud-resource-configurator-factory.js +157 -157
  444. package/dist/uilogic/cloud-resource-configurators/aws-resource-configurator.d.ts +38 -38
  445. package/dist/uilogic/cloud-resource-configurators/aws-resource-configurator.js +347 -347
  446. package/dist/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js +77 -77
  447. package/dist/uilogic/cloud-resource-configurators/az-interactive-login-configurator.d.ts +42 -42
  448. package/dist/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js +247 -247
  449. package/dist/uilogic/cloud-resource-configurators/azure-resource-configurator.d.ts +110 -110
  450. package/dist/uilogic/cloud-resource-configurators/azure-resource-configurator.js +785 -785
  451. package/dist/uilogic/cloud-resource-configurators/azure-types.js +9 -9
  452. package/dist/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.d.ts +24 -24
  453. package/dist/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js +105 -105
  454. package/dist/uilogic/cloud-resource-configurators/helm-resource-configurator.d.ts +16 -16
  455. package/dist/uilogic/cloud-resource-configurators/helm-resource-configurator.js +44 -44
  456. package/dist/uilogic/cloud-resource-configurators/unsupported-resource-configurator.d.ts +18 -18
  457. package/dist/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js +61 -61
  458. package/dist/uilogic/config-ui-utils.d.ts +133 -0
  459. package/dist/uilogic/config-ui-utils.js +676 -0
  460. package/dist/uilogic/config-ui-utils.js.map +1 -0
  461. package/dist/uilogic/enterprise-contextualizer.d.ts +79 -76
  462. package/dist/uilogic/enterprise-contextualizer.js +700 -670
  463. package/dist/uilogic/enterprise-contextualizer.js.map +1 -1
  464. package/dist/uilogic/environment-contextualizer.d.ts +15 -15
  465. package/dist/uilogic/environment-contextualizer.js +42 -42
  466. package/dist/uilogic/i-cluster-configurator.d.ts +9 -9
  467. package/dist/uilogic/i-cluster-configurator.js +2 -2
  468. package/dist/uilogic/i-login-configurator.d.ts +6 -6
  469. package/dist/uilogic/i-login-configurator.js +2 -2
  470. package/dist/uilogic/i-registry-configurator.d.ts +6 -6
  471. package/dist/uilogic/i-registry-configurator.js +2 -2
  472. package/dist/uilogic/i-secret-store-configurator.d.ts +7 -7
  473. package/dist/uilogic/i-secret-store-configurator.js +2 -2
  474. package/dist/uilogic/image-configurator.d.ts +133 -133
  475. package/dist/uilogic/image-configurator.js +577 -577
  476. package/dist/uilogic/image-contextualizer.d.ts +24 -24
  477. package/dist/uilogic/image-contextualizer.js +89 -89
  478. package/dist/uilogic/image-registry-contextualizer.d.ts +28 -28
  479. package/dist/uilogic/image-registry-contextualizer.js +126 -126
  480. package/dist/uilogic/index.d.ts +9 -9
  481. package/dist/uilogic/index.js +13 -13
  482. package/dist/uilogic/prompt-select-fuzzy.js +138 -138
  483. package/dist/uilogic/render-methods.d.ts +12 -12
  484. package/dist/uilogic/render-methods.js +64 -64
  485. package/dist/uilogic/tenant-contextualizer.d.ts +79 -79
  486. package/dist/uilogic/tenant-contextualizer.js +577 -577
  487. package/dist/user-context-loader.d.ts +60 -60
  488. package/dist/user-context-loader.js +183 -183
  489. package/oclif.manifest.json +349 -59
  490. package/package.json +152 -151
  491. package/scaffolding/api/.gitignore-scaffolding +68 -68
  492. package/scaffolding/api/.vscode/launch.json +16 -16
  493. package/scaffolding/api/.vscode/settings.json +7 -7
  494. package/scaffolding/api/.vscode/tasks.json +15 -15
  495. package/scaffolding/api/src/app-config.json +2 -2
  496. package/scaffolding/api/src/index.ts-scaffolding +13 -13
  497. package/scaffolding/api/src/myApiDef.ts-scaffolding +25 -25
  498. package/scaffolding/default/.gitignore-scaffolding +2 -2
  499. package/scaffolding/typescript/.gitignore-scaffolding +69 -69
  500. package/scaffolding/typescript/.vscode/launch.json +16 -16
  501. package/scaffolding/typescript/.vscode/settings.json +7 -7
  502. package/scaffolding/typescript/.vscode/tasks.json +15 -15
  503. package/lib/api-command-base.d.ts +0 -0
  504. package/lib/api-command-base.js +0 -52
  505. package/lib/api-command-base.js.map +0 -1
  506. package/lib/apis/codiac-api/common/api-client-base.d.ts +0 -165
  507. package/lib/apis/codiac-api/common/api-client-base.js +0 -548
  508. package/lib/apis/codiac-api/common/api-client-base.js.map +0 -1
  509. package/lib/apis/codiac-api/common/api-user-creds.d.ts +0 -7
  510. package/lib/apis/codiac-api/common/api-user-creds.js +0 -19
  511. package/lib/apis/codiac-api/common/api-user-creds.js.map +0 -1
  512. package/lib/apis/codiac-api/common/config-loader.d.ts +0 -6
  513. package/lib/apis/codiac-api/common/config-loader.js +0 -19
  514. package/lib/apis/codiac-api/common/config-loader.js.map +0 -1
  515. package/lib/apis/codiac-api/common/endpoint-spec.d.ts +0 -17
  516. package/lib/apis/codiac-api/common/endpoint-spec.js +0 -28
  517. package/lib/apis/codiac-api/common/endpoint-spec.js.map +0 -1
  518. package/lib/apis/codiac-api/common/security/api-auth-methods-legacy.d.ts +0 -87
  519. package/lib/apis/codiac-api/common/security/api-auth-methods-legacy.js +0 -368
  520. package/lib/apis/codiac-api/common/security/api-auth-methods-legacy.js.map +0 -1
  521. package/lib/apis/codiac-api/common/security/auth-constants.d.ts +0 -15
  522. package/lib/apis/codiac-api/common/security/auth-constants.js +0 -22
  523. package/lib/apis/codiac-api/common/security/auth-constants.js.map +0 -1
  524. package/lib/apis/codiac-api/common/security/i-auth-client.d.ts +0 -44
  525. package/lib/apis/codiac-api/common/security/i-auth-client.js +0 -3
  526. package/lib/apis/codiac-api/common/security/i-auth-client.js.map +0 -1
  527. package/lib/apis/codiac-api/common/security/token-holder.d.ts +0 -13
  528. package/lib/apis/codiac-api/common/security/token-holder.js +0 -18
  529. package/lib/apis/codiac-api/common/security/token-holder.js.map +0 -1
  530. package/lib/apis/codiac-api/common/utils.d.ts +0 -23
  531. package/lib/apis/codiac-api/common/utils.js +0 -83
  532. package/lib/apis/codiac-api/common/utils.js.map +0 -1
  533. package/lib/apis/codiac-api/contracts/index.d.ts +0 -1
  534. package/lib/apis/codiac-api/contracts/index.js +0 -5
  535. package/lib/apis/codiac-api/contracts/index.js.map +0 -1
  536. package/lib/apis/codiac-api/gen/client-config.d.ts +0 -10
  537. package/lib/apis/codiac-api/gen/client-config.js +0 -29
  538. package/lib/apis/codiac-api/gen/client-config.js.map +0 -1
  539. package/lib/apis/codiac-api/gen/client.d.ts +0 -1663
  540. package/lib/apis/codiac-api/gen/client.js +0 -15630
  541. package/lib/apis/codiac-api/gen/client.js.map +0 -1
  542. package/lib/apis/codiac-api/gen/contracts.d.ts +0 -2722
  543. package/lib/apis/codiac-api/gen/contracts.js +0 -403
  544. package/lib/apis/codiac-api/gen/contracts.js.map +0 -1
  545. package/lib/apis/codiac-api/index.d.ts +0 -3
  546. package/lib/apis/codiac-api/index.js +0 -9
  547. package/lib/apis/codiac-api/index.js.map +0 -1
  548. package/lib/apis/codiac-relay/common/api-client-base.d.ts +0 -165
  549. package/lib/apis/codiac-relay/common/api-client-base.js +0 -548
  550. package/lib/apis/codiac-relay/common/api-client-base.js.map +0 -1
  551. package/lib/apis/codiac-relay/common/api-user-creds.d.ts +0 -7
  552. package/lib/apis/codiac-relay/common/api-user-creds.js +0 -19
  553. package/lib/apis/codiac-relay/common/api-user-creds.js.map +0 -1
  554. package/lib/apis/codiac-relay/common/config-loader.d.ts +0 -6
  555. package/lib/apis/codiac-relay/common/config-loader.js +0 -19
  556. package/lib/apis/codiac-relay/common/config-loader.js.map +0 -1
  557. package/lib/apis/codiac-relay/common/endpoint-spec.d.ts +0 -17
  558. package/lib/apis/codiac-relay/common/endpoint-spec.js +0 -28
  559. package/lib/apis/codiac-relay/common/endpoint-spec.js.map +0 -1
  560. package/lib/apis/codiac-relay/common/security/api-auth-methods-legacy.d.ts +0 -87
  561. package/lib/apis/codiac-relay/common/security/api-auth-methods-legacy.js +0 -368
  562. package/lib/apis/codiac-relay/common/security/api-auth-methods-legacy.js.map +0 -1
  563. package/lib/apis/codiac-relay/common/security/auth-constants.d.ts +0 -15
  564. package/lib/apis/codiac-relay/common/security/auth-constants.js +0 -22
  565. package/lib/apis/codiac-relay/common/security/auth-constants.js.map +0 -1
  566. package/lib/apis/codiac-relay/common/security/i-auth-client.d.ts +0 -44
  567. package/lib/apis/codiac-relay/common/security/i-auth-client.js +0 -3
  568. package/lib/apis/codiac-relay/common/security/i-auth-client.js.map +0 -1
  569. package/lib/apis/codiac-relay/common/security/token-holder.d.ts +0 -13
  570. package/lib/apis/codiac-relay/common/security/token-holder.js +0 -18
  571. package/lib/apis/codiac-relay/common/security/token-holder.js.map +0 -1
  572. package/lib/apis/codiac-relay/common/utils.d.ts +0 -23
  573. package/lib/apis/codiac-relay/common/utils.js +0 -83
  574. package/lib/apis/codiac-relay/common/utils.js.map +0 -1
  575. package/lib/apis/codiac-relay/contracts/index.d.ts +0 -1
  576. package/lib/apis/codiac-relay/contracts/index.js +0 -5
  577. package/lib/apis/codiac-relay/contracts/index.js.map +0 -1
  578. package/lib/apis/codiac-relay/gen/client-config.d.ts +0 -10
  579. package/lib/apis/codiac-relay/gen/client-config.js +0 -29
  580. package/lib/apis/codiac-relay/gen/client-config.js.map +0 -1
  581. package/lib/apis/codiac-relay/gen/client.d.ts +0 -244
  582. package/lib/apis/codiac-relay/gen/client.js +0 -1863
  583. package/lib/apis/codiac-relay/gen/client.js.map +0 -1
  584. package/lib/apis/codiac-relay/gen/contracts.d.ts +0 -3111
  585. package/lib/apis/codiac-relay/gen/contracts.js +0 -435
  586. package/lib/apis/codiac-relay/gen/contracts.js.map +0 -1
  587. package/lib/apis/codiac-relay/index.d.ts +0 -3
  588. package/lib/apis/codiac-relay/index.js +0 -9
  589. package/lib/apis/codiac-relay/index.js.map +0 -1
  590. package/lib/azure-rest-client.d.ts +0 -6
  591. package/lib/azure-rest-client.js +0 -36
  592. package/lib/azure-rest-client.js.map +0 -1
  593. package/lib/cli-common/ImagesList.d.ts +0 -0
  594. package/lib/cli-common/ImagesList.js +0 -67
  595. package/lib/cli-common/ImagesList.js.map +0 -1
  596. package/lib/cli-common/argument-manager.d.ts +0 -28
  597. package/lib/cli-common/argument-manager.js +0 -195
  598. package/lib/cli-common/argument-manager.js.map +0 -1
  599. package/lib/cli-common/built-in-cli-user-input.d.ts +0 -18
  600. package/lib/cli-common/built-in-cli-user-input.js +0 -310
  601. package/lib/cli-common/built-in-cli-user-input.js.map +0 -1
  602. package/lib/cli-common/cli-interfaces.d.ts +0 -0
  603. package/lib/cli-common/cli-interfaces.js +0 -7
  604. package/lib/cli-common/cli-interfaces.js.map +0 -1
  605. package/lib/cli-common/command-base.d.ts +0 -72
  606. package/lib/cli-common/command-base.js +0 -182
  607. package/lib/cli-common/command-base.js.map +0 -1
  608. package/lib/cli-common/entities/index.d.ts +0 -1
  609. package/lib/cli-common/entities/index.js +0 -5
  610. package/lib/cli-common/entities/index.js.map +0 -1
  611. package/lib/cli-common/entities/prompt-choice.d.ts +0 -7
  612. package/lib/cli-common/entities/prompt-choice.js +0 -3
  613. package/lib/cli-common/entities/prompt-choice.js.map +0 -1
  614. package/lib/cli-common/file-selector.d.ts +0 -48
  615. package/lib/cli-common/file-selector.js +0 -187
  616. package/lib/cli-common/file-selector.js.map +0 -1
  617. package/lib/cli-common/i-user-input-provider.d.ts +0 -0
  618. package/lib/cli-common/i-user-input-provider.js +0 -19
  619. package/lib/cli-common/i-user-input-provider.js.map +0 -1
  620. package/lib/cli-common/index.d.ts +0 -4
  621. package/lib/cli-common/index.js +0 -11
  622. package/lib/cli-common/index.js.map +0 -1
  623. package/lib/cli-common/mock-ui.d.ts +0 -27
  624. package/lib/cli-common/mock-ui.js +0 -83
  625. package/lib/cli-common/mock-ui.js.map +0 -1
  626. package/lib/cli-common/prompt-select-fuzzy.d.ts +0 -19
  627. package/lib/cli-common/prompt-select-fuzzy.js +0 -119
  628. package/lib/cli-common/prompt-select-fuzzy.js.map +0 -1
  629. package/lib/cli-common/tenant-contextualizer.d.ts +0 -0
  630. package/lib/cli-common/tenant-contextualizer.js +0 -436
  631. package/lib/cli-common/tenant-contextualizer.js.map +0 -1
  632. package/lib/cli-common/test/tenant-contextualizer.spec.d.ts +0 -0
  633. package/lib/cli-common/test/tenant-contextualizer.spec.js +0 -143
  634. package/lib/cli-common/test/tenant-contextualizer.spec.js.map +0 -1
  635. package/lib/cli-entities/output-format-enum.d.ts +0 -7
  636. package/lib/cli-entities/output-format-enum.js +0 -12
  637. package/lib/cli-entities/output-format-enum.js.map +0 -1
  638. package/lib/cli-entities/prompt-choice.d.ts +0 -0
  639. package/lib/cli-entities/prompt-choice.js +0 -6
  640. package/lib/cli-entities/prompt-choice.js.map +0 -1
  641. package/lib/codiac-constants.d.ts +0 -35
  642. package/lib/codiac-constants.js +0 -41
  643. package/lib/codiac-constants.js.map +0 -1
  644. package/lib/codiac-entities/asset-binding.d.ts +0 -12
  645. package/lib/codiac-entities/asset-binding.js +0 -18
  646. package/lib/codiac-entities/asset-binding.js.map +0 -1
  647. package/lib/codiac-entities/azure-container-registry.d.ts +0 -4
  648. package/lib/codiac-entities/azure-container-registry.js +0 -3
  649. package/lib/codiac-entities/azure-container-registry.js.map +0 -1
  650. package/lib/codiac-entities/azure-service-principal.d.ts +0 -23
  651. package/lib/codiac-entities/azure-service-principal.js +0 -24
  652. package/lib/codiac-entities/azure-service-principal.js.map +0 -1
  653. package/lib/codiac-entities/cloud-account-ref.d.ts +0 -28
  654. package/lib/codiac-entities/cloud-account-ref.js +0 -37
  655. package/lib/codiac-entities/cloud-account-ref.js.map +0 -1
  656. package/lib/codiac-entities/deployment-temp.d.ts +0 -0
  657. package/lib/codiac-entities/deployment-temp.js +0 -133
  658. package/lib/codiac-entities/deployment-temp.js.map +0 -1
  659. package/lib/codiac-entities/i-cloud-account-ref.d.ts +0 -5
  660. package/lib/codiac-entities/i-cloud-account-ref.js +0 -3
  661. package/lib/codiac-entities/i-cloud-account-ref.js.map +0 -1
  662. package/lib/command-base-enterprise.d.ts +0 -121
  663. package/lib/command-base-enterprise.js +0 -524
  664. package/lib/command-base-enterprise.js.map +0 -1
  665. package/lib/command-base-tenantless.d.ts +0 -44
  666. package/lib/command-base-tenantless.js +0 -180
  667. package/lib/command-base-tenantless.js.map +0 -1
  668. package/lib/commands/asset/create.d.ts +0 -42
  669. package/lib/commands/asset/create.js +0 -467
  670. package/lib/commands/asset/create.js.map +0 -1
  671. package/lib/commands/asset/destroy.d.ts +0 -20
  672. package/lib/commands/asset/destroy.js +0 -129
  673. package/lib/commands/asset/destroy.js.map +0 -1
  674. package/lib/commands/asset/helm.d.ts +0 -23
  675. package/lib/commands/asset/helm.js +0 -153
  676. package/lib/commands/asset/helm.js.map +0 -1
  677. package/lib/commands/asset/list.d.ts +0 -28
  678. package/lib/commands/asset/list.js +0 -172
  679. package/lib/commands/asset/list.js.map +0 -1
  680. package/lib/commands/asset/probe/create.d.ts +0 -38
  681. package/lib/commands/asset/probe/create.js +0 -187
  682. package/lib/commands/asset/probe/create.js.map +0 -1
  683. package/lib/commands/asset/recycle.d.ts +0 -23
  684. package/lib/commands/asset/recycle.js +0 -175
  685. package/lib/commands/asset/recycle.js.map +0 -1
  686. package/lib/commands/asset/view.d.ts +0 -188
  687. package/lib/commands/asset/view.js +0 -1365
  688. package/lib/commands/asset/view.js.map +0 -1
  689. package/lib/commands/asset/volume/create.d.ts +0 -23
  690. package/lib/commands/asset/volume/create.js +0 -176
  691. package/lib/commands/asset/volume/create.js.map +0 -1
  692. package/lib/commands/asset/volume/delete.d.ts +0 -19
  693. package/lib/commands/asset/volume/delete.js +0 -112
  694. package/lib/commands/asset/volume/delete.js.map +0 -1
  695. package/lib/commands/asset/volume/list.d.ts +0 -19
  696. package/lib/commands/asset/volume/list.js +0 -70
  697. package/lib/commands/asset/volume/list.js.map +0 -1
  698. package/lib/commands/branch/current.d.ts +0 -10
  699. package/lib/commands/branch/current.js +0 -34
  700. package/lib/commands/branch/current.js.map +0 -1
  701. package/lib/commands/branch/list.d.ts +0 -15
  702. package/lib/commands/branch/list.js +0 -56
  703. package/lib/commands/branch/list.js.map +0 -1
  704. package/lib/commands/branch.d.ts +0 -12
  705. package/lib/commands/branch.js +0 -42
  706. package/lib/commands/branch.js.map +0 -1
  707. package/lib/commands/build.d.ts +0 -38
  708. package/lib/commands/build.js +0 -120
  709. package/lib/commands/build.js.map +0 -1
  710. package/lib/commands/cabinet/create.d.ts +0 -21
  711. package/lib/commands/cabinet/create.js +0 -108
  712. package/lib/commands/cabinet/create.js.map +0 -1
  713. package/lib/commands/cabinet/list.d.ts +0 -23
  714. package/lib/commands/cabinet/list.js +0 -134
  715. package/lib/commands/cabinet/list.js.map +0 -1
  716. package/lib/commands/cabinet/obliterate.d.ts +0 -20
  717. package/lib/commands/cabinet/obliterate.js +0 -83
  718. package/lib/commands/cabinet/obliterate.js.map +0 -1
  719. package/lib/commands/cli.d.ts +0 -10
  720. package/lib/commands/cli.js +0 -100
  721. package/lib/commands/cli.js.map +0 -1
  722. package/lib/commands/commit.d.ts +0 -11
  723. package/lib/commands/commit.js +0 -40
  724. package/lib/commands/commit.js.map +0 -1
  725. package/lib/commands/config/add.d.ts +0 -78
  726. package/lib/commands/config/add.js +0 -560
  727. package/lib/commands/config/add.js.map +0 -1
  728. package/lib/commands/config/delete.d.ts +0 -18
  729. package/lib/commands/config/delete.js +0 -119
  730. package/lib/commands/config/delete.js.map +0 -1
  731. package/lib/commands/config/deploy.d.ts +0 -22
  732. package/lib/commands/config/deploy.js +0 -125
  733. package/lib/commands/config/deploy.js.map +0 -1
  734. package/lib/commands/config/import.d.ts +0 -27
  735. package/lib/commands/config/import.js +0 -196
  736. package/lib/commands/config/import.js.map +0 -1
  737. package/lib/commands/config/view.d.ts +0 -25
  738. package/lib/commands/config/view.js +0 -121
  739. package/lib/commands/config/view.js.map +0 -1
  740. package/lib/commands/csp/login.d.ts +0 -18
  741. package/lib/commands/csp/login.js +0 -123
  742. package/lib/commands/csp/login.js.map +0 -1
  743. package/lib/commands/csp/logout.d.ts +0 -15
  744. package/lib/commands/csp/logout.js +0 -74
  745. package/lib/commands/csp/logout.js.map +0 -1
  746. package/lib/commands/dep/create.d.ts +0 -13
  747. package/lib/commands/dep/create.js +0 -41
  748. package/lib/commands/dep/create.js.map +0 -1
  749. package/lib/commands/dep/install.d.ts +0 -9
  750. package/lib/commands/dep/install.js +0 -30
  751. package/lib/commands/dep/install.js.map +0 -1
  752. package/lib/commands/dep/list.d.ts +0 -55
  753. package/lib/commands/dep/list.js +0 -98
  754. package/lib/commands/dep/list.js.map +0 -1
  755. package/lib/commands/dep/remove.d.ts +0 -12
  756. package/lib/commands/dep/remove.js +0 -62
  757. package/lib/commands/dep/remove.js.map +0 -1
  758. package/lib/commands/dep/source.d.ts +0 -13
  759. package/lib/commands/dep/source.js +0 -83
  760. package/lib/commands/dep/source.js.map +0 -1
  761. package/lib/commands/dep/syncup.d.ts +0 -11
  762. package/lib/commands/dep/syncup.js +0 -54
  763. package/lib/commands/dep/syncup.js.map +0 -1
  764. package/lib/commands/dep/unsource.d.ts +0 -14
  765. package/lib/commands/dep/unsource.js +0 -68
  766. package/lib/commands/dep/unsource.js.map +0 -1
  767. package/lib/commands/dep/upgrade.d.ts +0 -44
  768. package/lib/commands/dep/upgrade.js +0 -244
  769. package/lib/commands/dep/upgrade.js.map +0 -1
  770. package/lib/commands/dep.d.ts +0 -12
  771. package/lib/commands/dep.js +0 -51
  772. package/lib/commands/dep.js.map +0 -1
  773. package/lib/commands/deploy.d.ts +0 -38
  774. package/lib/commands/deploy.js +0 -386
  775. package/lib/commands/deploy.js.map +0 -1
  776. package/lib/commands/enterprise/create.d.ts +0 -20
  777. package/lib/commands/enterprise/create.js +0 -98
  778. package/lib/commands/enterprise/create.js.map +0 -1
  779. package/lib/commands/enterprise/list.d.ts +0 -14
  780. package/lib/commands/enterprise/list.js +0 -84
  781. package/lib/commands/enterprise/list.js.map +0 -1
  782. package/lib/commands/env/add.d.ts +0 -22
  783. package/lib/commands/env/add.js +0 -200
  784. package/lib/commands/env/add.js.map +0 -1
  785. package/lib/commands/environment/create.d.ts +0 -19
  786. package/lib/commands/environment/create.js +0 -89
  787. package/lib/commands/environment/create.js.map +0 -1
  788. package/lib/commands/environment/list.d.ts +0 -25
  789. package/lib/commands/environment/list.js +0 -158
  790. package/lib/commands/environment/list.js.map +0 -1
  791. package/lib/commands/filestore/capture.d.ts +0 -31
  792. package/lib/commands/filestore/capture.js +0 -342
  793. package/lib/commands/filestore/capture.js.map +0 -1
  794. package/lib/commands/host/map.d.ts +0 -33
  795. package/lib/commands/host/map.js +0 -347
  796. package/lib/commands/host/map.js.map +0 -1
  797. package/lib/commands/identity/delete.d.ts +0 -15
  798. package/lib/commands/identity/delete.js +0 -83
  799. package/lib/commands/identity/delete.js.map +0 -1
  800. package/lib/commands/identity/list.d.ts +0 -11
  801. package/lib/commands/identity/list.js +0 -43
  802. package/lib/commands/identity/list.js.map +0 -1
  803. package/lib/commands/identity.d.ts +0 -22
  804. package/lib/commands/identity.js +0 -77
  805. package/lib/commands/identity.js.map +0 -1
  806. package/lib/commands/imageRegistry/capture.d.ts +0 -27
  807. package/lib/commands/imageRegistry/capture.js +0 -160
  808. package/lib/commands/imageRegistry/capture.js.map +0 -1
  809. package/lib/commands/imageRegistry/forget.d.ts +0 -23
  810. package/lib/commands/imageRegistry/forget.js +0 -161
  811. package/lib/commands/imageRegistry/forget.js.map +0 -1
  812. package/lib/commands/imageRegistry/pullSecret/set.d.ts +0 -27
  813. package/lib/commands/imageRegistry/pullSecret/set.js +0 -300
  814. package/lib/commands/imageRegistry/pullSecret/set.js.map +0 -1
  815. package/lib/commands/imageRegistry/pullSecret/unset.d.ts +0 -24
  816. package/lib/commands/imageRegistry/pullSecret/unset.js +0 -243
  817. package/lib/commands/imageRegistry/pullSecret/unset.js.map +0 -1
  818. package/lib/commands/images/add.d.ts +0 -25
  819. package/lib/commands/images/add.js +0 -76
  820. package/lib/commands/images/add.js.map +0 -1
  821. package/lib/commands/images/list.d.ts +0 -14
  822. package/lib/commands/images/list.js +0 -72
  823. package/lib/commands/images/list.js.map +0 -1
  824. package/lib/commands/images/patch.d.ts +0 -14
  825. package/lib/commands/images/patch.js +0 -93
  826. package/lib/commands/images/patch.js.map +0 -1
  827. package/lib/commands/images/remove.d.ts +0 -12
  828. package/lib/commands/images/remove.js +0 -38
  829. package/lib/commands/images/remove.js.map +0 -1
  830. package/lib/commands/images/version/bump.d.ts +0 -18
  831. package/lib/commands/images/version/bump.js +0 -61
  832. package/lib/commands/images/version/bump.js.map +0 -1
  833. package/lib/commands/images/version.d.ts +0 -16
  834. package/lib/commands/images/version.js +0 -65
  835. package/lib/commands/images/version.js.map +0 -1
  836. package/lib/commands/init.d.ts +0 -17
  837. package/lib/commands/init.js +0 -131
  838. package/lib/commands/init.js.map +0 -1
  839. package/lib/commands/kit/create.d.ts +0 -25
  840. package/lib/commands/kit/create.js +0 -142
  841. package/lib/commands/kit/create.js.map +0 -1
  842. package/lib/commands/login.d.ts +0 -22
  843. package/lib/commands/login.js +0 -93
  844. package/lib/commands/login.js.map +0 -1
  845. package/lib/commands/logout.d.ts +0 -8
  846. package/lib/commands/logout.js +0 -37
  847. package/lib/commands/logout.js.map +0 -1
  848. package/lib/commands/merge.d.ts +0 -12
  849. package/lib/commands/merge.js +0 -43
  850. package/lib/commands/merge.js.map +0 -1
  851. package/lib/commands/noc/cluster/create.d.ts +0 -28
  852. package/lib/commands/noc/cluster/create.js +0 -133
  853. package/lib/commands/noc/cluster/create.js.map +0 -1
  854. package/lib/commands/noc/cluster/deinit.d.ts +0 -17
  855. package/lib/commands/noc/cluster/deinit.js +0 -117
  856. package/lib/commands/noc/cluster/deinit.js.map +0 -1
  857. package/lib/commands/noc/cluster/destroy.d.ts +0 -20
  858. package/lib/commands/noc/cluster/destroy.js +0 -138
  859. package/lib/commands/noc/cluster/destroy.js.map +0 -1
  860. package/lib/commands/noc/cluster/forget.d.ts +0 -16
  861. package/lib/commands/noc/cluster/forget.js +0 -137
  862. package/lib/commands/noc/cluster/forget.js.map +0 -1
  863. package/lib/commands/noc/cluster/grant.d.ts +0 -24
  864. package/lib/commands/noc/cluster/grant.js +0 -160
  865. package/lib/commands/noc/cluster/grant.js.map +0 -1
  866. package/lib/commands/noc/cluster/init.d.ts +0 -17
  867. package/lib/commands/noc/cluster/init.js +0 -117
  868. package/lib/commands/noc/cluster/init.js.map +0 -1
  869. package/lib/commands/noc/cluster/list.d.ts +0 -21
  870. package/lib/commands/noc/cluster/list.js +0 -84
  871. package/lib/commands/noc/cluster/list.js.map +0 -1
  872. package/lib/commands/noc/cluster/recreate.d.ts +0 -28
  873. package/lib/commands/noc/cluster/recreate.js +0 -186
  874. package/lib/commands/noc/cluster/recreate.js.map +0 -1
  875. package/lib/commands/pkg/add.d.ts +0 -15
  876. package/lib/commands/pkg/add.js +0 -43
  877. package/lib/commands/pkg/add.js.map +0 -1
  878. package/lib/commands/pkg/list.d.ts +0 -9
  879. package/lib/commands/pkg/list.js +0 -33
  880. package/lib/commands/pkg/list.js.map +0 -1
  881. package/lib/commands/pkg/patch.d.ts +0 -13
  882. package/lib/commands/pkg/patch.js +0 -79
  883. package/lib/commands/pkg/patch.js.map +0 -1
  884. package/lib/commands/pkg/remove.d.ts +0 -12
  885. package/lib/commands/pkg/remove.js +0 -70
  886. package/lib/commands/pkg/remove.js.map +0 -1
  887. package/lib/commands/portal.d.ts +0 -11
  888. package/lib/commands/portal.js +0 -82
  889. package/lib/commands/portal.js.map +0 -1
  890. package/lib/commands/publish.d.ts +0 -21
  891. package/lib/commands/publish.js +0 -52
  892. package/lib/commands/publish.js.map +0 -1
  893. package/lib/commands/pull.d.ts +0 -13
  894. package/lib/commands/pull.js +0 -30
  895. package/lib/commands/pull.js.map +0 -1
  896. package/lib/commands/push.d.ts +0 -13
  897. package/lib/commands/push.js +0 -30
  898. package/lib/commands/push.js.map +0 -1
  899. package/lib/commands/run.d.ts +0 -35
  900. package/lib/commands/run.js +0 -194
  901. package/lib/commands/run.js.map +0 -1
  902. package/lib/commands/secretStore/capture.d.ts +0 -27
  903. package/lib/commands/secretStore/capture.js +0 -175
  904. package/lib/commands/secretStore/capture.js.map +0 -1
  905. package/lib/commands/secretStore/forget.d.ts +0 -20
  906. package/lib/commands/secretStore/forget.js +0 -147
  907. package/lib/commands/secretStore/forget.js.map +0 -1
  908. package/lib/commands/stage.d.ts +0 -13
  909. package/lib/commands/stage.js +0 -65
  910. package/lib/commands/stage.js.map +0 -1
  911. package/lib/commands/stash.d.ts +0 -13
  912. package/lib/commands/stash.js +0 -31
  913. package/lib/commands/stash.js.map +0 -1
  914. package/lib/commands/status.d.ts +0 -12
  915. package/lib/commands/status.js +0 -49
  916. package/lib/commands/status.js.map +0 -1
  917. package/lib/commands/stop.d.ts +0 -10
  918. package/lib/commands/stop.js +0 -52
  919. package/lib/commands/stop.js.map +0 -1
  920. package/lib/commands/switch.d.ts +0 -11
  921. package/lib/commands/switch.js +0 -42
  922. package/lib/commands/switch.js.map +0 -1
  923. package/lib/commands/sync.d.ts +0 -14
  924. package/lib/commands/sync.js +0 -21
  925. package/lib/commands/sync.js.map +0 -1
  926. package/lib/commands/tenant/create.d.ts +0 -27
  927. package/lib/commands/tenant/create.js +0 -120
  928. package/lib/commands/tenant/create.js.map +0 -1
  929. package/lib/commands/tenant/switch.d.ts +0 -24
  930. package/lib/commands/tenant/switch.js +0 -109
  931. package/lib/commands/tenant/switch.js.map +0 -1
  932. package/lib/commands/unstage.d.ts +0 -12
  933. package/lib/commands/unstage.js +0 -58
  934. package/lib/commands/unstage.js.map +0 -1
  935. package/lib/commands/view/dashboard.d.ts +0 -17
  936. package/lib/commands/view/dashboard.js +0 -88
  937. package/lib/commands/view/dashboard.js.map +0 -1
  938. package/lib/commands/view/pods.d.ts +0 -14
  939. package/lib/commands/view/pods.js +0 -88
  940. package/lib/commands/view/pods.js.map +0 -1
  941. package/lib/commands/whereami.d.ts +0 -15
  942. package/lib/commands/whereami.js +0 -123
  943. package/lib/commands/whereami.js.map +0 -1
  944. package/lib/commands/whoami.d.ts +0 -8
  945. package/lib/commands/whoami.js +0 -40
  946. package/lib/commands/whoami.js.map +0 -1
  947. package/lib/deployment.d.ts +0 -2
  948. package/lib/deployment.js +0 -7
  949. package/lib/deployment.js.map +0 -1
  950. package/lib/errors/NoMembershipError.d.ts +0 -8
  951. package/lib/errors/NoMembershipError.js +0 -15
  952. package/lib/errors/NoMembershipError.js.map +0 -1
  953. package/lib/index.d.ts +0 -1
  954. package/lib/index.js +0 -17
  955. package/lib/index.js.map +0 -1
  956. package/lib/k8s-command-base.d.ts +0 -60
  957. package/lib/k8s-command-base.js +0 -204
  958. package/lib/k8s-command-base.js.map +0 -1
  959. package/lib/log-update-wrapper.d.ts +0 -24
  960. package/lib/log-update-wrapper.js +0 -29
  961. package/lib/log-update-wrapper.js.map +0 -1
  962. package/lib/log4js-logger.d.ts +0 -26
  963. package/lib/log4js-logger.js +0 -138
  964. package/lib/log4js-logger.js.map +0 -1
  965. package/lib/ops/INTERFACES_CLI.d.ts +0 -3
  966. package/lib/ops/INTERFACES_CLI.js +0 -8
  967. package/lib/ops/INTERFACES_CLI.js.map +0 -1
  968. package/lib/ops/LocalOps.d.ts +0 -417
  969. package/lib/ops/LocalOps.js +0 -3122
  970. package/lib/ops/LocalOps.js.map +0 -1
  971. package/lib/ops/azure-container-registry-client/azure-container-registry-client.d.ts +0 -0
  972. package/lib/ops/azure-container-registry-client/azure-container-registry-client.js +0 -148
  973. package/lib/ops/azure-container-registry-client/azure-container-registry-client.js.map +0 -1
  974. package/lib/ops/cli-path-walker.d.ts +0 -0
  975. package/lib/ops/cli-path-walker.js +0 -55
  976. package/lib/ops/cli-path-walker.js.map +0 -1
  977. package/lib/ops/codiac-entities/dependency.d.ts +0 -5
  978. package/lib/ops/codiac-entities/dependency.js +0 -11
  979. package/lib/ops/codiac-entities/dependency.js.map +0 -1
  980. package/lib/ops/codiac-entities/index.d.ts +0 -1
  981. package/lib/ops/codiac-entities/index.js +0 -5
  982. package/lib/ops/codiac-entities/index.js.map +0 -1
  983. package/lib/ops/composite-image-registry-client.d.ts +0 -0
  984. package/lib/ops/composite-image-registry-client.js +0 -74
  985. package/lib/ops/composite-image-registry-client.js.map +0 -1
  986. package/lib/ops/data/cli-context-repo.d.ts +0 -61
  987. package/lib/ops/data/cli-context-repo.js +0 -270
  988. package/lib/ops/data/cli-context-repo.js.map +0 -1
  989. package/lib/ops/data/index.d.ts +0 -2
  990. package/lib/ops/data/index.js +0 -6
  991. package/lib/ops/data/index.js.map +0 -1
  992. package/lib/ops/data/npm-config-repo.d.ts +0 -13
  993. package/lib/ops/data/npm-config-repo.js +0 -65
  994. package/lib/ops/data/npm-config-repo.js.map +0 -1
  995. package/lib/ops/docker-config.d.ts +0 -0
  996. package/lib/ops/docker-config.js +0 -131
  997. package/lib/ops/docker-config.js.map +0 -1
  998. package/lib/ops/docker-constants.d.ts +0 -0
  999. package/lib/ops/docker-constants.js +0 -22
  1000. package/lib/ops/docker-constants.js.map +0 -1
  1001. package/lib/ops/docker-credentials-store.d.ts +0 -0
  1002. package/lib/ops/docker-credentials-store.js +0 -238
  1003. package/lib/ops/docker-credentials-store.js.map +0 -1
  1004. package/lib/ops/docker-registry-api-client/docker-registry-api-client.d.ts +0 -0
  1005. package/lib/ops/docker-registry-api-client/docker-registry-api-client.js +0 -289
  1006. package/lib/ops/docker-registry-api-client/docker-registry-api-client.js.map +0 -1
  1007. package/lib/ops/docker-registry-api-client/entities/blob-sum.d.ts +0 -7
  1008. package/lib/ops/docker-registry-api-client/entities/blob-sum.js +0 -13
  1009. package/lib/ops/docker-registry-api-client/entities/blob-sum.js.map +0 -1
  1010. package/lib/ops/docker-registry-api-client/entities/docker-access-actions-enum.d.ts +0 -5
  1011. package/lib/ops/docker-registry-api-client/entities/docker-access-actions-enum.js +0 -10
  1012. package/lib/ops/docker-registry-api-client/entities/docker-access-actions-enum.js.map +0 -1
  1013. package/lib/ops/docker-registry-api-client/entities/docker-auth-token-criteria.d.ts +0 -30
  1014. package/lib/ops/docker-registry-api-client/entities/docker-auth-token-criteria.js +0 -36
  1015. package/lib/ops/docker-registry-api-client/entities/docker-auth-token-criteria.js.map +0 -1
  1016. package/lib/ops/docker-registry-api-client/entities/i-docker-error-response.d.ts +0 -55
  1017. package/lib/ops/docker-registry-api-client/entities/i-docker-error-response.js +0 -52
  1018. package/lib/ops/docker-registry-api-client/entities/i-docker-error-response.js.map +0 -1
  1019. package/lib/ops/docker-registry-api-client/entities/i-docker-list-response.d.ts +0 -7
  1020. package/lib/ops/docker-registry-api-client/entities/i-docker-list-response.js +0 -3
  1021. package/lib/ops/docker-registry-api-client/entities/i-docker-list-response.js.map +0 -1
  1022. package/lib/ops/docker-registry-api-client/entities/image-repository.d.ts +0 -31
  1023. package/lib/ops/docker-registry-api-client/entities/image-repository.js +0 -30
  1024. package/lib/ops/docker-registry-api-client/entities/image-repository.js.map +0 -1
  1025. package/lib/ops/docker-registry-api-client/entities/image-tag-criteria.d.ts +0 -8
  1026. package/lib/ops/docker-registry-api-client/entities/image-tag-criteria.js +0 -14
  1027. package/lib/ops/docker-registry-api-client/entities/image-tag-criteria.js.map +0 -1
  1028. package/lib/ops/docker-registry-api-client/entities/image-tag-list.d.ts +0 -7
  1029. package/lib/ops/docker-registry-api-client/entities/image-tag-list.js +0 -13
  1030. package/lib/ops/docker-registry-api-client/entities/image-tag-list.js.map +0 -1
  1031. package/lib/ops/docker-registry-api-client/entities/manifest-criteria.d.ts +0 -9
  1032. package/lib/ops/docker-registry-api-client/entities/manifest-criteria.js +0 -15
  1033. package/lib/ops/docker-registry-api-client/entities/manifest-criteria.js.map +0 -1
  1034. package/lib/ops/docker-registry-api-client/entities/manifest.d.ts +0 -15
  1035. package/lib/ops/docker-registry-api-client/entities/manifest.js +0 -21
  1036. package/lib/ops/docker-registry-api-client/entities/manifest.js.map +0 -1
  1037. package/lib/ops/docker-registry-api-client/entities/repository-criteria.d.ts +0 -16
  1038. package/lib/ops/docker-registry-api-client/entities/repository-criteria.js +0 -24
  1039. package/lib/ops/docker-registry-api-client/entities/repository-criteria.js.map +0 -1
  1040. package/lib/ops/docker-registry-api-client/entities/token-response.d.ts +0 -15
  1041. package/lib/ops/docker-registry-api-client/entities/token-response.js +0 -15
  1042. package/lib/ops/docker-registry-api-client/entities/token-response.js.map +0 -1
  1043. package/lib/ops/docker-registry-api-client/entities/token.d.ts +0 -17
  1044. package/lib/ops/docker-registry-api-client/entities/token.js +0 -22
  1045. package/lib/ops/docker-registry-api-client/entities/token.js.map +0 -1
  1046. package/lib/ops/docker-registry-api-client/entities/version-check-criteria.d.ts +0 -4
  1047. package/lib/ops/docker-registry-api-client/entities/version-check-criteria.js +0 -10
  1048. package/lib/ops/docker-registry-api-client/entities/version-check-criteria.js.map +0 -1
  1049. package/lib/ops/dx-constants.d.ts +0 -26
  1050. package/lib/ops/dx-constants.js +0 -43
  1051. package/lib/ops/dx-constants.js.map +0 -1
  1052. package/lib/ops/entities/ImageBuildContext.d.ts +0 -12
  1053. package/lib/ops/entities/ImageBuildContext.js +0 -19
  1054. package/lib/ops/entities/ImageBuildContext.js.map +0 -1
  1055. package/lib/ops/entities/PipelineContext.d.ts +0 -21
  1056. package/lib/ops/entities/PipelineContext.js +0 -23
  1057. package/lib/ops/entities/PipelineContext.js.map +0 -1
  1058. package/lib/ops/entities/TenantContext.d.ts +0 -10
  1059. package/lib/ops/entities/TenantContext.js +0 -16
  1060. package/lib/ops/entities/TenantContext.js.map +0 -1
  1061. package/lib/ops/entities/ThaulConfig.d.ts +0 -0
  1062. package/lib/ops/entities/ThaulConfig.js +0 -30
  1063. package/lib/ops/entities/ThaulConfig.js.map +0 -1
  1064. package/lib/ops/entities/azure-service-principal.d.ts +0 -23
  1065. package/lib/ops/entities/azure-service-principal.js +0 -24
  1066. package/lib/ops/entities/azure-service-principal.js.map +0 -1
  1067. package/lib/ops/entities/better-logger.d.ts +0 -0
  1068. package/lib/ops/entities/better-logger.js +0 -2
  1069. package/lib/ops/entities/better-logger.js.map +0 -1
  1070. package/lib/ops/entities/branch.d.ts +0 -13
  1071. package/lib/ops/entities/branch.js +0 -16
  1072. package/lib/ops/entities/branch.js.map +0 -1
  1073. package/lib/ops/entities/cli-config.d.ts +0 -48
  1074. package/lib/ops/entities/cli-config.js +0 -61
  1075. package/lib/ops/entities/cli-config.js.map +0 -1
  1076. package/lib/ops/entities/docker-image.d.ts +0 -60
  1077. package/lib/ops/entities/docker-image.js +0 -3
  1078. package/lib/ops/entities/docker-image.js.map +0 -1
  1079. package/lib/ops/entities/helm-spec.d.ts +0 -15
  1080. package/lib/ops/entities/helm-spec.js +0 -23
  1081. package/lib/ops/entities/helm-spec.js.map +0 -1
  1082. package/lib/ops/entities/index.d.ts +0 -4
  1083. package/lib/ops/entities/index.js +0 -12
  1084. package/lib/ops/entities/index.js.map +0 -1
  1085. package/lib/ops/entities/operation-meta.d.ts +0 -8
  1086. package/lib/ops/entities/operation-meta.js +0 -19
  1087. package/lib/ops/entities/operation-meta.js.map +0 -1
  1088. package/lib/ops/entities/scaffolding.d.ts +0 -19
  1089. package/lib/ops/entities/scaffolding.js +0 -21
  1090. package/lib/ops/entities/scaffolding.js.map +0 -1
  1091. package/lib/ops/extensions/azart-identity-adapter.d.ts +0 -19
  1092. package/lib/ops/extensions/azart-identity-adapter.js +0 -97
  1093. package/lib/ops/extensions/azart-identity-adapter.js.map +0 -1
  1094. package/lib/ops/extensions/npm-identity-adapter-base.d.ts +0 -13
  1095. package/lib/ops/extensions/npm-identity-adapter-base.js +0 -3
  1096. package/lib/ops/extensions/npm-identity-adapter-base.js.map +0 -1
  1097. package/lib/ops/extensions/npmjs-identity-adapter.d.ts +0 -13
  1098. package/lib/ops/extensions/npmjs-identity-adapter.js +0 -64
  1099. package/lib/ops/extensions/npmjs-identity-adapter.js.map +0 -1
  1100. package/lib/ops/git-ops.d.ts +0 -8
  1101. package/lib/ops/git-ops.js +0 -14
  1102. package/lib/ops/git-ops.js.map +0 -1
  1103. package/lib/ops/i-client-for-image-registry.d.ts +0 -0
  1104. package/lib/ops/i-client-for-image-registry.js +0 -17
  1105. package/lib/ops/i-client-for-image-registry.js.map +0 -1
  1106. package/lib/ops/i-identity-handler.d.ts +0 -33
  1107. package/lib/ops/i-identity-handler.js +0 -165
  1108. package/lib/ops/i-identity-handler.js.map +0 -1
  1109. package/lib/ops/i-output-styler.d.ts +0 -0
  1110. package/lib/ops/i-output-styler.js +0 -17
  1111. package/lib/ops/i-output-styler.js.map +0 -1
  1112. package/lib/ops/index.d.ts +0 -12
  1113. package/lib/ops/index.js +0 -15
  1114. package/lib/ops/index.js.map +0 -1
  1115. package/lib/ops/json-utils.d.ts +0 -0
  1116. package/lib/ops/json-utils.js +0 -59
  1117. package/lib/ops/json-utils.js.map +0 -1
  1118. package/lib/ops/no-style-output-styler.d.ts +0 -0
  1119. package/lib/ops/no-style-output-styler.js +0 -30
  1120. package/lib/ops/no-style-output-styler.js.map +0 -1
  1121. package/lib/ops/oauth2-client.ts/oauth2-client.d.ts +0 -23
  1122. package/lib/ops/oauth2-client.ts/oauth2-client.js +0 -64
  1123. package/lib/ops/oauth2-client.ts/oauth2-client.js.map +0 -1
  1124. package/lib/ops/project-initializer.d.ts +0 -36
  1125. package/lib/ops/project-initializer.js +0 -219
  1126. package/lib/ops/project-initializer.js.map +0 -1
  1127. package/lib/ops/scaffolding/base-scaffolding.d.ts +0 -7
  1128. package/lib/ops/scaffolding/base-scaffolding.js +0 -21
  1129. package/lib/ops/scaffolding/base-scaffolding.js.map +0 -1
  1130. package/lib/ops/scaffolding/codiac-api-scaffolding.d.ts +0 -7
  1131. package/lib/ops/scaffolding/codiac-api-scaffolding.js +0 -64
  1132. package/lib/ops/scaffolding/codiac-api-scaffolding.js.map +0 -1
  1133. package/lib/ops/scaffolding/typescript-scaffolding.d.ts +0 -15
  1134. package/lib/ops/scaffolding/typescript-scaffolding.js +0 -163
  1135. package/lib/ops/scaffolding/typescript-scaffolding.js.map +0 -1
  1136. package/lib/ops/test/mock-ui.d.ts +0 -26
  1137. package/lib/ops/test/mock-ui.js +0 -88
  1138. package/lib/ops/test/mock-ui.js.map +0 -1
  1139. package/lib/ops/test/test-extensions.d.ts +0 -13
  1140. package/lib/ops/test/test-extensions.js +0 -71
  1141. package/lib/ops/test/test-extensions.js.map +0 -1
  1142. package/lib/ops/test/when-a-recursive-file-search-is-run.spec.d.ts +0 -2
  1143. package/lib/ops/test/when-a-recursive-file-search-is-run.spec.js +0 -55
  1144. package/lib/ops/test/when-a-recursive-file-search-is-run.spec.js.map +0 -1
  1145. package/lib/ops/test/when-git-branchline-is-attempted.spec.d.ts +0 -2
  1146. package/lib/ops/test/when-git-branchline-is-attempted.spec.js +0 -38
  1147. package/lib/ops/test/when-git-branchline-is-attempted.spec.js.map +0 -1
  1148. package/lib/ops/test/when-versions-are-parsed.spec.d.ts +0 -2
  1149. package/lib/ops/test/when-versions-are-parsed.spec.js +0 -62
  1150. package/lib/ops/test/when-versions-are-parsed.spec.js.map +0 -1
  1151. package/lib/ops/throwing-user-input-provider.d.ts +0 -0
  1152. package/lib/ops/throwing-user-input-provider.js +0 -37
  1153. package/lib/ops/throwing-user-input-provider.js.map +0 -1
  1154. package/lib/ops/workspace-versioner.d.ts +0 -122
  1155. package/lib/ops/workspace-versioner.js +0 -292
  1156. package/lib/ops/workspace-versioner.js.map +0 -1
  1157. package/lib/prettify.d.ts +0 -7
  1158. package/lib/prettify.js +0 -24
  1159. package/lib/prettify.js.map +0 -1
  1160. package/lib/read-stdin.d.ts +0 -2
  1161. package/lib/read-stdin.js +0 -29
  1162. package/lib/read-stdin.js.map +0 -1
  1163. package/lib/relay/contracts/contracts.d.ts +0 -207
  1164. package/lib/relay/contracts/contracts.js +0 -230
  1165. package/lib/relay/contracts/contracts.js.map +0 -1
  1166. package/lib/relay/data/aws-k8s-versions.d.ts +0 -6
  1167. package/lib/relay/data/aws-k8s-versions.js +0 -16
  1168. package/lib/relay/data/aws-k8s-versions.js.map +0 -1
  1169. package/lib/relay/data/aws-node-types.d.ts +0 -37
  1170. package/lib/relay/data/aws-node-types.js +0 -4246
  1171. package/lib/relay/data/aws-node-types.js.map +0 -1
  1172. package/lib/relay/data/aws-regions.d.ts +0 -6
  1173. package/lib/relay/data/aws-regions.js +0 -34
  1174. package/lib/relay/data/aws-regions.js.map +0 -1
  1175. package/lib/relay/extended-relay-client.d.ts +0 -27
  1176. package/lib/relay/extended-relay-client.js +0 -28
  1177. package/lib/relay/extended-relay-client.js.map +0 -1
  1178. package/lib/relay/relay-container.d.ts +0 -41
  1179. package/lib/relay/relay-container.js +0 -298
  1180. package/lib/relay/relay-container.js.map +0 -1
  1181. package/lib/relay/wsclient/relay-socket-listener.d.ts +0 -68
  1182. package/lib/relay/wsclient/relay-socket-listener.js +0 -165
  1183. package/lib/relay/wsclient/relay-socket-listener.js.map +0 -1
  1184. package/lib/relay/wsclient/relay-websocket-client.d.ts +0 -33
  1185. package/lib/relay/wsclient/relay-websocket-client.js +0 -179
  1186. package/lib/relay/wsclient/relay-websocket-client.js.map +0 -1
  1187. package/lib/relay/wsclient/rx-websocket-subject.d.ts +0 -25
  1188. package/lib/relay/wsclient/rx-websocket-subject.js +0 -134
  1189. package/lib/relay/wsclient/rx-websocket-subject.js.map +0 -1
  1190. package/lib/relay/wsclient/socket-contracts.d.ts +0 -22
  1191. package/lib/relay/wsclient/socket-contracts.js +0 -3
  1192. package/lib/relay/wsclient/socket-contracts.js.map +0 -1
  1193. package/lib/standard-probes.d.ts +0 -5
  1194. package/lib/standard-probes.js +0 -22
  1195. package/lib/standard-probes.js.map +0 -1
  1196. package/lib/uilogic/build-configurator.d.ts +0 -21
  1197. package/lib/uilogic/build-configurator.js +0 -111
  1198. package/lib/uilogic/build-configurator.js.map +0 -1
  1199. package/lib/uilogic/cloud-provider-contextualizer.d.ts +0 -46
  1200. package/lib/uilogic/cloud-provider-contextualizer.js +0 -194
  1201. package/lib/uilogic/cloud-provider-contextualizer.js.map +0 -1
  1202. package/lib/uilogic/cloud-resource-configurator-factory.d.ts +0 -41
  1203. package/lib/uilogic/cloud-resource-configurator-factory.js +0 -158
  1204. package/lib/uilogic/cloud-resource-configurator-factory.js.map +0 -1
  1205. package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.d.ts +0 -11
  1206. package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.js +0 -16
  1207. package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.js.map +0 -1
  1208. package/lib/uilogic/cloud-resource-configurators/aws-node-types.d.ts +0 -5
  1209. package/lib/uilogic/cloud-resource-configurators/aws-node-types.js +0 -536
  1210. package/lib/uilogic/cloud-resource-configurators/aws-node-types.js.map +0 -1
  1211. package/lib/uilogic/cloud-resource-configurators/aws-regions.d.ts +0 -10
  1212. package/lib/uilogic/cloud-resource-configurators/aws-regions.js +0 -34
  1213. package/lib/uilogic/cloud-resource-configurators/aws-regions.js.map +0 -1
  1214. package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.d.ts +0 -38
  1215. package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.js +0 -348
  1216. package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.js.map +0 -1
  1217. package/lib/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.d.ts +0 -0
  1218. package/lib/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js +0 -78
  1219. package/lib/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js.map +0 -1
  1220. package/lib/uilogic/cloud-resource-configurators/az-interactive-login-configurator.d.ts +0 -42
  1221. package/lib/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js +0 -248
  1222. package/lib/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js.map +0 -1
  1223. package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.d.ts +0 -110
  1224. package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.js +0 -782
  1225. package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.js.map +0 -1
  1226. package/lib/uilogic/cloud-resource-configurators/azure-types.d.ts +0 -0
  1227. package/lib/uilogic/cloud-resource-configurators/azure-types.js +0 -10
  1228. package/lib/uilogic/cloud-resource-configurators/azure-types.js.map +0 -1
  1229. package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.d.ts +0 -24
  1230. package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js +0 -106
  1231. package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js.map +0 -1
  1232. package/lib/uilogic/cloud-resource-configurators/helm-resource-configurator.d.ts +0 -16
  1233. package/lib/uilogic/cloud-resource-configurators/helm-resource-configurator.js +0 -45
  1234. package/lib/uilogic/cloud-resource-configurators/helm-resource-configurator.js.map +0 -1
  1235. package/lib/uilogic/cloud-resource-configurators/unsupported-resource-configurator.d.ts +0 -18
  1236. package/lib/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js +0 -62
  1237. package/lib/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js.map +0 -1
  1238. package/lib/uilogic/enterprise-contextualizer.d.ts +0 -76
  1239. package/lib/uilogic/enterprise-contextualizer.js +0 -671
  1240. package/lib/uilogic/enterprise-contextualizer.js.map +0 -1
  1241. package/lib/uilogic/environment-contextualizer.d.ts +0 -15
  1242. package/lib/uilogic/environment-contextualizer.js +0 -43
  1243. package/lib/uilogic/environment-contextualizer.js.map +0 -1
  1244. package/lib/uilogic/i-cluster-configurator.d.ts +0 -9
  1245. package/lib/uilogic/i-cluster-configurator.js +0 -3
  1246. package/lib/uilogic/i-cluster-configurator.js.map +0 -1
  1247. package/lib/uilogic/i-login-configurator.d.ts +0 -6
  1248. package/lib/uilogic/i-login-configurator.js +0 -3
  1249. package/lib/uilogic/i-login-configurator.js.map +0 -1
  1250. package/lib/uilogic/i-registry-configurator.d.ts +0 -6
  1251. package/lib/uilogic/i-registry-configurator.js +0 -3
  1252. package/lib/uilogic/i-registry-configurator.js.map +0 -1
  1253. package/lib/uilogic/i-secret-store-configurator.d.ts +0 -7
  1254. package/lib/uilogic/i-secret-store-configurator.js +0 -3
  1255. package/lib/uilogic/i-secret-store-configurator.js.map +0 -1
  1256. package/lib/uilogic/image-configurator.d.ts +0 -133
  1257. package/lib/uilogic/image-configurator.js +0 -578
  1258. package/lib/uilogic/image-configurator.js.map +0 -1
  1259. package/lib/uilogic/image-contextualizer.d.ts +0 -24
  1260. package/lib/uilogic/image-contextualizer.js +0 -90
  1261. package/lib/uilogic/image-contextualizer.js.map +0 -1
  1262. package/lib/uilogic/image-registry-contextualizer.d.ts +0 -28
  1263. package/lib/uilogic/image-registry-contextualizer.js +0 -127
  1264. package/lib/uilogic/image-registry-contextualizer.js.map +0 -1
  1265. package/lib/uilogic/index.d.ts +0 -9
  1266. package/lib/uilogic/index.js +0 -14
  1267. package/lib/uilogic/index.js.map +0 -1
  1268. package/lib/uilogic/prompt-select-fuzzy.d.ts +0 -0
  1269. package/lib/uilogic/prompt-select-fuzzy.js +0 -139
  1270. package/lib/uilogic/prompt-select-fuzzy.js.map +0 -1
  1271. package/lib/uilogic/render-methods.d.ts +0 -12
  1272. package/lib/uilogic/render-methods.js +0 -65
  1273. package/lib/uilogic/render-methods.js.map +0 -1
  1274. package/lib/uilogic/tenant-contextualizer.d.ts +0 -79
  1275. package/lib/uilogic/tenant-contextualizer.js +0 -578
  1276. package/lib/uilogic/tenant-contextualizer.js.map +0 -1
  1277. package/lib/user-context-loader.d.ts +0 -60
  1278. package/lib/user-context-loader.js +0 -184
  1279. package/lib/user-context-loader.js.map +0 -1
@@ -1,560 +1,685 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PROMPT_ME_DESIGNATOR = void 0;
4
- const tslib_1 = require("tslib");
5
- //import * as path from 'path';
6
- const core_1 = require("@oclif/core");
7
- const _ = require("lodash");
8
- const codiac_relay_contracts_1 = require("@codiac.io/codiac-relay-contracts");
9
- // import { Asset, ConfigDef, ConfigDefCriteria, ConfigDefTypesEnum, RootMap, ScopedSetting, ScopedSettingCriteria } from '@codiac.io/codiac-domain';
10
- const contracts_1 = require("../../apis/codiac-api/contracts");
11
- const command_base_enterprise_1 = require("../../command-base-enterprise");
12
- const CodiacConstants = require("../../codiac-constants");
13
- const path = require("path");
14
- const render = require("../../uilogic/render-methods");
15
- // const { selectFiles, COMPLETED, CANCELLED } = require('select-files-cli'); // gd js wo ts...
16
- // const { selectFiles, COMPLETED, CANCELLED } = require('../../uilogic/file-selector'); // gd js wo ts...
17
- /** The value provided as input that indicates
18
- * a user's desire to be prompted with a list from which choose the value(s),
19
- * instead of entering them manually or taking a default. */
20
- exports.PROMPT_ME_DESIGNATOR = "?";
21
- class ConfigAdd extends command_base_enterprise_1.CommandBaseEnterprise {
22
- run() {
23
- var _a;
24
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
25
- try {
26
- this.bootstrap();
27
- const { args, flags } = yield this.parse(ConfigAdd);
28
- (_a = this._relayContainer) === null || _a === void 0 ? void 0 : _a.ready$.subscribe((ready) => tslib_1.__awaiter(this, void 0, void 0, function* () {
29
- var _b, _c, _d;
30
- let partialConfigDef = {};
31
- let partialSetting = {};
32
- this._userCntx = yield this.establishTenantContext(this._userCntx);
33
- let enterprise = (yield this.establishEnterpriseContext()).enterprise;
34
- partialConfigDef.enterprise = enterprise.code;
35
- partialSetting.enterprise = enterprise.code;
36
- let rootMap = yield this.getRootMap(enterprise.code);
37
- let confirmed = false;
38
- do {
39
- // 1. Select Asset
40
- partialConfigDef.asset = yield this.promptForAsset(enterprise.assets);
41
- // 2. Set Target File
42
- let selectedFile = (yield this.promptForTargetFile(partialConfigDef.enterprise, partialConfigDef.asset));
43
- partialConfigDef.targetFile = selectedFile.targetFile;
44
- partialConfigDef.settings = selectedFile.settings;
45
- // 3. Setting
46
- partialSetting.setting = yield this.promptForSetting((_b = partialConfigDef.settings) !== null && _b !== void 0 ? _b : [], (_c = args.setting) !== null && _c !== void 0 ? _c : flags.setting);
47
- let existingValues = (_d = partialConfigDef.settings) === null || _d === void 0 ? void 0 : _d.filter(s => s.setting === partialSetting.setting);
48
- // 4. Scope
49
- let selectedScope = yield this.promptForScope(partialConfigDef.enterprise, rootMap, existingValues);
50
- partialSetting.scope = selectedScope.scope;
51
- partialSetting.target = selectedScope.target;
52
- // 5. Value
53
- partialSetting.value = yield this.promptForValue({ setting: partialSetting.setting, scope: partialSetting.scope, target: partialSetting.target, enterprise: partialSetting.enterprise }, existingValues, rootMap);
54
- // 6. Confirm or loop back around to enterprise
55
- confirmed = yield this._ui.promptConfirm("confirm", "Apply? ");
56
- } while (!confirmed);
57
- let candidate = Object.assign({ setting: partialSetting.setting, value: partialSetting.value, targetFile: partialConfigDef.targetFile, asset: partialConfigDef.asset, enterprise: partialConfigDef.enterprise, scope: partialSetting.scope, target: partialSetting.target, description: partialSetting.description }, this.createAuditable());
58
- yield this.upsertSetting(candidate);
59
- /*
60
- MarkStartHere("NEW WORKFLOW...");
61
-
62
- 1. Prompt for Asset
63
- default = this._projUserCfg?.enterprise?.assetBindings?[0] ?? this._userCntx.currentEnterprise?.asset;
64
- let aCntx = await this.establishAssetContext(enterprise, true);
65
-
66
- 2. Target File
67
- (select from existing or AddNEw option)
68
- if (addNew)
69
- freehand prompt with "?" as default (enter "?" to browse)
70
- enter rel path from container root (app root?)
71
-
72
- 3. Setting
73
- select from existing
74
- if file selected, merge and dim
75
- (tree with "+newChild" at top of each branch) (How do you prevent selection of branch vs leaf?)
76
-
77
- 4. Scope ("Where will it apply?")
78
- cabinet tree view with un-hydrated scopes dimmed, hydrated showing values
79
-
80
- 5. Value
81
- (render pedigree)
82
- default = flags.value ?? selectedFile.value ?? existing.value
83
-
84
- 6. Confirm or loop back around to enterprise
85
- */
86
- // let cab = await this.establishCabinet(flags.cabinet, true);
87
- // let configName = flags.file || CodiacConstants.DEFAULT_APP_SETTINGS_FILENAME;
88
- // if (configName == PROMPT_ME_DESIGNATOR) {
89
- // let confirmed = false;
90
- // while (!confirmed) {
91
- // // Step 1) select the distribution folder (aka: the build output folder)
92
- // let folderOptions: FolderSelectionOptions = {
93
- // root: this._projectRoot,
94
- // startingPath: process.cwd(),
95
- // };
96
- // let distFolder = await this._ui.promptSelectFolder("distFolder", "Select the distribution folder (aka: the build output folder)...", folderOptions);
97
- // // Step 2) select the config file within it.
98
- // let options: FileSelectionOptions = {
99
- // root: distFolder,
100
- // startingPath: distFolder,
101
- // extensions: ["json", "config", "yaml", "ini", "properties"],
102
- // asRelative: true
103
- // };
104
- // configName = await this._ui.promptSelectFile("targetFile", "Select the target file...", options);
105
- // confirmed = await this._ui.promptConfirm("targetFileCOnfirmation", `Target file: ${configName}`, true);
106
- // }
107
- // // this._ui.userMessage("Select the target file...")
108
- // // let relativeTo = process.cwd();
109
- // // let exts = ["json", "config", "yaml", "ini", "properties"];
110
- // // let ptn = `\\.(${exts.join("|")})$`;
111
- // // let rx = new RegExp(ptn, "i");
112
- // // let options: any = {
113
- // // multi: true,
114
- // // clearConsole: false,
115
- // // root: this._projectRoot
116
- // // // fileFilter: (filename: string) => { return /\.(json|yaml|config|properties|ini)$/i.test(filename) } });
117
- // // }
118
- // // options.fileFilter = (fileName: string) => rx.test(fileName);
119
- // // let fileResult = await selectFiles(options);
120
- // // console.dir(fileResult);
121
- // // if (fileResult.status == COMPLETED && fileResult.selectedFiles && fileResult.selectedFiles.length > 0) {
122
- // // let selected = fileResult.selectedFiles[0];
123
- // // let relPathName = path.relative(relativeTo, selected);
124
- // // this._ui.userMessage(`Selected file: ${relPathName}`);
125
- // // }
126
- // }
127
- // // 1 Get the list of available built in system settings
128
- // // stub:
129
- // this._appConfig = this._ops.loadConfig();
130
- // let avails = await this.getAvailableSettings();
131
- // // Prompt for setting if reqd
132
- // let setting: string = args.setting || flags.setting;
133
- // if (!setting) {
134
- // let result = await inquirer.prompt({ type: 'list', name: 'setting', message: 'Setting to add:', choices: avails });
135
- // setting = result.setting;
136
- // }
137
- // // this.log(result.setting);
138
- // // PROMPT FOR VALUE (if reqd)
139
- // let val: string;
140
- // if (flags.value) {
141
- // val = flags.value;
142
- // } else {
143
- // // TODO: this current value needs to support the scoped value set
144
- // let currentValue = (this._appConfig) ? this._appConfig[setting] : undefined;
145
- // let response = await inquirer.prompt({ type: 'input', name: 'settingValue', message: `Value for ${setting}: `, default: currentValue });
146
- // val = response.settingValue;
147
- // }
148
- // if (flags.enterprise || flags.environment || flags.cabinet) {
149
- // // WRITE SCOPED TO THE API
150
- // let level: ScopeLevel = ScopeLevel.enterprise;
151
- // let scopeName: string = "";
152
- // if (flags.enterprise) {
153
- // level = ScopeLevel.enterprise;
154
- // scopeName = flags.enterprise;
155
- // } else if (flags.environment) {
156
- // level = ScopeLevel.environment;
157
- // scopeName = flags.environment;
158
- // } else if (flags.cabinet) {
159
- // level = ScopeLevel.cabinet;
160
- // scopeName = flags.cabinet;
161
- // }
162
- // this.writeSetting_Api(partialConfigDef.enterprise, partialConfigDef.asset, configName, setting, level, scopeName, val);
163
- // } else {
164
- // // WRITE UNSCOPED TO LOCAL
165
- // this.writeSetting_local(setting, val);
166
- // }
167
- // this.log(`Applied ${configName} setting "${setting}" = "${val}"`);
168
- }));
169
- }
170
- catch (err) {
171
- this.handleError(err);
172
- throw err;
173
- }
174
- });
175
- }
176
- promptForAsset(assets) {
177
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
178
- try {
179
- let choices = assets.map(a => { return { name: a.name, value: a.name }; });
180
- let output = (yield this._ui.promptSelect("asset", "Asset: ", choices));
181
- return output;
182
- }
183
- catch (err) {
184
- throw err;
185
- }
186
- });
187
- }
188
- promptForValue(setting, existingValues, rootMap) {
189
- var _a;
190
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
191
- // let existingValues = partialConfigDef.settings?.filter(s => s.setting === setting.setting);
192
- let pedigree = this.buildPedigreeFor(setting, existingValues, rootMap);
193
- let renderPedigree = (pedigree) => {
194
- if (pedigree === null || pedigree === void 0 ? void 0 : pedigree.parent)
195
- renderPedigree(pedigree.parent);
196
- if (pedigree.value !== undefined) {
197
- this._ui.userMessage(`[in ${pedigree.scope}: ${pedigree.target}] = ${(pedigree.value === "") ? "\"\"" : pedigree.value}`);
198
- }
199
- };
200
- if (setting.description)
201
- this._ui.userMessage(setting.description);
202
- if (pedigree)
203
- renderPedigree(pedigree);
204
- let existing = existingValues === null || existingValues === void 0 ? void 0 : existingValues.find(s => s.scope === setting.scope && s.target === setting.target);
205
- let output = yield this._ui.prompt("value", `Value in ${setting.scope} ${setting.target}: `, false, (_a = setting.value) !== null && _a !== void 0 ? _a : existing === null || existing === void 0 ? void 0 : existing.value);
206
- return output;
207
- });
208
- }
209
- /** Returns the recursive parent path of values for the given setting
210
- * up through the enterprise scope.
211
- * Returns undefined if the given setting is already scoped to enterprise.
212
- *
213
- * @param existingValues This MUST be filtered for this current setting (existing.setting == setting.setting).
214
- * */
215
- buildPedigreeFor(setting, existingValues, rootMap) {
216
- try {
217
- let pedigree;
218
- if (setting.scope !== codiac_relay_contracts_1.ScopeLevel.enterprise) {
219
- let ent = rootMap.enterprises.find(e => e.name === setting.enterprise);
220
- if (ent == undefined) {
221
- throw new Error(`No enterprise found named [${setting.enterprise}]`);
222
- }
223
- let entSetting = existingValues === null || existingValues === void 0 ? void 0 : existingValues.find(s => s.scope === codiac_relay_contracts_1.ScopeLevel.enterprise && s.target === ent.name);
224
- let entPedigree = { scope: codiac_relay_contracts_1.ScopeLevel.enterprise, target: setting.enterprise };
225
- if (entSetting === null || entSetting === void 0 ? void 0 : entSetting.value) {
226
- entPedigree.value = entSetting.value;
227
- }
228
- if (setting.scope === codiac_relay_contracts_1.ScopeLevel.cabinet) {
229
- let env = ent === null || ent === void 0 ? void 0 : ent.environments.find(e => e.cabinets.find(c => c.name === setting.target));
230
- if (!env) {
231
- throw new Error(`No environment found containing the cabinet [${setting.target}]`);
232
- }
233
- pedigree = { scope: codiac_relay_contracts_1.ScopeLevel.environment, target: env.name, parent: entPedigree };
234
- let envSetting = existingValues === null || existingValues === void 0 ? void 0 : existingValues.find(s => s.scope === codiac_relay_contracts_1.ScopeLevel.environment && s.target === (env === null || env === void 0 ? void 0 : env.name));
235
- if (envSetting) {
236
- pedigree.value = envSetting.value;
237
- }
238
- }
239
- else if (setting.scope === codiac_relay_contracts_1.ScopeLevel.environment) {
240
- pedigree = entPedigree;
241
- }
242
- }
243
- return pedigree;
244
- }
245
- catch (err) {
246
- throw err;
247
- }
248
- }
249
- promptForScope(enterprise, rootMap, existings) {
250
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
251
- try {
252
- let output;
253
- // render cab tree with all lines selectable
254
- let cabTree = this.buildCabinetTree(rootMap, existings);
255
- let choices = this.buildSelectChoicesFrom(cabTree);
256
- let delimited = (yield this._ui.promptSelect("scope", "Apply to: ", choices, undefined, false));
257
- let parts = delimited.split("|");
258
- output = { scope: parts[0], target: parts[1] };
259
- return output;
260
- }
261
- catch (err) {
262
- throw (err);
263
- }
264
- });
265
- }
266
- buildSelectChoicesFrom(tree) {
267
- try {
268
- let choices = [];
269
- // the value is no good here - need scope and target both available
270
- render.renderStringTree(tree, (txt, item) => choices.push({ name: txt, value: item.value }));
271
- // // This is one way to do it
272
- // for (let item of tree) {
273
- //
274
- // let thisChoice: PromptChoice = { name: item.text, value: item.text };
275
- // choices.push(thisChoice);
276
- //
277
- // if (item.children && item.children.length > 0) {
278
- // let children = this.buildSelectChoicesFrom(item.children);
279
- // choices.push(...children);
280
- // }
281
- // }
282
- return choices;
283
- }
284
- catch (err) {
285
- throw err;
286
- }
287
- }
288
- /** sets each value to "scope|target".
289
- *
290
- * This is MOSTLY a COPY-PASTE from the CabinetList command!!! This view is prob gonna be pretty common - consider promoting it to a shared utility. */
291
- buildCabinetTree(rootMap, existings) {
292
- var _a, _b, _c, _d;
293
- let tree = [];
294
- for (let ent of rootMap.enterprises) {
295
- let entBranch = { text: `${ent.name} enterprise:`, value: `${codiac_relay_contracts_1.ScopeLevel.enterprise}|${ent.name}` };
296
- let entSetting = existings === null || existings === void 0 ? void 0 : existings.find(s => s.scope === codiac_relay_contracts_1.ScopeLevel.enterprise && s.target === ent.name);
297
- if (entSetting !== undefined) {
298
- let valueSuffix = this.ellipsis(35, (_a = entSetting.value) !== null && _a !== void 0 ? _a : "[set to undefined]");
299
- valueSuffix = `(${valueSuffix})`;
300
- entBranch.text = entBranch.text.concat(" ", this._styler.dim(valueSuffix));
301
- }
302
- for (let env of _.sortBy(ent.environments, e => e.sequence, e => e.name)) {
303
- let envBranch = { text: `${env.name}`, value: `${codiac_relay_contracts_1.ScopeLevel.environment}|${env.name}` };
304
- let envSetting = existings === null || existings === void 0 ? void 0 : existings.find(s => s.scope === codiac_relay_contracts_1.ScopeLevel.environment && s.target === env.name);
305
- if (envSetting !== undefined) {
306
- let valueSuffix = this.ellipsis(35, (_b = envSetting.value) !== null && _b !== void 0 ? _b : "[set to undefined]");
307
- valueSuffix = `(${valueSuffix})`;
308
- envBranch.text = envBranch.text.concat(" ", this._styler.dim(valueSuffix));
309
- }
310
- for (let cab of env.cabinets) {
311
- // let cwg = rootMap.clusters.find(c => c.name === cab.cluster);
312
- // let clusterDesc = cwg ? ` (${cab.cluster}, ${cwg.provider} ${cwg.locationName})` : "";
313
- let cabBranch = {
314
- text: `${cab.name}`,
315
- value: `${codiac_relay_contracts_1.ScopeLevel.cabinet}|${cab.name}`
316
- };
317
- let cabSetting = existings === null || existings === void 0 ? void 0 : existings.find(s => s.scope === codiac_relay_contracts_1.ScopeLevel.cabinet && s.target === cab.name);
318
- if (cabSetting !== undefined) {
319
- let valueSuffix = this.ellipsis(35, (_c = cabSetting.value) !== null && _c !== void 0 ? _c : "[set to undefined]");
320
- valueSuffix = `(${valueSuffix})`;
321
- cabBranch.text = cabBranch.text.concat(" ", this._styler.dim(valueSuffix));
322
- }
323
- if (envBranch.children === undefined)
324
- envBranch.children = [];
325
- (_d = envBranch.children) === null || _d === void 0 ? void 0 : _d.push(cabBranch);
326
- }
327
- if (entBranch.children === undefined)
328
- entBranch.children = [];
329
- entBranch.children.push(envBranch);
330
- }
331
- tree.push(entBranch);
332
- }
333
- return tree;
334
- }
335
- /** Truncates the string to the given length with an ellipses as suffix */
336
- ellipsis(maxLength, value) {
337
- let output = value;
338
- if (output.length > maxLength) {
339
- let ellipsis = "..."; // Rather use the ellipsis character but String.fromCharCode(133) is returning a problematic character.
340
- output = output.slice(0, maxLength - 1 - ellipsis.length).concat(ellipsis);
341
- }
342
- return output;
343
- }
344
- /**
345
- *
346
- * Use this inquirer plugin for navigating the object structure:
347
- * https://github.com/insightfuls/inquirer-tree-prompt
348
- *
349
- * See if this file tree selector could be fashioned to do the same:
350
- * https://github.com/anc95/inquirer-file-tree-selection
351
- *
352
- * @param existing
353
- * @param defaultSetting
354
- */
355
- promptForSetting(existing, defaultSetting) {
356
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
357
- try {
358
- let setting;
359
- // TODO: render a tree of settings (cant select the branches, just the leaf nodes)
360
- if (existing.length > 0) {
361
- // let choices = existing.map(s => { return { name: s.setting, value: s.setting }; });
362
- let choices = _.uniq(existing.map(s => s.setting));
363
- choices.push(CodiacConstants.CliConstants.CHOICE_VALUE_FOR_NEW);
364
- setting = (yield this._ui.promptSelect("settingSelect", "Setting: ", choices));
365
- }
366
- if (setting === CodiacConstants.CliConstants.CHOICE_VALUE_FOR_NEW || setting === undefined) {
367
- setting = (yield this._ui.prompt("settingFreehand", "Setting (use '.' for hierarchy): "));
368
- }
369
- if (existing.find(s => s.setting === setting)) {
370
- // matched an existing setting afterall
371
- }
372
- // ----------------------------------------------------------------------------------------------
373
- // // Try to implement un-selectable options...
374
- // let settings = ["bill", "sam", "tom", "harry"];
375
- // let choices: any[] = settings.map(s => { return { name: s, value: s }; });
376
- // // choices.push({ name: "some branch", value: new inquirer.Separator("--I am a branch") });
377
- // choices.push(new inquirer.Separator("--I am a branch"));
378
- // choices.push({ name: "sally", value: "sally" });
379
- // choices.push({ name: "Sue", value: "Sue" });
380
- // choices.push({ name: "Suzy", value: "Suzy" });
381
- // let nada = await this._ui.promptSelect("test", "try this", choices);
382
- // ----------------------------------------------------------------------------------------------
383
- return setting;
384
- }
385
- catch (err) {
386
- throw err;
387
- }
388
- });
389
- }
390
- /** Copy of this method is in config:view */
391
- promptForTargetFile(enterprise, asset) {
392
- var _a, _b;
393
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
394
- try {
395
- let crit = {
396
- asset: asset,
397
- enterprise: enterprise,
398
- type: contracts_1.ConfigDefTypesEnum.file
399
- };
400
- let cfgResult = yield this._codiacApi.Call.getConfigDefs(crit, { projection: { pathsExcluded: [], pathsIncluded: ["settings", "targetFile", "format"] } });
401
- if (cfgResult.error)
402
- throw cfgResult.error;
403
- let configs = (_a = cfgResult.output) !== null && _a !== void 0 ? _a : [];
404
- let choices = configs.map(c => { return { name: c.targetFile, value: c.targetFile }; });
405
- choices.push({ name: CodiacConstants.CliConstants.CHOICE_VALUE_FOR_NEW, value: CodiacConstants.CliConstants.CHOICE_VALUE_FOR_NEW });
406
- let output; // Pick<ConfigDef, "targetFile" | "settings">;
407
- let settingsInLocalFile;
408
- let selected = (yield this._ui.promptSelect("fileExisting", "File: ", choices));
409
- if (selected === CodiacConstants.CliConstants.CHOICE_VALUE_FOR_NEW) {
410
- selected = (yield this._ui.prompt("filefreehand", "Path from image root: ('?' to browse): "));
411
- if (selected === "?") {
412
- let localPath = (yield this._ui.promptSelectFile("filebrowse", "Select file: ", { asRelative: true }));
413
- settingsInLocalFile = yield this.extractSettingsFromFile(localPath);
414
- let filename = path.basename(localPath);
415
- let pathInImage = path.dirname(localPath);
416
- this._ui.userMessage(`Target file: ${this._styler.hilite(filename)}`);
417
- pathInImage = (yield this._ui.prompt("pathinimage", "Path from image root: ", true, pathInImage));
418
- selected = path.posix.join(pathInImage, filename);
419
- }
420
- else {
421
- // the user free-handed the targetFile field
422
- // this._ui.userMessage(`Target file: ${this._styler.hilite(selected)}`);
423
- }
424
- }
425
- output = {
426
- targetFile: selected,
427
- settings: (_b = configs.find(c => c.targetFile === selected)) === null || _b === void 0 ? void 0 : _b.settings, // in case it matches a config we pulled down
428
- };
429
- return output;
430
- }
431
- catch (err) {
432
- throw err;
433
- }
434
- });
435
- }
436
- extractSettingsFromFile(relativeFilePath) {
437
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
438
- try {
439
- let output = [];
440
- // gotta determmine the file format and parse it.
441
- // This logic prob needs to come from the domain or from the relay.
442
- /** let format = getDefaultDataFormat(localPath);
443
- * let extracted: Object | undefined;
444
- * do {
445
- * try {
446
- * format = format ?? (await this.promptForFormat());
447
- * extracted = tryDeserialize(file, format);
448
- * } catch(err) {
449
- * this._ui.UserMessage(`Error parsing as ${format}: ${err.message ?? ""}`);
450
- * format = undefined;
451
- * }
452
- * } while (!extracted);
453
- *
454
- * output = this.convertToStringParents(extracted);
455
- */
456
- return output;
457
- }
458
- catch (err) {
459
- throw err;
460
- }
461
- });
462
- }
463
- writeSetting_Api(enterprise, assetName, configName, setting, scopeLevel, scopeName, val) {
464
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
465
- try {
466
- let settingObj = Object.assign({ setting: setting, value: val, targetFile: configName, asset: assetName, enterprise: enterprise, scope: scopeLevel, target: scopeName }, this.createAuditable());
467
- return this.upsertSetting(settingObj);
468
- }
469
- catch (err) {
470
- throw err;
471
- }
472
- });
473
- }
474
- upsertSetting(settingObj) {
475
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
476
- return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
477
- try {
478
- // TODO: Look to enterprise context instead.
479
- // let enterprise = /* this._cfg.enterprise || */ this._projCfg.tenantCode;
480
- // TODO: Look to asset context instead - and if none, fail and call for "$ cod asset:set"
481
- // let assetName = this._projCfg.name; // this needs to be taken from an image definition. (AssetBinding[] needs to be added to each ImageExport)
482
- // NOTE: We could bind a config to an image name,
483
- // and then allow for an Asset scope to set values on it...
484
- let crit = {
485
- enterprise: settingObj.enterprise,
486
- asset: settingObj.asset,
487
- targetFile: settingObj.targetFile,
488
- scope: settingObj.scope,
489
- target: settingObj.target,
490
- setting: settingObj.setting
491
- };
492
- // TODO: Replace this with an upsert based on: enterprise, asset, configName, scopeLevel, scopeName, and setting
493
- let check = yield this._codiacApi.ScopedSetting.tryReadMany(crit);
494
- let resultSetting;
495
- if (check.success && check.output && check.output.length > 0) {
496
- settingObj.id = check.output[0].id;
497
- resultSetting = yield this._codiacApi.ScopedSetting.tryUpdate(settingObj);
498
- }
499
- else {
500
- resultSetting = yield this._codiacApi.ScopedSetting.tryCreate(settingObj);
501
- }
502
- if (resultSetting.success) {
503
- this.logger.notice(`Successfully saved setting [${settingObj.setting}] for ${settingObj.scope} [${settingObj.target}] in ${settingObj.enterprise}/${settingObj.asset} config [${settingObj.targetFile}]`);
504
- this._ui.userMessage(`Successfully saved setting [${settingObj.setting}] for ${settingObj.scope} [${settingObj.target}] in ${settingObj.enterprise}/${settingObj.asset} config [${settingObj.targetFile}]`);
505
- }
506
- else if (resultSetting.error) {
507
- this.logger.error(`Error saving setting [${settingObj.setting}]: ${resultSetting.message || ""}; ${resultSetting.error.message || resultSetting.error.stack}; For ${settingObj.scope} [${settingObj.target}] in ${settingObj.enterprise}/${settingObj.asset} config [${settingObj.targetFile}]`);
508
- this._ui.userMessage(`Error saving setting [${settingObj.setting}]: ${resultSetting.message || ""}; ${resultSetting.error.message || resultSetting.error.stack}; For ${settingObj.scope} [${settingObj.target}] in ${settingObj.enterprise}/${settingObj.asset} config [${settingObj.targetFile}]`);
509
- }
510
- else {
511
- this.logger.warn(`Failed without error to save setting [${settingObj.setting}]: ${resultSetting.message || ""}; For ${settingObj.scope} [${settingObj.target}] in ${settingObj.enterprise}/${settingObj.asset} config [${settingObj.targetFile}]`);
512
- this._ui.userMessage(`Failed without error to save setting [${settingObj.setting}]: ${resultSetting.message || ""}; For ${settingObj.scope} [${settingObj.target}] in ${settingObj.enterprise}/${settingObj.asset} config [${settingObj.targetFile}]`);
513
- }
514
- resolve();
515
- }
516
- catch (err) {
517
- reject(err);
518
- }
519
- }));
520
- });
521
- }
522
- writeSetting_local(setting, value) {
523
- // Write the available setting
524
- if (!this._appConfig) {
525
- this._appConfig = {};
526
- }
527
- _.set(this._appConfig, setting, value);
528
- // this._appConfig[setting] = val.settingValue;
529
- this._ops.writeConfig(this._appConfig);
530
- }
531
- /** Retrieves the list of app config settings that are not yet explicitly declared in the app config file itself */
532
- getAvailableSettings() {
533
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
534
- let avails = this._ops.loadConfigKeys(this.config.root);
535
- let unset = avails;
536
- // Remove any settings already explicitly called from the app-config.
537
- if (this._appConfig) {
538
- let keys = _.keys(this._appConfig);
539
- unset = _.pull(avails, ...keys);
540
- }
541
- return unset;
542
- });
543
- }
544
- }
545
- exports.default = ConfigAdd;
546
- ConfigAdd.description = 'Adds a key value pair to the app config';
547
- ConfigAdd.aliases = ['config:set', 'cfg:add'];
548
- ConfigAdd.flags = {
549
- help: core_1.Flags.help({ char: 'h' }),
550
- setting: core_1.Flags.string({ char: 's', required: false, description: "The config key (in dotpath/JSONPath), relative to the root of the config." }),
551
- value: core_1.Flags.string({ char: 'v', required: false, description: "The actual concrete data to be applied as the setting value." }),
552
- enterprise: core_1.Flags.string({ char: 'n', exclusive: ["environment", "cabinet"], description: 'The name of the enterprise to which this value is to apply.' }),
553
- environment: core_1.Flags.string({ char: 'e', exclusive: ["enterprise", "cabinet"], description: 'The name of the environment to which this value is to apply.' }),
554
- cabinet: core_1.Flags.string({ char: 'c', exclusive: ["enterprise", "environment"], description: 'The name of the cabinet to which this value is to apply.' }),
555
- file: core_1.Flags.string({ char: 'f', description: 'The path-name to the file to which the settings are written, relative to the root of the Codiac project.' })
556
- };
557
- ConfigAdd.args = {
558
- setting: core_1.Args.string({ description: 'The key for the config setting to add' })
559
- };
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PROMPT_ME_DESIGNATOR = void 0;
4
+ const tslib_1 = require("tslib");
5
+ //import * as path from 'path';
6
+ const core_1 = require("@oclif/core");
7
+ const _ = require("lodash");
8
+ const codiac_relay_contracts_1 = require("@codiac.io/codiac-relay-contracts");
9
+ // import { Asset, ConfigDef, ConfigDefCriteria, ConfigDefTypesEnum, RootMap, ScopedSetting, ScopedSettingCriteria } from '@codiac.io/codiac-domain';
10
+ const contracts_1 = require("../../apis/codiac-api/contracts");
11
+ const command_base_enterprise_1 = require("../../command-base-enterprise");
12
+ const CodiacConstants = require("../../codiac-constants");
13
+ const path = require("path");
14
+ const render = require("../../uilogic/render-methods");
15
+ const config_ui_utils_1 = require("../../uilogic/config-ui-utils");
16
+ // const { selectFiles, COMPLETED, CANCELLED } = require('select-files-cli'); // gd js wo ts...
17
+ // const { selectFiles, COMPLETED, CANCELLED } = require('../../uilogic/file-selector'); // gd js wo ts...
18
+ /** The value provided as input that indicates
19
+ * a user's desire to be prompted with a list from which choose the value(s),
20
+ * instead of entering them manually or taking a default. */
21
+ exports.PROMPT_ME_DESIGNATOR = "?";
22
+ /** Reads the given stream directly without assigning listeners to its events. */
23
+ function read(stream) {
24
+ var _a, stream_1, stream_1_1;
25
+ var _b, e_1, _c, _d;
26
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
27
+ try {
28
+ const chunks = [];
29
+ try {
30
+ for (_a = true, stream_1 = tslib_1.__asyncValues(stream); stream_1_1 = yield stream_1.next(), _b = stream_1_1.done, !_b;) {
31
+ _d = stream_1_1.value;
32
+ _a = false;
33
+ try {
34
+ const chunk = _d;
35
+ chunks.push(chunk);
36
+ }
37
+ finally {
38
+ _a = true;
39
+ }
40
+ }
41
+ }
42
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
43
+ finally {
44
+ try {
45
+ if (!_a && !_b && (_c = stream_1.return)) yield _c.call(stream_1);
46
+ }
47
+ finally { if (e_1) throw e_1.error; }
48
+ }
49
+ const out = Buffer.concat(chunks).toString('utf8');
50
+ return out;
51
+ }
52
+ catch (err) {
53
+ throw err;
54
+ }
55
+ });
56
+ }
57
+ var InteractionModes;
58
+ (function (InteractionModes) {
59
+ InteractionModes["echo"] = "echo";
60
+ InteractionModes["toscript"] = "toscript";
61
+ InteractionModes["silent"] = "silent";
62
+ })(InteractionModes || (InteractionModes = {}));
63
+ class ConfigAdd extends command_base_enterprise_1.CommandBaseEnterprise {
64
+ constructor() {
65
+ super(...arguments);
66
+ /** CLI Command-line string to rerun this execution as a non-TTY script. */
67
+ this.cmd = ["cod", "config", "add", "--silent"];
68
+ }
69
+ // --------------------------------------------------------------------
70
+ // Lazy-loaded properties
71
+ get configUtils() {
72
+ if (this._configUtils_backer === undefined) {
73
+ this._configUtils_backer = this.ioc.get(config_ui_utils_1.ConfigUiUtils);
74
+ }
75
+ return this._configUtils_backer;
76
+ }
77
+ // --------------------------------------------------------------------
78
+ bootstrap() {
79
+ super.bootstrap();
80
+ this.ioc.bind(config_ui_utils_1.ConfigUiUtils).toSelf();
81
+ }
82
+ run() {
83
+ var _a;
84
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
85
+ try {
86
+ this.bootstrap();
87
+ yield this.readStdin();
88
+ (_a = this._relayContainer) === null || _a === void 0 ? void 0 : _a.ready$.subscribe((ready) => tslib_1.__awaiter(this, void 0, void 0, function* () {
89
+ try {
90
+ // 0. SET DEFAULTS
91
+ this._userCntx = yield this.establishTenantContext(this._userCntx);
92
+ let enterprise = (yield this.establishEnterpriseContext()).enterprise;
93
+ // 1. CAPTURE ARGS
94
+ let [partial, interactionMode, takeDefaults] = yield this.captureArgs(enterprise.code);
95
+ // 2. ACQUIRE INPUT
96
+ let rootMap = yield this.getRootMap(enterprise.code);
97
+ let candidate;
98
+ if (interactionMode == InteractionModes.silent) {
99
+ candidate = this.buildCandidate_silently(partial, rootMap);
100
+ }
101
+ else {
102
+ candidate = yield this.buildCandidate_interactively(partial, rootMap, takeDefaults);
103
+ }
104
+ // In case we're hanging waiting for piped-in data that doesnt exist...
105
+ if (!process.stdin.destroyed)
106
+ process.stdin.destroy();
107
+ if (candidate == undefined) {
108
+ this.logger.notice(`Operation cancelled. No work was done.`);
109
+ this._ui.userMessage(`Operation cancelled. No work was done.`);
110
+ this.exit(0);
111
+ }
112
+ else {
113
+ // 3. RENDER COMMAND STRING
114
+ if (interactionMode != undefined && [InteractionModes.echo, InteractionModes.toscript].includes(interactionMode)) {
115
+ this.cmd = this.buildCommandString(candidate, this.cmd);
116
+ this._ui.userMessage(this.cmd.join(" "));
117
+ }
118
+ if (interactionMode != InteractionModes.toscript) {
119
+ // 4. EXECUTE THE MAIN TASK
120
+ yield this.executeTask(candidate);
121
+ }
122
+ }
123
+ return;
124
+ }
125
+ catch (err) {
126
+ this.handleError(err);
127
+ // dont rethrow - err handling in the observable isnt yet user-friendly.
128
+ }
129
+ }));
130
+ }
131
+ catch (err) {
132
+ this.handleError(err);
133
+ throw err;
134
+ }
135
+ });
136
+ }
137
+ captureArgs(currentEnterprise) {
138
+ var _a, _b, _c, _d, _e, _f, _g;
139
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
140
+ // TODO: Move this into the base class
141
+ const { args, flags } = yield this.parse(ConfigAdd);
142
+ // TODO: Consider making this parse a separate abstract base method
143
+ // stdin
144
+ let inputDoc;
145
+ if (this.pipedInput) {
146
+ inputDoc = this.configUtils.parseInputString(this.pipedInput.trim());
147
+ this._ui.userMessage(`Found ${inputDoc.length} record(s) to add in the stdin pipeline.`);
148
+ }
149
+ let partial = { enterprise: currentEnterprise };
150
+ partial.asset = flags.asset;
151
+ if (flags.type) {
152
+ partial.configType = Object.values(config_ui_utils_1.SpecialConfigTypes).find(x => x.toString() == flags.type);
153
+ if (partial.configType == undefined)
154
+ delete partial.configType;
155
+ }
156
+ else if (flags.file) {
157
+ partial.targetFile = flags.file;
158
+ }
159
+ partial.scope =
160
+ (_b = (_a = (flags['enterprise-scope'] ? codiac_relay_contracts_1.ScopeLevel.enterprise : undefined)) !== null && _a !== void 0 ? _a : (flags.enviro ? codiac_relay_contracts_1.ScopeLevel.environment : undefined)) !== null && _b !== void 0 ? _b : (flags.cabinet ? codiac_relay_contracts_1.ScopeLevel.cabinet : undefined);
161
+ partial.target =
162
+ (_d = (_c = (flags['enterprise-scope'] ? partial.enterprise : undefined)) !== null && _c !== void 0 ? _c : flags.enviro) !== null && _d !== void 0 ? _d : flags.cabinet;
163
+ if (flags.setting) {
164
+ partial.settings = [{ setting: flags.setting, value: flags.value }];
165
+ }
166
+ if (inputDoc != undefined) {
167
+ partial.settings = ((_e = partial.settings) !== null && _e !== void 0 ? _e : []).concat(inputDoc);
168
+ }
169
+ // partial.description = flags.description;
170
+ // TODO: move this into the base class
171
+ const interactionMode = (this.pipedInput) ? InteractionModes.silent : (_g = (_f = undefined !== null && undefined !== void 0 ? undefined : (flags.echo ? InteractionModes.echo : undefined)) !== null && _f !== void 0 ? _f : (flags["to-script"] ? InteractionModes.toscript : undefined)) !== null && _g !== void 0 ? _g : (flags.silent ? InteractionModes.silent : undefined);
172
+ const takeDefaults = flags['take-defaults'];
173
+ return [partial, interactionMode, takeDefaults];
174
+ });
175
+ }
176
+ parseTable(input, separator = ",") {
177
+ let output = [];
178
+ let lines = input
179
+ .split("\n")
180
+ .map(x => x.trim());
181
+ lines.shift();
182
+ lines.forEach(x => {
183
+ let parts = x.split(",").map(x => x.trim());
184
+ output.push({ setting: parts[0], value: parts[1] });
185
+ });
186
+ return output;
187
+ }
188
+ buildCandidate_silently(partial, rootMap) {
189
+ var _a;
190
+ try {
191
+ // VALIDATE / SET DEFAULTS
192
+ if (partial.asset == undefined || _.isEmpty(partial.asset))
193
+ throw new Error(`Invalid input: missing asset name.`);
194
+ if (partial.enterprise == undefined || _.isEmpty(partial.enterprise)) {
195
+ // Derive the one OR throw if it's indeterminate
196
+ let assetParents = rootMap.enterprises.filter(e => e.assets.find(a => a.name == partial.asset));
197
+ if (assetParents.length == 1) {
198
+ partial.enterprise = assetParents[0].name;
199
+ }
200
+ else if (assetParents.length > 1) {
201
+ throw new Error(`Invalid input: missing enterprise.`);
202
+ }
203
+ }
204
+ if (partial.targetFile == undefined && partial.configType == undefined)
205
+ throw new Error("Invalid input: Must specify the file or type.");
206
+ // Validate scope/target
207
+ if (partial.scope == undefined || _.isEmpty(partial.scope)) {
208
+ throw new Error(`Invalid input: scope required. Please set --enterprise-scope, --enviro, or --cabinet.`);
209
+ }
210
+ else if (!(Object.keys(codiac_relay_contracts_1.ScopeLevel)).includes(partial.scope)) {
211
+ throw new Error(`Invalid input: invalid scope level. Please set --enterprise-scope, --enviro, or --cabinet.`);
212
+ }
213
+ if (partial.scope == codiac_relay_contracts_1.ScopeLevel.enterprise) {
214
+ // This code should never get reached. Its just here for completeness.
215
+ if ((partial.target != undefined || _.isEmpty(partial.target)) && (partial.target != partial.enterprise))
216
+ throw new Error(`Invalid input: scope target for enterprise scope should match the enterprise.`);
217
+ }
218
+ else if (partial.target == undefined || _.isEmpty(partial.target)) {
219
+ throw new Error(`Invalid input: missing scope target. Please set --enterprise-scope, --enviro, or --cabinet.`);
220
+ }
221
+ else if ((0, config_ui_utils_1.findScopeTarget)(rootMap, partial.scope, partial.target) == undefined) {
222
+ throw new Error(`Invalid input: the given ${partial.scope} was not found.`);
223
+ }
224
+ if (partial.settings == undefined || partial.settings.length == 0)
225
+ throw new Error(`Invalid input: missing setting name/value.`);
226
+ // if (partial.setting == undefined || _.isEmpty(partial.setting)) throw new Error(`Invalid input: missing setting name.`)
227
+ if (partial.settings[0].value == undefined || _.isEmpty(partial.settings[0].value))
228
+ throw new Error(`Invalid input: missing setting value.`);
229
+ let output = Object.assign({ enterprise: partial.enterprise, asset: partial.asset, scope: (_a = partial.scope) !== null && _a !== void 0 ? _a : codiac_relay_contracts_1.ScopeLevel.enterprise, target: partial.target, targetFile: (partial.targetFile) ? partial.targetFile : `[${partial.configType}]`, settings: partial.settings,
230
+ // setting: partial.setting,
231
+ // value: partial.value,
232
+ description: partial.description }, this.createAuditable());
233
+ return output;
234
+ }
235
+ catch (err) {
236
+ throw err;
237
+ }
238
+ }
239
+ buildCandidate_interactively(partial, rootMap, takeDefaults = false) {
240
+ var _a;
241
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
242
+ let output;
243
+ try {
244
+ let partialConfigDef = {};
245
+ partialConfigDef.enterprise = partial.enterprise;
246
+ let enterprise = rootMap.enterprises.find(e => e.name == partial.enterprise);
247
+ if (enterprise == undefined)
248
+ throw new Error("Invalid enterprise"); // <--- here just for TS - shd never get hit (if it hit, itd be guaranteed to confuse the user).
249
+ let confirmed = false;
250
+ do {
251
+ // 1. Select Asset
252
+ let assetChanged;
253
+ [partialConfigDef.asset, assetChanged] = yield this.configUtils.promptForAsset(enterprise.assets, partial.asset);
254
+ // 2. Set Target File
255
+ // let selectedFile = (await this.promptForTargetFile(partial.enterprise, partialConfigDef.asset))!;
256
+ // partialConfigDef.targetFile = selectedFile.targetFile;
257
+ // partialConfigDef.settings = selectedFile.settings;
258
+ let typeFileChanged;
259
+ // let existingSettings: ScopedSetting[] | undefined;
260
+ [partial.configType, partialConfigDef.targetFile, partialConfigDef.settings, typeFileChanged] = yield this.configUtils.promptForTypeAndFile(partial.enterprise, partialConfigDef.asset, partial.configType, partial.targetFile, undefined, true, takeDefaults); // TakeDefaults will never apply bc we're allowing addNew (are these always mutally exclusive?)
261
+ // 3. Setting
262
+ let settingName;
263
+ let value;
264
+ let instances;
265
+ if (partial.settings != undefined && partial.settings.length > 0) {
266
+ settingName = partial.settings[0].setting;
267
+ value = partial.settings[0].value;
268
+ }
269
+ [settingName, instances] = yield this.configUtils.promptForOneSetting((_a = partialConfigDef.settings) !== null && _a !== void 0 ? _a : [], "write", settingName);
270
+ // 4. Scope
271
+ let targetChanged = false;
272
+ [partial.scope, partial.target, targetChanged] = yield this.configUtils.validateAndPromptForScope(rootMap, partialConfigDef.enterprise, partial.scope, partial.target, instances, false);
273
+ partial.scope = partial.scope; // assertion operator is ok here bc we disabled AllowEverywhere in the method above
274
+ partial.target = partial.target; // assertion operator is ok here bc we disabled AllowEverywhere in the method above
275
+ // 5. Value
276
+ value = yield this.promptForValue({ setting: settingName, value: value, scope: partial.scope, target: partial.target, enterprise: partial.enterprise }, instances, rootMap);
277
+ partial.settings = [{ setting: settingName, value: value }];
278
+ // 6. Confirm or loop back around to enterprise
279
+ confirmed = yield this._ui.promptConfirm("confirm", "Apply? ");
280
+ } while (!confirmed);
281
+ output = Object.assign({
282
+ // setting: partial.setting,
283
+ // value: partial.value,
284
+ settings: partial.settings, targetFile: partialConfigDef.targetFile, configType: partial.configType, asset: partialConfigDef.asset, enterprise: partialConfigDef.enterprise, scope: partial.scope, target: partial.target, description: partial.description }, this.createAuditable());
285
+ return output;
286
+ }
287
+ catch (err) {
288
+ throw err;
289
+ }
290
+ });
291
+ }
292
+ buildCommandString(ultimate, cmd) {
293
+ cmd.push("--enterprise", ultimate.enterprise);
294
+ cmd.push("-a", ultimate.asset);
295
+ if (ultimate.configType) {
296
+ cmd.push("-t", ultimate.configType);
297
+ }
298
+ else {
299
+ cmd.push("-f", ultimate.targetFile); // assertion is ok bc we forced one or the other just above ^.
300
+ }
301
+ if (ultimate.scope) {
302
+ if (ultimate.scope == codiac_relay_contracts_1.ScopeLevel.enterprise) {
303
+ cmd.push("--enterprise-scope");
304
+ }
305
+ else if (ultimate.target) {
306
+ if (ultimate.scope == codiac_relay_contracts_1.ScopeLevel.environment)
307
+ cmd.push("-e", ultimate.target);
308
+ if (ultimate.scope == codiac_relay_contracts_1.ScopeLevel.cabinet)
309
+ cmd.push("-c", ultimate.target);
310
+ }
311
+ }
312
+ // NOTE: We can't provide for multiple settings in the cli.
313
+ // Unless:
314
+ // a) we allow multple --setting args and use the --setting "key=value" syntax
315
+ // OR b) we send them back a command string that pipes the settings in
316
+ if (ultimate.settings && ultimate.settings.length > 0) {
317
+ // for (let setting of ultimate.settings) {
318
+ let setting = ultimate.settings[0];
319
+ if (ultimate.settings[0].setting)
320
+ cmd.push("--setting", setting.setting);
321
+ if (ultimate.settings[0].value)
322
+ cmd.push("--value", setting.value);
323
+ // }
324
+ }
325
+ return cmd;
326
+ }
327
+ // private async promptForAsset(assets: AtLeast<Asset, "name">[]): Promise<string> {
328
+ // try {
329
+ // let choices = assets.map(a => { return { name: a.name, value: a.name }; })
330
+ // let output = (await this._ui.promptSelect("asset", "Asset: ", choices))!;
331
+ // return output;
332
+ // } catch (err) {
333
+ // throw err;
334
+ // }
335
+ // }
336
+ promptForValue(setting, existingValues, rootMap) {
337
+ var _a;
338
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
339
+ // let existingValues = partialConfigDef.settings?.filter(s => s.setting === setting.setting);
340
+ let pedigree = this.buildPedigreeFor(setting, existingValues, rootMap);
341
+ let renderPedigree = (pedigree) => {
342
+ if (pedigree === null || pedigree === void 0 ? void 0 : pedigree.parent)
343
+ renderPedigree(pedigree.parent);
344
+ if (pedigree.value !== undefined) {
345
+ this._ui.userMessage(`[in ${pedigree.scope}: ${pedigree.target}] = ${(pedigree.value === "") ? "\"\"" : pedigree.value}`);
346
+ }
347
+ };
348
+ if (setting.description)
349
+ this._ui.userMessage(setting.description);
350
+ if (pedigree)
351
+ renderPedigree(pedigree);
352
+ let existing = existingValues === null || existingValues === void 0 ? void 0 : existingValues.find(s => s.scope === setting.scope && s.target === setting.target);
353
+ let output = yield this._ui.prompt("value", `Value in ${setting.scope} ${setting.target}: `, false, (_a = setting.value) !== null && _a !== void 0 ? _a : existing === null || existing === void 0 ? void 0 : existing.value);
354
+ return output;
355
+ });
356
+ }
357
+ /** Returns the recursive parent path of values for the given setting
358
+ * up through the enterprise scope.
359
+ * Returns undefined if the given setting is already scoped to enterprise.
360
+ *
361
+ * @param existingValues This MUST be filtered for this current setting (existing.setting == setting.setting).
362
+ * */
363
+ buildPedigreeFor(setting, existingValues, rootMap) {
364
+ try {
365
+ let pedigree;
366
+ if (setting.scope !== codiac_relay_contracts_1.ScopeLevel.enterprise) {
367
+ let ent = rootMap.enterprises.find(e => e.name === setting.enterprise);
368
+ if (ent == undefined) {
369
+ throw new Error(`No enterprise found named [${setting.enterprise}]`);
370
+ }
371
+ let entSetting = existingValues === null || existingValues === void 0 ? void 0 : existingValues.find(s => s.scope === codiac_relay_contracts_1.ScopeLevel.enterprise && s.target === ent.name);
372
+ let entPedigree = { scope: codiac_relay_contracts_1.ScopeLevel.enterprise, target: setting.enterprise };
373
+ if (entSetting === null || entSetting === void 0 ? void 0 : entSetting.value) {
374
+ entPedigree.value = entSetting.value;
375
+ }
376
+ if (setting.scope === codiac_relay_contracts_1.ScopeLevel.cabinet) {
377
+ let env = ent === null || ent === void 0 ? void 0 : ent.environments.find(e => e.cabinets.find(c => c.name === setting.target));
378
+ if (!env) {
379
+ throw new Error(`No environment found containing the cabinet [${setting.target}]`);
380
+ }
381
+ pedigree = { scope: codiac_relay_contracts_1.ScopeLevel.environment, target: env.name, parent: entPedigree };
382
+ let envSetting = existingValues === null || existingValues === void 0 ? void 0 : existingValues.find(s => s.scope === codiac_relay_contracts_1.ScopeLevel.environment && s.target === (env === null || env === void 0 ? void 0 : env.name));
383
+ if (envSetting) {
384
+ pedigree.value = envSetting.value;
385
+ }
386
+ }
387
+ else if (setting.scope === codiac_relay_contracts_1.ScopeLevel.environment) {
388
+ pedigree = entPedigree;
389
+ }
390
+ }
391
+ return pedigree;
392
+ }
393
+ catch (err) {
394
+ throw err;
395
+ }
396
+ }
397
+ promptForScope(enterprise, rootMap, existings) {
398
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
399
+ try {
400
+ let output;
401
+ // render cab tree with all lines selectable
402
+ let cabTree = this.buildCabinetTree(rootMap, existings);
403
+ let choices = this.buildSelectChoicesFrom(cabTree);
404
+ let delimited = (yield this._ui.promptSelect("scope", "Apply to: ", choices, undefined, false));
405
+ let parts = delimited.split("|");
406
+ output = { scope: parts[0], target: parts[1] };
407
+ return output;
408
+ }
409
+ catch (err) {
410
+ throw (err);
411
+ }
412
+ });
413
+ }
414
+ buildSelectChoicesFrom(tree) {
415
+ try {
416
+ let choices = [];
417
+ // the value is no good here - need scope and target both available
418
+ render.renderStringTree(tree, (txt, item) => choices.push({ name: txt, value: item.value }));
419
+ // // This is one way to do it
420
+ // for (let item of tree) {
421
+ //
422
+ // let thisChoice: PromptChoice = { name: item.text, value: item.text };
423
+ // choices.push(thisChoice);
424
+ //
425
+ // if (item.children && item.children.length > 0) {
426
+ // let children = this.buildSelectChoicesFrom(item.children);
427
+ // choices.push(...children);
428
+ // }
429
+ // }
430
+ return choices;
431
+ }
432
+ catch (err) {
433
+ throw err;
434
+ }
435
+ }
436
+ /** sets each value to "scope|target".
437
+ *
438
+ * This is MOSTLY a COPY-PASTE from the CabinetList command!!! This view is prob gonna be pretty common - consider promoting it to a shared utility. */
439
+ buildCabinetTree(rootMap, existings) {
440
+ var _a, _b, _c, _d;
441
+ let tree = [];
442
+ for (let ent of rootMap.enterprises) {
443
+ let entBranch = { text: `${ent.name} enterprise:`, value: `${codiac_relay_contracts_1.ScopeLevel.enterprise}|${ent.name}` };
444
+ let entSetting = existings === null || existings === void 0 ? void 0 : existings.find(s => s.scope === codiac_relay_contracts_1.ScopeLevel.enterprise && s.target === ent.name);
445
+ if (entSetting !== undefined) {
446
+ let valueSuffix = this.ellipsis(35, (_a = entSetting.value) !== null && _a !== void 0 ? _a : "[set to undefined]");
447
+ valueSuffix = `(${valueSuffix})`;
448
+ entBranch.text = entBranch.text.concat(" ", this._styler.dim(valueSuffix));
449
+ }
450
+ for (let env of _.sortBy(ent.environments, e => e.sequence, e => e.name)) {
451
+ let envBranch = { text: `${env.name}`, value: `${codiac_relay_contracts_1.ScopeLevel.environment}|${env.name}` };
452
+ let envSetting = existings === null || existings === void 0 ? void 0 : existings.find(s => s.scope === codiac_relay_contracts_1.ScopeLevel.environment && s.target === env.name);
453
+ if (envSetting !== undefined) {
454
+ let valueSuffix = this.ellipsis(35, (_b = envSetting.value) !== null && _b !== void 0 ? _b : "[set to undefined]");
455
+ valueSuffix = `(${valueSuffix})`;
456
+ envBranch.text = envBranch.text.concat(" ", this._styler.dim(valueSuffix));
457
+ }
458
+ for (let cab of env.cabinets) {
459
+ // let cwg = rootMap.clusters.find(c => c.name === cab.cluster);
460
+ // let clusterDesc = cwg ? ` (${cab.cluster}, ${cwg.provider} ${cwg.locationName})` : "";
461
+ let cabBranch = {
462
+ text: `${cab.name}`,
463
+ value: `${codiac_relay_contracts_1.ScopeLevel.cabinet}|${cab.name}`
464
+ };
465
+ let cabSetting = existings === null || existings === void 0 ? void 0 : existings.find(s => s.scope === codiac_relay_contracts_1.ScopeLevel.cabinet && s.target === cab.name);
466
+ if (cabSetting !== undefined) {
467
+ let valueSuffix = this.ellipsis(35, (_c = cabSetting.value) !== null && _c !== void 0 ? _c : "[set to undefined]");
468
+ valueSuffix = `(${valueSuffix})`;
469
+ cabBranch.text = cabBranch.text.concat(" ", this._styler.dim(valueSuffix));
470
+ }
471
+ if (envBranch.children === undefined)
472
+ envBranch.children = [];
473
+ (_d = envBranch.children) === null || _d === void 0 ? void 0 : _d.push(cabBranch);
474
+ }
475
+ if (entBranch.children === undefined)
476
+ entBranch.children = [];
477
+ entBranch.children.push(envBranch);
478
+ }
479
+ tree.push(entBranch);
480
+ }
481
+ return tree;
482
+ }
483
+ /** Truncates the string to the given length with an ellipses as suffix */
484
+ ellipsis(maxLength, value) {
485
+ let output = value;
486
+ if (output.length > maxLength) {
487
+ let ellipsis = "..."; // Rather use the ellipsis character but String.fromCharCode(133) is returning a problematic character.
488
+ output = output.slice(0, maxLength - 1 - ellipsis.length).concat(ellipsis);
489
+ }
490
+ return output;
491
+ }
492
+ /** Copy of this method is in config:view */
493
+ promptForTargetFile(enterprise, asset) {
494
+ var _a, _b;
495
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
496
+ try {
497
+ let crit = {
498
+ asset: asset,
499
+ enterprise: enterprise,
500
+ type: contracts_1.ConfigDefTypesEnum.file
501
+ };
502
+ let cfgResult = yield this._codiacApi.Call.getConfigDefs(crit, { projection: { pathsExcluded: [], pathsIncluded: ["settings", "targetFile", "format"] } });
503
+ if (cfgResult.error)
504
+ throw cfgResult.error;
505
+ let configs = (_a = cfgResult.output) !== null && _a !== void 0 ? _a : [];
506
+ let choices = configs.map(c => { return { name: c.targetFile, value: c.targetFile }; });
507
+ choices.push({ name: CodiacConstants.CliConstants.CHOICE_VALUE_FOR_NEW, value: CodiacConstants.CliConstants.CHOICE_VALUE_FOR_NEW });
508
+ let output; // Pick<ConfigDef, "targetFile" | "settings">;
509
+ let settingsInLocalFile;
510
+ let selected = (yield this._ui.promptSelect("fileExisting", "File: ", choices));
511
+ if (selected === CodiacConstants.CliConstants.CHOICE_VALUE_FOR_NEW) {
512
+ selected = (yield this._ui.prompt("filefreehand", "Path from image root: ('?' to browse): "));
513
+ if (selected === "?") {
514
+ let localPath = (yield this._ui.promptSelectFile("filebrowse", "Select file: ", { asRelative: true }));
515
+ settingsInLocalFile = yield this.extractSettingsFromFile(localPath);
516
+ let filename = path.basename(localPath);
517
+ let pathInImage = path.dirname(localPath);
518
+ this._ui.userMessage(`Target file: ${this._styler.hilite(filename)}`);
519
+ pathInImage = (yield this._ui.prompt("pathinimage", "Path from image root: ", true, pathInImage));
520
+ selected = path.posix.join(pathInImage, filename);
521
+ }
522
+ else {
523
+ // the user free-handed the targetFile field
524
+ // this._ui.userMessage(`Target file: ${this._styler.hilite(selected)}`);
525
+ }
526
+ }
527
+ output = {
528
+ targetFile: selected,
529
+ settings: (_b = configs.find(c => c.targetFile === selected)) === null || _b === void 0 ? void 0 : _b.settings, // in case it matches a config we pulled down
530
+ };
531
+ return output;
532
+ }
533
+ catch (err) {
534
+ throw err;
535
+ }
536
+ });
537
+ }
538
+ extractSettingsFromFile(relativeFilePath) {
539
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
540
+ try {
541
+ let output = [];
542
+ // gotta determmine the file format and parse it.
543
+ // This logic prob needs to come from the domain or from the relay.
544
+ /** let format = getDefaultDataFormat(localPath);
545
+ * let extracted: Object | undefined;
546
+ * do {
547
+ * try {
548
+ * format = format ?? (await this.promptForFormat());
549
+ * extracted = tryDeserialize(file, format);
550
+ * } catch(err) {
551
+ * this._ui.UserMessage(`Error parsing as ${format}: ${err.message ?? ""}`);
552
+ * format = undefined;
553
+ * }
554
+ * } while (!extracted);
555
+ *
556
+ * output = this.convertToStringParents(extracted);
557
+ */
558
+ return output;
559
+ }
560
+ catch (err) {
561
+ throw err;
562
+ }
563
+ });
564
+ }
565
+ // async writeSetting_Api(enterprise: string, assetName: string, configName: string, setting: string, scopeLevel: ScopeLevel, scopeName: string, val: any): Promise<void> {
566
+ // try {
567
+ // let settingObj: ScopedSetting = {
568
+ // setting: setting,
569
+ // value: val,
570
+ // targetFile: configName,
571
+ // asset: assetName,
572
+ // enterprise: enterprise,
573
+ // scope: scopeLevel,
574
+ // target: scopeName,
575
+ // ...this.createAuditable()
576
+ // };
577
+ // return this.upsertSetting(settingObj);
578
+ // } catch (err) {
579
+ // throw err;
580
+ // }
581
+ // }
582
+ executeTask(candidate) {
583
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
584
+ // TODO: Do this in a single batch call
585
+ for (let setting of candidate.settings) {
586
+ if (this.configUtils.isSourced(setting.value)) {
587
+ this.configUtils.deserializeSourcedValue(setting);
588
+ }
589
+ let ultimate = Object.assign(Object.assign({}, _.omit(candidate, "settings")), setting);
590
+ if (ultimate.configType) {
591
+ ultimate.targetFile = `[${ultimate.configType}]`;
592
+ delete ultimate.configType;
593
+ }
594
+ yield this.upsertSetting(ultimate); // casting here bc TS isnt recognizing that we've defined the targetFile property.
595
+ }
596
+ });
597
+ }
598
+ upsertSetting(settingObj) {
599
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
600
+ return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
601
+ try {
602
+ let crit = {
603
+ enterprise: settingObj.enterprise,
604
+ asset: settingObj.asset,
605
+ targetFile: settingObj.targetFile,
606
+ scope: settingObj.scope,
607
+ target: settingObj.target,
608
+ setting: settingObj.setting
609
+ };
610
+ // TODO: Replace this with an upsert based on: enterprise, asset, configName, scopeLevel, scopeName, and setting
611
+ let check = yield this._codiacApi.ScopedSetting.tryReadMany(crit);
612
+ let resultSetting;
613
+ if (check.success && check.output && check.output.length > 0) {
614
+ settingObj.id = check.output[0].id;
615
+ resultSetting = yield this._codiacApi.ScopedSetting.tryUpdate(settingObj);
616
+ }
617
+ else {
618
+ resultSetting = yield this._codiacApi.ScopedSetting.tryCreate(settingObj);
619
+ }
620
+ if (resultSetting.success) {
621
+ this.logger.notice(`Successfully saved setting [${settingObj.setting}] for ${settingObj.scope} [${settingObj.target}] in ${settingObj.enterprise}/${settingObj.asset} config [${settingObj.targetFile}]`);
622
+ this._ui.userMessage(`Successfully saved setting [${settingObj.setting}] for ${settingObj.scope} [${settingObj.target}] in ${settingObj.enterprise}/${settingObj.asset} config [${settingObj.targetFile}]`);
623
+ }
624
+ else if (resultSetting.error) {
625
+ this.logger.error(`Error saving setting [${settingObj.setting}]: ${resultSetting.message || ""}; ${resultSetting.error.message || resultSetting.error.stack}; For ${settingObj.scope} [${settingObj.target}] in ${settingObj.enterprise}/${settingObj.asset} config [${settingObj.targetFile}]`);
626
+ this._ui.userMessage(`Error saving setting [${settingObj.setting}]: ${resultSetting.message || ""}; ${resultSetting.error.message || resultSetting.error.stack}; For ${settingObj.scope} [${settingObj.target}] in ${settingObj.enterprise}/${settingObj.asset} config [${settingObj.targetFile}]`);
627
+ }
628
+ else {
629
+ this.logger.warn(`Failed without error to save setting [${settingObj.setting}]: ${resultSetting.message || ""}; For ${settingObj.scope} [${settingObj.target}] in ${settingObj.enterprise}/${settingObj.asset} config [${settingObj.targetFile}]`);
630
+ this._ui.userMessage(`Failed without error to save setting [${settingObj.setting}]: ${resultSetting.message || ""}; For ${settingObj.scope} [${settingObj.target}] in ${settingObj.enterprise}/${settingObj.asset} config [${settingObj.targetFile}]`);
631
+ }
632
+ resolve();
633
+ }
634
+ catch (err) {
635
+ reject(err);
636
+ }
637
+ }));
638
+ });
639
+ }
640
+ writeSetting_local(setting, value) {
641
+ // Write the available setting
642
+ if (!this._appConfig) {
643
+ this._appConfig = {};
644
+ }
645
+ _.set(this._appConfig, setting, value);
646
+ // this._appConfig[setting] = val.settingValue;
647
+ this._ops.writeConfig(this._appConfig);
648
+ }
649
+ /** Retrieves the list of app config settings that are not yet explicitly declared in the app config file itself */
650
+ getAvailableSettings() {
651
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
652
+ let avails = this._ops.loadConfigKeys(this.config.root);
653
+ let unset = avails;
654
+ // Remove any settings already explicitly called from the app-config.
655
+ if (this._appConfig) {
656
+ let keys = _.keys(this._appConfig);
657
+ unset = _.pull(avails, ...keys);
658
+ }
659
+ return unset;
660
+ });
661
+ }
662
+ }
663
+ exports.default = ConfigAdd;
664
+ ConfigAdd.description = 'Adds a key value pair to the app config';
665
+ ConfigAdd.aliases = ['config:set', 'cfg:add'];
666
+ ConfigAdd.flags = {
667
+ help: core_1.Flags.help({ char: 'h' }),
668
+ enterprise: core_1.Flags.string({ char: 'n', description: '(required only when more than one enterprise exists) The name of the enterprise containing the asset.' }),
669
+ asset: core_1.Flags.string({ char: 'a', description: 'The name of the asset to which the settings belong.' }),
670
+ file: core_1.Flags.string({ char: 'f', description: 'The path-name to the file to which the settings are written, relative to the root of the Codiac project.' }),
671
+ type: core_1.Flags.string({ char: 't', exclusive: ["file"], options: Object.keys(config_ui_utils_1.SpecialConfigTypes), description: 'Filters for the settings types that do not land in a config file (such as... env: OS environment variables, footprint: container footprint specs, and helm: helm chart settings).' }),
672
+ "enterprise-scope": core_1.Flags.boolean({ char: 's', exclusive: ["enviro", "cabinet"], description: 'Filters for settings scoped at the enterprise level.' }),
673
+ enviro: core_1.Flags.string({ char: 'e', exclusive: ["enterprise-scope", "cabinet"], description: 'The name of the environment to which this value is to apply.' }),
674
+ cabinet: core_1.Flags.string({ char: 'c', exclusive: ["enterprise-scope", "enviro"], description: 'The name of the cabinet to which this value is to apply.' }),
675
+ setting: core_1.Flags.string({ required: false, description: "The config key (in dotpath/JSONPath), relative to the root of the config." }),
676
+ value: core_1.Flags.string({ required: false, description: "The actual concrete data to be applied as the setting value." }),
677
+ silent: core_1.Flags.boolean({ exclusive: ["echo", "to-script"], description: 'Non-Interactive mode; executes without any user interaction and fails on any missing or invalid arguments.' }),
678
+ echo: core_1.Flags.boolean({ exclusive: ["to-script", "silent"], description: 'Echo interaction mode; renders the equivalent non-interactive cli command for future use before final execution.' }),
679
+ "to-script": core_1.Flags.boolean({ exclusive: ["echo", "silent"], description: 'Toscript interaction mode; renders the equivalent non-interactive cli command WITHOUT any execution.' }),
680
+ "take-defaults": core_1.Flags.boolean({ exclusive: ["silent"], description: "Setting this to true prevents prompting for confirmation on parameters that were passed in or were automatically set to default values (Irrelevant in --silent mode). This behavior does NOT apply to scenarios that the command needs to override invalid user input; such cases will always prompt for confirmation. eg: when no argument was provided for file or type, and only one exists, the system will render the autoselected file unless this flag is set." })
681
+ };
682
+ ConfigAdd.args = {
683
+ // setting: Args.string({ description: 'The key for the config setting to add' })
684
+ };
560
685
  //# sourceMappingURL=add.js.map