@codiac.io/codiac-cli 1.2.202 → 1.2.203

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 (532) hide show
  1. package/README.md +4636 -4696
  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/dist/apis/codiac-api/common/api-client-base.d.ts +165 -165
  7. package/dist/apis/codiac-api/common/api-client-base.js +547 -547
  8. package/dist/apis/codiac-api/common/api-client-base.js.map +1 -1
  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/api-user-creds.js.map +1 -1
  12. package/dist/apis/codiac-api/common/config-loader.d.ts +6 -6
  13. package/dist/apis/codiac-api/common/config-loader.js +18 -18
  14. package/dist/apis/codiac-api/common/endpoint-spec.d.ts +17 -17
  15. package/dist/apis/codiac-api/common/endpoint-spec.js +27 -27
  16. package/dist/apis/codiac-api/common/security/api-auth-methods-legacy.d.ts +87 -87
  17. package/dist/apis/codiac-api/common/security/api-auth-methods-legacy.js +367 -367
  18. package/dist/apis/codiac-api/common/security/api-auth-methods-legacy.js.map +1 -1
  19. package/dist/apis/codiac-api/common/security/auth-constants.d.ts +15 -15
  20. package/dist/apis/codiac-api/common/security/auth-constants.js +21 -21
  21. package/dist/apis/codiac-api/common/security/i-auth-client.d.ts +44 -44
  22. package/dist/apis/codiac-api/common/security/i-auth-client.js +2 -2
  23. package/dist/apis/codiac-api/common/security/token-holder.d.ts +13 -13
  24. package/dist/apis/codiac-api/common/security/token-holder.js +17 -17
  25. package/dist/apis/codiac-api/common/utils.d.ts +23 -23
  26. package/dist/apis/codiac-api/common/utils.js +82 -82
  27. package/dist/apis/codiac-api/contracts/index.d.ts +1 -1
  28. package/dist/apis/codiac-api/contracts/index.js +4 -4
  29. package/dist/apis/codiac-api/gen/client-config.d.ts +10 -10
  30. package/dist/apis/codiac-api/gen/client-config.js +28 -28
  31. package/dist/apis/codiac-api/gen/client-config.js.map +1 -1
  32. package/dist/apis/codiac-api/gen/client.d.ts +1663 -1663
  33. package/dist/apis/codiac-api/gen/client.js +15629 -15629
  34. package/dist/apis/codiac-api/gen/client.js.map +1 -1
  35. package/dist/apis/codiac-api/gen/contracts.d.ts +2722 -2722
  36. package/dist/apis/codiac-api/gen/contracts.js +402 -402
  37. package/dist/apis/codiac-api/index.d.ts +3 -3
  38. package/dist/apis/codiac-api/index.js +8 -8
  39. package/dist/apis/codiac-relay/common/api-client-base.d.ts +165 -165
  40. package/dist/apis/codiac-relay/common/api-client-base.js +547 -547
  41. package/dist/apis/codiac-relay/common/api-client-base.js.map +1 -1
  42. package/dist/apis/codiac-relay/common/api-user-creds.d.ts +7 -7
  43. package/dist/apis/codiac-relay/common/api-user-creds.js +18 -18
  44. package/dist/apis/codiac-relay/common/api-user-creds.js.map +1 -1
  45. package/dist/apis/codiac-relay/common/config-loader.d.ts +6 -6
  46. package/dist/apis/codiac-relay/common/config-loader.js +18 -18
  47. package/dist/apis/codiac-relay/common/endpoint-spec.d.ts +17 -17
  48. package/dist/apis/codiac-relay/common/endpoint-spec.js +27 -27
  49. package/dist/apis/codiac-relay/common/security/api-auth-methods-legacy.d.ts +87 -87
  50. package/dist/apis/codiac-relay/common/security/api-auth-methods-legacy.js +367 -367
  51. package/dist/apis/codiac-relay/common/security/api-auth-methods-legacy.js.map +1 -1
  52. package/dist/apis/codiac-relay/common/security/auth-constants.d.ts +15 -15
  53. package/dist/apis/codiac-relay/common/security/auth-constants.js +21 -21
  54. package/dist/apis/codiac-relay/common/security/i-auth-client.d.ts +44 -44
  55. package/dist/apis/codiac-relay/common/security/i-auth-client.js +2 -2
  56. package/dist/apis/codiac-relay/common/security/token-holder.d.ts +13 -13
  57. package/dist/apis/codiac-relay/common/security/token-holder.js +17 -17
  58. package/dist/apis/codiac-relay/common/utils.d.ts +23 -23
  59. package/dist/apis/codiac-relay/common/utils.js +82 -82
  60. package/dist/apis/codiac-relay/contracts/index.d.ts +1 -1
  61. package/dist/apis/codiac-relay/contracts/index.js +4 -4
  62. package/dist/apis/codiac-relay/gen/client-config.d.ts +10 -10
  63. package/dist/apis/codiac-relay/gen/client-config.js +28 -28
  64. package/dist/apis/codiac-relay/gen/client-config.js.map +1 -1
  65. package/dist/apis/codiac-relay/gen/client.d.ts +244 -244
  66. package/dist/apis/codiac-relay/gen/client.js +1862 -1862
  67. package/dist/apis/codiac-relay/gen/client.js.map +1 -1
  68. package/dist/apis/codiac-relay/gen/contracts.d.ts +3111 -3111
  69. package/dist/apis/codiac-relay/gen/contracts.js +434 -434
  70. package/dist/apis/codiac-relay/index.d.ts +3 -3
  71. package/dist/apis/codiac-relay/index.js +8 -8
  72. package/dist/cli-common/ImagesList.js +66 -66
  73. package/dist/cli-common/argument-manager.d.ts +28 -28
  74. package/dist/cli-common/argument-manager.js +194 -194
  75. package/dist/cli-common/built-in-cli-user-input.d.ts +18 -18
  76. package/dist/cli-common/built-in-cli-user-input.js +309 -309
  77. package/dist/cli-common/built-in-cli-user-input.js.map +1 -1
  78. package/dist/cli-common/cli-interfaces.js +6 -6
  79. package/dist/cli-common/command-base.d.ts +72 -72
  80. package/dist/cli-common/command-base.js +181 -181
  81. package/dist/cli-common/entities/index.d.ts +1 -1
  82. package/dist/cli-common/entities/index.js +4 -4
  83. package/dist/cli-common/entities/prompt-choice.d.ts +7 -7
  84. package/dist/cli-common/entities/prompt-choice.js +2 -2
  85. package/dist/cli-common/file-selector.d.ts +48 -48
  86. package/dist/cli-common/file-selector.js +186 -186
  87. package/dist/cli-common/i-user-input-provider.js +18 -18
  88. package/dist/cli-common/index.d.ts +4 -4
  89. package/dist/cli-common/index.js +10 -10
  90. package/dist/cli-common/mock-ui.d.ts +27 -27
  91. package/dist/cli-common/mock-ui.js +82 -82
  92. package/dist/cli-common/prompt-select-fuzzy.d.ts +19 -19
  93. package/dist/cli-common/prompt-select-fuzzy.js +118 -118
  94. package/dist/cli-common/prompt-select-fuzzy.js.map +1 -1
  95. package/dist/cli-common/tenant-contextualizer.js +435 -435
  96. package/dist/cli-common/test/tenant-contextualizer.spec.js +142 -142
  97. package/dist/cli-entities/output-format-enum.d.ts +7 -7
  98. package/dist/cli-entities/output-format-enum.js +11 -11
  99. package/dist/cli-entities/prompt-choice.js +5 -5
  100. package/dist/codiac-constants.d.ts +35 -35
  101. package/dist/codiac-constants.js +40 -40
  102. package/dist/codiac-entities/asset-binding.d.ts +12 -12
  103. package/dist/codiac-entities/asset-binding.js +17 -17
  104. package/dist/codiac-entities/azure-container-registry.d.ts +4 -4
  105. package/dist/codiac-entities/azure-container-registry.js +2 -2
  106. package/dist/codiac-entities/azure-service-principal.d.ts +23 -23
  107. package/dist/codiac-entities/azure-service-principal.js +23 -23
  108. package/dist/codiac-entities/cloud-account-ref.d.ts +28 -28
  109. package/dist/codiac-entities/cloud-account-ref.js +36 -36
  110. package/dist/codiac-entities/deployment-temp.js +132 -132
  111. package/dist/codiac-entities/i-cloud-account-ref.d.ts +5 -5
  112. package/dist/codiac-entities/i-cloud-account-ref.js +2 -2
  113. package/dist/command-base-enterprise.d.ts +121 -121
  114. package/dist/command-base-enterprise.js +523 -523
  115. package/dist/command-base-tenantless.d.ts +44 -44
  116. package/dist/command-base-tenantless.js +179 -179
  117. package/dist/commands/asset/create.d.ts +42 -42
  118. package/dist/commands/asset/create.js +466 -466
  119. package/dist/commands/asset/destroy.d.ts +20 -20
  120. package/dist/commands/asset/destroy.js +128 -128
  121. package/dist/commands/asset/helm.d.ts +23 -23
  122. package/dist/commands/asset/helm.js +152 -152
  123. package/dist/commands/asset/list.d.ts +28 -28
  124. package/dist/commands/asset/list.js +171 -171
  125. package/dist/commands/asset/probe/create.d.ts +38 -38
  126. package/dist/commands/asset/probe/create.js +186 -186
  127. package/dist/commands/asset/recycle.d.ts +23 -23
  128. package/dist/commands/asset/recycle.js +174 -174
  129. package/dist/commands/asset/view.d.ts +188 -188
  130. package/dist/commands/asset/view.js +1364 -1364
  131. package/dist/commands/asset/volume/create.d.ts +23 -23
  132. package/dist/commands/asset/volume/create.js +175 -175
  133. package/dist/commands/asset/volume/delete.d.ts +19 -19
  134. package/dist/commands/asset/volume/delete.js +111 -111
  135. package/dist/commands/asset/volume/list.d.ts +19 -19
  136. package/dist/commands/asset/volume/list.js +69 -69
  137. package/dist/commands/branch/current.d.ts +10 -10
  138. package/dist/commands/branch/current.js +33 -33
  139. package/dist/commands/branch/list.d.ts +15 -15
  140. package/dist/commands/branch/list.js +55 -55
  141. package/dist/commands/branch.d.ts +12 -12
  142. package/dist/commands/branch.js +41 -41
  143. package/dist/commands/build.d.ts +38 -38
  144. package/dist/commands/build.js +119 -119
  145. package/dist/commands/cabinet/create.d.ts +21 -21
  146. package/dist/commands/cabinet/create.js +107 -107
  147. package/dist/commands/cabinet/list.d.ts +23 -23
  148. package/dist/commands/cabinet/list.js +133 -133
  149. package/dist/commands/cabinet/obliterate.d.ts +20 -20
  150. package/dist/commands/cabinet/obliterate.js +82 -82
  151. package/dist/commands/cli.d.ts +10 -10
  152. package/dist/commands/cli.js +99 -99
  153. package/dist/commands/commit.d.ts +11 -11
  154. package/dist/commands/commit.js +39 -39
  155. package/dist/commands/config/add.d.ts +78 -78
  156. package/dist/commands/config/add.js +559 -559
  157. package/dist/commands/config/delete.d.ts +18 -18
  158. package/dist/commands/config/delete.js +118 -118
  159. package/dist/commands/config/deploy.d.ts +22 -22
  160. package/dist/commands/config/deploy.js +124 -124
  161. package/dist/commands/config/import.d.ts +27 -27
  162. package/dist/commands/config/import.js +195 -195
  163. package/dist/commands/config/view.d.ts +25 -25
  164. package/dist/commands/config/view.js +120 -120
  165. package/dist/commands/csp/login.d.ts +18 -18
  166. package/dist/commands/csp/login.js +122 -122
  167. package/dist/commands/csp/logout.d.ts +15 -15
  168. package/dist/commands/csp/logout.js +73 -73
  169. package/dist/commands/dep/create.d.ts +13 -13
  170. package/dist/commands/dep/create.js +40 -40
  171. package/dist/commands/dep/install.d.ts +9 -9
  172. package/dist/commands/dep/install.js +29 -29
  173. package/dist/commands/dep/list.d.ts +55 -55
  174. package/dist/commands/dep/list.js +97 -97
  175. package/dist/commands/dep/remove.d.ts +12 -12
  176. package/dist/commands/dep/remove.js +61 -61
  177. package/dist/commands/dep/source.d.ts +13 -13
  178. package/dist/commands/dep/source.js +82 -82
  179. package/dist/commands/dep/syncup.d.ts +11 -11
  180. package/dist/commands/dep/syncup.js +53 -53
  181. package/dist/commands/dep/unsource.d.ts +14 -14
  182. package/dist/commands/dep/unsource.js +67 -67
  183. package/dist/commands/dep/upgrade.d.ts +44 -44
  184. package/dist/commands/dep/upgrade.js +243 -243
  185. package/dist/commands/dep.d.ts +12 -12
  186. package/dist/commands/dep.js +50 -50
  187. package/dist/commands/deploy.d.ts +38 -38
  188. package/dist/commands/deploy.js +385 -385
  189. package/dist/commands/enterprise/create.d.ts +20 -20
  190. package/dist/commands/enterprise/create.js +97 -97
  191. package/dist/commands/enterprise/list.d.ts +14 -14
  192. package/dist/commands/enterprise/list.js +83 -83
  193. package/dist/commands/env/add.d.ts +22 -22
  194. package/dist/commands/env/add.js +199 -199
  195. package/dist/commands/environment/create.d.ts +19 -19
  196. package/dist/commands/environment/create.js +88 -88
  197. package/dist/commands/environment/list.d.ts +25 -25
  198. package/dist/commands/environment/list.js +157 -157
  199. package/dist/commands/filestore/capture.d.ts +31 -31
  200. package/dist/commands/filestore/capture.js +341 -341
  201. package/dist/commands/host/map.d.ts +33 -33
  202. package/dist/commands/host/map.js +346 -346
  203. package/dist/commands/identity/delete.d.ts +15 -15
  204. package/dist/commands/identity/delete.js +82 -82
  205. package/dist/commands/identity/list.d.ts +11 -11
  206. package/dist/commands/identity/list.js +42 -42
  207. package/dist/commands/identity.d.ts +22 -22
  208. package/dist/commands/identity.js +76 -76
  209. package/dist/commands/imageRegistry/capture.d.ts +27 -27
  210. package/dist/commands/imageRegistry/capture.js +159 -159
  211. package/dist/commands/imageRegistry/forget.d.ts +23 -23
  212. package/dist/commands/imageRegistry/forget.js +160 -160
  213. package/dist/commands/imageRegistry/pullSecret/set.d.ts +27 -27
  214. package/dist/commands/imageRegistry/pullSecret/set.js +299 -299
  215. package/dist/commands/imageRegistry/pullSecret/unset.d.ts +24 -24
  216. package/dist/commands/imageRegistry/pullSecret/unset.js +242 -242
  217. package/dist/commands/images/add.d.ts +25 -25
  218. package/dist/commands/images/add.js +75 -75
  219. package/dist/commands/images/list.d.ts +14 -14
  220. package/dist/commands/images/list.js +71 -71
  221. package/dist/commands/images/patch.d.ts +14 -14
  222. package/dist/commands/images/patch.js +92 -92
  223. package/dist/commands/images/remove.d.ts +12 -12
  224. package/dist/commands/images/remove.js +37 -37
  225. package/dist/commands/images/version/bump.d.ts +18 -18
  226. package/dist/commands/images/version/bump.js +60 -60
  227. package/dist/commands/images/version.d.ts +16 -16
  228. package/dist/commands/images/version.js +64 -64
  229. package/dist/commands/init.d.ts +17 -17
  230. package/dist/commands/init.js +130 -130
  231. package/dist/commands/kit/create.d.ts +25 -25
  232. package/dist/commands/kit/create.js +141 -141
  233. package/dist/commands/login.d.ts +22 -22
  234. package/dist/commands/login.js +92 -92
  235. package/dist/commands/logout.d.ts +8 -8
  236. package/dist/commands/logout.js +36 -36
  237. package/dist/commands/merge.d.ts +12 -12
  238. package/dist/commands/merge.js +42 -42
  239. package/dist/commands/noc/cluster/create.d.ts +28 -28
  240. package/dist/commands/noc/cluster/create.js +132 -132
  241. package/dist/commands/noc/cluster/deinit.d.ts +17 -17
  242. package/dist/commands/noc/cluster/deinit.js +116 -116
  243. package/dist/commands/noc/cluster/destroy.d.ts +20 -20
  244. package/dist/commands/noc/cluster/destroy.js +137 -137
  245. package/dist/commands/noc/cluster/forget.d.ts +16 -16
  246. package/dist/commands/noc/cluster/forget.js +136 -136
  247. package/dist/commands/noc/cluster/grant.d.ts +24 -24
  248. package/dist/commands/noc/cluster/grant.js +159 -159
  249. package/dist/commands/noc/cluster/init.d.ts +17 -17
  250. package/dist/commands/noc/cluster/init.js +116 -116
  251. package/dist/commands/noc/cluster/list.d.ts +21 -21
  252. package/dist/commands/noc/cluster/list.js +83 -83
  253. package/dist/commands/noc/cluster/recreate.d.ts +28 -28
  254. package/dist/commands/noc/cluster/recreate.js +185 -185
  255. package/dist/commands/pkg/add.d.ts +15 -15
  256. package/dist/commands/pkg/add.js +42 -42
  257. package/dist/commands/pkg/list.d.ts +9 -9
  258. package/dist/commands/pkg/list.js +32 -32
  259. package/dist/commands/pkg/patch.d.ts +13 -13
  260. package/dist/commands/pkg/patch.js +78 -78
  261. package/dist/commands/pkg/remove.d.ts +12 -12
  262. package/dist/commands/pkg/remove.js +69 -69
  263. package/dist/commands/portal.d.ts +11 -11
  264. package/dist/commands/portal.js +81 -81
  265. package/dist/commands/publish.d.ts +21 -21
  266. package/dist/commands/publish.js +51 -51
  267. package/dist/commands/pull.d.ts +13 -13
  268. package/dist/commands/pull.js +29 -29
  269. package/dist/commands/push.d.ts +13 -13
  270. package/dist/commands/push.js +29 -29
  271. package/dist/commands/run.d.ts +35 -35
  272. package/dist/commands/run.js +193 -193
  273. package/dist/commands/secretStore/capture.d.ts +27 -27
  274. package/dist/commands/secretStore/capture.js +174 -174
  275. package/dist/commands/secretStore/forget.d.ts +20 -20
  276. package/dist/commands/secretStore/forget.js +146 -146
  277. package/dist/commands/stage.d.ts +13 -13
  278. package/dist/commands/stage.js +64 -64
  279. package/dist/commands/stash.d.ts +13 -13
  280. package/dist/commands/stash.js +30 -30
  281. package/dist/commands/status.d.ts +12 -12
  282. package/dist/commands/status.js +48 -48
  283. package/dist/commands/stop.d.ts +10 -10
  284. package/dist/commands/stop.js +51 -51
  285. package/dist/commands/switch.d.ts +11 -11
  286. package/dist/commands/switch.js +41 -41
  287. package/dist/commands/sync.d.ts +14 -14
  288. package/dist/commands/sync.js +20 -20
  289. package/dist/commands/tenant/create.d.ts +27 -27
  290. package/dist/commands/tenant/create.js +119 -119
  291. package/dist/commands/tenant/switch.d.ts +24 -24
  292. package/dist/commands/tenant/switch.js +108 -108
  293. package/dist/commands/unstage.d.ts +12 -12
  294. package/dist/commands/unstage.js +57 -57
  295. package/dist/commands/whereami.d.ts +15 -15
  296. package/dist/commands/whereami.js +122 -122
  297. package/dist/commands/whoami.d.ts +8 -8
  298. package/dist/commands/whoami.js +39 -39
  299. package/dist/errors/NoMembershipError.d.ts +8 -8
  300. package/dist/errors/NoMembershipError.js +14 -14
  301. package/dist/index.d.ts +1 -1
  302. package/dist/index.js +16 -16
  303. package/dist/log-update-wrapper.d.ts +24 -24
  304. package/dist/log-update-wrapper.js +28 -28
  305. package/dist/log4js-logger.d.ts +26 -26
  306. package/dist/log4js-logger.js +137 -137
  307. package/dist/log4js-logger.js.map +1 -1
  308. package/dist/ops/INTERFACES_CLI.d.ts +3 -3
  309. package/dist/ops/INTERFACES_CLI.js +7 -7
  310. package/dist/ops/LocalOps.d.ts +417 -417
  311. package/dist/ops/LocalOps.js +3121 -3121
  312. package/dist/ops/LocalOps.js.map +1 -1
  313. package/dist/ops/azure-container-registry-client/azure-container-registry-client.js +147 -147
  314. package/dist/ops/cli-path-walker.js +54 -54
  315. package/dist/ops/codiac-entities/dependency.d.ts +5 -5
  316. package/dist/ops/codiac-entities/dependency.js +10 -10
  317. package/dist/ops/codiac-entities/index.d.ts +1 -1
  318. package/dist/ops/codiac-entities/index.js +4 -4
  319. package/dist/ops/composite-image-registry-client.js +73 -73
  320. package/dist/ops/data/cli-context-repo.d.ts +61 -61
  321. package/dist/ops/data/cli-context-repo.js +269 -269
  322. package/dist/ops/data/cli-context-repo.js.map +1 -1
  323. package/dist/ops/data/index.d.ts +2 -2
  324. package/dist/ops/data/index.js +5 -5
  325. package/dist/ops/data/npm-config-repo.d.ts +13 -13
  326. package/dist/ops/data/npm-config-repo.js +64 -64
  327. package/dist/ops/docker-config.js +130 -130
  328. package/dist/ops/docker-constants.js +21 -21
  329. package/dist/ops/docker-credentials-store.js +237 -237
  330. package/dist/ops/docker-registry-api-client/docker-registry-api-client.js +288 -288
  331. package/dist/ops/docker-registry-api-client/entities/blob-sum.d.ts +7 -7
  332. package/dist/ops/docker-registry-api-client/entities/blob-sum.js +12 -12
  333. package/dist/ops/docker-registry-api-client/entities/docker-access-actions-enum.d.ts +5 -5
  334. package/dist/ops/docker-registry-api-client/entities/docker-access-actions-enum.js +9 -9
  335. package/dist/ops/docker-registry-api-client/entities/docker-auth-token-criteria.d.ts +30 -30
  336. package/dist/ops/docker-registry-api-client/entities/docker-auth-token-criteria.js +35 -35
  337. package/dist/ops/docker-registry-api-client/entities/i-docker-error-response.d.ts +55 -55
  338. package/dist/ops/docker-registry-api-client/entities/i-docker-error-response.js +51 -51
  339. package/dist/ops/docker-registry-api-client/entities/i-docker-list-response.d.ts +7 -7
  340. package/dist/ops/docker-registry-api-client/entities/i-docker-list-response.js +2 -2
  341. package/dist/ops/docker-registry-api-client/entities/image-repository.d.ts +31 -31
  342. package/dist/ops/docker-registry-api-client/entities/image-repository.js +29 -29
  343. package/dist/ops/docker-registry-api-client/entities/image-tag-criteria.d.ts +8 -8
  344. package/dist/ops/docker-registry-api-client/entities/image-tag-criteria.js +13 -13
  345. package/dist/ops/docker-registry-api-client/entities/image-tag-list.d.ts +7 -7
  346. package/dist/ops/docker-registry-api-client/entities/image-tag-list.js +12 -12
  347. package/dist/ops/docker-registry-api-client/entities/manifest-criteria.d.ts +9 -9
  348. package/dist/ops/docker-registry-api-client/entities/manifest-criteria.js +14 -14
  349. package/dist/ops/docker-registry-api-client/entities/manifest.d.ts +15 -15
  350. package/dist/ops/docker-registry-api-client/entities/manifest.js +20 -20
  351. package/dist/ops/docker-registry-api-client/entities/repository-criteria.d.ts +16 -16
  352. package/dist/ops/docker-registry-api-client/entities/repository-criteria.js +23 -23
  353. package/dist/ops/docker-registry-api-client/entities/token-response.d.ts +15 -15
  354. package/dist/ops/docker-registry-api-client/entities/token-response.js +14 -14
  355. package/dist/ops/docker-registry-api-client/entities/token.d.ts +17 -17
  356. package/dist/ops/docker-registry-api-client/entities/token.js +21 -21
  357. package/dist/ops/docker-registry-api-client/entities/version-check-criteria.d.ts +4 -4
  358. package/dist/ops/docker-registry-api-client/entities/version-check-criteria.js +9 -9
  359. package/dist/ops/dx-constants.d.ts +26 -26
  360. package/dist/ops/dx-constants.js +42 -42
  361. package/dist/ops/entities/ImageBuildContext.d.ts +12 -12
  362. package/dist/ops/entities/ImageBuildContext.js +18 -18
  363. package/dist/ops/entities/PipelineContext.d.ts +21 -21
  364. package/dist/ops/entities/PipelineContext.js +22 -22
  365. package/dist/ops/entities/TenantContext.d.ts +10 -10
  366. package/dist/ops/entities/TenantContext.js +15 -15
  367. package/dist/ops/entities/ThaulConfig.js +29 -29
  368. package/dist/ops/entities/azure-service-principal.d.ts +23 -23
  369. package/dist/ops/entities/azure-service-principal.js +23 -23
  370. package/dist/ops/entities/better-logger.js +1 -1
  371. package/dist/ops/entities/branch.d.ts +13 -13
  372. package/dist/ops/entities/branch.js +15 -15
  373. package/dist/ops/entities/cli-config.d.ts +48 -48
  374. package/dist/ops/entities/cli-config.js +60 -60
  375. package/dist/ops/entities/cli-config.js.map +1 -1
  376. package/dist/ops/entities/docker-image.d.ts +60 -60
  377. package/dist/ops/entities/docker-image.js +2 -2
  378. package/dist/ops/entities/helm-spec.d.ts +15 -15
  379. package/dist/ops/entities/helm-spec.js +22 -22
  380. package/dist/ops/entities/index.d.ts +4 -4
  381. package/dist/ops/entities/index.js +11 -11
  382. package/dist/ops/entities/operation-meta.d.ts +8 -8
  383. package/dist/ops/entities/operation-meta.js +18 -18
  384. package/dist/ops/entities/operation-meta.js.map +1 -1
  385. package/dist/ops/entities/scaffolding.d.ts +19 -19
  386. package/dist/ops/entities/scaffolding.js +20 -20
  387. package/dist/ops/extensions/azart-identity-adapter.d.ts +19 -19
  388. package/dist/ops/extensions/azart-identity-adapter.js +96 -96
  389. package/dist/ops/extensions/npm-identity-adapter-base.d.ts +13 -13
  390. package/dist/ops/extensions/npm-identity-adapter-base.js +2 -2
  391. package/dist/ops/extensions/npmjs-identity-adapter.d.ts +13 -13
  392. package/dist/ops/extensions/npmjs-identity-adapter.js +63 -63
  393. package/dist/ops/git-ops.d.ts +8 -8
  394. package/dist/ops/git-ops.js +13 -13
  395. package/dist/ops/i-client-for-image-registry.js +16 -16
  396. package/dist/ops/i-identity-handler.d.ts +33 -33
  397. package/dist/ops/i-identity-handler.js +164 -164
  398. package/dist/ops/i-output-styler.js +16 -16
  399. package/dist/ops/index.d.ts +12 -12
  400. package/dist/ops/index.js +14 -14
  401. package/dist/ops/json-utils.js +58 -58
  402. package/dist/ops/no-style-output-styler.js +29 -29
  403. package/dist/ops/oauth2-client.ts/oauth2-client.d.ts +23 -23
  404. package/dist/ops/oauth2-client.ts/oauth2-client.js +63 -63
  405. package/dist/ops/oauth2-client.ts/oauth2-client.js.map +1 -1
  406. package/dist/ops/project-initializer.d.ts +36 -36
  407. package/dist/ops/project-initializer.js +218 -218
  408. package/dist/ops/scaffolding/base-scaffolding.d.ts +7 -7
  409. package/dist/ops/scaffolding/base-scaffolding.js +20 -20
  410. package/dist/ops/scaffolding/base-scaffolding.js.map +1 -1
  411. package/dist/ops/scaffolding/codiac-api-scaffolding.d.ts +7 -7
  412. package/dist/ops/scaffolding/codiac-api-scaffolding.js +63 -63
  413. package/dist/ops/scaffolding/codiac-api-scaffolding.js.map +1 -1
  414. package/dist/ops/scaffolding/typescript-scaffolding.d.ts +15 -15
  415. package/dist/ops/scaffolding/typescript-scaffolding.js +162 -162
  416. package/dist/ops/scaffolding/typescript-scaffolding.js.map +1 -1
  417. package/dist/ops/test/mock-ui.d.ts +26 -26
  418. package/dist/ops/test/mock-ui.js +87 -87
  419. package/dist/ops/test/test-extensions.d.ts +13 -13
  420. package/dist/ops/test/test-extensions.js +70 -70
  421. package/dist/ops/test/when-a-recursive-file-search-is-run.spec.d.ts +2 -2
  422. package/dist/ops/test/when-a-recursive-file-search-is-run.spec.js +54 -54
  423. package/dist/ops/test/when-git-branchline-is-attempted.spec.d.ts +2 -2
  424. package/dist/ops/test/when-git-branchline-is-attempted.spec.js +37 -37
  425. package/dist/ops/test/when-versions-are-parsed.spec.d.ts +2 -2
  426. package/dist/ops/test/when-versions-are-parsed.spec.js +61 -61
  427. package/dist/ops/throwing-user-input-provider.js +36 -36
  428. package/dist/ops/workspace-versioner.d.ts +122 -122
  429. package/dist/ops/workspace-versioner.js +291 -291
  430. package/dist/ops/workspace-versioner.js.map +1 -1
  431. package/dist/prettify.d.ts +7 -7
  432. package/dist/prettify.js +23 -23
  433. package/dist/read-stdin.d.ts +2 -2
  434. package/dist/read-stdin.js +28 -28
  435. package/dist/relay/contracts/contracts.d.ts +207 -207
  436. package/dist/relay/contracts/contracts.js +229 -229
  437. package/dist/relay/extended-relay-client.d.ts +27 -27
  438. package/dist/relay/extended-relay-client.js +27 -27
  439. package/dist/relay/relay-container.d.ts +41 -41
  440. package/dist/relay/relay-container.js +297 -297
  441. package/dist/relay/relay-container.js.map +1 -1
  442. package/dist/relay/wsclient/relay-socket-listener.d.ts +68 -68
  443. package/dist/relay/wsclient/relay-socket-listener.js +164 -164
  444. package/dist/relay/wsclient/relay-socket-listener.js.map +1 -1
  445. package/dist/relay/wsclient/relay-websocket-client.d.ts +33 -33
  446. package/dist/relay/wsclient/relay-websocket-client.js +178 -178
  447. package/dist/relay/wsclient/relay-websocket-client.js.map +1 -1
  448. package/dist/relay/wsclient/rx-websocket-subject.d.ts +25 -25
  449. package/dist/relay/wsclient/rx-websocket-subject.js +133 -133
  450. package/dist/relay/wsclient/rx-websocket-subject.js.map +1 -1
  451. package/dist/relay/wsclient/socket-contracts.d.ts +22 -22
  452. package/dist/relay/wsclient/socket-contracts.js +2 -2
  453. package/dist/standard-probes.d.ts +5 -5
  454. package/dist/standard-probes.js +21 -21
  455. package/dist/uilogic/build-configurator.d.ts +21 -21
  456. package/dist/uilogic/build-configurator.js +110 -110
  457. package/dist/uilogic/cloud-provider-contextualizer.d.ts +46 -46
  458. package/dist/uilogic/cloud-provider-contextualizer.js +193 -193
  459. package/dist/uilogic/cloud-provider-contextualizer.js.map +1 -1
  460. package/dist/uilogic/cloud-resource-configurator-factory.d.ts +41 -41
  461. package/dist/uilogic/cloud-resource-configurator-factory.js +157 -157
  462. package/dist/uilogic/cloud-resource-configurator-factory.js.map +1 -1
  463. package/dist/uilogic/cloud-resource-configurators/aws-resource-configurator.d.ts +38 -38
  464. package/dist/uilogic/cloud-resource-configurators/aws-resource-configurator.js +347 -347
  465. package/dist/uilogic/cloud-resource-configurators/aws-resource-configurator.js.map +1 -1
  466. package/dist/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js +77 -77
  467. package/dist/uilogic/cloud-resource-configurators/az-interactive-login-configurator.d.ts +42 -42
  468. package/dist/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js +247 -247
  469. package/dist/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js.map +1 -1
  470. package/dist/uilogic/cloud-resource-configurators/azure-resource-configurator.d.ts +110 -110
  471. package/dist/uilogic/cloud-resource-configurators/azure-resource-configurator.js +781 -781
  472. package/dist/uilogic/cloud-resource-configurators/azure-resource-configurator.js.map +1 -1
  473. package/dist/uilogic/cloud-resource-configurators/azure-types.js +9 -9
  474. package/dist/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.d.ts +24 -24
  475. package/dist/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js +105 -105
  476. package/dist/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js.map +1 -1
  477. package/dist/uilogic/cloud-resource-configurators/helm-resource-configurator.d.ts +16 -16
  478. package/dist/uilogic/cloud-resource-configurators/helm-resource-configurator.js +44 -44
  479. package/dist/uilogic/cloud-resource-configurators/helm-resource-configurator.js.map +1 -1
  480. package/dist/uilogic/cloud-resource-configurators/unsupported-resource-configurator.d.ts +18 -18
  481. package/dist/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js +61 -61
  482. package/dist/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js.map +1 -1
  483. package/dist/uilogic/enterprise-contextualizer.d.ts +76 -76
  484. package/dist/uilogic/enterprise-contextualizer.js +670 -670
  485. package/dist/uilogic/environment-contextualizer.d.ts +15 -15
  486. package/dist/uilogic/environment-contextualizer.js +42 -42
  487. package/dist/uilogic/i-cluster-configurator.d.ts +9 -9
  488. package/dist/uilogic/i-cluster-configurator.js +2 -2
  489. package/dist/uilogic/i-login-configurator.d.ts +6 -6
  490. package/dist/uilogic/i-login-configurator.js +2 -2
  491. package/dist/uilogic/i-registry-configurator.d.ts +6 -6
  492. package/dist/uilogic/i-registry-configurator.js +2 -2
  493. package/dist/uilogic/i-secret-store-configurator.d.ts +7 -7
  494. package/dist/uilogic/i-secret-store-configurator.js +2 -2
  495. package/dist/uilogic/image-configurator.d.ts +133 -133
  496. package/dist/uilogic/image-configurator.js +577 -577
  497. package/dist/uilogic/image-configurator.js.map +1 -1
  498. package/dist/uilogic/image-contextualizer.d.ts +24 -24
  499. package/dist/uilogic/image-contextualizer.js +89 -89
  500. package/dist/uilogic/image-contextualizer.js.map +1 -1
  501. package/dist/uilogic/image-registry-contextualizer.d.ts +28 -28
  502. package/dist/uilogic/image-registry-contextualizer.js +126 -126
  503. package/dist/uilogic/image-registry-contextualizer.js.map +1 -1
  504. package/dist/uilogic/index.d.ts +9 -9
  505. package/dist/uilogic/index.js +13 -13
  506. package/dist/uilogic/prompt-select-fuzzy.js +138 -138
  507. package/dist/uilogic/render-methods.d.ts +12 -12
  508. package/dist/uilogic/render-methods.js +64 -64
  509. package/dist/uilogic/tenant-contextualizer.d.ts +79 -79
  510. package/dist/uilogic/tenant-contextualizer.js +577 -577
  511. package/dist/user-context-loader.d.ts +60 -60
  512. package/dist/user-context-loader.js +183 -183
  513. package/oclif.manifest.json +1 -67
  514. package/package.json +149 -149
  515. package/scaffolding/api/.gitignore-scaffolding +68 -68
  516. package/scaffolding/api/.vscode/launch.json +16 -16
  517. package/scaffolding/api/.vscode/settings.json +7 -7
  518. package/scaffolding/api/.vscode/tasks.json +15 -15
  519. package/scaffolding/api/src/app-config.json +2 -2
  520. package/scaffolding/api/src/index.ts-scaffolding +13 -13
  521. package/scaffolding/api/src/myApiDef.ts-scaffolding +25 -25
  522. package/scaffolding/default/.gitignore-scaffolding +2 -2
  523. package/scaffolding/typescript/.gitignore-scaffolding +69 -69
  524. package/scaffolding/typescript/.vscode/launch.json +16 -16
  525. package/scaffolding/typescript/.vscode/settings.json +7 -7
  526. package/scaffolding/typescript/.vscode/tasks.json +15 -15
  527. package/dist/commands/test.d.ts +0 -13
  528. package/dist/commands/test.js +0 -32
  529. package/dist/commands/test.js.map +0 -1
  530. package/dist/commands/testent.d.ts +0 -13
  531. package/dist/commands/testent.js +0 -33
  532. package/dist/commands/testent.js.map +0 -1
