@rockcarver/frodo-cli 0.23.1-8 → 0.24.2

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 (206) hide show
  1. package/CHANGELOG.md +73 -1
  2. package/esm/app.js.map +1 -1
  3. package/esm/cli/FrodoCommand.js.map +1 -1
  4. package/esm/cli/_template/something-delete.js.map +1 -1
  5. package/esm/cli/_template/something-describe.js.map +1 -1
  6. package/esm/cli/_template/something-else-delete.js.map +1 -1
  7. package/esm/cli/_template/something-else-describe.js.map +1 -1
  8. package/esm/cli/_template/something-else-export.js.map +1 -1
  9. package/esm/cli/_template/something-else-import.js.map +1 -1
  10. package/esm/cli/_template/something-else-list.js.map +1 -1
  11. package/esm/cli/_template/something-else.js.map +1 -1
  12. package/esm/cli/_template/something-export.js.map +1 -1
  13. package/esm/cli/_template/something-import.js.map +1 -1
  14. package/esm/cli/_template/something-list.js.map +1 -1
  15. package/esm/cli/_template/something-other-delete.js.map +1 -1
  16. package/esm/cli/_template/something-other-describe.js.map +1 -1
  17. package/esm/cli/_template/something-other-export.js.map +1 -1
  18. package/esm/cli/_template/something-other-import.js.map +1 -1
  19. package/esm/cli/_template/something-other-list.js.map +1 -1
  20. package/esm/cli/_template/something-other.js.map +1 -1
  21. package/esm/cli/_template/something.js.map +1 -1
  22. package/esm/cli/admin/admin-add-autoid-static-user-mapping.js.map +1 -1
  23. package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js.map +1 -1
  24. package/esm/cli/admin/admin-get-access-token.js.map +1 -1
  25. package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js.map +1 -1
  26. package/esm/cli/admin/admin-hide-generic-extension-attributes.js.map +1 -1
  27. package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js.map +1 -1
  28. package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js.map +1 -1
  29. package/esm/cli/admin/admin-list-static-user-mappings.js.map +1 -1
  30. package/esm/cli/admin/admin-remove-static-user-mapping.js.map +1 -1
  31. package/esm/cli/admin/admin-repair-org-model.js.map +1 -1
  32. package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js.map +1 -1
  33. package/esm/cli/admin/admin-show-generic-extension-attributes.js.map +1 -1
  34. package/esm/cli/admin/admin.js.map +1 -1
  35. package/esm/cli/agent/agent-delete.js.map +1 -1
  36. package/esm/cli/agent/agent-describe.js.map +1 -1
  37. package/esm/cli/agent/agent-export.js.map +1 -1
  38. package/esm/cli/agent/agent-gateway-delete.js.map +1 -1
  39. package/esm/cli/agent/agent-gateway-describe.js.map +1 -1
  40. package/esm/cli/agent/agent-gateway-export.js.map +1 -1
  41. package/esm/cli/agent/agent-gateway-import.js.map +1 -1
  42. package/esm/cli/agent/agent-gateway-list.js.map +1 -1
  43. package/esm/cli/agent/agent-gateway.js.map +1 -1
  44. package/esm/cli/agent/agent-import.js.map +1 -1
  45. package/esm/cli/agent/agent-java-delete.js.map +1 -1
  46. package/esm/cli/agent/agent-java-describe.js.map +1 -1
  47. package/esm/cli/agent/agent-java-export.js.map +1 -1
  48. package/esm/cli/agent/agent-java-import.js.map +1 -1
  49. package/esm/cli/agent/agent-java-list.js.map +1 -1
  50. package/esm/cli/agent/agent-java.js.map +1 -1
  51. package/esm/cli/agent/agent-list.js.map +1 -1
  52. package/esm/cli/agent/agent-web-delete.js.map +1 -1
  53. package/esm/cli/agent/agent-web-describe.js.map +1 -1
  54. package/esm/cli/agent/agent-web-export.js.map +1 -1
  55. package/esm/cli/agent/agent-web-import.js.map +1 -1
  56. package/esm/cli/agent/agent-web-list.js.map +1 -1
  57. package/esm/cli/agent/agent-web.js.map +1 -1
  58. package/esm/cli/agent/agent.js.map +1 -1
  59. package/esm/cli/app/app-delete.js.map +1 -1
  60. package/esm/cli/app/app-describe.js.map +1 -1
  61. package/esm/cli/app/app-export.js.map +1 -1
  62. package/esm/cli/app/app-import.js.map +1 -1
  63. package/esm/cli/app/app-list.js.map +1 -1
  64. package/esm/cli/app/app.js.map +1 -1
  65. package/esm/cli/authz/authz-policy-delete.js.map +1 -1
  66. package/esm/cli/authz/authz-policy-describe.js.map +1 -1
  67. package/esm/cli/authz/authz-policy-export.js +16 -11
  68. package/esm/cli/authz/authz-policy-export.js.map +1 -1
  69. package/esm/cli/authz/authz-policy-import.js +13 -13
  70. package/esm/cli/authz/authz-policy-import.js.map +1 -1
  71. package/esm/cli/authz/authz-policy-list.js.map +1 -1
  72. package/esm/cli/authz/authz-policy.js.map +1 -1
  73. package/esm/cli/authz/authz-set-delete.js.map +1 -1
  74. package/esm/cli/authz/authz-set-describe.js.map +1 -1
  75. package/esm/cli/authz/authz-set-export.js +7 -4
  76. package/esm/cli/authz/authz-set-export.js.map +1 -1
  77. package/esm/cli/authz/authz-set-import.js +9 -5
  78. package/esm/cli/authz/authz-set-import.js.map +1 -1
  79. package/esm/cli/authz/authz-set-list.js.map +1 -1
  80. package/esm/cli/authz/authz-set.js.map +1 -1
  81. package/esm/cli/authz/authz-type-delete.js.map +1 -1
  82. package/esm/cli/authz/authz-type-describe.js.map +1 -1
  83. package/esm/cli/authz/authz-type-export.js.map +1 -1
  84. package/esm/cli/authz/authz-type-import.js.map +1 -1
  85. package/esm/cli/authz/authz-type-list.js.map +1 -1
  86. package/esm/cli/authz/authz-type.js.map +1 -1
  87. package/esm/cli/authz/authz.js.map +1 -1
  88. package/esm/cli/conn/conn-delete.js.map +1 -1
  89. package/esm/cli/conn/conn-describe.js.map +1 -1
  90. package/esm/cli/conn/conn-list.js.map +1 -1
  91. package/esm/cli/conn/conn-save.js.map +1 -1
  92. package/esm/cli/conn/conn.js.map +1 -1
  93. package/esm/cli/email/email-template-export.js.map +1 -1
  94. package/esm/cli/email/email-template-import.js.map +1 -1
  95. package/esm/cli/email/email-template-list.js.map +1 -1
  96. package/esm/cli/email/email-template.js.map +1 -1
  97. package/esm/cli/email/email.js.map +1 -1
  98. package/esm/cli/esv/esv-apply.js.map +1 -1
  99. package/esm/cli/esv/esv-secret-create.js.map +1 -1
  100. package/esm/cli/esv/esv-secret-delete.js.map +1 -1
  101. package/esm/cli/esv/esv-secret-describe.js.map +1 -1
  102. package/esm/cli/esv/esv-secret-export.js.map +1 -1
  103. package/esm/cli/esv/esv-secret-import.js.map +1 -1
  104. package/esm/cli/esv/esv-secret-list.js.map +1 -1
  105. package/esm/cli/esv/esv-secret-set.js.map +1 -1
  106. package/esm/cli/esv/esv-secret-version-activate.js.map +1 -1
  107. package/esm/cli/esv/esv-secret-version-create.js.map +1 -1
  108. package/esm/cli/esv/esv-secret-version-deactivate.js.map +1 -1
  109. package/esm/cli/esv/esv-secret-version-delete.js.map +1 -1
  110. package/esm/cli/esv/esv-secret-version-list.js.map +1 -1
  111. package/esm/cli/esv/esv-secret-version.js.map +1 -1
  112. package/esm/cli/esv/esv-secret.js.map +1 -1
  113. package/esm/cli/esv/esv-variable-create.js.map +1 -1
  114. package/esm/cli/esv/esv-variable-delete.js.map +1 -1
  115. package/esm/cli/esv/esv-variable-describe.js.map +1 -1
  116. package/esm/cli/esv/esv-variable-export.js.map +1 -1
  117. package/esm/cli/esv/esv-variable-import.js.map +1 -1
  118. package/esm/cli/esv/esv-variable-list.js.map +1 -1
  119. package/esm/cli/esv/esv-variable-set.js.map +1 -1
  120. package/esm/cli/esv/esv-variable.js.map +1 -1
  121. package/esm/cli/esv/esv.js.map +1 -1
  122. package/esm/cli/idm/idm-count.js.map +1 -1
  123. package/esm/cli/idm/idm-export.js.map +1 -1
  124. package/esm/cli/idm/idm-import.js.map +1 -1
  125. package/esm/cli/idm/idm-list.js.map +1 -1
  126. package/esm/cli/idm/idm.js.map +1 -1
  127. package/esm/cli/idp/idp-export.js.map +1 -1
  128. package/esm/cli/idp/idp-import.js.map +1 -1
  129. package/esm/cli/idp/idp-list.js.map +1 -1
  130. package/esm/cli/idp/idp.js.map +1 -1
  131. package/esm/cli/info/info.js.map +1 -1
  132. package/esm/cli/journey/journey-delete.js.map +1 -1
  133. package/esm/cli/journey/journey-describe.js.map +1 -1
  134. package/esm/cli/journey/journey-disable.js.map +1 -1
  135. package/esm/cli/journey/journey-enable.js.map +1 -1
  136. package/esm/cli/journey/journey-export.js.map +1 -1
  137. package/esm/cli/journey/journey-import.js.map +1 -1
  138. package/esm/cli/journey/journey-list.js.map +1 -1
  139. package/esm/cli/journey/journey-prune.js.map +1 -1
  140. package/esm/cli/journey/journey.js.map +1 -1
  141. package/esm/cli/logging/logs-fetch.js.map +1 -1
  142. package/esm/cli/logging/logs-list.js.map +1 -1
  143. package/esm/cli/logging/logs-tail.js.map +1 -1
  144. package/esm/cli/logging/logs.js.map +1 -1
  145. package/esm/cli/realm/realm-add-custom-domain.js.map +1 -1
  146. package/esm/cli/realm/realm-describe.js.map +1 -1
  147. package/esm/cli/realm/realm-list.js.map +1 -1
  148. package/esm/cli/realm/realm-remove-custom-domain.js.map +1 -1
  149. package/esm/cli/realm/realm.js.map +1 -1
  150. package/esm/cli/saml/saml-cot-export.js.map +1 -1
  151. package/esm/cli/saml/saml-cot-import.js.map +1 -1
  152. package/esm/cli/saml/saml-cot-list.js.map +1 -1
  153. package/esm/cli/saml/saml-cot.js.map +1 -1
  154. package/esm/cli/saml/saml-delete.js.map +1 -1
  155. package/esm/cli/saml/saml-describe.js.map +1 -1
  156. package/esm/cli/saml/saml-export.js.map +1 -1
  157. package/esm/cli/saml/saml-import.js.map +1 -1
  158. package/esm/cli/saml/saml-list.js.map +1 -1
  159. package/esm/cli/saml/saml-metadata-export.js.map +1 -1
  160. package/esm/cli/saml/saml-metadata.js.map +1 -1
  161. package/esm/cli/saml/saml.js.map +1 -1
  162. package/esm/cli/script/script-delete.js.map +1 -1
  163. package/esm/cli/script/script-describe.js.map +1 -1
  164. package/esm/cli/script/script-export.js.map +1 -1
  165. package/esm/cli/script/script-import.js.map +1 -1
  166. package/esm/cli/script/script-list.js.map +1 -1
  167. package/esm/cli/script/script.js.map +1 -1
  168. package/esm/cli/service/service-delete.js.map +1 -1
  169. package/esm/cli/service/service-export.js.map +1 -1
  170. package/esm/cli/service/service-import.js.map +1 -1
  171. package/esm/cli/service/service-list.js.map +1 -1
  172. package/esm/cli/service/service.js.map +1 -1
  173. package/esm/cli/theme/theme-delete.e2e.test_.js.map +1 -1
  174. package/esm/cli/theme/theme-delete.js.map +1 -1
  175. package/esm/cli/theme/theme-export.js.map +1 -1
  176. package/esm/cli/theme/theme-import.js.map +1 -1
  177. package/esm/cli/theme/theme-list.e2e.test_.js.map +1 -1
  178. package/esm/cli/theme/theme-list.js.map +1 -1
  179. package/esm/cli/theme/theme.js.map +1 -1
  180. package/esm/loader.js.map +1 -1
  181. package/esm/ops/AgentOps.js.map +1 -1
  182. package/esm/ops/CirclesOfTrustOps.js.map +1 -1
  183. package/esm/ops/ConnectionProfileOps.js.map +1 -1
  184. package/esm/ops/EmailTemplateOps.js.map +1 -1
  185. package/esm/ops/IdmOps.js.map +1 -1
  186. package/esm/ops/IdpOps.js.map +1 -1
  187. package/esm/ops/JourneyOps.js.map +1 -1
  188. package/esm/ops/NodeOps.js.map +1 -1
  189. package/esm/ops/OAuth2ClientOps.js.map +1 -1
  190. package/esm/ops/PolicyOps.js +26 -17
  191. package/esm/ops/PolicyOps.js.map +1 -1
  192. package/esm/ops/PolicySetOps.js +17 -10
  193. package/esm/ops/PolicySetOps.js.map +1 -1
  194. package/esm/ops/ResourceTypeOps.js.map +1 -1
  195. package/esm/ops/Saml2Ops.js.map +1 -1
  196. package/esm/ops/Saml2Ops.test_.js.map +1 -1
  197. package/esm/ops/ScriptOps.js.map +1 -1
  198. package/esm/ops/ServiceOps.js.map +1 -1
  199. package/esm/ops/ThemeOps.js.map +1 -1
  200. package/esm/ops/utils/OpsUtils.js.map +1 -1
  201. package/esm/ops/utils/Wordwrap.js.map +1 -1
  202. package/esm/utils/Config.js.map +1 -1
  203. package/esm/utils/Console.js.map +1 -1
  204. package/esm/utils/ExportImportUtils.js.map +1 -1
  205. package/esm/utils/Version.js.map +1 -1
  206. package/package.json +2 -2
@@ -7,7 +7,7 @@ const {
7
7
  getTokens
8
8
  } = Authenticate;
9
9
  const program = new FrodoCommand('frodo authz set export');
