@rockcarver/frodo-lib 0.12.2-4 → 0.12.2-7
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.
- package/CHANGELOG.md +13 -1
- package/cjs/api/CirclesOfTrustApi.js +17 -6
- package/cjs/api/CirclesOfTrustApi.js.map +1 -1
- package/cjs/api/EmailTemplateApi.js +10 -10
- package/cjs/api/EmailTemplateApi.js.map +1 -1
- package/cjs/api/IdmConfigApi.js +31 -16
- package/cjs/api/IdmConfigApi.js.map +1 -1
- package/cjs/api/NodeApi.js +14 -8
- package/cjs/api/NodeApi.js.map +1 -1
- package/cjs/api/NodeApi.test.js.map +1 -1
- package/cjs/api/Saml2Api.js +35 -17
- package/cjs/api/Saml2Api.js.map +1 -1
- package/cjs/api/ScriptApi.js +27 -16
- package/cjs/api/ScriptApi.js.map +1 -1
- package/cjs/api/SecretsApi.test.js.map +1 -1
- package/cjs/api/SocialIdentityProvidersApi.js +23 -8
- package/cjs/api/SocialIdentityProvidersApi.js.map +1 -1
- package/cjs/api/StartupApi.test.js.map +1 -1
- package/cjs/api/ThemeApi.js +55 -54
- package/cjs/api/ThemeApi.js.map +1 -1
- package/cjs/api/TreeApi.js +1 -1
- package/cjs/api/TreeApi.js.map +1 -1
- package/cjs/api/TreeApi.test.js.map +1 -1
- package/cjs/api/VariablesApi.test.js.map +1 -0
- package/cjs/api/utils/ApiUtils.js +79 -0
- package/cjs/api/utils/ApiUtils.js.map +1 -1
- package/cjs/index.js +5 -1
- package/cjs/index.js.map +1 -1
- package/cjs/ops/AdminOps.js +11 -11
- package/cjs/ops/AdminOps.js.map +1 -1
- package/cjs/ops/CirclesOfTrustOps.js +36 -63
- package/cjs/ops/CirclesOfTrustOps.js.map +1 -1
- package/cjs/ops/EmailTemplateOps.js +94 -82
- package/cjs/ops/EmailTemplateOps.js.map +1 -1
- package/cjs/ops/IdmOps.js +7 -7
- package/cjs/ops/IdmOps.js.map +1 -1
- package/cjs/ops/IdpOps.js +3 -3
- package/cjs/ops/IdpOps.js.map +1 -1
- package/cjs/ops/JourneyOps.js +250 -218
- package/cjs/ops/JourneyOps.js.map +1 -1
- package/cjs/ops/JourneyOps.test.js.map +1 -0
- package/cjs/ops/SamlOps.js +99 -95
- package/cjs/ops/SamlOps.js.map +1 -1
- package/cjs/ops/ScriptOps.js +6 -6
- package/cjs/ops/ScriptOps.js.map +1 -1
- package/cjs/ops/utils/OpsUtils.js.map +1 -1
- package/cjs/test/e2e/journey/baseline/ForgottenUsername.journey.json +216 -0
- package/cjs/test/e2e/journey/baseline/Login.journey.json +205 -0
- package/cjs/test/e2e/journey/baseline/PasswordGrant.journey.json +139 -0
- package/cjs/test/e2e/journey/baseline/ProgressiveProfile.journey.json +198 -0
- package/cjs/test/e2e/journey/baseline/Registration.journey.json +249 -0
- package/cjs/test/e2e/journey/baseline/ResetPassword.journey.json +268 -0
- package/cjs/test/e2e/journey/baseline/UpdatePassword.journey.json +323 -0
- package/cjs/test/e2e/journey/baseline/allAlphaJourneys.journeys.json +1520 -0
- package/cjs/test/e2e/journey/delete/ForgottenUsername.journey.json +216 -0
- package/cjs/test/e2e/journey/delete/Login.journey.json +205 -0
- package/cjs/test/e2e/journey/delete/PasswordGrant.journey.json +139 -0
- package/cjs/test/e2e/journey/delete/ProgressiveProfile.journey.json +198 -0
- package/cjs/test/e2e/journey/delete/Registration.journey.json +249 -0
- package/cjs/test/e2e/journey/delete/ResetPassword.journey.json +268 -0
- package/cjs/test/e2e/journey/delete/UpdatePassword.journey.json +323 -0
- package/cjs/test/e2e/journey/delete/deleteMe.journey.json +230 -0
- package/cjs/test/e2e/journey/list/Disabled.journey.json +43 -0
- package/cjs/test/e2e/journey/list/ForgottenUsername.journey.json +216 -0
- package/cjs/test/e2e/journey/list/Login.journey.json +205 -0
- package/cjs/test/e2e/journey/list/PasswordGrant.journey.json +139 -0
- package/cjs/test/e2e/journey/list/ProgressiveProfile.journey.json +198 -0
- package/cjs/test/e2e/journey/list/Registration.journey.json +249 -0
- package/cjs/test/e2e/journey/list/ResetPassword.journey.json +268 -0
- package/cjs/test/e2e/journey/list/UpdatePassword.journey.json +323 -0
- package/cjs/test/e2e/theme/baseline/Contrast.theme.json +95 -0
- package/cjs/test/e2e/theme/baseline/Highlander.theme.json +95 -0
- package/cjs/test/e2e/theme/baseline/Robroy.theme.json +95 -0
- package/cjs/test/e2e/theme/baseline/Starter-Theme.theme.json +94 -0
- package/cjs/test/e2e/theme/baseline/Zardoz.theme.json +95 -0
- package/cjs/test/e2e/theme/import/Contrast.theme.json +95 -0
- package/cjs/test/e2e/theme/import/Highlander.theme.json +95 -0
- package/cjs/test/e2e/theme/import/Robroy.theme.json +95 -0
- package/cjs/test/e2e/theme/import/Starter-Theme.theme.json +94 -0
- package/cjs/test/e2e/theme/import/Zardoz.default.theme.json +95 -0
- package/cjs/test/mocks/CirclesOfTrustApi/getCircleOfTrust/AzureCOT.json +17 -0
- package/cjs/test/mocks/CirclesOfTrustApi/getCirclesOfTrust/cots.json +53 -0
- package/cjs/test/mocks/ForgeRockApiMockEngine.js +341 -0
- package/cjs/test/mocks/ForgeRockApiMockEngine.js.map +1 -0
- package/cjs/test/mocks/IdmConfigApi/getConfigEntity/emailTemplate/welcome.json +18 -0
- package/cjs/test/mocks/IdmConfigApi/getConfigEntity/ui/themerealm.json +3554 -0
- package/cjs/test/mocks/JourneyOps/importJourney/FrodoTest.journey.json +1277 -0
- package/cjs/test/mocks/NodeApi/deleteNode/PageNode_1aea363f-d8d2-4711-b88d-d58fff92dbae.json +28 -0
- package/cjs/test/mocks/NodeApi/getNode/EmailTemplateNode/bf153f37-83dd-4f39-aa0c-74135430242e.json +22 -0
- package/cjs/test/mocks/NodeApi/getNode/IdentityStoreDecisionNode/fc7e47cd-c679-4211-8e05-a36654f23c67.json +32 -0
- package/cjs/test/mocks/NodeApi/getNode/PageNode/278bf084-9eea-46fe-8ce9-2600dde3b046.json +38 -0
- package/cjs/test/mocks/NodeApi/getNode/PageNode/731c5810-020b-45c8-a7fc-3c21903ae2b3.json +33 -0
- package/cjs/test/mocks/NodeApi/getNode/PageNode_1aea363f-d8d2-4711-b88d-d58fff92dbae.json +28 -0
- package/cjs/test/mocks/NodeApi/getNode/ScriptedDecisionNode/e2c39477-847a-4df2-9c5d-b449a752638b.json +23 -0
- package/cjs/test/mocks/NodeApi/getNode/SelectIdPNode/038f9b2a-36b2-489b-9e03-386c9a62ea21.json +24 -0
- package/cjs/test/mocks/NodeApi/getNode/SelectIdPNode/228a44d5-fd78-4278-8999-fdd470ea7ebf.json +24 -0
- package/cjs/test/mocks/NodeApi/getNode/SocialProviderHandlerNode/d5cc2d52-6ce4-452d-85ea-3a5b50218b67.json +22 -0
- package/cjs/test/mocks/NodeApi/getNode/ValidatedPasswordNode/804e6a68-1720-442b-926a-007e90f02782.json +17 -0
- package/cjs/test/mocks/NodeApi/getNode/ValidatedPasswordNode/dd16c8d4-baca-4ae0-bcd8-fb98b9040524.json +17 -0
- package/cjs/test/mocks/NodeApi/getNode/ValidatedUsernameNode/7a351800-fb7e-4145-903c-388554747556.json +17 -0
- package/cjs/test/mocks/NodeApi/getNode/node.json +3 -0
- package/cjs/test/mocks/NodeApi/getNode/product-Saml2Node/64157fca-bd5b-4405-a4c8-64ffd98a5461.json +30 -0
- package/cjs/test/mocks/NodeApi/getNodeTypes/types.json +687 -0
- package/cjs/test/mocks/NodeApi/getNodesByType/PageNode.json +4825 -0
- package/cjs/test/mocks/NodeApi/putNode/PageNode_0ad90971-d08a-4af3-86f3-01729572dc8f.json +26 -0
- package/cjs/test/mocks/NodeApi/putNode/PageNode_1aea363f-d8d2-4711-b88d-d58fff92dbae.json +28 -0
- package/cjs/test/mocks/Saml2Api/getProvider/aVNQQXp1cmU.json +147 -0
- package/cjs/test/mocks/Saml2Api/getProvider/dXJuOmZlZGVyYXRpb246TWljcm9zb2Z0T25saW5l.json +80 -0
- package/cjs/test/mocks/Saml2Api/getProviderByLocationAndId/hosted/aVNQQXp1cmU.json +147 -0
- package/cjs/test/mocks/Saml2Api/getProviderByLocationAndId/remote/dXJuOmZlZGVyYXRpb246TWljcm9zb2Z0T25saW5l.json +80 -0
- package/cjs/test/mocks/Saml2Api/getProviderMetadata/alpha/aVNQQXp1cmU.xml +74 -0
- package/cjs/test/mocks/Saml2Api/getProviderMetadata/alpha/dXJuOmZlZGVyYXRpb246TWljcm9zb2Z0T25saW5l.xml +56 -0
- package/cjs/test/mocks/Saml2Api/getProviders/providers.json +69 -0
- package/cjs/test/mocks/ScriptApi/getScript/23143919-6b78-40c3-b25e-beca19b229e0.json +13 -0
- package/cjs/test/mocks/ScriptApi/getScript/484e6246-dbc6-4288-97e6-54e55431402e.json +13 -0
- package/cjs/test/mocks/ScriptApi/getScript/58c824ae-84ed-4724-82cd-db128fc3f6c.json +13 -0
- package/cjs/test/mocks/ScriptApi/getScript/58d29080-4563-480b-89bb-1e7719776a21.json +13 -0
- package/cjs/test/mocks/ScriptApi/getScript/6325cf19-a49b-471e-8d26-7e4df76df0e2.json +13 -0
- package/cjs/test/mocks/ScriptApi/getScript/739bdc48-fd24-4c52-b353-88706d75558a.json +13 -0
- package/cjs/test/mocks/ScriptApi/getScript/73cecbfc-dad0-4395-be6a-6858ee3a80e5.json +13 -0
- package/cjs/test/mocks/ScriptApi/getScript/bae1d54a-e97d-4997-aa5d-c027f21af82c.json +13 -0
- package/cjs/test/mocks/ScriptApi/getScript/dbe0bf9a-72aa-49d5-8483-9db147985a47.json +13 -0
- package/cjs/test/mocks/ScriptApi/getScriptByName/ADFS Profile Normalization (JS).json +13 -0
- package/cjs/test/mocks/ScriptApi/getScriptByName/Apple Profile Normalization.json +13 -0
- package/cjs/test/mocks/ScriptApi/getScriptByName/Check Username.json +13 -0
- package/cjs/test/mocks/ScriptApi/getScriptByName/Facebook Profile Normalization.json +13 -0
- package/cjs/test/mocks/ScriptApi/getScriptByName/GitHub Profile Normalization.json +13 -0
- package/cjs/test/mocks/ScriptApi/getScriptByName/Google Profile Normalization.json +13 -0
- package/cjs/test/mocks/ScriptApi/getScriptByName/Microsoft Profile Normalization.json +13 -0
- package/cjs/test/mocks/ScriptApi/getScriptByName/Normalized Profile to Managed User.json +13 -0
- package/cjs/test/mocks/ScriptApi/getScriptByName/Okta Profile Normalization.json +13 -0
- package/cjs/test/mocks/SecretsApi/createNewVersionOfSecret/error.json +4 -0
- package/cjs/test/mocks/SecretsApi/createNewVersionOfSecret/esv-does-not-exist.txt +1 -0
- package/cjs/test/mocks/SecretsApi/createNewVersionOfSecret/esv-volkerstestsecret1.json +6 -0
- package/cjs/test/mocks/SecretsApi/deleteSecret/error.json +4 -0
- package/cjs/test/mocks/SecretsApi/deleteSecret/esv-volkerstestsecret1.json +11 -0
- package/cjs/test/mocks/SecretsApi/deleteVersionOfSecret/error.json +4 -0
- package/cjs/test/mocks/SecretsApi/deleteVersionOfSecret/esv-volkerstestsecret1_v2.json +6 -0
- package/cjs/test/mocks/SecretsApi/getSecret/esv-does-not-exist.json +4 -0
- package/cjs/test/mocks/SecretsApi/getSecret/esv-volkerstestsecret1.json +11 -0
- package/cjs/test/mocks/SecretsApi/getSecretVersions/esv-does-not-exist.json +4 -0
- package/cjs/test/mocks/SecretsApi/getSecretVersions/esv-volkerstestsecret1.json +20 -0
- package/cjs/test/mocks/SecretsApi/getSecrets/error.json +4 -0
- package/cjs/test/mocks/SecretsApi/getSecrets/secrets.json +75 -0
- package/cjs/test/mocks/SecretsApi/getVersionOfSecret/esv-does-not-exist_v2.json +4 -0
- package/cjs/test/mocks/SecretsApi/getVersionOfSecret/esv-volkerstestsecret1_v2.json +6 -0
- package/cjs/test/mocks/SecretsApi/putSecret/error.json +4 -0
- package/cjs/test/mocks/SecretsApi/putSecret/esv-volkerstestsecret1.json +11 -0
- package/cjs/test/mocks/SecretsApi/setSecretDescription/error.json +4 -0
- package/cjs/test/mocks/SecretsApi/setStatusOfVersionOfSecret/error.json +4 -0
- package/cjs/test/mocks/SecretsApi/setStatusOfVersionOfSecret/esv-does-not-exist_v2_DISABLED.json +4 -0
- package/cjs/test/mocks/SecretsApi/setStatusOfVersionOfSecret/esv-volkerstestsecret1_v2_DISABLED.json +6 -0
- package/cjs/test/mocks/SocialIdentityProvidersApi/getProviderByTypeAndId/adfs.json +44 -0
- package/cjs/test/mocks/SocialIdentityProvidersApi/getProviderByTypeAndId/apple-stoyan.json +46 -0
- package/cjs/test/mocks/SocialIdentityProvidersApi/getProviderByTypeAndId/apple_web.json +46 -0
- package/cjs/test/mocks/SocialIdentityProvidersApi/getProviderByTypeAndId/azure.json +36 -0
- package/cjs/test/mocks/SocialIdentityProvidersApi/getProviderByTypeAndId/facebook.json +36 -0
- package/cjs/test/mocks/SocialIdentityProvidersApi/getProviderByTypeAndId/github.json +34 -0
- package/cjs/test/mocks/SocialIdentityProvidersApi/getProviderByTypeAndId/google.json +44 -0
- package/cjs/test/mocks/SocialIdentityProvidersApi/getProviderByTypeAndId/okta-trial-5735851.json +37 -0
- package/cjs/test/mocks/SocialIdentityProvidersApi/getSocialIdentityProviders/socialIdentityProviders.json +327 -0
- package/cjs/test/mocks/StartupApi/getStatus/ready.json +1 -0
- package/cjs/test/mocks/StartupApi/getStatus/restarting.json +1 -0
- package/cjs/test/mocks/StartupApi/initiateRestart/ready.json +1 -0
- package/cjs/test/mocks/StartupApi/initiateRestart/restarting.json +1 -0
- package/cjs/test/mocks/ThemeApi/getThemes/alphaThemes.json +3047 -0
- package/cjs/test/mocks/TreeApi/deleteTree/FrodoTest.json +99 -0
- package/cjs/test/mocks/TreeApi/getTree/FrodoTest.json +99 -0
- package/cjs/test/mocks/TreeApi/getTrees/trees.json +8494 -0
- package/cjs/test/mocks/TreeApi/putTree/FrodoTest.json +99 -0
- package/cjs/test/mocks/TreeApi/putTree/Invalid_invalid-attribute.json +10 -0
- package/cjs/test/mocks/TreeApi/putTree/Invalid_invalid-nodes.json +12 -0
- package/cjs/test/mocks/TreeApi/putTree/Invalid_no-entry-node.json +9 -0
- package/cjs/test/mocks/TreeApi/putTree/Invalid_trailing-data.txt +11 -0
- package/esm/api/CirclesOfTrustApi.mjs +17 -6
- package/esm/api/EmailTemplateApi.mjs +10 -10
- package/esm/api/IdmConfigApi.mjs +31 -16
- package/esm/api/NodeApi.mjs +14 -8
- package/esm/api/NodeApi.test.mjs +834 -8
- package/esm/api/Saml2Api.mjs +35 -17
- package/esm/api/ScriptApi.mjs +27 -16
- package/esm/api/SecretsApi.test.mjs +21 -21
- package/esm/api/SocialIdentityProvidersApi.mjs +23 -8
- package/esm/api/StartupApi.test.mjs +6 -6
- package/esm/api/ThemeApi.mjs +55 -54
- package/esm/api/TreeApi.mjs +1 -1
- package/esm/api/TreeApi.test.mjs +21 -9
- package/esm/api/VariablesApi.test.mjs +229 -0
- package/esm/api/utils/ApiUtils.mjs +77 -0
- package/esm/index.mjs +2 -1
- package/esm/ops/AdminOps.mjs +11 -11
- package/esm/ops/CirclesOfTrustOps.mjs +20 -35
- package/esm/ops/EmailTemplateOps.mjs +35 -27
- package/esm/ops/IdmOps.mjs +7 -7
- package/esm/ops/IdpOps.mjs +3 -3
- package/esm/ops/JourneyOps.mjs +185 -129
- package/esm/ops/JourneyOps.test.mjs +195 -0
- package/esm/ops/SamlOps.mjs +104 -89
- package/esm/ops/ScriptOps.mjs +6 -6
- package/esm/test/e2e/journey/baseline/ForgottenUsername.journey.json +216 -0
- package/esm/test/e2e/journey/baseline/Login.journey.json +205 -0
- package/esm/test/e2e/journey/baseline/PasswordGrant.journey.json +139 -0
- package/esm/test/e2e/journey/baseline/ProgressiveProfile.journey.json +198 -0
- package/esm/test/e2e/journey/baseline/Registration.journey.json +249 -0
- package/esm/test/e2e/journey/baseline/ResetPassword.journey.json +268 -0
- package/esm/test/e2e/journey/baseline/UpdatePassword.journey.json +323 -0
- package/esm/test/e2e/journey/baseline/allAlphaJourneys.journeys.json +1520 -0
- package/esm/test/e2e/journey/delete/ForgottenUsername.journey.json +216 -0
- package/esm/test/e2e/journey/delete/Login.journey.json +205 -0
- package/esm/test/e2e/journey/delete/PasswordGrant.journey.json +139 -0
- package/esm/test/e2e/journey/delete/ProgressiveProfile.journey.json +198 -0
- package/esm/test/e2e/journey/delete/Registration.journey.json +249 -0
- package/esm/test/e2e/journey/delete/ResetPassword.journey.json +268 -0
- package/esm/test/e2e/journey/delete/UpdatePassword.journey.json +323 -0
- package/esm/test/e2e/journey/delete/deleteMe.journey.json +230 -0
- package/esm/test/e2e/journey/list/Disabled.journey.json +43 -0
- package/esm/test/e2e/journey/list/ForgottenUsername.journey.json +216 -0
- package/esm/test/e2e/journey/list/Login.journey.json +205 -0
- package/esm/test/e2e/journey/list/PasswordGrant.journey.json +139 -0
- package/esm/test/e2e/journey/list/ProgressiveProfile.journey.json +198 -0
- package/esm/test/e2e/journey/list/Registration.journey.json +249 -0
- package/esm/test/e2e/journey/list/ResetPassword.journey.json +268 -0
- package/esm/test/e2e/journey/list/UpdatePassword.journey.json +323 -0
- package/esm/test/e2e/theme/baseline/Contrast.theme.json +95 -0
- package/esm/test/e2e/theme/baseline/Highlander.theme.json +95 -0
- package/esm/test/e2e/theme/baseline/Robroy.theme.json +95 -0
- package/esm/test/e2e/theme/baseline/Starter-Theme.theme.json +94 -0
- package/esm/test/e2e/theme/baseline/Zardoz.theme.json +95 -0
- package/esm/test/e2e/theme/import/Contrast.theme.json +95 -0
- package/esm/test/e2e/theme/import/Highlander.theme.json +95 -0
- package/esm/test/e2e/theme/import/Robroy.theme.json +95 -0
- package/esm/test/e2e/theme/import/Starter-Theme.theme.json +94 -0
- package/esm/test/e2e/theme/import/Zardoz.default.theme.json +95 -0
- package/esm/test/mocks/CirclesOfTrustApi/getCircleOfTrust/AzureCOT.json +17 -0
- package/esm/test/mocks/CirclesOfTrustApi/getCirclesOfTrust/cots.json +53 -0
- package/esm/test/mocks/ForgeRockApiMockEngine.mjs +272 -0
- package/esm/test/mocks/IdmConfigApi/getConfigEntity/emailTemplate/welcome.json +18 -0
- package/esm/test/mocks/IdmConfigApi/getConfigEntity/ui/themerealm.json +3554 -0
- package/esm/test/mocks/JourneyOps/importJourney/FrodoTest.journey.json +1277 -0
- package/esm/test/mocks/NodeApi/deleteNode/PageNode_1aea363f-d8d2-4711-b88d-d58fff92dbae.json +28 -0
- package/esm/test/mocks/NodeApi/getNode/EmailTemplateNode/bf153f37-83dd-4f39-aa0c-74135430242e.json +22 -0
- package/esm/test/mocks/NodeApi/getNode/IdentityStoreDecisionNode/fc7e47cd-c679-4211-8e05-a36654f23c67.json +32 -0
- package/esm/test/mocks/NodeApi/getNode/PageNode/278bf084-9eea-46fe-8ce9-2600dde3b046.json +38 -0
- package/esm/test/mocks/NodeApi/getNode/PageNode/731c5810-020b-45c8-a7fc-3c21903ae2b3.json +33 -0
- package/esm/test/mocks/NodeApi/getNode/PageNode_1aea363f-d8d2-4711-b88d-d58fff92dbae.json +28 -0
- package/esm/test/mocks/NodeApi/getNode/ScriptedDecisionNode/e2c39477-847a-4df2-9c5d-b449a752638b.json +23 -0
- package/esm/test/mocks/NodeApi/getNode/SelectIdPNode/038f9b2a-36b2-489b-9e03-386c9a62ea21.json +24 -0
- package/esm/test/mocks/NodeApi/getNode/SelectIdPNode/228a44d5-fd78-4278-8999-fdd470ea7ebf.json +24 -0
- package/esm/test/mocks/NodeApi/getNode/SocialProviderHandlerNode/d5cc2d52-6ce4-452d-85ea-3a5b50218b67.json +22 -0
- package/esm/test/mocks/NodeApi/getNode/ValidatedPasswordNode/804e6a68-1720-442b-926a-007e90f02782.json +17 -0
- package/esm/test/mocks/NodeApi/getNode/ValidatedPasswordNode/dd16c8d4-baca-4ae0-bcd8-fb98b9040524.json +17 -0
- package/esm/test/mocks/NodeApi/getNode/ValidatedUsernameNode/7a351800-fb7e-4145-903c-388554747556.json +17 -0
- package/esm/test/mocks/NodeApi/getNode/node.json +3 -0
- package/esm/test/mocks/NodeApi/getNode/product-Saml2Node/64157fca-bd5b-4405-a4c8-64ffd98a5461.json +30 -0
- package/esm/test/mocks/NodeApi/getNodeTypes/types.json +687 -0
- package/esm/test/mocks/NodeApi/getNodesByType/PageNode.json +4825 -0
- package/esm/test/mocks/NodeApi/putNode/PageNode_0ad90971-d08a-4af3-86f3-01729572dc8f.json +26 -0
- package/esm/test/mocks/NodeApi/putNode/PageNode_1aea363f-d8d2-4711-b88d-d58fff92dbae.json +28 -0
- package/esm/test/mocks/Saml2Api/getProvider/aVNQQXp1cmU.json +147 -0
- package/esm/test/mocks/Saml2Api/getProvider/dXJuOmZlZGVyYXRpb246TWljcm9zb2Z0T25saW5l.json +80 -0
- package/esm/test/mocks/Saml2Api/getProviderByLocationAndId/hosted/aVNQQXp1cmU.json +147 -0
- package/esm/test/mocks/Saml2Api/getProviderByLocationAndId/remote/dXJuOmZlZGVyYXRpb246TWljcm9zb2Z0T25saW5l.json +80 -0
- package/esm/test/mocks/Saml2Api/getProviderMetadata/alpha/aVNQQXp1cmU.xml +74 -0
- package/esm/test/mocks/Saml2Api/getProviderMetadata/alpha/dXJuOmZlZGVyYXRpb246TWljcm9zb2Z0T25saW5l.xml +56 -0
- package/esm/test/mocks/Saml2Api/getProviders/providers.json +69 -0
- package/esm/test/mocks/ScriptApi/getScript/23143919-6b78-40c3-b25e-beca19b229e0.json +13 -0
- package/esm/test/mocks/ScriptApi/getScript/484e6246-dbc6-4288-97e6-54e55431402e.json +13 -0
- package/esm/test/mocks/ScriptApi/getScript/58c824ae-84ed-4724-82cd-db128fc3f6c.json +13 -0
- package/esm/test/mocks/ScriptApi/getScript/58d29080-4563-480b-89bb-1e7719776a21.json +13 -0
- package/esm/test/mocks/ScriptApi/getScript/6325cf19-a49b-471e-8d26-7e4df76df0e2.json +13 -0
- package/esm/test/mocks/ScriptApi/getScript/739bdc48-fd24-4c52-b353-88706d75558a.json +13 -0
- package/esm/test/mocks/ScriptApi/getScript/73cecbfc-dad0-4395-be6a-6858ee3a80e5.json +13 -0
- package/esm/test/mocks/ScriptApi/getScript/bae1d54a-e97d-4997-aa5d-c027f21af82c.json +13 -0
- package/esm/test/mocks/ScriptApi/getScript/dbe0bf9a-72aa-49d5-8483-9db147985a47.json +13 -0
- package/esm/test/mocks/ScriptApi/getScriptByName/ADFS Profile Normalization (JS).json +13 -0
- package/esm/test/mocks/ScriptApi/getScriptByName/Apple Profile Normalization.json +13 -0
- package/esm/test/mocks/ScriptApi/getScriptByName/Check Username.json +13 -0
- package/esm/test/mocks/ScriptApi/getScriptByName/Facebook Profile Normalization.json +13 -0
- package/esm/test/mocks/ScriptApi/getScriptByName/GitHub Profile Normalization.json +13 -0
- package/esm/test/mocks/ScriptApi/getScriptByName/Google Profile Normalization.json +13 -0
- package/esm/test/mocks/ScriptApi/getScriptByName/Microsoft Profile Normalization.json +13 -0
- package/esm/test/mocks/ScriptApi/getScriptByName/Normalized Profile to Managed User.json +13 -0
- package/esm/test/mocks/ScriptApi/getScriptByName/Okta Profile Normalization.json +13 -0
- package/esm/test/mocks/SecretsApi/createNewVersionOfSecret/error.json +4 -0
- package/esm/test/mocks/SecretsApi/createNewVersionOfSecret/esv-does-not-exist.txt +1 -0
- package/esm/test/mocks/SecretsApi/createNewVersionOfSecret/esv-volkerstestsecret1.json +6 -0
- package/esm/test/mocks/SecretsApi/deleteSecret/error.json +4 -0
- package/esm/test/mocks/SecretsApi/deleteSecret/esv-volkerstestsecret1.json +11 -0
- package/esm/test/mocks/SecretsApi/deleteVersionOfSecret/error.json +4 -0
- package/esm/test/mocks/SecretsApi/deleteVersionOfSecret/esv-volkerstestsecret1_v2.json +6 -0
- package/esm/test/mocks/SecretsApi/getSecret/esv-does-not-exist.json +4 -0
- package/esm/test/mocks/SecretsApi/getSecret/esv-volkerstestsecret1.json +11 -0
- package/esm/test/mocks/SecretsApi/getSecretVersions/esv-does-not-exist.json +4 -0
- package/esm/test/mocks/SecretsApi/getSecretVersions/esv-volkerstestsecret1.json +20 -0
- package/esm/test/mocks/SecretsApi/getSecrets/error.json +4 -0
- package/esm/test/mocks/SecretsApi/getSecrets/secrets.json +75 -0
- package/esm/test/mocks/SecretsApi/getVersionOfSecret/esv-does-not-exist_v2.json +4 -0
- package/esm/test/mocks/SecretsApi/getVersionOfSecret/esv-volkerstestsecret1_v2.json +6 -0
- package/esm/test/mocks/SecretsApi/putSecret/error.json +4 -0
- package/esm/test/mocks/SecretsApi/putSecret/esv-volkerstestsecret1.json +11 -0
- package/esm/test/mocks/SecretsApi/setSecretDescription/error.json +4 -0
- package/esm/test/mocks/SecretsApi/setStatusOfVersionOfSecret/error.json +4 -0
- package/esm/test/mocks/SecretsApi/setStatusOfVersionOfSecret/esv-does-not-exist_v2_DISABLED.json +4 -0
- package/esm/test/mocks/SecretsApi/setStatusOfVersionOfSecret/esv-volkerstestsecret1_v2_DISABLED.json +6 -0
- package/esm/test/mocks/SocialIdentityProvidersApi/getProviderByTypeAndId/adfs.json +44 -0
- package/esm/test/mocks/SocialIdentityProvidersApi/getProviderByTypeAndId/apple-stoyan.json +46 -0
- package/esm/test/mocks/SocialIdentityProvidersApi/getProviderByTypeAndId/apple_web.json +46 -0
- package/esm/test/mocks/SocialIdentityProvidersApi/getProviderByTypeAndId/azure.json +36 -0
- package/esm/test/mocks/SocialIdentityProvidersApi/getProviderByTypeAndId/facebook.json +36 -0
- package/esm/test/mocks/SocialIdentityProvidersApi/getProviderByTypeAndId/github.json +34 -0
- package/esm/test/mocks/SocialIdentityProvidersApi/getProviderByTypeAndId/google.json +44 -0
- package/esm/test/mocks/SocialIdentityProvidersApi/getProviderByTypeAndId/okta-trial-5735851.json +37 -0
- package/esm/test/mocks/SocialIdentityProvidersApi/getSocialIdentityProviders/socialIdentityProviders.json +327 -0
- package/esm/test/mocks/StartupApi/getStatus/ready.json +1 -0
- package/esm/test/mocks/StartupApi/getStatus/restarting.json +1 -0
- package/esm/test/mocks/StartupApi/initiateRestart/ready.json +1 -0
- package/esm/test/mocks/StartupApi/initiateRestart/restarting.json +1 -0
- package/esm/test/mocks/ThemeApi/getThemes/alphaThemes.json +3047 -0
- package/esm/test/mocks/TreeApi/deleteTree/FrodoTest.json +99 -0
- package/esm/test/mocks/TreeApi/getTree/FrodoTest.json +99 -0
- package/esm/test/mocks/TreeApi/getTrees/trees.json +8494 -0
- package/esm/test/mocks/TreeApi/putTree/FrodoTest.json +99 -0
- package/esm/test/mocks/TreeApi/putTree/Invalid_invalid-attribute.json +10 -0
- package/esm/test/mocks/TreeApi/putTree/Invalid_invalid-nodes.json +12 -0
- package/esm/test/mocks/TreeApi/putTree/Invalid_no-entry-node.json +9 -0
- package/esm/test/mocks/TreeApi/putTree/Invalid_trailing-data.txt +11 -0
- package/package.json +1 -1
- package/types/api/CirclesOfTrustApi.d.ts +4 -4
- package/types/api/CirclesOfTrustApi.d.ts.map +1 -1
- package/types/api/EmailTemplateApi.d.ts +9 -9
- package/types/api/EmailTemplateApi.d.ts.map +1 -1
- package/types/api/IdmConfigApi.d.ts +12 -12
- package/types/api/IdmConfigApi.d.ts.map +1 -1
- package/types/api/NodeApi.d.ts +2 -2
- package/types/api/NodeApi.d.ts.map +1 -1
- package/types/api/Saml2Api.d.ts +15 -15
- package/types/api/Saml2Api.d.ts.map +1 -1
- package/types/api/ScriptApi.d.ts +8 -8
- package/types/api/ScriptApi.d.ts.map +1 -1
- package/types/api/SocialIdentityProvidersApi.d.ts +6 -6
- package/types/api/SocialIdentityProvidersApi.d.ts.map +1 -1
- package/types/api/ThemeApi.d.ts +22 -22
- package/types/api/ThemeApi.d.ts.map +1 -1
- package/types/api/TreeApi.d.ts.map +1 -1
- package/types/api/utils/ApiUtils.d.ts +14 -0
- package/types/api/utils/ApiUtils.d.ts.map +1 -1
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -1
- package/types/ops/AdminOps.d.ts.map +1 -1
- package/types/ops/CirclesOfTrustOps.d.ts.map +1 -1
- package/types/ops/EmailTemplateOps.d.ts.map +1 -1
- package/types/ops/IdmOps.d.ts.map +1 -1
- package/types/ops/IdpOps.d.ts.map +1 -1
- package/types/ops/JourneyOps.d.ts +14 -8
- package/types/ops/JourneyOps.d.ts.map +1 -1
- package/types/ops/SamlOps.d.ts.map +1 -1
- package/types/ops/ScriptOps.d.ts.map +1 -1
- package/types/ops/utils/OpsUtils.d.ts +1 -1
- package/types/ops/utils/OpsUtils.d.ts.map +1 -1
- package/types/test/mocks/ForgeRockApiMockEngine.d.ts +35 -0
- package/types/test/mocks/ForgeRockApiMockEngine.d.ts.map +1 -0
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.12.2-7] - 2022-09-12
|
|
11
|
+
|
|
12
|
+
## [0.12.2-6] - 2022-09-12
|
|
13
|
+
|
|
14
|
+
## [0.12.2-5] - 2022-09-09
|
|
15
|
+
|
|
10
16
|
## [0.12.2-4] - 2022-09-09
|
|
11
17
|
|
|
12
18
|
## [0.12.2-3] - 2022-09-09
|
|
@@ -461,7 +467,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
461
467
|
- Fixed problem with adding connection profiles
|
|
462
468
|
- Miscellaneous bug fixes
|
|
463
469
|
|
|
464
|
-
[Unreleased]: https://github.com/rockcarver/frodo-lib/compare/v0.12.2-
|
|
470
|
+
[Unreleased]: https://github.com/rockcarver/frodo-lib/compare/v0.12.2-7...HEAD
|
|
471
|
+
|
|
472
|
+
[0.12.2-7]: https://github.com/rockcarver/frodo-lib/compare/v0.12.2-6...v0.12.2-7
|
|
473
|
+
|
|
474
|
+
[0.12.2-6]: https://github.com/rockcarver/frodo-lib/compare/v0.12.2-5...v0.12.2-6
|
|
475
|
+
|
|
476
|
+
[0.12.2-5]: https://github.com/rockcarver/frodo-lib/compare/v0.12.2-4...v0.12.2-5
|
|
465
477
|
|
|
466
478
|
[0.12.2-4]: https://github.com/rockcarver/frodo-lib/compare/v0.12.2-3...v0.12.2-4
|
|
467
479
|
|
|
@@ -30,9 +30,8 @@ var queryAllCirclesOfTrustURLTemplate = '%s/json%s/realm-config/federation/circl
|
|
|
30
30
|
var apiVersion = 'protocol=2.1,resource=1.0';
|
|
31
31
|
|
|
32
32
|
var getApiConfig = () => {
|
|
33
|
-
var configPath = (0, _ApiUtils.getCurrentRealmPath)();
|
|
34
33
|
return {
|
|
35
|
-
path: "".concat(
|
|
34
|
+
path: "/json".concat((0, _ApiUtils.getCurrentRealmPath)(), "/realm-config/federation/circlesoftrust"),
|
|
36
35
|
apiVersion
|
|
37
36
|
};
|
|
38
37
|
};
|
|
@@ -56,9 +55,12 @@ function _getCirclesOfTrust() {
|
|
|
56
55
|
_getCirclesOfTrust = _asyncToGenerator(function* () {
|
|
57
56
|
var urlString = _util.default.format(queryAllCirclesOfTrustURLTemplate, _SessionStorage.default.session.getTenant(), (0, _ApiUtils.getCurrentRealmPath)());
|
|
58
57
|
|
|
59
|
-
|
|
58
|
+
var {
|
|
59
|
+
data
|
|
60
|
+
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).get(urlString, {
|
|
60
61
|
withCredentials: true
|
|
61
62
|
});
|
|
63
|
+
return data;
|
|
62
64
|
});
|
|
63
65
|
return _getCirclesOfTrust.apply(this, arguments);
|
|
64
66
|
}
|
|
@@ -77,9 +79,12 @@ function _getCircleOfTrust() {
|
|
|
77
79
|
_getCircleOfTrust = _asyncToGenerator(function* (cotId) {
|
|
78
80
|
var urlString = _util.default.format(circleOfTrustByIdURLTemplate, _SessionStorage.default.session.getTenant(), (0, _ApiUtils.getCurrentRealmPath)(), cotId);
|
|
79
81
|
|
|
80
|
-
|
|
82
|
+
var {
|
|
83
|
+
data
|
|
84
|
+
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).get(urlString, {
|
|
81
85
|
withCredentials: true
|
|
82
86
|
});
|
|
87
|
+
return data;
|
|
83
88
|
});
|
|
84
89
|
return _getCircleOfTrust.apply(this, arguments);
|
|
85
90
|
}
|
|
@@ -101,9 +106,12 @@ function _createCircleOfTrust() {
|
|
|
101
106
|
|
|
102
107
|
var urlString = _util.default.format(createCircleOfTrustURLTemplate, _SessionStorage.default.session.getTenant(), (0, _ApiUtils.getCurrentRealmPath)());
|
|
103
108
|
|
|
104
|
-
|
|
109
|
+
var {
|
|
110
|
+
data
|
|
111
|
+
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).post(urlString, postData, {
|
|
105
112
|
withCredentials: true
|
|
106
113
|
});
|
|
114
|
+
return data;
|
|
107
115
|
});
|
|
108
116
|
return _createCircleOfTrust.apply(this, arguments);
|
|
109
117
|
}
|
|
@@ -116,9 +124,12 @@ function _updateCircleOfTrust() {
|
|
|
116
124
|
_updateCircleOfTrust = _asyncToGenerator(function* (cotId, cotData) {
|
|
117
125
|
var urlString = _util.default.format(circleOfTrustByIdURLTemplate, _SessionStorage.default.session.getTenant(), (0, _ApiUtils.getCurrentRealmPath)(), cotId);
|
|
118
126
|
|
|
119
|
-
|
|
127
|
+
var {
|
|
128
|
+
data
|
|
129
|
+
} = yield (0, _BaseApi.generateAmApi)(getApiConfig()).put(urlString, cotData, {
|
|
120
130
|
withCredentials: true
|
|
121
131
|
});
|
|
132
|
+
return data;
|
|
122
133
|
});
|
|
123
134
|
return _updateCircleOfTrust.apply(this, arguments);
|
|
124
135
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CirclesOfTrustApi.js","names":["circleOfTrustByIdURLTemplate","createCircleOfTrustURLTemplate","queryAllCirclesOfTrustURLTemplate","apiVersion","getApiConfig","
|
|
1
|
+
{"version":3,"file":"CirclesOfTrustApi.js","names":["circleOfTrustByIdURLTemplate","createCircleOfTrustURLTemplate","queryAllCirclesOfTrustURLTemplate","apiVersion","getApiConfig","path","getCurrentRealmPath","getCirclesOfTrust","urlString","util","format","storage","session","getTenant","data","generateAmApi","get","withCredentials","getCircleOfTrust","cotId","createCircleOfTrust","cotData","postData","_","cloneDeep","post","updateCircleOfTrust","put"],"sources":["api/CirclesOfTrustApi.ts"],"sourcesContent":["import util from 'util';\nimport _ from 'lodash';\nimport { generateAmApi } from './BaseApi';\nimport { getCurrentRealmPath } from './utils/ApiUtils';\nimport storage from '../storage/SessionStorage';\n\nconst circleOfTrustByIdURLTemplate =\n '%s/json%s/realm-config/federation/circlesoftrust/%s';\nconst createCircleOfTrustURLTemplate =\n '%s/json%s/realm-config/federation/circlesoftrust/?_action=create';\nconst queryAllCirclesOfTrustURLTemplate =\n '%s/json%s/realm-config/federation/circlesoftrust?_queryFilter=true';\nconst apiVersion = 'protocol=2.1,resource=1.0';\nconst getApiConfig = () => {\n return {\n path: `/json${getCurrentRealmPath()}/realm-config/federation/circlesoftrust`,\n apiVersion,\n };\n};\n\n/**\n * Get all SAML2 circles of trust\n * @returns {Promise} a promise that resolves to an array of circles of trust objects\n */\nexport async function getCirclesOfTrust() {\n const urlString = util.format(\n queryAllCirclesOfTrustURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath()\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\n/**\n * Get SAML2 circle of trust by id/name\n * @param {String} cotId Circle of trust id/name\n * @returns {Promise} a promise that resolves to a saml2 circle of trust object\n */\nexport async function getCircleOfTrust(cotId) {\n const urlString = util.format(\n circleOfTrustByIdURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n cotId\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\n/**\n * Create a SAML2 circle of trust\n * @param {Object} cotData Object representing a SAML circle of trust\n * @returns {Promise} a promise that resolves to a saml2 circle of trust object\n */\nexport async function createCircleOfTrust(cotData) {\n const postData = _.cloneDeep(cotData);\n const urlString = util.format(\n createCircleOfTrustURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath()\n );\n const { data } = await generateAmApi(getApiConfig()).post(\n urlString,\n postData,\n {\n withCredentials: true,\n }\n );\n return data;\n}\n\n/**\n * Update SAML2 circle of trust\n * @param {String} cotId Entity provider location (hosted or remote)\n * @param {Object} cotData Object representing a SAML2 circle of trust\n * @returns {Promise} a promise that resolves to a saml2 circle of trust object\n */\nexport async function updateCircleOfTrust(cotId, cotData) {\n const urlString = util.format(\n circleOfTrustByIdURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n cotId\n );\n const { data } = await generateAmApi(getApiConfig()).put(urlString, cotData, {\n withCredentials: true,\n });\n return data;\n}\n"],"mappings":";;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;;;AAEA,IAAMA,4BAA4B,GAChC,qDADF;AAEA,IAAMC,8BAA8B,GAClC,kEADF;AAEA,IAAMC,iCAAiC,GACrC,oEADF;AAEA,IAAMC,UAAU,GAAG,2BAAnB;;AACA,IAAMC,YAAY,GAAG,MAAM;EACzB,OAAO;IACLC,IAAI,iBAAU,IAAAC,6BAAA,GAAV,4CADC;IAELH;EAFK,CAAP;AAID,CALD;AAOA;AACA;AACA;AACA;;;SACsBI,iB;;;AAYtB;AACA;AACA;AACA;AACA;;;;yCAhBO,aAAmC;IACxC,IAAMC,SAAS,GAAGC,aAAA,CAAKC,MAAL,CAChBR,iCADgB,EAEhBS,uBAAA,CAAQC,OAAR,CAAgBC,SAAhB,EAFgB,EAGhB,IAAAP,6BAAA,GAHgB,CAAlB;;IAKA,IAAM;MAAEQ;IAAF,UAAiB,IAAAC,sBAAA,EAAcX,YAAY,EAA1B,EAA8BY,GAA9B,CAAkCR,SAAlC,EAA6C;MAClES,eAAe,EAAE;IADiD,CAA7C,CAAvB;IAGA,OAAOH,IAAP;EACD,C;;;;SAOqBI,gB;;;AAatB;AACA;AACA;AACA;AACA;;;;wCAjBO,WAAgCC,KAAhC,EAAuC;IAC5C,IAAMX,SAAS,GAAGC,aAAA,CAAKC,MAAL,CAChBV,4BADgB,EAEhBW,uBAAA,CAAQC,OAAR,CAAgBC,SAAhB,EAFgB,EAGhB,IAAAP,6BAAA,GAHgB,EAIhBa,KAJgB,CAAlB;;IAMA,IAAM;MAAEL;IAAF,UAAiB,IAAAC,sBAAA,EAAcX,YAAY,EAA1B,EAA8BY,GAA9B,CAAkCR,SAAlC,EAA6C;MAClES,eAAe,EAAE;IADiD,CAA7C,CAAvB;IAGA,OAAOH,IAAP;EACD,C;;;;SAOqBM,mB;;;AAiBtB;AACA;AACA;AACA;AACA;AACA;;;;2CAtBO,WAAmCC,OAAnC,EAA4C;IACjD,IAAMC,QAAQ,GAAGC,eAAA,CAAEC,SAAF,CAAYH,OAAZ,CAAjB;;IACA,IAAMb,SAAS,GAAGC,aAAA,CAAKC,MAAL,CAChBT,8BADgB,EAEhBU,uBAAA,CAAQC,OAAR,CAAgBC,SAAhB,EAFgB,EAGhB,IAAAP,6BAAA,GAHgB,CAAlB;;IAKA,IAAM;MAAEQ;IAAF,UAAiB,IAAAC,sBAAA,EAAcX,YAAY,EAA1B,EAA8BqB,IAA9B,CACrBjB,SADqB,EAErBc,QAFqB,EAGrB;MACEL,eAAe,EAAE;IADnB,CAHqB,CAAvB;IAOA,OAAOH,IAAP;EACD,C;;;;SAQqBY,mB;;;;;2CAAf,WAAmCP,KAAnC,EAA0CE,OAA1C,EAAmD;IACxD,IAAMb,SAAS,GAAGC,aAAA,CAAKC,MAAL,CAChBV,4BADgB,EAEhBW,uBAAA,CAAQC,OAAR,CAAgBC,SAAhB,EAFgB,EAGhB,IAAAP,6BAAA,GAHgB,EAIhBa,KAJgB,CAAlB;;IAMA,IAAM;MAAEL;IAAF,UAAiB,IAAAC,sBAAA,EAAcX,YAAY,EAA1B,EAA8BuB,GAA9B,CAAkCnB,SAAlC,EAA6Ca,OAA7C,EAAsD;MAC3EJ,eAAe,EAAE;IAD0D,CAAtD,CAAvB;IAGA,OAAOH,IAAP;EACD,C"}
|
|
@@ -20,7 +20,7 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar
|
|
|
20
20
|
var EMAIL_TEMPLATE_TYPE = 'emailTemplate';
|
|
21
21
|
/**
|
|
22
22
|
* Get all email templates
|
|
23
|
-
* @returns {Promise} a promise that resolves to an
|
|
23
|
+
* @returns {Promise} a promise that resolves to an array of email template objects
|
|
24
24
|
*/
|
|
25
25
|
|
|
26
26
|
exports.EMAIL_TEMPLATE_TYPE = EMAIL_TEMPLATE_TYPE;
|
|
@@ -30,8 +30,8 @@ function getEmailTemplates() {
|
|
|
30
30
|
}
|
|
31
31
|
/**
|
|
32
32
|
* Get email template
|
|
33
|
-
* @param {
|
|
34
|
-
* @returns {Promise} a promise that resolves
|
|
33
|
+
* @param {string} templateId id/name of the email template without the type prefix
|
|
34
|
+
* @returns {Promise} a promise that resolves an email template object
|
|
35
35
|
*/
|
|
36
36
|
|
|
37
37
|
|
|
@@ -47,15 +47,15 @@ function getEmailTemplate(_x) {
|
|
|
47
47
|
}
|
|
48
48
|
/**
|
|
49
49
|
* Put email template
|
|
50
|
-
* @param {
|
|
51
|
-
* @param {Object}
|
|
52
|
-
* @returns {Promise} a promise that resolves to an
|
|
50
|
+
* @param {string} templateId id/name of the email template without the type prefix
|
|
51
|
+
* @param {Object} templateData email template object
|
|
52
|
+
* @returns {Promise} a promise that resolves to an email template object
|
|
53
53
|
*/
|
|
54
54
|
|
|
55
55
|
|
|
56
56
|
function _getEmailTemplate() {
|
|
57
|
-
_getEmailTemplate = _asyncToGenerator(function* (
|
|
58
|
-
return (0, _IdmConfigApi.getConfigEntity)("".concat(EMAIL_TEMPLATE_TYPE, "/").concat(
|
|
57
|
+
_getEmailTemplate = _asyncToGenerator(function* (templateId) {
|
|
58
|
+
return (0, _IdmConfigApi.getConfigEntity)("".concat(EMAIL_TEMPLATE_TYPE, "/").concat(templateId));
|
|
59
59
|
});
|
|
60
60
|
return _getEmailTemplate.apply(this, arguments);
|
|
61
61
|
}
|
|
@@ -65,8 +65,8 @@ function putEmailTemplate(_x2, _x3) {
|
|
|
65
65
|
}
|
|
66
66
|
|
|
67
67
|
function _putEmailTemplate() {
|
|
68
|
-
_putEmailTemplate = _asyncToGenerator(function* (
|
|
69
|
-
return (0, _IdmConfigApi.putConfigEntity)("".concat(EMAIL_TEMPLATE_TYPE, "/").concat(
|
|
68
|
+
_putEmailTemplate = _asyncToGenerator(function* (templateId, templateData) {
|
|
69
|
+
return (0, _IdmConfigApi.putConfigEntity)("".concat(EMAIL_TEMPLATE_TYPE, "/").concat(templateId), templateData);
|
|
70
70
|
});
|
|
71
71
|
return _putEmailTemplate.apply(this, arguments);
|
|
72
72
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EmailTemplateApi.js","names":["EMAIL_TEMPLATE_TYPE","getEmailTemplates","getConfigEntitiesByType","getEmailTemplate","
|
|
1
|
+
{"version":3,"file":"EmailTemplateApi.js","names":["EMAIL_TEMPLATE_TYPE","getEmailTemplates","getConfigEntitiesByType","getEmailTemplate","templateId","getConfigEntity","putEmailTemplate","templateData","putConfigEntity"],"sources":["api/EmailTemplateApi.ts"],"sourcesContent":["import {\n getConfigEntitiesByType,\n getConfigEntity,\n putConfigEntity,\n} from './IdmConfigApi';\n\n/**\n * Email template type key used to build the IDM id: 'emailTemplate/<id>'\n */\nexport const EMAIL_TEMPLATE_TYPE = 'emailTemplate';\n\n/**\n * Get all email templates\n * @returns {Promise} a promise that resolves to an array of email template objects\n */\nexport async function getEmailTemplates() {\n return getConfigEntitiesByType(EMAIL_TEMPLATE_TYPE);\n}\n\n/**\n * Get email template\n * @param {string} templateId id/name of the email template without the type prefix\n * @returns {Promise} a promise that resolves an email template object\n */\nexport async function getEmailTemplate(templateId) {\n return getConfigEntity(`${EMAIL_TEMPLATE_TYPE}/${templateId}`);\n}\n\n/**\n * Put email template\n * @param {string} templateId id/name of the email template without the type prefix\n * @param {Object} templateData email template object\n * @returns {Promise} a promise that resolves to an email template object\n */\nexport async function putEmailTemplate(templateId, templateData) {\n return putConfigEntity(`${EMAIL_TEMPLATE_TYPE}/${templateId}`, templateData);\n}\n"],"mappings":";;;;;;;;;;AAAA;;;;;;AAMA;AACA;AACA;AACO,IAAMA,mBAAmB,GAAG,eAA5B;AAEP;AACA;AACA;AACA;;;;SACsBC,iB;;;AAItB;AACA;AACA;AACA;AACA;;;;yCARO,aAAmC;IACxC,OAAO,IAAAC,qCAAA,EAAwBF,mBAAxB,CAAP;EACD,C;;;;SAOqBG,gB;;;AAItB;AACA;AACA;AACA;AACA;AACA;;;;wCATO,WAAgCC,UAAhC,EAA4C;IACjD,OAAO,IAAAC,6BAAA,YAAmBL,mBAAnB,cAA0CI,UAA1C,EAAP;EACD,C;;;;SAQqBE,gB;;;;;wCAAf,WAAgCF,UAAhC,EAA4CG,YAA5C,EAA0D;IAC/D,OAAO,IAAAC,6BAAA,YAAmBR,mBAAnB,cAA0CI,UAA1C,GAAwDG,YAAxD,CAAP;EACD,C"}
|
package/cjs/api/IdmConfigApi.js
CHANGED
|
@@ -29,7 +29,7 @@ var idmConfigEntityQueryTemplate = '%s/openidm/config?_queryFilter=%s';
|
|
|
29
29
|
var idmManagedObjectURLTemplate = '%s/openidm/managed/%s?_queryFilter=true&_pageSize=10000';
|
|
30
30
|
/**
|
|
31
31
|
* Get all IDM config entities
|
|
32
|
-
* @returns {Promise} a promise that resolves to
|
|
32
|
+
* @returns {Promise} a promise that resolves to all IDM config entities
|
|
33
33
|
*/
|
|
34
34
|
|
|
35
35
|
function getAllConfigEntities() {
|
|
@@ -46,7 +46,10 @@ function _getAllConfigEntities() {
|
|
|
46
46
|
_getAllConfigEntities = _asyncToGenerator(function* () {
|
|
47
47
|
var urlString = _util.default.format(idmAllConfigURLTemplate, (0, _ApiUtils.getTenantURL)(_SessionStorage.default.session.getTenant()));
|
|
48
48
|
|
|
49
|
-
|
|
49
|
+
var {
|
|
50
|
+
data
|
|
51
|
+
} = yield (0, _BaseApi.generateIdmApi)().get(urlString);
|
|
52
|
+
return data;
|
|
50
53
|
});
|
|
51
54
|
return _getAllConfigEntities.apply(this, arguments);
|
|
52
55
|
}
|
|
@@ -56,8 +59,8 @@ function getConfigEntitiesByType(_x) {
|
|
|
56
59
|
}
|
|
57
60
|
/**
|
|
58
61
|
* Get an IDM config entity
|
|
59
|
-
* @param {
|
|
60
|
-
* @returns {Promise} a promise that resolves to an
|
|
62
|
+
* @param {string} entityId the desired config entity
|
|
63
|
+
* @returns {Promise<unknown>} a promise that resolves to an IDM config entity
|
|
61
64
|
*/
|
|
62
65
|
|
|
63
66
|
|
|
@@ -65,7 +68,10 @@ function _getConfigEntitiesByType() {
|
|
|
65
68
|
_getConfigEntitiesByType = _asyncToGenerator(function* (type) {
|
|
66
69
|
var urlString = _util.default.format(idmConfigEntityQueryTemplate, (0, _ApiUtils.getTenantURL)(_SessionStorage.default.session.getTenant()), encodeURIComponent("_id sw '".concat(type, "'")));
|
|
67
70
|
|
|
68
|
-
|
|
71
|
+
var {
|
|
72
|
+
data
|
|
73
|
+
} = yield (0, _BaseApi.generateIdmApi)().get(urlString);
|
|
74
|
+
return data;
|
|
69
75
|
});
|
|
70
76
|
return _getConfigEntitiesByType.apply(this, arguments);
|
|
71
77
|
}
|
|
@@ -75,17 +81,20 @@ function getConfigEntity(_x2) {
|
|
|
75
81
|
}
|
|
76
82
|
/**
|
|
77
83
|
* Put IDM config entity
|
|
78
|
-
* @param {
|
|
79
|
-
* @param {
|
|
80
|
-
* @returns {Promise} a promise that resolves to an
|
|
84
|
+
* @param {string} entityId config entity id
|
|
85
|
+
* @param {string} entityData config entity object
|
|
86
|
+
* @returns {Promise<unknown>} a promise that resolves to an IDM config entity
|
|
81
87
|
*/
|
|
82
88
|
|
|
83
89
|
|
|
84
90
|
function _getConfigEntity() {
|
|
85
|
-
_getConfigEntity = _asyncToGenerator(function* (
|
|
86
|
-
var urlString = _util.default.format(idmConfigURLTemplate, (0, _ApiUtils.getTenantURL)(_SessionStorage.default.session.getTenant()),
|
|
91
|
+
_getConfigEntity = _asyncToGenerator(function* (entityId) {
|
|
92
|
+
var urlString = _util.default.format(idmConfigURLTemplate, (0, _ApiUtils.getTenantURL)(_SessionStorage.default.session.getTenant()), entityId);
|
|
87
93
|
|
|
88
|
-
|
|
94
|
+
var {
|
|
95
|
+
data
|
|
96
|
+
} = yield (0, _BaseApi.generateIdmApi)().get(urlString);
|
|
97
|
+
return data;
|
|
89
98
|
});
|
|
90
99
|
return _getConfigEntity.apply(this, arguments);
|
|
91
100
|
}
|
|
@@ -98,15 +107,18 @@ function putConfigEntity(_x3, _x4) {
|
|
|
98
107
|
* @param {String} type managed object type
|
|
99
108
|
* @param {[String]} fields fields to retrieve
|
|
100
109
|
* @param {String} pageCookie paged results cookie
|
|
101
|
-
* @returns {Promise<{result: any[]; resultCount: number; pagedResultsCookie: any; totalPagedResultsPolicy: string; totalPagedResults: number; remainingPagedResults: number;}>} a promise that resolves to
|
|
110
|
+
* @returns {Promise<{result: any[]; resultCount: number; pagedResultsCookie: any; totalPagedResultsPolicy: string; totalPagedResults: number; remainingPagedResults: number;}>} a promise that resolves to managed objects of the desired type
|
|
102
111
|
*/
|
|
103
112
|
|
|
104
113
|
|
|
105
114
|
function _putConfigEntity() {
|
|
106
|
-
_putConfigEntity = _asyncToGenerator(function* (
|
|
107
|
-
var urlString = _util.default.format(idmConfigURLTemplate, (0, _ApiUtils.getTenantURL)(_SessionStorage.default.session.getTenant()),
|
|
115
|
+
_putConfigEntity = _asyncToGenerator(function* (entityId, entityData) {
|
|
116
|
+
var urlString = _util.default.format(idmConfigURLTemplate, (0, _ApiUtils.getTenantURL)(_SessionStorage.default.session.getTenant()), entityId);
|
|
108
117
|
|
|
109
|
-
|
|
118
|
+
var {
|
|
119
|
+
data
|
|
120
|
+
} = yield (0, _BaseApi.generateIdmApi)().put(urlString, entityData);
|
|
121
|
+
return data;
|
|
110
122
|
});
|
|
111
123
|
return _putConfigEntity.apply(this, arguments);
|
|
112
124
|
}
|
|
@@ -122,7 +134,10 @@ function _queryAllManagedObjectsByType() {
|
|
|
122
134
|
|
|
123
135
|
var urlString = _util.default.format(urlTemplate, (0, _ApiUtils.getTenantURL)(_SessionStorage.default.session.getTenant()), type);
|
|
124
136
|
|
|
125
|
-
|
|
137
|
+
var {
|
|
138
|
+
data
|
|
139
|
+
} = yield (0, _BaseApi.generateIdmApi)().get(urlString);
|
|
140
|
+
return data;
|
|
126
141
|
});
|
|
127
142
|
return _queryAllManagedObjectsByType.apply(this, arguments);
|
|
128
143
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IdmConfigApi.js","names":["idmAllConfigURLTemplate","idmConfigURLTemplate","idmConfigEntityQueryTemplate","idmManagedObjectURLTemplate","getAllConfigEntities","urlString","util","format","getTenantURL","storage","session","getTenant","generateIdmApi","get","getConfigEntitiesByType","type","encodeURIComponent","getConfigEntity","
|
|
1
|
+
{"version":3,"file":"IdmConfigApi.js","names":["idmAllConfigURLTemplate","idmConfigURLTemplate","idmConfigEntityQueryTemplate","idmManagedObjectURLTemplate","getAllConfigEntities","urlString","util","format","getTenantURL","storage","session","getTenant","data","generateIdmApi","get","getConfigEntitiesByType","type","encodeURIComponent","getConfigEntity","entityId","putConfigEntity","entityData","put","queryAllManagedObjectsByType","fields","pageCookie","fieldsParam","length","join","urlTemplate"],"sources":["api/IdmConfigApi.ts"],"sourcesContent":["import util from 'util';\nimport { generateIdmApi } from './BaseApi';\nimport { getTenantURL } from './utils/ApiUtils';\nimport storage from '../storage/SessionStorage';\n\nconst idmAllConfigURLTemplate = '%s/openidm/config';\nconst idmConfigURLTemplate = '%s/openidm/config/%s';\nconst idmConfigEntityQueryTemplate = '%s/openidm/config?_queryFilter=%s';\nconst idmManagedObjectURLTemplate =\n '%s/openidm/managed/%s?_queryFilter=true&_pageSize=10000';\n\n/**\n * Get all IDM config entities\n * @returns {Promise} a promise that resolves to all IDM config entities\n */\nexport async function getAllConfigEntities() {\n const urlString = util.format(\n idmAllConfigURLTemplate,\n getTenantURL(storage.session.getTenant())\n );\n const { data } = await generateIdmApi().get(urlString);\n return data;\n}\n\n/**\n * Get IDM config entities by type\n * @param {String} type the desired type of config entity\n * @returns {Promise} a promise that resolves to an object containing all IDM config entities of the desired type\n */\nexport async function getConfigEntitiesByType(type) {\n const urlString = util.format(\n idmConfigEntityQueryTemplate,\n getTenantURL(storage.session.getTenant()),\n encodeURIComponent(`_id sw '${type}'`)\n );\n const { data } = await generateIdmApi().get(urlString);\n return data;\n}\n\n/**\n * Get an IDM config entity\n * @param {string} entityId the desired config entity\n * @returns {Promise<unknown>} a promise that resolves to an IDM config entity\n */\nexport async function getConfigEntity(entityId) {\n const urlString = util.format(\n idmConfigURLTemplate,\n getTenantURL(storage.session.getTenant()),\n entityId\n );\n const { data } = await generateIdmApi().get(urlString);\n return data;\n}\n\n/**\n * Put IDM config entity\n * @param {string} entityId config entity id\n * @param {string} entityData config entity object\n * @returns {Promise<unknown>} a promise that resolves to an IDM config entity\n */\nexport async function putConfigEntity(entityId, entityData) {\n const urlString = util.format(\n idmConfigURLTemplate,\n getTenantURL(storage.session.getTenant()),\n entityId\n );\n const { data } = await generateIdmApi().put(urlString, entityData);\n return data;\n}\n\n/**\n * Query managed objects\n * @param {String} type managed object type\n * @param {[String]} fields fields to retrieve\n * @param {String} pageCookie paged results cookie\n * @returns {Promise<{result: any[]; resultCount: number; pagedResultsCookie: any; totalPagedResultsPolicy: string; totalPagedResults: number; remainingPagedResults: number;}>} a promise that resolves to managed objects of the desired type\n */\nexport async function queryAllManagedObjectsByType(\n type,\n fields,\n pageCookie\n): Promise<{\n result: unknown[];\n resultCount: number;\n pagedResultsCookie: string;\n totalPagedResultsPolicy: string;\n totalPagedResults: number;\n remainingPagedResults: number;\n}> {\n const fieldsParam =\n fields.length > 0 ? `&_fields=${fields.join(',')}` : '&_fields=_id';\n const urlTemplate = pageCookie\n ? `${idmManagedObjectURLTemplate}${fieldsParam}&_pagedResultsCookie=${encodeURIComponent(\n pageCookie\n )}`\n : `${idmManagedObjectURLTemplate}${fieldsParam}`;\n const urlString = util.format(\n urlTemplate,\n getTenantURL(storage.session.getTenant()),\n type\n );\n const { data } = await generateIdmApi().get(urlString);\n return data;\n}\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;AAEA,IAAMA,uBAAuB,GAAG,mBAAhC;AACA,IAAMC,oBAAoB,GAAG,sBAA7B;AACA,IAAMC,4BAA4B,GAAG,mCAArC;AACA,IAAMC,2BAA2B,GAC/B,yDADF;AAGA;AACA;AACA;AACA;;SACsBC,oB;;;AAStB;AACA;AACA;AACA;AACA;;;;4CAbO,aAAsC;IAC3C,IAAMC,SAAS,GAAGC,aAAA,CAAKC,MAAL,CAChBP,uBADgB,EAEhB,IAAAQ,sBAAA,EAAaC,uBAAA,CAAQC,OAAR,CAAgBC,SAAhB,EAAb,CAFgB,CAAlB;;IAIA,IAAM;MAAEC;IAAF,UAAiB,IAAAC,uBAAA,IAAiBC,GAAjB,CAAqBT,SAArB,CAAvB;IACA,OAAOO,IAAP;EACD,C;;;;SAOqBG,uB;;;AAUtB;AACA;AACA;AACA;AACA;;;;+CAdO,WAAuCC,IAAvC,EAA6C;IAClD,IAAMX,SAAS,GAAGC,aAAA,CAAKC,MAAL,CAChBL,4BADgB,EAEhB,IAAAM,sBAAA,EAAaC,uBAAA,CAAQC,OAAR,CAAgBC,SAAhB,EAAb,CAFgB,EAGhBM,kBAAkB,mBAAYD,IAAZ,OAHF,CAAlB;;IAKA,IAAM;MAAEJ;IAAF,UAAiB,IAAAC,uBAAA,IAAiBC,GAAjB,CAAqBT,SAArB,CAAvB;IACA,OAAOO,IAAP;EACD,C;;;;SAOqBM,e;;;AAUtB;AACA;AACA;AACA;AACA;AACA;;;;uCAfO,WAA+BC,QAA/B,EAAyC;IAC9C,IAAMd,SAAS,GAAGC,aAAA,CAAKC,MAAL,CAChBN,oBADgB,EAEhB,IAAAO,sBAAA,EAAaC,uBAAA,CAAQC,OAAR,CAAgBC,SAAhB,EAAb,CAFgB,EAGhBQ,QAHgB,CAAlB;;IAKA,IAAM;MAAEP;IAAF,UAAiB,IAAAC,uBAAA,IAAiBC,GAAjB,CAAqBT,SAArB,CAAvB;IACA,OAAOO,IAAP;EACD,C;;;;SAQqBQ,e;;;AAUtB;AACA;AACA;AACA;AACA;AACA;AACA;;;;uCAhBO,WAA+BD,QAA/B,EAAyCE,UAAzC,EAAqD;IAC1D,IAAMhB,SAAS,GAAGC,aAAA,CAAKC,MAAL,CAChBN,oBADgB,EAEhB,IAAAO,sBAAA,EAAaC,uBAAA,CAAQC,OAAR,CAAgBC,SAAhB,EAAb,CAFgB,EAGhBQ,QAHgB,CAAlB;;IAKA,IAAM;MAAEP;IAAF,UAAiB,IAAAC,uBAAA,IAAiBS,GAAjB,CAAqBjB,SAArB,EAAgCgB,UAAhC,CAAvB;IACA,OAAOT,IAAP;EACD,C;;;;SASqBW,4B;;;;;oDAAf,WACLP,IADK,EAELQ,MAFK,EAGLC,UAHK,EAWJ;IACD,IAAMC,WAAW,GACfF,MAAM,CAACG,MAAP,GAAgB,CAAhB,sBAAgCH,MAAM,CAACI,IAAP,CAAY,GAAZ,CAAhC,IAAqD,cADvD;IAEA,IAAMC,WAAW,GAAGJ,UAAU,aACvBtB,2BADuB,SACOuB,WADP,kCAC0CT,kBAAkB,CACpFQ,UADoF,CAD5D,cAIvBtB,2BAJuB,SAIOuB,WAJP,CAA9B;;IAKA,IAAMrB,SAAS,GAAGC,aAAA,CAAKC,MAAL,CAChBsB,WADgB,EAEhB,IAAArB,sBAAA,EAAaC,uBAAA,CAAQC,OAAR,CAAgBC,SAAhB,EAAb,CAFgB,EAGhBK,IAHgB,CAAlB;;IAKA,IAAM;MAAEJ;IAAF,UAAiB,IAAAC,uBAAA,IAAiBC,GAAjB,CAAqBT,SAArB,CAAvB;IACA,OAAOO,IAAP;EACD,C"}
|
package/cjs/api/NodeApi.js
CHANGED
|
@@ -48,7 +48,7 @@ function getNodeTypes() {
|
|
|
48
48
|
}
|
|
49
49
|
/**
|
|
50
50
|
* Get all nodes
|
|
51
|
-
* @returns {Promise} a promise that resolves to an array of node objects
|
|
51
|
+
* @returns {Promise} a promise that resolves to an object containing an array of node objects
|
|
52
52
|
*/
|
|
53
53
|
|
|
54
54
|
|
|
@@ -56,13 +56,15 @@ function _getNodeTypes() {
|
|
|
56
56
|
_getNodeTypes = _asyncToGenerator(function* () {
|
|
57
57
|
var urlString = _util.default.format(queryAllNodeTypesURLTemplate, _SessionStorage.default.session.getTenant(), (0, _ApiUtils.getCurrentRealmPath)());
|
|
58
58
|
|
|
59
|
-
var
|
|
59
|
+
var {
|
|
60
|
+
data
|
|
61
|
+
} = yield (0, _BaseApi.generateAmApi)(getNodeApiConfig()).post(urlString, {}, {
|
|
60
62
|
withCredentials: true,
|
|
61
63
|
headers: {
|
|
62
64
|
'Accept-Encoding': 'gzip, deflate, br'
|
|
63
65
|
}
|
|
64
66
|
});
|
|
65
|
-
return
|
|
67
|
+
return data;
|
|
66
68
|
});
|
|
67
69
|
return _getNodeTypes.apply(this, arguments);
|
|
68
70
|
}
|
|
@@ -73,7 +75,7 @@ function getNodes() {
|
|
|
73
75
|
/**
|
|
74
76
|
* Get all nodes by type
|
|
75
77
|
* @param {string} nodeType node type
|
|
76
|
-
* @returns {Promise} a promise that resolves to an array of node objects of the requested type
|
|
78
|
+
* @returns {Promise} a promise that resolves to an object containing an array of node objects of the requested type
|
|
77
79
|
*/
|
|
78
80
|
|
|
79
81
|
|
|
@@ -81,13 +83,15 @@ function _getNodes() {
|
|
|
81
83
|
_getNodes = _asyncToGenerator(function* () {
|
|
82
84
|
var urlString = _util.default.format(queryAllNodesURLTemplate, _SessionStorage.default.session.getTenant(), (0, _ApiUtils.getCurrentRealmPath)());
|
|
83
85
|
|
|
84
|
-
var
|
|
86
|
+
var {
|
|
87
|
+
data
|
|
88
|
+
} = yield (0, _BaseApi.generateAmApi)(getNodeApiConfig()).post(urlString, {}, {
|
|
85
89
|
withCredentials: true,
|
|
86
90
|
headers: {
|
|
87
91
|
'Accept-Encoding': 'gzip, deflate, br'
|
|
88
92
|
}
|
|
89
93
|
});
|
|
90
|
-
return
|
|
94
|
+
return data;
|
|
91
95
|
});
|
|
92
96
|
return _getNodes.apply(this, arguments);
|
|
93
97
|
}
|
|
@@ -107,10 +111,12 @@ function _getNodesByType() {
|
|
|
107
111
|
_getNodesByType = _asyncToGenerator(function* (nodeType) {
|
|
108
112
|
var urlString = _util.default.format(queryAllNodesByTypeURLTemplate, _SessionStorage.default.session.getTenant(), (0, _ApiUtils.getCurrentRealmPath)(), nodeType);
|
|
109
113
|
|
|
110
|
-
var
|
|
114
|
+
var {
|
|
115
|
+
data
|
|
116
|
+
} = yield (0, _BaseApi.generateAmApi)(getNodeApiConfig()).get(urlString, {
|
|
111
117
|
withCredentials: true
|
|
112
118
|
});
|
|
113
|
-
return
|
|
119
|
+
return data;
|
|
114
120
|
});
|
|
115
121
|
return _getNodesByType.apply(this, arguments);
|
|
116
122
|
}
|
package/cjs/api/NodeApi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeApi.js","names":["queryAllNodeTypesURLTemplate","queryAllNodesByTypeURLTemplate","queryAllNodesURLTemplate","nodeURLTemplate","apiVersion","getNodeApiConfig","configPath","getCurrentRealmPath","path","getNodeTypes","urlString","util","format","storage","session","getTenant","
|
|
1
|
+
{"version":3,"file":"NodeApi.js","names":["queryAllNodeTypesURLTemplate","queryAllNodesByTypeURLTemplate","queryAllNodesURLTemplate","nodeURLTemplate","apiVersion","getNodeApiConfig","configPath","getCurrentRealmPath","path","getNodeTypes","urlString","util","format","storage","session","getTenant","data","generateAmApi","post","withCredentials","headers","getNodes","getNodesByType","nodeType","get","getNode","nodeId","putNode","nodeData","cleanData","deleteDeepByKey","put","deleteNode","delete"],"sources":["api/NodeApi.ts"],"sourcesContent":["import util from 'util';\nimport { deleteDeepByKey, getCurrentRealmPath } from './utils/ApiUtils';\nimport { generateAmApi } from './BaseApi';\nimport storage from '../storage/SessionStorage';\n\nconst queryAllNodeTypesURLTemplate =\n '%s/json%s/realm-config/authentication/authenticationtrees/nodes?_action=getAllTypes';\nconst queryAllNodesByTypeURLTemplate =\n '%s/json%s/realm-config/authentication/authenticationtrees/nodes/%s?_queryFilter=true';\nconst queryAllNodesURLTemplate =\n '%s/json%s/realm-config/authentication/authenticationtrees/nodes?_action=nextdescendents';\nconst nodeURLTemplate =\n '%s/json%s/realm-config/authentication/authenticationtrees/nodes/%s/%s';\n\nconst apiVersion = 'protocol=2.1,resource=1.0';\nconst getNodeApiConfig = () => {\n const configPath = getCurrentRealmPath();\n return {\n path: `${configPath}/authentication/authenticationtrees`,\n apiVersion,\n };\n};\n\n/**\n * Get all node types\n * @returns {Promise} a promise that resolves to an array of node type objects\n */\nexport async function getNodeTypes() {\n const urlString = util.format(\n queryAllNodeTypesURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath()\n );\n const { data } = await generateAmApi(getNodeApiConfig()).post(\n urlString,\n {},\n {\n withCredentials: true,\n headers: { 'Accept-Encoding': 'gzip, deflate, br' },\n }\n );\n return data;\n}\n\n/**\n * Get all nodes\n * @returns {Promise} a promise that resolves to an object containing an array of node objects\n */\nexport async function getNodes() {\n const urlString = util.format(\n queryAllNodesURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath()\n );\n const { data } = await generateAmApi(getNodeApiConfig()).post(\n urlString,\n {},\n {\n withCredentials: true,\n headers: { 'Accept-Encoding': 'gzip, deflate, br' },\n }\n );\n return data;\n}\n\n/**\n * Get all nodes by type\n * @param {string} nodeType node type\n * @returns {Promise} a promise that resolves to an object containing an array of node objects of the requested type\n */\nexport async function getNodesByType(nodeType: string) {\n const urlString = util.format(\n queryAllNodesByTypeURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n nodeType\n );\n const { data } = await generateAmApi(getNodeApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\n/**\n * Get node by uuid and type\n * @param {String} nodeId node uuid\n * @param {String} nodeType node type\n * @returns {Promise} a promise that resolves to a node object\n */\nexport async function getNode(nodeId: string, nodeType: string) {\n const urlString = util.format(\n nodeURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n nodeType,\n nodeId\n );\n const { data } = await generateAmApi(getNodeApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\n/**\n * Put node by uuid and type\n * @param {String} nodeId node uuid\n * @param {String} nodeType node type\n * @param {Object} nodeData node object\n * @returns {Promise} a promise that resolves to an object containing a node object\n */\nexport async function putNode(nodeId: string, nodeType: string, nodeData) {\n // until we figure out a way to use transport keys in Frodo,\n // we'll have to drop those encrypted attributes.\n const cleanData = deleteDeepByKey(nodeData, '-encrypted');\n const urlString = util.format(\n nodeURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n nodeType,\n nodeId\n );\n const { data } = await generateAmApi(getNodeApiConfig()).put(\n urlString,\n cleanData,\n {\n withCredentials: true,\n }\n );\n return data;\n}\n\n/**\n * Delete node by uuid and type\n * @param {String} nodeId node uuid\n * @param {String} nodeType node type\n * @returns {Promise} a promise that resolves to an object containing a node object\n */\nexport async function deleteNode(nodeId: string, nodeType: string) {\n const urlString = util.format(\n nodeURLTemplate,\n storage.session.getTenant(),\n getCurrentRealmPath(),\n nodeType,\n nodeId\n );\n const { data } = await generateAmApi(getNodeApiConfig()).delete(urlString, {\n withCredentials: true,\n });\n return data;\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeApi.test.js","names":["__dirname","path","dirname","fileURLToPath","mock","MockAdapter","axios","state","default","session","setTenant","setRealm","setCookieName","setCookieValue","describe","test","response","JSON","parse","fs","readFileSync","resolve","onPost","reply","types","NodeRaw","getNodeTypes","expect","toBeTruthy","length","toBe","onGet","nodes","getNodesByType","node","getNode","toMatchObject","code","reason","message","assertions","error","data","nodeData","onPut","putNode","onDelete","deleteNode","_id","toEqual"],"sources":["api/NodeApi.test.ts"],"sourcesContent":["import axios from 'axios';\nimport MockAdapter from 'axios-mock-adapter';\nimport { NodeRaw, state } from '../index';\nimport fs from 'fs';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nconst mock = new MockAdapter(axios);\n\nstate.default.session.setTenant('');\nstate.default.session.setRealm('alpha');\nstate.default.session.setCookieName('cookieName');\nstate.default.session.setCookieValue('cookieValue');\n\ndescribe('NodeApi - getNodeTypes()', () => {\n test('getNodeTypes() 1: Get all node types', async () => {\n const response = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/NodeApi/getNodeTypes/types.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPost(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes?_action=getAllTypes'\n )\n .reply(200, response);\n const types = await NodeRaw.getNodeTypes();\n expect(types).toBeTruthy();\n expect(types.length).toBe(99);\n });\n});\n\ndescribe('NodeApi - getNodesByType()', () => {\n test('getNodesByType() 1: Get all page nodes', async () => {\n const response = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/NodeApi/getNodesByType/PageNode.json'\n ),\n 'utf8'\n )\n );\n mock\n .onGet(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode?_queryFilter=true'\n )\n .reply(200, response);\n const nodes = await NodeRaw.getNodesByType('PageNode');\n expect(nodes).toBeTruthy();\n expect(nodes.length).toBe(161);\n });\n});\n\ndescribe('NodeApi - getNode()', () => {\n test('getNode() 1: Get existing page node [1aea363f-d8d2-4711-b88d-d58fff92dbae]', async () => {\n const response = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/NodeApi/getNode/PageNode_1aea363f-d8d2-4711-b88d-d58fff92dbae.json'\n ),\n 'utf8'\n )\n );\n mock\n .onGet(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/1aea363f-d8d2-4711-b88d-d58fff92dbae'\n )\n .reply(200, response);\n const node = await NodeRaw.getNode(\n '1aea363f-d8d2-4711-b88d-d58fff92dbae',\n 'PageNode'\n );\n expect(node).toBeTruthy();\n expect(node).toMatchObject(response);\n });\n\n test('getNode() 2: Get non-existing page node [00000000-0000-0000-0000-000000000000]', async () => {\n mock\n .onGet(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/00000000-0000-0000-0000-000000000000'\n )\n .reply(404, {\n code: 404,\n reason: 'Not Found',\n message: 'Not Found',\n });\n expect.assertions(2);\n try {\n await NodeRaw.getNode('00000000-0000-0000-0000-000000000000', 'PageNode');\n } catch (error) {\n expect(error.response).toBeTruthy();\n expect(error.response.data).toMatchObject({\n code: 404,\n reason: 'Not Found',\n message: 'Not Found',\n });\n }\n });\n});\n\ndescribe('NodeApi - putNode()', () => {\n test('putNode() 1: Create page node [0ad90971-d08a-4af3-86f3-01729572dc8f]', async () => {\n const nodeData = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/NodeApi/putNode/PageNode_0ad90971-d08a-4af3-86f3-01729572dc8f.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPut(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/0ad90971-d08a-4af3-86f3-01729572dc8f'\n )\n .reply(201, nodeData);\n const node = await NodeRaw.putNode(\n '0ad90971-d08a-4af3-86f3-01729572dc8f',\n 'PageNode',\n nodeData\n );\n expect(node).toBeTruthy();\n expect(node).toMatchObject(nodeData);\n });\n\n test('putNode() 1: Update existing page node [1aea363f-d8d2-4711-b88d-d58fff92dbae]', async () => {\n const nodeData = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/NodeApi/putNode/PageNode_1aea363f-d8d2-4711-b88d-d58fff92dbae.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPut(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/1aea363f-d8d2-4711-b88d-d58fff92dbae'\n )\n .reply(200, nodeData);\n const node = await NodeRaw.putNode(\n '1aea363f-d8d2-4711-b88d-d58fff92dbae',\n 'PageNode',\n nodeData\n );\n expect(node).toBeTruthy();\n expect(node).toMatchObject(nodeData);\n });\n});\n\ndescribe('NodeApi - deleteNode()', () => {\n test('deleteNode() 1: Delete existing node [1aea363f-d8d2-4711-b88d-d58fff92dbae]', async () => {\n const response = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/NodeApi/deleteNode/PageNode_1aea363f-d8d2-4711-b88d-d58fff92dbae.json'\n ),\n 'utf8'\n )\n );\n mock\n .onDelete(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/1aea363f-d8d2-4711-b88d-d58fff92dbae'\n )\n .reply(200, response);\n const node = await NodeRaw.deleteNode(\n '1aea363f-d8d2-4711-b88d-d58fff92dbae',\n 'PageNode'\n );\n expect(node).toBeTruthy();\n expect(node._id).toEqual('1aea363f-d8d2-4711-b88d-d58fff92dbae');\n });\n\n test('deleteNode() 2: Delete non-existing node [00000000-0000-0000-0000-000000000000]', async () => {\n mock\n .onDelete(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/00000000-0000-0000-0000-000000000000'\n )\n .reply(404, {\n code: 404,\n reason: 'Not Found',\n message: 'Not Found',\n });\n expect.assertions(2);\n try {\n await NodeRaw.deleteNode(\n '00000000-0000-0000-0000-000000000000',\n 'PageNode'\n );\n } catch (error) {\n expect(error.response).toBeTruthy();\n expect(error.response.data).toMatchObject({\n code: 404,\n reason: 'Not Found',\n message: 'Not Found',\n });\n }\n });\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NodeApi.test.js","names":["__dirname","path","dirname","fileURLToPath","mock","MockAdapter","axios","state","default","session","setTenant","setRealm","setCookieName","setCookieValue","describe","test","expect","NodeRaw","getNodeTypes","toBeDefined","response","JSON","parse","fs","readFileSync","resolve","onPost","reply","types","toBeTruthy","result","length","toBe","getNodes","usernameAttribute","validateInput","_id","_type","name","collection","_outcomes","id","displayName","interval","identityAttribute","amount","identifier","identityResource","nodes","nodeType","pageDescription","en","pageHeader","stage","queryFilter","sessionDataKey","sharedStateKey","emailSuspendMessage","emailTemplateName","emailAttribute","objectLookup","attributesToCollect","validateInputs","required","passwordAttribute","presentAttribute","tree","patchAsObject","ignoredFields","script","outcomes","outputs","inputs","message","allowUserDefinedQuestions","getNodesByType","onGet","getNode","node","toMatchObject","code","reason","assertions","error","data","putNode","nodeData","onPut","deleteNode","onDelete","toEqual"],"sources":["api/NodeApi.test.ts"],"sourcesContent":["import axios from 'axios';\nimport MockAdapter from 'axios-mock-adapter';\nimport { NodeRaw, state } from '../index';\nimport fs from 'fs';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nconst mock = new MockAdapter(axios);\n\nstate.default.session.setTenant('');\nstate.default.session.setRealm('alpha');\nstate.default.session.setCookieName('cookieName');\nstate.default.session.setCookieValue('cookieValue');\n\ndescribe('NodeApi - getNodeTypes()', () => {\n test('getNodeTypes() 0: Method is implemented', async () => {\n expect(NodeRaw.getNodeTypes).toBeDefined();\n });\n\n test('getNodeTypes() 1: Get all node types', async () => {\n const response = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../test/mocks/NodeApi/getNodeTypes/types.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPost(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes?_action=getAllTypes'\n )\n .reply(200, response);\n const types = await NodeRaw.getNodeTypes();\n expect(types).toBeTruthy();\n expect(types.result.length).toBe(99);\n });\n});\n\ndescribe('NodeApi - getNodes()', () => {\n test('getNodes() 0: Method is implemented', async () => {\n expect(NodeRaw.getNodes).toBeDefined();\n });\n\n test('getNodes() 1: Get all nodes', async () => {\n const response = {\n result: [\n {\n usernameAttribute: 'userName',\n validateInput: true,\n _id: '7fcaf48e-a754-4959-858b-05b2933b825f',\n _type: {\n _id: 'ValidatedUsernameNode',\n name: 'Platform Username',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n usernameAttribute: 'userName',\n validateInput: false,\n _id: '7354982f-57b6-4b04-9ddc-f1dd1e1e07d0',\n _type: {\n _id: 'ValidatedUsernameNode',\n name: 'Platform Username',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n interval: 'AT',\n identityAttribute: 'userName',\n amount: 3,\n _id: '8afdaec3-275e-4301-bb53-34f03e6a4b29',\n _type: {\n _id: 'LoginCountDecisionNode',\n name: 'Login Count Decision',\n collection: true,\n },\n _outcomes: [\n {\n id: 'true',\n displayName: 'True',\n },\n {\n id: 'false',\n displayName: 'False',\n },\n ],\n },\n {\n identityAttribute: 'mail',\n identifier: 'userName',\n _id: '21b8ddf3-0203-4ae1-ab05-51cf3a3a707a',\n _type: {\n _id: 'IdentifyExistingUserNode',\n name: 'Identify Existing User',\n collection: true,\n },\n _outcomes: [\n {\n id: 'true',\n displayName: 'True',\n },\n {\n id: 'false',\n displayName: 'False',\n },\n ],\n },\n {\n identityAttribute: 'mail',\n identifier: 'userName',\n _id: 'bf9ea8d5-9802-4f26-9664-a21840faac23',\n _type: {\n _id: 'IdentifyExistingUserNode',\n name: 'Identify Existing User',\n collection: true,\n },\n _outcomes: [\n {\n id: 'true',\n displayName: 'True',\n },\n {\n id: 'false',\n displayName: 'False',\n },\n ],\n },\n {\n _id: '59952413-9bc2-47e5-a9b2-b04c1d729e24',\n _type: {\n _id: 'UsernameCollectorNode',\n name: 'Username Collector',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n identityResource: 'managed/alpha_user',\n _id: 'ad5dcbb3-7335-49b7-b3e7-7d850bb88237',\n _type: {\n _id: 'CreateObjectNode',\n name: 'Create Object',\n collection: true,\n },\n _outcomes: [\n {\n id: 'CREATED',\n displayName: 'Created',\n },\n {\n id: 'FAILURE',\n displayName: 'Failed',\n },\n ],\n },\n {\n nodes: [\n {\n _id: '7354982f-57b6-4b04-9ddc-f1dd1e1e07d0',\n nodeType: 'ValidatedUsernameNode',\n displayName: 'Platform Username',\n },\n {\n _id: '0c80c39b-4813-4e67-b4fb-5a0bba85f994',\n nodeType: 'ValidatedPasswordNode',\n displayName: 'Platform Password',\n },\n ],\n pageDescription: {\n en: 'New here? <a href=\"#/service/Registration\">Create an account</a><br><a href=\"#/service/ForgottenUsername\">Forgot username?</a><a href=\"#/service/ResetPassword\"> Forgot password?</a>',\n },\n pageHeader: {\n en: 'Sign In',\n },\n _id: 'a12bc72f-ad97-4f1e-a789-a1fa3dd566c8',\n _type: {\n _id: 'PageNode',\n name: 'Page Node',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n nodes: [\n {\n _id: '7fcaf48e-a754-4959-858b-05b2933b825f',\n nodeType: 'ValidatedUsernameNode',\n displayName: 'Platform Username',\n },\n {\n _id: 'd3ce2036-1523-4ce8-b1a2-895a2a036667',\n nodeType: 'AttributeCollectorNode',\n displayName: 'Attribute Collector',\n },\n {\n _id: '3d8709a1-f09f-4d1f-8094-2850e472c1db',\n nodeType: 'ValidatedPasswordNode',\n displayName: 'Platform Password',\n },\n {\n _id: '120c69d3-90b4-4ad4-b7af-380e8b119340',\n nodeType: 'KbaCreateNode',\n displayName: 'KBA Definition',\n },\n {\n _id: 'b4a0e915-c15d-4b83-9c9d-18347d645976',\n nodeType: 'AcceptTermsAndConditionsNode',\n displayName: 'Accept Terms and Conditions',\n },\n ],\n pageDescription: {\n en: \"Signing up is fast and easy.<br>Already have an account? <a href='#/service/Login'>Sign In</a>\",\n },\n pageHeader: {\n en: 'Sign Up',\n },\n _id: '0c091c49-f3af-48fb-ac6f-07fba0499dd6',\n _type: {\n _id: 'PageNode',\n name: 'Page Node',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n nodes: [\n {\n _id: '21a99653-a7a7-47ee-b650-f493a84bba09',\n nodeType: 'ValidatedPasswordNode',\n displayName: 'Platform Password',\n },\n ],\n pageDescription: {\n en: 'Enter new password',\n },\n pageHeader: {\n en: 'Update Password',\n },\n _id: 'd018fcd1-4e22-4160-8c41-63bee51c9cb3',\n _type: {\n _id: 'PageNode',\n name: 'Page Node',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n nodes: [\n {\n _id: '0a042e10-b22e-4e02-86c4-65e26e775f7a',\n nodeType: 'AttributeCollectorNode',\n displayName: 'Attribute Collector',\n },\n ],\n pageDescription: {},\n pageHeader: {\n en: 'Please select your preferences',\n },\n _id: 'a5aecad8-854a-4ed5-b719-ff6c90e858c0',\n _type: {\n _id: 'PageNode',\n name: 'Page Node',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n nodes: [\n {\n _id: 'fe2962fc-4db3-4066-8624-553649afc438',\n nodeType: 'ValidatedPasswordNode',\n displayName: 'Platform Password',\n },\n ],\n pageDescription: {\n en: 'Enter current password',\n },\n pageHeader: {\n en: 'Verify Existing Password',\n },\n _id: '20237b34-26cb-4a0b-958f-abb422290d42',\n _type: {\n _id: 'PageNode',\n name: 'Page Node',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n nodes: [\n {\n _id: '59952413-9bc2-47e5-a9b2-b04c1d729e24',\n nodeType: 'UsernameCollectorNode',\n displayName: 'Username Collector',\n },\n {\n _id: '8c217417-11dd-4a0f-a9e4-59c2390085be',\n nodeType: 'PasswordCollectorNode',\n displayName: 'Password Collector',\n },\n ],\n pageDescription: {},\n pageHeader: {},\n _id: '6b9a715d-ea23-4eae-9a59-69797c147157',\n _type: {\n _id: 'PageNode',\n name: 'Page Node',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n nodes: [\n {\n _id: '009c19c8-9572-47bb-adb2-1f092c559a43',\n nodeType: 'ValidatedPasswordNode',\n displayName: 'Platform Password',\n },\n ],\n pageDescription: {\n en: 'Change password',\n },\n pageHeader: {\n en: 'Reset Password',\n },\n _id: 'e4c752f9-c625-48c9-9644-a58802fa9e9c',\n _type: {\n _id: 'PageNode',\n name: 'Page Node',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n nodes: [\n {\n _id: 'a3f63691-1a79-4b11-be47-26f40403292d',\n nodeType: 'ScriptedDecisionNode',\n displayName: 'Remove Button',\n },\n ],\n pageDescription: {},\n stage: '{\"themeId\":\"63e19668-909f-479e-83d7-be7a01cd8187\"}',\n pageHeader: {\n en: 'No Access',\n },\n _id: 'bdda3e99-3a7f-45ec-b39d-17d1056af3c9',\n _type: {\n _id: 'PageNode',\n name: 'Page Node',\n collection: true,\n },\n _outcomes: [\n {\n id: 'true',\n displayName: 'true',\n },\n ],\n },\n {\n nodes: [\n {\n _id: '9f1e8d94-4922-481b-9e14-212b66548900',\n nodeType: 'AttributeCollectorNode',\n displayName: 'Attribute Collector',\n },\n ],\n pageDescription: {\n en: 'Enter your email address or <a href=\"#/service/Login\">Sign in</a>',\n },\n pageHeader: {\n en: 'Forgotten Username',\n },\n _id: '5e2a7c95-94af-4b23-8724-deb13853726a',\n _type: {\n _id: 'PageNode',\n name: 'Page Node',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n nodes: [\n {\n _id: '276afa7c-a680-4cf4-a5f6-d6c78191f5c9',\n nodeType: 'AttributeCollectorNode',\n displayName: 'Attribute Collector',\n },\n ],\n pageDescription: {\n en: 'Enter your email address or <a href=\"#/service/Login\">Sign in</a>',\n },\n pageHeader: {\n en: 'Reset Password',\n },\n _id: 'cc3e1ed2-25f1-47bf-83c6-17084f8b2b2b',\n _type: {\n _id: 'PageNode',\n name: 'Page Node',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n identityAttribute: 'userName',\n queryFilter:\n '!(/preferences pr) or /preferences/marketing eq false or /preferences/updates eq false',\n _id: 'a1f45b44-5bf7-4c57-aa3f-75c619c7db8e',\n _type: {\n _id: 'QueryFilterDecisionNode',\n name: 'Query Filter Decision',\n collection: true,\n },\n _outcomes: [\n {\n id: 'true',\n displayName: 'True',\n },\n {\n id: 'false',\n displayName: 'False',\n },\n ],\n },\n {\n _id: 'b4a0e915-c15d-4b83-9c9d-18347d645976',\n _type: {\n _id: 'AcceptTermsAndConditionsNode',\n name: 'Accept Terms and Conditions',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n sessionDataKey: 'UserToken',\n sharedStateKey: 'userName',\n _id: 'd1b79744-493a-44fe-bc26-7d324a8caa4e',\n _type: {\n _id: 'SessionDataNode',\n name: 'Get Session Data',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n emailSuspendMessage: {\n en: 'An email has been sent to the address you entered. Click the link in that email to proceed.',\n },\n emailTemplateName: 'forgottenUsername',\n identityAttribute: 'mail',\n emailAttribute: 'mail',\n objectLookup: true,\n _id: 'd9a79f01-2ce3-4be2-a28a-975f35c3c8ca',\n _type: {\n _id: 'EmailSuspendNode',\n name: 'Email Suspend Node',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n emailSuspendMessage: {\n en: 'An email has been sent to the address you entered. Click the link in that email to proceed.',\n },\n emailTemplateName: 'resetPassword',\n identityAttribute: 'mail',\n emailAttribute: 'mail',\n objectLookup: true,\n _id: '06c97be5-7fdd-4739-aea1-ecc7fe082865',\n _type: {\n _id: 'EmailSuspendNode',\n name: 'Email Suspend Node',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n emailSuspendMessage: {\n en: 'An email has been sent to your address, please verify your email address to update your password. Click the link in that email to proceed.',\n },\n emailTemplateName: 'updatePassword',\n identityAttribute: 'userName',\n emailAttribute: 'mail',\n objectLookup: true,\n _id: 'a3d97b53-e38a-4b24-aed0-a021050eb744',\n _type: {\n _id: 'EmailSuspendNode',\n name: 'Email Suspend Node',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n attributesToCollect: ['mail'],\n identityAttribute: 'mail',\n validateInputs: false,\n required: true,\n _id: '9f1e8d94-4922-481b-9e14-212b66548900',\n _type: {\n _id: 'AttributeCollectorNode',\n name: 'Attribute Collector',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n attributesToCollect: ['mail'],\n identityAttribute: 'mail',\n validateInputs: false,\n required: true,\n _id: '276afa7c-a680-4cf4-a5f6-d6c78191f5c9',\n _type: {\n _id: 'AttributeCollectorNode',\n name: 'Attribute Collector',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n attributesToCollect: ['preferences/updates', 'preferences/marketing'],\n identityAttribute: 'userName',\n validateInputs: false,\n required: false,\n _id: '0a042e10-b22e-4e02-86c4-65e26e775f7a',\n _type: {\n _id: 'AttributeCollectorNode',\n name: 'Attribute Collector',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n attributesToCollect: [\n 'givenName',\n 'sn',\n 'mail',\n 'preferences/marketing',\n 'preferences/updates',\n ],\n identityAttribute: 'userName',\n validateInputs: true,\n required: true,\n _id: 'd3ce2036-1523-4ce8-b1a2-895a2a036667',\n _type: {\n _id: 'AttributeCollectorNode',\n name: 'Attribute Collector',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n _id: '8c217417-11dd-4a0f-a9e4-59c2390085be',\n _type: {\n _id: 'PasswordCollectorNode',\n name: 'Password Collector',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n passwordAttribute: 'password',\n validateInput: true,\n _id: '009c19c8-9572-47bb-adb2-1f092c559a43',\n _type: {\n _id: 'ValidatedPasswordNode',\n name: 'Platform Password',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n passwordAttribute: 'password',\n validateInput: true,\n _id: '3d8709a1-f09f-4d1f-8094-2850e472c1db',\n _type: {\n _id: 'ValidatedPasswordNode',\n name: 'Platform Password',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n passwordAttribute: 'password',\n validateInput: false,\n _id: '0c80c39b-4813-4e67-b4fb-5a0bba85f994',\n _type: {\n _id: 'ValidatedPasswordNode',\n name: 'Platform Password',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n passwordAttribute: 'password',\n validateInput: true,\n _id: '21a99653-a7a7-47ee-b650-f493a84bba09',\n _type: {\n _id: 'ValidatedPasswordNode',\n name: 'Platform Password',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n passwordAttribute: 'password',\n validateInput: false,\n _id: 'fe2962fc-4db3-4066-8624-553649afc438',\n _type: {\n _id: 'ValidatedPasswordNode',\n name: 'Platform Password',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n presentAttribute: 'password',\n identityAttribute: 'userName',\n _id: '0f0904e6-1da3-4cdb-9abf-0d2545016fab',\n _type: {\n _id: 'AttributePresentDecisionNode',\n name: 'Attribute Present Decision',\n collection: true,\n },\n _outcomes: [\n {\n id: 'true',\n displayName: 'True',\n },\n {\n id: 'false',\n displayName: 'False',\n },\n ],\n },\n {\n _id: '2998c1c9-f4c8-4a00-b2c6-3426783ee49d',\n _type: {\n _id: 'DataStoreDecisionNode',\n name: 'Data Store Decision',\n collection: true,\n },\n _outcomes: [\n {\n id: 'true',\n displayName: 'True',\n },\n {\n id: 'false',\n displayName: 'False',\n },\n ],\n },\n {\n _id: 'e2988546-a459-4c9a-b0e2-fa65ae136b34',\n _type: {\n _id: 'DataStoreDecisionNode',\n name: 'Data Store Decision',\n collection: true,\n },\n _outcomes: [\n {\n id: 'true',\n displayName: 'True',\n },\n {\n id: 'false',\n displayName: 'False',\n },\n ],\n },\n {\n _id: '7d1deabe-cd98-49c8-943f-ca12305775f3',\n _type: {\n _id: 'DataStoreDecisionNode',\n name: 'Data Store Decision',\n collection: true,\n },\n _outcomes: [\n {\n id: 'true',\n displayName: 'True',\n },\n {\n id: 'false',\n displayName: 'False',\n },\n ],\n },\n {\n identityAttribute: 'userName',\n _id: '97a15eb2-a015-4b6d-81a0-be78c3aa1a3b',\n _type: {\n _id: 'IncrementLoginCountNode',\n name: 'Increment Login Count',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n identityAttribute: 'userName',\n _id: 'bba3e0d8-8525-4e82-bf48-ac17f7988917',\n _type: {\n _id: 'IncrementLoginCountNode',\n name: 'Increment Login Count',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n {\n tree: 'ProgressiveProfile',\n _id: '33b24514-3e50-4180-8f08-ab6f4e51b07e',\n _type: {\n _id: 'InnerTreeEvaluatorNode',\n name: 'Inner Tree Evaluator',\n collection: true,\n },\n _outcomes: [\n {\n id: 'true',\n displayName: 'True',\n },\n {\n id: 'false',\n displayName: 'False',\n },\n ],\n },\n {\n tree: 'iAccessRestrictions',\n _id: '2da98485-ee0e-4305-826c-b6fcc842a7b8',\n _type: {\n _id: 'InnerTreeEvaluatorNode',\n name: 'Inner Tree Evaluator',\n collection: true,\n },\n _outcomes: [\n {\n id: 'true',\n displayName: 'True',\n },\n {\n id: 'false',\n displayName: 'False',\n },\n ],\n },\n {\n tree: 'Login',\n _id: 'b93ce36e-1976-4610-b24f-8d6760b5463b',\n _type: {\n _id: 'InnerTreeEvaluatorNode',\n name: 'Inner Tree Evaluator',\n collection: true,\n },\n _outcomes: [\n {\n id: 'true',\n displayName: 'True',\n },\n {\n id: 'false',\n displayName: 'False',\n },\n ],\n },\n {\n identityResource: 'managed/alpha_user',\n patchAsObject: false,\n ignoredFields: [],\n identityAttribute: 'mail',\n _id: '989f0bf8-a328-4217-b82b-5275d79ca8bd',\n _type: {\n _id: 'PatchObjectNode',\n name: 'Patch Object',\n collection: true,\n },\n _outcomes: [\n {\n id: 'PATCHED',\n displayName: 'Patched',\n },\n {\n id: 'FAILURE',\n displayName: 'Failed',\n },\n ],\n },\n {\n identityResource: 'managed/alpha_user',\n patchAsObject: false,\n ignoredFields: [],\n identityAttribute: 'userName',\n _id: '423a959a-a1b9-498a-b0f7-596b6b6e775a',\n _type: {\n _id: 'PatchObjectNode',\n name: 'Patch Object',\n collection: true,\n },\n _outcomes: [\n {\n id: 'PATCHED',\n displayName: 'Patched',\n },\n {\n id: 'FAILURE',\n displayName: 'Failed',\n },\n ],\n },\n {\n identityResource: 'managed/alpha_user',\n patchAsObject: false,\n ignoredFields: ['userName'],\n identityAttribute: 'userName',\n _id: '3990ce1f-cce6-435b-ae1c-f138e89411c1',\n _type: {\n _id: 'PatchObjectNode',\n name: 'Patch Object',\n collection: true,\n },\n _outcomes: [\n {\n id: 'PATCHED',\n displayName: 'Patched',\n },\n {\n id: 'FAILURE',\n displayName: 'Failed',\n },\n ],\n },\n {\n script: '7fb962a5-9f20-41d3-a077-b424a29c1198',\n outcomes: ['allow', 'deny'],\n outputs: ['*'],\n inputs: ['*'],\n _id: 'f4e9be5d-25d7-44cc-b15e-989b99724b4d',\n _type: {\n _id: 'ScriptedDecisionNode',\n name: 'Scripted Decision',\n collection: true,\n },\n _outcomes: [\n {\n id: 'allow',\n displayName: 'allow',\n },\n {\n id: 'deny',\n displayName: 'deny',\n },\n ],\n },\n {\n script: '9535446c-0ff6-4a76-8576-616599119d64',\n outcomes: ['true'],\n outputs: ['*'],\n inputs: ['*'],\n _id: 'a3f63691-1a79-4b11-be47-26f40403292d',\n _type: {\n _id: 'ScriptedDecisionNode',\n name: 'Scripted Decision',\n collection: true,\n },\n _outcomes: [\n {\n id: 'true',\n displayName: 'true',\n },\n ],\n },\n {\n message: {\n en: 'Select a security question',\n },\n allowUserDefinedQuestions: true,\n _id: '120c69d3-90b4-4ad4-b7af-380e8b119340',\n _type: {\n _id: 'KbaCreateNode',\n name: 'KBA Definition',\n collection: true,\n },\n _outcomes: [\n {\n id: 'outcome',\n displayName: 'Outcome',\n },\n ],\n },\n ],\n };\n mock\n .onPost(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes?_action=nextdescendents'\n )\n .reply(200, response);\n const nodes = await NodeRaw.getNodes();\n expect(nodes).toBeTruthy();\n expect(nodes.result.length).toBe(48);\n });\n});\n\ndescribe('NodeApi - getNodesByType()', () => {\n test('getNodesByType() 0: Method is implemented', async () => {\n expect(NodeRaw.getNodesByType).toBeDefined();\n });\n\n test('getNodesByType() 1: Get all page nodes', async () => {\n const response = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../test/mocks/NodeApi/getNodesByType/PageNode.json'\n ),\n 'utf8'\n )\n );\n mock\n .onGet(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode?_queryFilter=true'\n )\n .reply(200, response);\n const nodes = await NodeRaw.getNodesByType('PageNode');\n expect(nodes).toBeTruthy();\n expect(nodes.result.length).toBe(161);\n });\n});\n\ndescribe('NodeApi - getNode()', () => {\n test('getNode() 0: Method is implemented', async () => {\n expect(NodeRaw.getNode).toBeDefined();\n });\n\n test('getNode() 1: Get existing page node [1aea363f-d8d2-4711-b88d-d58fff92dbae]', async () => {\n const response = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../test/mocks/NodeApi/getNode/PageNode_1aea363f-d8d2-4711-b88d-d58fff92dbae.json'\n ),\n 'utf8'\n )\n );\n mock\n .onGet(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/1aea363f-d8d2-4711-b88d-d58fff92dbae'\n )\n .reply(200, response);\n const node = await NodeRaw.getNode(\n '1aea363f-d8d2-4711-b88d-d58fff92dbae',\n 'PageNode'\n );\n expect(node).toBeTruthy();\n expect(node).toMatchObject(response);\n });\n\n test('getNode() 2: Get non-existing page node [00000000-0000-0000-0000-000000000000]', async () => {\n mock\n .onGet(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/00000000-0000-0000-0000-000000000000'\n )\n .reply(404, {\n code: 404,\n reason: 'Not Found',\n message: 'Not Found',\n });\n expect.assertions(2);\n try {\n await NodeRaw.getNode('00000000-0000-0000-0000-000000000000', 'PageNode');\n } catch (error) {\n expect(error.response).toBeTruthy();\n expect(error.response.data).toMatchObject({\n code: 404,\n reason: 'Not Found',\n message: 'Not Found',\n });\n }\n });\n});\n\ndescribe('NodeApi - putNode()', () => {\n test('putNode() 0: Method is implemented', async () => {\n expect(NodeRaw.putNode).toBeDefined();\n });\n\n test('putNode() 1: Create page node [0ad90971-d08a-4af3-86f3-01729572dc8f]', async () => {\n const nodeData = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../test/mocks/NodeApi/putNode/PageNode_0ad90971-d08a-4af3-86f3-01729572dc8f.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPut(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/0ad90971-d08a-4af3-86f3-01729572dc8f'\n )\n .reply(201, nodeData);\n const node = await NodeRaw.putNode(\n '0ad90971-d08a-4af3-86f3-01729572dc8f',\n 'PageNode',\n nodeData\n );\n expect(node).toBeTruthy();\n expect(node).toMatchObject(nodeData);\n });\n\n test('putNode() 1: Update existing page node [1aea363f-d8d2-4711-b88d-d58fff92dbae]', async () => {\n const nodeData = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../test/mocks/NodeApi/putNode/PageNode_1aea363f-d8d2-4711-b88d-d58fff92dbae.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPut(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/1aea363f-d8d2-4711-b88d-d58fff92dbae'\n )\n .reply(200, nodeData);\n const node = await NodeRaw.putNode(\n '1aea363f-d8d2-4711-b88d-d58fff92dbae',\n 'PageNode',\n nodeData\n );\n expect(node).toBeTruthy();\n expect(node).toMatchObject(nodeData);\n });\n});\n\ndescribe('NodeApi - deleteNode()', () => {\n test('deleteNode() 0: Method is implemented', async () => {\n expect(NodeRaw.deleteNode).toBeDefined();\n });\n\n test('deleteNode() 1: Delete existing node [1aea363f-d8d2-4711-b88d-d58fff92dbae]', async () => {\n const response = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../test/mocks/NodeApi/deleteNode/PageNode_1aea363f-d8d2-4711-b88d-d58fff92dbae.json'\n ),\n 'utf8'\n )\n );\n mock\n .onDelete(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/1aea363f-d8d2-4711-b88d-d58fff92dbae'\n )\n .reply(200, response);\n const node = await NodeRaw.deleteNode(\n '1aea363f-d8d2-4711-b88d-d58fff92dbae',\n 'PageNode'\n );\n expect(node).toBeTruthy();\n expect(node._id).toEqual('1aea363f-d8d2-4711-b88d-d58fff92dbae');\n });\n\n test('deleteNode() 2: Delete non-existing node [00000000-0000-0000-0000-000000000000]', async () => {\n mock\n .onDelete(\n '/json/realms/root/realms/alpha/realm-config/authentication/authenticationtrees/nodes/PageNode/00000000-0000-0000-0000-000000000000'\n )\n .reply(404, {\n code: 404,\n reason: 'Not Found',\n message: 'Not Found',\n });\n expect.assertions(2);\n try {\n await NodeRaw.deleteNode(\n '00000000-0000-0000-0000-000000000000',\n 'PageNode'\n );\n } catch (error) {\n expect(error.response).toBeTruthy();\n expect(error.response.data).toMatchObject({\n code: 404,\n reason: 'Not Found',\n message: 'Not Found',\n });\n }\n });\n});\n"],"mappings":"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"}
|