@rockcarver/frodo-lib 2.0.0-3 → 2.0.0-4

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 (149) hide show
  1. package/CHANGELOG.md +5 -1
  2. package/cjs/api/AgentApi.js +64 -16
  3. package/cjs/api/AgentApi.js.map +1 -1
  4. package/cjs/api/ApiTypes.js +0 -55
  5. package/cjs/api/ApiTypes.js.map +1 -1
  6. package/cjs/api/BaseApi.js +21 -11
  7. package/cjs/api/BaseApi.js.map +1 -1
  8. package/cjs/api/cloud/SecretsApi.js +7 -14
  9. package/cjs/api/cloud/SecretsApi.js.map +1 -1
  10. package/cjs/api/cloud/SecretsApi.test.js.map +1 -1
  11. package/cjs/ops/AdminOps.js +254 -60
  12. package/cjs/ops/AdminOps.js.map +1 -1
  13. package/cjs/ops/AgentOps.js +352 -108
  14. package/cjs/ops/AgentOps.js.map +1 -1
  15. package/cjs/ops/AuthenticateOps.js +253 -60
  16. package/cjs/ops/AuthenticateOps.js.map +1 -1
  17. package/cjs/ops/CirclesOfTrustOps.js +16 -4
  18. package/cjs/ops/CirclesOfTrustOps.js.map +1 -1
  19. package/cjs/ops/ConnectionProfileOps.js +163 -40
  20. package/cjs/ops/ConnectionProfileOps.js.map +1 -1
  21. package/cjs/ops/EmailTemplateOps.js +7 -1
  22. package/cjs/ops/EmailTemplateOps.js.map +1 -1
  23. package/cjs/ops/IdpOps.js +55 -12
  24. package/cjs/ops/IdpOps.js.map +1 -1
  25. package/cjs/ops/JourneyOps.js +645 -136
  26. package/cjs/ops/JourneyOps.js.map +1 -1
  27. package/cjs/ops/NodeOps.js +96 -24
  28. package/cjs/ops/NodeOps.js.map +1 -1
  29. package/cjs/ops/OAuth2ClientOps.js +45 -11
  30. package/cjs/ops/OAuth2ClientOps.js.map +1 -1
  31. package/cjs/ops/OpsTypes.js +0 -23
  32. package/cjs/ops/OpsTypes.js.map +1 -1
  33. package/cjs/ops/OrganizationOps.js +44 -10
  34. package/cjs/ops/OrganizationOps.js.map +1 -1
  35. package/cjs/ops/PolicyOps.js +86 -24
  36. package/cjs/ops/PolicyOps.js.map +1 -1
  37. package/cjs/ops/PolicySetOps.js +72 -18
  38. package/cjs/ops/PolicySetOps.js.map +1 -1
  39. package/cjs/ops/ResourceTypeOps.js +24 -6
  40. package/cjs/ops/ResourceTypeOps.js.map +1 -1
  41. package/cjs/ops/Saml2Ops.js +120 -33
  42. package/cjs/ops/Saml2Ops.js.map +1 -1
  43. package/cjs/ops/Saml2Ops.test.js.map +1 -1
  44. package/cjs/ops/ScriptOps.js +73 -17
  45. package/cjs/ops/ScriptOps.js.map +1 -1
  46. package/cjs/ops/ServiceOps.js +152 -35
  47. package/cjs/ops/ServiceOps.js.map +1 -1
  48. package/cjs/ops/ThemeOps.js +20 -5
  49. package/cjs/ops/ThemeOps.js.map +1 -1
  50. package/cjs/ops/cloud/FeatureOps.js +4 -1
  51. package/cjs/ops/cloud/FeatureOps.js.map +1 -1
  52. package/cjs/ops/cloud/SecretsOps.js.map +1 -1
  53. package/cjs/ops/cloud/ServiceAccountOps.js +24 -6
  54. package/cjs/ops/cloud/ServiceAccountOps.js.map +1 -1
  55. package/cjs/ops/cloud/StartupOps.js +55 -11
  56. package/cjs/ops/cloud/StartupOps.js.map +1 -1
  57. package/cjs/ops/utils/Console.js +47 -22
  58. package/cjs/ops/utils/Console.js.map +1 -1
  59. package/cjs/ops/utils/DataProtection.js +12 -5
  60. package/cjs/ops/utils/DataProtection.js.map +1 -1
  61. package/cjs/ops/utils/DataProtection.test.js.map +1 -1
  62. package/cjs/ops/utils/ExportImportUtils.js +15 -8
  63. package/cjs/ops/utils/ExportImportUtils.js.map +1 -1
  64. package/cjs/ops/utils/ScriptValidationUtils.js +33 -8
  65. package/cjs/ops/utils/ScriptValidationUtils.js.map +1 -1
  66. package/cjs/ops/utils/ScriptValidationUtils.test.js.map +1 -1
  67. package/cjs/utils/SetupPollyForFrodoLib.js +67 -19
  68. package/cjs/utils/SetupPollyForFrodoLib.js.map +1 -1
  69. package/esm/api/AgentApi.mjs +64 -16
  70. package/esm/api/ApiTypes.mjs +1 -50
  71. package/esm/api/BaseApi.mjs +21 -11
  72. package/esm/api/cloud/SecretsApi.mjs +0 -5
  73. package/esm/api/cloud/SecretsApi.test.mjs +3 -3
  74. package/esm/ops/AdminOps.mjs +254 -60
  75. package/esm/ops/AgentOps.mjs +352 -104
  76. package/esm/ops/AuthenticateOps.mjs +253 -60
  77. package/esm/ops/CirclesOfTrustOps.mjs +16 -4
  78. package/esm/ops/ConnectionProfileOps.mjs +163 -40
  79. package/esm/ops/EmailTemplateOps.mjs +5 -0
  80. package/esm/ops/IdpOps.mjs +55 -12
  81. package/esm/ops/JourneyOps.mjs +639 -132
  82. package/esm/ops/NodeOps.mjs +90 -19
  83. package/esm/ops/OAuth2ClientOps.mjs +45 -11
  84. package/esm/ops/OpsTypes.mjs +1 -22
  85. package/esm/ops/OrganizationOps.mjs +44 -10
  86. package/esm/ops/PolicyOps.mjs +86 -24
  87. package/esm/ops/PolicySetOps.mjs +72 -18
  88. package/esm/ops/ResourceTypeOps.mjs +24 -6
  89. package/esm/ops/Saml2Ops.mjs +120 -33
  90. package/esm/ops/Saml2Ops.test.mjs +10 -11
  91. package/esm/ops/ScriptOps.mjs +73 -17
  92. package/esm/ops/ServiceOps.mjs +152 -35
  93. package/esm/ops/ThemeOps.mjs +20 -5
  94. package/esm/ops/cloud/FeatureOps.mjs +4 -1
  95. package/esm/ops/cloud/ServiceAccountOps.mjs +24 -6
  96. package/esm/ops/cloud/StartupOps.mjs +55 -11
  97. package/esm/ops/utils/Console.mjs +33 -9
  98. package/esm/ops/utils/DataProtection.mjs +9 -2
  99. package/esm/ops/utils/DataProtection.test.mjs +8 -2
  100. package/esm/ops/utils/ExportImportUtils.mjs +15 -8
  101. package/esm/ops/utils/ScriptValidationUtils.mjs +30 -8
  102. package/esm/ops/utils/ScriptValidationUtils.test.mjs +14 -3
  103. package/esm/utils/SetupPollyForFrodoLib.mjs +64 -18
  104. package/package.json +1 -1
  105. package/types/api/AgentApi.d.ts +6 -6
  106. package/types/api/AgentApi.d.ts.map +1 -1
  107. package/types/api/ApiTypes.d.ts +12 -49
  108. package/types/api/ApiTypes.d.ts.map +1 -1
  109. package/types/api/BaseApi.d.ts.map +1 -1
  110. package/types/api/cloud/SecretsApi.d.ts +1 -4
  111. package/types/api/cloud/SecretsApi.d.ts.map +1 -1
  112. package/types/ops/AdminOps.d.ts.map +1 -1
  113. package/types/ops/AgentOps.d.ts +3 -6
  114. package/types/ops/AgentOps.d.ts.map +1 -1
  115. package/types/ops/AuthenticateOps.d.ts.map +1 -1
  116. package/types/ops/CirclesOfTrustOps.d.ts.map +1 -1
  117. package/types/ops/ConnectionProfileOps.d.ts.map +1 -1
  118. package/types/ops/EmailTemplateOps.d.ts +4 -0
  119. package/types/ops/EmailTemplateOps.d.ts.map +1 -1
  120. package/types/ops/IdpOps.d.ts.map +1 -1
  121. package/types/ops/JourneyOps.d.ts +10 -4
  122. package/types/ops/JourneyOps.d.ts.map +1 -1
  123. package/types/ops/NodeOps.d.ts +10 -4
  124. package/types/ops/NodeOps.d.ts.map +1 -1
  125. package/types/ops/OAuth2ClientOps.d.ts.map +1 -1
  126. package/types/ops/OpsTypes.d.ts +2 -12
  127. package/types/ops/OpsTypes.d.ts.map +1 -1
  128. package/types/ops/OrganizationOps.d.ts.map +1 -1
  129. package/types/ops/PolicyOps.d.ts.map +1 -1
  130. package/types/ops/PolicySetOps.d.ts.map +1 -1
  131. package/types/ops/ResourceTypeOps.d.ts.map +1 -1
  132. package/types/ops/Saml2Ops.d.ts.map +1 -1
  133. package/types/ops/ScriptOps.d.ts.map +1 -1
  134. package/types/ops/ServiceOps.d.ts.map +1 -1
  135. package/types/ops/ThemeOps.d.ts.map +1 -1
  136. package/types/ops/cloud/FeatureOps.d.ts.map +1 -1
  137. package/types/ops/cloud/SecretsOps.d.ts +1 -1
  138. package/types/ops/cloud/SecretsOps.d.ts.map +1 -1
  139. package/types/ops/cloud/ServiceAccountOps.d.ts.map +1 -1
  140. package/types/ops/cloud/StartupOps.d.ts.map +1 -1
  141. package/types/ops/utils/Console.d.ts +34 -7
  142. package/types/ops/utils/Console.d.ts.map +1 -1
  143. package/types/ops/utils/DataProtection.d.ts +5 -1
  144. package/types/ops/utils/DataProtection.d.ts.map +1 -1
  145. package/types/ops/utils/ExportImportUtils.d.ts.map +1 -1
  146. package/types/ops/utils/ScriptValidationUtils.d.ts +14 -4
  147. package/types/ops/utils/ScriptValidationUtils.d.ts.map +1 -1
  148. package/types/utils/SetupPollyForFrodoLib.d.ts +5 -1
  149. package/types/utils/SetupPollyForFrodoLib.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"PolicyOps.js","names":["_PoliciesApi","require","_ScriptOps","_ExportImportUtils","_ApiTypes","_Console","_ResourceTypesApi","_PolicySetOps","_ResourceTypeOps","asyncGeneratorStep","gen","resolve","reject","_next","_throw","key","arg","info","value","error","done","Promise","then","_asyncToGenerator","fn","self","args","arguments","apply","err","undefined","PolicyOps","constructor","state","getPolicies","_this","getPoliciesByPolicySet","policySetId","_this2","getPolicy","policyId","_this3","putPolicy","policyData","_this4","deletePolicy","_this5","exportPolicy","_arguments","_this6","options","length","deps","prereqs","useStringArrays","exportPolicies","_arguments2","_this7","exportPoliciesByPolicySet","policySetName","_arguments3","_this8","importPolicy","importData","_arguments4","_this9","importFirstPolicy","_arguments5","_this10","importPolicies","_arguments6","_this11","exports","default","createPolicyExportTemplate","_ref","meta","getMetadata","script","policy","resourcetype","policyset","_x","_getPolicies2","_ref2","result","_getPolicies","_x2","_getPoliciesByPolicySet2","_ref3","data","_getPoliciesByPolicySet","findScriptUuids","condition","scriptUuids","type","PolicyConditionType","AND","toString","OR","NOT","push","conditions","cond","Script","scriptId","Set","getScripts","_x3","_getScripts","_ref4","debugMessage","concat","errors","scripts","scriptUuid","getScript","message","errorMessages","map","join","Error","exportPolicyPrerequisites","_x4","_exportPolicyPrerequisites","_ref5","exportData","resourceTypeUuid","resourceType","getResourceType","applicationName","policySet","getPolicySet","exportPolicyDependencies","_x5","_exportPolicyDependencies","_ref6","scriptData","convertBase64TextToArray","_id","_x6","_exportPolicy","_ref7","_x7","_exportPolicies","_ref8","policies","_x8","_exportPoliciesByPolicySet","_ref9","importPolicyPrerequisites","_x9","_importPolicyPrerequisites","_ref10","createResourceType","resourceTypeData","_error$response","response","status","updateResourceType","createPolicySet","policySetData","_error$response2","updatePolicySet","_error$response3","_error$response3$data","_error$response4","_error$response4$data","importPolicyDependencies","_x10","_importPolicyDependencies","_ref11","putScript","_error$response5","_error$response6","_error$response6$data","_error$response7","_error$response7$data","_error$response8","_error$response8$data","_x11","_importPolicy","_ref12","imported","id","Object","keys","_rev","_error$response9","_error$response9$data","_x12","_importFirstPolicy","_ref13","_error$response10","_error$response10$dat","_x13","_importPolicies","_ref14","_error$response11","_error$response11$dat"],"sources":["ops/PolicyOps.ts"],"sourcesContent":["import {\n getPolicies as _getPolicies,\n getPoliciesByPolicySet as _getPoliciesByPolicySet,\n getPolicy,\n putPolicy,\n deletePolicy,\n} from '../api/PoliciesApi';\nimport { getScript, putScript } from './ScriptOps';\nimport { convertBase64TextToArray } from './utils/ExportImportUtils';\nimport { ExportMetaData } from './OpsTypes';\nimport {\n PolicyCondition,\n PolicyConditionType,\n PolicySetSkeleton,\n PolicySkeleton,\n ResourceTypeSkeleton,\n ScriptSkeleton,\n} from '../api/ApiTypes';\nimport { getMetadata } from './utils/ExportImportUtils';\nimport { debugMessage } from './utils/Console';\nimport { getResourceType } from '../api/ResourceTypesApi';\nimport { createPolicySet, getPolicySet, updatePolicySet } from './PolicySetOps';\nimport { createResourceType, updateResourceType } from './ResourceTypeOps';\nimport State from '../shared/State';\n\nexport default class PolicyOps {\n state: State;\n constructor(state: State) {\n this.state = state;\n }\n\n /**\n * Get all policies\n * @returns {Promise<PolicySkeleton>} a promise that resolves to an array of policy set objects\n */\n async getPolicies(): Promise<PolicySkeleton[]> {\n return getPolicies({ state: this.state });\n }\n\n /**\n * Get policies by policy set\n * @param {string} policySetId policy set id/name\n * @returns {Promise<PolicySkeleton[]>} a promise resolving to an array of policy objects\n */\n async getPoliciesByPolicySet(policySetId: string): Promise<PolicySkeleton[]> {\n return getPoliciesByPolicySet({ policySetId, state: this.state });\n }\n\n async getPolicy(policyId: string) {\n return getPolicy({ policyId, state: this.state });\n }\n\n async putPolicy(policyId: string, policyData: PolicySkeleton) {\n return putPolicy({ policyId, policyData, state: this.state });\n }\n\n async deletePolicy(policyId: string) {\n return deletePolicy({ policyId, state: this.state });\n }\n\n /**\n * Export policy\n * @param {string} policyId policy id/name\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to a PolicyExportInterface object\n */\n async exportPolicy(\n policyId: string,\n options: PolicyExportOptions = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n }\n ): Promise<PolicyExportInterface> {\n return exportPolicy({ policyId, options, state: this.state });\n }\n\n /**\n * Export policies\n * @param {PolicyExportOptions} options export options\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to an PolicyExportInterface object\n */\n async exportPolicies(\n options: PolicyExportOptions = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n }\n ): Promise<PolicyExportInterface> {\n return exportPolicies({ options, state: this.state });\n }\n\n /**\n * Export policies by policy set\n * @param {string} policySetName policy set id/name\n * @param {PolicyExportOptions} options export options\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to an PolicyExportInterface object\n */\n async exportPoliciesByPolicySet(\n policySetName: string,\n options: PolicyExportOptions = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n }\n ): Promise<PolicyExportInterface> {\n return exportPoliciesByPolicySet({\n policySetName,\n options,\n state: this.state,\n });\n }\n\n /**\n * Import policy by id\n * @param {string} policyId policy id\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton>} imported policy object\n */\n async importPolicy(\n policyId: string,\n importData: PolicyExportInterface,\n options: PolicyImportOptions = { deps: true, prereqs: false }\n ): Promise<PolicySkeleton> {\n return importPolicy({ policyId, importData, options, state: this.state });\n }\n\n /**\n * Import first policy\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton>} imported policy object\n */\n async importFirstPolicy(\n importData: PolicyExportInterface,\n options: PolicyImportOptions = { deps: true, prereqs: false }\n ): Promise<PolicySkeleton> {\n return importFirstPolicy({ importData, options, state: this.state });\n }\n\n /**\n * Import policies\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton[]>} array of imported policy objects\n */\n async importPolicies(\n importData: PolicyExportInterface,\n options: PolicyImportOptions = { deps: true, prereqs: false }\n ): Promise<PolicySkeleton[]> {\n return importPolicies({ importData, options, state: this.state });\n }\n}\n\nexport interface PolicyExportInterface {\n meta?: ExportMetaData;\n script: Record<string, ScriptSkeleton>;\n resourcetype: Record<string, ResourceTypeSkeleton>;\n policy: Record<string, PolicySkeleton>;\n policyset: Record<string, PolicySetSkeleton>;\n}\n\n/**\n * Policy export options\n */\nexport interface PolicyExportOptions {\n /**\n * Include any dependencies (scripts).\n */\n deps: boolean;\n /**\n * Include any prerequisites (policy sets, resource types).\n */\n prereqs: boolean;\n /**\n * Use string arrays to store multi-line text in scripts.\n */\n useStringArrays: boolean;\n}\n\n/**\n * Policy import options\n */\nexport interface PolicyImportOptions {\n /**\n * Include any dependencies (scripts).\n */\n deps: boolean;\n /**\n * Include any prerequisites (policy sets, resource types).\n */\n prereqs: boolean;\n /**\n * Import policies into different policy set\n */\n policySetName?: string;\n}\n\n/**\n * Create an empty export template\n * @returns {PolicyExportInterface} an empty export template\n */\nfunction createPolicyExportTemplate({\n state,\n}: {\n state: State;\n}): PolicyExportInterface {\n return {\n meta: getMetadata({ state }),\n script: {},\n policy: {},\n resourcetype: {},\n policyset: {},\n } as PolicyExportInterface;\n}\n\n/**\n * Get all policies\n * @returns {Promise<PolicySkeleton>} a promise that resolves to an array of policy set objects\n */\nexport async function getPolicies({\n state,\n}: {\n state: State;\n}): Promise<PolicySkeleton[]> {\n const { result } = await _getPolicies({ state });\n return result;\n}\n\n/**\n * Get policies by policy set\n * @param {string} policySetId policy set id/name\n * @returns {Promise<PolicySkeleton[]>} a promise resolving to an array of policy objects\n */\nexport async function getPoliciesByPolicySet({\n policySetId,\n state,\n}: {\n policySetId: string;\n state: State;\n}): Promise<PolicySkeleton[]> {\n const data = await _getPoliciesByPolicySet({ policySetId, state });\n return data.result;\n}\n\nexport { getPolicy, putPolicy, deletePolicy };\n\n/**\n * Find all script references in a deeply-nested policy condition object\n * @param {PolicyCondition} condition condition object\n * @returns {string[]} array of script UUIDs\n * \n * Sample condition block:\n * \n \"condition\": {\n \"type\": \"AND\",\n \"conditions\": [\n {\n \"type\": \"Script\",\n \"scriptId\": \"62f18ede-e5e7-4a7b-8b73-1b02fcbd241a\"\n },\n {\n \"type\": \"AuthenticateToService\",\n \"authenticateToService\": \"TxAuthz\"\n },\n {\n \"type\": \"OR\",\n \"conditions\": [\n {\n \"type\": \"Session\",\n \"maxSessionTime\": 5,\n \"terminateSession\": false\n },\n {\n \"type\": \"OAuth2Scope\",\n \"requiredScopes\": [\n \"openid\"\n ]\n },\n {\n \"type\": \"NOT\",\n \"condition\": {\n \"type\": \"Script\",\n \"scriptId\": \"729ee140-a4e9-43af-b358-d60eeda13cc3\"\n }\n }\n ]\n }\n ]\n },\n*/\nexport function findScriptUuids(condition: PolicyCondition): string[] {\n let scriptUuids: string[] = [];\n if (!condition) return scriptUuids;\n if (\n condition.type === PolicyConditionType.AND.toString() ||\n condition.type === PolicyConditionType.OR.toString() ||\n condition.type === PolicyConditionType.NOT.toString()\n ) {\n // single condition\n if (condition.condition) {\n scriptUuids.push(...findScriptUuids(condition.condition));\n }\n // array of conditions\n if (condition.conditions) {\n for (const cond of condition.conditions) {\n scriptUuids.push(...findScriptUuids(cond));\n }\n }\n } else if (condition.type === PolicyConditionType.Script.toString()) {\n scriptUuids.push(condition.scriptId as string);\n }\n // de-duplicate\n scriptUuids = [...new Set(scriptUuids)];\n return scriptUuids;\n}\n\n/**\n * Get scripts for a policy object\n * @param {PolicySkeleton} policyData policy object\n * @returns {Promise<ScriptSkeleton[]>} a promise that resolves to an array of script objects\n */\nexport async function getScripts({\n policyData,\n state,\n}: {\n policyData: PolicySkeleton;\n state: State;\n}): Promise<ScriptSkeleton[]> {\n debugMessage(`PolicyOps.getScripts: start [policy=${policyData['name']}]`);\n const errors = [];\n const scripts = [];\n try {\n const scriptUuids = findScriptUuids(policyData.condition);\n debugMessage(`found scripts: ${scriptUuids}`);\n for (const scriptUuid of scriptUuids) {\n try {\n const script = await getScript({ scriptId: scriptUuid, state });\n scripts.push(script);\n } catch (error) {\n error.message = `Error retrieving script ${scriptUuid} referenced in policy ${policyData['name']}: ${error.message}`;\n errors.push(error);\n }\n }\n } catch (error) {\n error.message = `Error finding scripts in policy ${policyData['name']}: ${error.message}`;\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage(`PolicySetOps.getScripts: end`);\n return scripts;\n}\n\n/**\n * Helper function to export dependencies of a policy set\n * @param {PolicySkeleton} policyData policy set data\n * @param {PolicyExportInterface} exportData export data\n */\nasync function exportPolicyPrerequisites({\n policyData,\n exportData,\n state,\n}: {\n policyData: PolicySkeleton;\n exportData: PolicyExportInterface;\n state: State;\n}) {\n debugMessage(\n `PolicyOps.exportPolicyPrerequisites: start [policy=${policyData['name']}]`\n );\n // resource types\n if (policyData.resourceTypeUuid) {\n const resourceType = await getResourceType({\n resourceTypeUuid: policyData.resourceTypeUuid,\n state,\n });\n exportData.resourcetype[policyData.resourceTypeUuid] = resourceType;\n }\n // policy set\n if (policyData.applicationName) {\n const policySet = await getPolicySet({\n policySetName: policyData.applicationName,\n state,\n });\n exportData.policyset[policyData.applicationName] = policySet;\n }\n debugMessage(`PolicySetOps.exportPolicyPrerequisites: end`);\n}\n\n/**\n * Helper function to export dependencies of a policy set\n * @param {unknown} policyData policy set data\n * @param {PolicyExportOptions} options export options\n * @param {PolicyExportInterface} exportData export data\n */\nasync function exportPolicyDependencies({\n policyData,\n options,\n exportData,\n state,\n}: {\n policyData: PolicySkeleton;\n options: PolicyExportOptions;\n exportData: PolicyExportInterface;\n state: State;\n}) {\n debugMessage(\n `PolicyOps.exportPolicyDependencies: start [policy=${policyData['name']}]`\n );\n // scripts\n const scripts = await getScripts({ policyData, state });\n for (const scriptData of scripts) {\n if (options.useStringArrays) {\n scriptData.script = convertBase64TextToArray(scriptData.script as string);\n }\n exportData.script[scriptData._id] = scriptData;\n }\n debugMessage(`PolicySetOps.exportPolicySetDependencies: end`);\n}\n\n/**\n * Export policy\n * @param {string} policyId policy id/name\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to a PolicyExportInterface object\n */\nexport async function exportPolicy({\n policyId,\n options = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n },\n state,\n}: {\n policyId: string;\n options?: PolicyExportOptions;\n state: State;\n}): Promise<PolicyExportInterface> {\n debugMessage(`PolicyOps.exportPolicy: start`);\n const policyData = await getPolicy({ policyId, state });\n const exportData = createPolicyExportTemplate({ state });\n exportData.policy[policyData._id] = policyData;\n if (options.prereqs) {\n await exportPolicyPrerequisites({ policyData, exportData, state });\n }\n if (options.deps) {\n await exportPolicyDependencies({ policyData, options, exportData, state });\n }\n debugMessage(`PolicyOps.exportPolicy: end`);\n return exportData;\n}\n\n/**\n * Export policies\n * @param {PolicyExportOptions} options export options\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to an PolicyExportInterface object\n */\nexport async function exportPolicies({\n options = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n },\n state,\n}: {\n options?: PolicyExportOptions;\n state: State;\n}): Promise<PolicyExportInterface> {\n debugMessage(`PolicyOps.exportPolicies: start`);\n const exportData = createPolicyExportTemplate({ state });\n const errors = [];\n try {\n const policies = await getPolicies({ state });\n for (const policyData of policies) {\n exportData.policy[policyData._id] = policyData;\n if (options.prereqs) {\n try {\n await exportPolicyPrerequisites({ policyData, exportData, state });\n } catch (error) {\n errors.push(error);\n }\n }\n if (options.deps) {\n try {\n await exportPolicyDependencies({\n policyData,\n options,\n exportData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n }\n } catch (error) {\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage(`PolicyOps.exportPolicies: end`);\n return exportData;\n}\n\n/**\n * Export policies by policy set\n * @param {string} policySetName policy set id/name\n * @param {PolicyExportOptions} options export options\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to an PolicyExportInterface object\n */\nexport async function exportPoliciesByPolicySet({\n policySetName,\n options = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n },\n state,\n}: {\n policySetName: string;\n options?: PolicyExportOptions;\n state: State;\n}): Promise<PolicyExportInterface> {\n debugMessage(`PolicyOps.exportPolicies: start`);\n const exportData = createPolicyExportTemplate({ state });\n const errors = [];\n try {\n const policies = await getPoliciesByPolicySet({\n policySetId: policySetName,\n state,\n });\n for (const policyData of policies) {\n exportData.policy[policyData._id] = policyData;\n if (options.prereqs) {\n try {\n await exportPolicyPrerequisites({ policyData, exportData, state });\n } catch (error) {\n errors.push(error);\n }\n }\n if (options.deps) {\n try {\n await exportPolicyDependencies({\n policyData,\n options,\n exportData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n }\n } catch (error) {\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage(`PolicyOps.exportPolicies: end`);\n return exportData;\n}\n\n/**\n * Helper function to import hard dependencies of a policy\n * @param {PolicySkeleton} policyData policy object\n * @param {PolicyExportInterface} exportData export data\n */\nasync function importPolicyPrerequisites({\n policyData,\n exportData,\n state,\n}: {\n policyData: PolicySkeleton;\n exportData: PolicyExportInterface;\n state: State;\n}) {\n debugMessage(\n `PolicyOps.importPolicyHardDependencies: start [policy=${policyData._id}]`\n );\n const errors = [];\n try {\n // resource type\n if (exportData.resourcetype[policyData.resourceTypeUuid]) {\n try {\n debugMessage(`Importing resource type ${policyData.resourceTypeUuid}`);\n await createResourceType({\n resourceTypeData:\n exportData.resourcetype[policyData.resourceTypeUuid],\n state,\n });\n } catch (error) {\n if (error.response?.status === 409)\n await updateResourceType({\n resourceTypeUuid: policyData.resourceTypeUuid,\n resourceTypeData:\n exportData.resourcetype[policyData.resourceTypeUuid],\n state,\n });\n else throw error;\n }\n }\n // policy set\n if (exportData.policyset[policyData.applicationName]) {\n try {\n debugMessage(`Importing policy set ${policyData.applicationName}`);\n await createPolicySet({\n policySetData: exportData.policyset[policyData.applicationName],\n state,\n });\n } catch (error) {\n if (error.response?.status === 409)\n await updatePolicySet({\n policySetData: exportData.policyset[policyData.applicationName],\n state,\n });\n else throw error;\n }\n }\n } catch (error) {\n error.message = `Error importing hard dependencies for policy ${\n policyData._id\n }: ${error.response?.data?.message || error.message}`;\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import hard dependencies error:\\n${errorMessages}`);\n }\n debugMessage(`PolicyOps.importPolicyHardDependencies: end`);\n}\n\n/**\n * Helper function to import soft dependencies of a policy\n * @param {PolicySkeleton} policyData policy object\n * @param {PolicyExportInterface} exportData export data\n */\nasync function importPolicyDependencies({\n policyData,\n exportData,\n state,\n}: {\n policyData: PolicySkeleton;\n exportData: PolicyExportInterface;\n state: State;\n}) {\n debugMessage(\n `PolicyOps.importPolicySoftDependencies: start [policy=${policyData._id}]`\n );\n const errors = [];\n try {\n // scripts\n const scriptUuids = findScriptUuids(policyData.condition);\n for (const scriptUuid of scriptUuids) {\n try {\n const scriptData = exportData.script[scriptUuid];\n debugMessage(`Importing script ${scriptUuid}`);\n await putScript({ scriptId: scriptUuid, scriptData, state });\n } catch (error) {\n debugMessage(error.response?.data);\n error.message = `Error importing script ${scriptUuid} for policy ${\n policyData._id\n }: ${error.response?.data?.message || error.message}`;\n errors.push(error);\n }\n }\n } catch (error) {\n error.message = `Error importing soft dependencies for policy ${\n policyData._id\n }: ${error.response?.data?.message || error.message}`;\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import soft dependencies error:\\n${errorMessages}`);\n }\n debugMessage(`PolicyOps.importPolicySoftDependencies: end`);\n}\n\n/**\n * Import policy by id\n * @param {string} policyId policy id\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton>} imported policy object\n */\nexport async function importPolicy({\n policyId,\n importData,\n options = { deps: true, prereqs: false },\n state,\n}: {\n policyId: string;\n importData: PolicyExportInterface;\n options?: PolicyImportOptions;\n state: State;\n}): Promise<PolicySkeleton> {\n let response = null;\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.policy)) {\n if (id === policyId) {\n try {\n const policyData = importData.policy[id];\n delete policyData._rev;\n if (options.policySetName) {\n policyData.applicationName = options.policySetName;\n }\n if (options.prereqs) {\n try {\n await importPolicyPrerequisites({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n try {\n response = await putPolicy({\n policyId: policyData._id,\n policyData,\n state,\n });\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n if (options.deps) {\n try {\n await importPolicyDependencies({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n } catch (error) {\n errors.push(error);\n }\n }\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\n${policyId} not found in import data!`);\n }\n return response;\n}\n\n/**\n * Import first policy\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton>} imported policy object\n */\nexport async function importFirstPolicy({\n importData,\n options = { deps: true, prereqs: false },\n state,\n}: {\n importData: PolicyExportInterface;\n options?: PolicyImportOptions;\n state: State;\n}): Promise<PolicySkeleton> {\n let response = null;\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.policy)) {\n try {\n const policyData = importData.policy[id];\n delete policyData._rev;\n if (options.policySetName) {\n policyData.applicationName = options.policySetName;\n }\n if (options.prereqs) {\n try {\n await importPolicyPrerequisites({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n try {\n response = await putPolicy({\n policyId: policyData._id,\n policyData,\n state,\n });\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n if (options.deps) {\n try {\n await importPolicyDependencies({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n } catch (error) {\n errors.push(error);\n }\n break;\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\nNo policy found in import data!`);\n }\n return response;\n}\n\n/**\n * Import policies\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton[]>} array of imported policy objects\n */\nexport async function importPolicies({\n importData,\n options = { deps: true, prereqs: false },\n state,\n}: {\n importData: PolicyExportInterface;\n options?: PolicyImportOptions;\n state: State;\n}): Promise<PolicySkeleton[]> {\n const response = [];\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.policy)) {\n try {\n const policyData = importData.policy[id];\n delete policyData._rev;\n if (options.policySetName) {\n policyData.applicationName = options.policySetName;\n }\n if (options.prereqs) {\n try {\n await importPolicyPrerequisites({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n try {\n response.push(\n await putPolicy({ policyId: policyData._id, policyData, state })\n );\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n if (options.deps) {\n try {\n await importPolicyDependencies({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n } catch (error) {\n errors.push(error);\n }\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\nNo policies found in import data!`);\n }\n return response;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"PolicyOps.js","names":["_PoliciesApi","require","_ScriptOps","_ExportImportUtils","_Console","_ResourceTypesApi","_PolicySetOps","_ResourceTypeOps","asyncGeneratorStep","gen","resolve","reject","_next","_throw","key","arg","info","value","error","done","Promise","then","_asyncToGenerator","fn","self","args","arguments","apply","err","undefined","PolicyOps","constructor","state","getPolicies","_this","getPoliciesByPolicySet","policySetId","_this2","getPolicy","policyId","_this3","putPolicy","policyData","_this4","deletePolicy","_this5","exportPolicy","_arguments","_this6","options","length","deps","prereqs","useStringArrays","exportPolicies","_arguments2","_this7","exportPoliciesByPolicySet","policySetName","_arguments3","_this8","importPolicy","importData","_arguments4","_this9","importFirstPolicy","_arguments5","_this10","importPolicies","_arguments6","_this11","exports","default","createPolicyExportTemplate","_ref","meta","getMetadata","script","policy","resourcetype","policyset","_x","_getPolicies2","_ref2","result","_getPolicies","_x2","_getPoliciesByPolicySet2","_ref3","data","_getPoliciesByPolicySet","findScriptUuids","condition","scriptUuids","type","push","conditions","cond","scriptId","Set","getScripts","_x3","_getScripts","_ref4","debugMessage","message","concat","errors","scripts","scriptUuid","getScript","errorMessages","map","join","Error","exportPolicyPrerequisites","_x4","_exportPolicyPrerequisites","_ref5","exportData","resourceTypeUuid","resourceType","getResourceType","applicationName","policySet","getPolicySet","exportPolicyDependencies","_x5","_exportPolicyDependencies","_ref6","scriptData","convertBase64TextToArray","_id","_x6","_exportPolicy","_ref7","_x7","_exportPolicies","_ref8","policies","_x8","_exportPoliciesByPolicySet","_ref9","importPolicyPrerequisites","_x9","_importPolicyPrerequisites","_ref10","createResourceType","resourceTypeData","_error$response","response","status","updateResourceType","createPolicySet","policySetData","_error$response2","updatePolicySet","_error$response3","_error$response3$data","_error$response4","_error$response4$data","importPolicyDependencies","_x10","_importPolicyDependencies","_ref11","putScript","_error$response5","_error$response6","_error$response6$data","_error$response7","_error$response7$data","_error$response8","_error$response8$data","_x11","_importPolicy","_ref12","imported","id","Object","keys","_rev","_error$response9","_error$response9$data","_x12","_importFirstPolicy","_ref13","_error$response10","_error$response10$dat","_x13","_importPolicies","_ref14","_error$response11","_error$response11$dat"],"sources":["ops/PolicyOps.ts"],"sourcesContent":["import {\n getPolicies as _getPolicies,\n getPoliciesByPolicySet as _getPoliciesByPolicySet,\n getPolicy,\n putPolicy,\n deletePolicy,\n} from '../api/PoliciesApi';\nimport { getScript, putScript } from './ScriptOps';\nimport { convertBase64TextToArray } from './utils/ExportImportUtils';\nimport { ExportMetaData } from './OpsTypes';\nimport {\n PolicyCondition,\n PolicySetSkeleton,\n PolicySkeleton,\n ResourceTypeSkeleton,\n ScriptSkeleton,\n} from '../api/ApiTypes';\nimport { getMetadata } from './utils/ExportImportUtils';\nimport { debugMessage } from './utils/Console';\nimport { getResourceType } from '../api/ResourceTypesApi';\nimport { createPolicySet, getPolicySet, updatePolicySet } from './PolicySetOps';\nimport { createResourceType, updateResourceType } from './ResourceTypeOps';\nimport State from '../shared/State';\n\nexport default class PolicyOps {\n state: State;\n constructor(state: State) {\n this.state = state;\n }\n\n /**\n * Get all policies\n * @returns {Promise<PolicySkeleton>} a promise that resolves to an array of policy set objects\n */\n async getPolicies(): Promise<PolicySkeleton[]> {\n return getPolicies({ state: this.state });\n }\n\n /**\n * Get policies by policy set\n * @param {string} policySetId policy set id/name\n * @returns {Promise<PolicySkeleton[]>} a promise resolving to an array of policy objects\n */\n async getPoliciesByPolicySet(policySetId: string): Promise<PolicySkeleton[]> {\n return getPoliciesByPolicySet({ policySetId, state: this.state });\n }\n\n async getPolicy(policyId: string) {\n return getPolicy({ policyId, state: this.state });\n }\n\n async putPolicy(policyId: string, policyData: PolicySkeleton) {\n return putPolicy({ policyId, policyData, state: this.state });\n }\n\n async deletePolicy(policyId: string) {\n return deletePolicy({ policyId, state: this.state });\n }\n\n /**\n * Export policy\n * @param {string} policyId policy id/name\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to a PolicyExportInterface object\n */\n async exportPolicy(\n policyId: string,\n options: PolicyExportOptions = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n }\n ): Promise<PolicyExportInterface> {\n return exportPolicy({ policyId, options, state: this.state });\n }\n\n /**\n * Export policies\n * @param {PolicyExportOptions} options export options\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to an PolicyExportInterface object\n */\n async exportPolicies(\n options: PolicyExportOptions = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n }\n ): Promise<PolicyExportInterface> {\n return exportPolicies({ options, state: this.state });\n }\n\n /**\n * Export policies by policy set\n * @param {string} policySetName policy set id/name\n * @param {PolicyExportOptions} options export options\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to an PolicyExportInterface object\n */\n async exportPoliciesByPolicySet(\n policySetName: string,\n options: PolicyExportOptions = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n }\n ): Promise<PolicyExportInterface> {\n return exportPoliciesByPolicySet({\n policySetName,\n options,\n state: this.state,\n });\n }\n\n /**\n * Import policy by id\n * @param {string} policyId policy id\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton>} imported policy object\n */\n async importPolicy(\n policyId: string,\n importData: PolicyExportInterface,\n options: PolicyImportOptions = { deps: true, prereqs: false }\n ): Promise<PolicySkeleton> {\n return importPolicy({ policyId, importData, options, state: this.state });\n }\n\n /**\n * Import first policy\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton>} imported policy object\n */\n async importFirstPolicy(\n importData: PolicyExportInterface,\n options: PolicyImportOptions = { deps: true, prereqs: false }\n ): Promise<PolicySkeleton> {\n return importFirstPolicy({ importData, options, state: this.state });\n }\n\n /**\n * Import policies\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton[]>} array of imported policy objects\n */\n async importPolicies(\n importData: PolicyExportInterface,\n options: PolicyImportOptions = { deps: true, prereqs: false }\n ): Promise<PolicySkeleton[]> {\n return importPolicies({ importData, options, state: this.state });\n }\n}\n\nexport interface PolicyExportInterface {\n meta?: ExportMetaData;\n script: Record<string, ScriptSkeleton>;\n resourcetype: Record<string, ResourceTypeSkeleton>;\n policy: Record<string, PolicySkeleton>;\n policyset: Record<string, PolicySetSkeleton>;\n}\n\n/**\n * Policy export options\n */\nexport interface PolicyExportOptions {\n /**\n * Include any dependencies (scripts).\n */\n deps: boolean;\n /**\n * Include any prerequisites (policy sets, resource types).\n */\n prereqs: boolean;\n /**\n * Use string arrays to store multi-line text in scripts.\n */\n useStringArrays: boolean;\n}\n\n/**\n * Policy import options\n */\nexport interface PolicyImportOptions {\n /**\n * Include any dependencies (scripts).\n */\n deps: boolean;\n /**\n * Include any prerequisites (policy sets, resource types).\n */\n prereqs: boolean;\n /**\n * Import policies into different policy set\n */\n policySetName?: string;\n}\n\n/**\n * Create an empty export template\n * @returns {PolicyExportInterface} an empty export template\n */\nfunction createPolicyExportTemplate({\n state,\n}: {\n state: State;\n}): PolicyExportInterface {\n return {\n meta: getMetadata({ state }),\n script: {},\n policy: {},\n resourcetype: {},\n policyset: {},\n } as PolicyExportInterface;\n}\n\n/**\n * Get all policies\n * @returns {Promise<PolicySkeleton>} a promise that resolves to an array of policy set objects\n */\nexport async function getPolicies({\n state,\n}: {\n state: State;\n}): Promise<PolicySkeleton[]> {\n const { result } = await _getPolicies({ state });\n return result;\n}\n\n/**\n * Get policies by policy set\n * @param {string} policySetId policy set id/name\n * @returns {Promise<PolicySkeleton[]>} a promise resolving to an array of policy objects\n */\nexport async function getPoliciesByPolicySet({\n policySetId,\n state,\n}: {\n policySetId: string;\n state: State;\n}): Promise<PolicySkeleton[]> {\n const data = await _getPoliciesByPolicySet({ policySetId, state });\n return data.result;\n}\n\nexport { getPolicy, putPolicy, deletePolicy };\n\n/**\n * Find all script references in a deeply-nested policy condition object\n * @param {PolicyCondition} condition condition object\n * @returns {string[]} array of script UUIDs\n * \n * Sample condition block:\n * \n \"condition\": {\n \"type\": \"AND\",\n \"conditions\": [\n {\n \"type\": \"Script\",\n \"scriptId\": \"62f18ede-e5e7-4a7b-8b73-1b02fcbd241a\"\n },\n {\n \"type\": \"AuthenticateToService\",\n \"authenticateToService\": \"TxAuthz\"\n },\n {\n \"type\": \"OR\",\n \"conditions\": [\n {\n \"type\": \"Session\",\n \"maxSessionTime\": 5,\n \"terminateSession\": false\n },\n {\n \"type\": \"OAuth2Scope\",\n \"requiredScopes\": [\n \"openid\"\n ]\n },\n {\n \"type\": \"NOT\",\n \"condition\": {\n \"type\": \"Script\",\n \"scriptId\": \"729ee140-a4e9-43af-b358-d60eeda13cc3\"\n }\n }\n ]\n }\n ]\n },\n*/\nexport function findScriptUuids(condition: PolicyCondition): string[] {\n let scriptUuids: string[] = [];\n if (!condition) return scriptUuids;\n if (\n condition.type === 'AND' ||\n condition.type === 'OR' ||\n condition.type === 'NOT'\n ) {\n // single condition\n if (condition.condition) {\n scriptUuids.push(...findScriptUuids(condition.condition));\n }\n // array of conditions\n if (condition.conditions) {\n for (const cond of condition.conditions) {\n scriptUuids.push(...findScriptUuids(cond));\n }\n }\n } else if (condition.type === 'Script') {\n scriptUuids.push(condition.scriptId as string);\n }\n // de-duplicate\n scriptUuids = [...new Set(scriptUuids)];\n return scriptUuids;\n}\n\n/**\n * Get scripts for a policy object\n * @param {PolicySkeleton} policyData policy object\n * @returns {Promise<ScriptSkeleton[]>} a promise that resolves to an array of script objects\n */\nexport async function getScripts({\n policyData,\n state,\n}: {\n policyData: PolicySkeleton;\n state: State;\n}): Promise<ScriptSkeleton[]> {\n debugMessage({\n message: `PolicyOps.getScripts: start [policy=${policyData['name']}]`,\n state,\n });\n const errors = [];\n const scripts = [];\n try {\n const scriptUuids = findScriptUuids(policyData.condition);\n debugMessage({ message: `found scripts: ${scriptUuids}`, state });\n for (const scriptUuid of scriptUuids) {\n try {\n const script = await getScript({ scriptId: scriptUuid, state });\n scripts.push(script);\n } catch (error) {\n error.message = `Error retrieving script ${scriptUuid} referenced in policy ${policyData['name']}: ${error.message}`;\n errors.push(error);\n }\n }\n } catch (error) {\n error.message = `Error finding scripts in policy ${policyData['name']}: ${error.message}`;\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage({ message: `PolicySetOps.getScripts: end`, state });\n return scripts;\n}\n\n/**\n * Helper function to export dependencies of a policy set\n * @param {PolicySkeleton} policyData policy set data\n * @param {PolicyExportInterface} exportData export data\n */\nasync function exportPolicyPrerequisites({\n policyData,\n exportData,\n state,\n}: {\n policyData: PolicySkeleton;\n exportData: PolicyExportInterface;\n state: State;\n}) {\n debugMessage({\n message: `PolicyOps.exportPolicyPrerequisites: start [policy=${policyData['name']}]`,\n state,\n });\n // resource types\n if (policyData.resourceTypeUuid) {\n const resourceType = await getResourceType({\n resourceTypeUuid: policyData.resourceTypeUuid,\n state,\n });\n exportData.resourcetype[policyData.resourceTypeUuid] = resourceType;\n }\n // policy set\n if (policyData.applicationName) {\n const policySet = await getPolicySet({\n policySetName: policyData.applicationName,\n state,\n });\n exportData.policyset[policyData.applicationName] = policySet;\n }\n debugMessage({\n message: `PolicySetOps.exportPolicyPrerequisites: end`,\n state,\n });\n}\n\n/**\n * Helper function to export dependencies of a policy set\n * @param {unknown} policyData policy set data\n * @param {PolicyExportOptions} options export options\n * @param {PolicyExportInterface} exportData export data\n */\nasync function exportPolicyDependencies({\n policyData,\n options,\n exportData,\n state,\n}: {\n policyData: PolicySkeleton;\n options: PolicyExportOptions;\n exportData: PolicyExportInterface;\n state: State;\n}) {\n debugMessage({\n message: `PolicyOps.exportPolicyDependencies: start [policy=${policyData['name']}]`,\n state,\n });\n // scripts\n const scripts = await getScripts({ policyData, state });\n for (const scriptData of scripts) {\n if (options.useStringArrays) {\n scriptData.script = convertBase64TextToArray(scriptData.script as string);\n }\n exportData.script[scriptData._id] = scriptData;\n }\n debugMessage({\n message: `PolicySetOps.exportPolicySetDependencies: end`,\n state,\n });\n}\n\n/**\n * Export policy\n * @param {string} policyId policy id/name\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to a PolicyExportInterface object\n */\nexport async function exportPolicy({\n policyId,\n options = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n },\n state,\n}: {\n policyId: string;\n options?: PolicyExportOptions;\n state: State;\n}): Promise<PolicyExportInterface> {\n debugMessage({ message: `PolicyOps.exportPolicy: start`, state });\n const policyData = await getPolicy({ policyId, state });\n const exportData = createPolicyExportTemplate({ state });\n exportData.policy[policyData._id] = policyData;\n if (options.prereqs) {\n await exportPolicyPrerequisites({ policyData, exportData, state });\n }\n if (options.deps) {\n await exportPolicyDependencies({ policyData, options, exportData, state });\n }\n debugMessage({ message: `PolicyOps.exportPolicy: end`, state });\n return exportData;\n}\n\n/**\n * Export policies\n * @param {PolicyExportOptions} options export options\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to an PolicyExportInterface object\n */\nexport async function exportPolicies({\n options = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n },\n state,\n}: {\n options?: PolicyExportOptions;\n state: State;\n}): Promise<PolicyExportInterface> {\n debugMessage({ message: `PolicyOps.exportPolicies: start`, state });\n const exportData = createPolicyExportTemplate({ state });\n const errors = [];\n try {\n const policies = await getPolicies({ state });\n for (const policyData of policies) {\n exportData.policy[policyData._id] = policyData;\n if (options.prereqs) {\n try {\n await exportPolicyPrerequisites({ policyData, exportData, state });\n } catch (error) {\n errors.push(error);\n }\n }\n if (options.deps) {\n try {\n await exportPolicyDependencies({\n policyData,\n options,\n exportData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n }\n } catch (error) {\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage({ message: `PolicyOps.exportPolicies: end`, state });\n return exportData;\n}\n\n/**\n * Export policies by policy set\n * @param {string} policySetName policy set id/name\n * @param {PolicyExportOptions} options export options\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to an PolicyExportInterface object\n */\nexport async function exportPoliciesByPolicySet({\n policySetName,\n options = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n },\n state,\n}: {\n policySetName: string;\n options?: PolicyExportOptions;\n state: State;\n}): Promise<PolicyExportInterface> {\n debugMessage({ message: `PolicyOps.exportPolicies: start`, state });\n const exportData = createPolicyExportTemplate({ state });\n const errors = [];\n try {\n const policies = await getPoliciesByPolicySet({\n policySetId: policySetName,\n state,\n });\n for (const policyData of policies) {\n exportData.policy[policyData._id] = policyData;\n if (options.prereqs) {\n try {\n await exportPolicyPrerequisites({ policyData, exportData, state });\n } catch (error) {\n errors.push(error);\n }\n }\n if (options.deps) {\n try {\n await exportPolicyDependencies({\n policyData,\n options,\n exportData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n }\n } catch (error) {\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage({ message: `PolicyOps.exportPolicies: end`, state });\n return exportData;\n}\n\n/**\n * Helper function to import hard dependencies of a policy\n * @param {PolicySkeleton} policyData policy object\n * @param {PolicyExportInterface} exportData export data\n */\nasync function importPolicyPrerequisites({\n policyData,\n exportData,\n state,\n}: {\n policyData: PolicySkeleton;\n exportData: PolicyExportInterface;\n state: State;\n}) {\n debugMessage({\n message: `PolicyOps.importPolicyHardDependencies: start [policy=${policyData._id}]`,\n state,\n });\n const errors = [];\n try {\n // resource type\n if (exportData.resourcetype[policyData.resourceTypeUuid]) {\n try {\n debugMessage({\n message: `Importing resource type ${policyData.resourceTypeUuid}`,\n state,\n });\n await createResourceType({\n resourceTypeData:\n exportData.resourcetype[policyData.resourceTypeUuid],\n state,\n });\n } catch (error) {\n if (error.response?.status === 409)\n await updateResourceType({\n resourceTypeUuid: policyData.resourceTypeUuid,\n resourceTypeData:\n exportData.resourcetype[policyData.resourceTypeUuid],\n state,\n });\n else throw error;\n }\n }\n // policy set\n if (exportData.policyset[policyData.applicationName]) {\n try {\n debugMessage({\n message: `Importing policy set ${policyData.applicationName}`,\n state,\n });\n await createPolicySet({\n policySetData: exportData.policyset[policyData.applicationName],\n state,\n });\n } catch (error) {\n if (error.response?.status === 409)\n await updatePolicySet({\n policySetData: exportData.policyset[policyData.applicationName],\n state,\n });\n else throw error;\n }\n }\n } catch (error) {\n error.message = `Error importing hard dependencies for policy ${\n policyData._id\n }: ${error.response?.data?.message || error.message}`;\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import hard dependencies error:\\n${errorMessages}`);\n }\n debugMessage({\n message: `PolicyOps.importPolicyHardDependencies: end`,\n state,\n });\n}\n\n/**\n * Helper function to import soft dependencies of a policy\n * @param {PolicySkeleton} policyData policy object\n * @param {PolicyExportInterface} exportData export data\n */\nasync function importPolicyDependencies({\n policyData,\n exportData,\n state,\n}: {\n policyData: PolicySkeleton;\n exportData: PolicyExportInterface;\n state: State;\n}) {\n debugMessage({\n message: `PolicyOps.importPolicySoftDependencies: start [policy=${policyData._id}]`,\n state,\n });\n const errors = [];\n try {\n // scripts\n const scriptUuids = findScriptUuids(policyData.condition);\n for (const scriptUuid of scriptUuids) {\n try {\n const scriptData = exportData.script[scriptUuid];\n debugMessage({ message: `Importing script ${scriptUuid}`, state });\n await putScript({ scriptId: scriptUuid, scriptData, state });\n } catch (error) {\n debugMessage({ message: error.response?.data, state });\n error.message = `Error importing script ${scriptUuid} for policy ${\n policyData._id\n }: ${error.response?.data?.message || error.message}`;\n errors.push(error);\n }\n }\n } catch (error) {\n error.message = `Error importing soft dependencies for policy ${\n policyData._id\n }: ${error.response?.data?.message || error.message}`;\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import soft dependencies error:\\n${errorMessages}`);\n }\n debugMessage({\n message: `PolicyOps.importPolicySoftDependencies: end`,\n state,\n });\n}\n\n/**\n * Import policy by id\n * @param {string} policyId policy id\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton>} imported policy object\n */\nexport async function importPolicy({\n policyId,\n importData,\n options = { deps: true, prereqs: false },\n state,\n}: {\n policyId: string;\n importData: PolicyExportInterface;\n options?: PolicyImportOptions;\n state: State;\n}): Promise<PolicySkeleton> {\n let response = null;\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.policy)) {\n if (id === policyId) {\n try {\n const policyData = importData.policy[id];\n delete policyData._rev;\n if (options.policySetName) {\n policyData.applicationName = options.policySetName;\n }\n if (options.prereqs) {\n try {\n await importPolicyPrerequisites({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n try {\n response = await putPolicy({\n policyId: policyData._id,\n policyData,\n state,\n });\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n if (options.deps) {\n try {\n await importPolicyDependencies({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n } catch (error) {\n errors.push(error);\n }\n }\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\n${policyId} not found in import data!`);\n }\n return response;\n}\n\n/**\n * Import first policy\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton>} imported policy object\n */\nexport async function importFirstPolicy({\n importData,\n options = { deps: true, prereqs: false },\n state,\n}: {\n importData: PolicyExportInterface;\n options?: PolicyImportOptions;\n state: State;\n}): Promise<PolicySkeleton> {\n let response = null;\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.policy)) {\n try {\n const policyData = importData.policy[id];\n delete policyData._rev;\n if (options.policySetName) {\n policyData.applicationName = options.policySetName;\n }\n if (options.prereqs) {\n try {\n await importPolicyPrerequisites({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n try {\n response = await putPolicy({\n policyId: policyData._id,\n policyData,\n state,\n });\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n if (options.deps) {\n try {\n await importPolicyDependencies({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n } catch (error) {\n errors.push(error);\n }\n break;\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\nNo policy found in import data!`);\n }\n return response;\n}\n\n/**\n * Import policies\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton[]>} array of imported policy objects\n */\nexport async function importPolicies({\n importData,\n options = { deps: true, prereqs: false },\n state,\n}: {\n importData: PolicyExportInterface;\n options?: PolicyImportOptions;\n state: State;\n}): Promise<PolicySkeleton[]> {\n const response = [];\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.policy)) {\n try {\n const policyData = importData.policy[id];\n delete policyData._rev;\n if (options.policySetName) {\n policyData.applicationName = options.policySetName;\n }\n if (options.prereqs) {\n try {\n await importPolicyPrerequisites({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n try {\n response.push(\n await putPolicy({ policyId: policyData._id, policyData, state })\n );\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n if (options.deps) {\n try {\n await importPolicyDependencies({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n } catch (error) {\n errors.push(error);\n }\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\nNo policies found in import data!`);\n }\n return response;\n}\n"],"mappings":"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"}
@@ -275,7 +275,10 @@ function _exportPolicySetPrerequisites() {
275
275
  exportData,
276
276
  state
277
277
  } = _ref3;
278
- (0, _Console.debugMessage)("PolicySetOps.exportPolicySetPrerequisites: start [policySet=".concat(policySetData['name'], "]"));
278
+ (0, _Console.debugMessage)({
279
+ message: "PolicySetOps.exportPolicySetPrerequisites: start [policySet=".concat(policySetData['name'], "]"),
280
+ state
281
+ });
279
282
  var errors = [];
280
283
  // resource types
281
284
  for (var resourceTypeUuid of policySetData.resourceTypeUuids) {
@@ -294,7 +297,10 @@ function _exportPolicySetPrerequisites() {
294
297
  var errorMessages = errors.map(error => error.message).join('\n');
295
298
  throw new Error("Export dependencies error:\n".concat(errorMessages));
296
299
  }
297
- (0, _Console.debugMessage)("PolicySetOps.exportPolicySetPrerequisites: end");
300
+ (0, _Console.debugMessage)({
301
+ message: "PolicySetOps.exportPolicySetPrerequisites: end",
302
+ state
303
+ });
298
304
  });
299
305
  return _exportPolicySetPrerequisites.apply(this, arguments);
300
306
  }