10
- program.description('Export authorization policy sets.').addOption(new Option('-i, --set-id <set-id>', 'Policy set id/name. If specified, -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the export file.')).addOption(new Option('-a, --all', 'Export all applications/policy sets to a single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Export all applications/policy sets to separate files (*.authz.json) in the current directory. Ignored with -i or -a.')).addOption(new Option('--no-deps', 'Do not include any dependencies (policies, scripts, resource types).')).action(
10
+ program.description('Export authorization policy sets.').addOption(new Option('-i, --set-id <set-id>', 'Policy set id/name. If specified, -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the export file.')).addOption(new Option('-a, --all', 'Export all applications/policy sets to a single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Export all applications/policy sets to separate files (*.authz.json) in the current directory. Ignored with -i or -a.')).addOption(new Option('--no-deps', 'Do not include any dependencies (policies, scripts).')).addOption(new Option('--prereqs', 'Include prerequisites (resource types).')).action(
11
11
  // implement command logic inside action handler
12
12
  async (host, realm, user, password, options, command) => {
13
13
  command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
@@ -16,7 +16,8 @@ async (host, realm, user, password, options, command) => {
16
16
  verboseMessage('Exporting authorization policy set to file...');
17
17
  const outcome = exportPolicySetToFile(options.setId, options.file, {
18
18
  useStringArrays: true,
19
- deps: options.deps
19
+ deps: options.deps,
20
+ prereqs: options.prereqs
20
21
  });
21
22
  if (!outcome) process.exitCode = 1;
22
23
  }
@@ -25,7 +26,8 @@ async (host, realm, user, password, options, command) => {
25
26
  verboseMessage('Exporting all authorization policy sets to file...');
26
27
  const outcome = await exportPolicySetsToFile(options.file, {
27
28
  useStringArrays: true,
28
- deps: options.deps
29
+ deps: options.deps,
30
+ prereqs: options.prereqs
29
31
  });
30
32
  if (!outcome) process.exitCode = 1;
31
33
  }
@@ -34,7 +36,8 @@ async (host, realm, user, password, options, command) => {
34
36
  verboseMessage('Exporting all authorization policy sets to separate files...');
35
37
  const outcome = await exportPolicySetsToFiles({
36
38
  useStringArrays: true,
37
- deps: options.deps
39
+ deps: options.deps,
40
+ prereqs: options.prereqs
38
41
  });
39
42
  if (!outcome) process.exitCode = 1;
40
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"authz-set-export.js","names":["FrodoCommand","Option","Authenticate","exportPolicySetToFile","exportPolicySetsToFile","exportPolicySetsToFiles","verboseMessage","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","setId","outcome","file","useStringArrays","deps","process","exitCode","all","allSeparate","help","parse"],"sources":["cli/authz/authz-set-export.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport {\n exportPolicySetToFile,\n exportPolicySetsToFile,\n exportPolicySetsToFiles,\n} from '../../ops/PolicySetOps';\nimport { verboseMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo authz set export');\n\nprogram\n .description('Export authorization policy sets.')\n .addOption(\n new Option(\n '-i, --set-id <set-id>',\n 'Policy set id/name. If specified, -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the export file.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Export all applications/policy sets to a single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all applications/policy sets to separate files (*.authz.json) in the current directory. Ignored with -i or -a.'\n )\n )\n .addOption(\n new Option(\n '--no-deps',\n 'Do not include any dependencies (policies, scripts, resource types).'\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\n if (options.setId && (await getTokens())) {\n verboseMessage('Exporting authorization policy set to file...');\n const outcome = exportPolicySetToFile(options.setId, options.file, {\n useStringArrays: true,\n deps: options.deps,\n });\n if (!outcome) process.exitCode = 1;\n }\n // -a/--all\n else if (options.all && (await getTokens())) {\n verboseMessage('Exporting all authorization policy sets to file...');\n const outcome = await exportPolicySetsToFile(options.file, {\n useStringArrays: true,\n deps: options.deps,\n });\n if (!outcome) process.exitCode = 1;\n }\n // -A/--all-separate\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage(\n 'Exporting all authorization policy sets to separate files...'\n );\n const outcome = await exportPolicySetsToFiles({\n useStringArrays: true,\n deps: options.deps,\n });\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n verboseMessage('Unrecognized combination of options or no options...');\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,QAAQ,uBAAuB;AACpD,SACEC,qBAAqB,EACrBC,sBAAsB,EACtBC,uBAAuB,QAClB,wBAAwB;AAC/B,SAASC,cAAc,QAAQ,qBAAqB;AAEpD,MAAM;EAAEC;AAAU,CAAC,GAAGL,YAAY;AAElC,MAAMM,OAAO,GAAG,IAAIR,YAAY,CAAC,wBAAwB,CAAC;AAE1DQ,OAAO,CACJC,WAAW,CAAC,mCAAmC,CAAC,CAChDC,SAAS,CACR,IAAIT,MAAM,CACR,uBAAuB,EACvB,0DAA0D,CAC3D,CACF,CACAS,SAAS,CAAC,IAAIT,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,CAAC,CACtES,SAAS,CACR,IAAIT,MAAM,CACR,WAAW,EACX,wEAAwE,CACzE,CACF,CACAS,SAAS,CACR,IAAIT,MAAM,CACR,oBAAoB,EACpB,uHAAuH,CACxH,CACF,CACAS,SAAS,CACR,IAAIT,MAAM,CACR,WAAW,EACX,sEAAsE,CACvE,CACF,CACAU,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,MAAMZ,SAAS,EAAE,CAAC,EAAE;IACxCD,cAAc,CAAC,+CAA+C,CAAC;IAC/D,MAAMc,OAAO,GAAGjB,qBAAqB,CAACa,OAAO,CAACG,KAAK,EAAEH,OAAO,CAACK,IAAI,EAAE;MACjEC,eAAe,EAAE,IAAI;MACrBC,IAAI,EAAEP,OAAO,CAACO;IAChB,CAAC,CAAC;IACF,IAAI,CAACH,OAAO,EAAEI,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIT,OAAO,CAACU,GAAG,KAAK,MAAMnB,SAAS,EAAE,CAAC,EAAE;IAC3CD,cAAc,CAAC,oDAAoD,CAAC;IACpE,MAAMc,OAAO,GAAG,MAAMhB,sBAAsB,CAACY,OAAO,CAACK,IAAI,EAAE;MACzDC,eAAe,EAAE,IAAI;MACrBC,IAAI,EAAEP,OAAO,CAACO;IAChB,CAAC,CAAC;IACF,IAAI,CAACH,OAAO,EAAEI,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIT,OAAO,CAACW,WAAW,KAAK,MAAMpB,SAAS,EAAE,CAAC,EAAE;IACnDD,cAAc,CACZ,8DAA8D,CAC/D;IACD,MAAMc,OAAO,GAAG,MAAMf,uBAAuB,CAAC;MAC5CiB,eAAe,EAAE,IAAI;MACrBC,IAAI,EAAEP,OAAO,CAACO;IAChB,CAAC,CAAC;IACF,IAAI,CAACH,OAAO,EAAEI,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK;IACHnB,cAAc,CAAC,sDAAsD,CAAC;IACtEE,OAAO,CAACoB,IAAI,EAAE;IACdJ,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHjB,OAAO,CAACqB,KAAK,EAAE"}
1
+ {"version":3,"file":"authz-set-export.js","names":["FrodoCommand","Option","Authenticate","exportPolicySetToFile","exportPolicySetsToFile","exportPolicySetsToFiles","verboseMessage","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","setId","outcome","file","useStringArrays","deps","prereqs","process","exitCode","all","allSeparate","help","parse"],"sources":["cli/authz/authz-set-export.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport {\n exportPolicySetToFile,\n exportPolicySetsToFile,\n exportPolicySetsToFiles,\n} from '../../ops/PolicySetOps';\nimport { verboseMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo authz set export');\n\nprogram\n .description('Export authorization policy sets.')\n .addOption(\n new Option(\n '-i, --set-id <set-id>',\n 'Policy set id/name. If specified, -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the export file.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Export all applications/policy sets to a single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all applications/policy sets to separate files (*.authz.json) in the current directory. Ignored with -i or -a.'\n )\n )\n .addOption(\n new Option(\n '--no-deps',\n 'Do not include any dependencies (policies, scripts).'\n )\n )\n .addOption(new Option('--prereqs', 'Include prerequisites (resource types).'))\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\n if (options.setId && (await getTokens())) {\n verboseMessage('Exporting authorization policy set to file...');\n const outcome = exportPolicySetToFile(options.setId, options.file, {\n useStringArrays: true,\n deps: options.deps,\n prereqs: options.prereqs,\n });\n if (!outcome) process.exitCode = 1;\n }\n // -a/--all\n else if (options.all && (await getTokens())) {\n verboseMessage('Exporting all authorization policy sets to file...');\n const outcome = await exportPolicySetsToFile(options.file, {\n useStringArrays: true,\n deps: options.deps,\n prereqs: options.prereqs,\n });\n if (!outcome) process.exitCode = 1;\n }\n // -A/--all-separate\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage(\n 'Exporting all authorization policy sets to separate files...'\n );\n const outcome = await exportPolicySetsToFiles({\n useStringArrays: true,\n deps: options.deps,\n prereqs: options.prereqs,\n });\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n verboseMessage('Unrecognized combination of options or no options...');\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,QAAQ,uBAAuB;AACpD,SACEC,qBAAqB,EACrBC,sBAAsB,EACtBC,uBAAuB,QAClB,wBAAwB;AAC/B,SAASC,cAAc,QAAQ,qBAAqB;AAEpD,MAAM;EAAEC;AAAU,CAAC,GAAGL,YAAY;AAElC,MAAMM,OAAO,GAAG,IAAIR,YAAY,CAAC,wBAAwB,CAAC;AAE1DQ,OAAO,CACJC,WAAW,CAAC,mCAAmC,CAAC,CAChDC,SAAS,CACR,IAAIT,MAAM,CACR,uBAAuB,EACvB,0DACF,CACF,CAAC,CACAS,SAAS,CAAC,IAAIT,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,CAAC,CACtES,SAAS,CACR,IAAIT,MAAM,CACR,WAAW,EACX,wEACF,CACF,CAAC,CACAS,SAAS,CACR,IAAIT,MAAM,CACR,oBAAoB,EACpB,uHACF,CACF,CAAC,CACAS,SAAS,CACR,IAAIT,MAAM,CACR,WAAW,EACX,sDACF,CACF,CAAC,CACAS,SAAS,CAAC,IAAIT,MAAM,CAAC,WAAW,EAAE,yCAAyC,CAAC,CAAC,CAC7EU,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,OACF,CAAC;EACD;EACA,IAAID,OAAO,CAACG,KAAK,KAAK,MAAMZ,SAAS,CAAC,CAAC,CAAC,EAAE;IACxCD,cAAc,CAAC,+CAA+C,CAAC;IAC/D,MAAMc,OAAO,GAAGjB,qBAAqB,CAACa,OAAO,CAACG,KAAK,EAAEH,OAAO,CAACK,IAAI,EAAE;MACjEC,eAAe,EAAE,IAAI;MACrBC,IAAI,EAAEP,OAAO,CAACO,IAAI;MAClBC,OAAO,EAAER,OAAO,CAACQ;IACnB,CAAC,CAAC;IACF,IAAI,CAACJ,OAAO,EAAEK,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIV,OAAO,CAACW,GAAG,KAAK,MAAMpB,SAAS,CAAC,CAAC,CAAC,EAAE;IAC3CD,cAAc,CAAC,oDAAoD,CAAC;IACpE,MAAMc,OAAO,GAAG,MAAMhB,sBAAsB,CAACY,OAAO,CAACK,IAAI,EAAE;MACzDC,eAAe,EAAE,IAAI;MACrBC,IAAI,EAAEP,OAAO,CAACO,IAAI;MAClBC,OAAO,EAAER,OAAO,CAACQ;IACnB,CAAC,CAAC;IACF,IAAI,CAACJ,OAAO,EAAEK,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIV,OAAO,CAACY,WAAW,KAAK,MAAMrB,SAAS,CAAC,CAAC,CAAC,EAAE;IACnDD,cAAc,CACZ,8DACF,CAAC;IACD,MAAMc,OAAO,GAAG,MAAMf,uBAAuB,CAAC;MAC5CiB,eAAe,EAAE,IAAI;MACrBC,IAAI,EAAEP,OAAO,CAACO,IAAI;MAClBC,OAAO,EAAER,OAAO,CAACQ;IACnB,CAAC,CAAC;IACF,IAAI,CAACJ,OAAO,EAAEK,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK;IACHpB,cAAc,CAAC,sDAAsD,CAAC;IACtEE,OAAO,CAACqB,IAAI,CAAC,CAAC;IACdJ,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHlB,OAAO,CAACsB,KAAK,CAAC,CAAC"}
@@ -7,7 +7,7 @@ const {
7
7
  getTokens
8
8
  } = Authenticate;
9
9
  const program = new FrodoCommand('frodo authz set import');
10
- program.description('Import authorization policy sets.').addOption(new Option('-i, --set-id <set-id>', 'Policy set id/name. If specified, only one policy set is imported and the options -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the file to import.')).addOption(new Option('-a, --all', 'Import all policy sets from single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Import all policy sets from separate files (*.policyset.authz.json) in the current directory. Ignored with -i or -a.')).addOption(new Option('--no-deps', 'Do not include any dependencies (policies, scripts, resource types).')).action(
10
+ program.description('Import authorization policy sets.').addOption(new Option('-i, --set-id <set-id>', 'Policy set id/name. If specified, only one policy set is imported and the options -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the file to import.')).addOption(new Option('-a, --all', 'Import all policy sets from single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Import all policy sets from separate files (*.policyset.authz.json) in the current directory. Ignored with -i or -a.')).addOption(new Option('--no-deps', 'Do not include any dependencies (policies, scripts).')).addOption(new Option('--prereqs', 'Include prerequisites (resource types).')).action(
11
11
  // implement command logic inside action handler
12
12
  async (host, realm, user, password, options, command) => {
13
13
  command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
@@ -15,7 +15,8 @@ async (host, realm, user, password, options, command) => {
15
15
  if (options.setId && (await getTokens())) {
16
16
  verboseMessage('Importing authorization policy set from file...');
17
17
  const outcome = importPolicySetFromFile(options.setId, options.file, {
18
- deps: options.deps
18
+ deps: options.deps,
19
+ prereqs: options.prereqs
19
20
  });
20
21
  if (!outcome) process.exitCode = 1;
21
22
  }
@@ -23,7 +24,8 @@ async (host, realm, user, password, options, command) => {
23
24
  else if (options.all && (await getTokens())) {
24
25
  verboseMessage('Importing all authorization policy sets from file...');
25
26
  const outcome = await importPolicySetsFromFile(options.file, {
26
- deps: options.deps
27
+ deps: options.deps,
28
+ prereqs: options.prereqs
27
29
  });
28
30
  if (!outcome) process.exitCode = 1;
29
31
  }
@@ -31,7 +33,8 @@ async (host, realm, user, password, options, command) => {
31
33
  else if (options.allSeparate && (await getTokens())) {
32
34
  verboseMessage('Importing all authorization policy sets from separate files...');
33
35
  const outcome = await importPolicySetsFromFiles({
34
- deps: options.deps
36
+ deps: options.deps,
37
+ prereqs: options.prereqs
35
38
  });
36
39
  if (!outcome) process.exitCode = 1;
37
40
  }
@@ -39,7 +42,8 @@ async (host, realm, user, password, options, command) => {
39
42
  else if (options.file && (await getTokens())) {
40
43
  verboseMessage(`Importing first authorization policy set from file "${options.file}"...`);
41
44
  const outcome = await importFirstPolicySetFromFile(options.file, {
42
- deps: options.deps
45
+ deps: options.deps,
46
+ prereqs: options.prereqs
43
47
  });
44
48
  if (!outcome) process.exitCode = 1;
45
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"authz-set-import.js","names":["FrodoCommand","Option","Authenticate","importFirstPolicySetFromFile","importPolicySetFromFile","importPolicySetsFromFile","importPolicySetsFromFiles","verboseMessage","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","setId","outcome","file","deps","process","exitCode","all","allSeparate","help","parse"],"sources":["cli/authz/authz-set-import.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport {\n importFirstPolicySetFromFile,\n importPolicySetFromFile,\n importPolicySetsFromFile,\n importPolicySetsFromFiles,\n} from '../../ops/PolicySetOps';\nimport { verboseMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo authz set import');\n\nprogram\n .description('Import authorization policy sets.')\n .addOption(\n new Option(\n '-i, --set-id <set-id>',\n 'Policy set id/name. If specified, only one policy set 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 policy sets from single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all policy sets from separate files (*.policyset.authz.json) in the current directory. Ignored with -i or -a.'\n )\n )\n .addOption(\n new Option(\n '--no-deps',\n 'Do not include any dependencies (policies, scripts, resource types).'\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 // import\n if (options.setId && (await getTokens())) {\n verboseMessage('Importing authorization policy set from file...');\n const outcome = importPolicySetFromFile(options.setId, options.file, {\n deps: options.deps,\n });\n if (!outcome) process.exitCode = 1;\n }\n // -a/--all\n else if (options.all && (await getTokens())) {\n verboseMessage('Importing all authorization policy sets from file...');\n const outcome = await importPolicySetsFromFile(options.file, {\n deps: options.deps,\n });\n if (!outcome) process.exitCode = 1;\n }\n // -A/--all-separate\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage(\n 'Importing all authorization policy sets from separate files...'\n );\n const outcome = await importPolicySetsFromFiles({\n deps: options.deps,\n });\n if (!outcome) process.exitCode = 1;\n }\n // import first policy set from file\n else if (options.file && (await getTokens())) {\n verboseMessage(\n `Importing first authorization policy set from file \"${options.file}\"...`\n );\n const outcome = await importFirstPolicySetFromFile(options.file, {\n deps: options.deps,\n });\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n verboseMessage('Unrecognized combination of options or no options...');\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
1
+ {"version":3,"file":"authz-set-import.js","names":["FrodoCommand","Option","Authenticate","importFirstPolicySetFromFile","importPolicySetFromFile","importPolicySetsFromFile","importPolicySetsFromFiles","verboseMessage","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","setId","outcome","file","deps","prereqs","process","exitCode","all","allSeparate","help","parse"],"sources":["cli/authz/authz-set-import.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport {\n importFirstPolicySetFromFile,\n importPolicySetFromFile,\n importPolicySetsFromFile,\n importPolicySetsFromFiles,\n} from '../../ops/PolicySetOps';\nimport { verboseMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo authz set import');\n\nprogram\n .description('Import authorization policy sets.')\n .addOption(\n new Option(\n '-i, --set-id <set-id>',\n 'Policy set id/name. If specified, only one policy set 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 policy sets from single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all policy sets from separate files (*.policyset.authz.json) in the current directory. Ignored with -i or -a.'\n )\n )\n .addOption(\n new Option(\n '--no-deps',\n 'Do not include any dependencies (policies, scripts).'\n )\n )\n .addOption(new Option('--prereqs', 'Include prerequisites (resource types).'))\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 // import\n if (options.setId && (await getTokens())) {\n verboseMessage('Importing authorization policy set from file...');\n const outcome = importPolicySetFromFile(options.setId, options.file, {\n deps: options.deps,\n prereqs: options.prereqs,\n });\n if (!outcome) process.exitCode = 1;\n }\n // -a/--all\n else if (options.all && (await getTokens())) {\n verboseMessage('Importing all authorization policy sets from file...');\n const outcome = await importPolicySetsFromFile(options.file, {\n deps: options.deps,\n prereqs: options.prereqs,\n });\n if (!outcome) process.exitCode = 1;\n }\n // -A/--all-separate\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage(\n 'Importing all authorization policy sets from separate files...'\n );\n const outcome = await importPolicySetsFromFiles({\n deps: options.deps,\n prereqs: options.prereqs,\n });\n if (!outcome) process.exitCode = 1;\n }\n // import first policy set from file\n else if (options.file && (await getTokens())) {\n verboseMessage(\n `Importing first authorization policy set from file \"${options.file}\"...`\n );\n const outcome = await importFirstPolicySetFromFile(options.file, {\n deps: options.deps,\n prereqs: options.prereqs,\n });\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n verboseMessage('Unrecognized combination of options or no options...');\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"authz-set-list.js","names":["FrodoCommand","Authenticate","verboseMessage","listPolicySets","getTokens","program","description","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","outcome","process","exitCode","parse"],"sources":["cli/authz/authz-set-list.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console.js';\nimport { listPolicySets } from '../../ops/PolicySetOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo authz set list');\n\nprogram.description('List authorization policy sets.').action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n verboseMessage('Listing authorization policy sets...');\n const outcome = listPolicySets();\n if (!outcome) process.exitCode = 1;\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,YAAY,QAAQ,uBAAuB;AACpD,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,cAAc,QAAQ,wBAAwB;AAEvD,MAAM;EAAEC;AAAU,CAAC,GAAGH,YAAY;AAElC,MAAMI,OAAO,GAAG,IAAIL,YAAY,CAAC,sBAAsB,CAAC;AAExDK,OAAO,CAACC,WAAW,CAAC,iCAAiC,CAAC,CAACC,MAAM;AAC3D;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,MAAMT,SAAS,EAAE,EAAE;IACrBF,cAAc,CAAC,sCAAsC,CAAC;IACtD,MAAMa,OAAO,GAAGZ,cAAc,EAAE;IAChC,IAAI,CAACY,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC,CAAC,MAAM;IACLD,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEDZ,OAAO,CAACa,KAAK,EAAE"}
1
+ {"version":3,"file":"authz-set-list.js","names":["FrodoCommand","Authenticate","verboseMessage","listPolicySets","getTokens","program","description","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","outcome","process","exitCode","parse"],"sources":["cli/authz/authz-set-list.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console.js';\nimport { listPolicySets } from '../../ops/PolicySetOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo authz set list');\n\nprogram.description('List authorization policy sets.').action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n verboseMessage('Listing authorization policy sets...');\n const outcome = listPolicySets();\n if (!outcome) process.exitCode = 1;\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,YAAY,QAAQ,uBAAuB;AACpD,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,cAAc,QAAQ,wBAAwB;AAEvD,MAAM;EAAEC;AAAU,CAAC,GAAGH,YAAY;AAElC,MAAMI,OAAO,GAAG,IAAIL,YAAY,CAAC,sBAAsB,CAAC;AAExDK,OAAO,CAACC,WAAW,CAAC,iCAAiC,CAAC,CAACC,MAAM;AAC3D;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,OACF,CAAC;EACD,IAAI,MAAMT,SAAS,CAAC,CAAC,EAAE;IACrBF,cAAc,CAAC,sCAAsC,CAAC;IACtD,MAAMa,OAAO,GAAGZ,cAAc,CAAC,CAAC;IAChC,IAAI,CAACY,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC,CAAC,MAAM;IACLD,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEDZ,OAAO,CAACa,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"authz-set.js","names":["FrodoStubCommand","program","alias","description","command","parse"],"sources":["cli/authz/authz-set.ts"],"sourcesContent":["import { FrodoStubCommand } from '../FrodoCommand';\n\nconst program = new FrodoStubCommand('frodo authz set').alias('policyset');\n\nprogram.description('Manage authorization policy sets.');\n\nprogram.command('delete', 'Delete authorization policy sets.');\n\nprogram.command('describe', 'Describe authorization policy sets.');\n\nprogram.command('export', 'Export authorization policy sets.');\n\nprogram.command('import', 'Import authorization policy sets.');\n\nprogram.command('list', 'List authorization policy sets.');\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,iBAAiB;AAElD,MAAMC,OAAO,GAAG,IAAID,gBAAgB,CAAC,iBAAiB,CAAC,CAACE,KAAK,CAAC,WAAW,CAAC;AAE1ED,OAAO,CAACE,WAAW,CAAC,mCAAmC,CAAC;AAExDF,OAAO,CAACG,OAAO,CAAC,QAAQ,EAAE,mCAAmC,CAAC;AAE9DH,OAAO,CAACG,OAAO,CAAC,UAAU,EAAE,qCAAqC,CAAC;AAElEH,OAAO,CAACG,OAAO,CAAC,QAAQ,EAAE,mCAAmC,CAAC;AAE9DH,OAAO,CAACG,OAAO,CAAC,QAAQ,EAAE,mCAAmC,CAAC;AAE9DH,OAAO,CAACG,OAAO,CAAC,MAAM,EAAE,iCAAiC,CAAC;AAE1DH,OAAO,CAACI,KAAK,EAAE"}
1
+ {"version":3,"file":"authz-set.js","names":["FrodoStubCommand","program","alias","description","command","parse"],"sources":["cli/authz/authz-set.ts"],"sourcesContent":["import { FrodoStubCommand } from '../FrodoCommand';\n\nconst program = new FrodoStubCommand('frodo authz set').alias('policyset');\n\nprogram.description('Manage authorization policy sets.');\n\nprogram.command('delete', 'Delete authorization policy sets.');\n\nprogram.command('describe', 'Describe authorization policy sets.');\n\nprogram.command('export', 'Export authorization policy sets.');\n\nprogram.command('import', 'Import authorization policy sets.');\n\nprogram.command('list', 'List authorization policy sets.');\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,iBAAiB;AAElD,MAAMC,OAAO,GAAG,IAAID,gBAAgB,CAAC,iBAAiB,CAAC,CAACE,KAAK,CAAC,WAAW,CAAC;AAE1ED,OAAO,CAACE,WAAW,CAAC,mCAAmC,CAAC;AAExDF,OAAO,CAACG,OAAO,CAAC,QAAQ,EAAE,mCAAmC,CAAC;AAE9DH,OAAO,CAACG,OAAO,CAAC,UAAU,EAAE,qCAAqC,CAAC;AAElEH,OAAO,CAACG,OAAO,CAAC,QAAQ,EAAE,mCAAmC,CAAC;AAE9DH,OAAO,CAACG,OAAO,CAAC,QAAQ,EAAE,mCAAmC,CAAC;AAE9DH,OAAO,CAACG,OAAO,CAAC,MAAM,EAAE,iCAAiC,CAAC;AAE1DH,OAAO,CAACI,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"authz-type-delete.js","names":["FrodoCommand","Option","Authenticate","printMessage","verboseMessage","deleteResourceType","deleteResourceTypeByName","deleteResourceTypes","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","typeId","outcome","process","exitCode","typeName","all","help","parse"],"sources":["cli/authz/authz-type-delete.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport {\n deleteResourceType,\n deleteResourceTypeByName,\n deleteResourceTypes,\n} from '../../ops/ResourceTypeOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo authz type delete');\n\nprogram\n .description('Delete authorization resource types.')\n .addOption(\n new Option(\n '-i, --type-id <type-id>',\n 'Variable id. If specified, -a is ignored.'\n )\n )\n .addOption(\n new Option(\n '-n, --type-name <type-name>',\n 'Resource type name. If specified, -a is ignored.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Delete all resource types in a realm. Ignored with -i and -n.'\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 // delete by uuid\n if (options.typeId && (await getTokens())) {\n verboseMessage('Deleting authorization resource type...');\n const outcome = deleteResourceType(options.typeId);\n if (!outcome) process.exitCode = 1;\n }\n // delete by name\n else if (options.typeName && (await getTokens())) {\n verboseMessage('Deleting authorization resource type...');\n const outcome = deleteResourceTypeByName(options.typeName);\n if (!outcome) process.exitCode = 1;\n }\n // --all -a\n else if (options.all && (await getTokens())) {\n verboseMessage('Deleting all authorization resource types...');\n const outcome = deleteResourceTypes();\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n printMessage('Unrecognized combination of options or no options...');\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,QAAQ,uBAAuB;AACpD,SAASC,YAAY,EAAEC,cAAc,QAAQ,wBAAwB;AACrE,SACEC,kBAAkB,EAClBC,wBAAwB,EACxBC,mBAAmB,QACd,2BAA2B;AAElC,MAAM;EAAEC;AAAU,CAAC,GAAGN,YAAY;AAElC,MAAMO,OAAO,GAAG,IAAIT,YAAY,CAAC,yBAAyB,CAAC;AAE3DS,OAAO,CACJC,WAAW,CAAC,sCAAsC,CAAC,CACnDC,SAAS,CACR,IAAIV,MAAM,CACR,yBAAyB,EACzB,2CAA2C,CAC5C,CACF,CACAU,SAAS,CACR,IAAIV,MAAM,CACR,6BAA6B,EAC7B,kDAAkD,CACnD,CACF,CACAU,SAAS,CACR,IAAIV,MAAM,CACR,WAAW,EACX,+DAA+D,CAChE,CACF,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,MAAM,KAAK,MAAMZ,SAAS,EAAE,CAAC,EAAE;IACzCJ,cAAc,CAAC,yCAAyC,CAAC;IACzD,MAAMiB,OAAO,GAAGhB,kBAAkB,CAACY,OAAO,CAACG,MAAM,CAAC;IAClD,IAAI,CAACC,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIN,OAAO,CAACO,QAAQ,KAAK,MAAMhB,SAAS,EAAE,CAAC,EAAE;IAChDJ,cAAc,CAAC,yCAAyC,CAAC;IACzD,MAAMiB,OAAO,GAAGf,wBAAwB,CAACW,OAAO,CAACO,QAAQ,CAAC;IAC1D,IAAI,CAACH,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIN,OAAO,CAACQ,GAAG,KAAK,MAAMjB,SAAS,EAAE,CAAC,EAAE;IAC3CJ,cAAc,CAAC,8CAA8C,CAAC;IAC9D,MAAMiB,OAAO,GAAGd,mBAAmB,EAAE;IACrC,IAAI,CAACc,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK;IACHpB,YAAY,CAAC,sDAAsD,CAAC;IACpEM,OAAO,CAACiB,IAAI,EAAE;IACdJ,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHd,OAAO,CAACkB,KAAK,EAAE"}
1
+ {"version":3,"file":"authz-type-delete.js","names":["FrodoCommand","Option","Authenticate","printMessage","verboseMessage","deleteResourceType","deleteResourceTypeByName","deleteResourceTypes","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","typeId","outcome","process","exitCode","typeName","all","help","parse"],"sources":["cli/authz/authz-type-delete.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport {\n deleteResourceType,\n deleteResourceTypeByName,\n deleteResourceTypes,\n} from '../../ops/ResourceTypeOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo authz type delete');\n\nprogram\n .description('Delete authorization resource types.')\n .addOption(\n new Option(\n '-i, --type-id <type-id>',\n 'Variable id. If specified, -a is ignored.'\n )\n )\n .addOption(\n new Option(\n '-n, --type-name <type-name>',\n 'Resource type name. If specified, -a is ignored.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Delete all resource types in a realm. Ignored with -i and -n.'\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 // delete by uuid\n if (options.typeId && (await getTokens())) {\n verboseMessage('Deleting authorization resource type...');\n const outcome = deleteResourceType(options.typeId);\n if (!outcome) process.exitCode = 1;\n }\n // delete by name\n else if (options.typeName && (await getTokens())) {\n verboseMessage('Deleting authorization resource type...');\n const outcome = deleteResourceTypeByName(options.typeName);\n if (!outcome) process.exitCode = 1;\n }\n // --all -a\n else if (options.all && (await getTokens())) {\n verboseMessage('Deleting all authorization resource types...');\n const outcome = deleteResourceTypes();\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n printMessage('Unrecognized combination of options or no options...');\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,QAAQ,uBAAuB;AACpD,SAASC,YAAY,EAAEC,cAAc,QAAQ,wBAAwB;AACrE,SACEC,kBAAkB,EAClBC,wBAAwB,EACxBC,mBAAmB,QACd,2BAA2B;AAElC,MAAM;EAAEC;AAAU,CAAC,GAAGN,YAAY;AAElC,MAAMO,OAAO,GAAG,IAAIT,YAAY,CAAC,yBAAyB,CAAC;AAE3DS,OAAO,CACJC,WAAW,CAAC,sCAAsC,CAAC,CACnDC,SAAS,CACR,IAAIV,MAAM,CACR,yBAAyB,EACzB,2CACF,CACF,CAAC,CACAU,SAAS,CACR,IAAIV,MAAM,CACR,6BAA6B,EAC7B,kDACF,CACF,CAAC,CACAU,SAAS,CACR,IAAIV,MAAM,CACR,WAAW,EACX,+DACF,CACF,CAAC,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,OACF,CAAC;EACD;EACA,IAAID,OAAO,CAACG,MAAM,KAAK,MAAMZ,SAAS,CAAC,CAAC,CAAC,EAAE;IACzCJ,cAAc,CAAC,yCAAyC,CAAC;IACzD,MAAMiB,OAAO,GAAGhB,kBAAkB,CAACY,OAAO,CAACG,MAAM,CAAC;IAClD,IAAI,CAACC,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIN,OAAO,CAACO,QAAQ,KAAK,MAAMhB,SAAS,CAAC,CAAC,CAAC,EAAE;IAChDJ,cAAc,CAAC,yCAAyC,CAAC;IACzD,MAAMiB,OAAO,GAAGf,wBAAwB,CAACW,OAAO,CAACO,QAAQ,CAAC;IAC1D,IAAI,CAACH,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIN,OAAO,CAACQ,GAAG,KAAK,MAAMjB,SAAS,CAAC,CAAC,CAAC,EAAE;IAC3CJ,cAAc,CAAC,8CAA8C,CAAC;IAC9D,MAAMiB,OAAO,GAAGd,mBAAmB,CAAC,CAAC;IACrC,IAAI,CAACc,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK;IACHpB,YAAY,CAAC,sDAAsD,CAAC;IACpEM,OAAO,CAACiB,IAAI,CAAC,CAAC;IACdJ,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHd,OAAO,CAACkB,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"authz-type-describe.js","names":["FrodoCommand","Option","Authenticate","verboseMessage","describeResourceType","describeResourceTypeByName","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","typeId","outcome","json","process","exitCode","typeName","help","parse"],"sources":["cli/authz/authz-type-describe.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console.js';\nimport {\n describeResourceType,\n describeResourceTypeByName,\n} from '../../ops/ResourceTypeOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo authz type describe');\n\nprogram\n .description('Describe authorization resource types.')\n .addOption(new Option('-i, --type-id <type-uuid>', 'Resource type uuid.'))\n .addOption(new Option('-n, --type-name <type-name>', 'Resource type name.'))\n .addOption(new Option('--json', 'Output in JSON format.'))\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 (options.typeId && (await getTokens())) {\n verboseMessage(`Describing authorization resource type by uuid...`);\n const outcome = await describeResourceType(\n options.typeId,\n options.json\n );\n if (!outcome) process.exitCode = 1;\n } else if (options.typeName && (await getTokens())) {\n verboseMessage(`Describing authorization resource type by name...`);\n const outcome = await describeResourceTypeByName(\n options.typeName,\n options.json\n );\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n verboseMessage('Unrecognized combination of options or no options...');\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,QAAQ,uBAAuB;AACpD,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SACEC,oBAAoB,EACpBC,0BAA0B,QACrB,2BAA2B;AAElC,MAAM;EAAEC;AAAU,CAAC,GAAGJ,YAAY;AAElC,MAAMK,OAAO,GAAG,IAAIP,YAAY,CAAC,2BAA2B,CAAC;AAE7DO,OAAO,CACJC,WAAW,CAAC,wCAAwC,CAAC,CACrDC,SAAS,CAAC,IAAIR,MAAM,CAAC,2BAA2B,EAAE,qBAAqB,CAAC,CAAC,CACzEQ,SAAS,CAAC,IAAIR,MAAM,CAAC,6BAA6B,EAAE,qBAAqB,CAAC,CAAC,CAC3EQ,SAAS,CAAC,IAAIR,MAAM,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC,CACzDS,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,IAAID,OAAO,CAACG,MAAM,KAAK,MAAMZ,SAAS,EAAE,CAAC,EAAE;IACzCH,cAAc,CAAE,mDAAkD,CAAC;IACnE,MAAMgB,OAAO,GAAG,MAAMf,oBAAoB,CACxCW,OAAO,CAACG,MAAM,EACdH,OAAO,CAACK,IAAI,CACb;IACD,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC,CAAC,MAAM,IAAIP,OAAO,CAACQ,QAAQ,KAAK,MAAMjB,SAAS,EAAE,CAAC,EAAE;IAClDH,cAAc,CAAE,mDAAkD,CAAC;IACnE,MAAMgB,OAAO,GAAG,MAAMd,0BAA0B,CAC9CU,OAAO,CAACQ,QAAQ,EAChBR,OAAO,CAACK,IAAI,CACb;IACD,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK;IACHnB,cAAc,CAAC,sDAAsD,CAAC;IACtEI,OAAO,CAACiB,IAAI,EAAE;IACdH,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHf,OAAO,CAACkB,KAAK,EAAE"}
1
+ {"version":3,"file":"authz-type-describe.js","names":["FrodoCommand","Option","Authenticate","verboseMessage","describeResourceType","describeResourceTypeByName","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","typeId","outcome","json","process","exitCode","typeName","help","parse"],"sources":["cli/authz/authz-type-describe.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console.js';\nimport {\n describeResourceType,\n describeResourceTypeByName,\n} from '../../ops/ResourceTypeOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo authz type describe');\n\nprogram\n .description('Describe authorization resource types.')\n .addOption(new Option('-i, --type-id <type-uuid>', 'Resource type uuid.'))\n .addOption(new Option('-n, --type-name <type-name>', 'Resource type name.'))\n .addOption(new Option('--json', 'Output in JSON format.'))\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 (options.typeId && (await getTokens())) {\n verboseMessage(`Describing authorization resource type by uuid...`);\n const outcome = await describeResourceType(\n options.typeId,\n options.json\n );\n if (!outcome) process.exitCode = 1;\n } else if (options.typeName && (await getTokens())) {\n verboseMessage(`Describing authorization resource type by name...`);\n const outcome = await describeResourceTypeByName(\n options.typeName,\n options.json\n );\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n verboseMessage('Unrecognized combination of options or no options...');\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,QAAQ,uBAAuB;AACpD,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SACEC,oBAAoB,EACpBC,0BAA0B,QACrB,2BAA2B;AAElC,MAAM;EAAEC;AAAU,CAAC,GAAGJ,YAAY;AAElC,MAAMK,OAAO,GAAG,IAAIP,YAAY,CAAC,2BAA2B,CAAC;AAE7DO,OAAO,CACJC,WAAW,CAAC,wCAAwC,CAAC,CACrDC,SAAS,CAAC,IAAIR,MAAM,CAAC,2BAA2B,EAAE,qBAAqB,CAAC,CAAC,CACzEQ,SAAS,CAAC,IAAIR,MAAM,CAAC,6BAA6B,EAAE,qBAAqB,CAAC,CAAC,CAC3EQ,SAAS,CAAC,IAAIR,MAAM,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC,CACzDS,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,OACF,CAAC;EACD,IAAID,OAAO,CAACG,MAAM,KAAK,MAAMZ,SAAS,CAAC,CAAC,CAAC,EAAE;IACzCH,cAAc,CAAE,mDAAkD,CAAC;IACnE,MAAMgB,OAAO,GAAG,MAAMf,oBAAoB,CACxCW,OAAO,CAACG,MAAM,EACdH,OAAO,CAACK,IACV,CAAC;IACD,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC,CAAC,MAAM,IAAIP,OAAO,CAACQ,QAAQ,KAAK,MAAMjB,SAAS,CAAC,CAAC,CAAC,EAAE;IAClDH,cAAc,CAAE,mDAAkD,CAAC;IACnE,MAAMgB,OAAO,GAAG,MAAMd,0BAA0B,CAC9CU,OAAO,CAACQ,QAAQ,EAChBR,OAAO,CAACK,IACV,CAAC;IACD,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK;IACHnB,cAAc,CAAC,sDAAsD,CAAC;IACtEI,OAAO,CAACiB,IAAI,CAAC,CAAC;IACdH,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHf,OAAO,CAACkB,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"authz-type-export.js","names":["FrodoCommand","Option","Authenticate","verboseMessage","exportResourceTypeByNameToFile","exportResourceTypeToFile","exportResourceTypesToFile","exportResourceTypesToFiles","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","typeId","outcome","file","process","exitCode","typeName","all","allSeparate","help","parse"],"sources":["cli/authz/authz-type-export.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console';\nimport {\n exportResourceTypeByNameToFile,\n exportResourceTypeToFile,\n exportResourceTypesToFile,\n exportResourceTypesToFiles,\n} from '../../ops/ResourceTypeOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo authz type export');\n\nprogram\n .description('Export authorization resource types.')\n .addOption(\n new Option(\n '-i, --type-id <type-uuid>',\n 'Resource type uuid. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-n, --type-name <type-name>',\n 'Resource type name. If specified, -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the export file.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Export all resource types to a single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all resource types to separate files (*.resourcetype.authz.json) in the current directory. Ignored with -i, -n, or -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 uuid\n if (options.typeId && (await getTokens())) {\n verboseMessage('Exporting authorization resource type to file...');\n const outcome = exportResourceTypeToFile(options.typeId, options.file);\n if (!outcome) process.exitCode = 1;\n }\n // export by name\n else if (options.typeName && (await getTokens())) {\n verboseMessage('Exporting authorization resource type to file...');\n const outcome = exportResourceTypeByNameToFile(\n options.typeName,\n options.file\n );\n if (!outcome) process.exitCode = 1;\n }\n // -a/--all\n else if (options.all && (await getTokens())) {\n verboseMessage('Exporting all authorization resource types to file...');\n const outcome = await exportResourceTypesToFile(options.file);\n if (!outcome) process.exitCode = 1;\n }\n // -A/--all-separate\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage(\n 'Exporting all authorization resource types to separate files...'\n );\n const outcome = await exportResourceTypesToFiles();\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n verboseMessage('Unrecognized combination of options or no options...');\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,QAAQ,uBAAuB;AACpD,SAASC,cAAc,QAAQ,qBAAqB;AACpD,SACEC,8BAA8B,EAC9BC,wBAAwB,EACxBC,yBAAyB,EACzBC,0BAA0B,QACrB,2BAA2B;AAElC,MAAM;EAAEC;AAAU,CAAC,GAAGN,YAAY;AAElC,MAAMO,OAAO,GAAG,IAAIT,YAAY,CAAC,yBAAyB,CAAC;AAE3DS,OAAO,CACJC,WAAW,CAAC,sCAAsC,CAAC,CACnDC,SAAS,CACR,IAAIV,MAAM,CACR,2BAA2B,EAC3B,0DAA0D,CAC3D,CACF,CACAU,SAAS,CACR,IAAIV,MAAM,CACR,6BAA6B,EAC7B,0DAA0D,CAC3D,CACF,CACAU,SAAS,CAAC,IAAIV,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,CAAC,CACtEU,SAAS,CACR,IAAIV,MAAM,CACR,WAAW,EACX,8DAA8D,CAC/D,CACF,CACAU,SAAS,CACR,IAAIV,MAAM,CACR,oBAAoB,EACpB,+HAA+H,CAChI,CACF,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,MAAM,KAAK,MAAMZ,SAAS,EAAE,CAAC,EAAE;IACzCL,cAAc,CAAC,kDAAkD,CAAC;IAClE,MAAMkB,OAAO,GAAGhB,wBAAwB,CAACY,OAAO,CAACG,MAAM,EAAEH,OAAO,CAACK,IAAI,CAAC;IACtE,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIP,OAAO,CAACQ,QAAQ,KAAK,MAAMjB,SAAS,EAAE,CAAC,EAAE;IAChDL,cAAc,CAAC,kDAAkD,CAAC;IAClE,MAAMkB,OAAO,GAAGjB,8BAA8B,CAC5Ca,OAAO,CAACQ,QAAQ,EAChBR,OAAO,CAACK,IAAI,CACb;IACD,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIP,OAAO,CAACS,GAAG,KAAK,MAAMlB,SAAS,EAAE,CAAC,EAAE;IAC3CL,cAAc,CAAC,uDAAuD,CAAC;IACvE,MAAMkB,OAAO,GAAG,MAAMf,yBAAyB,CAACW,OAAO,CAACK,IAAI,CAAC;IAC7D,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIP,OAAO,CAACU,WAAW,KAAK,MAAMnB,SAAS,EAAE,CAAC,EAAE;IACnDL,cAAc,CACZ,iEAAiE,CAClE;IACD,MAAMkB,OAAO,GAAG,MAAMd,0BAA0B,EAAE;IAClD,IAAI,CAACc,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK;IACHrB,cAAc,CAAC,sDAAsD,CAAC;IACtEM,OAAO,CAACmB,IAAI,EAAE;IACdL,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHf,OAAO,CAACoB,KAAK,EAAE"}
1
+ {"version":3,"file":"authz-type-export.js","names":["FrodoCommand","Option","Authenticate","verboseMessage","exportResourceTypeByNameToFile","exportResourceTypeToFile","exportResourceTypesToFile","exportResourceTypesToFiles","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","typeId","outcome","file","process","exitCode","typeName","all","allSeparate","help","parse"],"sources":["cli/authz/authz-type-export.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console';\nimport {\n exportResourceTypeByNameToFile,\n exportResourceTypeToFile,\n exportResourceTypesToFile,\n exportResourceTypesToFiles,\n} from '../../ops/ResourceTypeOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo authz type export');\n\nprogram\n .description('Export authorization resource types.')\n .addOption(\n new Option(\n '-i, --type-id <type-uuid>',\n 'Resource type uuid. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-n, --type-name <type-name>',\n 'Resource type name. If specified, -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the export file.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Export all resource types to a single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all resource types to separate files (*.resourcetype.authz.json) in the current directory. Ignored with -i, -n, or -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 uuid\n if (options.typeId && (await getTokens())) {\n verboseMessage('Exporting authorization resource type to file...');\n const outcome = exportResourceTypeToFile(options.typeId, options.file);\n if (!outcome) process.exitCode = 1;\n }\n // export by name\n else if (options.typeName && (await getTokens())) {\n verboseMessage('Exporting authorization resource type to file...');\n const outcome = exportResourceTypeByNameToFile(\n options.typeName,\n options.file\n );\n if (!outcome) process.exitCode = 1;\n }\n // -a/--all\n else if (options.all && (await getTokens())) {\n verboseMessage('Exporting all authorization resource types to file...');\n const outcome = await exportResourceTypesToFile(options.file);\n if (!outcome) process.exitCode = 1;\n }\n // -A/--all-separate\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage(\n 'Exporting all authorization resource types to separate files...'\n );\n const outcome = await exportResourceTypesToFiles();\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n verboseMessage('Unrecognized combination of options or no options...');\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,QAAQ,uBAAuB;AACpD,SAASC,cAAc,QAAQ,qBAAqB;AACpD,SACEC,8BAA8B,EAC9BC,wBAAwB,EACxBC,yBAAyB,EACzBC,0BAA0B,QACrB,2BAA2B;AAElC,MAAM;EAAEC;AAAU,CAAC,GAAGN,YAAY;AAElC,MAAMO,OAAO,GAAG,IAAIT,YAAY,CAAC,yBAAyB,CAAC;AAE3DS,OAAO,CACJC,WAAW,CAAC,sCAAsC,CAAC,CACnDC,SAAS,CACR,IAAIV,MAAM,CACR,2BAA2B,EAC3B,0DACF,CACF,CAAC,CACAU,SAAS,CACR,IAAIV,MAAM,CACR,6BAA6B,EAC7B,0DACF,CACF,CAAC,CACAU,SAAS,CAAC,IAAIV,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,CAAC,CACtEU,SAAS,CACR,IAAIV,MAAM,CACR,WAAW,EACX,8DACF,CACF,CAAC,CACAU,SAAS,CACR,IAAIV,MAAM,CACR,oBAAoB,EACpB,+HACF,CACF,CAAC,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,OACF,CAAC;EACD;EACA,IAAID,OAAO,CAACG,MAAM,KAAK,MAAMZ,SAAS,CAAC,CAAC,CAAC,EAAE;IACzCL,cAAc,CAAC,kDAAkD,CAAC;IAClE,MAAMkB,OAAO,GAAGhB,wBAAwB,CAACY,OAAO,CAACG,MAAM,EAAEH,OAAO,CAACK,IAAI,CAAC;IACtE,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIP,OAAO,CAACQ,QAAQ,KAAK,MAAMjB,SAAS,CAAC,CAAC,CAAC,EAAE;IAChDL,cAAc,CAAC,kDAAkD,CAAC;IAClE,MAAMkB,OAAO,GAAGjB,8BAA8B,CAC5Ca,OAAO,CAACQ,QAAQ,EAChBR,OAAO,CAACK,IACV,CAAC;IACD,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIP,OAAO,CAACS,GAAG,KAAK,MAAMlB,SAAS,CAAC,CAAC,CAAC,EAAE;IAC3CL,cAAc,CAAC,uDAAuD,CAAC;IACvE,MAAMkB,OAAO,GAAG,MAAMf,yBAAyB,CAACW,OAAO,CAACK,IAAI,CAAC;IAC7D,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIP,OAAO,CAACU,WAAW,KAAK,MAAMnB,SAAS,CAAC,CAAC,CAAC,EAAE;IACnDL,cAAc,CACZ,iEACF,CAAC;IACD,MAAMkB,OAAO,GAAG,MAAMd,0BAA0B,CAAC,CAAC;IAClD,IAAI,CAACc,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK;IACHrB,cAAc,CAAC,sDAAsD,CAAC;IACtEM,OAAO,CAACmB,IAAI,CAAC,CAAC;IACdL,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHf,OAAO,CAACoB,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"authz-type-import.js","names":["FrodoCommand","Option","Authenticate","verboseMessage","importFirstResourceTypeFromFile","importResourceTypeByNameFromFile","importResourceTypeFromFile","importResourceTypesFromFile","importResourceTypesFromFiles","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","typeId","outcome","file","process","exitCode","typeName","all","allSeparate","help","parse"],"sources":["cli/authz/authz-type-import.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console';\nimport {\n importFirstResourceTypeFromFile,\n importResourceTypeByNameFromFile,\n importResourceTypeFromFile,\n importResourceTypesFromFile,\n importResourceTypesFromFiles,\n} from '../../ops/ResourceTypeOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo authz type import');\n\nprogram\n .description('Import authorization resource types.')\n .addOption(\n new Option(\n '-i, --type-id <type-uuid>',\n 'Resource type uuid. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-n, --type-name <type-name>',\n 'Resource type name. If specified, -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 resource types from single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all resource types from separate files (*.resourcetype.authz.json) in the current directory. Ignored with -i, -n, or -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 // import by uuid\n if (options.typeId && (await getTokens())) {\n verboseMessage(\n 'Importing authorization resource type by uuid from file...'\n );\n const outcome = importResourceTypeFromFile(\n options.typeId,\n options.file\n );\n if (!outcome) process.exitCode = 1;\n }\n // import by name\n else if (options.typeName && (await getTokens())) {\n verboseMessage(\n 'Importing authorization resource type by name from file...'\n );\n const outcome = importResourceTypeByNameFromFile(\n options.typeName,\n options.file\n );\n if (!outcome) process.exitCode = 1;\n }\n // -a/--all\n else if (options.all && (await getTokens())) {\n verboseMessage(\n 'Importing all authorization resource types from file...'\n );\n const outcome = await importResourceTypesFromFile(options.file);\n if (!outcome) process.exitCode = 1;\n }\n // -A/--all-separate\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage(\n 'Importing all authorization resource types from separate files...'\n );\n const outcome = await importResourceTypesFromFiles();\n if (!outcome) process.exitCode = 1;\n }\n // import first\n else if (options.file && (await getTokens())) {\n verboseMessage(\n `Importing first authorization resource type from file \"${options.file}\"...`\n );\n const outcome = await importFirstResourceTypeFromFile(options.file);\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n verboseMessage('Unrecognized combination of options or no options...');\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
1
+ {"version":3,"file":"authz-type-import.js","names":["FrodoCommand","Option","Authenticate","verboseMessage","importFirstResourceTypeFromFile","importResourceTypeByNameFromFile","importResourceTypeFromFile","importResourceTypesFromFile","importResourceTypesFromFiles","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","typeId","outcome","file","process","exitCode","typeName","all","allSeparate","help","parse"],"sources":["cli/authz/authz-type-import.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console';\nimport {\n importFirstResourceTypeFromFile,\n importResourceTypeByNameFromFile,\n importResourceTypeFromFile,\n importResourceTypesFromFile,\n importResourceTypesFromFiles,\n} from '../../ops/ResourceTypeOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo authz type import');\n\nprogram\n .description('Import authorization resource types.')\n .addOption(\n new Option(\n '-i, --type-id <type-uuid>',\n 'Resource type uuid. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-n, --type-name <type-name>',\n 'Resource type name. If specified, -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 resource types from single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all resource types from separate files (*.resourcetype.authz.json) in the current directory. Ignored with -i, -n, or -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 // import by uuid\n if (options.typeId && (await getTokens())) {\n verboseMessage(\n 'Importing authorization resource type by uuid from file...'\n );\n const outcome = importResourceTypeFromFile(\n options.typeId,\n options.file\n );\n if (!outcome) process.exitCode = 1;\n }\n // import by name\n else if (options.typeName && (await getTokens())) {\n verboseMessage(\n 'Importing authorization resource type by name from file...'\n );\n const outcome = importResourceTypeByNameFromFile(\n options.typeName,\n options.file\n );\n if (!outcome) process.exitCode = 1;\n }\n // -a/--all\n else if (options.all && (await getTokens())) {\n verboseMessage(\n 'Importing all authorization resource types from file...'\n );\n const outcome = await importResourceTypesFromFile(options.file);\n if (!outcome) process.exitCode = 1;\n }\n // -A/--all-separate\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage(\n 'Importing all authorization resource types from separate files...'\n );\n const outcome = await importResourceTypesFromFiles();\n if (!outcome) process.exitCode = 1;\n }\n // import first\n else if (options.file && (await getTokens())) {\n verboseMessage(\n `Importing first authorization resource type from file \"${options.file}\"...`\n );\n const outcome = await importFirstResourceTypeFromFile(options.file);\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n verboseMessage('Unrecognized combination of options or no options...');\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"authz-type-list.js","names":["FrodoCommand","Option","Authenticate","verboseMessage","listResourceTypes","getTokens","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","outcome","long","process","exitCode","parse"],"sources":["cli/authz/authz-type-list.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console.js';\nimport { listResourceTypes } from '../../ops/ResourceTypeOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo authz type list');\n\nprogram\n .description('List authorization resource types.')\n .addOption(\n new Option('-l, --long', 'Long with more fields.').default(false, 'false')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n verboseMessage('Listing resource types...');\n const outcome = listResourceTypes(options.long);\n if (!outcome) process.exitCode = 1;\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,iBAAiB,QAAQ,2BAA2B;AAE7D,MAAM;EAAEC;AAAU,CAAC,GAAGH,YAAY;AAElC,MAAMI,OAAO,GAAG,IAAIN,YAAY,CAAC,uBAAuB,CAAC;AAEzDM,OAAO,CACJC,WAAW,CAAC,oCAAoC,CAAC,CACjDC,SAAS,CACR,IAAIP,MAAM,CAAC,YAAY,EAAE,wBAAwB,CAAC,CAACQ,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAC3E,CACAC,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OAAO,CACR;EACD,IAAI,MAAMX,SAAS,EAAE,EAAE;IACrBF,cAAc,CAAC,2BAA2B,CAAC;IAC3C,MAAMe,OAAO,GAAGd,iBAAiB,CAACW,OAAO,CAACI,IAAI,CAAC;IAC/C,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC,CAAC,MAAM;IACLD,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHf,OAAO,CAACgB,KAAK,EAAE"}
1
+ {"version":3,"file":"authz-type-list.js","names":["FrodoCommand","Option","Authenticate","verboseMessage","listResourceTypes","getTokens","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","outcome","long","process","exitCode","parse"],"sources":["cli/authz/authz-type-list.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console.js';\nimport { listResourceTypes } from '../../ops/ResourceTypeOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo authz type list');\n\nprogram\n .description('List authorization resource types.')\n .addOption(\n new Option('-l, --long', 'Long with more fields.').default(false, 'false')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n verboseMessage('Listing resource types...');\n const outcome = listResourceTypes(options.long);\n if (!outcome) process.exitCode = 1;\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,iBAAiB,QAAQ,2BAA2B;AAE7D,MAAM;EAAEC;AAAU,CAAC,GAAGH,YAAY;AAElC,MAAMI,OAAO,GAAG,IAAIN,YAAY,CAAC,uBAAuB,CAAC;AAEzDM,OAAO,CACJC,WAAW,CAAC,oCAAoC,CAAC,CACjDC,SAAS,CACR,IAAIP,MAAM,CAAC,YAAY,EAAE,wBAAwB,CAAC,CAACQ,OAAO,CAAC,KAAK,EAAE,OAAO,CAC3E,CAAC,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,OACF,CAAC;EACD,IAAI,MAAMX,SAAS,CAAC,CAAC,EAAE;IACrBF,cAAc,CAAC,2BAA2B,CAAC;IAC3C,MAAMe,OAAO,GAAGd,iBAAiB,CAACW,OAAO,CAACI,IAAI,CAAC;IAC/C,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC,CAAC,MAAM;IACLD,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHf,OAAO,CAACgB,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"authz-type.js","names":["FrodoStubCommand","program","description","command","parse"],"sources":["cli/authz/authz-type.ts"],"sourcesContent":["import { FrodoStubCommand } from '../FrodoCommand';\n\nconst program = new FrodoStubCommand('frodo authz type');\n\nprogram.description('Manage authorization resource types.');\n\nprogram.command('delete', 'Delete authorization resource types.');\n\nprogram.command('describe', 'Describe authorization resource types.');\n\nprogram.command('export', 'Export authorization resource types.');\n\nprogram.command('import', 'Import authorization resource types.');\n\nprogram.command('list', 'List authorization resource types.');\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,iBAAiB;AAElD,MAAMC,OAAO,GAAG,IAAID,gBAAgB,CAAC,kBAAkB,CAAC;AAExDC,OAAO,CAACC,WAAW,CAAC,sCAAsC,CAAC;AAE3DD,OAAO,CAACE,OAAO,CAAC,QAAQ,EAAE,sCAAsC,CAAC;AAEjEF,OAAO,CAACE,OAAO,CAAC,UAAU,EAAE,wCAAwC,CAAC;AAErEF,OAAO,CAACE,OAAO,CAAC,QAAQ,EAAE,sCAAsC,CAAC;AAEjEF,OAAO,CAACE,OAAO,CAAC,QAAQ,EAAE,sCAAsC,CAAC;AAEjEF,OAAO,CAACE,OAAO,CAAC,MAAM,EAAE,oCAAoC,CAAC;AAE7DF,OAAO,CAACG,KAAK,EAAE"}
1
+ {"version":3,"file":"authz-type.js","names":["FrodoStubCommand","program","description","command","parse"],"sources":["cli/authz/authz-type.ts"],"sourcesContent":["import { FrodoStubCommand } from '../FrodoCommand';\n\nconst program = new FrodoStubCommand('frodo authz type');\n\nprogram.description('Manage authorization resource types.');\n\nprogram.command('delete', 'Delete authorization resource types.');\n\nprogram.command('describe', 'Describe authorization resource types.');\n\nprogram.command('export', 'Export authorization resource types.');\n\nprogram.command('import', 'Import authorization resource types.');\n\nprogram.command('list', 'List authorization resource types.');\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,iBAAiB;AAElD,MAAMC,OAAO,GAAG,IAAID,gBAAgB,CAAC,kBAAkB,CAAC;AAExDC,OAAO,CAACC,WAAW,CAAC,sCAAsC,CAAC;AAE3DD,OAAO,CAACE,OAAO,CAAC,QAAQ,EAAE,sCAAsC,CAAC;AAEjEF,OAAO,CAACE,OAAO,CAAC,UAAU,EAAE,wCAAwC,CAAC;AAErEF,OAAO,CAACE,OAAO,CAAC,QAAQ,EAAE,sCAAsC,CAAC;AAEjEF,OAAO,CAACE,OAAO,CAAC,QAAQ,EAAE,sCAAsC,CAAC;AAEjEF,OAAO,CAACE,OAAO,CAAC,MAAM,EAAE,oCAAoC,CAAC;AAE7DF,OAAO,CAACG,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"authz.js","names":["FrodoStubCommand","path","fileURLToPath","__dirname","dirname","import","meta","url","setup","program","description","executableDir","command"],"sources":["cli/authz/authz.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('authz')\n .description(\n 'Manage authotiztion policies, policy sets, and resource types.'\n )\n .executableDir(__dirname);\n\n program.command('set', 'Manage policy sets.');\n\n program.command('policy', 'Manages policies.');\n\n program.command('type', 'Manage resource types.');\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,CACV,gEAAgE,CACjE,CACAC,aAAa,CAACR,SAAS,CAAC;EAE3BM,OAAO,CAACG,OAAO,CAAC,KAAK,EAAE,qBAAqB,CAAC;EAE7CH,OAAO,CAACG,OAAO,CAAC,QAAQ,EAAE,mBAAmB,CAAC;EAE9CH,OAAO,CAACG,OAAO,CAAC,MAAM,EAAE,wBAAwB,CAAC;EAEjD,OAAOH,OAAO;AAChB"}
1
+ {"version":3,"file":"authz.js","names":["FrodoStubCommand","path","fileURLToPath","__dirname","dirname","import","meta","url","setup","program","description","executableDir","command"],"sources":["cli/authz/authz.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('authz')\n .description(\n 'Manage authotiztion policies, policy sets, and resource types.'\n )\n .executableDir(__dirname);\n\n program.command('set', 'Manage policy sets.');\n\n program.command('policy', 'Manages policies.');\n\n program.command('type', 'Manage resource types.');\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,KAAKA,CAAA,EAAG;EAC9B,MAAMC,OAAO,GAAG,IAAIT,gBAAgB,CAAC,OAAO,CAAC,CAC1CU,WAAW,CACV,gEACF,CAAC,CACAC,aAAa,CAACR,SAAS,CAAC;EAE3BM,OAAO,CAACG,OAAO,CAAC,KAAK,EAAE,qBAAqB,CAAC;EAE7CH,OAAO,CAACG,OAAO,CAAC,QAAQ,EAAE,mBAAmB,CAAC;EAE9CH,OAAO,CAACG,OAAO,CAAC,MAAM,EAAE,wBAAwB,CAAC;EAEjD,OAAOH,OAAO;AAChB"}
@@ -1 +1 @@
1
- {"version":3,"file":"conn-delete.js","names":["FrodoCommand","ConnectionProfile","deleteConnectionProfile","program","description","action","host","options","command","handleDefaultArgsAndOpts","parse"],"sources":["cli/conn/conn-delete.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { ConnectionProfile } from '@rockcarver/frodo-lib';\n\nconst { deleteConnectionProfile } = ConnectionProfile;\n\nconst program = new FrodoCommand('frodo conn delete', [\n 'realm',\n 'username',\n 'password',\n 'type',\n 'insecure',\n 'curlirize',\n]);\n\nprogram.description('Delete connection profiles.').action(\n // implement command logic inside action handler\n async (host, options, command) => {\n command.handleDefaultArgsAndOpts(host, options, command);\n deleteConnectionProfile(host);\n }\n // end command logic inside action handler\n);\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,iBAAiB,QAAQ,uBAAuB;AAEzD,MAAM;EAAEC;AAAwB,CAAC,GAAGD,iBAAiB;AAErD,MAAME,OAAO,GAAG,IAAIH,YAAY,CAAC,mBAAmB,EAAE,CACpD,OAAO,EACP,UAAU,EACV,UAAU,EACV,MAAM,EACN,UAAU,EACV,WAAW,CACZ,CAAC;AAEFG,OAAO,CAACC,WAAW,CAAC,6BAA6B,CAAC,CAACC,MAAM;AACvD;AACA,OAAOC,IAAI,EAAEC,OAAO,EAAEC,OAAO,KAAK;EAChCA,OAAO,CAACC,wBAAwB,CAACH,IAAI,EAAEC,OAAO,EAAEC,OAAO,CAAC;EACxDN,uBAAuB,CAACI,IAAI,CAAC;AAC/B;AACA;AAAA,CACD;;AAEDH,OAAO,CAACO,KAAK,EAAE"}
1
+ {"version":3,"file":"conn-delete.js","names":["FrodoCommand","ConnectionProfile","deleteConnectionProfile","program","description","action","host","options","command","handleDefaultArgsAndOpts","parse"],"sources":["cli/conn/conn-delete.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { ConnectionProfile } from '@rockcarver/frodo-lib';\n\nconst { deleteConnectionProfile } = ConnectionProfile;\n\nconst program = new FrodoCommand('frodo conn delete', [\n 'realm',\n 'username',\n 'password',\n 'type',\n 'insecure',\n 'curlirize',\n]);\n\nprogram.description('Delete connection profiles.').action(\n // implement command logic inside action handler\n async (host, options, command) => {\n command.handleDefaultArgsAndOpts(host, options, command);\n deleteConnectionProfile(host);\n }\n // end command logic inside action handler\n);\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,iBAAiB,QAAQ,uBAAuB;AAEzD,MAAM;EAAEC;AAAwB,CAAC,GAAGD,iBAAiB;AAErD,MAAME,OAAO,GAAG,IAAIH,YAAY,CAAC,mBAAmB,EAAE,CACpD,OAAO,EACP,UAAU,EACV,UAAU,EACV,MAAM,EACN,UAAU,EACV,WAAW,CACZ,CAAC;AAEFG,OAAO,CAACC,WAAW,CAAC,6BAA6B,CAAC,CAACC,MAAM;AACvD;AACA,OAAOC,IAAI,EAAEC,OAAO,EAAEC,OAAO,KAAK;EAChCA,OAAO,CAACC,wBAAwB,CAACH,IAAI,EAAEC,OAAO,EAAEC,OAAO,CAAC;EACxDN,uBAAuB,CAACI,IAAI,CAAC;AAC/B;AACA;AACF,CAAC;;AAEDH,OAAO,CAACO,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"conn-describe.js","names":["FrodoCommand","Option","ConnectionProfile","describeConnectionProfile","program","description","addOption","action","host","options","command","handleDefaultArgsAndOpts","showSecrets","parse"],"sources":["cli/conn/conn-describe.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { ConnectionProfile } from '@rockcarver/frodo-lib';\n\nconst { describeConnectionProfile } = ConnectionProfile;\n\nconst program = new FrodoCommand('frodo conn describe', [\n 'realm',\n 'username',\n 'password',\n 'type',\n 'insecure',\n 'curlirize',\n]);\n\nprogram\n .description('Describe connection profile.')\n .addOption(new Option('--show-secrets', 'Show passwords and secrets.'))\n .action(\n // implement command logic inside action handler\n async (host, options, command) => {\n command.handleDefaultArgsAndOpts(host, options, command);\n describeConnectionProfile(host, options.showSecrets);\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,iBAAiB,QAAQ,uBAAuB;AAEzD,MAAM;EAAEC;AAA0B,CAAC,GAAGD,iBAAiB;AAEvD,MAAME,OAAO,GAAG,IAAIJ,YAAY,CAAC,qBAAqB,EAAE,CACtD,OAAO,EACP,UAAU,EACV,UAAU,EACV,MAAM,EACN,UAAU,EACV,WAAW,CACZ,CAAC;AAEFI,OAAO,CACJC,WAAW,CAAC,8BAA8B,CAAC,CAC3CC,SAAS,CAAC,IAAIL,MAAM,CAAC,gBAAgB,EAAE,6BAA6B,CAAC,CAAC,CACtEM,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,OAAO,EAAEC,OAAO,KAAK;EAChCA,OAAO,CAACC,wBAAwB,CAACH,IAAI,EAAEC,OAAO,EAAEC,OAAO,CAAC;EACxDP,yBAAyB,CAACK,IAAI,EAAEC,OAAO,CAACG,WAAW,CAAC;AACtD;AACA;AAAA,CACD;;AAEHR,OAAO,CAACS,KAAK,EAAE"}
1
+ {"version":3,"file":"conn-describe.js","names":["FrodoCommand","Option","ConnectionProfile","describeConnectionProfile","program","description","addOption","action","host","options","command","handleDefaultArgsAndOpts","showSecrets","parse"],"sources":["cli/conn/conn-describe.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { ConnectionProfile } from '@rockcarver/frodo-lib';\n\nconst { describeConnectionProfile } = ConnectionProfile;\n\nconst program = new FrodoCommand('frodo conn describe', [\n 'realm',\n 'username',\n 'password',\n 'type',\n 'insecure',\n 'curlirize',\n]);\n\nprogram\n .description('Describe connection profile.')\n .addOption(new Option('--show-secrets', 'Show passwords and secrets.'))\n .action(\n // implement command logic inside action handler\n async (host, options, command) => {\n command.handleDefaultArgsAndOpts(host, options, command);\n describeConnectionProfile(host, options.showSecrets);\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,iBAAiB,QAAQ,uBAAuB;AAEzD,MAAM;EAAEC;AAA0B,CAAC,GAAGD,iBAAiB;AAEvD,MAAME,OAAO,GAAG,IAAIJ,YAAY,CAAC,qBAAqB,EAAE,CACtD,OAAO,EACP,UAAU,EACV,UAAU,EACV,MAAM,EACN,UAAU,EACV,WAAW,CACZ,CAAC;AAEFI,OAAO,CACJC,WAAW,CAAC,8BAA8B,CAAC,CAC3CC,SAAS,CAAC,IAAIL,MAAM,CAAC,gBAAgB,EAAE,6BAA6B,CAAC,CAAC,CACtEM,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,OAAO,EAAEC,OAAO,KAAK;EAChCA,OAAO,CAACC,wBAAwB,CAACH,IAAI,EAAEC,OAAO,EAAEC,OAAO,CAAC;EACxDP,yBAAyB,CAACK,IAAI,EAAEC,OAAO,CAACG,WAAW,CAAC;AACtD;AACA;AACF,CAAC;;AAEHR,OAAO,CAACS,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"conn-list.js","names":["FrodoCommand","Option","ConnectionProfile","listConnectionProfiles","program","description","addOption","default","action","options","command","handleDefaultArgsAndOpts","long","parse"],"sources":["cli/conn/conn-list.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { ConnectionProfile } from '@rockcarver/frodo-lib';\n\nconst { listConnectionProfiles } = ConnectionProfile;\n\nconst program = new FrodoCommand('frodo conn list', [\n 'host',\n 'realm',\n 'username',\n 'password',\n 'type',\n 'insecure',\n 'curlirize',\n]);\n\nprogram\n .description('List connection profiles.')\n .addOption(\n new Option('-l, --long', 'Long with all fields.').default(false, 'false')\n )\n .action(\n // implement command logic inside action handler\n async (options, command) => {\n command.handleDefaultArgsAndOpts(options, command);\n listConnectionProfiles(options.long);\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,iBAAiB,QAAQ,uBAAuB;AAEzD,MAAM;EAAEC;AAAuB,CAAC,GAAGD,iBAAiB;AAEpD,MAAME,OAAO,GAAG,IAAIJ,YAAY,CAAC,iBAAiB,EAAE,CAClD,MAAM,EACN,OAAO,EACP,UAAU,EACV,UAAU,EACV,MAAM,EACN,UAAU,EACV,WAAW,CACZ,CAAC;AAEFI,OAAO,CACJC,WAAW,CAAC,2BAA2B,CAAC,CACxCC,SAAS,CACR,IAAIL,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACM,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAC1E,CACAC,MAAM;AACL;AACA,OAAOC,OAAO,EAAEC,OAAO,KAAK;EAC1BA,OAAO,CAACC,wBAAwB,CAACF,OAAO,EAAEC,OAAO,CAAC;EAClDP,sBAAsB,CAACM,OAAO,CAACG,IAAI,CAAC;AACtC;AACA;AAAA,CACD;;AAEHR,OAAO,CAACS,KAAK,EAAE"}
1
+ {"version":3,"file":"conn-list.js","names":["FrodoCommand","Option","ConnectionProfile","listConnectionProfiles","program","description","addOption","default","action","options","command","handleDefaultArgsAndOpts","long","parse"],"sources":["cli/conn/conn-list.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { ConnectionProfile } from '@rockcarver/frodo-lib';\n\nconst { listConnectionProfiles } = ConnectionProfile;\n\nconst program = new FrodoCommand('frodo conn list', [\n 'host',\n 'realm',\n 'username',\n 'password',\n 'type',\n 'insecure',\n 'curlirize',\n]);\n\nprogram\n .description('List connection profiles.')\n .addOption(\n new Option('-l, --long', 'Long with all fields.').default(false, 'false')\n )\n .action(\n // implement command logic inside action handler\n async (options, command) => {\n command.handleDefaultArgsAndOpts(options, command);\n listConnectionProfiles(options.long);\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,iBAAiB,QAAQ,uBAAuB;AAEzD,MAAM;EAAEC;AAAuB,CAAC,GAAGD,iBAAiB;AAEpD,MAAME,OAAO,GAAG,IAAIJ,YAAY,CAAC,iBAAiB,EAAE,CAClD,MAAM,EACN,OAAO,EACP,UAAU,EACV,UAAU,EACV,MAAM,EACN,UAAU,EACV,WAAW,CACZ,CAAC;AAEFI,OAAO,CACJC,WAAW,CAAC,2BAA2B,CAAC,CACxCC,SAAS,CACR,IAAIL,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACM,OAAO,CAAC,KAAK,EAAE,OAAO,CAC1E,CAAC,CACAC,MAAM;AACL;AACA,OAAOC,OAAO,EAAEC,OAAO,KAAK;EAC1BA,OAAO,CAACC,wBAAwB,CAACF,OAAO,EAAEC,OAAO,CAAC;EAClDP,sBAAsB,CAACM,OAAO,CAACG,IAAI,CAAC;AACtC;AACA;AACF,CAAC;;AAEHR,OAAO,CAACS,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"conn-save.js","names":["FrodoCommand","Option","Authenticate","ConnectionProfile","Log","ServiceAccount","state","constants","provisionCreds","verboseMessage","printMessage","addExistingServiceAccount","getTokens","saveConnectionProfile","addNewServiceAccount","isServiceAccountsFeatureAvailable","program","alias","description","addOption","action","host","user","password","options","command","handleDefaultArgsAndOpts","setLogApiKey","logApiKey","setLogApiSecret","logApiSecret","authenticationService","setAuthenticationService","authenticationHeaderOverrides","setAuthenticationHeaderOverrides","JSON","parse","forceLoginAsUser","sa","getLogApiKey","getLogApiSecret","validate","getHost","getDeploymentType","CLOUD_DEPLOYMENT_TYPE_KEY","saId","saJwkFile","getServiceAccountId","name","_id","error","response","data","message","process","exitCode","logApi","creds","api_key_id","api_key_secret"],"sources":["cli/conn/conn-save.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport {\n Authenticate,\n ConnectionProfile,\n Log,\n ServiceAccount,\n state,\n constants,\n} from '@rockcarver/frodo-lib';\nconst { provisionCreds } = Log;\nimport { verboseMessage, printMessage } from '../../utils/Console';\nimport { addExistingServiceAccount } from '../../ops/ConnectionProfileOps.js';\n\nconst { getTokens } = Authenticate;\nconst { saveConnectionProfile, addNewServiceAccount } = ConnectionProfile;\nconst { isServiceAccountsFeatureAvailable } = ServiceAccount;\n\nconst program = new FrodoCommand('frodo conn save', ['realm']);\n\nprogram\n .alias('add')\n .description('Save connection profiles.')\n .addOption(\n new Option(\n '--sa-id <uuid>',\n \"Service account's uuid. If specified, must also include --sa-jwk-file. Ignored with --no-sa.\"\n )\n )\n .addOption(\n new Option(\n '--sa-jwk-file <file>',\n \"File containing the service account's java web key (jwk). Jwk must contain private key! If specified, must also include --sa-id. Ignored with --no-sa.\"\n )\n )\n .addOption(new Option('--no-sa', 'Do not create and add service account.'))\n .addOption(\n new Option(\n '--log-api-key [key]',\n 'Log API key. If specified, must also include --log-api-secret. Ignored with --no-log-api.'\n )\n )\n .addOption(\n new Option(\n '--log-api-secret [secret]',\n 'Log API secret. If specified, must also include --log-api-key. Ignored with --no-log-api.'\n )\n )\n .addOption(\n new Option('--no-log-api', 'Do not create and add log API key and secret.')\n )\n .addOption(new Option('--no-validate', 'Do not validate connection.'))\n .addOption(\n new Option(\n '--authentication-service [service]',\n 'Name of the authentication service/tree to use.'\n )\n )\n .addOption(\n new Option(\n '--authentication-header-overrides [headers]',\n 'Map of headers: {\"host\":\"am.example.com:8081\"}.'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(host, user, password, options, command);\n state.setLogApiKey(options.logApiKey);\n state.setLogApiSecret(options.logApiSecret);\n if (options.authenticationService) {\n state.setAuthenticationService(options.authenticationService);\n }\n if (options.authenticationHeaderOverrides) {\n state.setAuthenticationHeaderOverrides(\n JSON.parse(options.authenticationHeaderOverrides)\n );\n }\n const forceLoginAsUser =\n !options.sa ||\n (state.getLogApiKey() && state.getLogApiSecret() ? false : true);\n if (\n (options.validate && (await getTokens(forceLoginAsUser))) ||\n !options.validate\n ) {\n verboseMessage(\n `Saving connection profile for tenant ${state.getHost()}...`\n );\n // if cloud deployment add service account\n if (\n options.validate &&\n state.getDeploymentType() === constants.CLOUD_DEPLOYMENT_TYPE_KEY &&\n options.sa &&\n (await isServiceAccountsFeatureAvailable())\n ) {\n // validate and add existing service account\n if (options.saId && options.saJwkFile) {\n verboseMessage(`Validating and adding service account...`);\n if (\n await addExistingServiceAccount(\n options.saId,\n options.saJwkFile,\n options.validate\n )\n ) {\n printMessage(\n `Validated and added service account with id ${options.saId} to profile.`\n );\n }\n }\n // add new service account if none already exists in the profile\n else if (!state.getServiceAccountId()) {\n try {\n verboseMessage(`Creating service account...`);\n const sa = await addNewServiceAccount();\n printMessage(\n `Created and added service account ${sa.name} with id ${sa._id} to profile.`\n );\n } catch (error) {\n printMessage(error.response?.data, 'error');\n printMessage(\n `Error creating service account: ${error.response?.data?.message}`,\n 'error'\n );\n process.exitCode = 1;\n }\n }\n }\n // add existing service account without validation\n else if (\n !options.validate &&\n options.saId &&\n options.saJwkFile &&\n options.sa\n ) {\n addExistingServiceAccount(\n options.saId,\n options.saJwkFile,\n options.validate\n );\n }\n // if cloud deployment add log api key and secret\n verboseMessage(options);\n verboseMessage(state);\n if (\n options.validate &&\n state.getDeploymentType() === constants.CLOUD_DEPLOYMENT_TYPE_KEY &&\n options.logApi\n ) {\n // validate and add existing log api key and secret\n if (options.logApiKey && options.logApiSecret) {\n verboseMessage(`Validating and adding log api key and secret...`);\n if (\n await addExistingServiceAccount(\n options.logApiKey,\n options.logApiSecret,\n options.validate\n )\n ) {\n printMessage(\n `Added log API key ${options.logApiKey} to profile.`\n );\n }\n }\n // add new log api key and secret if none already exists in the profile\n else if (!state.getLogApiKey()) {\n try {\n const creds = await provisionCreds();\n state.setLogApiKey(creds.api_key_id);\n state.setLogApiSecret(creds.api_key_secret);\n printMessage(\n `Created log API key ${creds.api_key_id} and secret.`\n );\n } catch (error) {\n printMessage(error.response?.data, 'error');\n printMessage(\n `Error creating log API key and secret: ${error.response?.data?.message}`,\n 'error'\n );\n process.exitCode = 1;\n }\n }\n }\n // add existing log api key and secret without validation\n // storing log API key and secret in the connection profile is happening default, therefore no code required here\n if (await saveConnectionProfile(host)) {\n printMessage(`Saved connection profile ${state.getHost()}`);\n } else {\n process.exitCode = 1;\n }\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
1
+ {"version":3,"file":"conn-save.js","names":["FrodoCommand","Option","Authenticate","ConnectionProfile","Log","ServiceAccount","state","constants","provisionCreds","verboseMessage","printMessage","addExistingServiceAccount","getTokens","saveConnectionProfile","addNewServiceAccount","isServiceAccountsFeatureAvailable","program","alias","description","addOption","action","host","user","password","options","command","handleDefaultArgsAndOpts","setLogApiKey","logApiKey","setLogApiSecret","logApiSecret","authenticationService","setAuthenticationService","authenticationHeaderOverrides","setAuthenticationHeaderOverrides","JSON","parse","forceLoginAsUser","sa","getLogApiKey","getLogApiSecret","validate","getHost","getDeploymentType","CLOUD_DEPLOYMENT_TYPE_KEY","saId","saJwkFile","getServiceAccountId","name","_id","error","_error$response","_error$response2","_error$response2$data","response","data","message","process","exitCode","logApi","creds","api_key_id","api_key_secret","_error$response3","_error$response4","_error$response4$data"],"sources":["cli/conn/conn-save.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport {\n Authenticate,\n ConnectionProfile,\n Log,\n ServiceAccount,\n state,\n constants,\n} from '@rockcarver/frodo-lib';\nconst { provisionCreds } = Log;\nimport { verboseMessage, printMessage } from '../../utils/Console';\nimport { addExistingServiceAccount } from '../../ops/ConnectionProfileOps.js';\n\nconst { getTokens } = Authenticate;\nconst { saveConnectionProfile, addNewServiceAccount } = ConnectionProfile;\nconst { isServiceAccountsFeatureAvailable } = ServiceAccount;\n\nconst program = new FrodoCommand('frodo conn save', ['realm']);\n\nprogram\n .alias('add')\n .description('Save connection profiles.')\n .addOption(\n new Option(\n '--sa-id <uuid>',\n \"Service account's uuid. If specified, must also include --sa-jwk-file. Ignored with --no-sa.\"\n )\n )\n .addOption(\n new Option(\n '--sa-jwk-file <file>',\n \"File containing the service account's java web key (jwk). Jwk must contain private key! If specified, must also include --sa-id. Ignored with --no-sa.\"\n )\n )\n .addOption(new Option('--no-sa', 'Do not create and add service account.'))\n .addOption(\n new Option(\n '--log-api-key [key]',\n 'Log API key. If specified, must also include --log-api-secret. Ignored with --no-log-api.'\n )\n )\n .addOption(\n new Option(\n '--log-api-secret [secret]',\n 'Log API secret. If specified, must also include --log-api-key. Ignored with --no-log-api.'\n )\n )\n .addOption(\n new Option('--no-log-api', 'Do not create and add log API key and secret.')\n )\n .addOption(new Option('--no-validate', 'Do not validate connection.'))\n .addOption(\n new Option(\n '--authentication-service [service]',\n 'Name of the authentication service/tree to use.'\n )\n )\n .addOption(\n new Option(\n '--authentication-header-overrides [headers]',\n 'Map of headers: {\"host\":\"am.example.com:8081\"}.'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(host, user, password, options, command);\n state.setLogApiKey(options.logApiKey);\n state.setLogApiSecret(options.logApiSecret);\n if (options.authenticationService) {\n state.setAuthenticationService(options.authenticationService);\n }\n if (options.authenticationHeaderOverrides) {\n state.setAuthenticationHeaderOverrides(\n JSON.parse(options.authenticationHeaderOverrides)\n );\n }\n const forceLoginAsUser =\n !options.sa ||\n (state.getLogApiKey() && state.getLogApiSecret() ? false : true);\n if (\n (options.validate && (await getTokens(forceLoginAsUser))) ||\n !options.validate\n ) {\n verboseMessage(\n `Saving connection profile for tenant ${state.getHost()}...`\n );\n // if cloud deployment add service account\n if (\n options.validate &&\n state.getDeploymentType() === constants.CLOUD_DEPLOYMENT_TYPE_KEY &&\n options.sa &&\n (await isServiceAccountsFeatureAvailable())\n ) {\n // validate and add existing service account\n if (options.saId && options.saJwkFile) {\n verboseMessage(`Validating and adding service account...`);\n if (\n await addExistingServiceAccount(\n options.saId,\n options.saJwkFile,\n options.validate\n )\n ) {\n printMessage(\n `Validated and added service account with id ${options.saId} to profile.`\n );\n }\n }\n // add new service account if none already exists in the profile\n else if (!state.getServiceAccountId()) {\n try {\n verboseMessage(`Creating service account...`);\n const sa = await addNewServiceAccount();\n printMessage(\n `Created and added service account ${sa.name} with id ${sa._id} to profile.`\n );\n } catch (error) {\n printMessage(error.response?.data, 'error');\n printMessage(\n `Error creating service account: ${error.response?.data?.message}`,\n 'error'\n );\n process.exitCode = 1;\n }\n }\n }\n // add existing service account without validation\n else if (\n !options.validate &&\n options.saId &&\n options.saJwkFile &&\n options.sa\n ) {\n addExistingServiceAccount(\n options.saId,\n options.saJwkFile,\n options.validate\n );\n }\n // if cloud deployment add log api key and secret\n verboseMessage(options);\n verboseMessage(state);\n if (\n options.validate &&\n state.getDeploymentType() === constants.CLOUD_DEPLOYMENT_TYPE_KEY &&\n options.logApi\n ) {\n // validate and add existing log api key and secret\n if (options.logApiKey && options.logApiSecret) {\n verboseMessage(`Validating and adding log api key and secret...`);\n if (\n await addExistingServiceAccount(\n options.logApiKey,\n options.logApiSecret,\n options.validate\n )\n ) {\n printMessage(\n `Added log API key ${options.logApiKey} to profile.`\n );\n }\n }\n // add new log api key and secret if none already exists in the profile\n else if (!state.getLogApiKey()) {\n try {\n const creds = await provisionCreds();\n state.setLogApiKey(creds.api_key_id);\n state.setLogApiSecret(creds.api_key_secret);\n printMessage(\n `Created log API key ${creds.api_key_id} and secret.`\n );\n } catch (error) {\n printMessage(error.response?.data, 'error');\n printMessage(\n `Error creating log API key and secret: ${error.response?.data?.message}`,\n 'error'\n );\n process.exitCode = 1;\n }\n }\n }\n // add existing log api key and secret without validation\n // storing log API key and secret in the connection profile is happening default, therefore no code required here\n if (await saveConnectionProfile(host)) {\n printMessage(`Saved connection profile ${state.getHost()}`);\n } else {\n process.exitCode = 1;\n }\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"conn.js","names":["FrodoStubCommand","path","fileURLToPath","__dirname","dirname","import","meta","url","setup","program","alias","description","executableDir","command"],"sources":["cli/conn/conn.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('conn')\n .alias('connection')\n // for backwards compatibility\n .alias('connections')\n .description('Manage connection profiles.')\n .executableDir(__dirname);\n\n program.command('save', 'Save connection profiles.').alias('add');\n\n program.command('delete', 'Delete connection profiles.');\n\n program.command('describe', 'Describe connection profiles.');\n\n program.command('list', 'List connection profiles.');\n\n return program;\n}\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,iBAAiB;AAClD,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,MAAM,CAAC,CACzCU,KAAK,CAAC,YAAY;EACnB;EAAA,CACCA,KAAK,CAAC,aAAa,CAAC,CACpBC,WAAW,CAAC,6BAA6B,CAAC,CAC1CC,aAAa,CAACT,SAAS,CAAC;EAE3BM,OAAO,CAACI,OAAO,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAACH,KAAK,CAAC,KAAK,CAAC;EAEjED,OAAO,CAACI,OAAO,CAAC,QAAQ,EAAE,6BAA6B,CAAC;EAExDJ,OAAO,CAACI,OAAO,CAAC,UAAU,EAAE,+BAA+B,CAAC;EAE5DJ,OAAO,CAACI,OAAO,CAAC,MAAM,EAAE,2BAA2B,CAAC;EAEpD,OAAOJ,OAAO;AAChB"}
1
+ {"version":3,"file":"conn.js","names":["FrodoStubCommand","path","fileURLToPath","__dirname","dirname","import","meta","url","setup","program","alias","description","executableDir","command"],"sources":["cli/conn/conn.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('conn')\n .alias('connection')\n // for backwards compatibility\n .alias('connections')\n .description('Manage connection profiles.')\n .executableDir(__dirname);\n\n program.command('save', 'Save connection profiles.').alias('add');\n\n program.command('delete', 'Delete connection profiles.');\n\n program.command('describe', 'Describe connection profiles.');\n\n program.command('list', 'List connection profiles.');\n\n return program;\n}\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,iBAAiB;AAClD,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,KAAKA,CAAA,EAAG;EAC9B,MAAMC,OAAO,GAAG,IAAIT,gBAAgB,CAAC,MAAM,CAAC,CACzCU,KAAK,CAAC,YAAY;EACnB;EAAA,CACCA,KAAK,CAAC,aAAa,CAAC,CACpBC,WAAW,CAAC,6BAA6B,CAAC,CAC1CC,aAAa,CAACT,SAAS,CAAC;EAE3BM,OAAO,CAACI,OAAO,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAACH,KAAK,CAAC,KAAK,CAAC;EAEjED,OAAO,CAACI,OAAO,CAAC,QAAQ,EAAE,6BAA6B,CAAC;EAExDJ,OAAO,CAACI,OAAO,CAAC,UAAU,EAAE,+BAA+B,CAAC;EAE5DJ,OAAO,CAACI,OAAO,CAAC,MAAM,EAAE,2BAA2B,CAAC;EAEpD,OAAOJ,OAAO;AAChB"}
@@ -1 +1 @@
1
- {"version":3,"file":"email-template-export.js","names":["FrodoCommand","Option","Authenticate","state","printMessage","verboseMessage","exportEmailTemplateToFile","exportEmailTemplatesToFile","exportEmailTemplatesToFiles","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","templateId","getRealm","file","all","allSeparate","help","process","exitCode","parse"],"sources":["cli/email/email-template-export.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, state } from '@rockcarver/frodo-lib';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport {\n exportEmailTemplateToFile,\n exportEmailTemplatesToFile,\n exportEmailTemplatesToFiles,\n} from '../../ops/EmailTemplateOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo email template export');\n\nprogram\n .description('Export email templates.')\n .addOption(\n new Option(\n '-i, --template-id <template-id>',\n 'Email template id/name. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-f, --file [file]',\n 'Name of the export file. Ignored with -A. Defaults to <template-id>.template.email.json.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Export all email templates to a single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all email templates as separate files <template-id>.template.email.json. Ignored with -i, and -a.'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n // export by id/name\n if (options.templateId && (await getTokens())) {\n verboseMessage(\n `Exporting email template \"${\n options.templateId\n }\" from realm \"${state.getRealm()}\"...`\n );\n exportEmailTemplateToFile(options.templateId, options.file);\n }\n // --all -a\n else if (options.all && (await getTokens())) {\n verboseMessage('Exporting all email templates to a single file...');\n exportEmailTemplatesToFile(options.file);\n }\n // --all-separate -A\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage('Exporting all email templates to separate files...');\n exportEmailTemplatesToFiles();\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,EAAEC,KAAK,QAAQ,uBAAuB;AAC3D,SAASC,YAAY,EAAEC,cAAc,QAAQ,wBAAwB;AACrE,SACEC,yBAAyB,EACzBC,0BAA0B,EAC1BC,2BAA2B,QACtB,4BAA4B;AAEnC,MAAM;EAAEC;AAAU,CAAC,GAAGP,YAAY;AAElC,MAAMQ,OAAO,GAAG,IAAIV,YAAY,CAAC,6BAA6B,CAAC;AAE/DU,OAAO,CACJC,WAAW,CAAC,yBAAyB,CAAC,CACtCC,SAAS,CACR,IAAIX,MAAM,CACR,iCAAiC,EACjC,8DAA8D,CAC/D,CACF,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,mBAAmB,EACnB,0FAA0F,CAC3F,CACF,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,WAAW,EACX,+DAA+D,CAChE,CACF,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,oBAAoB,EACpB,0GAA0G,CAC3G,CACF,CACAY,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OAAO,CACR;EACD;EACA,IAAID,OAAO,CAACG,UAAU,KAAK,MAAMZ,SAAS,EAAE,CAAC,EAAE;IAC7CJ,cAAc,CACX,6BACCa,OAAO,CAACG,UACT,iBAAgBlB,KAAK,CAACmB,QAAQ,EAAG,MAAK,CACxC;IACDhB,yBAAyB,CAACY,OAAO,CAACG,UAAU,EAAEH,OAAO,CAACK,IAAI,CAAC;EAC7D;EACA;EAAA,KACK,IAAIL,OAAO,CAACM,GAAG,KAAK,MAAMf,SAAS,EAAE,CAAC,EAAE;IAC3CJ,cAAc,CAAC,mDAAmD,CAAC;IACnEE,0BAA0B,CAACW,OAAO,CAACK,IAAI,CAAC;EAC1C;EACA;EAAA,KACK,IAAIL,OAAO,CAACO,WAAW,KAAK,MAAMhB,SAAS,EAAE,CAAC,EAAE;IACnDJ,cAAc,CAAC,oDAAoD,CAAC;IACpEG,2BAA2B,EAAE;EAC/B;EACA;EAAA,KACK;IACHJ,YAAY,CACV,sDAAsD,EACtD,OAAO,CACR;IACDM,OAAO,CAACgB,IAAI,EAAE;IACdC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHlB,OAAO,CAACmB,KAAK,EAAE"}
1
+ {"version":3,"file":"email-template-export.js","names":["FrodoCommand","Option","Authenticate","state","printMessage","verboseMessage","exportEmailTemplateToFile","exportEmailTemplatesToFile","exportEmailTemplatesToFiles","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","templateId","getRealm","file","all","allSeparate","help","process","exitCode","parse"],"sources":["cli/email/email-template-export.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, state } from '@rockcarver/frodo-lib';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport {\n exportEmailTemplateToFile,\n exportEmailTemplatesToFile,\n exportEmailTemplatesToFiles,\n} from '../../ops/EmailTemplateOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo email template export');\n\nprogram\n .description('Export email templates.')\n .addOption(\n new Option(\n '-i, --template-id <template-id>',\n 'Email template id/name. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-f, --file [file]',\n 'Name of the export file. Ignored with -A. Defaults to <template-id>.template.email.json.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Export all email templates to a single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all email templates as separate files <template-id>.template.email.json. Ignored with -i, and -a.'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n // export by id/name\n if (options.templateId && (await getTokens())) {\n verboseMessage(\n `Exporting email template \"${\n options.templateId\n }\" from realm \"${state.getRealm()}\"...`\n );\n exportEmailTemplateToFile(options.templateId, options.file);\n }\n // --all -a\n else if (options.all && (await getTokens())) {\n verboseMessage('Exporting all email templates to a single file...');\n exportEmailTemplatesToFile(options.file);\n }\n // --all-separate -A\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage('Exporting all email templates to separate files...');\n exportEmailTemplatesToFiles();\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,EAAEC,KAAK,QAAQ,uBAAuB;AAC3D,SAASC,YAAY,EAAEC,cAAc,QAAQ,wBAAwB;AACrE,SACEC,yBAAyB,EACzBC,0BAA0B,EAC1BC,2BAA2B,QACtB,4BAA4B;AAEnC,MAAM;EAAEC;AAAU,CAAC,GAAGP,YAAY;AAElC,MAAMQ,OAAO,GAAG,IAAIV,YAAY,CAAC,6BAA6B,CAAC;AAE/DU,OAAO,CACJC,WAAW,CAAC,yBAAyB,CAAC,CACtCC,SAAS,CACR,IAAIX,MAAM,CACR,iCAAiC,EACjC,8DACF,CACF,CAAC,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,mBAAmB,EACnB,0FACF,CACF,CAAC,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,WAAW,EACX,+DACF,CACF,CAAC,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,oBAAoB,EACpB,0GACF,CACF,CAAC,CACAY,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD;EACA,IAAID,OAAO,CAACG,UAAU,KAAK,MAAMZ,SAAS,CAAC,CAAC,CAAC,EAAE;IAC7CJ,cAAc,CACX,6BACCa,OAAO,CAACG,UACT,iBAAgBlB,KAAK,CAACmB,QAAQ,CAAC,CAAE,MACpC,CAAC;IACDhB,yBAAyB,CAACY,OAAO,CAACG,UAAU,EAAEH,OAAO,CAACK,IAAI,CAAC;EAC7D;EACA;EAAA,KACK,IAAIL,OAAO,CAACM,GAAG,KAAK,MAAMf,SAAS,CAAC,CAAC,CAAC,EAAE;IAC3CJ,cAAc,CAAC,mDAAmD,CAAC;IACnEE,0BAA0B,CAACW,OAAO,CAACK,IAAI,CAAC;EAC1C;EACA;EAAA,KACK,IAAIL,OAAO,CAACO,WAAW,KAAK,MAAMhB,SAAS,CAAC,CAAC,CAAC,EAAE;IACnDJ,cAAc,CAAC,oDAAoD,CAAC;IACpEG,2BAA2B,CAAC,CAAC;EAC/B;EACA;EAAA,KACK;IACHJ,YAAY,CACV,sDAAsD,EACtD,OACF,CAAC;IACDM,OAAO,CAACgB,IAAI,CAAC,CAAC;IACdC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHlB,OAAO,CAACmB,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"email-template-import.js","names":["FrodoCommand","Option","Authenticate","printMessage","verboseMessage","importEmailTemplateFromFile","importEmailTemplatesFromFile","importEmailTemplatesFromFiles","importFirstEmailTemplateFromFile","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","file","templateId","raw","all","allSeparate","help","process","exitCode","parse"],"sources":["cli/email/email-template-import.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport {\n importEmailTemplateFromFile,\n importEmailTemplatesFromFile,\n importEmailTemplatesFromFiles,\n importFirstEmailTemplateFromFile,\n} from '../../ops/EmailTemplateOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo email template import');\n\nprogram\n .description('Import email templates.')\n .addOption(\n new Option(\n '-i, --template-id <template-id>',\n 'Email template id/name. If specified, -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the import file.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Import all email templates from single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all email templates from separate files (*.template.email.json) in the current directory. Ignored with -i or -a.'\n )\n )\n .addOption(\n new Option(\n '--raw',\n \"Import raw email template files. Raw templates do not contain the id/name, therefore when using -A or -f without -i, the email template id/name is parsed from the file name; Make sure your template files are named 'emailTemplate-<id/name>.json' or use -f with -i. Ignored with -a.\"\n )\n )\n .action(\n // implement program logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n // import by id\n if (options.file && options.templateId && (await getTokens())) {\n verboseMessage(`Importing email template \"${options.templateId}\"...`);\n importEmailTemplateFromFile(\n options.templateId,\n options.file,\n options.raw\n );\n }\n // --all -a\n else if (options.all && options.file && (await getTokens())) {\n verboseMessage(\n `Importing all email templates from a single file (${options.file})...`\n );\n importEmailTemplatesFromFile(options.file);\n }\n // --all-separate -A\n else if (options.allSeparate && !options.file && (await getTokens())) {\n verboseMessage(\n 'Importing all email templates from separate files (*.template.email.json) in current directory...'\n );\n importEmailTemplatesFromFiles(options.raw);\n }\n // import first template from file\n else if (options.file && (await getTokens())) {\n verboseMessage(\n `Importing first email template from file \"${options.file}\"...`\n );\n importFirstEmailTemplateFromFile(options.file, options.raw);\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\n program.help();\n process.exitCode = 1;\n }\n }\n // end program logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,YAAY,EAAEC,cAAc,QAAQ,wBAAwB;AACrE,SACEC,2BAA2B,EAC3BC,4BAA4B,EAC5BC,6BAA6B,EAC7BC,gCAAgC,QAC3B,4BAA4B;AAEnC,MAAM;EAAEC;AAAU,CAAC,GAAGP,YAAY;AAElC,MAAMQ,OAAO,GAAG,IAAIV,YAAY,CAAC,6BAA6B,CAAC;AAE/DU,OAAO,CACJC,WAAW,CAAC,yBAAyB,CAAC,CACtCC,SAAS,CACR,IAAIX,MAAM,CACR,iCAAiC,EACjC,8DAA8D,CAC/D,CACF,CACAW,SAAS,CAAC,IAAIX,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,CAAC,CACtEW,SAAS,CACR,IAAIX,MAAM,CACR,WAAW,EACX,+DAA+D,CAChE,CACF,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,oBAAoB,EACpB,yHAAyH,CAC1H,CACF,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,OAAO,EACP,0RAA0R,CAC3R,CACF,CACAY,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OAAO,CACR;EACD;EACA,IAAID,OAAO,CAACG,IAAI,IAAIH,OAAO,CAACI,UAAU,KAAK,MAAMb,SAAS,EAAE,CAAC,EAAE;IAC7DL,cAAc,CAAE,6BAA4Bc,OAAO,CAACI,UAAW,MAAK,CAAC;IACrEjB,2BAA2B,CACzBa,OAAO,CAACI,UAAU,EAClBJ,OAAO,CAACG,IAAI,EACZH,OAAO,CAACK,GAAG,CACZ;EACH;EACA;EAAA,KACK,IAAIL,OAAO,CAACM,GAAG,IAAIN,OAAO,CAACG,IAAI,KAAK,MAAMZ,SAAS,EAAE,CAAC,EAAE;IAC3DL,cAAc,CACX,qDAAoDc,OAAO,CAACG,IAAK,MAAK,CACxE;IACDf,4BAA4B,CAACY,OAAO,CAACG,IAAI,CAAC;EAC5C;EACA;EAAA,KACK,IAAIH,OAAO,CAACO,WAAW,IAAI,CAACP,OAAO,CAACG,IAAI,KAAK,MAAMZ,SAAS,EAAE,CAAC,EAAE;IACpEL,cAAc,CACZ,mGAAmG,CACpG;IACDG,6BAA6B,CAACW,OAAO,CAACK,GAAG,CAAC;EAC5C;EACA;EAAA,KACK,IAAIL,OAAO,CAACG,IAAI,KAAK,MAAMZ,SAAS,EAAE,CAAC,EAAE;IAC5CL,cAAc,CACX,6CAA4Cc,OAAO,CAACG,IAAK,MAAK,CAChE;IACDb,gCAAgC,CAACU,OAAO,CAACG,IAAI,EAAEH,OAAO,CAACK,GAAG,CAAC;EAC7D;EACA;EAAA,KACK;IACHpB,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
+ {"version":3,"file":"email-template-import.js","names":["FrodoCommand","Option","Authenticate","printMessage","verboseMessage","importEmailTemplateFromFile","importEmailTemplatesFromFile","importEmailTemplatesFromFiles","importFirstEmailTemplateFromFile","getTokens","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","file","templateId","raw","all","allSeparate","help","process","exitCode","parse"],"sources":["cli/email/email-template-import.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport {\n importEmailTemplateFromFile,\n importEmailTemplatesFromFile,\n importEmailTemplatesFromFiles,\n importFirstEmailTemplateFromFile,\n} from '../../ops/EmailTemplateOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo email template import');\n\nprogram\n .description('Import email templates.')\n .addOption(\n new Option(\n '-i, --template-id <template-id>',\n 'Email template id/name. If specified, -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the import file.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Import all email templates from single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all email templates from separate files (*.template.email.json) in the current directory. Ignored with -i or -a.'\n )\n )\n .addOption(\n new Option(\n '--raw',\n \"Import raw email template files. Raw templates do not contain the id/name, therefore when using -A or -f without -i, the email template id/name is parsed from the file name; Make sure your template files are named 'emailTemplate-<id/name>.json' or use -f with -i. Ignored with -a.\"\n )\n )\n .action(\n // implement program logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n // import by id\n if (options.file && options.templateId && (await getTokens())) {\n verboseMessage(`Importing email template \"${options.templateId}\"...`);\n importEmailTemplateFromFile(\n options.templateId,\n options.file,\n options.raw\n );\n }\n // --all -a\n else if (options.all && options.file && (await getTokens())) {\n verboseMessage(\n `Importing all email templates from a single file (${options.file})...`\n );\n importEmailTemplatesFromFile(options.file);\n }\n // --all-separate -A\n else if (options.allSeparate && !options.file && (await getTokens())) {\n verboseMessage(\n 'Importing all email templates from separate files (*.template.email.json) in current directory...'\n );\n importEmailTemplatesFromFiles(options.raw);\n }\n // import first template from file\n else if (options.file && (await getTokens())) {\n verboseMessage(\n `Importing first email template from file \"${options.file}\"...`\n );\n importFirstEmailTemplateFromFile(options.file, options.raw);\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\n program.help();\n process.exitCode = 1;\n }\n }\n // end program logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,YAAY,EAAEC,cAAc,QAAQ,wBAAwB;AACrE,SACEC,2BAA2B,EAC3BC,4BAA4B,EAC5BC,6BAA6B,EAC7BC,gCAAgC,QAC3B,4BAA4B;AAEnC,MAAM;EAAEC;AAAU,CAAC,GAAGP,YAAY;AAElC,MAAMQ,OAAO,GAAG,IAAIV,YAAY,CAAC,6BAA6B,CAAC;AAE/DU,OAAO,CACJC,WAAW,CAAC,yBAAyB,CAAC,CACtCC,SAAS,CACR,IAAIX,MAAM,CACR,iCAAiC,EACjC,8DACF,CACF,CAAC,CACAW,SAAS,CAAC,IAAIX,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,CAAC,CACtEW,SAAS,CACR,IAAIX,MAAM,CACR,WAAW,EACX,+DACF,CACF,CAAC,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,oBAAoB,EACpB,yHACF,CACF,CAAC,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,OAAO,EACP,0RACF,CACF,CAAC,CACAY,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD;EACA,IAAID,OAAO,CAACG,IAAI,IAAIH,OAAO,CAACI,UAAU,KAAK,MAAMb,SAAS,CAAC,CAAC,CAAC,EAAE;IAC7DL,cAAc,CAAE,6BAA4Bc,OAAO,CAACI,UAAW,MAAK,CAAC;IACrEjB,2BAA2B,CACzBa,OAAO,CAACI,UAAU,EAClBJ,OAAO,CAACG,IAAI,EACZH,OAAO,CAACK,GACV,CAAC;EACH;EACA;EAAA,KACK,IAAIL,OAAO,CAACM,GAAG,IAAIN,OAAO,CAACG,IAAI,KAAK,MAAMZ,SAAS,CAAC,CAAC,CAAC,EAAE;IAC3DL,cAAc,CACX,qDAAoDc,OAAO,CAACG,IAAK,MACpE,CAAC;IACDf,4BAA4B,CAACY,OAAO,CAACG,IAAI,CAAC;EAC5C;EACA;EAAA,KACK,IAAIH,OAAO,CAACO,WAAW,IAAI,CAACP,OAAO,CAACG,IAAI,KAAK,MAAMZ,SAAS,CAAC,CAAC,CAAC,EAAE;IACpEL,cAAc,CACZ,mGACF,CAAC;IACDG,6BAA6B,CAACW,OAAO,CAACK,GAAG,CAAC;EAC5C;EACA;EAAA,KACK,IAAIL,OAAO,CAACG,IAAI,KAAK,MAAMZ,SAAS,CAAC,CAAC,CAAC,EAAE;IAC5CL,cAAc,CACX,6CAA4Cc,OAAO,CAACG,IAAK,MAC5D,CAAC;IACDb,gCAAgC,CAACU,OAAO,CAACG,IAAI,EAAEH,OAAO,CAACK,GAAG,CAAC;EAC7D;EACA;EAAA,KACK;IACHpB,YAAY,CACV,sDAAsD,EACtD,OACF,CAAC;IACDO,OAAO,CAACgB,IAAI,CAAC,CAAC;IACdC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHlB,OAAO,CAACmB,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"email-template-list.js","names":["FrodoCommand","Option","Authenticate","verboseMessage","listEmailTemplates","getTokens","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","long","process","exitCode","parse"],"sources":["cli/email/email-template-list.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console.js';\nimport { listEmailTemplates } from '../../ops/EmailTemplateOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo email template list');\n\nprogram\n .description('List email templates.')\n .addOption(\n new Option('-l, --long', 'Long with all fields.').default(false, 'false')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n verboseMessage(`Listing email templates ...`);\n listEmailTemplates(options.long);\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,kBAAkB,QAAQ,4BAA4B;AAE/D,MAAM;EAAEC;AAAU,CAAC,GAAGH,YAAY;AAElC,MAAMI,OAAO,GAAG,IAAIN,YAAY,CAAC,2BAA2B,CAAC;AAE7DM,OAAO,CACJC,WAAW,CAAC,uBAAuB,CAAC,CACpCC,SAAS,CACR,IAAIP,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACQ,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAC1E,CACAC,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OAAO,CACR;EACD,IAAI,MAAMX,SAAS,EAAE,EAAE;IACrBF,cAAc,CAAE,6BAA4B,CAAC;IAC7CC,kBAAkB,CAACW,OAAO,CAACG,IAAI,CAAC;EAClC,CAAC,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AAAA,CACD;;AAEHd,OAAO,CAACe,KAAK,EAAE"}
1
+ {"version":3,"file":"email-template-list.js","names":["FrodoCommand","Option","Authenticate","verboseMessage","listEmailTemplates","getTokens","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","long","process","exitCode","parse"],"sources":["cli/email/email-template-list.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console.js';\nimport { listEmailTemplates } from '../../ops/EmailTemplateOps';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo email template list');\n\nprogram\n .description('List email templates.')\n .addOption(\n new Option('-l, --long', 'Long with all fields.').default(false, 'false')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n verboseMessage(`Listing email templates ...`);\n listEmailTemplates(options.long);\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,kBAAkB,QAAQ,4BAA4B;AAE/D,MAAM;EAAEC;AAAU,CAAC,GAAGH,YAAY;AAElC,MAAMI,OAAO,GAAG,IAAIN,YAAY,CAAC,2BAA2B,CAAC;AAE7DM,OAAO,CACJC,WAAW,CAAC,uBAAuB,CAAC,CACpCC,SAAS,CACR,IAAIP,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACQ,OAAO,CAAC,KAAK,EAAE,OAAO,CAC1E,CAAC,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,OACF,CAAC;EACD,IAAI,MAAMX,SAAS,CAAC,CAAC,EAAE;IACrBF,cAAc,CAAE,6BAA4B,CAAC;IAC7CC,kBAAkB,CAACW,OAAO,CAACG,IAAI,CAAC;EAClC,CAAC,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHd,OAAO,CAACe,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"email-template.js","names":["FrodoStubCommand","program","description","command","parse"],"sources":["cli/email/email-template.ts"],"sourcesContent":["import { FrodoStubCommand } from '../FrodoCommand';\n\nconst program = new FrodoStubCommand('frodo email template');\n\nprogram.description('Manage email templates.');\n\nprogram.command('list', 'List email templates.');\n\nprogram.command('export', 'Export email templates.');\n\nprogram.command('import', 'Import email templates.');\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,iBAAiB;AAElD,MAAMC,OAAO,GAAG,IAAID,gBAAgB,CAAC,sBAAsB,CAAC;AAE5DC,OAAO,CAACC,WAAW,CAAC,yBAAyB,CAAC;AAE9CD,OAAO,CAACE,OAAO,CAAC,MAAM,EAAE,uBAAuB,CAAC;AAEhDF,OAAO,CAACE,OAAO,CAAC,QAAQ,EAAE,yBAAyB,CAAC;AAEpDF,OAAO,CAACE,OAAO,CAAC,QAAQ,EAAE,yBAAyB,CAAC;AAEpDF,OAAO,CAACG,KAAK,EAAE"}
1
+ {"version":3,"file":"email-template.js","names":["FrodoStubCommand","program","description","command","parse"],"sources":["cli/email/email-template.ts"],"sourcesContent":["import { FrodoStubCommand } from '../FrodoCommand';\n\nconst program = new FrodoStubCommand('frodo email template');\n\nprogram.description('Manage email templates.');\n\nprogram.command('list', 'List email templates.');\n\nprogram.command('export', 'Export email templates.');\n\nprogram.command('import', 'Import email templates.');\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,iBAAiB;AAElD,MAAMC,OAAO,GAAG,IAAID,gBAAgB,CAAC,sBAAsB,CAAC;AAE5DC,OAAO,CAACC,WAAW,CAAC,yBAAyB,CAAC;AAE9CD,OAAO,CAACE,OAAO,CAAC,MAAM,EAAE,uBAAuB,CAAC;AAEhDF,OAAO,CAACE,OAAO,CAAC,QAAQ,EAAE,yBAAyB,CAAC;AAEpDF,OAAO,CAACE,OAAO,CAAC,QAAQ,EAAE,yBAAyB,CAAC;AAEpDF,OAAO,CAACG,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"email.js","names":["FrodoStubCommand","path","fileURLToPath","__dirname","dirname","import","meta","url","setup","program","description","executableDir","command","showHelpAfterError"],"sources":["cli/email/email.ts"],"sourcesContent":["import { FrodoStubCommand } from '../FrodoCommand';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nexport default function setup() {\n const program = new FrodoStubCommand('email')\n .description('Manage email templates and configuration.')\n .executableDir(__dirname);\n\n program.command('template', 'Manage email templates.').showHelpAfterError();\n\n program.showHelpAfterError();\n return program;\n}\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,iBAAiB;AAClD,OAAOC,IAAI,MAAM,MAAM;AACvB,SAASC,aAAa,QAAQ,KAAK;AAEnC,MAAMC,SAAS,GAAGF,IAAI,CAACG,OAAO,CAACF,aAAa,CAACG,MAAM,CAACC,IAAI,CAACC,GAAG,CAAC,CAAC;AAE9D,eAAe,SAASC,KAAK,GAAG;EAC9B,MAAMC,OAAO,GAAG,IAAIT,gBAAgB,CAAC,OAAO,CAAC,CAC1CU,WAAW,CAAC,2CAA2C,CAAC,CACxDC,aAAa,CAACR,SAAS,CAAC;EAE3BM,OAAO,CAACG,OAAO,CAAC,UAAU,EAAE,yBAAyB,CAAC,CAACC,kBAAkB,EAAE;EAE3EJ,OAAO,CAACI,kBAAkB,EAAE;EAC5B,OAAOJ,OAAO;AAChB"}
1
+ {"version":3,"file":"email.js","names":["FrodoStubCommand","path","fileURLToPath","__dirname","dirname","import","meta","url","setup","program","description","executableDir","command","showHelpAfterError"],"sources":["cli/email/email.ts"],"sourcesContent":["import { FrodoStubCommand } from '../FrodoCommand';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nexport default function setup() {\n const program = new FrodoStubCommand('email')\n .description('Manage email templates and configuration.')\n .executableDir(__dirname);\n\n program.command('template', 'Manage email templates.').showHelpAfterError();\n\n program.showHelpAfterError();\n return program;\n}\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,iBAAiB;AAClD,OAAOC,IAAI,MAAM,MAAM;AACvB,SAASC,aAAa,QAAQ,KAAK;AAEnC,MAAMC,SAAS,GAAGF,IAAI,CAACG,OAAO,CAACF,aAAa,CAACG,MAAM,CAACC,IAAI,CAACC,GAAG,CAAC,CAAC;AAE9D,eAAe,SAASC,KAAKA,CAAA,EAAG;EAC9B,MAAMC,OAAO,GAAG,IAAIT,gBAAgB,CAAC,OAAO,CAAC,CAC1CU,WAAW,CAAC,2CAA2C,CAAC,CACxDC,aAAa,CAACR,SAAS,CAAC;EAE3BM,OAAO,CAACG,OAAO,CAAC,UAAU,EAAE,yBAAyB,CAAC,CAACC,kBAAkB,CAAC,CAAC;EAE3EJ,OAAO,CAACI,kBAAkB,CAAC,CAAC;EAC5B,OAAOJ,OAAO;AAChB"}