@rockcarver/frodo-cli 0.18.2-16 → 0.18.2-18

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 (314) hide show
  1. package/CHANGELOG.md +9 -1
  2. package/esm/app.js +3 -0
  3. package/esm/app.js.map +1 -1
  4. package/esm/cli/FrodoCommand.js +133 -0
  5. package/esm/cli/FrodoCommand.js.map +1 -0
  6. package/esm/cli/_template/something-delete.js +9 -15
  7. package/esm/cli/_template/something-delete.js.map +1 -1
  8. package/esm/cli/_template/something-describe.js +9 -15
  9. package/esm/cli/_template/something-describe.js.map +1 -1
  10. package/esm/cli/_template/something-else-delete.js +9 -15
  11. package/esm/cli/_template/something-else-delete.js.map +1 -1
  12. package/esm/cli/_template/something-else-describe.js +9 -15
  13. package/esm/cli/_template/something-else-describe.js.map +1 -1
  14. package/esm/cli/_template/something-else-export.js +9 -15
  15. package/esm/cli/_template/something-else-export.js.map +1 -1
  16. package/esm/cli/_template/something-else-import.js +9 -15
  17. package/esm/cli/_template/something-else-import.js.map +1 -1
  18. package/esm/cli/_template/something-else-list.js +9 -15
  19. package/esm/cli/_template/something-else-list.js.map +1 -1
  20. package/esm/cli/_template/something-else.js +8 -8
  21. package/esm/cli/_template/something-else.js.map +1 -1
  22. package/esm/cli/_template/something-export.js +9 -15
  23. package/esm/cli/_template/something-export.js.map +1 -1
  24. package/esm/cli/_template/something-import.js +9 -15
  25. package/esm/cli/_template/something-import.js.map +1 -1
  26. package/esm/cli/_template/something-list.js +9 -15
  27. package/esm/cli/_template/something-list.js.map +1 -1
  28. package/esm/cli/_template/something-other-delete.js +9 -15
  29. package/esm/cli/_template/something-other-delete.js.map +1 -1
  30. package/esm/cli/_template/something-other-describe.js +9 -15
  31. package/esm/cli/_template/something-other-describe.js.map +1 -1
  32. package/esm/cli/_template/something-other-export.js +9 -15
  33. package/esm/cli/_template/something-other-export.js.map +1 -1
  34. package/esm/cli/_template/something-other-import.js +9 -15
  35. package/esm/cli/_template/something-other-import.js.map +1 -1
  36. package/esm/cli/_template/something-other-list.js +9 -15
  37. package/esm/cli/_template/something-other-list.js.map +1 -1
  38. package/esm/cli/_template/something-other.js +8 -8
  39. package/esm/cli/_template/something-other.js.map +1 -1
  40. package/esm/cli/_template/something.js +9 -10
  41. package/esm/cli/_template/something.js.map +1 -1
  42. package/esm/cli/admin/admin-add-autoid-static-user-mapping.js +8 -15
  43. package/esm/cli/admin/admin-add-autoid-static-user-mapping.js.map +1 -1
  44. package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js +9 -15
  45. package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js.map +1 -1
  46. package/esm/cli/admin/admin-get-access-token.js +9 -15
  47. package/esm/cli/admin/admin-get-access-token.js.map +1 -1
  48. package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js +9 -15
  49. package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js.map +1 -1
  50. package/esm/cli/admin/admin-hide-generic-extension-attributes.js +9 -15
  51. package/esm/cli/admin/admin-hide-generic-extension-attributes.js.map +1 -1
  52. package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js +8 -15
  53. package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js.map +1 -1
  54. package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js +8 -15
  55. package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js.map +1 -1
  56. package/esm/cli/admin/admin-list-static-user-mappings.js +9 -15
  57. package/esm/cli/admin/admin-list-static-user-mappings.js.map +1 -1
  58. package/esm/cli/admin/admin-remove-static-user-mapping.js +8 -15
  59. package/esm/cli/admin/admin-remove-static-user-mapping.js.map +1 -1
  60. package/esm/cli/admin/admin-repair-org-model.js +9 -15
  61. package/esm/cli/admin/admin-repair-org-model.js.map +1 -1
  62. package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js +9 -15
  63. package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js.map +1 -1
  64. package/esm/cli/admin/admin-show-generic-extension-attributes.js +9 -15
  65. package/esm/cli/admin/admin-show-generic-extension-attributes.js.map +1 -1
  66. package/esm/cli/admin/admin.js +14 -15
  67. package/esm/cli/admin/admin.js.map +1 -1
  68. package/esm/cli/agent/agent-delete.js +8 -15
  69. package/esm/cli/agent/agent-delete.js.map +1 -1
  70. package/esm/cli/agent/agent-describe.js +9 -15
  71. package/esm/cli/agent/agent-describe.js.map +1 -1
  72. package/esm/cli/agent/agent-export.js +8 -15
  73. package/esm/cli/agent/agent-export.js.map +1 -1
  74. package/esm/cli/agent/agent-gateway-delete.js +8 -15
  75. package/esm/cli/agent/agent-gateway-delete.js.map +1 -1
  76. package/esm/cli/agent/agent-gateway-describe.js +9 -15
  77. package/esm/cli/agent/agent-gateway-describe.js.map +1 -1
  78. package/esm/cli/agent/agent-gateway-export.js +8 -15
  79. package/esm/cli/agent/agent-gateway-export.js.map +1 -1
  80. package/esm/cli/agent/agent-gateway-import.js +8 -15
  81. package/esm/cli/agent/agent-gateway-import.js.map +1 -1
  82. package/esm/cli/agent/agent-gateway-list.js +9 -15
  83. package/esm/cli/agent/agent-gateway-list.js.map +1 -1
  84. package/esm/cli/agent/agent-gateway.js +8 -8
  85. package/esm/cli/agent/agent-gateway.js.map +1 -1
  86. package/esm/cli/agent/agent-import.js +8 -15
  87. package/esm/cli/agent/agent-import.js.map +1 -1
  88. package/esm/cli/agent/agent-java-delete.js +8 -15
  89. package/esm/cli/agent/agent-java-delete.js.map +1 -1
  90. package/esm/cli/agent/agent-java-describe.js +9 -15
  91. package/esm/cli/agent/agent-java-describe.js.map +1 -1
  92. package/esm/cli/agent/agent-java-export.js +8 -15
  93. package/esm/cli/agent/agent-java-export.js.map +1 -1
  94. package/esm/cli/agent/agent-java-import.js +8 -15
  95. package/esm/cli/agent/agent-java-import.js.map +1 -1
  96. package/esm/cli/agent/agent-java-list.js +9 -15
  97. package/esm/cli/agent/agent-java-list.js.map +1 -1
  98. package/esm/cli/agent/agent-java.js +8 -8
  99. package/esm/cli/agent/agent-java.js.map +1 -1
  100. package/esm/cli/agent/agent-list.js +9 -15
  101. package/esm/cli/agent/agent-list.js.map +1 -1
  102. package/esm/cli/agent/agent-web-delete.js +8 -15
  103. package/esm/cli/agent/agent-web-delete.js.map +1 -1
  104. package/esm/cli/agent/agent-web-describe.js +9 -15
  105. package/esm/cli/agent/agent-web-describe.js.map +1 -1
  106. package/esm/cli/agent/agent-web-export.js +8 -15
  107. package/esm/cli/agent/agent-web-export.js.map +1 -1
  108. package/esm/cli/agent/agent-web-import.js +8 -15
  109. package/esm/cli/agent/agent-web-import.js.map +1 -1
  110. package/esm/cli/agent/agent-web-list.js +9 -15
  111. package/esm/cli/agent/agent-web-list.js.map +1 -1
  112. package/esm/cli/agent/agent-web.js +8 -8
  113. package/esm/cli/agent/agent-web.js.map +1 -1
  114. package/esm/cli/agent/agent.js +10 -11
  115. package/esm/cli/agent/agent.js.map +1 -1
  116. package/esm/cli/app/app-delete.js +9 -15
  117. package/esm/cli/app/app-delete.js.map +1 -1
  118. package/esm/cli/app/app-describe.js +9 -15
  119. package/esm/cli/app/app-describe.js.map +1 -1
  120. package/esm/cli/app/app-export.js +8 -15
  121. package/esm/cli/app/app-export.js.map +1 -1
  122. package/esm/cli/app/app-import.js +9 -15
  123. package/esm/cli/app/app-import.js.map +1 -1
  124. package/esm/cli/app/app-list.js +9 -15
  125. package/esm/cli/app/app-list.js.map +1 -1
  126. package/esm/cli/app/app.js +8 -10
  127. package/esm/cli/app/app.js.map +1 -1
  128. package/esm/cli/conn/conn-delete.js +6 -8
  129. package/esm/cli/conn/conn-delete.js.map +1 -1
  130. package/esm/cli/conn/conn-describe.js +7 -8
  131. package/esm/cli/conn/conn-describe.js.map +1 -1
  132. package/esm/cli/conn/conn-list.js +7 -8
  133. package/esm/cli/conn/conn-list.js.map +1 -1
  134. package/esm/cli/conn/conn-save.js +15 -21
  135. package/esm/cli/conn/conn-save.js.map +1 -1
  136. package/esm/cli/conn/conn.js +10 -8
  137. package/esm/cli/conn/conn.js.map +1 -1
  138. package/esm/cli/email/email-template-export.js +8 -15
  139. package/esm/cli/email/email-template-export.js.map +1 -1
  140. package/esm/cli/email/email-template-import.js +8 -15
  141. package/esm/cli/email/email-template-import.js.map +1 -1
  142. package/esm/cli/email/email-template-list.js +9 -15
  143. package/esm/cli/email/email-template-list.js.map +1 -1
  144. package/esm/cli/email/email-template.js +6 -6
  145. package/esm/cli/email/email-template.js.map +1 -1
  146. package/esm/cli/email/email.js +2 -2
  147. package/esm/cli/email/email.js.map +1 -1
  148. package/esm/cli/esv/esv-apply.js +9 -15
  149. package/esm/cli/esv/esv-apply.js.map +1 -1
  150. package/esm/cli/esv/esv-secret-create.js +9 -15
  151. package/esm/cli/esv/esv-secret-create.js.map +1 -1
  152. package/esm/cli/esv/esv-secret-delete.js +8 -15
  153. package/esm/cli/esv/esv-secret-delete.js.map +1 -1
  154. package/esm/cli/esv/esv-secret-describe.js +9 -15
  155. package/esm/cli/esv/esv-secret-describe.js.map +1 -1
  156. package/esm/cli/esv/esv-secret-export.js +9 -15
  157. package/esm/cli/esv/esv-secret-export.js.map +1 -1
  158. package/esm/cli/esv/esv-secret-import.js +9 -15
  159. package/esm/cli/esv/esv-secret-import.js.map +1 -1
  160. package/esm/cli/esv/esv-secret-list.js +9 -15
  161. package/esm/cli/esv/esv-secret-list.js.map +1 -1
  162. package/esm/cli/esv/esv-secret-set.js +9 -15
  163. package/esm/cli/esv/esv-secret-set.js.map +1 -1
  164. package/esm/cli/esv/esv-secret-version-activate.js +8 -15
  165. package/esm/cli/esv/esv-secret-version-activate.js.map +1 -1
  166. package/esm/cli/esv/esv-secret-version-create.js +9 -15
  167. package/esm/cli/esv/esv-secret-version-create.js.map +1 -1
  168. package/esm/cli/esv/esv-secret-version-deactivate.js +8 -15
  169. package/esm/cli/esv/esv-secret-version-deactivate.js.map +1 -1
  170. package/esm/cli/esv/esv-secret-version-delete.js +8 -15
  171. package/esm/cli/esv/esv-secret-version-delete.js.map +1 -1
  172. package/esm/cli/esv/esv-secret-version-list.js +9 -15
  173. package/esm/cli/esv/esv-secret-version-list.js.map +1 -1
  174. package/esm/cli/esv/esv-secret-version.js +8 -8
  175. package/esm/cli/esv/esv-secret-version.js.map +1 -1
  176. package/esm/cli/esv/esv-secret.js +11 -11
  177. package/esm/cli/esv/esv-secret.js.map +1 -1
  178. package/esm/cli/esv/esv-variable-create.js +8 -15
  179. package/esm/cli/esv/esv-variable-create.js.map +1 -1
  180. package/esm/cli/esv/esv-variable-delete.js +8 -15
  181. package/esm/cli/esv/esv-variable-delete.js.map +1 -1
  182. package/esm/cli/esv/esv-variable-describe.js +9 -15
  183. package/esm/cli/esv/esv-variable-describe.js.map +1 -1
  184. package/esm/cli/esv/esv-variable-export.js +9 -15
  185. package/esm/cli/esv/esv-variable-export.js.map +1 -1
  186. package/esm/cli/esv/esv-variable-import.js +9 -15
  187. package/esm/cli/esv/esv-variable-import.js.map +1 -1
  188. package/esm/cli/esv/esv-variable-list.js +9 -15
  189. package/esm/cli/esv/esv-variable-list.js.map +1 -1
  190. package/esm/cli/esv/esv-variable-set.js +7 -15
  191. package/esm/cli/esv/esv-variable-set.js.map +1 -1
  192. package/esm/cli/esv/esv-variable.js +10 -10
  193. package/esm/cli/esv/esv-variable.js.map +1 -1
  194. package/esm/cli/esv/esv.js +5 -6
  195. package/esm/cli/esv/esv.js.map +1 -1
  196. package/esm/cli/idm/idm-count.js +9 -15
  197. package/esm/cli/idm/idm-count.js.map +1 -1
  198. package/esm/cli/idm/idm-export.js +9 -16
  199. package/esm/cli/idm/idm-export.js.map +1 -1
  200. package/esm/cli/idm/idm-import.js +9 -16
  201. package/esm/cli/idm/idm-import.js.map +1 -1
  202. package/esm/cli/idm/idm-list.js +8 -15
  203. package/esm/cli/idm/idm-list.js.map +1 -1
  204. package/esm/cli/idm/idm.js +6 -9
  205. package/esm/cli/idm/idm.js.map +1 -1
  206. package/esm/cli/idp/idp-export.js +8 -15
  207. package/esm/cli/idp/idp-export.js.map +1 -1
  208. package/esm/cli/idp/idp-import.js +9 -16
  209. package/esm/cli/idp/idp-import.js.map +1 -1
  210. package/esm/cli/idp/idp-list.js +8 -15
  211. package/esm/cli/idp/idp-list.js.map +1 -1
  212. package/esm/cli/idp/idp.js +5 -6
  213. package/esm/cli/idp/idp.js.map +1 -1
  214. package/esm/cli/info/info.js +5 -12
  215. package/esm/cli/info/info.js.map +1 -1
  216. package/esm/cli/journey/journey-delete.js +8 -15
  217. package/esm/cli/journey/journey-delete.js.map +1 -1
  218. package/esm/cli/journey/journey-describe.js +10 -18
  219. package/esm/cli/journey/journey-describe.js.map +1 -1
  220. package/esm/cli/journey/journey-disable.js +9 -16
  221. package/esm/cli/journey/journey-disable.js.map +1 -1
  222. package/esm/cli/journey/journey-enable.js +8 -15
  223. package/esm/cli/journey/journey-enable.js.map +1 -1
  224. package/esm/cli/journey/journey-export.js +8 -15
  225. package/esm/cli/journey/journey-export.js.map +1 -1
  226. package/esm/cli/journey/journey-import.js +8 -15
  227. package/esm/cli/journey/journey-import.js.map +1 -1
  228. package/esm/cli/journey/journey-list.js +9 -15
  229. package/esm/cli/journey/journey-list.js.map +1 -1
  230. package/esm/cli/journey/journey-prune.js +8 -15
  231. package/esm/cli/journey/journey-prune.js.map +1 -1
  232. package/esm/cli/journey/journey.js +10 -11
  233. package/esm/cli/journey/journey.js.map +1 -1
  234. package/esm/cli/logging/logs-fetch.js +14 -19
  235. package/esm/cli/logging/logs-fetch.js.map +1 -1
  236. package/esm/cli/logging/logs-list.js +17 -26
  237. package/esm/cli/logging/logs-list.js.map +1 -1
  238. package/esm/cli/logging/logs-tail.js +14 -19
  239. package/esm/cli/logging/logs-tail.js.map +1 -1
  240. package/esm/cli/logging/logs.js +7 -6
  241. package/esm/cli/logging/logs.js.map +1 -1
  242. package/esm/cli/realm/realm-add-custom-domain.js +10 -16
  243. package/esm/cli/realm/realm-add-custom-domain.js.map +1 -1
  244. package/esm/cli/realm/realm-describe.js +9 -16
  245. package/esm/cli/realm/realm-describe.js.map +1 -1
  246. package/esm/cli/realm/realm-list.js +9 -15
  247. package/esm/cli/realm/realm-list.js.map +1 -1
  248. package/esm/cli/realm/realm-remove-custom-domain.js +10 -16
  249. package/esm/cli/realm/realm-remove-custom-domain.js.map +1 -1
  250. package/esm/cli/realm/realm.js +7 -8
  251. package/esm/cli/realm/realm.js.map +1 -1
  252. package/esm/cli/saml/saml-cot-export.js +8 -15
  253. package/esm/cli/saml/saml-cot-export.js.map +1 -1
  254. package/esm/cli/saml/saml-cot-import.js +9 -16
  255. package/esm/cli/saml/saml-cot-import.js.map +1 -1
  256. package/esm/cli/saml/saml-cot-list.js +9 -15
  257. package/esm/cli/saml/saml-cot-list.js.map +1 -1
  258. package/esm/cli/saml/saml-cot.js +6 -6
  259. package/esm/cli/saml/saml-cot.js.map +1 -1
  260. package/esm/cli/saml/saml-delete.js +8 -15
  261. package/esm/cli/saml/saml-delete.js.map +1 -1
  262. package/esm/cli/saml/saml-describe.js +9 -15
  263. package/esm/cli/saml/saml-describe.js.map +1 -1
  264. package/esm/cli/saml/saml-export.js +9 -16
  265. package/esm/cli/saml/saml-export.js.map +1 -1
  266. package/esm/cli/saml/saml-import.js +11 -18
  267. package/esm/cli/saml/saml-import.js.map +1 -1
  268. package/esm/cli/saml/saml-list.js +10 -16
  269. package/esm/cli/saml/saml-list.js.map +1 -1
  270. package/esm/cli/saml/saml-metadata-export.js +8 -15
  271. package/esm/cli/saml/saml-metadata-export.js.map +1 -1
  272. package/esm/cli/saml/saml-metadata.js +4 -4
  273. package/esm/cli/saml/saml-metadata.js.map +1 -1
  274. package/esm/cli/saml/saml.js +9 -10
  275. package/esm/cli/saml/saml.js.map +1 -1
  276. package/esm/cli/script/script-delete.js +9 -15
  277. package/esm/cli/script/script-delete.js.map +1 -1
  278. package/esm/cli/script/script-describe.js +9 -15
  279. package/esm/cli/script/script-describe.js.map +1 -1
  280. package/esm/cli/script/script-export.js +8 -15
  281. package/esm/cli/script/script-export.js.map +1 -1
  282. package/esm/cli/script/script-import.js +9 -15
  283. package/esm/cli/script/script-import.js.map +1 -1
  284. package/esm/cli/script/script-list.js +9 -15
  285. package/esm/cli/script/script-list.js.map +1 -1
  286. package/esm/cli/script/script.js +7 -8
  287. package/esm/cli/script/script.js.map +1 -1
  288. package/esm/cli/service/service-delete.js +7 -14
  289. package/esm/cli/service/service-delete.js.map +1 -1
  290. package/esm/cli/service/service-export.js +7 -14
  291. package/esm/cli/service/service-export.js.map +1 -1
  292. package/esm/cli/service/service-import.js +7 -14
  293. package/esm/cli/service/service-import.js.map +1 -1
  294. package/esm/cli/service/service-list.js +8 -14
  295. package/esm/cli/service/service-list.js.map +1 -1
  296. package/esm/cli/service/service.js +6 -7
  297. package/esm/cli/service/service.js.map +1 -1
  298. package/esm/cli/theme/theme-delete.js +10 -17
  299. package/esm/cli/theme/theme-delete.js.map +1 -1
  300. package/esm/cli/theme/theme-export.js +9 -16
  301. package/esm/cli/theme/theme-export.js.map +1 -1
  302. package/esm/cli/theme/theme-import.js +10 -17
  303. package/esm/cli/theme/theme-import.js.map +1 -1
  304. package/esm/cli/theme/theme-list.js +9 -15
  305. package/esm/cli/theme/theme-list.js.map +1 -1
  306. package/esm/cli/theme/theme.js +6 -7
  307. package/esm/cli/theme/theme.js.map +1 -1
  308. package/esm/ops/JourneyOps.js +2 -1
  309. package/esm/ops/JourneyOps.js.map +1 -1
  310. package/esm/utils/Console.js +6 -6
  311. package/esm/utils/Console.js.map +1 -1
  312. package/package.json +2 -2
  313. package/esm/cli/cmd_common.js +0 -79
  314. package/esm/cli/cmd_common.js.map +0 -1