@@ -1,48 +1,48 @@
1
- export declare const COMPLETED = "SELECTION_COMPLETED";
2
- export declare const CANCELLED = "SELECTION_CANCELLED";
3
- export declare const CHECKMARK = "\u2713";
4
- /** Indicator of whether the user experience is to return files or directories. */
5
- export declare enum EnumRetrievalMode {
6
- file = "file",
7
- directory = "directory"
8
- }
9
- /** Just documenting the options arg from cli-select-file, cuz they dont have a type def. */
10
- export declare type CliSelectFileOptions = {
11
- /** integer, Default value is 10 */
12
- pageSize?: number;
13
- /** Defaults to true to allow for selection of multiple files */
14
- multi?: boolean;
15
- /** Files that will initially be selected */
16
- selectedFiles?: string[];
17
- /** Defaults to true */
18
- clearConsole?: boolean;
19
- /** Where the user will initially be prompted to select files
20
- Defaults to process.cwd() */
21
- startingPath?: string;
22
- /** The top level directory the user has access to
23
- Defaults to process.cwd() */
24
- root?: string;
25
- /** Return false for any directory that you do not want to appear in the cli
26
- ```
27
- directoryFilter?: (directoryName) => {
28
- return !/node_modules$/gi.test(directoryName);
29
- },
30
- ```
31
- */
32
- directoryFilter?: (directoryName: string) => boolean;
33
- /** Return false for any file that you do not want to appear in the cli
34
- ```
35
- fileFilter: (fileName) => {
36
- return !/index.js$/gi.test(fileName);
37
- },
38
- ```
39
- */
40
- fileFilter?: (fileName: string) => boolean;
41
- /** Declares whether the user experience is intended to return files or directories (optional: defaults to file) */
42
- mode?: EnumRetrievalMode;
43
- };
44
- export declare type CLISelectFileResult = {
45
- selectedFiles: string[];
46
- status: string;
47
- };
48
- export declare const selectFiles: (options?: CliSelectFileOptions) => Promise<CLISelectFileResult>;
1
+ export declare const COMPLETED = "SELECTION_COMPLETED";
2
+ export declare const CANCELLED = "SELECTION_CANCELLED";
3
+ export declare const CHECKMARK = "\u2713";
4
+ /** Indicator of whether the user experience is to return files or directories. */
5
+ export declare enum EnumRetrievalMode {
6
+ file = "file",
7
+ directory = "directory"
8
+ }
9
+ /** Just documenting the options arg from cli-select-file, cuz they dont have a type def. */
10
+ export type CliSelectFileOptions = {
11
+ /** integer, Default value is 10 */
12
+ pageSize?: number;
13
+ /** Defaults to true to allow for selection of multiple files */
14
+ multi?: boolean;
15
+ /** Files that will initially be selected */
16
+ selectedFiles?: string[];
17
+ /** Defaults to true */
18
+ clearConsole?: boolean;
19
+ /** Where the user will initially be prompted to select files
20
+ Defaults to process.cwd() */
21
+ startingPath?: string;
22
+ /** The top level directory the user has access to
23
+ Defaults to process.cwd() */
24
+ root?: string;
25
+ /** Return false for any directory that you do not want to appear in the cli
26
+ ```
27
+ directoryFilter?: (directoryName) => {
28
+ return !/node_modules$/gi.test(directoryName);
29
+ },
30
+ ```
31
+ */
32
+ directoryFilter?: (directoryName: string) => boolean;
33
+ /** Return false for any file that you do not want to appear in the cli
34
+ ```
35
+ fileFilter: (fileName) => {
36
+ return !/index.js$/gi.test(fileName);
37
+ },
38
+ ```
39
+ */
40
+ fileFilter?: (fileName: string) => boolean;
41
+ /** Declares whether the user experience is intended to return files or directories (optional: defaults to file) */
42
+ mode?: EnumRetrievalMode;
43
+ };
44
+ export type CLISelectFileResult = {
45
+ selectedFiles: string[];
46
+ status: string;
47
+ };
48
+ export declare const selectFiles: (options?: CliSelectFileOptions) => Promise<CLISelectFileResult>;
@@ -1,187 +1,187 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.selectFiles = exports.EnumRetrievalMode = exports.CHECKMARK = exports.CANCELLED = exports.COMPLETED = void 0;
4
- const tslib_1 = require("tslib");
5
- const fs = require('fs');
6
- const path = require('path');
7
- const inquirer = require('inquirer');
8
- const chalk = require('chalk');
9
- exports.COMPLETED = 'SELECTION_COMPLETED';
10
- exports.CANCELLED = 'SELECTION_CANCELLED';
11
- exports.CHECKMARK = '\u2713';
12
- /** Indicator of whether the user experience is to return files or directories. */
13
- var EnumRetrievalMode;
14
- (function (EnumRetrievalMode) {
15
- EnumRetrievalMode["file"] = "file";
16
- EnumRetrievalMode["directory"] = "directory";
17
- })(EnumRetrievalMode = exports.EnumRetrievalMode || (exports.EnumRetrievalMode = {}));
18
- class FilesSystemService {
19
- directories(directoryPath, directoryFilter = (dn) => true) {
20
- return fs.readdirSync(directoryPath).filter((name) => {
21
- const joinedPath = path.join(directoryPath, name);
22
- return this.isDirectory(joinedPath) && directoryFilter(joinedPath);
23
- });
24
- }
25
- files(directoryPath, fileFilter = (fileName) => true) {
26
- return fs.readdirSync(directoryPath).filter((name) => {
27
- const joinedPath = path.join(directoryPath, name);
28
- return this.isFile(joinedPath) && fileFilter(joinedPath);
29
- });
30
- }
31
- isDirectory(directoryPath) {
32
- return fs.statSync(directoryPath).isDirectory();
33
- }
34
- isFile(filePath) {
35
- return fs.statSync(filePath).isFile();
36
- }
37
- }
38
- class FilesSelectionService extends Set {
39
- constructor(selectedFiles) {
40
- super(selectedFiles);
41
- this.lastFileSelected = null;
42
- }
43
- get selectedFiles() {
44
- return Array.from(this);
45
- }
46
- isSelected(file) {
47
- return this.has(file);
48
- }
49
- selectFile(file) {
50
- this.add(file);
51
- this.lastFileSelected = file;
52
- }
53
- removeFile(file) {
54
- this.delete(file);
55
- }
56
- }
57
- class LocationService {
58
- constructor(currentPath) {
59
- this.currentPath = currentPath;
60
- }
61
- }
62
- class OptionsService {
63
- constructor(options) {
64
- this.options = options;
65
- this.options = Object.assign(Object.assign({}, this.defaultOptions), options);
66
- }
67
- get defaultOptions() {
68
- return {
69
- directoryFilter: () => true,
70
- fileFilter: () => true,
71
- root: process.cwd(),
72
- startingPath: process.cwd(),
73
- multi: false,
74
- pageSize: 10,
75
- selectedFiles: [],
76
- clearConsole: true,
77
- mode: EnumRetrievalMode.file
78
- };
79
- }
80
- }
81
- const selectFiles = function (options = {}) {
82
- const optionsService = new OptionsService(options);
83
- const locationService = new LocationService(optionsService.options.startingPath);
84
- const fileSystemService = new FilesSystemService();
85
- const filesSelectionService = new FilesSelectionService(optionsService.options.selectedFiles);
86
- return new Promise((resolve) => {
87
- (function promptUserToSelectFiles() {
88
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
89
- const directories = fileSystemService.directories(locationService.currentPath, optionsService.options.directoryFilter);
90
- if (locationService.currentPath !== optionsService.options.root) {
91
- directories.unshift('..');
92
- }
93
- // Dont show any files if theyre looking for directories.
94
- const files = (optionsService.options.mode == EnumRetrievalMode.directory) ? [] : fileSystemService.files(locationService.currentPath, optionsService.options.fileFilter);
95
- const choices = [
96
- ...directories.map((directoryName) => {
97
- const value = path.join(locationService.currentPath, directoryName);
98
- const name = chalk.yellow(directoryName);
99
- return { value, name };
100
- }),
101
- ...files.map((fileName) => {
102
- const value = path.join(locationService.currentPath, fileName);
103
- const name = `${fileName} ${filesSelectionService.isSelected(value)
104
- ? chalk.green(exports.CHECKMARK)
105
- : ''}`;
106
- return { value, name };
107
- }),
108
- ];
109
- switch (optionsService.options.mode) {
110
- case EnumRetrievalMode.directory:
111
- // if (filesSelectionService.selectedFiles.length) {
112
- choices.unshift({
113
- name: chalk.green('. (Select this folder)'),
114
- value: exports.COMPLETED,
115
- });
116
- // }
117
- choices.push({
118
- name: chalk.red('-- Cancel Folder Selection --'),
119
- value: exports.CANCELLED,
120
- });
121
- break;
122
- case EnumRetrievalMode.file:
123
- if (filesSelectionService.selectedFiles.length) {
124
- choices.push({
125
- name: chalk.green('-- File Selection Complete --'),
126
- value: exports.COMPLETED,
127
- });
128
- }
129
- choices.push({
130
- name: chalk.red('-- Cancel File Selection --'),
131
- value: exports.CANCELLED,
132
- });
133
- break;
134
- }
135
- if (optionsService.options.clearConsole) {
136
- console.clear();
137
- }
138
- const { selection } = yield inquirer.prompt([
139
- {
140
- type: 'list',
141
- message: `Select file(s) in ${locationService.currentPath}`,
142
- name: 'selection',
143
- pageSize: optionsService.options.pageSize,
144
- choices,
145
- default: () => filesSelectionService.lastFileSelected,
146
- },
147
- ]);
148
- if (optionsService.options.clearConsole) {
149
- console.clear();
150
- }
151
- if (selection === exports.COMPLETED || selection === exports.CANCELLED) {
152
- let result = {
153
- selectedFiles: filesSelectionService.selectedFiles,
154
- status: selection,
155
- };
156
- if (optionsService.options.mode == EnumRetrievalMode.directory) {
157
- result.selectedFiles = [locationService.currentPath];
158
- }
159
- return resolve(result);
160
- }
161
- else if (optionsService.options.mode == EnumRetrievalMode.file
162
- && fileSystemService.isFile(selection)
163
- && !optionsService.options.multi // Complete if we're in file mode and looking for just one.
164
- ) {
165
- return resolve({
166
- selectedFiles: [selection],
167
- status: exports.COMPLETED,
168
- });
169
- }
170
- if (fileSystemService.isDirectory(selection)) {
171
- locationService.currentPath = selection;
172
- }
173
- else {
174
- if (filesSelectionService.isSelected(selection)) {
175
- filesSelectionService.removeFile(selection);
176
- }
177
- else {
178
- filesSelectionService.selectFile(selection);
179
- }
180
- }
181
- promptUserToSelectFiles();
182
- });
183
- })();
184
- });
185
- };
186
- exports.selectFiles = selectFiles;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.selectFiles = exports.EnumRetrievalMode = exports.CHECKMARK = exports.CANCELLED = exports.COMPLETED = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const fs = require('fs');
6
+ const path = require('path');
7
+ const inquirer = require('inquirer');
8
+ const chalk = require('chalk');
9
+ exports.COMPLETED = 'SELECTION_COMPLETED';
10
+ exports.CANCELLED = 'SELECTION_CANCELLED';
11
+ exports.CHECKMARK = '\u2713';
12
+ /** Indicator of whether the user experience is to return files or directories. */
13
+ var EnumRetrievalMode;
14
+ (function (EnumRetrievalMode) {
15
+ EnumRetrievalMode["file"] = "file";
16
+ EnumRetrievalMode["directory"] = "directory";
17
+ })(EnumRetrievalMode = exports.EnumRetrievalMode || (exports.EnumRetrievalMode = {}));
18
+ class FilesSystemService {
19
+ directories(directoryPath, directoryFilter = (dn) => true) {
20
+ return fs.readdirSync(directoryPath).filter((name) => {
21
+ const joinedPath = path.join(directoryPath, name);
22
+ return this.isDirectory(joinedPath) && directoryFilter(joinedPath);
23
+ });
24
+ }
25
+ files(directoryPath, fileFilter = (fileName) => true) {
26
+ return fs.readdirSync(directoryPath).filter((name) => {
27
+ const joinedPath = path.join(directoryPath, name);
28
+ return this.isFile(joinedPath) && fileFilter(joinedPath);
29
+ });
30
+ }
31
+ isDirectory(directoryPath) {
32
+ return fs.statSync(directoryPath).isDirectory();
33
+ }
34
+ isFile(filePath) {
35
+ return fs.statSync(filePath).isFile();
36
+ }
37
+ }
38
+ class FilesSelectionService extends Set {
39
+ constructor(selectedFiles) {
40
+ super(selectedFiles);
41
+ this.lastFileSelected = null;
42
+ }
43
+ get selectedFiles() {
44
+ return Array.from(this);
45
+ }
46
+ isSelected(file) {
47
+ return this.has(file);
48
+ }
49
+ selectFile(file) {
50
+ this.add(file);
51
+ this.lastFileSelected = file;
52
+ }
53
+ removeFile(file) {
54
+ this.delete(file);
55
+ }
56
+ }
57
+ class LocationService {
58
+ constructor(currentPath) {
59
+ this.currentPath = currentPath;
60
+ }
61
+ }
62
+ class OptionsService {
63
+ constructor(options) {
64
+ this.options = options;
65
+ this.options = Object.assign(Object.assign({}, this.defaultOptions), options);
66
+ }
67
+ get defaultOptions() {
68
+ return {
69
+ directoryFilter: () => true,
70
+ fileFilter: () => true,
71
+ root: process.cwd(),
72
+ startingPath: process.cwd(),
73
+ multi: false,
74
+ pageSize: 10,
75
+ selectedFiles: [],
76
+ clearConsole: true,
77
+ mode: EnumRetrievalMode.file
78
+ };
79
+ }
80
+ }
81
+ const selectFiles = function (options = {}) {
82
+ const optionsService = new OptionsService(options);
83
+ const locationService = new LocationService(optionsService.options.startingPath);
84
+ const fileSystemService = new FilesSystemService();
85
+ const filesSelectionService = new FilesSelectionService(optionsService.options.selectedFiles);
86
+ return new Promise((resolve) => {
87
+ (function promptUserToSelectFiles() {
88
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
89
+ const directories = fileSystemService.directories(locationService.currentPath, optionsService.options.directoryFilter);
90
+ if (locationService.currentPath !== optionsService.options.root) {
91
+ directories.unshift('..');
92
+ }
93
+ // Dont show any files if theyre looking for directories.
94
+ const files = (optionsService.options.mode == EnumRetrievalMode.directory) ? [] : fileSystemService.files(locationService.currentPath, optionsService.options.fileFilter);
95
+ const choices = [
96
+ ...directories.map((directoryName) => {
97
+ const value = path.join(locationService.currentPath, directoryName);
98
+ const name = chalk.yellow(directoryName);
99
+ return { value, name };
100
+ }),
101
+ ...files.map((fileName) => {
102
+ const value = path.join(locationService.currentPath, fileName);
103
+ const name = `${fileName} ${filesSelectionService.isSelected(value)
104
+ ? chalk.green(exports.CHECKMARK)
105
+ : ''}`;
106
+ return { value, name };
107
+ }),
108
+ ];
109
+ switch (optionsService.options.mode) {
110
+ case EnumRetrievalMode.directory:
111
+ // if (filesSelectionService.selectedFiles.length) {
112
+ choices.unshift({
113
+ name: chalk.green('. (Select this folder)'),
114
+ value: exports.COMPLETED,
115
+ });
116
+ // }
117
+ choices.push({
118
+ name: chalk.red('-- Cancel Folder Selection --'),
119
+ value: exports.CANCELLED,
120
+ });
121
+ break;
122
+ case EnumRetrievalMode.file:
123
+ if (filesSelectionService.selectedFiles.length) {
124
+ choices.push({
125
+ name: chalk.green('-- File Selection Complete --'),
126
+ value: exports.COMPLETED,
127
+ });
128
+ }
129
+ choices.push({
130
+ name: chalk.red('-- Cancel File Selection --'),
131
+ value: exports.CANCELLED,
132
+ });
133
+ break;
134
+ }
135
+ if (optionsService.options.clearConsole) {
136
+ console.clear();
137
+ }
138
+ const { selection } = yield inquirer.prompt([
139
+ {
140
+ type: 'list',
141
+ message: `Select file(s) in ${locationService.currentPath}`,
142
+ name: 'selection',
143
+ pageSize: optionsService.options.pageSize,
144
+ choices,
145
+ default: () => filesSelectionService.lastFileSelected,
146
+ },
147
+ ]);
148
+ if (optionsService.options.clearConsole) {
149
+ console.clear();
150
+ }
151
+ if (selection === exports.COMPLETED || selection === exports.CANCELLED) {
152
+ let result = {
153
+ selectedFiles: filesSelectionService.selectedFiles,
154
+ status: selection,
155
+ };
156
+ if (optionsService.options.mode == EnumRetrievalMode.directory) {
157
+ result.selectedFiles = [locationService.currentPath];
158
+ }
159
+ return resolve(result);
160
+ }
161
+ else if (optionsService.options.mode == EnumRetrievalMode.file
162
+ && fileSystemService.isFile(selection)
163
+ && !optionsService.options.multi // Complete if we're in file mode and looking for just one.
164
+ ) {
165
+ return resolve({
166
+ selectedFiles: [selection],
167
+ status: exports.COMPLETED,
168
+ });
169
+ }
170
+ if (fileSystemService.isDirectory(selection)) {
171
+ locationService.currentPath = selection;
172
+ }
173
+ else {
174
+ if (filesSelectionService.isSelected(selection)) {
175
+ filesSelectionService.removeFile(selection);
176
+ }
177
+ else {
178
+ filesSelectionService.selectFile(selection);
179
+ }
180
+ }
181
+ promptUserToSelectFiles();
182
+ });
183
+ })();
184
+ });
185
+ };
186
+ exports.selectFiles = selectFiles;
187
187
  //# sourceMappingURL=file-selector.js.map