@@ -315,7 +321,10 @@ function _exportPolicySetDependencies() {
315
321
  exportData,
316
322
  state
317
323
  } = _ref4;
318
- (0, _Console.debugMessage)("PolicySetOps.exportPolicySetDependencies: start [policySet=".concat(policySetData['name'], "]"));
324
+ (0, _Console.debugMessage)({
325
+ message: "PolicySetOps.exportPolicySetDependencies: start [policySet=".concat(policySetData['name'], "]"),
326
+ state
327
+ });
319
328
  var errors = [];
320
329
  // policies
321
330
  try {
@@ -349,7 +358,10 @@ function _exportPolicySetDependencies() {
349
358
  var errorMessages = errors.map(error => error.message).join('\n');
350
359
  throw new Error("Export dependencies error:\n".concat(errorMessages));
351
360
  }
352
- (0, _Console.debugMessage)("PolicySetOps.exportPolicySetDependencies: end");
361
+ (0, _Console.debugMessage)({
362
+ message: "PolicySetOps.exportPolicySetDependencies: end",
363
+ state
364
+ });
353
365
  });
354
366
  return _exportPolicySetDependencies.apply(this, arguments);
355
367
  }
@@ -372,7 +384,10 @@ function _exportPolicySet() {
372
384
  },
373
385
  state