@@ -1,15 +1,13 @@
1
- import { Command } from 'commander';
2
- import { ConnectionProfile, state } from '@rockcarver/frodo-lib';
3
- import * as common from '../cmd_common.js';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { ConnectionProfile } from '@rockcarver/frodo-lib';
4
3
  const {
5
4
  deleteConnectionProfile
6
5
  } = ConnectionProfile;
7
- const program = new Command('frodo conn delete');
8
- program.description('Delete connection profiles.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addOption(common.verboseOption).addOption(common.debugOption).action(
6
+ const program = new FrodoCommand('frodo conn delete', ['realm', 'username', 'password', 'type', 'insecure', 'curlirize']);
7
+ program.description('Delete connection profiles.').action(
9
8
  // implement command logic inside action handler
10
- async (host, options) => {
11
- state.default.session.setVerbose(options.verbose);
12
- state.default.session.setDebug(options.debug);
9
+ async (host, options, command) => {
10
+ command.handleDefaultArgsAndOpts(host, options, command);
13
11
  deleteConnectionProfile(host);
14
12
  }
15
13
  // end command logic inside action handler
@@ -1 +1 @@
1
- {"version":3,"file":"conn-delete.js","names":["Command","ConnectionProfile","state","common","deleteConnectionProfile","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","addOption","verboseOption","debugOption","action","host","options","default","session","setVerbose","verbose","setDebug","debug","parse"],"sources":["cli/conn/conn-delete.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { ConnectionProfile, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\n\nconst { deleteConnectionProfile } = ConnectionProfile;\n\nconst program = new Command('frodo conn delete');\n\nprogram\n .description('Delete connection profiles.')\n .helpOption('-h, --help', 'Help')\n .showHelpAfterError()\n .addArgument(common.hostArgumentM)\n .addOption(common.verboseOption)\n .addOption(common.debugOption)\n .action(\n // implement command logic inside action handler\n async (host, options) => {\n state.default.session.setVerbose(options.verbose);\n state.default.session.setDebug(options.debug);\n deleteConnectionProfile(host);\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,WAAW;AACnC,SAASC,iBAAiB,EAAEC,KAAK,QAAQ,uBAAuB;AAChE,OAAO,KAAKC,MAAM,MAAM,kBAAkB;AAE1C,MAAM;EAAEC;AAAwB,CAAC,GAAGH,iBAAiB;AAErD,MAAMI,OAAO,GAAG,IAAIL,OAAO,CAAC,mBAAmB,CAAC;AAEhDK,OAAO,CACJC,WAAW,CAAC,6BAA6B,CAAC,CAC1CC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAChCC,kBAAkB,EAAE,CACpBC,WAAW,CAACN,MAAM,CAACO,aAAa,CAAC,CACjCC,SAAS,CAACR,MAAM,CAACS,aAAa,CAAC,CAC/BD,SAAS,CAACR,MAAM,CAACU,WAAW,CAAC,CAC7BC,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,OAAO,KAAK;EACvBd,KAAK,CAACe,OAAO,CAACC,OAAO,CAACC,UAAU,CAACH,OAAO,CAACI,OAAO,CAAC;EACjDlB,KAAK,CAACe,OAAO,CAACC,OAAO,CAACG,QAAQ,CAACL,OAAO,CAACM,KAAK,CAAC;EAC7ClB,uBAAuB,CAACW,IAAI,CAAC;AAC/B;AACA;AAAA,CACD;;AAEHV,OAAO,CAACkB,KAAK,EAAE"}
1
+ {"version":3,"file":"conn-delete.js","names":["FrodoCommand","ConnectionProfile","deleteConnectionProfile","program","description","action","host","options","command","handleDefaultArgsAndOpts","parse"],"sources":["cli/conn/conn-delete.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { ConnectionProfile } from '@rockcarver/frodo-lib';\n\nconst { deleteConnectionProfile } = ConnectionProfile;\n\nconst program = new FrodoCommand('frodo conn delete', [\n 'realm',\n 'username',\n 'password',\n 'type',\n 'insecure',\n 'curlirize',\n]);\n\nprogram.description('Delete connection profiles.').action(\n // implement command logic inside action handler\n async (host, options, command) => {\n command.handleDefaultArgsAndOpts(host, options, command);\n deleteConnectionProfile(host);\n }\n // end command logic inside action handler\n);\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,iBAAiB,QAAQ,uBAAuB;AAEzD,MAAM;EAAEC;AAAwB,CAAC,GAAGD,iBAAiB;AAErD,MAAME,OAAO,GAAG,IAAIH,YAAY,CAAC,mBAAmB,EAAE,CACpD,OAAO,EACP,UAAU,EACV,UAAU,EACV,MAAM,EACN,UAAU,EACV,WAAW,CACZ,CAAC;AAEFG,OAAO,CAACC,WAAW,CAAC,6BAA6B,CAAC,CAACC,MAAM;AACvD;AACA,OAAOC,IAAI,EAAEC,OAAO,EAAEC,OAAO,KAAK;EAChCA,OAAO,CAACC,wBAAwB,CAACH,IAAI,EAAEC,OAAO,EAAEC,OAAO,CAAC;EACxDN,uBAAuB,CAACI,IAAI,CAAC;AAC/B;AACA;AAAA,CACD;;AAEDH,OAAO,CAACO,KAAK,EAAE"}
@@ -1,15 +1,14 @@
1
- import { Command, Option } from 'commander';
2
- import { ConnectionProfile, state } from '@rockcarver/frodo-lib';
3
- import * as common from '../cmd_common.js';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
3
+ import { ConnectionProfile } from '@rockcarver/frodo-lib';
4
4
  const {
5
5
  describeConnectionProfile
6
6
  } = ConnectionProfile;
7
- const program = new Command('frodo conn describe');
8
- program.description('Describe connection profile.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addOption(common.verboseOption).addOption(common.debugOption).addOption(new Option('--show-secrets', 'Show passwords and secrets.')).action(
7
+ const program = new FrodoCommand('frodo conn describe', ['realm', 'username', 'password', 'type', 'insecure', 'curlirize']);
8
+ program.description('Describe connection profile.').addOption(new Option('--show-secrets', 'Show passwords and secrets.')).action(
9
9
  // implement command logic inside action handler
10
- async (host, options) => {
11
- state.default.session.setVerbose(options.verbose);
12
- state.default.session.setDebug(options.debug);
10
+ async (host, options, command) => {
11
+ command.handleDefaultArgsAndOpts(host, options, command);
13
12
  describeConnectionProfile(host, options.showSecrets);
14
13
  }
15
14
  // end command logic inside action handler
@@ -1 +1 @@
1
- {"version":3,"file":"conn-describe.js","names":["Command","Option","ConnectionProfile","state","common","describeConnectionProfile","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","addOption","verboseOption","debugOption","action","host","options","default","session","setVerbose","verbose","setDebug","debug","showSecrets","parse"],"sources":["cli/conn/conn-describe.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { ConnectionProfile, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\n\nconst { describeConnectionProfile } = ConnectionProfile;\n\nconst program = new Command('frodo conn describe');\n\nprogram\n .description('Describe connection profile.')\n .helpOption('-h, --help', 'Help')\n .showHelpAfterError()\n .addArgument(common.hostArgumentM)\n .addOption(common.verboseOption)\n .addOption(common.debugOption)\n .addOption(new Option('--show-secrets', 'Show passwords and secrets.'))\n .action(\n // implement command logic inside action handler\n async (host, options) => {\n state.default.session.setVerbose(options.verbose);\n state.default.session.setDebug(options.debug);\n describeConnectionProfile(host, options.showSecrets);\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAO,EAAEC,MAAM,QAAQ,WAAW;AAC3C,SAASC,iBAAiB,EAAEC,KAAK,QAAQ,uBAAuB;AAChE,OAAO,KAAKC,MAAM,MAAM,kBAAkB;AAE1C,MAAM;EAAEC;AAA0B,CAAC,GAAGH,iBAAiB;AAEvD,MAAMI,OAAO,GAAG,IAAIN,OAAO,CAAC,qBAAqB,CAAC;AAElDM,OAAO,CACJC,WAAW,CAAC,8BAA8B,CAAC,CAC3CC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAChCC,kBAAkB,EAAE,CACpBC,WAAW,CAACN,MAAM,CAACO,aAAa,CAAC,CACjCC,SAAS,CAACR,MAAM,CAACS,aAAa,CAAC,CAC/BD,SAAS,CAACR,MAAM,CAACU,WAAW,CAAC,CAC7BF,SAAS,CAAC,IAAIX,MAAM,CAAC,gBAAgB,EAAE,6BAA6B,CAAC,CAAC,CACtEc,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,OAAO,KAAK;EACvBd,KAAK,CAACe,OAAO,CAACC,OAAO,CAACC,UAAU,CAACH,OAAO,CAACI,OAAO,CAAC;EACjDlB,KAAK,CAACe,OAAO,CAACC,OAAO,CAACG,QAAQ,CAACL,OAAO,CAACM,KAAK,CAAC;EAC7ClB,yBAAyB,CAACW,IAAI,EAAEC,OAAO,CAACO,WAAW,CAAC;AACtD;AACA;AAAA,CACD;;AAEHlB,OAAO,CAACmB,KAAK,EAAE"}
1
+ {"version":3,"file":"conn-describe.js","names":["FrodoCommand","Option","ConnectionProfile","describeConnectionProfile","program","description","addOption","action","host","options","command","handleDefaultArgsAndOpts","showSecrets","parse"],"sources":["cli/conn/conn-describe.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { ConnectionProfile } from '@rockcarver/frodo-lib';\n\nconst { describeConnectionProfile } = ConnectionProfile;\n\nconst program = new FrodoCommand('frodo conn describe', [\n 'realm',\n 'username',\n 'password',\n 'type',\n 'insecure',\n 'curlirize',\n]);\n\nprogram\n .description('Describe connection profile.')\n .addOption(new Option('--show-secrets', 'Show passwords and secrets.'))\n .action(\n // implement command logic inside action handler\n async (host, options, command) => {\n command.handleDefaultArgsAndOpts(host, options, command);\n describeConnectionProfile(host, options.showSecrets);\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,iBAAiB,QAAQ,uBAAuB;AAEzD,MAAM;EAAEC;AAA0B,CAAC,GAAGD,iBAAiB;AAEvD,MAAME,OAAO,GAAG,IAAIJ,YAAY,CAAC,qBAAqB,EAAE,CACtD,OAAO,EACP,UAAU,EACV,UAAU,EACV,MAAM,EACN,UAAU,EACV,WAAW,CACZ,CAAC;AAEFI,OAAO,CACJC,WAAW,CAAC,8BAA8B,CAAC,CAC3CC,SAAS,CAAC,IAAIL,MAAM,CAAC,gBAAgB,EAAE,6BAA6B,CAAC,CAAC,CACtEM,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,OAAO,EAAEC,OAAO,KAAK;EAChCA,OAAO,CAACC,wBAAwB,CAACH,IAAI,EAAEC,OAAO,EAAEC,OAAO,CAAC;EACxDP,yBAAyB,CAACK,IAAI,EAAEC,OAAO,CAACG,WAAW,CAAC;AACtD;AACA;AAAA,CACD;;AAEHR,OAAO,CAACS,KAAK,EAAE"}
@@ -1,15 +1,14 @@
1
- import { Command, Option } from 'commander';
2
- import { ConnectionProfile, state } from '@rockcarver/frodo-lib';
3
- import * as common from '../cmd_common.js';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
3
+ import { ConnectionProfile } from '@rockcarver/frodo-lib';
4
4
  const {
5
5
  listConnectionProfiles
6
6
  } = ConnectionProfile;
7
- const program = new Command('frodo conn list');
8
- program.description('List connection profiles.').helpOption('-h, --help', 'Help').showHelpAfterError().addOption(common.verboseOption).addOption(common.debugOption).addOption(new Option('-l, --long', 'Long with all fields.').default(false, 'false')).action(
7
+ const program = new FrodoCommand('frodo conn list', ['host', 'realm', 'username', 'password', 'type', 'insecure', 'curlirize']);
8
+ program.description('List connection profiles.').addOption(new Option('-l, --long', 'Long with all fields.').default(false, 'false')).action(
9
9
  // implement command logic inside action handler
10
- async options => {
11
- state.default.session.setVerbose(options.verbose);
12
- state.default.session.setDebug(options.debug);
10
+ async (options, command) => {
11
+ command.handleDefaultArgsAndOpts(options, command);
13
12
  listConnectionProfiles(options.long);
14
13
  }
15
14
  // end command logic inside action handler
@@ -1 +1 @@
1
- {"version":3,"file":"conn-list.js","names":["Command","Option","ConnectionProfile","state","common","listConnectionProfiles","program","description","helpOption","showHelpAfterError","addOption","verboseOption","debugOption","default","action","options","session","setVerbose","verbose","setDebug","debug","long","parse"],"sources":["cli/conn/conn-list.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { ConnectionProfile, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\n\nconst { listConnectionProfiles } = ConnectionProfile;\n\nconst program = new Command('frodo conn list');\n\nprogram\n .description('List connection profiles.')\n .helpOption('-h, --help', 'Help')\n .showHelpAfterError()\n .addOption(common.verboseOption)\n .addOption(common.debugOption)\n .addOption(\n new Option('-l, --long', 'Long with all fields.').default(false, 'false')\n )\n .action(\n // implement command logic inside action handler\n async (options) => {\n state.default.session.setVerbose(options.verbose);\n state.default.session.setDebug(options.debug);\n listConnectionProfiles(options.long);\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAO,EAAEC,MAAM,QAAQ,WAAW;AAC3C,SAASC,iBAAiB,EAAEC,KAAK,QAAQ,uBAAuB;AAChE,OAAO,KAAKC,MAAM,MAAM,kBAAkB;AAE1C,MAAM;EAAEC;AAAuB,CAAC,GAAGH,iBAAiB;AAEpD,MAAMI,OAAO,GAAG,IAAIN,OAAO,CAAC,iBAAiB,CAAC;AAE9CM,OAAO,CACJC,WAAW,CAAC,2BAA2B,CAAC,CACxCC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAChCC,kBAAkB,EAAE,CACpBC,SAAS,CAACN,MAAM,CAACO,aAAa,CAAC,CAC/BD,SAAS,CAACN,MAAM,CAACQ,WAAW,CAAC,CAC7BF,SAAS,CACR,IAAIT,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACY,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAC1E,CACAC,MAAM;AACL;AACA,MAAOC,OAAO,IAAK;EACjBZ,KAAK,CAACU,OAAO,CAACG,OAAO,CAACC,UAAU,CAACF,OAAO,CAACG,OAAO,CAAC;EACjDf,KAAK,CAACU,OAAO,CAACG,OAAO,CAACG,QAAQ,CAACJ,OAAO,CAACK,KAAK,CAAC;EAC7Cf,sBAAsB,CAACU,OAAO,CAACM,IAAI,CAAC;AACtC;AACA;AAAA,CACD;;AAEHf,OAAO,CAACgB,KAAK,EAAE"}
1
+ {"version":3,"file":"conn-list.js","names":["FrodoCommand","Option","ConnectionProfile","listConnectionProfiles","program","description","addOption","default","action","options","command","handleDefaultArgsAndOpts","long","parse"],"sources":["cli/conn/conn-list.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { ConnectionProfile } from '@rockcarver/frodo-lib';\n\nconst { listConnectionProfiles } = ConnectionProfile;\n\nconst program = new FrodoCommand('frodo conn list', [\n 'host',\n 'realm',\n 'username',\n 'password',\n 'type',\n 'insecure',\n 'curlirize',\n]);\n\nprogram\n .description('List connection profiles.')\n .addOption(\n new Option('-l, --long', 'Long with all fields.').default(false, 'false')\n )\n .action(\n // implement command logic inside action handler\n async (options, command) => {\n command.handleDefaultArgsAndOpts(options, command);\n listConnectionProfiles(options.long);\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,iBAAiB,QAAQ,uBAAuB;AAEzD,MAAM;EAAEC;AAAuB,CAAC,GAAGD,iBAAiB;AAEpD,MAAME,OAAO,GAAG,IAAIJ,YAAY,CAAC,iBAAiB,EAAE,CAClD,MAAM,EACN,OAAO,EACP,UAAU,EACV,UAAU,EACV,MAAM,EACN,UAAU,EACV,WAAW,CACZ,CAAC;AAEFI,OAAO,CACJC,WAAW,CAAC,2BAA2B,CAAC,CACxCC,SAAS,CACR,IAAIL,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACM,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAC1E,CACAC,MAAM;AACL;AACA,OAAOC,OAAO,EAAEC,OAAO,KAAK;EAC1BA,OAAO,CAACC,wBAAwB,CAACF,OAAO,EAAEC,OAAO,CAAC;EAClDP,sBAAsB,CAACM,OAAO,CAACG,IAAI,CAAC;AACtC;AACA;AAAA,CACD;;AAEHR,OAAO,CAACS,KAAK,EAAE"}
@@ -1,6 +1,7 @@
1
- import { Command, Option } from 'commander';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
3
+ import { apiKeyArgument, apiSecretArgument } from './conn';
2
4
  import { Authenticate, ConnectionProfile, ServiceAccount, state, constants } from '@rockcarver/frodo-lib';
3
- import * as common from '../cmd_common.js';
4
5
  import { verboseMessage, printMessage } from '../../utils/Console';
5
6
  import { addExistingServiceAccount } from '../../ops/ConnectionProfileOps.js';
6
7
  const {
@@ -13,30 +14,23 @@ const {
13
14
  const {
14
15
  isServiceAccountsFeatureAvailable
15
16
  } = ServiceAccount;
16
- const program = new Command('frodo conn save');
17
- program.alias('add').description('Save connection profiles.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.userArgument).addArgument(common.passwordArgument).addArgument(common.apiKeyArgument).addArgument(common.apiSecretArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(common.verboseOption).addOption(common.debugOption).addOption(common.curlirizeOption).addOption(new Option('--sa-id <uuid>', "Service account's uuid. If specified, must also include --sa-jwk-file. Ignored with --no-sa.")).addOption(new Option('--sa-jwk-file <file>', "File containing the service account's java web key (jwk). Jwk must contain private key! If specified, must also include --sa-id. Ignored with --no-sa.")).addOption(new Option('--no-sa', 'Do not add service account.')).addOption(new Option('--no-validate', 'Do not validate connection.')).addOption(new Option('--authentication-service [service]', 'Name of the authentication service/tree to use.')).addOption(new Option('--authentication-header-overrides [headers]', 'Map of headers: {"host":"am.example.com:8081"}.')).action(
17
+ const program = new FrodoCommand('frodo conn save', ['realm']);
18
+ program.alias('add').description('Save connection profiles.').addArgument(apiKeyArgument).addArgument(apiSecretArgument).addOption(new Option('--sa-id <uuid>', "Service account's uuid. If specified, must also include --sa-jwk-file. Ignored with --no-sa.")).addOption(new Option('--sa-jwk-file <file>', "File containing the service account's java web key (jwk). Jwk must contain private key! If specified, must also include --sa-id. Ignored with --no-sa.")).addOption(new Option('--no-sa', 'Do not add service account.')).addOption(new Option('--no-validate', 'Do not validate connection.')).addOption(new Option('--authentication-service [service]', 'Name of the authentication service/tree to use.')).addOption(new Option('--authentication-header-overrides [headers]', 'Map of headers: {"host":"am.example.com:8081"}.')).action(
18
19
  // implement command logic inside action handler
19
- async (host, user, password, key, secret, options) => {
20
- state.default.session.setTenant(host);
21
- state.default.session.setUsername(user);
22
- state.default.session.setPassword(password);
23
- state.default.session.setLogApiKey(key);
24
- state.default.session.setLogApiSecret(secret);
25
- state.default.session.setDeploymentType(options.type);
26
- state.default.session.setAllowInsecureConnection(options.insecure);
27
- state.default.session.setVerbose(options.verbose);
28
- state.default.session.setDebug(options.debug);
29
- state.default.session.setCurlirize(options.curlirize);
20
+ async (host, user, password, key, secret, options, command) => {
21
+ command.handleDefaultArgsAndOpts(host, user, password, key, secret, options, command);
22
+ state.setLogApiKey(key);
23
+ state.setLogApiSecret(secret);
30
24
  if (options.authenticationService) {
31
- state.default.session.setAuthenticationService(options.authenticationService);
25
+ state.setAuthenticationService(options.authenticationService);
32
26
  }
33
27
  if (options.authenticationHeaderOverrides) {
34
- state.default.session.setAuthenticationHeaderOverrides(JSON.parse(options.authenticationHeaderOverrides));
28
+ state.setAuthenticationHeaderOverrides(JSON.parse(options.authenticationHeaderOverrides));
35
29
  }
36
30
  if (options.validate && (await getTokens()) || !options.validate) {
37
- verboseMessage(`Saving connection profile for tenant ${state.default.session.getTenant()}...`);
31
+ verboseMessage(`Saving connection profile for tenant ${state.getTenant()}...`);
38
32
  // if cloud deployment add service account
39
- if (options.validate && state.default.session.getDeploymentType() === constants.CLOUD_DEPLOYMENT_TYPE_KEY && options.sa && (await isServiceAccountsFeatureAvailable())) {
33
+ if (options.validate && state.getDeploymentType() === constants.CLOUD_DEPLOYMENT_TYPE_KEY && options.sa && (await isServiceAccountsFeatureAvailable())) {
40
34
  // validate and add existing service account
41
35
  if (options.saId && options.saJwkFile) {
42
36
  verboseMessage(`Validating and adding service account...`);
@@ -45,7 +39,7 @@ async (host, user, password, key, secret, options) => {
45
39
  }
46
40
  }
47
41
  // add new service account if none already exists in the profile
48
- else if (!state.default.session.getServiceAccountId()) {
42
+ else if (!state.getServiceAccountId()) {
49
43
  try {
50
44
  verboseMessage(`Creating service account...`);
51
45
  const sa = await addNewServiceAccount();
@@ -63,7 +57,7 @@ async (host, user, password, key, secret, options) => {
63
57
  addExistingServiceAccount(options.saId, options.saJwkFile, options.validate);
64
58
  }
65
59
  if (await saveConnectionProfile(host)) {
66
- printMessage(`Saved connection profile ${state.default.session.getTenant()}`);
60
+ printMessage(`Saved connection profile ${state.getTenant()}`);
67
61
  } else {
68
62
  process.exitCode = 1;
69
63
  }
@@ -1 +1 @@
1
- {"version":3,"file":"conn-save.js","names":["Command","Option","Authenticate","ConnectionProfile","ServiceAccount","state","constants","common","verboseMessage","printMessage","addExistingServiceAccount","getTokens","saveConnectionProfile","addNewServiceAccount","isServiceAccountsFeatureAvailable","program","alias","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","userArgument","passwordArgument","apiKeyArgument","apiSecretArgument","addOption","deploymentOption","insecureOption","verboseOption","debugOption","curlirizeOption","action","host","user","password","key","secret","options","default","session","setTenant","setUsername","setPassword","setLogApiKey","setLogApiSecret","setDeploymentType","type","setAllowInsecureConnection","insecure","setVerbose","verbose","setDebug","debug","setCurlirize","curlirize","authenticationService","setAuthenticationService","authenticationHeaderOverrides","setAuthenticationHeaderOverrides","JSON","parse","validate","getTenant","getDeploymentType","CLOUD_DEPLOYMENT_TYPE_KEY","sa","saId","saJwkFile","getServiceAccountId","name","_id","error","response","data","message","process","exitCode"],"sources":["cli/conn/conn-save.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport {\n Authenticate,\n ConnectionProfile,\n ServiceAccount,\n state,\n constants,\n} from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\nimport { verboseMessage, printMessage } from '../../utils/Console';\nimport { addExistingServiceAccount } from '../../ops/ConnectionProfileOps.js';\n\nconst { getTokens } = Authenticate;\nconst { saveConnectionProfile, addNewServiceAccount } = ConnectionProfile;\nconst { isServiceAccountsFeatureAvailable } = ServiceAccount;\n\nconst program = new Command('frodo conn save');\n\nprogram\n .alias('add')\n .description('Save connection profiles.')\n .helpOption('-h, --help', 'Help')\n .showHelpAfterError()\n .addArgument(common.hostArgumentM)\n .addArgument(common.userArgument)\n .addArgument(common.passwordArgument)\n .addArgument(common.apiKeyArgument)\n .addArgument(common.apiSecretArgument)\n .addOption(common.deploymentOption)\n .addOption(common.insecureOption)\n .addOption(common.verboseOption)\n .addOption(common.debugOption)\n .addOption(common.curlirizeOption)\n .addOption(\n new Option(\n '--sa-id <uuid>',\n \"Service account's uuid. If specified, must also include --sa-jwk-file. Ignored with --no-sa.\"\n )\n )\n .addOption(\n new Option(\n '--sa-jwk-file <file>',\n \"File containing the service account's java web key (jwk). Jwk must contain private key! If specified, must also include --sa-id. Ignored with --no-sa.\"\n )\n )\n .addOption(new Option('--no-sa', 'Do not add service account.'))\n .addOption(new Option('--no-validate', 'Do not validate connection.'))\n .addOption(\n new Option(\n '--authentication-service [service]',\n 'Name of the authentication service/tree to use.'\n )\n )\n .addOption(\n new Option(\n '--authentication-header-overrides [headers]',\n 'Map of headers: {\"host\":\"am.example.com:8081\"}.'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, user, password, key, secret, options) => {\n state.default.session.setTenant(host);\n state.default.session.setUsername(user);\n state.default.session.setPassword(password);\n state.default.session.setLogApiKey(key);\n state.default.session.setLogApiSecret(secret);\n state.default.session.setDeploymentType(options.type);\n state.default.session.setAllowInsecureConnection(options.insecure);\n state.default.session.setVerbose(options.verbose);\n state.default.session.setDebug(options.debug);\n state.default.session.setCurlirize(options.curlirize);\n if (options.authenticationService) {\n state.default.session.setAuthenticationService(\n options.authenticationService\n );\n }\n if (options.authenticationHeaderOverrides) {\n state.default.session.setAuthenticationHeaderOverrides(\n JSON.parse(options.authenticationHeaderOverrides)\n );\n }\n if ((options.validate && (await getTokens())) || !options.validate) {\n verboseMessage(\n `Saving connection profile for tenant ${state.default.session.getTenant()}...`\n );\n // if cloud deployment add service account\n if (\n options.validate &&\n state.default.session.getDeploymentType() ===\n constants.CLOUD_DEPLOYMENT_TYPE_KEY &&\n options.sa &&\n (await isServiceAccountsFeatureAvailable())\n ) {\n // validate and add existing service account\n if (options.saId && options.saJwkFile) {\n verboseMessage(`Validating and adding service account...`);\n if (\n await addExistingServiceAccount(\n options.saId,\n options.saJwkFile,\n options.validate\n )\n ) {\n printMessage(\n `Validated and added service account with id ${options.saId} to profile.`\n );\n }\n }\n // add new service account if none already exists in the profile\n else if (!state.default.session.getServiceAccountId()) {\n try {\n verboseMessage(`Creating service account...`);\n const sa = await addNewServiceAccount();\n printMessage(\n `Created and added service account ${sa.name} with id ${sa._id} to profile.`\n );\n } catch (error) {\n printMessage(error.response?.data, 'error');\n printMessage(\n `Error creating service account: ${error.response?.data?.message}`,\n 'error'\n );\n process.exitCode = 1;\n }\n }\n }\n // add existing service account without validation\n else if (\n !options.validate &&\n options.saId &&\n options.saJwkFile &&\n options.sa\n ) {\n addExistingServiceAccount(\n options.saId,\n options.saJwkFile,\n options.validate\n );\n }\n if (await saveConnectionProfile(host)) {\n printMessage(\n `Saved connection profile ${state.default.session.getTenant()}`\n );\n } else {\n process.exitCode = 1;\n }\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAO,EAAEC,MAAM,QAAQ,WAAW;AAC3C,SACEC,YAAY,EACZC,iBAAiB,EACjBC,cAAc,EACdC,KAAK,EACLC,SAAS,QACJ,uBAAuB;AAC9B,OAAO,KAAKC,MAAM,MAAM,kBAAkB;AAC1C,SAASC,cAAc,EAAEC,YAAY,QAAQ,qBAAqB;AAClE,SAASC,yBAAyB,QAAQ,mCAAmC;AAE7E,MAAM;EAAEC;AAAU,CAAC,GAAGT,YAAY;AAClC,MAAM;EAAEU,qBAAqB;EAAEC;AAAqB,CAAC,GAAGV,iBAAiB;AACzE,MAAM;EAAEW;AAAkC,CAAC,GAAGV,cAAc;AAE5D,MAAMW,OAAO,GAAG,IAAIf,OAAO,CAAC,iBAAiB,CAAC;AAE9Ce,OAAO,CACJC,KAAK,CAAC,KAAK,CAAC,CACZC,WAAW,CAAC,2BAA2B,CAAC,CACxCC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAChCC,kBAAkB,EAAE,CACpBC,WAAW,CAACb,MAAM,CAACc,aAAa,CAAC,CACjCD,WAAW,CAACb,MAAM,CAACe,YAAY,CAAC,CAChCF,WAAW,CAACb,MAAM,CAACgB,gBAAgB,CAAC,CACpCH,WAAW,CAACb,MAAM,CAACiB,cAAc,CAAC,CAClCJ,WAAW,CAACb,MAAM,CAACkB,iBAAiB,CAAC,CACrCC,SAAS,CAACnB,MAAM,CAACoB,gBAAgB,CAAC,CAClCD,SAAS,CAACnB,MAAM,CAACqB,cAAc,CAAC,CAChCF,SAAS,CAACnB,MAAM,CAACsB,aAAa,CAAC,CAC/BH,SAAS,CAACnB,MAAM,CAACuB,WAAW,CAAC,CAC7BJ,SAAS,CAACnB,MAAM,CAACwB,eAAe,CAAC,CACjCL,SAAS,CACR,IAAIzB,MAAM,CACR,gBAAgB,EAChB,8FAA8F,CAC/F,CACF,CACAyB,SAAS,CACR,IAAIzB,MAAM,CACR,sBAAsB,EACtB,wJAAwJ,CACzJ,CACF,CACAyB,SAAS,CAAC,IAAIzB,MAAM,CAAC,SAAS,EAAE,6BAA6B,CAAC,CAAC,CAC/DyB,SAAS,CAAC,IAAIzB,MAAM,CAAC,eAAe,EAAE,6BAA6B,CAAC,CAAC,CACrEyB,SAAS,CACR,IAAIzB,MAAM,CACR,oCAAoC,EACpC,iDAAiD,CAClD,CACF,CACAyB,SAAS,CACR,IAAIzB,MAAM,CACR,6CAA6C,EAC7C,iDAAiD,CAClD,CACF,CACA+B,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,GAAG,EAAEC,MAAM,EAAEC,OAAO,KAAK;EACpDjC,KAAK,CAACkC,OAAO,CAACC,OAAO,CAACC,SAAS,CAACR,IAAI,CAAC;EACrC5B,KAAK,CAACkC,OAAO,CAACC,OAAO,CAACE,WAAW,CAACR,IAAI,CAAC;EACvC7B,KAAK,CAACkC,OAAO,CAACC,OAAO,CAACG,WAAW,CAACR,QAAQ,CAAC;EAC3C9B,KAAK,CAACkC,OAAO,CAACC,OAAO,CAACI,YAAY,CAACR,GAAG,CAAC;EACvC/B,KAAK,CAACkC,OAAO,CAACC,OAAO,CAACK,eAAe,CAACR,MAAM,CAAC;EAC7ChC,KAAK,CAACkC,OAAO,CAACC,OAAO,CAACM,iBAAiB,CAACR,OAAO,CAACS,IAAI,CAAC;EACrD1C,KAAK,CAACkC,OAAO,CAACC,OAAO,CAACQ,0BAA0B,CAACV,OAAO,CAACW,QAAQ,CAAC;EAClE5C,KAAK,CAACkC,OAAO,CAACC,OAAO,CAACU,UAAU,CAACZ,OAAO,CAACa,OAAO,CAAC;EACjD9C,KAAK,CAACkC,OAAO,CAACC,OAAO,CAACY,QAAQ,CAACd,OAAO,CAACe,KAAK,CAAC;EAC7ChD,KAAK,CAACkC,OAAO,CAACC,OAAO,CAACc,YAAY,CAAChB,OAAO,CAACiB,SAAS,CAAC;EACrD,IAAIjB,OAAO,CAACkB,qBAAqB,EAAE;IACjCnD,KAAK,CAACkC,OAAO,CAACC,OAAO,CAACiB,wBAAwB,CAC5CnB,OAAO,CAACkB,qBAAqB,CAC9B;EACH;EACA,IAAIlB,OAAO,CAACoB,6BAA6B,EAAE;IACzCrD,KAAK,CAACkC,OAAO,CAACC,OAAO,CAACmB,gCAAgC,CACpDC,IAAI,CAACC,KAAK,CAACvB,OAAO,CAACoB,6BAA6B,CAAC,CAClD;EACH;EACA,IAAKpB,OAAO,CAACwB,QAAQ,KAAK,MAAMnD,SAAS,EAAE,CAAC,IAAK,CAAC2B,OAAO,CAACwB,QAAQ,EAAE;IAClEtD,cAAc,CACX,wCAAuCH,KAAK,CAACkC,OAAO,CAACC,OAAO,CAACuB,SAAS,EAAG,KAAI,CAC/E;IACD;IACA,IACEzB,OAAO,CAACwB,QAAQ,IAChBzD,KAAK,CAACkC,OAAO,CAACC,OAAO,CAACwB,iBAAiB,EAAE,KACvC1D,SAAS,CAAC2D,yBAAyB,IACrC3B,OAAO,CAAC4B,EAAE,KACT,MAAMpD,iCAAiC,EAAE,CAAC,EAC3C;MACA;MACA,IAAIwB,OAAO,CAAC6B,IAAI,IAAI7B,OAAO,CAAC8B,SAAS,EAAE;QACrC5D,cAAc,CAAE,0CAAyC,CAAC;QAC1D,IACE,MAAME,yBAAyB,CAC7B4B,OAAO,CAAC6B,IAAI,EACZ7B,OAAO,CAAC8B,SAAS,EACjB9B,OAAO,CAACwB,QAAQ,CACjB,EACD;UACArD,YAAY,CACT,+CAA8C6B,OAAO,CAAC6B,IAAK,cAAa,CAC1E;QACH;MACF;MACA;MAAA,KACK,IAAI,CAAC9D,KAAK,CAACkC,OAAO,CAACC,OAAO,CAAC6B,mBAAmB,EAAE,EAAE;QACrD,IAAI;UACF7D,cAAc,CAAE,6BAA4B,CAAC;UAC7C,MAAM0D,EAAE,GAAG,MAAMrD,oBAAoB,EAAE;UACvCJ,YAAY,CACT,qCAAoCyD,EAAE,CAACI,IAAK,YAAWJ,EAAE,CAACK,GAAI,cAAa,CAC7E;QACH,CAAC,CAAC,OAAOC,KAAK,EAAE;UAAA;UACd/D,YAAY,oBAAC+D,KAAK,CAACC,QAAQ,oDAAd,gBAAgBC,IAAI,EAAE,OAAO,CAAC;UAC3CjE,YAAY,CACT,mCAAgC,oBAAE+D,KAAK,CAACC,QAAQ,8EAAd,iBAAgBC,IAAI,0DAApB,sBAAsBC,OAAQ,EAAC,EAClE,OAAO,CACR;UACDC,OAAO,CAACC,QAAQ,GAAG,CAAC;QACtB;MACF;IACF;IACA;IAAA,KACK,IACH,CAACvC,OAAO,CAACwB,QAAQ,IACjBxB,OAAO,CAAC6B,IAAI,IACZ7B,OAAO,CAAC8B,SAAS,IACjB9B,OAAO,CAAC4B,EAAE,EACV;MACAxD,yBAAyB,CACvB4B,OAAO,CAAC6B,IAAI,EACZ7B,OAAO,CAAC8B,SAAS,EACjB9B,OAAO,CAACwB,QAAQ,CACjB;IACH;IACA,IAAI,MAAMlD,qBAAqB,CAACqB,IAAI,CAAC,EAAE;MACrCxB,YAAY,CACT,4BAA2BJ,KAAK,CAACkC,OAAO,CAACC,OAAO,CAACuB,SAAS,EAAG,EAAC,CAChE;IACH,CAAC,MAAM;MACLa,OAAO,CAACC,QAAQ,GAAG,CAAC;IACtB;EACF,CAAC,MAAM;IACLD,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEH9D,OAAO,CAAC8C,KAAK,EAAE"}
1
+ {"version":3,"file":"conn-save.js","names":["FrodoCommand","Option","apiKeyArgument","apiSecretArgument","Authenticate","ConnectionProfile","ServiceAccount","state","constants","verboseMessage","printMessage","addExistingServiceAccount","getTokens","saveConnectionProfile","addNewServiceAccount","isServiceAccountsFeatureAvailable","program","alias","description","addArgument","addOption","action","host","user","password","key","secret","options","command","handleDefaultArgsAndOpts","setLogApiKey","setLogApiSecret","authenticationService","setAuthenticationService","authenticationHeaderOverrides","setAuthenticationHeaderOverrides","JSON","parse","validate","getTenant","getDeploymentType","CLOUD_DEPLOYMENT_TYPE_KEY","sa","saId","saJwkFile","getServiceAccountId","name","_id","error","response","data","message","process","exitCode"],"sources":["cli/conn/conn-save.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { apiKeyArgument, apiSecretArgument } from './conn';\nimport {\n Authenticate,\n ConnectionProfile,\n ServiceAccount,\n state,\n constants,\n} from '@rockcarver/frodo-lib';\nimport { verboseMessage, printMessage } from '../../utils/Console';\nimport { addExistingServiceAccount } from '../../ops/ConnectionProfileOps.js';\n\nconst { getTokens } = Authenticate;\nconst { saveConnectionProfile, addNewServiceAccount } = ConnectionProfile;\nconst { isServiceAccountsFeatureAvailable } = ServiceAccount;\n\nconst program = new FrodoCommand('frodo conn save', ['realm']);\n\nprogram\n .alias('add')\n .description('Save connection profiles.')\n .addArgument(apiKeyArgument)\n .addArgument(apiSecretArgument)\n .addOption(\n new Option(\n '--sa-id <uuid>',\n \"Service account's uuid. If specified, must also include --sa-jwk-file. Ignored with --no-sa.\"\n )\n )\n .addOption(\n new Option(\n '--sa-jwk-file <file>',\n \"File containing the service account's java web key (jwk). Jwk must contain private key! If specified, must also include --sa-id. Ignored with --no-sa.\"\n )\n )\n .addOption(new Option('--no-sa', 'Do not add service account.'))\n .addOption(new Option('--no-validate', 'Do not validate connection.'))\n .addOption(\n new Option(\n '--authentication-service [service]',\n 'Name of the authentication service/tree to use.'\n )\n )\n .addOption(\n new Option(\n '--authentication-header-overrides [headers]',\n 'Map of headers: {\"host\":\"am.example.com:8081\"}.'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, user, password, key, secret, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n user,\n password,\n key,\n secret,\n options,\n command\n );\n state.setLogApiKey(key);\n state.setLogApiSecret(secret);\n if (options.authenticationService) {\n state.setAuthenticationService(options.authenticationService);\n }\n if (options.authenticationHeaderOverrides) {\n state.setAuthenticationHeaderOverrides(\n JSON.parse(options.authenticationHeaderOverrides)\n );\n }\n if ((options.validate && (await getTokens())) || !options.validate) {\n verboseMessage(\n `Saving connection profile for tenant ${state.getTenant()}...`\n );\n // if cloud deployment add service account\n if (\n options.validate &&\n state.getDeploymentType() === constants.CLOUD_DEPLOYMENT_TYPE_KEY &&\n options.sa &&\n (await isServiceAccountsFeatureAvailable())\n ) {\n // validate and add existing service account\n if (options.saId && options.saJwkFile) {\n verboseMessage(`Validating and adding service account...`);\n if (\n await addExistingServiceAccount(\n options.saId,\n options.saJwkFile,\n options.validate\n )\n ) {\n printMessage(\n `Validated and added service account with id ${options.saId} to profile.`\n );\n }\n }\n // add new service account if none already exists in the profile\n else if (!state.getServiceAccountId()) {\n try {\n verboseMessage(`Creating service account...`);\n const sa = await addNewServiceAccount();\n printMessage(\n `Created and added service account ${sa.name} with id ${sa._id} to profile.`\n );\n } catch (error) {\n printMessage(error.response?.data, 'error');\n printMessage(\n `Error creating service account: ${error.response?.data?.message}`,\n 'error'\n );\n process.exitCode = 1;\n }\n }\n }\n // add existing service account without validation\n else if (\n !options.validate &&\n options.saId &&\n options.saJwkFile &&\n options.sa\n ) {\n addExistingServiceAccount(\n options.saId,\n options.saJwkFile,\n options.validate\n );\n }\n if (await saveConnectionProfile(host)) {\n printMessage(`Saved connection profile ${state.getTenant()}`);\n } else {\n process.exitCode = 1;\n }\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
@@ -1,16 +1,18 @@
1
- import { Command } from 'commander';
1
+ import { FrodoStubCommand } from '../FrodoCommand';
2
+ import { Argument } from 'commander';
2
3
  import path from 'path';
3
4
  import { fileURLToPath } from 'url';
4
5
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
6
+ export const apiKeyArgument = new Argument('[key]', 'API key for logging API.');
7
+ export const apiSecretArgument = new Argument('[secret]', 'API secret for logging API.');
5
8
  export default function setup() {
6
- const program = new Command('conn').alias('connection')
9
+ const program = new FrodoStubCommand('conn').alias('connection')
7
10
  // for backwards compatibility
8
- .alias('connections').helpOption('-h, --help', 'Help').description('Manage connection profiles.').executableDir(__dirname);
9
- program.command('save', 'Save connection profiles.').alias('add').showHelpAfterError();
10
- program.command('delete', 'Delete connection profiles.').showHelpAfterError();
11
- program.command('describe', 'Describe connection profiles.').showHelpAfterError();
12
- program.command('list', 'List connection profiles.').showHelpAfterError();
13
- program.showHelpAfterError();
11
+ .alias('connections').description('Manage connection profiles.').executableDir(__dirname);
12
+ program.command('save', 'Save connection profiles.').alias('add');
13
+ program.command('delete', 'Delete connection profiles.');
14
+ program.command('describe', 'Describe connection profiles.');
15
+ program.command('list', 'List connection profiles.');
14
16
  return program;
15
17
  }
16
18
  //# sourceMappingURL=conn.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"conn.js","names":["Command","path","fileURLToPath","__dirname","dirname","import","meta","url","setup","program","alias","helpOption","description","executableDir","command","showHelpAfterError"],"sources":["cli/conn/conn.ts"],"sourcesContent":["import { Command } from 'commander';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nexport default function setup() {\n const program = new Command('conn')\n .alias('connection')\n // for backwards compatibility\n .alias('connections')\n .helpOption('-h, --help', 'Help')\n .description('Manage connection profiles.')\n .executableDir(__dirname);\n\n program\n .command('save', 'Save connection profiles.')\n .alias('add')\n .showHelpAfterError();\n\n program.command('delete', 'Delete connection profiles.').showHelpAfterError();\n\n program\n .command('describe', 'Describe connection profiles.')\n .showHelpAfterError();\n\n program.command('list', 'List connection profiles.').showHelpAfterError();\n\n program.showHelpAfterError();\n return program;\n}\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,WAAW;AACnC,OAAOC,IAAI,MAAM,MAAM;AACvB,SAASC,aAAa,QAAQ,KAAK;AAEnC,MAAMC,SAAS,GAAGF,IAAI,CAACG,OAAO,CAACF,aAAa,CAACG,MAAM,CAACC,IAAI,CAACC,GAAG,CAAC,CAAC;AAE9D,eAAe,SAASC,KAAK,GAAG;EAC9B,MAAMC,OAAO,GAAG,IAAIT,OAAO,CAAC,MAAM,CAAC,CAChCU,KAAK,CAAC,YAAY;EACnB;EAAA,CACCA,KAAK,CAAC,aAAa,CAAC,CACpBC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAChCC,WAAW,CAAC,6BAA6B,CAAC,CAC1CC,aAAa,CAACV,SAAS,CAAC;EAE3BM,OAAO,CACJK,OAAO,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAC5CJ,KAAK,CAAC,KAAK,CAAC,CACZK,kBAAkB,EAAE;EAEvBN,OAAO,CAACK,OAAO,CAAC,QAAQ,EAAE,6BAA6B,CAAC,CAACC,kBAAkB,EAAE;EAE7EN,OAAO,CACJK,OAAO,CAAC,UAAU,EAAE,+BAA+B,CAAC,CACpDC,kBAAkB,EAAE;EAEvBN,OAAO,CAACK,OAAO,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAACC,kBAAkB,EAAE;EAEzEN,OAAO,CAACM,kBAAkB,EAAE;EAC5B,OAAON,OAAO;AAChB"}
1
+ {"version":3,"file":"conn.js","names":["FrodoStubCommand","Argument","path","fileURLToPath","__dirname","dirname","import","meta","url","apiKeyArgument","apiSecretArgument","setup","program","alias","description","executableDir","command"],"sources":["cli/conn/conn.ts"],"sourcesContent":["import { FrodoStubCommand } from '../FrodoCommand';\nimport { Argument } from 'commander';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nexport const apiKeyArgument = new Argument('[key]', 'API key for logging API.');\n\nexport const apiSecretArgument = new Argument(\n '[secret]',\n 'API secret for logging API.'\n);\n\nexport default function setup() {\n const program = new FrodoStubCommand('conn')\n .alias('connection')\n // for backwards compatibility\n .alias('connections')\n .description('Manage connection profiles.')\n .executableDir(__dirname);\n\n program.command('save', 'Save connection profiles.').alias('add');\n\n program.command('delete', 'Delete connection profiles.');\n\n program.command('describe', 'Describe connection profiles.');\n\n program.command('list', 'List connection profiles.');\n\n return program;\n}\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,iBAAiB;AAClD,SAASC,QAAQ,QAAQ,WAAW;AACpC,OAAOC,IAAI,MAAM,MAAM;AACvB,SAASC,aAAa,QAAQ,KAAK;AAEnC,MAAMC,SAAS,GAAGF,IAAI,CAACG,OAAO,CAACF,aAAa,CAACG,MAAM,CAACC,IAAI,CAACC,GAAG,CAAC,CAAC;AAE9D,OAAO,MAAMC,cAAc,GAAG,IAAIR,QAAQ,CAAC,OAAO,EAAE,0BAA0B,CAAC;AAE/E,OAAO,MAAMS,iBAAiB,GAAG,IAAIT,QAAQ,CAC3C,UAAU,EACV,6BAA6B,CAC9B;AAED,eAAe,SAASU,KAAK,GAAG;EAC9B,MAAMC,OAAO,GAAG,IAAIZ,gBAAgB,CAAC,MAAM,CAAC,CACzCa,KAAK,CAAC,YAAY;EACnB;EAAA,CACCA,KAAK,CAAC,aAAa,CAAC,CACpBC,WAAW,CAAC,6BAA6B,CAAC,CAC1CC,aAAa,CAACX,SAAS,CAAC;EAE3BQ,OAAO,CAACI,OAAO,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAACH,KAAK,CAAC,KAAK,CAAC;EAEjED,OAAO,CAACI,OAAO,CAAC,QAAQ,EAAE,6BAA6B,CAAC;EAExDJ,OAAO,CAACI,OAAO,CAAC,UAAU,EAAE,+BAA+B,CAAC;EAE5DJ,OAAO,CAACI,OAAO,CAAC,MAAM,EAAE,2BAA2B,CAAC;EAEpD,OAAOJ,OAAO;AAChB"}
@@ -1,27 +1,19 @@
1
- import { Command, Option } from 'commander';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
2
3
  import { Authenticate, state } from '@rockcarver/frodo-lib';
3
- import * as common from '../cmd_common.js';
4
4
  import { printMessage, verboseMessage } from '../../utils/Console.js';
5
5
  import { exportEmailTemplateToFile, exportEmailTemplatesToFile, exportEmailTemplatesToFiles } from '../../ops/EmailTemplateOps';
6
6
  const {
7
7
  getTokens
8
8
  } = Authenticate;
9
- const program = new Command('frodo email template export');
10
- program.description('Export email templates.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(common.verboseOption).addOption(common.debugOption).addOption(common.curlirizeOption).addOption(new Option('-i, --template-id <template-id>', 'Email template id/name. If specified, -a and -A are ignored.')).addOption(new Option('-f, --file [file]', 'Name of the export file. Ignored with -A. Defaults to <template-id>.template.email.json.')).addOption(new Option('-a, --all', 'Export all email templates to a single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Export all email templates as separate files <template-id>.template.email.json. Ignored with -i, and -a.')).action(
9
+ const program = new FrodoCommand('frodo email template export');
10
+ program.description('Export email templates.').addOption(new Option('-i, --template-id <template-id>', 'Email template id/name. If specified, -a and -A are ignored.')).addOption(new Option('-f, --file [file]', 'Name of the export file. Ignored with -A. Defaults to <template-id>.template.email.json.')).addOption(new Option('-a, --all', 'Export all email templates to a single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Export all email templates as separate files <template-id>.template.email.json. Ignored with -i, and -a.')).action(
11
11
  // implement command logic inside action handler
12
- async (host, realm, user, password, options) => {
13
- state.default.session.setTenant(host);
14
- state.default.session.setRealm(realm);
15
- state.default.session.setUsername(user);
16
- state.default.session.setPassword(password);
17
- state.default.session.setDeploymentType(options.type);
18
- state.default.session.setAllowInsecureConnection(options.insecure);
19
- state.default.session.setVerbose(options.verbose);
20
- state.default.session.setDebug(options.debug);
21
- state.default.session.setCurlirize(options.curlirize);
12
+ async (host, realm, user, password, options, command) => {
13
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
22
14
  // export by id/name
23
15
  if (options.templateId && (await getTokens())) {
24
- verboseMessage(`Exporting email template "${options.templateId}" from realm "${state.default.session.getRealm()}"...`);
16
+ verboseMessage(`Exporting email template "${options.templateId}" from realm "${state.getRealm()}"...`);
25
17
  exportEmailTemplateToFile(options.templateId, options.file);
26
18
  }
27
19
  // --all -a
@@ -38,6 +30,7 @@ async (host, realm, user, password, options) => {
38
30
  else {
39
31
  printMessage('Unrecognized combination of options or no options...', 'error');
40
32
  program.help();
33
+ process.exitCode = 1;
41
34
  }
42
35
  }
43
36
  // end command logic inside action handler
@@ -1 +1 @@
1
- {"version":3,"file":"email-template-export.js","names":["Command","Option","Authenticate","state","common","printMessage","verboseMessage","exportEmailTemplateToFile","exportEmailTemplatesToFile","exportEmailTemplatesToFiles","getTokens","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","verboseOption","debugOption","curlirizeOption","action","host","realm","user","password","options","default","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","setVerbose","verbose","setDebug","debug","setCurlirize","curlirize","templateId","getRealm","file","all","allSeparate","help","parse"],"sources":["cli/email/email-template-export.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport {\n exportEmailTemplateToFile,\n exportEmailTemplatesToFile,\n exportEmailTemplatesToFiles,\n} from '../../ops/EmailTemplateOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new Command('frodo email template export');\n\nprogram\n .description('Export email templates.')\n .helpOption('-h, --help', 'Help')\n .showHelpAfterError()\n .addArgument(common.hostArgumentM)\n .addArgument(common.realmArgument)\n .addArgument(common.userArgument)\n .addArgument(common.passwordArgument)\n .addOption(common.deploymentOption)\n .addOption(common.insecureOption)\n .addOption(common.verboseOption)\n .addOption(common.debugOption)\n .addOption(common.curlirizeOption)\n .addOption(\n new Option(\n '-i, --template-id <template-id>',\n 'Email template id/name. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-f, --file [file]',\n 'Name of the export file. Ignored with -A. Defaults to <template-id>.template.email.json.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Export all email templates to a single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all email templates as separate files <template-id>.template.email.json. Ignored with -i, and -a.'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options) => {\n state.default.session.setTenant(host);\n state.default.session.setRealm(realm);\n state.default.session.setUsername(user);\n state.default.session.setPassword(password);\n state.default.session.setDeploymentType(options.type);\n state.default.session.setAllowInsecureConnection(options.insecure);\n state.default.session.setVerbose(options.verbose);\n state.default.session.setDebug(options.debug);\n state.default.session.setCurlirize(options.curlirize);\n // export by id/name\n if (options.templateId && (await getTokens())) {\n verboseMessage(\n `Exporting email template \"${\n options.templateId\n }\" from realm \"${state.default.session.getRealm()}\"...`\n );\n exportEmailTemplateToFile(options.templateId, options.file);\n }\n // --all -a\n else if (options.all && (await getTokens())) {\n verboseMessage('Exporting all email templates to a single file...');\n exportEmailTemplatesToFile(options.file);\n }\n // --all-separate -A\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage('Exporting all email templates to separate files...');\n exportEmailTemplatesToFiles();\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\n program.help();\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
1
+ {"version":3,"file":"email-template-export.js","names":["FrodoCommand","Option","Authenticate","state","printMessage","verboseMessage","exportEmailTemplateToFile","exportEmailTemplatesToFile","exportEmailTemplatesToFiles","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","templateId","getRealm","file","all","allSeparate","help","process","exitCode","parse"],"sources":["cli/email/email-template-export.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, state } from '@rockcarver/frodo-lib';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport {\n exportEmailTemplateToFile,\n exportEmailTemplatesToFile,\n exportEmailTemplatesToFiles,\n} from '../../ops/EmailTemplateOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo email template export');\n\nprogram\n .description('Export email templates.')\n .addOption(\n new Option(\n '-i, --template-id <template-id>',\n 'Email template id/name. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-f, --file [file]',\n 'Name of the export file. Ignored with -A. Defaults to <template-id>.template.email.json.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Export all email templates to a single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all email templates as separate files <template-id>.template.email.json. Ignored with -i, and -a.'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n // export by id/name\n if (options.templateId && (await getTokens())) {\n verboseMessage(\n `Exporting email template \"${\n options.templateId\n }\" from realm \"${state.getRealm()}\"...`\n );\n exportEmailTemplateToFile(options.templateId, options.file);\n }\n // --all -a\n else if (options.all && (await getTokens())) {\n verboseMessage('Exporting all email templates to a single file...');\n exportEmailTemplatesToFile(options.file);\n }\n // --all-separate -A\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage('Exporting all email templates to separate files...');\n exportEmailTemplatesToFiles();\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,EAAEC,KAAK,QAAQ,uBAAuB;AAC3D,SAASC,YAAY,EAAEC,cAAc,QAAQ,wBAAwB;AACrE,SACEC,yBAAyB,EACzBC,0BAA0B,EAC1BC,2BAA2B,QACtB,4BAA4B;AAEnC,MAAM;EAAEC;AAAU,CAAC,GAAGP,YAAY;AAElC,MAAMQ,OAAO,GAAG,IAAIV,YAAY,CAAC,6BAA6B,CAAC;AAE/DU,OAAO,CACJC,WAAW,CAAC,yBAAyB,CAAC,CACtCC,SAAS,CACR,IAAIX,MAAM,CACR,iCAAiC,EACjC,8DAA8D,CAC/D,CACF,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,mBAAmB,EACnB,0FAA0F,CAC3F,CACF,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,WAAW,EACX,+DAA+D,CAChE,CACF,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,oBAAoB,EACpB,0GAA0G,CAC3G,CACF,CACAY,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OAAO,CACR;EACD;EACA,IAAID,OAAO,CAACG,UAAU,KAAK,MAAMZ,SAAS,EAAE,CAAC,EAAE;IAC7CJ,cAAc,CACX,6BACCa,OAAO,CAACG,UACT,iBAAgBlB,KAAK,CAACmB,QAAQ,EAAG,MAAK,CACxC;IACDhB,yBAAyB,CAACY,OAAO,CAACG,UAAU,EAAEH,OAAO,CAACK,IAAI,CAAC;EAC7D;EACA;EAAA,KACK,IAAIL,OAAO,CAACM,GAAG,KAAK,MAAMf,SAAS,EAAE,CAAC,EAAE;IAC3CJ,cAAc,CAAC,mDAAmD,CAAC;IACnEE,0BAA0B,CAACW,OAAO,CAACK,IAAI,CAAC;EAC1C;EACA;EAAA,KACK,IAAIL,OAAO,CAACO,WAAW,KAAK,MAAMhB,SAAS,EAAE,CAAC,EAAE;IACnDJ,cAAc,CAAC,oDAAoD,CAAC;IACpEG,2BAA2B,EAAE;EAC/B;EACA;EAAA,KACK;IACHJ,YAAY,CACV,sDAAsD,EACtD,OAAO,CACR;IACDM,OAAO,CAACgB,IAAI,EAAE;IACdC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHlB,OAAO,CAACmB,KAAK,EAAE"}
@@ -1,24 +1,16 @@
1
- import { Command, Option } from 'commander';
2
- import { Authenticate, state } from '@rockcarver/frodo-lib';
3
- import * as common from '../cmd_common.js';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
3
+ import { Authenticate } from '@rockcarver/frodo-lib';
4
4
  import { printMessage, verboseMessage } from '../../utils/Console.js';
5
5
  import { importEmailTemplateFromFile, importEmailTemplatesFromFile, importEmailTemplatesFromFiles, importFirstEmailTemplateFromFile } from '../../ops/EmailTemplateOps';
6
6
  const {
7
7
  getTokens
8
8
  } = Authenticate;
9
- const program = new Command('frodo email template import');
10
- program.description('Import email templates.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(common.verboseOption).addOption(common.debugOption).addOption(common.curlirizeOption).addOption(new Option('-i, --template-id <template-id>', 'Email template id/name. If specified, -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the import file.')).addOption(new Option('-a, --all', 'Import all email templates from single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Import all email templates from separate files (*.template.email.json) in the current directory. Ignored with -i or -a.')).action(
9
+ const program = new FrodoCommand('frodo email template import');
10
+ program.description('Import email templates.').addOption(new Option('-i, --template-id <template-id>', 'Email template id/name. If specified, -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the import file.')).addOption(new Option('-a, --all', 'Import all email templates from single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Import all email templates from separate files (*.template.email.json) in the current directory. Ignored with -i or -a.')).action(
11
11
  // implement program logic inside action handler
12
- async (host, realm, user, password, options) => {
13
- state.default.session.setTenant(host);
14
- state.default.session.setRealm(realm);
15
- state.default.session.setUsername(user);
16
- state.default.session.setPassword(password);
17
- state.default.session.setDeploymentType(options.type);
18
- state.default.session.setAllowInsecureConnection(options.insecure);
19
- state.default.session.setVerbose(options.verbose);
20
- state.default.session.setDebug(options.debug);
21
- state.default.session.setCurlirize(options.curlirize);
12
+ async (host, realm, user, password, options, command) => {
13
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
22
14
  // import by id
23
15
  if (options.file && options.templateId && (await getTokens())) {
24
16
  verboseMessage(`Importing email template "${options.templateId}"...`);
@@ -43,6 +35,7 @@ async (host, realm, user, password, options) => {
43
35
  else {
44
36
  printMessage('Unrecognized combination of options or no options...', 'error');
45
37
  program.help();
38
+ process.exitCode = 1;
46
39
  }
47
40
  }
48
41
  // end program logic inside action handler
@@ -1 +1 @@
1
- {"version":3,"file":"email-template-import.js","names":["Command","Option","Authenticate","state","common","printMessage","verboseMessage","importEmailTemplateFromFile","importEmailTemplatesFromFile","importEmailTemplatesFromFiles","importFirstEmailTemplateFromFile","getTokens","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","verboseOption","debugOption","curlirizeOption","action","host","realm","user","password","options","default","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","setVerbose","verbose","setDebug","debug","setCurlirize","curlirize","file","templateId","all","allSeparate","help","parse"],"sources":["cli/email/email-template-import.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport {\n importEmailTemplateFromFile,\n importEmailTemplatesFromFile,\n importEmailTemplatesFromFiles,\n importFirstEmailTemplateFromFile,\n} from '../../ops/EmailTemplateOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new Command('frodo email template import');\n\nprogram\n .description('Import email templates.')\n .helpOption('-h, --help', 'Help')\n .showHelpAfterError()\n .addArgument(common.hostArgumentM)\n .addArgument(common.realmArgument)\n .addArgument(common.userArgument)\n .addArgument(common.passwordArgument)\n .addOption(common.deploymentOption)\n .addOption(common.insecureOption)\n .addOption(common.verboseOption)\n .addOption(common.debugOption)\n .addOption(common.curlirizeOption)\n .addOption(\n new Option(\n '-i, --template-id <template-id>',\n 'Email template id/name. If specified, -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the import file.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Import all email templates from single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all email templates from separate files (*.template.email.json) in the current directory. Ignored with -i or -a.'\n )\n )\n .action(\n // implement program logic inside action handler\n async (host, realm, user, password, options) => {\n state.default.session.setTenant(host);\n state.default.session.setRealm(realm);\n state.default.session.setUsername(user);\n state.default.session.setPassword(password);\n state.default.session.setDeploymentType(options.type);\n state.default.session.setAllowInsecureConnection(options.insecure);\n state.default.session.setVerbose(options.verbose);\n state.default.session.setDebug(options.debug);\n state.default.session.setCurlirize(options.curlirize);\n // import by id\n if (options.file && options.templateId && (await getTokens())) {\n verboseMessage(`Importing email template \"${options.templateId}\"...`);\n importEmailTemplateFromFile(options.templateId, options.file);\n }\n // --all -a\n else if (options.all && options.file && (await getTokens())) {\n verboseMessage(\n `Importing all email templates from a single file (${options.file})...`\n );\n importEmailTemplatesFromFile(options.file);\n }\n // --all-separate -A\n else if (options.allSeparate && !options.file && (await getTokens())) {\n verboseMessage(\n 'Importing all email templates from separate files (*.template.email.json) in current directory...'\n );\n importEmailTemplatesFromFiles();\n }\n // import first template from file\n else if (options.file && (await getTokens())) {\n verboseMessage(\n `Importing first email template from file \"${options.file}\"...`\n );\n importFirstEmailTemplateFromFile(options.file);\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\n program.help();\n }\n }\n // end program logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
1
+ {"version":3,"file":"email-template-import.js","names":["FrodoCommand","Option","Authenticate","printMessage","verboseMessage","importEmailTemplateFromFile","importEmailTemplatesFromFile","importEmailTemplatesFromFiles","importFirstEmailTemplateFromFile","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","file","templateId","all","allSeparate","help","process","exitCode","parse"],"sources":["cli/email/email-template-import.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport {\n importEmailTemplateFromFile,\n importEmailTemplatesFromFile,\n importEmailTemplatesFromFiles,\n importFirstEmailTemplateFromFile,\n} from '../../ops/EmailTemplateOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo email template import');\n\nprogram\n .description('Import email templates.')\n .addOption(\n new Option(\n '-i, --template-id <template-id>',\n 'Email template id/name. If specified, -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the import file.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Import all email templates from single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all email templates from separate files (*.template.email.json) in the current directory. Ignored with -i or -a.'\n )\n )\n .action(\n // implement program logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n // import by id\n if (options.file && options.templateId && (await getTokens())) {\n verboseMessage(`Importing email template \"${options.templateId}\"...`);\n importEmailTemplateFromFile(options.templateId, options.file);\n }\n // --all -a\n else if (options.all && options.file && (await getTokens())) {\n verboseMessage(\n `Importing all email templates from a single file (${options.file})...`\n );\n importEmailTemplatesFromFile(options.file);\n }\n // --all-separate -A\n else if (options.allSeparate && !options.file && (await getTokens())) {\n verboseMessage(\n 'Importing all email templates from separate files (*.template.email.json) in current directory...'\n );\n importEmailTemplatesFromFiles();\n }\n // import first template from file\n else if (options.file && (await getTokens())) {\n verboseMessage(\n `Importing first email template from file \"${options.file}\"...`\n );\n importFirstEmailTemplateFromFile(options.file);\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\n program.help();\n process.exitCode = 1;\n }\n }\n // end program logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,YAAY,EAAEC,cAAc,QAAQ,wBAAwB;AACrE,SACEC,2BAA2B,EAC3BC,4BAA4B,EAC5BC,6BAA6B,EAC7BC,gCAAgC,QAC3B,4BAA4B;AAEnC,MAAM;EAAEC;AAAU,CAAC,GAAGP,YAAY;AAElC,MAAMQ,OAAO,GAAG,IAAIV,YAAY,CAAC,6BAA6B,CAAC;AAE/DU,OAAO,CACJC,WAAW,CAAC,yBAAyB,CAAC,CACtCC,SAAS,CACR,IAAIX,MAAM,CACR,iCAAiC,EACjC,8DAA8D,CAC/D,CACF,CACAW,SAAS,CAAC,IAAIX,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,CAAC,CACtEW,SAAS,CACR,IAAIX,MAAM,CACR,WAAW,EACX,+DAA+D,CAChE,CACF,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,oBAAoB,EACpB,yHAAyH,CAC1H,CACF,CACAY,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OAAO,CACR;EACD;EACA,IAAID,OAAO,CAACG,IAAI,IAAIH,OAAO,CAACI,UAAU,KAAK,MAAMb,SAAS,EAAE,CAAC,EAAE;IAC7DL,cAAc,CAAE,6BAA4Bc,OAAO,CAACI,UAAW,MAAK,CAAC;IACrEjB,2BAA2B,CAACa,OAAO,CAACI,UAAU,EAAEJ,OAAO,CAACG,IAAI,CAAC;EAC/D;EACA;EAAA,KACK,IAAIH,OAAO,CAACK,GAAG,IAAIL,OAAO,CAACG,IAAI,KAAK,MAAMZ,SAAS,EAAE,CAAC,EAAE;IAC3DL,cAAc,CACX,qDAAoDc,OAAO,CAACG,IAAK,MAAK,CACxE;IACDf,4BAA4B,CAACY,OAAO,CAACG,IAAI,CAAC;EAC5C;EACA;EAAA,KACK,IAAIH,OAAO,CAACM,WAAW,IAAI,CAACN,OAAO,CAACG,IAAI,KAAK,MAAMZ,SAAS,EAAE,CAAC,EAAE;IACpEL,cAAc,CACZ,mGAAmG,CACpG;IACDG,6BAA6B,EAAE;EACjC;EACA;EAAA,KACK,IAAIW,OAAO,CAACG,IAAI,KAAK,MAAMZ,SAAS,EAAE,CAAC,EAAE;IAC5CL,cAAc,CACX,6CAA4Cc,OAAO,CAACG,IAAK,MAAK,CAChE;IACDb,gCAAgC,CAACU,OAAO,CAACG,IAAI,CAAC;EAChD;EACA;EAAA,KACK;IACHlB,YAAY,CACV,sDAAsD,EACtD,OAAO,CACR;IACDO,OAAO,CAACe,IAAI,EAAE;IACdC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHjB,OAAO,CAACkB,KAAK,EAAE"}
@@ -1,27 +1,21 @@
1
- import { Command, Option } from 'commander';
2
- import { Authenticate, state } from '@rockcarver/frodo-lib';
3
- import * as common from '../cmd_common.js';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
3
+ import { Authenticate } from '@rockcarver/frodo-lib';
4
4
  import { verboseMessage } from '../../utils/Console.js';
5
5
  import { listEmailTemplates } from '../../ops/EmailTemplateOps';
6
6
  const {
7
7
  getTokens
8
8
  } = Authenticate;
9
- const program = new Command('frodo email template list');
10
- program.description('List email templates.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(common.verboseOption).addOption(common.debugOption).addOption(common.curlirizeOption).addOption(new Option('-l, --long', 'Long with all fields.').default(false, 'false')).action(
9
+ const program = new FrodoCommand('frodo email template list');
10
+ program.description('List email templates.').addOption(new Option('-l, --long', 'Long with all fields.').default(false, 'false')).action(
11
11
  // implement command logic inside action handler
12
- async (host, realm, user, password, options) => {
13
- state.default.session.setTenant(host);
14
- state.default.session.setRealm(realm);
15
- state.default.session.setUsername(user);
16
- state.default.session.setPassword(password);
17
- state.default.session.setDeploymentType(options.type);
18
- state.default.session.setAllowInsecureConnection(options.insecure);
19
- state.default.session.setVerbose(options.verbose);
20
- state.default.session.setDebug(options.debug);
21
- state.default.session.setCurlirize(options.curlirize);
12
+ async (host, realm, user, password, options, command) => {
13
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
22
14
  if (await getTokens()) {
23
15
  verboseMessage(`Listing email templates ...`);
24
16
  listEmailTemplates(options.long);
17
+ } else {
18
+ process.exitCode = 1;
25
19
  }
26
20
  }
27
21
  // end command logic inside action handler
@@ -1 +1 @@
1
- {"version":3,"file":"email-template-list.js","names":["Command","Option","Authenticate","state","common","verboseMessage","listEmailTemplates","getTokens","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","verboseOption","debugOption","curlirizeOption","default","action","host","realm","user","password","options","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","setVerbose","verbose","setDebug","debug","setCurlirize","curlirize","long","parse"],"sources":["cli/email/email-template-list.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\nimport { verboseMessage } from '../../utils/Console.js';\nimport { listEmailTemplates } from '../../ops/EmailTemplateOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new Command('frodo email template list');\n\nprogram\n .description('List email templates.')\n .helpOption('-h, --help', 'Help')\n .showHelpAfterError()\n .addArgument(common.hostArgumentM)\n .addArgument(common.realmArgument)\n .addArgument(common.userArgument)\n .addArgument(common.passwordArgument)\n .addOption(common.deploymentOption)\n .addOption(common.insecureOption)\n .addOption(common.verboseOption)\n .addOption(common.debugOption)\n .addOption(common.curlirizeOption)\n .addOption(\n new Option('-l, --long', 'Long with all fields.').default(false, 'false')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options) => {\n state.default.session.setTenant(host);\n state.default.session.setRealm(realm);\n state.default.session.setUsername(user);\n state.default.session.setPassword(password);\n state.default.session.setDeploymentType(options.type);\n state.default.session.setAllowInsecureConnection(options.insecure);\n state.default.session.setVerbose(options.verbose);\n state.default.session.setDebug(options.debug);\n state.default.session.setCurlirize(options.curlirize);\n if (await getTokens()) {\n verboseMessage(`Listing email templates ...`);\n listEmailTemplates(options.long);\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAO,EAAEC,MAAM,QAAQ,WAAW;AAC3C,SAASC,YAAY,EAAEC,KAAK,QAAQ,uBAAuB;AAC3D,OAAO,KAAKC,MAAM,MAAM,kBAAkB;AAC1C,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,kBAAkB,QAAQ,4BAA4B;AAE/D,MAAM;EAAEC;AAAU,CAAC,GAAGL,YAAY;AAElC,MAAMM,OAAO,GAAG,IAAIR,OAAO,CAAC,2BAA2B,CAAC;AAExDQ,OAAO,CACJC,WAAW,CAAC,uBAAuB,CAAC,CACpCC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAChCC,kBAAkB,EAAE,CACpBC,WAAW,CAACR,MAAM,CAACS,aAAa,CAAC,CACjCD,WAAW,CAACR,MAAM,CAACU,aAAa,CAAC,CACjCF,WAAW,CAACR,MAAM,CAACW,YAAY,CAAC,CAChCH,WAAW,CAACR,MAAM,CAACY,gBAAgB,CAAC,CACpCC,SAAS,CAACb,MAAM,CAACc,gBAAgB,CAAC,CAClCD,SAAS,CAACb,MAAM,CAACe,cAAc,CAAC,CAChCF,SAAS,CAACb,MAAM,CAACgB,aAAa,CAAC,CAC/BH,SAAS,CAACb,MAAM,CAACiB,WAAW,CAAC,CAC7BJ,SAAS,CAACb,MAAM,CAACkB,eAAe,CAAC,CACjCL,SAAS,CACR,IAAIhB,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACsB,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAC1E,CACAC,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,KAAK;EAC9C1B,KAAK,CAACoB,OAAO,CAACO,OAAO,CAACC,SAAS,CAACN,IAAI,CAAC;EACrCtB,KAAK,CAACoB,OAAO,CAACO,OAAO,CAACE,QAAQ,CAACN,KAAK,CAAC;EACrCvB,KAAK,CAACoB,OAAO,CAACO,OAAO,CAACG,WAAW,CAACN,IAAI,CAAC;EACvCxB,KAAK,CAACoB,OAAO,CAACO,OAAO,CAACI,WAAW,CAACN,QAAQ,CAAC;EAC3CzB,KAAK,CAACoB,OAAO,CAACO,OAAO,CAACK,iBAAiB,CAACN,OAAO,CAACO,IAAI,CAAC;EACrDjC,KAAK,CAACoB,OAAO,CAACO,OAAO,CAACO,0BAA0B,CAACR,OAAO,CAACS,QAAQ,CAAC;EAClEnC,KAAK,CAACoB,OAAO,CAACO,OAAO,CAACS,UAAU,CAACV,OAAO,CAACW,OAAO,CAAC;EACjDrC,KAAK,CAACoB,OAAO,CAACO,OAAO,CAACW,QAAQ,CAACZ,OAAO,CAACa,KAAK,CAAC;EAC7CvC,KAAK,CAACoB,OAAO,CAACO,OAAO,CAACa,YAAY,CAACd,OAAO,CAACe,SAAS,CAAC;EACrD,IAAI,MAAMrC,SAAS,EAAE,EAAE;IACrBF,cAAc,CAAE,6BAA4B,CAAC;IAC7CC,kBAAkB,CAACuB,OAAO,CAACgB,IAAI,CAAC;EAClC;AACF;AACA;AAAA,CACD;;AAEHrC,OAAO,CAACsC,KAAK,EAAE"}
1
+ {"version":3,"file":"email-template-list.js","names":["FrodoCommand","Option","Authenticate","verboseMessage","listEmailTemplates","getTokens","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","long","process","exitCode","parse"],"sources":["cli/email/email-template-list.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console.js';\nimport { listEmailTemplates } from '../../ops/EmailTemplateOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo email template list');\n\nprogram\n .description('List email templates.')\n .addOption(\n new Option('-l, --long', 'Long with all fields.').default(false, 'false')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n verboseMessage(`Listing email templates ...`);\n listEmailTemplates(options.long);\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,kBAAkB,QAAQ,4BAA4B;AAE/D,MAAM;EAAEC;AAAU,CAAC,GAAGH,YAAY;AAElC,MAAMI,OAAO,GAAG,IAAIN,YAAY,CAAC,2BAA2B,CAAC;AAE7DM,OAAO,CACJC,WAAW,CAAC,uBAAuB,CAAC,CACpCC,SAAS,CACR,IAAIP,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACQ,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAC1E,CACAC,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OAAO,CACR;EACD,IAAI,MAAMX,SAAS,EAAE,EAAE;IACrBF,cAAc,CAAE,6BAA4B,CAAC;IAC7CC,kBAAkB,CAACW,OAAO,CAACG,IAAI,CAAC;EAClC,CAAC,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHd,OAAO,CAACe,KAAK,EAAE"}
@@ -1,8 +1,8 @@
1
- import { Command } from 'commander';
2
- const program = new Command('frodo email template');
3
- program.description('Manage email templates.').helpOption('-h, --help', 'Help').showHelpAfterError();
4
- program.command('list', 'List email templates.').showHelpAfterError();
5
- program.command('export', 'Export email templates.').showHelpAfterError();
6
- program.command('import', 'Import email templates.').showHelpAfterError();
1
+ import { FrodoStubCommand } from '../FrodoCommand';
2
+ const program = new FrodoStubCommand('frodo email template');
3
+ program.description('Manage email templates.');
4
+ program.command('list', 'List email templates.');
5
+ program.command('export', 'Export email templates.');
6
+ program.command('import', 'Import email templates.');
7
7
  program.parse();
8
8
  //# sourceMappingURL=email-template.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"email-template.js","names":["Command","program","description","helpOption","showHelpAfterError","command","parse"],"sources":["cli/email/email-template.ts"],"sourcesContent":["import { Command } from 'commander';\n\nconst program = new Command('frodo email template');\n\nprogram\n .description('Manage email templates.')\n .helpOption('-h, --help', 'Help')\n .showHelpAfterError();\n\nprogram.command('list', 'List email templates.').showHelpAfterError();\n\nprogram.command('export', 'Export email templates.').showHelpAfterError();\n\nprogram.command('import', 'Import email templates.').showHelpAfterError();\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,WAAW;AAEnC,MAAMC,OAAO,GAAG,IAAID,OAAO,CAAC,sBAAsB,CAAC;AAEnDC,OAAO,CACJC,WAAW,CAAC,yBAAyB,CAAC,CACtCC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAChCC,kBAAkB,EAAE;AAEvBH,OAAO,CAACI,OAAO,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAACD,kBAAkB,EAAE;AAErEH,OAAO,CAACI,OAAO,CAAC,QAAQ,EAAE,yBAAyB,CAAC,CAACD,kBAAkB,EAAE;AAEzEH,OAAO,CAACI,OAAO,CAAC,QAAQ,EAAE,yBAAyB,CAAC,CAACD,kBAAkB,EAAE;AAEzEH,OAAO,CAACK,KAAK,EAAE"}
1
+ {"version":3,"file":"email-template.js","names":["FrodoStubCommand","program","description","command","parse"],"sources":["cli/email/email-template.ts"],"sourcesContent":["import { FrodoStubCommand } from '../FrodoCommand';\n\nconst program = new FrodoStubCommand('frodo email template');\n\nprogram.description('Manage email templates.');\n\nprogram.command('list', 'List email templates.');\n\nprogram.command('export', 'Export email templates.');\n\nprogram.command('import', 'Import email templates.');\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,iBAAiB;AAElD,MAAMC,OAAO,GAAG,IAAID,gBAAgB,CAAC,sBAAsB,CAAC;AAE5DC,OAAO,CAACC,WAAW,CAAC,yBAAyB,CAAC;AAE9CD,OAAO,CAACE,OAAO,CAAC,MAAM,EAAE,uBAAuB,CAAC;AAEhDF,OAAO,CAACE,OAAO,CAAC,QAAQ,EAAE,yBAAyB,CAAC;AAEpDF,OAAO,CAACE,OAAO,CAAC,QAAQ,EAAE,yBAAyB,CAAC;AAEpDF,OAAO,CAACG,KAAK,EAAE"}
@@ -1,9 +1,9 @@
1
- import { Command } from 'commander';
1
+ import { FrodoStubCommand } from '../FrodoCommand';
2
2
  import path from 'path';
3
3
  import { fileURLToPath } from 'url';
4
4
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
5
5
  export default function setup() {
6
- const program = new Command('email').helpOption('-h, --help', 'Help').description('Manage email templates and configuration.').executableDir(__dirname);
6
+ const program = new FrodoStubCommand('email').description('Manage email templates and configuration.').executableDir(__dirname);
7
7
  program.command('template', 'Manage email templates.').showHelpAfterError();
8
8
  program.showHelpAfterError();
9
9
  return program;
@@ -1 +1 @@
1
- {"version":3,"file":"email.js","names":["Command","path","fileURLToPath","__dirname","dirname","import","meta","url","setup","program","helpOption","description","executableDir","command","showHelpAfterError"],"sources":["cli/email/email.ts"],"sourcesContent":["import { Command } from 'commander';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nexport default function setup() {\n const program = new Command('email')\n .helpOption('-h, --help', 'Help')\n .description('Manage email templates and configuration.')\n .executableDir(__dirname);\n\n program.command('template', 'Manage email templates.').showHelpAfterError();\n\n program.showHelpAfterError();\n return program;\n}\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,WAAW;AACnC,OAAOC,IAAI,MAAM,MAAM;AACvB,SAASC,aAAa,QAAQ,KAAK;AAEnC,MAAMC,SAAS,GAAGF,IAAI,CAACG,OAAO,CAACF,aAAa,CAACG,MAAM,CAACC,IAAI,CAACC,GAAG,CAAC,CAAC;AAE9D,eAAe,SAASC,KAAK,GAAG;EAC9B,MAAMC,OAAO,GAAG,IAAIT,OAAO,CAAC,OAAO,CAAC,CACjCU,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAChCC,WAAW,CAAC,2CAA2C,CAAC,CACxDC,aAAa,CAACT,SAAS,CAAC;EAE3BM,OAAO,CAACI,OAAO,CAAC,UAAU,EAAE,yBAAyB,CAAC,CAACC,kBAAkB,EAAE;EAE3EL,OAAO,CAACK,kBAAkB,EAAE;EAC5B,OAAOL,OAAO;AAChB"}
1
+ {"version":3,"file":"email.js","names":["FrodoStubCommand","path","fileURLToPath","__dirname","dirname","import","meta","url","setup","program","description","executableDir","command","showHelpAfterError"],"sources":["cli/email/email.ts"],"sourcesContent":["import { FrodoStubCommand } from '../FrodoCommand';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nexport default function setup() {\n const program = new FrodoStubCommand('email')\n .description('Manage email templates and configuration.')\n .executableDir(__dirname);\n\n program.command('template', 'Manage email templates.').showHelpAfterError();\n\n program.showHelpAfterError();\n return program;\n}\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,iBAAiB;AAClD,OAAOC,IAAI,MAAM,MAAM;AACvB,SAASC,aAAa,QAAQ,KAAK;AAEnC,MAAMC,SAAS,GAAGF,IAAI,CAACG,OAAO,CAACF,aAAa,CAACG,MAAM,CAACC,IAAI,CAACC,GAAG,CAAC,CAAC;AAE9D,eAAe,SAASC,KAAK,GAAG;EAC9B,MAAMC,OAAO,GAAG,IAAIT,gBAAgB,CAAC,OAAO,CAAC,CAC1CU,WAAW,CAAC,2CAA2C,CAAC,CACxDC,aAAa,CAACR,SAAS,CAAC;EAE3BM,OAAO,CAACG,OAAO,CAAC,UAAU,EAAE,yBAAyB,CAAC,CAACC,kBAAkB,EAAE;EAE3EJ,OAAO,CAACI,kBAAkB,EAAE;EAC5B,OAAOJ,OAAO;AAChB"}