@@ -1,19 +1,19 @@
1
- "use strict";
2
- // export type EntryValue = string|number|boolean;
3
- // export type choice<T extends EntryValue> = T|{ name: string, value?: T }
4
- // /** Retrieves value from the user. */
5
- // export interface IUserInputProvider {
6
- // /** Renders a message to the user (DOES NOT LOG the message). */
7
- // userMessage(message: string): void;
8
- // /** @param id Identifies the prompt for internal use, esp in mocking. This value never renders to the user. */
9
- // prompt<T extends EntryValue>(id: string, prompt: string, required?: boolean, defaultValue?: T): Promise<T|undefined>;
10
- // /** @param id Identifies the prompt for internal use, esp in mocking. This value never renders to the user. */
11
- // promptPassword(id: string, prompt: string): Promise<string>;
12
- // /** @param id Identifies the prompt for internal use, esp in mocking. This value never renders to the user. */
13
- // promptSelect<T extends EntryValue>(id: string, prompt: string, choices: choice<T>[], multiSelect?: boolean): Promise<T|undefined>;
14
- // /** @param id Identifies the prompt for internal use, esp in mocking. This value never renders to the user.
15
- // * @param prompt The message to print for the user.
16
- // * @param defaultValue defaults to TRUE. */
17
- // promptConfirm(id: string, prompt: string, defaultValue?: boolean): Promise<boolean>;
18
- // }
1
+ "use strict";
2
+ // export type EntryValue = string|number|boolean;
3
+ // export type choice<T extends EntryValue> = T|{ name: string, value?: T }
4
+ // /** Retrieves value from the user. */
5
+ // export interface IUserInputProvider {
6
+ // /** Renders a message to the user (DOES NOT LOG the message). */
7
+ // userMessage(message: string): void;
8
+ // /** @param id Identifies the prompt for internal use, esp in mocking. This value never renders to the user. */
9
+ // prompt<T extends EntryValue>(id: string, prompt: string, required?: boolean, defaultValue?: T): Promise<T|undefined>;
10
+ // /** @param id Identifies the prompt for internal use, esp in mocking. This value never renders to the user. */
11
+ // promptPassword(id: string, prompt: string): Promise<string>;
12
+ // /** @param id Identifies the prompt for internal use, esp in mocking. This value never renders to the user. */
13
+ // promptSelect<T extends EntryValue>(id: string, prompt: string, choices: choice<T>[], multiSelect?: boolean): Promise<T|undefined>;
14
+ // /** @param id Identifies the prompt for internal use, esp in mocking. This value never renders to the user.
15
+ // * @param prompt The message to print for the user.
16
+ // * @param defaultValue defaults to TRUE. */
17
+ // promptConfirm(id: string, prompt: string, defaultValue?: boolean): Promise<boolean>;
18
+ // }
19
19
  //# sourceMappingURL=i-user-input-provider.js.map