374
386
  } = _ref5;
375
- (0, _Console.debugMessage)("PolicySetOps.exportPolicySet: start");
387
+ (0, _Console.debugMessage)({
388
+ message: "PolicySetOps.exportPolicySet: start",
389
+ state
390
+ });
376
391
  var exportData = createPolicySetExportTemplate({
377
392
  state
378
393
  });
@@ -413,7 +428,10 @@ function _exportPolicySet() {
413
428
  var errorMessages = errors.map(error => error.message).join('\n');
414
429
  throw new Error("Export error:\n".concat(errorMessages));
415
430
  }
416
- (0, _Console.debugMessage)("PolicySetOps.exportPolicySet: end");
431
+ (0, _Console.debugMessage)({
432
+ message: "PolicySetOps.exportPolicySet: end",
433
+ state
434
+ });
417
435
  return exportData;
418
436
  });
419
437
  return _exportPolicySet.apply(this, arguments);
@@ -436,7 +454,10 @@ function _exportPolicySets() {
436
454
  },
437
455
  state
438
456
  } = _ref6;
439
- (0, _Console.debugMessage)("PolicySetOps.exportPolicySet: start");
457
+ (0, _Console.debugMessage)({
458
+ message: "PolicySetOps.exportPolicySet: start",
459
+ state
460
+ });
440
461
  var exportData = createPolicySetExportTemplate({
441
462
  state
442
463
  });
