@rockcarver/frodo-cli 0.15.0 → 0.15.1

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 (272) hide show
  1. package/CHANGELOG.md +17 -1
  2. package/esm/app.js +55 -0
  3. package/esm/app.js.map +1 -0
  4. package/esm/cli/_template/cmd-delete.js +22 -0
  5. package/esm/cli/_template/cmd-delete.js.map +1 -0
  6. package/esm/cli/_template/cmd-describe.js +22 -0
  7. package/esm/cli/_template/cmd-describe.js.map +1 -0
  8. package/esm/cli/_template/cmd-export.js +22 -0
  9. package/esm/cli/_template/cmd-export.js.map +1 -0
  10. package/esm/cli/_template/cmd-import.js +22 -0
  11. package/esm/cli/_template/cmd-import.js.map +1 -0
  12. package/esm/cli/_template/cmd-list.js +22 -0
  13. package/esm/cli/_template/cmd-list.js.map +1 -0
  14. package/esm/cli/_template/cmd-sub1-delete.js +22 -0
  15. package/esm/cli/_template/cmd-sub1-delete.js.map +1 -0
  16. package/esm/cli/_template/cmd-sub1-describe.js +22 -0
  17. package/esm/cli/_template/cmd-sub1-describe.js.map +1 -0
  18. package/esm/cli/_template/cmd-sub1-export.js +22 -0
  19. package/esm/cli/_template/cmd-sub1-export.js.map +1 -0
  20. package/esm/cli/_template/cmd-sub1-import.js +22 -0
  21. package/esm/cli/_template/cmd-sub1-import.js.map +1 -0
  22. package/esm/cli/_template/cmd-sub1-list.js +22 -0
  23. package/esm/cli/_template/cmd-sub1-list.js.map +1 -0
  24. package/esm/cli/_template/cmd-sub1.js +10 -0
  25. package/esm/cli/_template/cmd-sub1.js.map +1 -0
  26. package/esm/cli/_template/cmd-sub2-delete.js +22 -0
  27. package/esm/cli/_template/cmd-sub2-delete.js.map +1 -0
  28. package/esm/cli/_template/cmd-sub2-describe.js +22 -0
  29. package/esm/cli/_template/cmd-sub2-describe.js.map +1 -0
  30. package/esm/cli/_template/cmd-sub2-export.js +22 -0
  31. package/esm/cli/_template/cmd-sub2-export.js.map +1 -0
  32. package/esm/cli/_template/cmd-sub2-import.js +22 -0
  33. package/esm/cli/_template/cmd-sub2-import.js.map +1 -0
  34. package/esm/cli/_template/cmd-sub2-list.js +22 -0
  35. package/esm/cli/_template/cmd-sub2-list.js.map +1 -0
  36. package/esm/cli/_template/cmd-sub2.js +10 -0
  37. package/esm/cli/_template/cmd-sub2.js.map +1 -0
  38. package/esm/cli/_template/cmd.js +19 -0
  39. package/esm/cli/_template/cmd.js.map +1 -0
  40. package/esm/cli/admin/admin-add-autoid-static-user-mapping.js +28 -0
  41. package/esm/cli/admin/admin-add-autoid-static-user-mapping.js.map +1 -0
  42. package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js +85 -0
  43. package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js.map +1 -0
  44. package/esm/cli/admin/admin-get-access-token.js +28 -0
  45. package/esm/cli/admin/admin-get-access-token.js.map +1 -0
  46. package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js +28 -0
  47. package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js.map +1 -0
  48. package/esm/cli/admin/admin-hide-generic-extension-attributes.js +28 -0
  49. package/esm/cli/admin/admin-hide-generic-extension-attributes.js.map +1 -0
  50. package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js +31 -0
  51. package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js.map +1 -0
  52. package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js +31 -0
  53. package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js.map +1 -0
  54. package/esm/cli/admin/admin-list-static-user-mappings.js +31 -0
  55. package/esm/cli/admin/admin-list-static-user-mappings.js.map +1 -0
  56. package/esm/cli/admin/admin-remove-static-user-mapping.js +28 -0
  57. package/esm/cli/admin/admin-remove-static-user-mapping.js.map +1 -0
  58. package/esm/cli/admin/admin-repair-org-model.js +28 -0
  59. package/esm/cli/admin/admin-repair-org-model.js.map +1 -0
  60. package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js +28 -0
  61. package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js.map +1 -0
  62. package/esm/cli/admin/admin-show-generic-extension-attributes.js +28 -0
  63. package/esm/cli/admin/admin-show-generic-extension-attributes.js.map +1 -0
  64. package/esm/cli/admin/admin.js +24 -0
  65. package/esm/cli/admin/admin.js.map +1 -0
  66. package/esm/cli/app/app-delete.js +22 -0
  67. package/esm/cli/app/app-delete.js.map +1 -0
  68. package/esm/cli/app/app-describe.js +22 -0
  69. package/esm/cli/app/app-describe.js.map +1 -0
  70. package/esm/cli/app/app-export.js +44 -0
  71. package/esm/cli/app/app-export.js.map +1 -0
  72. package/esm/cli/app/app-import.js +45 -0
  73. package/esm/cli/app/app-import.js.map +1 -0
  74. package/esm/cli/app/app-list.js +27 -0
  75. package/esm/cli/app/app-list.js.map +1 -0
  76. package/esm/cli/app/app.js +20 -0
  77. package/esm/cli/app/app.js.map +1 -0
  78. package/esm/cli/cmd_common.js +77 -0
  79. package/esm/cli/cmd_common.js.map +1 -0
  80. package/esm/cli/conn/conn-add.js +37 -0
  81. package/esm/cli/conn/conn-add.js.map +1 -0
  82. package/esm/cli/conn/conn-delete.js +14 -0
  83. package/esm/cli/conn/conn-delete.js.map +1 -0
  84. package/esm/cli/conn/conn-describe.js +14 -0
  85. package/esm/cli/conn/conn-describe.js.map +1 -0
  86. package/esm/cli/conn/conn-list.js +16 -0
  87. package/esm/cli/conn/conn-list.js.map +1 -0
  88. package/esm/cli/conn/conn.js +17 -0
  89. package/esm/cli/conn/conn.js.map +1 -0
  90. package/esm/cli/email/email-template-export.js +44 -0
  91. package/esm/cli/email/email-template-export.js.map +1 -0
  92. package/esm/cli/email/email-template-import.js +49 -0
  93. package/esm/cli/email/email-template-import.js.map +1 -0
  94. package/esm/cli/email/email-template-list.js +27 -0
  95. package/esm/cli/email/email-template-list.js.map +1 -0
  96. package/esm/cli/email/email-template.js +8 -0
  97. package/esm/cli/email/email-template.js.map +1 -0
  98. package/esm/cli/email/email.js +13 -0
  99. package/esm/cli/email/email.js.map +1 -0
  100. package/esm/cli/esv/esv-apply.js +67 -0
  101. package/esm/cli/esv/esv-apply.js.map +1 -0
  102. package/esm/cli/esv/esv-secret-create.js +27 -0
  103. package/esm/cli/esv/esv-secret-create.js.map +1 -0
  104. package/esm/cli/esv/esv-secret-delete.js +39 -0
  105. package/esm/cli/esv/esv-secret-delete.js.map +1 -0
  106. package/esm/cli/esv/esv-secret-describe.js +27 -0
  107. package/esm/cli/esv/esv-secret-describe.js.map +1 -0
  108. package/esm/cli/esv/esv-secret-export.js +22 -0
  109. package/esm/cli/esv/esv-secret-export.js.map +1 -0
  110. package/esm/cli/esv/esv-secret-import.js +22 -0
  111. package/esm/cli/esv/esv-secret-import.js.map +1 -0
  112. package/esm/cli/esv/esv-secret-list.js +27 -0
  113. package/esm/cli/esv/esv-secret-list.js.map +1 -0
  114. package/esm/cli/esv/esv-secret-set.js +27 -0
  115. package/esm/cli/esv/esv-secret-set.js.map +1 -0
  116. package/esm/cli/esv/esv-secret-version-activate.js +34 -0
  117. package/esm/cli/esv/esv-secret-version-activate.js.map +1 -0
  118. package/esm/cli/esv/esv-secret-version-create.js +27 -0
  119. package/esm/cli/esv/esv-secret-version-create.js.map +1 -0
  120. package/esm/cli/esv/esv-secret-version-deactivate.js +34 -0
  121. package/esm/cli/esv/esv-secret-version-deactivate.js.map +1 -0
  122. package/esm/cli/esv/esv-secret-version-delete.js +39 -0
  123. package/esm/cli/esv/esv-secret-version-delete.js.map +1 -0
  124. package/esm/cli/esv/esv-secret-version-list.js +27 -0
  125. package/esm/cli/esv/esv-secret-version-list.js.map +1 -0
  126. package/esm/cli/esv/esv-secret-version.js +10 -0
  127. package/esm/cli/esv/esv-secret-version.js.map +1 -0
  128. package/esm/cli/esv/esv-secret.js +13 -0
  129. package/esm/cli/esv/esv-secret.js.map +1 -0
  130. package/esm/cli/esv/esv-variable-create.js +27 -0
  131. package/esm/cli/esv/esv-variable-create.js.map +1 -0
  132. package/esm/cli/esv/esv-variable-delete.js +39 -0
  133. package/esm/cli/esv/esv-variable-delete.js.map +1 -0
  134. package/esm/cli/esv/esv-variable-describe.js +27 -0
  135. package/esm/cli/esv/esv-variable-describe.js.map +1 -0
  136. package/esm/cli/esv/esv-variable-export.js +22 -0
  137. package/esm/cli/esv/esv-variable-export.js.map +1 -0
  138. package/esm/cli/esv/esv-variable-import.js +22 -0
  139. package/esm/cli/esv/esv-variable-import.js.map +1 -0
  140. package/esm/cli/esv/esv-variable-list.js +27 -0
  141. package/esm/cli/esv/esv-variable-list.js.map +1 -0
  142. package/esm/cli/esv/esv-variable-set.js +37 -0
  143. package/esm/cli/esv/esv-variable-set.js.map +1 -0
  144. package/esm/cli/esv/esv-variable.js +12 -0
  145. package/esm/cli/esv/esv-variable.js.map +1 -0
  146. package/esm/cli/esv/esv.js +15 -0
  147. package/esm/cli/esv/esv.js.map +1 -0
  148. package/esm/cli/idm/idm-count.js +27 -0
  149. package/esm/cli/idm/idm-count.js.map +1 -0
  150. package/esm/cli/idm/idm-export.js +44 -0
  151. package/esm/cli/idm/idm-export.js.map +1 -0
  152. package/esm/cli/idm/idm-list.js +30 -0
  153. package/esm/cli/idm/idm-list.js.map +1 -0
  154. package/esm/cli/idm/idm.js +16 -0
  155. package/esm/cli/idm/idm.js.map +1 -0
  156. package/esm/cli/idp/idp-export.js +44 -0
  157. package/esm/cli/idp/idp-export.js.map +1 -0
  158. package/esm/cli/idp/idp-import.js +49 -0
  159. package/esm/cli/idp/idp-import.js.map +1 -0
  160. package/esm/cli/idp/idp-list.js +30 -0
  161. package/esm/cli/idp/idp-list.js.map +1 -0
  162. package/esm/cli/idp/idp.js +15 -0
  163. package/esm/cli/idp/idp.js.map +1 -0
  164. package/esm/cli/info/info.js +48 -0
  165. package/esm/cli/info/info.js.map +1 -0
  166. package/esm/cli/journey/journey-delete.e2e.test_.js.map +1 -0
  167. package/esm/cli/journey/journey-delete.js +39 -0
  168. package/esm/cli/journey/journey-delete.js.map +1 -0
  169. package/esm/cli/journey/journey-describe.js +100 -0
  170. package/esm/cli/journey/journey-describe.js.map +1 -0
  171. package/esm/cli/journey/journey-disable.js +46 -0
  172. package/esm/cli/journey/journey-disable.js.map +1 -0
  173. package/esm/cli/journey/journey-enable.js +46 -0
  174. package/esm/cli/journey/journey-enable.js.map +1 -0
  175. package/esm/cli/journey/journey-export.js +56 -0
  176. package/esm/cli/journey/journey-export.js.map +1 -0
  177. package/esm/cli/journey/journey-import.js +65 -0
  178. package/esm/cli/journey/journey-import.js.map +1 -0
  179. package/esm/cli/journey/journey-list.e2e.test_.js.map +1 -0
  180. package/esm/cli/journey/journey-list.js +27 -0
  181. package/esm/cli/journey/journey-list.js.map +1 -0
  182. package/esm/cli/journey/journey-prune.js +41 -0
  183. package/esm/cli/journey/journey-prune.js.map +1 -0
  184. package/esm/cli/journey/journey.js +20 -0
  185. package/esm/cli/journey/journey.js.map +1 -0
  186. package/esm/cli/logging/logs-list.js +66 -0
  187. package/esm/cli/logging/logs-list.js.map +1 -0
  188. package/esm/cli/logging/logs-tail.js +60 -0
  189. package/esm/cli/logging/logs-tail.js.map +1 -0
  190. package/esm/cli/logging/logs.js +13 -0
  191. package/esm/cli/logging/logs.js.map +1 -0
  192. package/esm/cli/realm/realm-add-custom-domain.js +27 -0
  193. package/esm/cli/realm/realm-add-custom-domain.js.map +1 -0
  194. package/esm/cli/realm/realm-describe.js +30 -0
  195. package/esm/cli/realm/realm-describe.js.map +1 -0
  196. package/esm/cli/realm/realm-list.js +27 -0
  197. package/esm/cli/realm/realm-list.js.map +1 -0
  198. package/esm/cli/realm/realm-remove-custom-domain.js +27 -0
  199. package/esm/cli/realm/realm-remove-custom-domain.js.map +1 -0
  200. package/esm/cli/realm/realm.js +18 -0
  201. package/esm/cli/realm/realm.js.map +1 -0
  202. package/esm/cli/saml/saml-cot-export.js +44 -0
  203. package/esm/cli/saml/saml-cot-export.js.map +1 -0
  204. package/esm/cli/saml/saml-cot-import.js +49 -0
  205. package/esm/cli/saml/saml-cot-import.js.map +1 -0
  206. package/esm/cli/saml/saml-cot-list.js +27 -0
  207. package/esm/cli/saml/saml-cot-list.js.map +1 -0
  208. package/esm/cli/saml/saml-cot.js +8 -0
  209. package/esm/cli/saml/saml-cot.js.map +1 -0
  210. package/esm/cli/saml/saml-describe.js +27 -0
  211. package/esm/cli/saml/saml-describe.js.map +1 -0
  212. package/esm/cli/saml/saml-export.js +44 -0
  213. package/esm/cli/saml/saml-export.js.map +1 -0
  214. package/esm/cli/saml/saml-import.js +49 -0
  215. package/esm/cli/saml/saml-import.js.map +1 -0
  216. package/esm/cli/saml/saml-list.js +27 -0
  217. package/esm/cli/saml/saml-list.js.map +1 -0
  218. package/esm/cli/saml/saml-metadata-export.js +39 -0
  219. package/esm/cli/saml/saml-metadata-export.js.map +1 -0
  220. package/esm/cli/saml/saml-metadata.js +6 -0
  221. package/esm/cli/saml/saml-metadata.js.map +1 -0
  222. package/esm/cli/saml/saml.js +18 -0
  223. package/esm/cli/saml/saml.js.map +1 -0
  224. package/esm/cli/script/script-delete.js +22 -0
  225. package/esm/cli/script/script-delete.js.map +1 -0
  226. package/esm/cli/script/script-describe.js +22 -0
  227. package/esm/cli/script/script-describe.js.map +1 -0
  228. package/esm/cli/script/script-export.js +55 -0
  229. package/esm/cli/script/script-export.js.map +1 -0
  230. package/esm/cli/script/script-import.js +28 -0
  231. package/esm/cli/script/script-import.js.map +1 -0
  232. package/esm/cli/script/script-list.js +27 -0
  233. package/esm/cli/script/script-list.js.map +1 -0
  234. package/esm/cli/script/script.js +17 -0
  235. package/esm/cli/script/script.js.map +1 -0
  236. package/esm/cli/theme/theme-delete.e2e.test_.js.map +1 -0
  237. package/esm/cli/theme/theme-delete.js +44 -0
  238. package/esm/cli/theme/theme-delete.js.map +1 -0
  239. package/esm/cli/theme/theme-export.js +49 -0
  240. package/esm/cli/theme/theme-export.js.map +1 -0
  241. package/esm/cli/theme/theme-import.js +54 -0
  242. package/esm/cli/theme/theme-import.js.map +1 -0
  243. package/esm/cli/theme/theme-list.e2e.test_.js.map +1 -0
  244. package/esm/cli/theme/theme-list.js +27 -0
  245. package/esm/cli/theme/theme-list.js.map +1 -0
  246. package/esm/cli/theme/theme.js +16 -0
  247. package/esm/cli/theme/theme.js.map +1 -0
  248. package/esm/ops/CirclesOfTrustOps.js +12 -0
  249. package/esm/ops/CirclesOfTrustOps.js.map +1 -0
  250. package/esm/ops/EmailTemplateOps.js +10 -0
  251. package/esm/ops/EmailTemplateOps.js.map +1 -0
  252. package/esm/ops/IdpOps.js +10 -0
  253. package/esm/ops/IdpOps.js.map +1 -0
  254. package/esm/ops/JourneyOps.js +203 -0
  255. package/esm/ops/JourneyOps.js.map +1 -0
  256. package/esm/ops/NodeOps.js +36 -0
  257. package/esm/ops/NodeOps.js.map +1 -0
  258. package/esm/ops/Saml2Ops.js +23 -0
  259. package/esm/ops/Saml2Ops.js.map +1 -0
  260. package/esm/ops/ScriptOps.js +10 -0
  261. package/esm/ops/ScriptOps.js.map +1 -0
  262. package/esm/ops/ThemeOps.js +10 -0
  263. package/esm/ops/ThemeOps.js.map +1 -0
  264. package/esm/ops/utils/Wordwrap.js +5 -0
  265. package/esm/ops/utils/Wordwrap.js.map +1 -0
  266. package/esm/storage/StaticStorage.js +12 -0
  267. package/esm/storage/StaticStorage.js.map +1 -0
  268. package/esm/utils/Config.js +54 -0
  269. package/esm/utils/Config.js.map +1 -0
  270. package/esm/utils/Console.js +532 -0
  271. package/esm/utils/Console.js.map +1 -0
  272. package/package.json +3 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cmd-sub2-import.js","names":["Command","Option","Authenticate","state","common","getTokens","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","action","host","realm","user","password","options","default","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","parse"],"sources":["cli/_template/cmd-sub2-import.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\n\nconst { getTokens } = Authenticate;\n\nconst program = new Command('frodo cmd sub2 import');\n\nprogram\n .description('Sub2 import.')\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(\n new Option(\n '-i, --sub2-id <sub2-id>',\n 'Sub2 id. If specified, only one sub2 is imported and the options -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the file to import.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Import all sub2s from single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all sub2s from separate files (*.sub2.json) in the current directory. Ignored with -i or -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 if (await getTokens()) {\n // code goes here\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAT,EAAkBC,MAAlB,QAAgC,WAAhC;AACA,SAASC,YAAT,EAAuBC,KAAvB,QAAoC,uBAApC;AACA,OAAO,KAAKC,MAAZ,MAAwB,kBAAxB;AAEA,MAAM;EAAEC;AAAF,IAAgBH,YAAtB;AAEA,MAAMI,OAAO,GAAG,IAAIN,OAAJ,CAAY,uBAAZ,CAAhB;AAEAM,OAAO,CACJC,WADH,CACe,cADf,EAEGC,UAFH,CAEc,YAFd,EAE4B,MAF5B,EAGGC,kBAHH,GAIGC,WAJH,CAIeN,MAAM,CAACO,aAJtB,EAKGD,WALH,CAKeN,MAAM,CAACQ,aALtB,EAMGF,WANH,CAMeN,MAAM,CAACS,YANtB,EAOGH,WAPH,CAOeN,MAAM,CAACU,gBAPtB,EAQGC,SARH,CAQaX,MAAM,CAACY,gBARpB,EASGD,SATH,CASaX,MAAM,CAACa,cATpB,EAUGF,SAVH,CAWI,IAAId,MAAJ,CACE,yBADF,EAEE,yFAFF,CAXJ,EAgBGc,SAhBH,CAgBa,IAAId,MAAJ,CAAW,mBAAX,EAAgC,6BAAhC,CAhBb,EAiBGc,SAjBH,CAkBI,IAAId,MAAJ,CACE,WADF,EAEE,qDAFF,CAlBJ,EAuBGc,SAvBH,CAwBI,IAAId,MAAJ,CACE,oBADF,EAEE,qGAFF,CAxBJ,EA6BGiB,MA7BH,EA8BI;AACA,OAAOC,IAAP,EAAaC,KAAb,EAAoBC,IAApB,EAA0BC,QAA1B,EAAoCC,OAApC,KAAgD;EAC9CpB,KAAK,CAACqB,OAAN,CAAcC,OAAd,CAAsBC,SAAtB,CAAgCP,IAAhC;EACAhB,KAAK,CAACqB,OAAN,CAAcC,OAAd,CAAsBE,QAAtB,CAA+BP,KAA/B;EACAjB,KAAK,CAACqB,OAAN,CAAcC,OAAd,CAAsBG,WAAtB,CAAkCP,IAAlC;EACAlB,KAAK,CAACqB,OAAN,CAAcC,OAAd,CAAsBI,WAAtB,CAAkCP,QAAlC;EACAnB,KAAK,CAACqB,OAAN,CAAcC,OAAd,CAAsBK,iBAAtB,CAAwCP,OAAO,CAACQ,IAAhD;EACA5B,KAAK,CAACqB,OAAN,CAAcC,OAAd,CAAsBO,0BAAtB,CAAiDT,OAAO,CAACU,QAAzD;;EACA,IAAI,MAAM5B,SAAS,EAAnB,EAAuB,CACrB;EACD;AACF,CAzCL,CA0CI;AA1CJ;AA6CAC,OAAO,CAAC4B,KAAR"}
@@ -0,0 +1,22 @@
1
+ import { Command, Option } from 'commander';
2
+ import { Authenticate, state } from '@rockcarver/frodo-lib';
3
+ import * as common from '../cmd_common.js';
4
+ const {
5
+ getTokens
6
+ } = Authenticate;
7
+ const program = new Command('frodo cmd sub2 list');
8
+ program.description('Sub2 list.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(new Option('-l, --long', 'Long with all fields.').default(false, 'false')).action( // implement command logic inside action handler
9
+ async (host, realm, user, password, options) => {
10
+ state.default.session.setTenant(host);
11
+ state.default.session.setRealm(realm);
12
+ state.default.session.setUsername(user);
13
+ state.default.session.setPassword(password);
14
+ state.default.session.setDeploymentType(options.type);
15
+ state.default.session.setAllowInsecureConnection(options.insecure);
16
+
17
+ if (await getTokens()) {// code goes here
18
+ }
19
+ } // end command logic inside action handler
20
+ );
21
+ program.parse();
22
+ //# sourceMappingURL=cmd-sub2-list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cmd-sub2-list.js","names":["Command","Option","Authenticate","state","common","getTokens","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","default","action","host","realm","user","password","options","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","parse"],"sources":["cli/_template/cmd-sub2-list.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\n\nconst { getTokens } = Authenticate;\n\nconst program = new Command('frodo cmd sub2 list');\n\nprogram\n .description('Sub2 list.')\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(\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 if (await getTokens()) {\n // code goes here\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAT,EAAkBC,MAAlB,QAAgC,WAAhC;AACA,SAASC,YAAT,EAAuBC,KAAvB,QAAoC,uBAApC;AACA,OAAO,KAAKC,MAAZ,MAAwB,kBAAxB;AAEA,MAAM;EAAEC;AAAF,IAAgBH,YAAtB;AAEA,MAAMI,OAAO,GAAG,IAAIN,OAAJ,CAAY,qBAAZ,CAAhB;AAEAM,OAAO,CACJC,WADH,CACe,YADf,EAEGC,UAFH,CAEc,YAFd,EAE4B,MAF5B,EAGGC,kBAHH,GAIGC,WAJH,CAIeN,MAAM,CAACO,aAJtB,EAKGD,WALH,CAKeN,MAAM,CAACQ,aALtB,EAMGF,WANH,CAMeN,MAAM,CAACS,YANtB,EAOGH,WAPH,CAOeN,MAAM,CAACU,gBAPtB,EAQGC,SARH,CAQaX,MAAM,CAACY,gBARpB,EASGD,SATH,CASaX,MAAM,CAACa,cATpB,EAUGF,SAVH,CAWI,IAAId,MAAJ,CAAW,YAAX,EAAyB,uBAAzB,EAAkDiB,OAAlD,CAA0D,KAA1D,EAAiE,OAAjE,CAXJ,EAaGC,MAbH,EAcI;AACA,OAAOC,IAAP,EAAaC,KAAb,EAAoBC,IAApB,EAA0BC,QAA1B,EAAoCC,OAApC,KAAgD;EAC9CrB,KAAK,CAACe,OAAN,CAAcO,OAAd,CAAsBC,SAAtB,CAAgCN,IAAhC;EACAjB,KAAK,CAACe,OAAN,CAAcO,OAAd,CAAsBE,QAAtB,CAA+BN,KAA/B;EACAlB,KAAK,CAACe,OAAN,CAAcO,OAAd,CAAsBG,WAAtB,CAAkCN,IAAlC;EACAnB,KAAK,CAACe,OAAN,CAAcO,OAAd,CAAsBI,WAAtB,CAAkCN,QAAlC;EACApB,KAAK,CAACe,OAAN,CAAcO,OAAd,CAAsBK,iBAAtB,CAAwCN,OAAO,CAACO,IAAhD;EACA5B,KAAK,CAACe,OAAN,CAAcO,OAAd,CAAsBO,0BAAtB,CAAiDR,OAAO,CAACS,QAAzD;;EACA,IAAI,MAAM5B,SAAS,EAAnB,EAAuB,CACrB;EACD;AACF,CAzBL,CA0BI;AA1BJ;AA6BAC,OAAO,CAAC4B,KAAR"}
@@ -0,0 +1,10 @@
1
+ import { Command } from 'commander';
2
+ const program = new Command('frodo cmd sub2');
3
+ program.description('Sub2 command.').helpOption('-h, --help', 'Help').showHelpAfterError();
4
+ program.command('list', 'Sub2 list.').showHelpAfterError();
5
+ program.command('describe', 'Sub2 describe.').showHelpAfterError();
6
+ program.command('export', 'Sub2 export.').showHelpAfterError();
7
+ program.command('import', 'Sub2 import.').showHelpAfterError();
8
+ program.command('delete', 'Sub2 delete.').showHelpAfterError();
9
+ program.parse();
10
+ //# sourceMappingURL=cmd-sub2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cmd-sub2.js","names":["Command","program","description","helpOption","showHelpAfterError","command","parse"],"sources":["cli/_template/cmd-sub2.ts"],"sourcesContent":["import { Command } from 'commander';\n\nconst program = new Command('frodo cmd sub2');\n\nprogram\n .description('Sub2 command.')\n .helpOption('-h, --help', 'Help')\n .showHelpAfterError();\n\nprogram.command('list', 'Sub2 list.').showHelpAfterError();\n\nprogram.command('describe', 'Sub2 describe.').showHelpAfterError();\n\nprogram.command('export', 'Sub2 export.').showHelpAfterError();\n\nprogram.command('import', 'Sub2 import.').showHelpAfterError();\n\nprogram.command('delete', 'Sub2 delete.').showHelpAfterError();\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,WAAxB;AAEA,MAAMC,OAAO,GAAG,IAAID,OAAJ,CAAY,gBAAZ,CAAhB;AAEAC,OAAO,CACJC,WADH,CACe,eADf,EAEGC,UAFH,CAEc,YAFd,EAE4B,MAF5B,EAGGC,kBAHH;AAKAH,OAAO,CAACI,OAAR,CAAgB,MAAhB,EAAwB,YAAxB,EAAsCD,kBAAtC;AAEAH,OAAO,CAACI,OAAR,CAAgB,UAAhB,EAA4B,gBAA5B,EAA8CD,kBAA9C;AAEAH,OAAO,CAACI,OAAR,CAAgB,QAAhB,EAA0B,cAA1B,EAA0CD,kBAA1C;AAEAH,OAAO,CAACI,OAAR,CAAgB,QAAhB,EAA0B,cAA1B,EAA0CD,kBAA1C;AAEAH,OAAO,CAACI,OAAR,CAAgB,QAAhB,EAA0B,cAA1B,EAA0CD,kBAA1C;AAEAH,OAAO,CAACK,KAAR"}
@@ -0,0 +1,19 @@
1
+ import { Command } from 'commander';
2
+ import path from 'path';
3
+ import { fileURLToPath } from 'url';
4
+
5
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
6
+
7
+ export default function setup() {
8
+ const program = new Command('cmd').helpOption('-h, --help', 'Help').description('Top-level command.').executableDir(__dirname);
9
+ program.command('sub1', 'Sub1 command.').showHelpAfterError();
10
+ program.command('sub2', 'Sub2 command.').showHelpAfterError();
11
+ program.command('list', 'Sub2 list.').showHelpAfterError();
12
+ program.command('describe', 'Sub2 describe.').showHelpAfterError();
13
+ program.command('export', 'Sub2 export.').showHelpAfterError();
14
+ program.command('import', 'Sub2 import.').showHelpAfterError();
15
+ program.command('delete', 'Sub2 delete.').showHelpAfterError();
16
+ program.showHelpAfterError();
17
+ return program;
18
+ }
19
+ //# sourceMappingURL=cmd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cmd.js","names":["Command","path","fileURLToPath","__dirname","dirname","import","meta","url","setup","program","helpOption","description","executableDir","command","showHelpAfterError"],"sources":["cli/_template/cmd.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('cmd')\n .helpOption('-h, --help', 'Help')\n .description('Top-level command.')\n .executableDir(__dirname);\n\n program.command('sub1', 'Sub1 command.').showHelpAfterError();\n\n program.command('sub2', 'Sub2 command.').showHelpAfterError();\n\n program.command('list', 'Sub2 list.').showHelpAfterError();\n\n program.command('describe', 'Sub2 describe.').showHelpAfterError();\n\n program.command('export', 'Sub2 export.').showHelpAfterError();\n\n program.command('import', 'Sub2 import.').showHelpAfterError();\n\n program.command('delete', 'Sub2 delete.').showHelpAfterError();\n\n program.showHelpAfterError();\n return program;\n}\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,WAAxB;AACA,OAAOC,IAAP,MAAiB,MAAjB;AACA,SAASC,aAAT,QAA8B,KAA9B;;AAEA,MAAMC,SAAS,GAAGF,IAAI,CAACG,OAAL,CAAaF,aAAa,CAACG,MAAM,CAACC,IAAP,CAAYC,GAAb,CAA1B,CAAlB;;AAEA,eAAe,SAASC,KAAT,GAAiB;EAC9B,MAAMC,OAAO,GAAG,IAAIT,OAAJ,CAAY,KAAZ,EACbU,UADa,CACF,YADE,EACY,MADZ,EAEbC,WAFa,CAED,oBAFC,EAGbC,aAHa,CAGCT,SAHD,CAAhB;EAKAM,OAAO,CAACI,OAAR,CAAgB,MAAhB,EAAwB,eAAxB,EAAyCC,kBAAzC;EAEAL,OAAO,CAACI,OAAR,CAAgB,MAAhB,EAAwB,eAAxB,EAAyCC,kBAAzC;EAEAL,OAAO,CAACI,OAAR,CAAgB,MAAhB,EAAwB,YAAxB,EAAsCC,kBAAtC;EAEAL,OAAO,CAACI,OAAR,CAAgB,UAAhB,EAA4B,gBAA5B,EAA8CC,kBAA9C;EAEAL,OAAO,CAACI,OAAR,CAAgB,QAAhB,EAA0B,cAA1B,EAA0CC,kBAA1C;EAEAL,OAAO,CAACI,OAAR,CAAgB,QAAhB,EAA0B,cAA1B,EAA0CC,kBAA1C;EAEAL,OAAO,CAACI,OAAR,CAAgB,QAAhB,EAA0B,cAA1B,EAA0CC,kBAA1C;EAEAL,OAAO,CAACK,kBAAR;EACA,OAAOL,OAAP;AACD"}
@@ -0,0 +1,28 @@
1
+ import { Command } from 'commander';
2
+ import { Authenticate, Admin, state } from '@rockcarver/frodo-lib';
3
+ import * as common from '../cmd_common.js';
4
+ const {
5
+ getTokens
6
+ } = Authenticate;
7
+ const {
8
+ addAutoIdStaticUserMapping
9
+ } = Admin;
10
+ const program = new Command('frodo admin add-autoid-static-user-mapping');
11
+ program.description('Add AutoId static user mapping to enable dashboards and other AutoId-based functionality.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).action( // 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
+
20
+ if (await getTokens()) {
21
+ console.log(`Adding AutoId static user mapping...`);
22
+ await addAutoIdStaticUserMapping();
23
+ console.log('Done.');
24
+ }
25
+ } // end command logic inside action handler
26
+ );
27
+ program.parse();
28
+ //# sourceMappingURL=admin-add-autoid-static-user-mapping.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-add-autoid-static-user-mapping.js","names":["Command","Authenticate","Admin","state","common","getTokens","addAutoIdStaticUserMapping","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","action","host","realm","user","password","options","default","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","console","log","parse"],"sources":["cli/admin/admin-add-autoid-static-user-mapping.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { Authenticate, Admin, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\n\nconst { getTokens } = Authenticate;\nconst { addAutoIdStaticUserMapping } = Admin;\n\nconst program = new Command('frodo admin add-autoid-static-user-mapping');\n\nprogram\n .description(\n 'Add AutoId static user mapping to enable dashboards and other AutoId-based functionality.'\n )\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 .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 if (await getTokens()) {\n console.log(`Adding AutoId static user mapping...`);\n await addAutoIdStaticUserMapping();\n console.log('Done.');\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,WAAxB;AACA,SAASC,YAAT,EAAuBC,KAAvB,EAA8BC,KAA9B,QAA2C,uBAA3C;AACA,OAAO,KAAKC,MAAZ,MAAwB,kBAAxB;AAEA,MAAM;EAAEC;AAAF,IAAgBJ,YAAtB;AACA,MAAM;EAAEK;AAAF,IAAiCJ,KAAvC;AAEA,MAAMK,OAAO,GAAG,IAAIP,OAAJ,CAAY,4CAAZ,CAAhB;AAEAO,OAAO,CACJC,WADH,CAEI,2FAFJ,EAIGC,UAJH,CAIc,YAJd,EAI4B,MAJ5B,EAKGC,kBALH,GAMGC,WANH,CAMeP,MAAM,CAACQ,aANtB,EAOGD,WAPH,CAOeP,MAAM,CAACS,aAPtB,EAQGF,WARH,CAQeP,MAAM,CAACU,YARtB,EASGH,WATH,CASeP,MAAM,CAACW,gBATtB,EAUGC,SAVH,CAUaZ,MAAM,CAACa,gBAVpB,EAWGD,SAXH,CAWaZ,MAAM,CAACc,cAXpB,EAYGC,MAZH,EAaI;AACA,OAAOC,IAAP,EAAaC,KAAb,EAAoBC,IAApB,EAA0BC,QAA1B,EAAoCC,OAApC,KAAgD;EAC9CrB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBC,SAAtB,CAAgCP,IAAhC;EACAjB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBE,QAAtB,CAA+BP,KAA/B;EACAlB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBG,WAAtB,CAAkCP,IAAlC;EACAnB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBI,WAAtB,CAAkCP,QAAlC;EACApB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBK,iBAAtB,CAAwCP,OAAO,CAACQ,IAAhD;EACA7B,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBO,0BAAtB,CAAiDT,OAAO,CAACU,QAAzD;;EACA,IAAI,MAAM7B,SAAS,EAAnB,EAAuB;IACrB8B,OAAO,CAACC,GAAR,CAAa,sCAAb;IACA,MAAM9B,0BAA0B,EAAhC;IACA6B,OAAO,CAACC,GAAR,CAAY,OAAZ;EACD;AACF,CA1BL,CA2BI;AA3BJ;AA8BA7B,OAAO,CAAC8B,KAAR"}
@@ -0,0 +1,85 @@
1
+ import { Command, Option } from 'commander';
2
+ import { v4 as uuidv4 } from 'uuid';
3
+ import Table from 'cli-table3';
4
+ import { Authenticate, Admin, state } from '@rockcarver/frodo-lib';
5
+ import * as common from '../cmd_common.js';
6
+ const {
7
+ getTokens
8
+ } = Authenticate;
9
+ const {
10
+ createLongLivedToken,
11
+ createOAuth2ClientWithAdminPrivileges
12
+ } = Admin;
13
+ const program = new Command('frodo admin create-oauth2-client-with-admin-privileges');
14
+ program.description('Create an oauth2 client with admin privileges.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(new Option('--client-id [id]', 'Client id.')).addOption(new Option('--client-secret [secret]', 'Client secret.')).addOption(new Option('--llt', 'Create a long-lived token and store it in a secret. The default secret name is esv-admin-token and the default token lifetime is 315,360,000 seconds (10 years). Both can be overwritten with the --llt-esv and --llt-ttl options.')).addOption(new Option('--llt-scope [scope]', 'Request the following scope(s). This option only applies if used with the --llt option.').default('fr:idm:*', 'fr:idm:*')).addOption(new Option('--llt-esv [esv]', 'Name of the secret to store the token in. This option only applies if used with the --llt option.').default('esv-admin-token', 'esv-admin-token')).addOption(new Option('--llt-ttl [ttl]', 'Token lifetime (seconds). This option only applies if used with the --llt option.').default(315360000, '315,360,000 seconds (10 years)')).action( // 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
+
23
+ if (await getTokens()) {
24
+ console.log(`Creating oauth2 client with admin privileges in realm "${state.default.session.getRealm()}"...`);
25
+ let clientId = uuidv4();
26
+ let clientSecret = uuidv4();
27
+
28
+ if (options.clientId) {
29
+ clientId = options.clientId;
30
+ }
31
+
32
+ if (options.clientSecret) {
33
+ clientSecret = options.clientSecret;
34
+ }
35
+
36
+ try {
37
+ await createOAuth2ClientWithAdminPrivileges(clientId, clientSecret);
38
+ } catch (error) {
39
+ console.log(error, 'error');
40
+ }
41
+
42
+ const table = new Table({
43
+ chars: {
44
+ top: '',
45
+ 'top-mid': '',
46
+ 'top-left': '',
47
+ 'top-right': '',
48
+ bottom: '',
49
+ 'bottom-mid': '',
50
+ 'bottom-left': '',
51
+ 'bottom-right': '',
52
+ left: '',
53
+ 'left-mid': '',
54
+ mid: '',
55
+ 'mid-mid': '',
56
+ right: '',
57
+ 'right-mid': ''
58
+ },
59
+ style: {
60
+ 'padding-left': 0,
61
+ 'padding-right': 0
62
+ },
63
+ wordWrap: true
64
+ });
65
+
66
+ if (options.llt) {
67
+ try {
68
+ const response = await createLongLivedToken(clientId, clientSecret, options.scope, options.lltEsv, options.lltTtl);
69
+ table.push(['Secret Name'['brightCyan'], response.secret]);
70
+ table.push(['Scope'['brightCyan'], response.scope]); // table.push(['Token Lifetime'.brightCyan, response.expires_in]);
71
+
72
+ table.push(['Expires'['brightCyan'], response.expires_on]);
73
+ } catch (error) {
74
+ console.log(error, 'error');
75
+ }
76
+ }
77
+
78
+ table.push(['Client ID'['brightCyan'], clientId]);
79
+ table.push(['Client Secret'['brightCyan'], clientSecret]);
80
+ console.log(table.toString());
81
+ }
82
+ } // end command logic inside action handler
83
+ );
84
+ program.parse();
85
+ //# sourceMappingURL=admin-create-oauth2-client-with-admin-privileges.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-create-oauth2-client-with-admin-privileges.js","names":["Command","Option","v4","uuidv4","Table","Authenticate","Admin","state","common","getTokens","createLongLivedToken","createOAuth2ClientWithAdminPrivileges","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","default","action","host","realm","user","password","options","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","console","log","getRealm","clientId","clientSecret","error","table","chars","top","bottom","left","mid","right","style","wordWrap","llt","response","scope","lltEsv","lltTtl","push","secret","expires_on","toString","parse"],"sources":["cli/admin/admin-create-oauth2-client-with-admin-privileges.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { v4 as uuidv4 } from 'uuid';\nimport Table from 'cli-table3';\nimport { Authenticate, Admin, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\n\nconst { getTokens } = Authenticate;\nconst { createLongLivedToken, createOAuth2ClientWithAdminPrivileges } = Admin;\n\nconst program = new Command(\n 'frodo admin create-oauth2-client-with-admin-privileges'\n);\n\nprogram\n .description('Create an oauth2 client with admin privileges.')\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(new Option('--client-id [id]', 'Client id.'))\n .addOption(new Option('--client-secret [secret]', 'Client secret.'))\n .addOption(\n new Option(\n '--llt',\n 'Create a long-lived token and store it in a secret. The default secret name is esv-admin-token and the default token lifetime is 315,360,000 seconds (10 years). Both can be overwritten with the --llt-esv and --llt-ttl options.'\n )\n )\n .addOption(\n new Option(\n '--llt-scope [scope]',\n 'Request the following scope(s). This option only applies if used with the --llt option.'\n ).default('fr:idm:*', 'fr:idm:*')\n )\n .addOption(\n new Option(\n '--llt-esv [esv]',\n 'Name of the secret to store the token in. This option only applies if used with the --llt option.'\n ).default('esv-admin-token', 'esv-admin-token')\n )\n .addOption(\n new Option(\n '--llt-ttl [ttl]',\n 'Token lifetime (seconds). This option only applies if used with the --llt option.'\n ).default(315360000, '315,360,000 seconds (10 years)')\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 if (await getTokens()) {\n console.log(\n `Creating oauth2 client with admin privileges in realm \"${state.default.session.getRealm()}\"...`\n );\n let clientId = uuidv4();\n let clientSecret = uuidv4();\n if (options.clientId) {\n clientId = options.clientId;\n }\n if (options.clientSecret) {\n clientSecret = options.clientSecret;\n }\n try {\n await createOAuth2ClientWithAdminPrivileges(clientId, clientSecret);\n } catch (error) {\n console.log(error, 'error');\n }\n const table = new Table({\n chars: {\n top: '',\n 'top-mid': '',\n 'top-left': '',\n 'top-right': '',\n bottom: '',\n 'bottom-mid': '',\n 'bottom-left': '',\n 'bottom-right': '',\n left: '',\n 'left-mid': '',\n mid: '',\n 'mid-mid': '',\n right: '',\n 'right-mid': '',\n },\n style: { 'padding-left': 0, 'padding-right': 0 },\n wordWrap: true,\n });\n if (options.llt) {\n try {\n const response = await createLongLivedToken(\n clientId,\n clientSecret,\n options.scope,\n options.lltEsv,\n options.lltTtl\n );\n table.push(['Secret Name'['brightCyan'], response.secret]);\n table.push(['Scope'['brightCyan'], response.scope]);\n // table.push(['Token Lifetime'.brightCyan, response.expires_in]);\n table.push(['Expires'['brightCyan'], response.expires_on]);\n } catch (error) {\n console.log(error, 'error');\n }\n }\n table.push(['Client ID'['brightCyan'], clientId]);\n table.push(['Client Secret'['brightCyan'], clientSecret]);\n console.log(table.toString());\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAT,EAAkBC,MAAlB,QAAgC,WAAhC;AACA,SAASC,EAAE,IAAIC,MAAf,QAA6B,MAA7B;AACA,OAAOC,KAAP,MAAkB,YAAlB;AACA,SAASC,YAAT,EAAuBC,KAAvB,EAA8BC,KAA9B,QAA2C,uBAA3C;AACA,OAAO,KAAKC,MAAZ,MAAwB,kBAAxB;AAEA,MAAM;EAAEC;AAAF,IAAgBJ,YAAtB;AACA,MAAM;EAAEK,oBAAF;EAAwBC;AAAxB,IAAkEL,KAAxE;AAEA,MAAMM,OAAO,GAAG,IAAIZ,OAAJ,CACd,wDADc,CAAhB;AAIAY,OAAO,CACJC,WADH,CACe,gDADf,EAEGC,UAFH,CAEc,YAFd,EAE4B,MAF5B,EAGGC,kBAHH,GAIGC,WAJH,CAIeR,MAAM,CAACS,aAJtB,EAKGD,WALH,CAKeR,MAAM,CAACU,aALtB,EAMGF,WANH,CAMeR,MAAM,CAACW,YANtB,EAOGH,WAPH,CAOeR,MAAM,CAACY,gBAPtB,EAQGC,SARH,CAQab,MAAM,CAACc,gBARpB,EASGD,SATH,CASab,MAAM,CAACe,cATpB,EAUGF,SAVH,CAUa,IAAIpB,MAAJ,CAAW,kBAAX,EAA+B,YAA/B,CAVb,EAWGoB,SAXH,CAWa,IAAIpB,MAAJ,CAAW,0BAAX,EAAuC,gBAAvC,CAXb,EAYGoB,SAZH,CAaI,IAAIpB,MAAJ,CACE,OADF,EAEE,oOAFF,CAbJ,EAkBGoB,SAlBH,CAmBI,IAAIpB,MAAJ,CACE,qBADF,EAEE,yFAFF,EAGEuB,OAHF,CAGU,UAHV,EAGsB,UAHtB,CAnBJ,EAwBGH,SAxBH,CAyBI,IAAIpB,MAAJ,CACE,iBADF,EAEE,mGAFF,EAGEuB,OAHF,CAGU,iBAHV,EAG6B,iBAH7B,CAzBJ,EA8BGH,SA9BH,CA+BI,IAAIpB,MAAJ,CACE,iBADF,EAEE,mFAFF,EAGEuB,OAHF,CAGU,SAHV,EAGqB,gCAHrB,CA/BJ,EAoCGC,MApCH,EAqCI;AACA,OAAOC,IAAP,EAAaC,KAAb,EAAoBC,IAApB,EAA0BC,QAA1B,EAAoCC,OAApC,KAAgD;EAC9CvB,KAAK,CAACiB,OAAN,CAAcO,OAAd,CAAsBC,SAAtB,CAAgCN,IAAhC;EACAnB,KAAK,CAACiB,OAAN,CAAcO,OAAd,CAAsBE,QAAtB,CAA+BN,KAA/B;EACApB,KAAK,CAACiB,OAAN,CAAcO,OAAd,CAAsBG,WAAtB,CAAkCN,IAAlC;EACArB,KAAK,CAACiB,OAAN,CAAcO,OAAd,CAAsBI,WAAtB,CAAkCN,QAAlC;EACAtB,KAAK,CAACiB,OAAN,CAAcO,OAAd,CAAsBK,iBAAtB,CAAwCN,OAAO,CAACO,IAAhD;EACA9B,KAAK,CAACiB,OAAN,CAAcO,OAAd,CAAsBO,0BAAtB,CAAiDR,OAAO,CAACS,QAAzD;;EACA,IAAI,MAAM9B,SAAS,EAAnB,EAAuB;IACrB+B,OAAO,CAACC,GAAR,CACG,0DAAyDlC,KAAK,CAACiB,OAAN,CAAcO,OAAd,CAAsBW,QAAtB,EAAiC,MAD7F;IAGA,IAAIC,QAAQ,GAAGxC,MAAM,EAArB;IACA,IAAIyC,YAAY,GAAGzC,MAAM,EAAzB;;IACA,IAAI2B,OAAO,CAACa,QAAZ,EAAsB;MACpBA,QAAQ,GAAGb,OAAO,CAACa,QAAnB;IACD;;IACD,IAAIb,OAAO,CAACc,YAAZ,EAA0B;MACxBA,YAAY,GAAGd,OAAO,CAACc,YAAvB;IACD;;IACD,IAAI;MACF,MAAMjC,qCAAqC,CAACgC,QAAD,EAAWC,YAAX,CAA3C;IACD,CAFD,CAEE,OAAOC,KAAP,EAAc;MACdL,OAAO,CAACC,GAAR,CAAYI,KAAZ,EAAmB,OAAnB;IACD;;IACD,MAAMC,KAAK,GAAG,IAAI1C,KAAJ,CAAU;MACtB2C,KAAK,EAAE;QACLC,GAAG,EAAE,EADA;QAEL,WAAW,EAFN;QAGL,YAAY,EAHP;QAIL,aAAa,EAJR;QAKLC,MAAM,EAAE,EALH;QAML,cAAc,EANT;QAOL,eAAe,EAPV;QAQL,gBAAgB,EARX;QASLC,IAAI,EAAE,EATD;QAUL,YAAY,EAVP;QAWLC,GAAG,EAAE,EAXA;QAYL,WAAW,EAZN;QAaLC,KAAK,EAAE,EAbF;QAcL,aAAa;MAdR,CADe;MAiBtBC,KAAK,EAAE;QAAE,gBAAgB,CAAlB;QAAqB,iBAAiB;MAAtC,CAjBe;MAkBtBC,QAAQ,EAAE;IAlBY,CAAV,CAAd;;IAoBA,IAAIxB,OAAO,CAACyB,GAAZ,EAAiB;MACf,IAAI;QACF,MAAMC,QAAQ,GAAG,MAAM9C,oBAAoB,CACzCiC,QADyC,EAEzCC,YAFyC,EAGzCd,OAAO,CAAC2B,KAHiC,EAIzC3B,OAAO,CAAC4B,MAJiC,EAKzC5B,OAAO,CAAC6B,MALiC,CAA3C;QAOAb,KAAK,CAACc,IAAN,CAAW,CAAC,cAAc,YAAd,CAAD,EAA8BJ,QAAQ,CAACK,MAAvC,CAAX;QACAf,KAAK,CAACc,IAAN,CAAW,CAAC,QAAQ,YAAR,CAAD,EAAwBJ,QAAQ,CAACC,KAAjC,CAAX,EATE,CAUF;;QACAX,KAAK,CAACc,IAAN,CAAW,CAAC,UAAU,YAAV,CAAD,EAA0BJ,QAAQ,CAACM,UAAnC,CAAX;MACD,CAZD,CAYE,OAAOjB,KAAP,EAAc;QACdL,OAAO,CAACC,GAAR,CAAYI,KAAZ,EAAmB,OAAnB;MACD;IACF;;IACDC,KAAK,CAACc,IAAN,CAAW,CAAC,YAAY,YAAZ,CAAD,EAA4BjB,QAA5B,CAAX;IACAG,KAAK,CAACc,IAAN,CAAW,CAAC,gBAAgB,YAAhB,CAAD,EAAgChB,YAAhC,CAAX;IACAJ,OAAO,CAACC,GAAR,CAAYK,KAAK,CAACiB,QAAN,EAAZ;EACD;AACF,CAvGL,CAwGI;AAxGJ;AA2GAnD,OAAO,CAACoD,KAAR"}
@@ -0,0 +1,28 @@
1
+ import { Command, Option } from 'commander';
2
+ import { Authenticate, OAuth2OIDCApi, state } from '@rockcarver/frodo-lib';
3
+ import * as common from '../cmd_common.js';
4
+ const {
5
+ clientCredentialsGrant
6
+ } = OAuth2OIDCApi;
7
+ const {
8
+ getTokens
9
+ } = Authenticate;
10
+ const program = new Command('frodo admin get-access-token');
11
+ program.description('Get an access token using client credentials grant type.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(new Option('--client-id [id]', 'Client id.').makeOptionMandatory()).addOption(new Option('--client-secret [secret]', 'Client secret.').makeOptionMandatory()).addOption(new Option('--scope [scope]', 'Request the following scope(s).').default('fr:idm:*', 'fr:idm:*')).action( // 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
+
20
+ if (await getTokens()) {
21
+ console.log(`Getting an access token using client "${options.clientId}"...`);
22
+ const response = (await clientCredentialsGrant(options.clientId, options.clientSecret, options.scope)).data;
23
+ console.log(`Token: ${response.access_token}`);
24
+ }
25
+ } // end command logic inside action handler
26
+ );
27
+ program.parse();
28
+ //# sourceMappingURL=admin-get-access-token.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-get-access-token.js","names":["Command","Option","Authenticate","OAuth2OIDCApi","state","common","clientCredentialsGrant","getTokens","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","makeOptionMandatory","default","action","host","realm","user","password","options","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","console","log","clientId","response","clientSecret","scope","data","access_token","parse"],"sources":["cli/admin/admin-get-access-token.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, OAuth2OIDCApi, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\n\nconst { clientCredentialsGrant } = OAuth2OIDCApi;\nconst { getTokens } = Authenticate;\n\nconst program = new Command('frodo admin get-access-token');\n\nprogram\n .description('Get an access token using client credentials grant type.')\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(new Option('--client-id [id]', 'Client id.').makeOptionMandatory())\n .addOption(\n new Option(\n '--client-secret [secret]',\n 'Client secret.'\n ).makeOptionMandatory()\n )\n .addOption(\n new Option('--scope [scope]', 'Request the following scope(s).').default(\n 'fr:idm:*',\n 'fr:idm:*'\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 if (await getTokens()) {\n console.log(\n `Getting an access token using client \"${options.clientId}\"...`\n );\n const response = (\n await clientCredentialsGrant(\n options.clientId,\n options.clientSecret,\n options.scope\n )\n ).data;\n console.log(`Token: ${response.access_token}`);\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAT,EAAkBC,MAAlB,QAAgC,WAAhC;AACA,SAASC,YAAT,EAAuBC,aAAvB,EAAsCC,KAAtC,QAAmD,uBAAnD;AACA,OAAO,KAAKC,MAAZ,MAAwB,kBAAxB;AAEA,MAAM;EAAEC;AAAF,IAA6BH,aAAnC;AACA,MAAM;EAAEI;AAAF,IAAgBL,YAAtB;AAEA,MAAMM,OAAO,GAAG,IAAIR,OAAJ,CAAY,8BAAZ,CAAhB;AAEAQ,OAAO,CACJC,WADH,CACe,0DADf,EAEGC,UAFH,CAEc,YAFd,EAE4B,MAF5B,EAGGC,kBAHH,GAIGC,WAJH,CAIeP,MAAM,CAACQ,aAJtB,EAKGD,WALH,CAKeP,MAAM,CAACS,aALtB,EAMGF,WANH,CAMeP,MAAM,CAACU,YANtB,EAOGH,WAPH,CAOeP,MAAM,CAACW,gBAPtB,EAQGC,SARH,CAQaZ,MAAM,CAACa,gBARpB,EASGD,SATH,CASaZ,MAAM,CAACc,cATpB,EAUGF,SAVH,CAUa,IAAIhB,MAAJ,CAAW,kBAAX,EAA+B,YAA/B,EAA6CmB,mBAA7C,EAVb,EAWGH,SAXH,CAYI,IAAIhB,MAAJ,CACE,0BADF,EAEE,gBAFF,EAGEmB,mBAHF,EAZJ,EAiBGH,SAjBH,CAkBI,IAAIhB,MAAJ,CAAW,iBAAX,EAA8B,iCAA9B,EAAiEoB,OAAjE,CACE,UADF,EAEE,UAFF,CAlBJ,EAuBGC,MAvBH,EAwBI;AACA,OAAOC,IAAP,EAAaC,KAAb,EAAoBC,IAApB,EAA0BC,QAA1B,EAAoCC,OAApC,KAAgD;EAC9CvB,KAAK,CAACiB,OAAN,CAAcO,OAAd,CAAsBC,SAAtB,CAAgCN,IAAhC;EACAnB,KAAK,CAACiB,OAAN,CAAcO,OAAd,CAAsBE,QAAtB,CAA+BN,KAA/B;EACApB,KAAK,CAACiB,OAAN,CAAcO,OAAd,CAAsBG,WAAtB,CAAkCN,IAAlC;EACArB,KAAK,CAACiB,OAAN,CAAcO,OAAd,CAAsBI,WAAtB,CAAkCN,QAAlC;EACAtB,KAAK,CAACiB,OAAN,CAAcO,OAAd,CAAsBK,iBAAtB,CAAwCN,OAAO,CAACO,IAAhD;EACA9B,KAAK,CAACiB,OAAN,CAAcO,OAAd,CAAsBO,0BAAtB,CAAiDR,OAAO,CAACS,QAAzD;;EACA,IAAI,MAAM7B,SAAS,EAAnB,EAAuB;IACrB8B,OAAO,CAACC,GAAR,CACG,yCAAwCX,OAAO,CAACY,QAAS,MAD5D;IAGA,MAAMC,QAAQ,GAAG,CACf,MAAMlC,sBAAsB,CAC1BqB,OAAO,CAACY,QADkB,EAE1BZ,OAAO,CAACc,YAFkB,EAG1Bd,OAAO,CAACe,KAHkB,CADb,EAMfC,IANF;IAOAN,OAAO,CAACC,GAAR,CAAa,UAASE,QAAQ,CAACI,YAAa,EAA5C;EACD;AACF,CA7CL,CA8CI;AA9CJ;AAiDApC,OAAO,CAACqC,KAAR"}
@@ -0,0 +1,28 @@
1
+ import { Command, Option } from 'commander';
2
+ import { Authenticate, Admin, state } from '@rockcarver/frodo-lib';
3
+ import * as common from '../cmd_common.js';
4
+ const {
5
+ getTokens
6
+ } = Authenticate;
7
+ const {
8
+ grantOAuth2ClientAdminPrivileges
9
+ } = Admin;
10
+ const program = new Command('frodo admin grant-oauth2-client-admin-privileges');
11
+ program.description('Grant an oauth2 client admin privileges.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(new Option('-t, --target <target name or id>', 'Name of the oauth2 client.')).action( // 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
+
20
+ if (await getTokens()) {
21
+ console.log(`Granting oauth2 client "${options.target}" in realm "${state.default.session.getRealm()}" admin privileges...`);
22
+ await grantOAuth2ClientAdminPrivileges(options.target);
23
+ console.log('Done.');
24
+ }
25
+ } // end command logic inside action handler
26
+ );
27
+ program.parse();
28
+ //# sourceMappingURL=admin-grant-oauth2-client-admin-privileges.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-grant-oauth2-client-admin-privileges.js","names":["Command","Option","Authenticate","Admin","state","common","getTokens","grantOAuth2ClientAdminPrivileges","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","action","host","realm","user","password","options","default","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","console","log","target","getRealm","parse"],"sources":["cli/admin/admin-grant-oauth2-client-admin-privileges.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, Admin, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\n\nconst { getTokens } = Authenticate;\nconst { grantOAuth2ClientAdminPrivileges } = Admin;\n\nconst program = new Command('frodo admin grant-oauth2-client-admin-privileges');\n\nprogram\n .description('Grant an oauth2 client admin privileges.')\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(\n new Option('-t, --target <target name or id>', 'Name of the oauth2 client.')\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 if (await getTokens()) {\n console.log(\n `Granting oauth2 client \"${\n options.target\n }\" in realm \"${state.default.session.getRealm()}\" admin privileges...`\n );\n await grantOAuth2ClientAdminPrivileges(options.target);\n console.log('Done.');\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAT,EAAkBC,MAAlB,QAAgC,WAAhC;AACA,SAASC,YAAT,EAAuBC,KAAvB,EAA8BC,KAA9B,QAA2C,uBAA3C;AACA,OAAO,KAAKC,MAAZ,MAAwB,kBAAxB;AAEA,MAAM;EAAEC;AAAF,IAAgBJ,YAAtB;AACA,MAAM;EAAEK;AAAF,IAAuCJ,KAA7C;AAEA,MAAMK,OAAO,GAAG,IAAIR,OAAJ,CAAY,kDAAZ,CAAhB;AAEAQ,OAAO,CACJC,WADH,CACe,0CADf,EAEGC,UAFH,CAEc,YAFd,EAE4B,MAF5B,EAGGC,kBAHH,GAIGC,WAJH,CAIeP,MAAM,CAACQ,aAJtB,EAKGD,WALH,CAKeP,MAAM,CAACS,aALtB,EAMGF,WANH,CAMeP,MAAM,CAACU,YANtB,EAOGH,WAPH,CAOeP,MAAM,CAACW,gBAPtB,EAQGC,SARH,CAQaZ,MAAM,CAACa,gBARpB,EASGD,SATH,CASaZ,MAAM,CAACc,cATpB,EAUGF,SAVH,CAWI,IAAIhB,MAAJ,CAAW,kCAAX,EAA+C,4BAA/C,CAXJ,EAaGmB,MAbH,EAcI;AACA,OAAOC,IAAP,EAAaC,KAAb,EAAoBC,IAApB,EAA0BC,QAA1B,EAAoCC,OAApC,KAAgD;EAC9CrB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBC,SAAtB,CAAgCP,IAAhC;EACAjB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBE,QAAtB,CAA+BP,KAA/B;EACAlB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBG,WAAtB,CAAkCP,IAAlC;EACAnB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBI,WAAtB,CAAkCP,QAAlC;EACApB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBK,iBAAtB,CAAwCP,OAAO,CAACQ,IAAhD;EACA7B,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBO,0BAAtB,CAAiDT,OAAO,CAACU,QAAzD;;EACA,IAAI,MAAM7B,SAAS,EAAnB,EAAuB;IACrB8B,OAAO,CAACC,GAAR,CACG,2BACCZ,OAAO,CAACa,MACT,eAAclC,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBY,QAAtB,EAAiC,uBAHlD;IAKA,MAAMhC,gCAAgC,CAACkB,OAAO,CAACa,MAAT,CAAtC;IACAF,OAAO,CAACC,GAAR,CAAY,OAAZ;EACD;AACF,CA/BL,CAgCI;AAhCJ;AAmCA7B,OAAO,CAACgC,KAAR"}
@@ -0,0 +1,28 @@
1
+ import { Command, Option } from 'commander';
2
+ import { Authenticate, Admin, state } from '@rockcarver/frodo-lib';
3
+ import * as common from '../cmd_common.js';
4
+ const {
5
+ getTokens
6
+ } = Authenticate;
7
+ const {
8
+ hideGenericExtensionAttributes
9
+ } = Admin;
10
+ const program = new Command('frodo admin hide-generic-extension-attributes');
11
+ program.description('Hide generic extension attributes.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(new Option('--include-customized', 'Include customized attributes.')).addOption(new Option('--dry-run', 'Dry-run only, do not perform changes.')).action( // 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
+
20
+ if (await getTokens()) {
21
+ console.log(`Hiding generic extension attributes in realm "${state.default.session.getRealm()}"...`);
22
+ await hideGenericExtensionAttributes(options.includeCustomized, options.dryRun);
23
+ console.log('Done.');
24
+ }
25
+ } // end command logic inside action handler
26
+ );
27
+ program.parse();
28
+ //# sourceMappingURL=admin-hide-generic-extension-attributes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-hide-generic-extension-attributes.js","names":["Command","Option","Authenticate","Admin","state","common","getTokens","hideGenericExtensionAttributes","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","action","host","realm","user","password","options","default","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","console","log","getRealm","includeCustomized","dryRun","parse"],"sources":["cli/admin/admin-hide-generic-extension-attributes.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, Admin, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\n\nconst { getTokens } = Authenticate;\nconst { hideGenericExtensionAttributes } = Admin;\n\nconst program = new Command('frodo admin hide-generic-extension-attributes');\n\nprogram\n .description('Hide generic extension attributes.')\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(\n new Option('--include-customized', 'Include customized attributes.')\n )\n .addOption(new Option('--dry-run', 'Dry-run only, do not perform changes.'))\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 if (await getTokens()) {\n console.log(\n `Hiding generic extension attributes in realm \"${state.default.session.getRealm()}\"...`\n );\n await hideGenericExtensionAttributes(\n options.includeCustomized,\n options.dryRun\n );\n console.log('Done.');\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAT,EAAkBC,MAAlB,QAAgC,WAAhC;AACA,SAASC,YAAT,EAAuBC,KAAvB,EAA8BC,KAA9B,QAA2C,uBAA3C;AACA,OAAO,KAAKC,MAAZ,MAAwB,kBAAxB;AAEA,MAAM;EAAEC;AAAF,IAAgBJ,YAAtB;AACA,MAAM;EAAEK;AAAF,IAAqCJ,KAA3C;AAEA,MAAMK,OAAO,GAAG,IAAIR,OAAJ,CAAY,+CAAZ,CAAhB;AAEAQ,OAAO,CACJC,WADH,CACe,oCADf,EAEGC,UAFH,CAEc,YAFd,EAE4B,MAF5B,EAGGC,kBAHH,GAIGC,WAJH,CAIeP,MAAM,CAACQ,aAJtB,EAKGD,WALH,CAKeP,MAAM,CAACS,aALtB,EAMGF,WANH,CAMeP,MAAM,CAACU,YANtB,EAOGH,WAPH,CAOeP,MAAM,CAACW,gBAPtB,EAQGC,SARH,CAQaZ,MAAM,CAACa,gBARpB,EASGD,SATH,CASaZ,MAAM,CAACc,cATpB,EAUGF,SAVH,CAWI,IAAIhB,MAAJ,CAAW,sBAAX,EAAmC,gCAAnC,CAXJ,EAaGgB,SAbH,CAaa,IAAIhB,MAAJ,CAAW,WAAX,EAAwB,uCAAxB,CAbb,EAcGmB,MAdH,EAeI;AACA,OAAOC,IAAP,EAAaC,KAAb,EAAoBC,IAApB,EAA0BC,QAA1B,EAAoCC,OAApC,KAAgD;EAC9CrB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBC,SAAtB,CAAgCP,IAAhC;EACAjB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBE,QAAtB,CAA+BP,KAA/B;EACAlB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBG,WAAtB,CAAkCP,IAAlC;EACAnB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBI,WAAtB,CAAkCP,QAAlC;EACApB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBK,iBAAtB,CAAwCP,OAAO,CAACQ,IAAhD;EACA7B,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBO,0BAAtB,CAAiDT,OAAO,CAACU,QAAzD;;EACA,IAAI,MAAM7B,SAAS,EAAnB,EAAuB;IACrB8B,OAAO,CAACC,GAAR,CACG,iDAAgDjC,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBW,QAAtB,EAAiC,MADpF;IAGA,MAAM/B,8BAA8B,CAClCkB,OAAO,CAACc,iBAD0B,EAElCd,OAAO,CAACe,MAF0B,CAApC;IAIAJ,OAAO,CAACC,GAAR,CAAY,OAAZ;EACD;AACF,CAjCL,CAkCI;AAlCJ;AAqCA7B,OAAO,CAACiC,KAAR"}
@@ -0,0 +1,31 @@
1
+ import { Command } from 'commander';
2
+ import { Authenticate, Admin, state } from '@rockcarver/frodo-lib';
3
+ import * as common from '../cmd_common.js';
4
+ const {
5
+ listOAuth2AdminClients
6
+ } = Admin;
7
+ const {
8
+ getTokens
9
+ } = Authenticate;
10
+ const program = new Command('frodo admin list-oauth2-clients-with-admin-privileges');
11
+ program.description('List oauth2 clients with admin privileges.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).action( // 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
+
20
+ if (await getTokens()) {
21
+ console.log(`Listing oauth2 clients with admin privileges in realm "${state.default.session.getRealm()}"...`);
22
+ const adminClients = await listOAuth2AdminClients();
23
+ adminClients.sort((a, b) => a.localeCompare(b));
24
+ adminClients.forEach(item => {
25
+ console.log(`${item}`);
26
+ });
27
+ }
28
+ } // end command logic inside action handler
29
+ );
30
+ program.parse();
31
+ //# sourceMappingURL=admin-list-oauth2-clients-with-admin-privileges.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-list-oauth2-clients-with-admin-privileges.js","names":["Command","Authenticate","Admin","state","common","listOAuth2AdminClients","getTokens","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","action","host","realm","user","password","options","default","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","console","log","getRealm","adminClients","sort","a","b","localeCompare","forEach","item","parse"],"sources":["cli/admin/admin-list-oauth2-clients-with-admin-privileges.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { Authenticate, Admin, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\n\nconst { listOAuth2AdminClients } = Admin;\nconst { getTokens } = Authenticate;\n\nconst program = new Command(\n 'frodo admin list-oauth2-clients-with-admin-privileges'\n);\n\nprogram\n .description('List oauth2 clients with admin privileges.')\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 .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 if (await getTokens()) {\n console.log(\n `Listing oauth2 clients with admin privileges in realm \"${state.default.session.getRealm()}\"...`\n );\n const adminClients = await listOAuth2AdminClients();\n adminClients.sort((a, b) => a.localeCompare(b));\n adminClients.forEach((item) => {\n console.log(`${item}`);\n });\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,WAAxB;AACA,SAASC,YAAT,EAAuBC,KAAvB,EAA8BC,KAA9B,QAA2C,uBAA3C;AACA,OAAO,KAAKC,MAAZ,MAAwB,kBAAxB;AAEA,MAAM;EAAEC;AAAF,IAA6BH,KAAnC;AACA,MAAM;EAAEI;AAAF,IAAgBL,YAAtB;AAEA,MAAMM,OAAO,GAAG,IAAIP,OAAJ,CACd,uDADc,CAAhB;AAIAO,OAAO,CACJC,WADH,CACe,4CADf,EAEGC,UAFH,CAEc,YAFd,EAE4B,MAF5B,EAGGC,kBAHH,GAIGC,WAJH,CAIeP,MAAM,CAACQ,aAJtB,EAKGD,WALH,CAKeP,MAAM,CAACS,aALtB,EAMGF,WANH,CAMeP,MAAM,CAACU,YANtB,EAOGH,WAPH,CAOeP,MAAM,CAACW,gBAPtB,EAQGC,SARH,CAQaZ,MAAM,CAACa,gBARpB,EASGD,SATH,CASaZ,MAAM,CAACc,cATpB,EAUGC,MAVH,EAWI;AACA,OAAOC,IAAP,EAAaC,KAAb,EAAoBC,IAApB,EAA0BC,QAA1B,EAAoCC,OAApC,KAAgD;EAC9CrB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBC,SAAtB,CAAgCP,IAAhC;EACAjB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBE,QAAtB,CAA+BP,KAA/B;EACAlB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBG,WAAtB,CAAkCP,IAAlC;EACAnB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBI,WAAtB,CAAkCP,QAAlC;EACApB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBK,iBAAtB,CAAwCP,OAAO,CAACQ,IAAhD;EACA7B,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBO,0BAAtB,CAAiDT,OAAO,CAACU,QAAzD;;EACA,IAAI,MAAM5B,SAAS,EAAnB,EAAuB;IACrB6B,OAAO,CAACC,GAAR,CACG,0DAAyDjC,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBW,QAAtB,EAAiC,MAD7F;IAGA,MAAMC,YAAY,GAAG,MAAMjC,sBAAsB,EAAjD;IACAiC,YAAY,CAACC,IAAb,CAAkB,CAACC,CAAD,EAAIC,CAAJ,KAAUD,CAAC,CAACE,aAAF,CAAgBD,CAAhB,CAA5B;IACAH,YAAY,CAACK,OAAb,CAAsBC,IAAD,IAAU;MAC7BT,OAAO,CAACC,GAAR,CAAa,GAAEQ,IAAK,EAApB;IACD,CAFD;EAGD;AACF,CA7BL,CA8BI;AA9BJ;AAiCArC,OAAO,CAACsC,KAAR"}
@@ -0,0 +1,31 @@
1
+ import { Command } from 'commander';
2
+ import { Authenticate, Admin, state } from '@rockcarver/frodo-lib';
3
+ import * as common from '../cmd_common.js';
4
+ const {
5
+ listOAuth2CustomClients
6
+ } = Admin;
7
+ const {
8
+ getTokens
9
+ } = Authenticate;
10
+ const program = new Command('frodo admin list-oauth2-clients-with-custom-privileges');
11
+ program.description('List oauth2 clients with custom privileges.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).action( // 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
+
20
+ if (await getTokens()) {
21
+ console.log(`Listing oauth2 clients with custom privileges in realm "${state.default.session.getRealm()}"...`);
22
+ const adminClients = await listOAuth2CustomClients();
23
+ adminClients.sort((a, b) => a.localeCompare(b));
24
+ adminClients.forEach(item => {
25
+ console.log(`${item}`);
26
+ });
27
+ }
28
+ } // end command logic inside action handler
29
+ );
30
+ program.parse();
31
+ //# sourceMappingURL=admin-list-oauth2-clients-with-custom-privileges.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-list-oauth2-clients-with-custom-privileges.js","names":["Command","Authenticate","Admin","state","common","listOAuth2CustomClients","getTokens","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","action","host","realm","user","password","options","default","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","console","log","getRealm","adminClients","sort","a","b","localeCompare","forEach","item","parse"],"sources":["cli/admin/admin-list-oauth2-clients-with-custom-privileges.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { Authenticate, Admin, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\n\nconst { listOAuth2CustomClients } = Admin;\n\nconst { getTokens } = Authenticate;\n\nconst program = new Command(\n 'frodo admin list-oauth2-clients-with-custom-privileges'\n);\n\nprogram\n .description('List oauth2 clients with custom privileges.')\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 .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 if (await getTokens()) {\n console.log(\n `Listing oauth2 clients with custom privileges in realm \"${state.default.session.getRealm()}\"...`\n );\n const adminClients = await listOAuth2CustomClients();\n adminClients.sort((a, b) => a.localeCompare(b));\n adminClients.forEach((item) => {\n console.log(`${item}`);\n });\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,WAAxB;AACA,SAASC,YAAT,EAAuBC,KAAvB,EAA8BC,KAA9B,QAA2C,uBAA3C;AACA,OAAO,KAAKC,MAAZ,MAAwB,kBAAxB;AAEA,MAAM;EAAEC;AAAF,IAA8BH,KAApC;AAEA,MAAM;EAAEI;AAAF,IAAgBL,YAAtB;AAEA,MAAMM,OAAO,GAAG,IAAIP,OAAJ,CACd,wDADc,CAAhB;AAIAO,OAAO,CACJC,WADH,CACe,6CADf,EAEGC,UAFH,CAEc,YAFd,EAE4B,MAF5B,EAGGC,kBAHH,GAIGC,WAJH,CAIeP,MAAM,CAACQ,aAJtB,EAKGD,WALH,CAKeP,MAAM,CAACS,aALtB,EAMGF,WANH,CAMeP,MAAM,CAACU,YANtB,EAOGH,WAPH,CAOeP,MAAM,CAACW,gBAPtB,EAQGC,SARH,CAQaZ,MAAM,CAACa,gBARpB,EASGD,SATH,CASaZ,MAAM,CAACc,cATpB,EAUGC,MAVH,EAWI;AACA,OAAOC,IAAP,EAAaC,KAAb,EAAoBC,IAApB,EAA0BC,QAA1B,EAAoCC,OAApC,KAAgD;EAC9CrB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBC,SAAtB,CAAgCP,IAAhC;EACAjB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBE,QAAtB,CAA+BP,KAA/B;EACAlB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBG,WAAtB,CAAkCP,IAAlC;EACAnB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBI,WAAtB,CAAkCP,QAAlC;EACApB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBK,iBAAtB,CAAwCP,OAAO,CAACQ,IAAhD;EACA7B,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBO,0BAAtB,CAAiDT,OAAO,CAACU,QAAzD;;EACA,IAAI,MAAM5B,SAAS,EAAnB,EAAuB;IACrB6B,OAAO,CAACC,GAAR,CACG,2DAA0DjC,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBW,QAAtB,EAAiC,MAD9F;IAGA,MAAMC,YAAY,GAAG,MAAMjC,uBAAuB,EAAlD;IACAiC,YAAY,CAACC,IAAb,CAAkB,CAACC,CAAD,EAAIC,CAAJ,KAAUD,CAAC,CAACE,aAAF,CAAgBD,CAAhB,CAA5B;IACAH,YAAY,CAACK,OAAb,CAAsBC,IAAD,IAAU;MAC7BT,OAAO,CAACC,GAAR,CAAa,GAAEQ,IAAK,EAApB;IACD,CAFD;EAGD;AACF,CA7BL,CA8BI;AA9BJ;AAiCArC,OAAO,CAACsC,KAAR"}
@@ -0,0 +1,31 @@
1
+ import { Command, Option } from 'commander';
2
+ import { Authenticate, Admin, state } from '@rockcarver/frodo-lib';
3
+ import * as common from '../cmd_common.js';
4
+ const {
5
+ getTokens
6
+ } = Authenticate;
7
+ const {
8
+ listNonOAuth2AdminStaticUserMappings
9
+ } = Admin;
10
+ const program = new Command('frodo admin list-static-user-mappings');
11
+ program.description('List all subjects of static user mappings that are not oauth2 clients.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(new Option('--show-protected', 'Show protected (system) subjects.').default(false, 'false')).action( // 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
+
20
+ if (await getTokens()) {
21
+ console.log('Listing all non-oauth2 client subjects of static user mappings...');
22
+ const subjects = await listNonOAuth2AdminStaticUserMappings(options.showProtected);
23
+ subjects.sort((a, b) => a.localeCompare(b));
24
+ subjects.forEach(item => {
25
+ console.log(`${item}`);
26
+ });
27
+ }
28
+ } // end command logic inside action handler
29
+ );
30
+ program.parse();
31
+ //# sourceMappingURL=admin-list-static-user-mappings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-list-static-user-mappings.js","names":["Command","Option","Authenticate","Admin","state","common","getTokens","listNonOAuth2AdminStaticUserMappings","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","default","action","host","realm","user","password","options","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","console","log","subjects","showProtected","sort","a","b","localeCompare","forEach","item","parse"],"sources":["cli/admin/admin-list-static-user-mappings.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, Admin, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\n\nconst { getTokens } = Authenticate;\nconst { listNonOAuth2AdminStaticUserMappings } = Admin;\n\nconst program = new Command('frodo admin list-static-user-mappings');\n\nprogram\n .description(\n 'List all subjects of static user mappings that are not oauth2 clients.'\n )\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(\n new Option('--show-protected', 'Show protected (system) subjects.').default(\n false,\n 'false'\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 if (await getTokens()) {\n console.log(\n 'Listing all non-oauth2 client subjects of static user mappings...'\n );\n const subjects = await listNonOAuth2AdminStaticUserMappings(\n options.showProtected\n );\n subjects.sort((a, b) => a.localeCompare(b));\n subjects.forEach((item) => {\n console.log(`${item}`);\n });\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAT,EAAkBC,MAAlB,QAAgC,WAAhC;AACA,SAASC,YAAT,EAAuBC,KAAvB,EAA8BC,KAA9B,QAA2C,uBAA3C;AACA,OAAO,KAAKC,MAAZ,MAAwB,kBAAxB;AAEA,MAAM;EAAEC;AAAF,IAAgBJ,YAAtB;AACA,MAAM;EAAEK;AAAF,IAA2CJ,KAAjD;AAEA,MAAMK,OAAO,GAAG,IAAIR,OAAJ,CAAY,uCAAZ,CAAhB;AAEAQ,OAAO,CACJC,WADH,CAEI,wEAFJ,EAIGC,UAJH,CAIc,YAJd,EAI4B,MAJ5B,EAKGC,kBALH,GAMGC,WANH,CAMeP,MAAM,CAACQ,aANtB,EAOGD,WAPH,CAOeP,MAAM,CAACS,aAPtB,EAQGF,WARH,CAQeP,MAAM,CAACU,YARtB,EASGH,WATH,CASeP,MAAM,CAACW,gBATtB,EAUGC,SAVH,CAUaZ,MAAM,CAACa,gBAVpB,EAWGD,SAXH,CAWaZ,MAAM,CAACc,cAXpB,EAYGF,SAZH,CAaI,IAAIhB,MAAJ,CAAW,kBAAX,EAA+B,mCAA/B,EAAoEmB,OAApE,CACE,KADF,EAEE,OAFF,CAbJ,EAkBGC,MAlBH,EAmBI;AACA,OAAOC,IAAP,EAAaC,KAAb,EAAoBC,IAApB,EAA0BC,QAA1B,EAAoCC,OAApC,KAAgD;EAC9CtB,KAAK,CAACgB,OAAN,CAAcO,OAAd,CAAsBC,SAAtB,CAAgCN,IAAhC;EACAlB,KAAK,CAACgB,OAAN,CAAcO,OAAd,CAAsBE,QAAtB,CAA+BN,KAA/B;EACAnB,KAAK,CAACgB,OAAN,CAAcO,OAAd,CAAsBG,WAAtB,CAAkCN,IAAlC;EACApB,KAAK,CAACgB,OAAN,CAAcO,OAAd,CAAsBI,WAAtB,CAAkCN,QAAlC;EACArB,KAAK,CAACgB,OAAN,CAAcO,OAAd,CAAsBK,iBAAtB,CAAwCN,OAAO,CAACO,IAAhD;EACA7B,KAAK,CAACgB,OAAN,CAAcO,OAAd,CAAsBO,0BAAtB,CAAiDR,OAAO,CAACS,QAAzD;;EACA,IAAI,MAAM7B,SAAS,EAAnB,EAAuB;IACrB8B,OAAO,CAACC,GAAR,CACE,mEADF;IAGA,MAAMC,QAAQ,GAAG,MAAM/B,oCAAoC,CACzDmB,OAAO,CAACa,aADiD,CAA3D;IAGAD,QAAQ,CAACE,IAAT,CAAc,CAACC,CAAD,EAAIC,CAAJ,KAAUD,CAAC,CAACE,aAAF,CAAgBD,CAAhB,CAAxB;IACAJ,QAAQ,CAACM,OAAT,CAAkBC,IAAD,IAAU;MACzBT,OAAO,CAACC,GAAR,CAAa,GAAEQ,IAAK,EAApB;IACD,CAFD;EAGD;AACF,CAvCL,CAwCI;AAxCJ;AA2CArC,OAAO,CAACsC,KAAR"}
@@ -0,0 +1,28 @@
1
+ import { Command } from 'commander';
2
+ import { Authenticate, Admin, state } from '@rockcarver/frodo-lib';
3
+ import * as common from '../cmd_common.js';
4
+ const {
5
+ getTokens
6
+ } = Authenticate;
7
+ const {
8
+ removeStaticUserMapping
9
+ } = Admin;
10
+ const program = new Command('frodo admin remove-static-user-mapping');
11
+ program.description("Remove a subject's static user mapping.").helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).action( // 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
+
20
+ if (await getTokens()) {
21
+ console.log("Removing a subject's static user mapping...");
22
+ await removeStaticUserMapping(options.subject);
23
+ console.log('Done.');
24
+ }
25
+ } // end command logic inside action handler
26
+ );
27
+ program.parse();
28
+ //# sourceMappingURL=admin-remove-static-user-mapping.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-remove-static-user-mapping.js","names":["Command","Authenticate","Admin","state","common","getTokens","removeStaticUserMapping","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","action","host","realm","user","password","options","default","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","console","log","subject","parse"],"sources":["cli/admin/admin-remove-static-user-mapping.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { Authenticate, Admin, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\n\nconst { getTokens } = Authenticate;\nconst { removeStaticUserMapping } = Admin;\n\nconst program = new Command('frodo admin remove-static-user-mapping');\n\nprogram\n .description(\"Remove a subject's static user mapping.\")\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 .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 if (await getTokens()) {\n console.log(\"Removing a subject's static user mapping...\");\n await removeStaticUserMapping(options.subject);\n console.log('Done.');\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,WAAxB;AACA,SAASC,YAAT,EAAuBC,KAAvB,EAA8BC,KAA9B,QAA2C,uBAA3C;AACA,OAAO,KAAKC,MAAZ,MAAwB,kBAAxB;AAEA,MAAM;EAAEC;AAAF,IAAgBJ,YAAtB;AACA,MAAM;EAAEK;AAAF,IAA8BJ,KAApC;AAEA,MAAMK,OAAO,GAAG,IAAIP,OAAJ,CAAY,wCAAZ,CAAhB;AAEAO,OAAO,CACJC,WADH,CACe,yCADf,EAEGC,UAFH,CAEc,YAFd,EAE4B,MAF5B,EAGGC,kBAHH,GAIGC,WAJH,CAIeP,MAAM,CAACQ,aAJtB,EAKGD,WALH,CAKeP,MAAM,CAACS,aALtB,EAMGF,WANH,CAMeP,MAAM,CAACU,YANtB,EAOGH,WAPH,CAOeP,MAAM,CAACW,gBAPtB,EAQGC,SARH,CAQaZ,MAAM,CAACa,gBARpB,EASGD,SATH,CASaZ,MAAM,CAACc,cATpB,EAUGC,MAVH,EAWI;AACA,OAAOC,IAAP,EAAaC,KAAb,EAAoBC,IAApB,EAA0BC,QAA1B,EAAoCC,OAApC,KAAgD;EAC9CrB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBC,SAAtB,CAAgCP,IAAhC;EACAjB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBE,QAAtB,CAA+BP,KAA/B;EACAlB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBG,WAAtB,CAAkCP,IAAlC;EACAnB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBI,WAAtB,CAAkCP,QAAlC;EACApB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBK,iBAAtB,CAAwCP,OAAO,CAACQ,IAAhD;EACA7B,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBO,0BAAtB,CAAiDT,OAAO,CAACU,QAAzD;;EACA,IAAI,MAAM7B,SAAS,EAAnB,EAAuB;IACrB8B,OAAO,CAACC,GAAR,CAAY,6CAAZ;IACA,MAAM9B,uBAAuB,CAACkB,OAAO,CAACa,OAAT,CAA7B;IACAF,OAAO,CAACC,GAAR,CAAY,OAAZ;EACD;AACF,CAxBL,CAyBI;AAzBJ;AA4BA7B,OAAO,CAAC+B,KAAR"}
@@ -0,0 +1,28 @@
1
+ import { Command, Option } from 'commander';
2
+ import { Authenticate, Admin, state } from '@rockcarver/frodo-lib';
3
+ import * as common from '../cmd_common.js';
4
+ const {
5
+ getTokens
6
+ } = Authenticate;
7
+ const {
8
+ repairOrgModel
9
+ } = Admin;
10
+ const program = new Command('frodo admin repair-org-model');
11
+ program.description('Repair org model.').helpOption('-h, --help', 'Help').showHelpAfterError().addArgument(common.hostArgumentM).addArgument(common.realmArgument).addArgument(common.userArgument).addArgument(common.passwordArgument).addOption(common.deploymentOption).addOption(common.insecureOption).addOption(new Option('--exclude-customized', 'Exclude customized properties from repair.')).addOption(new Option('--extend-permissions', 'Extend permissions to include custom attributes.')).addOption(new Option('--dry-run', 'Dry-run only, do not perform changes.')).action( // 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
+
20
+ if (await getTokens()) {
21
+ console.log(`Repairing org model in realm "${state.default.session.getRealm()}"...`);
22
+ await repairOrgModel(options.excludeCustomized, options.extendPermissions, options.dryRun);
23
+ console.log('Done.');
24
+ }
25
+ } // end command logic inside action handler
26
+ );
27
+ program.parse();
28
+ //# sourceMappingURL=admin-repair-org-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-repair-org-model.js","names":["Command","Option","Authenticate","Admin","state","common","getTokens","repairOrgModel","program","description","helpOption","showHelpAfterError","addArgument","hostArgumentM","realmArgument","userArgument","passwordArgument","addOption","deploymentOption","insecureOption","action","host","realm","user","password","options","default","session","setTenant","setRealm","setUsername","setPassword","setDeploymentType","type","setAllowInsecureConnection","insecure","console","log","getRealm","excludeCustomized","extendPermissions","dryRun","parse"],"sources":["cli/admin/admin-repair-org-model.ts"],"sourcesContent":["import { Command, Option } from 'commander';\nimport { Authenticate, Admin, state } from '@rockcarver/frodo-lib';\nimport * as common from '../cmd_common.js';\n\nconst { getTokens } = Authenticate;\nconst { repairOrgModel } = Admin;\n\nconst program = new Command('frodo admin repair-org-model');\n\nprogram\n .description('Repair org model.')\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(\n new Option(\n '--exclude-customized',\n 'Exclude customized properties from repair.'\n )\n )\n .addOption(\n new Option(\n '--extend-permissions',\n 'Extend permissions to include custom attributes.'\n )\n )\n .addOption(new Option('--dry-run', 'Dry-run only, do not perform changes.'))\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 if (await getTokens()) {\n console.log(\n `Repairing org model in realm \"${state.default.session.getRealm()}\"...`\n );\n await repairOrgModel(options.excludeCustomized, options.extendPermissions, options.dryRun);\n console.log('Done.');\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,OAAT,EAAkBC,MAAlB,QAAgC,WAAhC;AACA,SAASC,YAAT,EAAuBC,KAAvB,EAA8BC,KAA9B,QAA2C,uBAA3C;AACA,OAAO,KAAKC,MAAZ,MAAwB,kBAAxB;AAEA,MAAM;EAAEC;AAAF,IAAgBJ,YAAtB;AACA,MAAM;EAAEK;AAAF,IAAqBJ,KAA3B;AAEA,MAAMK,OAAO,GAAG,IAAIR,OAAJ,CAAY,8BAAZ,CAAhB;AAEAQ,OAAO,CACJC,WADH,CACe,mBADf,EAEGC,UAFH,CAEc,YAFd,EAE4B,MAF5B,EAGGC,kBAHH,GAIGC,WAJH,CAIeP,MAAM,CAACQ,aAJtB,EAKGD,WALH,CAKeP,MAAM,CAACS,aALtB,EAMGF,WANH,CAMeP,MAAM,CAACU,YANtB,EAOGH,WAPH,CAOeP,MAAM,CAACW,gBAPtB,EAQGC,SARH,CAQaZ,MAAM,CAACa,gBARpB,EASGD,SATH,CASaZ,MAAM,CAACc,cATpB,EAUGF,SAVH,CAWI,IAAIhB,MAAJ,CACE,sBADF,EAEE,4CAFF,CAXJ,EAgBGgB,SAhBH,CAiBI,IAAIhB,MAAJ,CACE,sBADF,EAEE,kDAFF,CAjBJ,EAsBGgB,SAtBH,CAsBa,IAAIhB,MAAJ,CAAW,WAAX,EAAwB,uCAAxB,CAtBb,EAuBGmB,MAvBH,EAwBI;AACA,OAAOC,IAAP,EAAaC,KAAb,EAAoBC,IAApB,EAA0BC,QAA1B,EAAoCC,OAApC,KAAgD;EAC9CrB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBC,SAAtB,CAAgCP,IAAhC;EACAjB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBE,QAAtB,CAA+BP,KAA/B;EACAlB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBG,WAAtB,CAAkCP,IAAlC;EACAnB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBI,WAAtB,CAAkCP,QAAlC;EACApB,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBK,iBAAtB,CAAwCP,OAAO,CAACQ,IAAhD;EACA7B,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBO,0BAAtB,CAAiDT,OAAO,CAACU,QAAzD;;EACA,IAAI,MAAM7B,SAAS,EAAnB,EAAuB;IACrB8B,OAAO,CAACC,GAAR,CACG,iCAAgCjC,KAAK,CAACsB,OAAN,CAAcC,OAAd,CAAsBW,QAAtB,EAAiC,MADpE;IAGA,MAAM/B,cAAc,CAACkB,OAAO,CAACc,iBAAT,EAA4Bd,OAAO,CAACe,iBAApC,EAAuDf,OAAO,CAACgB,MAA/D,CAApB;IACAL,OAAO,CAACC,GAAR,CAAY,OAAZ;EACD;AACF,CAvCL,CAwCI;AAxCJ;AA2CA7B,OAAO,CAACkC,KAAR"}