@@ -1,4 +1,4 @@
1
- export * from "./entities";
2
- export * from "./prompt-select-fuzzy";
3
- export { commandBase } from "./command-base";
4
- export * from "./mock-ui";
1
+ export * from "./entities";
2
+ export * from "./prompt-select-fuzzy";
3
+ export { commandBase } from "./command-base";
4
+ export * from "./mock-ui";
@@ -1,11 +1,11 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.commandBase = void 0;
4
- const tslib_1 = require("tslib");
5
- tslib_1.__exportStar(require("./entities"), exports);
6
- tslib_1.__exportStar(require("./prompt-select-fuzzy"), exports);
7
- var command_base_1 = require("./command-base");
8
- Object.defineProperty(exports, "commandBase", { enumerable: true, get: function () { return command_base_1.commandBase; } });
9
- // export {TenantContextualizer} from "./tenant-contextualizer";
10
- tslib_1.__exportStar(require("./mock-ui"), exports);
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.commandBase = void 0;
4
+ const tslib_1 = require("tslib");
5
+ tslib_1.__exportStar(require("./entities"), exports);
6
+ tslib_1.__exportStar(require("./prompt-select-fuzzy"), exports);
7
+ var command_base_1 = require("./command-base");
8
+ Object.defineProperty(exports, "commandBase", { enumerable: true, get: function () { return command_base_1.commandBase; } });
9
+ // export {TenantContextualizer} from "./tenant-contextualizer";
10
+ tslib_1.__exportStar(require("./mock-ui"), exports);
11
11
  //# sourceMappingURL=index.js.map