@@ -478,7 +499,10 @@ function _exportPolicySets() {
478
499
  var errorMessages = errors.map(error => error.message).join('\n');
479
500
  throw new Error("Export error:\n".concat(errorMessages));
480
501
  }
481
- (0, _Console.debugMessage)("PolicySetOps.exportPolicySet: end");
502
+ (0, _Console.debugMessage)({
503
+ message: "PolicySetOps.exportPolicySet: end",
504
+ state
505
+ });
482
506
  return exportData;
483
507
  });
484
508
  return _exportPolicySets.apply(this, arguments);
@@ -498,14 +522,20 @@ function _importPolicySetPrerequisites() {
498
522
  exportData,
499
523
  state
500
524
  } = _ref7;
501
- (0, _Console.debugMessage)("PolicySetOps.importPolicySetHardDependencies: start [policySet=".concat(policySetData['name'], "]"));
525
+ (0, _Console.debugMessage)({
526
+ message: "PolicySetOps.importPolicySetHardDependencies: start [policySet=".concat(policySetData['name'], "]"),
527
+ state
528
+ });
502
529
  var errors = [];
503
530
  try {
504
531
  // resource types
505
532
  for (var resourceTypeUuid of policySetData.resourceTypeUuids) {
506
533
  if (exportData.resourcetype[resourceTypeUuid]) {
507
534
  try {
508
- (0, _Console.debugMessage)("Importing resource type ".concat(resourceTypeUuid));
535
+ (0, _Console.debugMessage)({
536
+ message: "Importing resource type ".concat(resourceTypeUuid),
537
+ state
538
+ });
509
539
  yield (0, _ResourceTypesApi.putResourceType)({
510
540
  resourceTypeUuid,
511
541
  resourceTypeData: exportData.resourcetype[resourceTypeUuid],
@@ -513,7 +543,10 @@ function _importPolicySetPrerequisites() {
513
543
  });
514
544
  } catch (error) {
515
545
  var _error$response;
516
- (0, _Console.debugMessage)((_error$response = error.response) === null || _error$response === void 0 ? void 0 : _error$response.data);
546
+ (0, _Console.debugMessage)({
547
+ message: (_error$response = error.response) === null || _error$response === void 0 ? void 0 : _error$response.data,
548
+ state
549
+ });
517
550
  errors.push(error);
518
551
  }
519
552
  } else {
@@ -528,7 +561,10 @@ function _importPolicySetPrerequisites() {
528
561
  var errorMessages = errors.map(error => error.message).join('\n');
529
562
  throw new Error("Import hard dependencies error:\n".concat(errorMessages));
530
563
  }
531
- (0, _Console.debugMessage)("PolicySetOps.importPolicySetHardDependencies: end");
564
+ (0, _Console.debugMessage)({
565
+ message: "PolicySetOps.importPolicySetHardDependencies: end",
566
+ state
567
+ });
532
568
  });
533
569
  return _importPolicySetPrerequisites.apply(this, arguments);
534
570
  }
@@ -548,7 +584,10 @@ function _importPolicySetDependencies() {
548
584
  exportData,
549
585
  state
550
586
  } = _ref8;
551
- (0, _Console.debugMessage)("PolicySetOps.importPolicySetSoftDependencies: start [policySet=".concat(policySetData['name'], "]"));
587
+ (0, _Console.debugMessage)({
588
+ message: "PolicySetOps.importPolicySetSoftDependencies: start [policySet=".concat(policySetData['name'], "]"),
589
+ state
590
+ });
552
591
  var errors = [];
553
592
  try {
554
593
  // policies
@@ -556,7 +595,10 @@ function _importPolicySetDependencies() {
556
595
  var policies = Object.values(exportData.policy).filter(policy => policy.applicationName === policySetData.name);
557
596
  for (var policyData of policies) {
558
597
  try {
559
- (0, _Console.debugMessage)("Importing policy ".concat(policyData._id));
598
+ (0, _Console.debugMessage)({
599
+ message: "Importing policy ".concat(policyData._id),
600
+ state
601
+ });
560
602
  yield (0, _PolicyOps.putPolicy)({
561
603
  policyId: policyData._id,
562
604
  policyData,
@@ -564,7 +606,10 @@ function _importPolicySetDependencies() {
564
606
  });
565
607
  } catch (error) {
566
608
  var _error$response2;
567
- (0, _Console.debugMessage)((_error$response2 = error.response) === null || _error$response2 === void 0 ? void 0 : _error$response2.data);
609
+ (0, _Console.debugMessage)({
610
+ message: (_error$response2 = error.response) === null || _error$response2 === void 0 ? void 0 : _error$response2.data,
611
+ state
612
+ });
568
613
  error.message = "Error importing policy ".concat(policyData._id, " in policy set ").concat(policySetData.name, ": ").concat(error.message);
569
614
  errors.push(error);
570
615
  }
@@ -573,7 +618,10 @@ function _importPolicySetDependencies() {
573
618
  for (var scriptUuid of scriptUuids) {
574
619
  try {
575
620
  var scriptData = exportData.script[scriptUuid];
576
- (0, _Console.debugMessage)("Importing script ".concat(scriptUuid));
621
+ (0, _Console.debugMessage)({
622
+ message: "Importing script ".concat(scriptUuid),
623
+ state
624
+ });
577
625
  yield (0, _ScriptOps.putScript)({
578
626
  scriptId: scriptUuid,
579
627
  scriptData,
@@ -581,7 +629,10 @@ function _importPolicySetDependencies() {
581
629
  });
582
630
  } catch (error) {
583
631
  var _error$response3;
584
- (0, _Console.debugMessage)((_error$response3 = error.response) === null || _error$response3 === void 0 ? void 0 : _error$response3.data);
632
+ (0, _Console.debugMessage)({
633
+ message: (_error$response3 = error.response) === null || _error$response3 === void 0 ? void 0 : _error$response3.data,
634
+ state
635
+ });
585
636
  error.message = "Error importing script ".concat(scriptUuid, " for policy ").concat(policyData._id, " in policy set ").concat(policySetData.name, ": ").concat(error.message);
586
637
  errors.push(error);
587
638
  }
@@ -599,7 +650,10 @@ function _importPolicySetDependencies() {
599
650
  var errorMessages = errors.map(error => error.message).join('\n');
600
651
  throw new Error("Import soft dependencies error:\n".concat(errorMessages));
601
652
  }
602
- (0, _Console.debugMessage)("PolicySetOps.importPolicySetSoftDependencies: end");
653
+ (0, _Console.debugMessage)({
654
+ message: "PolicySetOps.importPolicySetSoftDependencies: end",
655
+ state
656
+ });
603
657
  });
604
658
  return _importPolicySetDependencies.apply(this, arguments);
605
659
  }