@rockcarver/frodo-cli 0.18.2-9 → 0.19.0

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 (324) hide show
  1. package/CHANGELOG.md +112 -1
  2. package/esm/app.js +4 -1
  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 -12
  117. package/esm/cli/app/app-delete.js.map +1 -1
  118. package/esm/cli/app/app-describe.js +9 -12
  119. package/esm/cli/app/app-describe.js.map +1 -1
  120. package/esm/cli/app/app-export.js +28 -34
  121. package/esm/cli/app/app-export.js.map +1 -1
  122. package/esm/cli/app/app-import.js +11 -14
  123. package/esm/cli/app/app-import.js.map +1 -1
  124. package/esm/cli/app/app-list.js +11 -14
  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 +5 -5
  129. package/esm/cli/conn/conn-delete.js.map +1 -1
  130. package/esm/cli/conn/conn-describe.js +6 -5
  131. package/esm/cli/conn/conn-describe.js.map +1 -1
  132. package/esm/cli/conn/conn-list.js +6 -8
  133. package/esm/cli/conn/conn-list.js.map +1 -1
  134. package/esm/cli/conn/conn-save.js +72 -0
  135. package/esm/cli/conn/conn-save.js.map +1 -0
  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 +27 -33
  139. package/esm/cli/email/email-template-export.js.map +1 -1
  140. package/esm/cli/email/email-template-import.js +33 -39
  141. package/esm/cli/email/email-template-import.js.map +1 -1
  142. package/esm/cli/email/email-template-list.js +11 -14
  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 -12
  149. package/esm/cli/esv/esv-apply.js.map +1 -1
  150. package/esm/cli/esv/esv-secret-create.js +11 -14
  151. package/esm/cli/esv/esv-secret-create.js.map +1 -1
  152. package/esm/cli/esv/esv-secret-delete.js +23 -29
  153. package/esm/cli/esv/esv-secret-delete.js.map +1 -1
  154. package/esm/cli/esv/esv-secret-describe.js +11 -14
  155. package/esm/cli/esv/esv-secret-describe.js.map +1 -1
  156. package/esm/cli/esv/esv-secret-export.js +9 -12
  157. package/esm/cli/esv/esv-secret-export.js.map +1 -1
  158. package/esm/cli/esv/esv-secret-import.js +9 -12
  159. package/esm/cli/esv/esv-secret-import.js.map +1 -1
  160. package/esm/cli/esv/esv-secret-list.js +11 -14
  161. package/esm/cli/esv/esv-secret-list.js.map +1 -1
  162. package/esm/cli/esv/esv-secret-set.js +11 -14
  163. package/esm/cli/esv/esv-secret-set.js.map +1 -1
  164. package/esm/cli/esv/esv-secret-version-activate.js +18 -24
  165. package/esm/cli/esv/esv-secret-version-activate.js.map +1 -1
  166. package/esm/cli/esv/esv-secret-version-create.js +11 -14
  167. package/esm/cli/esv/esv-secret-version-create.js.map +1 -1
  168. package/esm/cli/esv/esv-secret-version-deactivate.js +18 -24
  169. package/esm/cli/esv/esv-secret-version-deactivate.js.map +1 -1
  170. package/esm/cli/esv/esv-secret-version-delete.js +23 -29
  171. package/esm/cli/esv/esv-secret-version-delete.js.map +1 -1
  172. package/esm/cli/esv/esv-secret-version-list.js +11 -14
  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 +10 -14
  179. package/esm/cli/esv/esv-variable-create.js.map +1 -1
  180. package/esm/cli/esv/esv-variable-delete.js +23 -29
  181. package/esm/cli/esv/esv-variable-delete.js.map +1 -1
  182. package/esm/cli/esv/esv-variable-describe.js +11 -14
  183. package/esm/cli/esv/esv-variable-describe.js.map +1 -1
  184. package/esm/cli/esv/esv-variable-export.js +9 -12
  185. package/esm/cli/esv/esv-variable-export.js.map +1 -1
  186. package/esm/cli/esv/esv-variable-import.js +9 -12
  187. package/esm/cli/esv/esv-variable-import.js.map +1 -1
  188. package/esm/cli/esv/esv-variable-list.js +11 -14
  189. package/esm/cli/esv/esv-variable-list.js.map +1 -1
  190. package/esm/cli/esv/esv-variable-set.js +19 -26
  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 +12 -17
  197. package/esm/cli/idm/idm-count.js.map +1 -1
  198. package/esm/cli/idm/idm-export.js +29 -39
  199. package/esm/cli/idm/idm-export.js.map +1 -1
  200. package/esm/cli/idm/idm-import.js +29 -39
  201. package/esm/cli/idm/idm-import.js.map +1 -1
  202. package/esm/cli/idm/idm-list.js +11 -17
  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 +11 -15
  207. package/esm/cli/idp/idp-export.js.map +1 -1
  208. package/esm/cli/idp/idp-import.js +32 -38
  209. package/esm/cli/idp/idp-import.js.map +1 -1
  210. package/esm/cli/idp/idp-list.js +9 -13
  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 +19 -20
  215. package/esm/cli/info/info.js.map +1 -1
  216. package/esm/cli/journey/journey-delete.js +22 -28
  217. package/esm/cli/journey/journey-delete.js.map +1 -1
  218. package/esm/cli/journey/journey-describe.js +12 -19
  219. package/esm/cli/journey/journey-describe.js.map +1 -1
  220. package/esm/cli/journey/journey-disable.js +20 -26
  221. package/esm/cli/journey/journey-disable.js.map +1 -1
  222. package/esm/cli/journey/journey-enable.js +20 -26
  223. package/esm/cli/journey/journey-enable.js.map +1 -1
  224. package/esm/cli/journey/journey-export.js +37 -45
  225. package/esm/cli/journey/journey-export.js.map +1 -1
  226. package/esm/cli/journey/journey-import.js +44 -52
  227. package/esm/cli/journey/journey-import.js.map +1 -1
  228. package/esm/cli/journey/journey-list.js +10 -13
  229. package/esm/cli/journey/journey-list.js.map +1 -1
  230. package/esm/cli/journey/journey-prune.js +9 -13
  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 +17 -19
  235. package/esm/cli/logging/logs-fetch.js.map +1 -1
  236. package/esm/cli/logging/logs-list.js +19 -25
  237. package/esm/cli/logging/logs-list.js.map +1 -1
  238. package/esm/cli/logging/logs-tail.js +17 -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 +11 -14
  243. package/esm/cli/realm/realm-add-custom-domain.js.map +1 -1
  244. package/esm/cli/realm/realm-describe.js +10 -14
  245. package/esm/cli/realm/realm-describe.js.map +1 -1
  246. package/esm/cli/realm/realm-list.js +11 -14
  247. package/esm/cli/realm/realm-list.js.map +1 -1
  248. package/esm/cli/realm/realm-remove-custom-domain.js +11 -14
  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 +27 -36
  253. package/esm/cli/saml/saml-cot-export.js.map +1 -1
  254. package/esm/cli/saml/saml-cot-import.js +32 -41
  255. package/esm/cli/saml/saml-cot-import.js.map +1 -1
  256. package/esm/cli/saml/saml-cot-list.js +10 -16
  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 +10 -16
  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 +45 -54
  267. package/esm/cli/saml/saml-import.js.map +1 -1
  268. package/esm/cli/saml/saml-list.js +11 -17
  269. package/esm/cli/saml/saml-list.js.map +1 -1
  270. package/esm/cli/saml/saml-metadata-export.js +21 -30
  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 -12
  277. package/esm/cli/script/script-delete.js.map +1 -1
  278. package/esm/cli/script/script-describe.js +9 -12
  279. package/esm/cli/script/script-describe.js.map +1 -1
  280. package/esm/cli/script/script-export.js +28 -34
  281. package/esm/cli/script/script-export.js.map +1 -1
  282. package/esm/cli/script/script-import.js +10 -13
  283. package/esm/cli/script/script-import.js.map +1 -1
  284. package/esm/cli/script/script-list.js +10 -13
  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 +10 -16
  289. package/esm/cli/service/service-delete.js.map +1 -1
  290. package/esm/cli/service/service-export.js +12 -17
  291. package/esm/cli/service/service-export.js.map +1 -1
  292. package/esm/cli/service/service-import.js +12 -18
  293. package/esm/cli/service/service-import.js.map +1 -1
  294. package/esm/cli/service/service-list.js +9 -15
  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 +12 -19
  299. package/esm/cli/theme/theme-delete.js.map +1 -1
  300. package/esm/cli/theme/theme-export.js +12 -19
  301. package/esm/cli/theme/theme-export.js.map +1 -1
  302. package/esm/cli/theme/theme-import.js +14 -21
  303. package/esm/cli/theme/theme-import.js.map +1 -1
  304. package/esm/cli/theme/theme-list.js +10 -16
  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/ConnectionProfileOps.js +30 -0
  309. package/esm/ops/ConnectionProfileOps.js.map +1 -0
  310. package/esm/ops/IdmOps.js +317 -0
  311. package/esm/ops/IdmOps.js.map +1 -0
  312. package/esm/ops/JourneyOps.js +2 -1
  313. package/esm/ops/JourneyOps.js.map +1 -1
  314. package/esm/ops/ServiceOps.js +20 -20
  315. package/esm/ops/ServiceOps.js.map +1 -1
  316. package/esm/utils/Console.js +15 -25
  317. package/esm/utils/Console.js.map +1 -1
  318. package/package.json +6 -6
  319. package/esm/cli/cmd_common.js +0 -79
  320. package/esm/cli/cmd_common.js.map +0 -1
  321. package/esm/cli/conn/conn-add.js +0 -37
  322. package/esm/cli/conn/conn-add.js.map +0 -1
  323. package/esm/cli/journey/journey-delete.e2e.test_.js.map +0 -1
  324. package/esm/cli/journey/journey-list.e2e.test_.js.map +0 -1