@@ -1,27 +1,27 @@
1
- import { EntryValue, choice, IUserInputProvider, IOutputStyler } from "@codiac.io/codiac-ops-common";
2
- import { FileSelectionOptions, FolderSelectionOptions } from "@codiac.io/codiac-ops-common";
3
- export declare class MockUi implements IUserInputProvider, IOutputStyler {
4
- constructor();
5
- private values;
6
- responses: {
7
- [id: string]: EntryValue | Error;
8
- };
9
- setValue(id: string, value: EntryValue): void;
10
- private getValue;
11
- userMessage(message: string): void;
12
- prompt<T extends EntryValue>(id: string, prompt: string, required?: boolean | undefined, defaultValue?: T | undefined): Promise<T | undefined>;
13
- promptPassword(id: string, prompt: string): Promise<string>;
14
- promptConfirm(id: string, prompt: string, defaultValue?: boolean | undefined): Promise<boolean>;
15
- promptSelect<T extends EntryValue>(id: string, prompt: string, choices: choice<T>[], multiSelect?: boolean | undefined): Promise<T | undefined>;
16
- promptSelectFile(id: string, prompt: string, fileOptions: FileSelectionOptions): Promise<string>;
17
- promptSelectFolder(id: string, prompt: string, folderOptions: FolderSelectionOptions): Promise<string>;
18
- bold(content: string): string;
19
- dim(content: string): string;
20
- hilite(content: string): string;
21
- colorGood(content: string): string;
22
- colorWarning(content: string): string;
23
- colorCritical(content: string): string;
24
- openUrl(url: string): Promise<void>;
25
- startSpinner(userMessage: string): void;
26
- stopSpinner(userMessage: string): void;
27
- }
1
+ import { EntryValue, choice, IUserInputProvider, IOutputStyler } from "@codiac.io/codiac-ops-common";
2
+ import { FileSelectionOptions, FolderSelectionOptions } from "@codiac.io/codiac-ops-common";
3
+ export declare class MockUi implements IUserInputProvider, IOutputStyler {
4
+ constructor();
5
+ private values;
6
+ responses: {
7
+ [id: string]: EntryValue | Error;
8
+ };
9
+ setValue(id: string, value: EntryValue): void;
10
+ private getValue;
11
+ userMessage(message: string): void;
12
+ prompt<T extends EntryValue>(id: string, prompt: string, required?: boolean | undefined, defaultValue?: T | undefined): Promise<T | undefined>;
13
+ promptPassword(id: string, prompt: string): Promise<string>;
14
+ promptConfirm(id: string, prompt: string, defaultValue?: boolean | undefined): Promise<boolean>;
15
+ promptSelect<T extends EntryValue>(id: string, prompt: string, choices: choice<T>[], multiSelect?: boolean | undefined): Promise<T | undefined>;
16
+ promptSelectFile(id: string, prompt: string, fileOptions: FileSelectionOptions): Promise<string>;
17
+ promptSelectFolder(id: string, prompt: string, folderOptions: FolderSelectionOptions): Promise<string>;
18
+ bold(content: string): string;
19
+ dim(content: string): string;
20
+ hilite(content: string): string;
21
+ colorGood(content: string): string;
22
+ colorWarning(content: string): string;
23
+ colorCritical(content: string): string;
24
+ openUrl(url: string): Promise<void>;
25
+ startSpinner(userMessage: string): void;
26
+ stopSpinner(userMessage: string): void;
27
+ }