@@ -1,19 +1,18 @@
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('realm').helpOption('-h, --help', 'Help').description('Manage realms.').executableDir(__dirname);
7
- program.command('list', 'List realms.').showHelpAfterError();
6
+ const program = new FrodoStubCommand('realm').description('Manage realms.').executableDir(__dirname);
7
+ program.command('list', 'List realms.');
8
8
  program.command('describe', 'Describe realms.')
9
9
  // for backwards compatibility
10
- .alias('details').showHelpAfterError();
11
- program.command('add-custom-domain', 'Add custom domain (realm DNS alias).').showHelpAfterError();
12
- program.command('remove-custom-domain', 'Remove custom domain (realm DNS alias).').showHelpAfterError();
10
+ .alias('details');
11
+ program.command('add-custom-domain', 'Add custom domain (realm DNS alias).');
12
+ program.command('remove-custom-domain', 'Remove custom domain (realm DNS alias).');
13
13
 
14
- // program.command('delete', 'Delete realms.').showHelpAfterError();
14
+ // program.command('delete', 'Delete realms.');
15
15
 
16
- program.showHelpAfterError();
17
16
  return program;
18
17
  }
19
18
  //# sourceMappingURL=realm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"realm.js","names":["Command","path","fileURLToPath","__dirname","dirname","import","meta","url","setup","program","helpOption","description","executableDir","command","showHelpAfterError","alias"],"sources":["cli/realm/realm.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('realm')\n .helpOption('-h, --help', 'Help')\n .description('Manage realms.')\n .executableDir(__dirname);\n\n program.command('list', 'List realms.').showHelpAfterError();\n\n program\n .command('describe', 'Describe realms.')\n // for backwards compatibility\n .alias('details')\n .showHelpAfterError();\n\n program\n .command('add-custom-domain', 'Add custom domain (realm DNS alias).')\n .showHelpAfterError();\n\n program\n .command('remove-custom-domain', 'Remove custom domain (realm DNS alias).')\n .showHelpAfterError();\n\n // program.command('delete', 'Delete realms.').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,gBAAgB,CAAC,CAC7BC,aAAa,CAACT,SAAS,CAAC;EAE3BM,OAAO,CAACI,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC,CAACC,kBAAkB,EAAE;EAE5DL,OAAO,CACJI,OAAO,CAAC,UAAU,EAAE,kBAAkB;EACvC;EAAA,CACCE,KAAK,CAAC,SAAS,CAAC,CAChBD,kBAAkB,EAAE;EAEvBL,OAAO,CACJI,OAAO,CAAC,mBAAmB,EAAE,sCAAsC,CAAC,CACpEC,kBAAkB,EAAE;EAEvBL,OAAO,CACJI,OAAO,CAAC,sBAAsB,EAAE,yCAAyC,CAAC,CAC1EC,kBAAkB,EAAE;;EAEvB;;EAEAL,OAAO,CAACK,kBAAkB,EAAE;EAC5B,OAAOL,OAAO;AAChB"}
1
+ {"version":3,"file":"realm.js","names":["FrodoStubCommand","path","fileURLToPath","__dirname","dirname","import","meta","url","setup","program","description","executableDir","command","alias"],"sources":["cli/realm/realm.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('realm')\n .description('Manage realms.')\n .executableDir(__dirname);\n\n program.command('list', 'List realms.');\n\n program\n .command('describe', 'Describe realms.')\n // for backwards compatibility\n .alias('details');\n\n program.command('add-custom-domain', 'Add custom domain (realm DNS alias).');\n\n program.command(\n 'remove-custom-domain',\n 'Remove custom domain (realm DNS alias).'\n );\n\n // program.command('delete', 'Delete realms.');\n\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,gBAAgB,CAAC,CAC7BC,aAAa,CAACR,SAAS,CAAC;EAE3BM,OAAO,CAACG,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC;EAEvCH,OAAO,CACJG,OAAO,CAAC,UAAU,EAAE,kBAAkB;EACvC;EAAA,CACCC,KAAK,CAAC,SAAS,CAAC;EAEnBJ,OAAO,CAACG,OAAO,CAAC,mBAAmB,EAAE,sCAAsC,CAAC;EAE5EH,OAAO,CAACG,OAAO,CACb,sBAAsB,EACtB,yCAAyC,CAC1C;;EAED;;EAEA,OAAOH,OAAO;AAChB"}
@@ -1,7 +1,7 @@
1
- import { Command, Option } from 'commander';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
2
3
  import { Authenticate, CirclesOfTrust, state } from '@rockcarver/frodo-lib';
3
- import * as common from '../cmd_common';
4
- import { printMessage } from '../../utils/Console';
4
+ import { printMessage, verboseMessage } from '../../utils/Console';
5
5
  const {
6
6
  getTokens
7
7
  } = Authenticate;
@@ -10,40 +10,31 @@ const {
10
10
  exportCirclesOfTrustToFile,
11
11
  exportCirclesOfTrustToFiles
12
12
  } = CirclesOfTrust;
13
- const program = new Command('frodo saml cot export');
14
- program.description('Export SAML circles of trust.').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, --cot-id <cot-id>', 'Circle of trust 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 <cot-id>.cot.saml.json.')).addOption(new Option('-a, --all', 'Export all the circles of trust in a realm to a single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Export all the circles of trust in a realm as separate files <cot-id>.cot.saml.json. Ignored with -i, and -a.')).action(
13
+ const program = new FrodoCommand('frodo saml cot export');
14
+ program.description('Export SAML circles of trust.').addOption(new Option('-i, --cot-id <cot-id>', 'Circle of trust 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 <cot-id>.cot.saml.json.')).addOption(new Option('-a, --all', 'Export all the circles of trust in a realm to a single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Export all the circles of trust in a realm as separate files <cot-id>.cot.saml.json. Ignored with -i, and -a.')).action(
15
15
  // implement command logic inside action handler
16
- async (host, realm, user, password, options) => {
17
- state.default.session.setTenant(host);
18
- state.default.session.setRealm(realm);
19
- state.default.session.setUsername(user);
20
- state.default.session.setPassword(password);
21
- state.default.session.setDeploymentType(options.type);
22
- state.default.session.setAllowInsecureConnection(options.insecure);
23
- state.default.session.setVerbose(options.verbose);
24
- state.default.session.setDebug(options.debug);
25
- state.default.session.setCurlirize(options.curlirize);
26
- if (await getTokens()) {
27
- // export by id/name
28
- if (options.cotId) {
29
- printMessage(`Exporting circle of trust "${options.cotId}" from realm "${state.default.session.getRealm()}"...`);
30
- exportCircleOfTrust(options.cotId, options.file);
31
- }
32
- // --all -a
33
- else if (options.all) {
34
- printMessage('Exporting all circles of trust to a single file...');
35
- exportCirclesOfTrustToFile(options.file);
36
- }
37
- // --all-separate -A
38
- else if (options.allSeparate) {
39
- printMessage('Exporting all circles of trust to separate files...');
40
- exportCirclesOfTrustToFiles();
41
- }
42
- // unrecognized combination of options or no options
43
- else {
44
- printMessage('Unrecognized combination of options or no options...', 'error');
45
- program.help();
46
- }
16
+ async (host, realm, user, password, options, command) => {
17
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
18
+ // export by id/name
19
+ if (options.cotId && (await getTokens())) {
20
+ verboseMessage(`Exporting circle of trust "${options.cotId}" from realm "${state.getRealm()}"...`);
21
+ exportCircleOfTrust(options.cotId, options.file);
22
+ }
23
+ // --all -a
24
+ else if (options.all && (await getTokens())) {
25
+ verboseMessage('Exporting all circles of trust to a single file...');
26
+ exportCirclesOfTrustToFile(options.file);
27
+ }
28
+ // --all-separate -A
29
+ else if (options.allSeparate && (await getTokens())) {
30
+ verboseMessage('Exporting all circles of trust to separate files...');
31
+ exportCirclesOfTrustToFiles();
32
+ }
33
+ // unrecognized combination of options or no options
34
+ else {
35
+ printMessage('Unrecognized combination of options or no options...', 'error');
36
+ program.help();
37
+ process.exitCode = 1;
47
38
  }
48
39
  }
49
40
  // end command logic inside action handler
@@ -1 +1 @@
1
- {"version":3,"file":"saml-cot-export.js","names":["Command","Option","Authenticate","CirclesOfTrust","state","common","printMessage","getTokens","exportCircleOfTrust","exportCirclesOfTrustToFile","exportCirclesOfTrustToFiles","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","cotId","getRealm","file","all","allSeparate","help","parse"],"sources":["cli/saml/saml-cot-export.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, CirclesOfTrust, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common';\nimport { printMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\nconst {\n exportCircleOfTrust,\n exportCirclesOfTrustToFile,\n exportCirclesOfTrustToFiles,\n} = CirclesOfTrust;\n\nconst program = new Command('frodo saml cot export');\n\nprogram\n .description('Export SAML circles of trust.')\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, --cot-id <cot-id>',\n 'Circle of trust 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 <cot-id>.cot.saml.json.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Export all the circles of trust in a realm to a single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all the circles of trust in a realm as separate files <cot-id>.cot.saml.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 if (await getTokens()) {\n // export by id/name\n if (options.cotId) {\n printMessage(\n `Exporting circle of trust \"${\n options.cotId\n }\" from realm \"${state.default.session.getRealm()}\"...`\n );\n exportCircleOfTrust(options.cotId, options.file);\n }\n // --all -a\n else if (options.all) {\n printMessage('Exporting all circles of trust to a single file...');\n exportCirclesOfTrustToFile(options.file);\n }\n // --all-separate -A\n else if (options.allSeparate) {\n printMessage('Exporting all circles of trust to separate files...');\n exportCirclesOfTrustToFiles();\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 }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
1
+ {"version":3,"file":"saml-cot-export.js","names":["FrodoCommand","Option","Authenticate","CirclesOfTrust","state","printMessage","verboseMessage","getTokens","exportCircleOfTrust","exportCirclesOfTrustToFile","exportCirclesOfTrustToFiles","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","cotId","getRealm","file","all","allSeparate","help","process","exitCode","parse"],"sources":["cli/saml/saml-cot-export.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, CirclesOfTrust, state } from '@rockcarver/frodo-lib';\nimport { printMessage, verboseMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\nconst {\n exportCircleOfTrust,\n exportCirclesOfTrustToFile,\n exportCirclesOfTrustToFiles,\n} = CirclesOfTrust;\n\nconst program = new FrodoCommand('frodo saml cot export');\n\nprogram\n .description('Export SAML circles of trust.')\n .addOption(\n new Option(\n '-i, --cot-id <cot-id>',\n 'Circle of trust 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 <cot-id>.cot.saml.json.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Export all the circles of trust in a realm to a single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all the circles of trust in a realm as separate files <cot-id>.cot.saml.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.cotId && (await getTokens())) {\n verboseMessage(\n `Exporting circle of trust \"${\n options.cotId\n }\" from realm \"${state.getRealm()}\"...`\n );\n exportCircleOfTrust(options.cotId, options.file);\n }\n // --all -a\n else if (options.all && (await getTokens())) {\n verboseMessage('Exporting all circles of trust to a single file...');\n exportCirclesOfTrustToFile(options.file);\n }\n // --all-separate -A\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage('Exporting all circles of trust to separate files...');\n exportCirclesOfTrustToFiles();\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,cAAc,EAAEC,KAAK,QAAQ,uBAAuB;AAC3E,SAASC,YAAY,EAAEC,cAAc,QAAQ,qBAAqB;AAElE,MAAM;EAAEC;AAAU,CAAC,GAAGL,YAAY;AAClC,MAAM;EACJM,mBAAmB;EACnBC,0BAA0B;EAC1BC;AACF,CAAC,GAAGP,cAAc;AAElB,MAAMQ,OAAO,GAAG,IAAIX,YAAY,CAAC,uBAAuB,CAAC;AAEzDW,OAAO,CACJC,WAAW,CAAC,+BAA+B,CAAC,CAC5CC,SAAS,CACR,IAAIZ,MAAM,CACR,uBAAuB,EACvB,+DAA+D,CAChE,CACF,CACAY,SAAS,CACR,IAAIZ,MAAM,CACR,mBAAmB,EACnB,+EAA+E,CAChF,CACF,CACAY,SAAS,CACR,IAAIZ,MAAM,CACR,WAAW,EACX,+EAA+E,CAChF,CACF,CACAY,SAAS,CACR,IAAIZ,MAAM,CACR,oBAAoB,EACpB,+GAA+G,CAChH,CACF,CACAa,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,KAAK,KAAK,MAAMf,SAAS,EAAE,CAAC,EAAE;IACxCD,cAAc,CACX,8BACCa,OAAO,CAACG,KACT,iBAAgBlB,KAAK,CAACmB,QAAQ,EAAG,MAAK,CACxC;IACDf,mBAAmB,CAACW,OAAO,CAACG,KAAK,EAAEH,OAAO,CAACK,IAAI,CAAC;EAClD;EACA;EAAA,KACK,IAAIL,OAAO,CAACM,GAAG,KAAK,MAAMlB,SAAS,EAAE,CAAC,EAAE;IAC3CD,cAAc,CAAC,oDAAoD,CAAC;IACpEG,0BAA0B,CAACU,OAAO,CAACK,IAAI,CAAC;EAC1C;EACA;EAAA,KACK,IAAIL,OAAO,CAACO,WAAW,KAAK,MAAMnB,SAAS,EAAE,CAAC,EAAE;IACnDD,cAAc,CAAC,qDAAqD,CAAC;IACrEI,2BAA2B,EAAE;EAC/B;EACA;EAAA,KACK;IACHL,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,7 +1,7 @@
1
- import { Command, Option } from 'commander';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
2
3
  import { Authenticate, CirclesOfTrust, state } from '@rockcarver/frodo-lib';
3
- import * as common from '../cmd_common';
4
- import { printMessage } from '../../utils/Console';
4
+ import { printMessage, verboseMessage } from '../../utils/Console';
5
5
  const {
6
6
  getTokens
7
7
  } = Authenticate;
@@ -11,45 +11,36 @@ const {
11
11
  importCirclesOfTrustFromFiles,
12
12
  importFirstCircleOfTrust
13
13
  } = CirclesOfTrust;
14
- const program = new Command('frodo saml cot import');
15
- program.description('Import SAML circles of trust.').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, --cot-id <cot-id>', 'Circle of trust id. If specified, only one circle of trust is imported and the options -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the file to import the circle(s) of trust from.')).addOption(new Option('-a, --all', 'Import all circles of trust from single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Import all circles of trust from separate files (*.cot.saml.json) in the current directory. Ignored with -i or -a.')).action(
14
+ const program = new FrodoCommand('frodo saml cot import');
15
+ program.description('Import SAML circles of trust.').addOption(new Option('-i, --cot-id <cot-id>', 'Circle of trust id. If specified, only one circle of trust is imported and the options -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the file to import the circle(s) of trust from.')).addOption(new Option('-a, --all', 'Import all circles of trust from single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Import all circles of trust from separate files (*.cot.saml.json) in the current directory. Ignored with -i or -a.')).action(
16
16
  // implement program logic inside action handler
17
- async (host, realm, user, password, options) => {
18
- state.default.session.setTenant(host);
19
- state.default.session.setRealm(realm);
20
- state.default.session.setUsername(user);
21
- state.default.session.setPassword(password);
22
- state.default.session.setDeploymentType(options.type);
23
- state.default.session.setAllowInsecureConnection(options.insecure);
24
- state.default.session.setVerbose(options.verbose);
25
- state.default.session.setDebug(options.debug);
26
- state.default.session.setCurlirize(options.curlirize);
27
- if (await getTokens()) {
28
- // import by id
29
- if (options.file && options.cotId) {
30
- printMessage(`Importing circle of trust "${options.cotId}" into realm "${state.default.session.getRealm()}"...`);
31
- importCircleOfTrust(options.cotId, options.file);
32
- }
33
- // --all -a
34
- else if (options.all && options.file) {
35
- printMessage(`Importing all circles of trust from a single file (${options.file})...`);
36
- importCirclesOfTrustFromFile(options.file);
37
- }
38
- // --all-separate -A
39
- else if (options.allSeparate && !options.file) {
40
- printMessage('Importing all circles of trust from separate files (*.saml.json) in current directory...');
41
- importCirclesOfTrustFromFiles();
42
- }
43
- // import first provider from file
44
- else if (options.file) {
45
- printMessage(`Importing first circle of trust from file "${options.file}" into realm "${state.default.session.getRealm()}"...`);
46
- importFirstCircleOfTrust(options.file);
47
- }
48
- // unrecognized combination of options or no options
49
- else {
50
- printMessage('Unrecognized combination of options or no options...');
51
- program.help();
52
- }
17
+ async (host, realm, user, password, options, command) => {
18
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
19
+ // import by id
20
+ if (options.file && options.cotId && (await getTokens())) {
21
+ verboseMessage(`Importing circle of trust "${options.cotId}" into realm "${state.getRealm()}"...`);
22
+ importCircleOfTrust(options.cotId, options.file);
23
+ }
24
+ // --all -a
25
+ else if (options.all && options.file && (await getTokens())) {
26
+ verboseMessage(`Importing all circles of trust from a single file (${options.file})...`);
27
+ importCirclesOfTrustFromFile(options.file);
28
+ }
29
+ // --all-separate -A
30
+ else if (options.allSeparate && !options.file && (await getTokens())) {
31
+ verboseMessage('Importing all circles of trust from separate files (*.saml.json) in current directory...');
32
+ importCirclesOfTrustFromFiles();
33
+ }
34
+ // import first provider from file
35
+ else if (options.file && (await getTokens())) {
36
+ verboseMessage(`Importing first circle of trust from file "${options.file}" into realm "${state.getRealm()}"...`);
37
+ importFirstCircleOfTrust(options.file);
38
+ }
39
+ // unrecognized combination of options or no options
40
+ else {
41
+ printMessage('Unrecognized combination of options or no options...', 'error');
42
+ program.help();
43
+ process.exitCode = 1;
53
44
  }
54
45
  }
55
46
  // end program logic inside action handler
@@ -1 +1 @@
1
- {"version":3,"file":"saml-cot-import.js","names":["Command","Option","Authenticate","CirclesOfTrust","state","common","printMessage","getTokens","importCircleOfTrust","importCirclesOfTrustFromFile","importCirclesOfTrustFromFiles","importFirstCircleOfTrust","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","cotId","getRealm","all","allSeparate","help","parse"],"sources":["cli/saml/saml-cot-import.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, CirclesOfTrust, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common';\nimport { printMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\nconst {\n importCircleOfTrust,\n importCirclesOfTrustFromFile,\n importCirclesOfTrustFromFiles,\n importFirstCircleOfTrust,\n} = CirclesOfTrust;\n\nconst program = new Command('frodo saml cot import');\n\nprogram\n .description('Import SAML circles of trust.')\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, --cot-id <cot-id>',\n 'Circle of trust id. If specified, only one circle of trust is imported and the options -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-f, --file <file>',\n 'Name of the file to import the circle(s) of trust from.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Import all circles of trust from single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all circles of trust from separate files (*.cot.saml.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 if (await getTokens()) {\n // import by id\n if (options.file && options.cotId) {\n printMessage(\n `Importing circle of trust \"${\n options.cotId\n }\" into realm \"${state.default.session.getRealm()}\"...`\n );\n importCircleOfTrust(options.cotId, options.file);\n }\n // --all -a\n else if (options.all && options.file) {\n printMessage(\n `Importing all circles of trust from a single file (${options.file})...`\n );\n importCirclesOfTrustFromFile(options.file);\n }\n // --all-separate -A\n else if (options.allSeparate && !options.file) {\n printMessage(\n 'Importing all circles of trust from separate files (*.saml.json) in current directory...'\n );\n importCirclesOfTrustFromFiles();\n }\n // import first provider from file\n else if (options.file) {\n printMessage(\n `Importing first circle of trust from file \"${\n options.file\n }\" into realm \"${state.default.session.getRealm()}\"...`\n );\n importFirstCircleOfTrust(options.file);\n }\n // unrecognized combination of options or no options\n else {\n printMessage('Unrecognized combination of options or no options...');\n program.help();\n }\n }\n }\n // end program logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
1
+ {"version":3,"file":"saml-cot-import.js","names":["FrodoCommand","Option","Authenticate","CirclesOfTrust","state","printMessage","verboseMessage","getTokens","importCircleOfTrust","importCirclesOfTrustFromFile","importCirclesOfTrustFromFiles","importFirstCircleOfTrust","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","file","cotId","getRealm","all","allSeparate","help","process","exitCode","parse"],"sources":["cli/saml/saml-cot-import.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, CirclesOfTrust, state } from '@rockcarver/frodo-lib';\nimport { printMessage, verboseMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\nconst {\n importCircleOfTrust,\n importCirclesOfTrustFromFile,\n importCirclesOfTrustFromFiles,\n importFirstCircleOfTrust,\n} = CirclesOfTrust;\n\nconst program = new FrodoCommand('frodo saml cot import');\n\nprogram\n .description('Import SAML circles of trust.')\n .addOption(\n new Option(\n '-i, --cot-id <cot-id>',\n 'Circle of trust id. If specified, only one circle of trust is imported and the options -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-f, --file <file>',\n 'Name of the file to import the circle(s) of trust from.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Import all circles of trust from single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all circles of trust from separate files (*.cot.saml.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.cotId && (await getTokens())) {\n verboseMessage(\n `Importing circle of trust \"${\n options.cotId\n }\" into realm \"${state.getRealm()}\"...`\n );\n importCircleOfTrust(options.cotId, options.file);\n }\n // --all -a\n else if (options.all && options.file && (await getTokens())) {\n verboseMessage(\n `Importing all circles of trust from a single file (${options.file})...`\n );\n importCirclesOfTrustFromFile(options.file);\n }\n // --all-separate -A\n else if (options.allSeparate && !options.file && (await getTokens())) {\n verboseMessage(\n 'Importing all circles of trust from separate files (*.saml.json) in current directory...'\n );\n importCirclesOfTrustFromFiles();\n }\n // import first provider from file\n else if (options.file && (await getTokens())) {\n verboseMessage(\n `Importing first circle of trust from file \"${\n options.file\n }\" into realm \"${state.getRealm()}\"...`\n );\n importFirstCircleOfTrust(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,EAAEC,cAAc,EAAEC,KAAK,QAAQ,uBAAuB;AAC3E,SAASC,YAAY,EAAEC,cAAc,QAAQ,qBAAqB;AAElE,MAAM;EAAEC;AAAU,CAAC,GAAGL,YAAY;AAClC,MAAM;EACJM,mBAAmB;EACnBC,4BAA4B;EAC5BC,6BAA6B;EAC7BC;AACF,CAAC,GAAGR,cAAc;AAElB,MAAMS,OAAO,GAAG,IAAIZ,YAAY,CAAC,uBAAuB,CAAC;AAEzDY,OAAO,CACJC,WAAW,CAAC,+BAA+B,CAAC,CAC5CC,SAAS,CACR,IAAIb,MAAM,CACR,uBAAuB,EACvB,+GAA+G,CAChH,CACF,CACAa,SAAS,CACR,IAAIb,MAAM,CACR,mBAAmB,EACnB,yDAAyD,CAC1D,CACF,CACAa,SAAS,CACR,IAAIb,MAAM,CACR,WAAW,EACX,gEAAgE,CACjE,CACF,CACAa,SAAS,CACR,IAAIb,MAAM,CACR,oBAAoB,EACpB,oHAAoH,CACrH,CACF,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;EACA,IAAID,OAAO,CAACG,IAAI,IAAIH,OAAO,CAACI,KAAK,KAAK,MAAMjB,SAAS,EAAE,CAAC,EAAE;IACxDD,cAAc,CACX,8BACCc,OAAO,CAACI,KACT,iBAAgBpB,KAAK,CAACqB,QAAQ,EAAG,MAAK,CACxC;IACDjB,mBAAmB,CAACY,OAAO,CAACI,KAAK,EAAEJ,OAAO,CAACG,IAAI,CAAC;EAClD;EACA;EAAA,KACK,IAAIH,OAAO,CAACM,GAAG,IAAIN,OAAO,CAACG,IAAI,KAAK,MAAMhB,SAAS,EAAE,CAAC,EAAE;IAC3DD,cAAc,CACX,sDAAqDc,OAAO,CAACG,IAAK,MAAK,CACzE;IACDd,4BAA4B,CAACW,OAAO,CAACG,IAAI,CAAC;EAC5C;EACA;EAAA,KACK,IAAIH,OAAO,CAACO,WAAW,IAAI,CAACP,OAAO,CAACG,IAAI,KAAK,MAAMhB,SAAS,EAAE,CAAC,EAAE;IACpED,cAAc,CACZ,0FAA0F,CAC3F;IACDI,6BAA6B,EAAE;EACjC;EACA;EAAA,KACK,IAAIU,OAAO,CAACG,IAAI,KAAK,MAAMhB,SAAS,EAAE,CAAC,EAAE;IAC5CD,cAAc,CACX,8CACCc,OAAO,CAACG,IACT,iBAAgBnB,KAAK,CAACqB,QAAQ,EAAG,MAAK,CACxC;IACDd,wBAAwB,CAACS,OAAO,CAACG,IAAI,CAAC;EACxC;EACA;EAAA,KACK;IACHlB,YAAY,CACV,sDAAsD,EACtD,OAAO,CACR;IACDO,OAAO,CAACgB,IAAI,EAAE;IACdC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHlB,OAAO,CAACmB,KAAK,EAAE"}
@@ -1,29 +1,23 @@
1
- import { Command, Option } from 'commander';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
2
3
  import { Authenticate, CirclesOfTrust, state } from '@rockcarver/frodo-lib';
3
- import * as common from '../cmd_common';
4
- import { printMessage } from '../../utils/Console';
4
+ import { verboseMessage } from '../../utils/Console';
5
5
  const {
6
6
  getTokens
7
7
  } = Authenticate;
8
8
  const {
9
9
  listCirclesOfTrust
10
10
  } = CirclesOfTrust;
11
- const program = new Command('frodo saml cot list');
12
- program.description('List SAML circles of trust.').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(
11
+ const program = new FrodoCommand('frodo saml cot list');
12
+ program.description('List SAML circles of trust.').addOption(new Option('-l, --long', 'Long with all fields.').default(false, 'false')).action(
13
13
  // implement command logic inside action handler
14
- async (host, realm, user, password, options) => {
15
- state.default.session.setTenant(host);
16
- state.default.session.setRealm(realm);
17
- state.default.session.setUsername(user);
18
- state.default.session.setPassword(password);
19
- state.default.session.setDeploymentType(options.type);
20
- state.default.session.setAllowInsecureConnection(options.insecure);
21
- state.default.session.setVerbose(options.verbose);
22
- state.default.session.setDebug(options.debug);
23
- state.default.session.setCurlirize(options.curlirize);
14
+ async (host, realm, user, password, options, command) => {
15
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
24
16
  if (await getTokens()) {
25
- printMessage(`Listing SAML circles of trust in realm "${state.default.session.getRealm()}"...`);
17
+ verboseMessage(`Listing SAML circles of trust in realm "${state.getRealm()}"...`);
26
18
  listCirclesOfTrust(options.long);
19
+ } else {
20
+ process.exitCode = 1;
27
21
  }
28
22
  }
29
23
  // end command logic inside action handler
@@ -1 +1 @@
1
- {"version":3,"file":"saml-cot-list.js","names":["Command","Option","Authenticate","CirclesOfTrust","state","common","printMessage","getTokens","listCirclesOfTrust","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","getRealm","long","parse"],"sources":["cli/saml/saml-cot-list.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, CirclesOfTrust, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common';\nimport { printMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\nconst { listCirclesOfTrust } = CirclesOfTrust;\n\nconst program = new Command('frodo saml cot list');\n\nprogram\n .description('List SAML circles of trust.')\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 printMessage(\n `Listing SAML circles of trust in realm \"${state.default.session.getRealm()}\"...`\n );\n listCirclesOfTrust(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,cAAc,EAAEC,KAAK,QAAQ,uBAAuB;AAC3E,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,SAASC,YAAY,QAAQ,qBAAqB;AAElD,MAAM;EAAEC;AAAU,CAAC,GAAGL,YAAY;AAClC,MAAM;EAAEM;AAAmB,CAAC,GAAGL,cAAc;AAE7C,MAAMM,OAAO,GAAG,IAAIT,OAAO,CAAC,qBAAqB,CAAC;AAElDS,OAAO,CACJC,WAAW,CAAC,6BAA6B,CAAC,CAC1CC,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,IAAIjB,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACuB,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,MAAMtC,SAAS,EAAE,EAAE;IACrBD,YAAY,CACT,2CAA0CF,KAAK,CAACoB,OAAO,CAACO,OAAO,CAACe,QAAQ,EAAG,MAAK,CAClF;IACDtC,kBAAkB,CAACsB,OAAO,CAACiB,IAAI,CAAC;EAClC;AACF;AACA;AAAA,CACD;;AAEHtC,OAAO,CAACuC,KAAK,EAAE"}
1
+ {"version":3,"file":"saml-cot-list.js","names":["FrodoCommand","Option","Authenticate","CirclesOfTrust","state","verboseMessage","getTokens","listCirclesOfTrust","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","getRealm","long","process","exitCode","parse"],"sources":["cli/saml/saml-cot-list.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, CirclesOfTrust, state } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\nconst { listCirclesOfTrust } = CirclesOfTrust;\n\nconst program = new FrodoCommand('frodo saml cot list');\n\nprogram\n .description('List SAML circles of trust.')\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(\n `Listing SAML circles of trust in realm \"${state.getRealm()}\"...`\n );\n listCirclesOfTrust(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,EAAEC,cAAc,EAAEC,KAAK,QAAQ,uBAAuB;AAC3E,SAASC,cAAc,QAAQ,qBAAqB;AAEpD,MAAM;EAAEC;AAAU,CAAC,GAAGJ,YAAY;AAClC,MAAM;EAAEK;AAAmB,CAAC,GAAGJ,cAAc;AAE7C,MAAMK,OAAO,GAAG,IAAIR,YAAY,CAAC,qBAAqB,CAAC;AAEvDQ,OAAO,CACJC,WAAW,CAAC,6BAA6B,CAAC,CAC1CC,SAAS,CACR,IAAIT,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACU,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,MAAMZ,SAAS,EAAE,EAAE;IACrBD,cAAc,CACX,2CAA0CD,KAAK,CAACgB,QAAQ,EAAG,MAAK,CAClE;IACDb,kBAAkB,CAACU,OAAO,CAACI,IAAI,CAAC;EAClC,CAAC,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHf,OAAO,CAACgB,KAAK,EAAE"}
@@ -1,8 +1,8 @@
1
- import { Command } from 'commander';
2
- const program = new Command('frodo saml cot');
3
- program.description('Manage circles of trust.').helpOption('-h, --help', 'Help').showHelpAfterError();
4
- program.command('list', 'List circles of trust.').showHelpAfterError();
5
- program.command('export', 'Export circles of trust.').showHelpAfterError();
6
- program.command('import', 'Import circles of trust.').showHelpAfterError();
1
+ import { FrodoStubCommand } from '../FrodoCommand';
2
+ const program = new FrodoStubCommand('frodo saml cot');
3
+ program.description('Manage circles of trust.');
4
+ program.command('list', 'List circles of trust.');
5
+ program.command('export', 'Export circles of trust.');
6
+ program.command('import', 'Import circles of trust.');
7
7
  program.parse();
8
8
  //# sourceMappingURL=saml-cot.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"saml-cot.js","names":["Command","program","description","helpOption","showHelpAfterError","command","parse"],"sources":["cli/saml/saml-cot.ts"],"sourcesContent":["import { Command } from 'commander';\n\nconst program = new Command('frodo saml cot');\n\nprogram\n .description('Manage circles of trust.')\n .helpOption('-h, --help', 'Help')\n .showHelpAfterError();\n\nprogram.command('list', 'List circles of trust.').showHelpAfterError();\n\nprogram.command('export', 'Export circles of trust.').showHelpAfterError();\n\nprogram.command('import', 'Import circles of trust.').showHelpAfterError();\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,WAAW;AAEnC,MAAMC,OAAO,GAAG,IAAID,OAAO,CAAC,gBAAgB,CAAC;AAE7CC,OAAO,CACJC,WAAW,CAAC,0BAA0B,CAAC,CACvCC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAChCC,kBAAkB,EAAE;AAEvBH,OAAO,CAACI,OAAO,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAACD,kBAAkB,EAAE;AAEtEH,OAAO,CAACI,OAAO,CAAC,QAAQ,EAAE,0BAA0B,CAAC,CAACD,kBAAkB,EAAE;AAE1EH,OAAO,CAACI,OAAO,CAAC,QAAQ,EAAE,0BAA0B,CAAC,CAACD,kBAAkB,EAAE;AAE1EH,OAAO,CAACK,KAAK,EAAE"}
1
+ {"version":3,"file":"saml-cot.js","names":["FrodoStubCommand","program","description","command","parse"],"sources":["cli/saml/saml-cot.ts"],"sourcesContent":["import { FrodoStubCommand } from '../FrodoCommand';\n\nconst program = new FrodoStubCommand('frodo saml cot');\n\nprogram.description('Manage circles of trust.');\n\nprogram.command('list', 'List circles of trust.');\n\nprogram.command('export', 'Export circles of trust.');\n\nprogram.command('import', 'Import circles of trust.');\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,iBAAiB;AAElD,MAAMC,OAAO,GAAG,IAAID,gBAAgB,CAAC,gBAAgB,CAAC;AAEtDC,OAAO,CAACC,WAAW,CAAC,0BAA0B,CAAC;AAE/CD,OAAO,CAACE,OAAO,CAAC,MAAM,EAAE,wBAAwB,CAAC;AAEjDF,OAAO,CAACE,OAAO,CAAC,QAAQ,EAAE,0BAA0B,CAAC;AAErDF,OAAO,CAACE,OAAO,CAAC,QAAQ,EAAE,0BAA0B,CAAC;AAErDF,OAAO,CAACG,KAAK,EAAE"}
@@ -1,7 +1,7 @@
1
- import { Authenticate, Saml2, state } from '@rockcarver/frodo-lib';
2
- import { Command, Option } from 'commander';
1
+ import { FrodoCommand } from '../FrodoCommand';
2
+ import { Option } from 'commander';
3
+ import { Authenticate, Saml2 } from '@rockcarver/frodo-lib';
3
4
  import { printMessage, verboseMessage } from '../../utils/Console.js';
4
- import * as common from '../cmd_common.js';
5
5
  const {
6
6
  getTokens
7
7
  } = Authenticate;
@@ -9,19 +9,11 @@ const {
9
9
  deleteSaml2Provider,
10
10
  deleteSaml2Providers
11
11
  } = Saml2;
12
- const program = new Command('frodo saml delete');
13
- program.description('Delete SAML entity providers.').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, --entity-id <entity-id>', 'Entity id. If specified, -a is ignored.')).addOption(new Option('-a, --all', 'Delete all entity providers. Ignored with -i.')).action(
12
+ const program = new FrodoCommand('frodo saml delete');
13
+ program.description('Delete SAML entity providers.').addOption(new Option('-i, --entity-id <entity-id>', 'Entity id. If specified, -a is ignored.')).addOption(new Option('-a, --all', 'Delete all entity providers. Ignored with -i.')).action(
14
14
  // implement command logic inside action handler
15
- async (host, realm, user, password, options) => {
16
- state.default.session.setTenant(host);
17
- state.default.session.setRealm(realm);
18
- state.default.session.setUsername(user);
19
- state.default.session.setPassword(password);
20
- state.default.session.setDeploymentType(options.type);
21
- state.default.session.setAllowInsecureConnection(options.insecure);
22
- state.default.session.setVerbose(options.verbose);
23
- state.default.session.setDebug(options.debug);
24
- state.default.session.setCurlirize(options.curlirize);
15
+ async (host, realm, user, password, options, command) => {
16
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
25
17
  // -i / --entity-id
26
18
  if (options.entityId && (await getTokens())) {
27
19
  verboseMessage(`Deleting entity provider '${options.entityId}'...`);
@@ -36,6 +28,7 @@ async (host, realm, user, password, options) => {
36
28
  else {
37
29
  printMessage('Unrecognized combination of options or no options...', 'error');
38
30
  program.help();
31
+ process.exitCode = 1;
39
32
  }
40
33
  }
41
34
  // end command logic inside action handler
@@ -1 +1 @@
1
- {"version":3,"file":"saml-delete.js","names":["Authenticate","Saml2","state","Command","Option","printMessage","verboseMessage","common","getTokens","deleteSaml2Provider","deleteSaml2Providers","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","entityId","all","help","parse"],"sources":["cli/saml/saml-delete.ts"],"sourcesContent":["import { Authenticate, Saml2, state } from '@rockcarver/frodo-lib';\nimport { Command, Option } from 'commander';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport * as common from '../cmd_common.js';\n\nconst { getTokens } = Authenticate;\nconst { deleteSaml2Provider, deleteSaml2Providers } = Saml2;\n\nconst program = new Command('frodo saml delete');\n\nprogram\n .description('Delete SAML entity providers.')\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, --entity-id <entity-id>',\n 'Entity id. If specified, -a is ignored.'\n )\n )\n .addOption(\n new Option('-a, --all', 'Delete all entity providers. Ignored with -i.')\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 // -i / --entity-id\n if (options.entityId && (await getTokens())) {\n verboseMessage(`Deleting entity provider '${options.entityId}'...`);\n await deleteSaml2Provider(options.entityId);\n }\n // -a / --all\n else if (options.all && (await getTokens())) {\n verboseMessage(`Deleting all entity providers...`);\n await deleteSaml2Providers();\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":"saml-delete.js","names":["FrodoCommand","Option","Authenticate","Saml2","printMessage","verboseMessage","getTokens","deleteSaml2Provider","deleteSaml2Providers","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","entityId","all","help","process","exitCode","parse"],"sources":["cli/saml/saml-delete.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, Saml2 } from '@rockcarver/frodo-lib';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\n\nconst { getTokens } = Authenticate;\nconst { deleteSaml2Provider, deleteSaml2Providers } = Saml2;\n\nconst program = new FrodoCommand('frodo saml delete');\n\nprogram\n .description('Delete SAML entity providers.')\n .addOption(\n new Option(\n '-i, --entity-id <entity-id>',\n 'Entity id. If specified, -a is ignored.'\n )\n )\n .addOption(\n new Option('-a, --all', 'Delete all entity providers. Ignored with -i.')\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 // -i / --entity-id\n if (options.entityId && (await getTokens())) {\n verboseMessage(`Deleting entity provider '${options.entityId}'...`);\n await deleteSaml2Provider(options.entityId);\n }\n // -a / --all\n else if (options.all && (await getTokens())) {\n verboseMessage(`Deleting all entity providers...`);\n await deleteSaml2Providers();\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;AAErE,MAAM;EAAEC;AAAU,CAAC,GAAGJ,YAAY;AAClC,MAAM;EAAEK,mBAAmB;EAAEC;AAAqB,CAAC,GAAGL,KAAK;AAE3D,MAAMM,OAAO,GAAG,IAAIT,YAAY,CAAC,mBAAmB,CAAC;AAErDS,OAAO,CACJC,WAAW,CAAC,+BAA+B,CAAC,CAC5CC,SAAS,CACR,IAAIV,MAAM,CACR,6BAA6B,EAC7B,yCAAyC,CAC1C,CACF,CACAU,SAAS,CACR,IAAIV,MAAM,CAAC,WAAW,EAAE,+CAA+C,CAAC,CACzE,CACAW,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,QAAQ,KAAK,MAAMd,SAAS,EAAE,CAAC,EAAE;IAC3CD,cAAc,CAAE,6BAA4BY,OAAO,CAACG,QAAS,MAAK,CAAC;IACnE,MAAMb,mBAAmB,CAACU,OAAO,CAACG,QAAQ,CAAC;EAC7C;EACA;EAAA,KACK,IAAIH,OAAO,CAACI,GAAG,KAAK,MAAMf,SAAS,EAAE,CAAC,EAAE;IAC3CD,cAAc,CAAE,kCAAiC,CAAC;IAClD,MAAMG,oBAAoB,EAAE;EAC9B;EACA;EAAA,KACK;IACHJ,YAAY,CACV,sDAAsD,EACtD,OAAO,CACR;IACDK,OAAO,CAACa,IAAI,EAAE;IACdC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHf,OAAO,CAACgB,KAAK,EAAE"}
@@ -1,27 +1,21 @@
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';
4
- import { printMessage } from '../../utils/Console';
4
+ import { verboseMessage } from '../../utils/Console';
5
5
  import { describeSaml2Provider } from '../../ops/Saml2Ops';
6
6
  const {
7
7
  getTokens
8
8
  } = Authenticate;
9
- const program = new Command('frodo saml describe');
10
- program.description('Describe the configuration of an entity provider.').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, --entity-id <entity-id>', 'Entity id.')).action(
9
+ const program = new FrodoCommand('frodo saml describe');
10
+ program.description('Describe the configuration of an entity provider.').addOption(new Option('-i, --entity-id <entity-id>', 'Entity id.')).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
- printMessage(`Describing SAML entity provider ${options.entityId} in realm "${state.default.session.getRealm()}"...`);
15
+ verboseMessage(`Describing SAML entity provider ${options.entityId} in realm "${state.getRealm()}"...`);
24
16
  describeSaml2Provider(options.entityId);
17
+ } else {
18
+ process.exitCode = 1;
25
19
  }
26
20
  }
27
21
  // end command logic inside action handler
@@ -1 +1 @@
1
- {"version":3,"file":"saml-describe.js","names":["Command","Option","Authenticate","state","common","printMessage","describeSaml2Provider","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","entityId","getRealm","parse"],"sources":["cli/saml/saml-describe.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common';\nimport { printMessage } from '../../utils/Console';\nimport { describeSaml2Provider } from '../../ops/Saml2Ops';\n\nconst { getTokens } = Authenticate;\n\nconst program = new Command('frodo saml describe');\n\nprogram\n .description('Describe the configuration of an entity provider.')\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(new Option('-i, --entity-id <entity-id>', 'Entity id.'))\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 printMessage(\n `Describing SAML entity provider ${\n options.entityId\n } in realm \"${state.default.session.getRealm()}\"...`\n );\n describeSaml2Provider(options.entityId);\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,eAAe;AACvC,SAASC,YAAY,QAAQ,qBAAqB;AAClD,SAASC,qBAAqB,QAAQ,oBAAoB;AAE1D,MAAM;EAAEC;AAAU,CAAC,GAAGL,YAAY;AAElC,MAAMM,OAAO,GAAG,IAAIR,OAAO,CAAC,qBAAqB,CAAC;AAElDQ,OAAO,CACJC,WAAW,CAAC,mDAAmD,CAAC,CAChEC,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,CAAC,IAAIhB,MAAM,CAAC,6BAA6B,EAAE,YAAY,CAAC,CAAC,CAClEsB,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,KAAK;EAC9CzB,KAAK,CAAC0B,OAAO,CAACC,OAAO,CAACC,SAAS,CAACP,IAAI,CAAC;EACrCrB,KAAK,CAAC0B,OAAO,CAACC,OAAO,CAACE,QAAQ,CAACP,KAAK,CAAC;EACrCtB,KAAK,CAAC0B,OAAO,CAACC,OAAO,CAACG,WAAW,CAACP,IAAI,CAAC;EACvCvB,KAAK,CAAC0B,OAAO,CAACC,OAAO,CAACI,WAAW,CAACP,QAAQ,CAAC;EAC3CxB,KAAK,CAAC0B,OAAO,CAACC,OAAO,CAACK,iBAAiB,CAACP,OAAO,CAACQ,IAAI,CAAC;EACrDjC,KAAK,CAAC0B,OAAO,CAACC,OAAO,CAACO,0BAA0B,CAACT,OAAO,CAACU,QAAQ,CAAC;EAClEnC,KAAK,CAAC0B,OAAO,CAACC,OAAO,CAACS,UAAU,CAACX,OAAO,CAACY,OAAO,CAAC;EACjDrC,KAAK,CAAC0B,OAAO,CAACC,OAAO,CAACW,QAAQ,CAACb,OAAO,CAACc,KAAK,CAAC;EAC7CvC,KAAK,CAAC0B,OAAO,CAACC,OAAO,CAACa,YAAY,CAACf,OAAO,CAACgB,SAAS,CAAC;EACrD,IAAI,MAAMrC,SAAS,EAAE,EAAE;IACrBF,YAAY,CACT,mCACCuB,OAAO,CAACiB,QACT,cAAa1C,KAAK,CAAC0B,OAAO,CAACC,OAAO,CAACgB,QAAQ,EAAG,MAAK,CACrD;IACDxC,qBAAqB,CAACsB,OAAO,CAACiB,QAAQ,CAAC;EACzC;AACF;AACA;AAAA,CACD;;AAEHrC,OAAO,CAACuC,KAAK,EAAE"}
1
+ {"version":3,"file":"saml-describe.js","names":["FrodoCommand","Option","Authenticate","state","verboseMessage","describeSaml2Provider","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","entityId","getRealm","process","exitCode","parse"],"sources":["cli/saml/saml-describe.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, state } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console';\nimport { describeSaml2Provider } from '../../ops/Saml2Ops';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo saml describe');\n\nprogram\n .description('Describe the configuration of an entity provider.')\n .addOption(new Option('-i, --entity-id <entity-id>', 'Entity id.'))\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(\n `Describing SAML entity provider ${\n options.entityId\n } in realm \"${state.getRealm()}\"...`\n );\n describeSaml2Provider(options.entityId);\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,EAAEC,KAAK,QAAQ,uBAAuB;AAC3D,SAASC,cAAc,QAAQ,qBAAqB;AACpD,SAASC,qBAAqB,QAAQ,oBAAoB;AAE1D,MAAM;EAAEC;AAAU,CAAC,GAAGJ,YAAY;AAElC,MAAMK,OAAO,GAAG,IAAIP,YAAY,CAAC,qBAAqB,CAAC;AAEvDO,OAAO,CACJC,WAAW,CAAC,mDAAmD,CAAC,CAChEC,SAAS,CAAC,IAAIR,MAAM,CAAC,6BAA6B,EAAE,YAAY,CAAC,CAAC,CAClES,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,MAAMV,SAAS,EAAE,EAAE;IACrBF,cAAc,CACX,mCACCW,OAAO,CAACG,QACT,cAAaf,KAAK,CAACgB,QAAQ,EAAG,MAAK,CACrC;IACDd,qBAAqB,CAACU,OAAO,CAACG,QAAQ,CAAC;EACzC,CAAC,MAAM;IACLE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHd,OAAO,CAACe,KAAK,EAAE"}
@@ -1,31 +1,23 @@
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';
4
4
  import { printMessage, verboseMessage } from '../../utils/Console';
5
5
  import { exportRawSaml2ProvidersToFile, exportRawSaml2ProvidersToFiles, exportRawSaml2ProviderToFile, exportSaml2ProviderToFile, exportSaml2ProvidersToFile, exportSaml2ProvidersToFiles } from '../../ops/Saml2Ops';
6
6
  const {
7
7
  getTokens
8
8
  } = Authenticate;
9
- const program = new Command('frodo saml export');
10
- program.description('Export SAML entity providers.').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, --entity-id <entity-id>', 'Entity id. If specified, -a and -A are ignored.')).addOption(new Option('-f, --file [file]', 'Name of the file to write the exported provider(s) to. Ignored with -A. If not specified, the export file is named <id>.saml.json.')).addOption(new Option('-a, --all', 'Export all the providers in a realm to a single file. Ignored with -t and -i.')).addOption(new Option('-A, --all-separate', 'Export all the providers in a realm as separate files <provider name>.saml.json. Ignored with -t, -i, and -a.')).addOption(new Option('--raw', 'Include raw XML in export.')).action(
9
+ const program = new FrodoCommand('frodo saml export');
10
+ program.description('Export SAML entity providers.').addOption(new Option('-i, --entity-id <entity-id>', 'Entity id. If specified, -a and -A are ignored.')).addOption(new Option('-f, --file [file]', 'Name of the file to write the exported provider(s) to. Ignored with -A. If not specified, the export file is named <id>.saml.json.')).addOption(new Option('-a, --all', 'Export all the providers in a realm to a single file. Ignored with -t and -i.')).addOption(new Option('-A, --all-separate', 'Export all the providers in a realm as separate files <provider name>.saml.json. Ignored with -t, -i, and -a.')).addOption(new Option('--raw', 'Include raw XML in export.')).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.entityId && (await getTokens())) {
24
16
  if (!options.raw) {
25
- verboseMessage(`Exporting provider "${options.entityId}" from realm "${state.default.session.getRealm()}"...`);
17
+ verboseMessage(`Exporting provider "${options.entityId}" from realm "${state.getRealm()}"...`);
26
18
  await exportSaml2ProviderToFile(options.entityId, options.file);
27
19
  } else {
28
- verboseMessage(`Exporting raw provider "${options.entityId}" from realm "${state.default.session.getRealm()}"...`);
20
+ verboseMessage(`Exporting raw provider "${options.entityId}" from realm "${state.getRealm()}"...`);
29
21
  await exportRawSaml2ProviderToFile(options.entityId, options.file);
30
22
  }
31
23
  }
@@ -53,6 +45,7 @@ async (host, realm, user, password, options) => {
53
45
  else {
54
46
  printMessage('Unrecognized combination of options or no options...', 'error');
55
47
  program.help();
48
+ process.exitCode = 1;
56
49
  }
57
50
  }
58
51
  // end command logic inside action handler