@forgerock/journey-client 0.0.0-beta-20251222204813
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 +45 -0
- package/LICENSE +21 -0
- package/README.md +143 -0
- package/coverage/base.css +224 -0
- package/coverage/block-navigation.js +87 -0
- package/coverage/coverage-final.json +1 -0
- package/coverage/favicon.png +0 -0
- package/coverage/index.html +101 -0
- package/coverage/prettify.css +1 -0
- package/coverage/prettify.js +2 -0
- package/coverage/sort-arrow-sprite.png +0 -0
- package/coverage/sorter.js +210 -0
- package/dist/package.json +62 -0
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +7 -0
- package/dist/src/lib/callbacks/attribute-input-callback.d.ts +44 -0
- package/dist/src/lib/callbacks/attribute-input-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/attribute-input-callback.js +71 -0
- package/dist/src/lib/callbacks/base-callback.d.ts +45 -0
- package/dist/src/lib/callbacks/base-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/base-callback.js +88 -0
- package/dist/src/lib/callbacks/choice-callback.d.ts +33 -0
- package/dist/src/lib/callbacks/choice-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/choice-callback.js +57 -0
- package/dist/src/lib/callbacks/confirmation-callback.d.ts +41 -0
- package/dist/src/lib/callbacks/confirmation-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/confirmation-callback.js +69 -0
- package/dist/src/lib/callbacks/device-profile-callback.d.ts +30 -0
- package/dist/src/lib/callbacks/device-profile-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/device-profile-callback.js +43 -0
- package/dist/src/lib/callbacks/factory.d.ts +8 -0
- package/dist/src/lib/callbacks/factory.d.ts.map +1 -0
- package/dist/src/lib/callbacks/factory.js +87 -0
- package/dist/src/lib/callbacks/hidden-value-callback.d.ts +13 -0
- package/dist/src/lib/callbacks/hidden-value-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/hidden-value-callback.js +19 -0
- package/dist/src/lib/callbacks/kba-create-callback.d.ts +34 -0
- package/dist/src/lib/callbacks/kba-create-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/kba-create-callback.js +59 -0
- package/dist/src/lib/callbacks/metadata-callback.d.ts +17 -0
- package/dist/src/lib/callbacks/metadata-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/metadata-callback.js +25 -0
- package/dist/src/lib/callbacks/name-callback.d.ts +21 -0
- package/dist/src/lib/callbacks/name-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/name-callback.js +31 -0
- package/dist/src/lib/callbacks/password-callback.d.ts +29 -0
- package/dist/src/lib/callbacks/password-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/password-callback.js +43 -0
- package/dist/src/lib/callbacks/ping-protect-evaluation-callback.d.ts +52 -0
- package/dist/src/lib/callbacks/ping-protect-evaluation-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/ping-protect-evaluation-callback.js +64 -0
- package/dist/src/lib/callbacks/ping-protect-initialize-callback.d.ts +29 -0
- package/dist/src/lib/callbacks/ping-protect-initialize-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/ping-protect-initialize-callback.js +40 -0
- package/dist/src/lib/callbacks/polling-wait-callback.d.ts +21 -0
- package/dist/src/lib/callbacks/polling-wait-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/polling-wait-callback.js +31 -0
- package/dist/src/lib/callbacks/recaptcha-callback.d.ts +21 -0
- package/dist/src/lib/callbacks/recaptcha-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/recaptcha-callback.js +31 -0
- package/dist/src/lib/callbacks/recaptcha-enterprise-callback.d.ts +41 -0
- package/dist/src/lib/callbacks/recaptcha-enterprise-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/recaptcha-enterprise-callback.js +65 -0
- package/dist/src/lib/callbacks/redirect-callback.d.ts +17 -0
- package/dist/src/lib/callbacks/redirect-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/redirect-callback.js +25 -0
- package/dist/src/lib/callbacks/select-idp-callback.d.ts +28 -0
- package/dist/src/lib/callbacks/select-idp-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/select-idp-callback.js +35 -0
- package/dist/src/lib/callbacks/suspended-text-output-callback.d.ts +13 -0
- package/dist/src/lib/callbacks/suspended-text-output-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/suspended-text-output-callback.js +19 -0
- package/dist/src/lib/callbacks/terms-and-conditions-callback.d.ts +29 -0
- package/dist/src/lib/callbacks/terms-and-conditions-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/terms-and-conditions-callback.js +45 -0
- package/dist/src/lib/callbacks/text-input-callback.d.ts +21 -0
- package/dist/src/lib/callbacks/text-input-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/text-input-callback.js +31 -0
- package/dist/src/lib/callbacks/text-output-callback.d.ts +22 -0
- package/dist/src/lib/callbacks/text-output-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/text-output-callback.js +32 -0
- package/dist/src/lib/callbacks/validated-create-password-callback.d.ts +37 -0
- package/dist/src/lib/callbacks/validated-create-password-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/validated-create-password-callback.js +63 -0
- package/dist/src/lib/callbacks/validated-create-username-callback.d.ts +37 -0
- package/dist/src/lib/callbacks/validated-create-username-callback.d.ts.map +1 -0
- package/dist/src/lib/callbacks/validated-create-username-callback.js +64 -0
- package/dist/src/lib/client.store.d.ts +37 -0
- package/dist/src/lib/client.store.d.ts.map +1 -0
- package/dist/src/lib/client.store.js +147 -0
- package/dist/src/lib/client.store.utils.d.ts +81 -0
- package/dist/src/lib/client.store.utils.d.ts.map +1 -0
- package/dist/src/lib/client.store.utils.js +28 -0
- package/dist/src/lib/config.types.d.ts +8 -0
- package/dist/src/lib/config.types.d.ts.map +1 -0
- package/dist/src/lib/config.types.js +7 -0
- package/dist/src/lib/device/defaults.d.ts +13 -0
- package/dist/src/lib/device/defaults.d.ts.map +1 -0
- package/dist/src/lib/device/defaults.js +78 -0
- package/dist/src/lib/device/device-profile.d.ts +41 -0
- package/dist/src/lib/device/device-profile.d.ts.map +1 -0
- package/dist/src/lib/device/device-profile.js +216 -0
- package/dist/src/lib/device/device-profile.mock.data.d.ts +109 -0
- package/dist/src/lib/device/device-profile.mock.data.d.ts.map +1 -0
- package/dist/src/lib/device/device-profile.mock.data.js +117 -0
- package/dist/src/lib/device/interfaces.d.ts +43 -0
- package/dist/src/lib/device/interfaces.d.ts.map +1 -0
- package/dist/src/lib/device/interfaces.js +10 -0
- package/dist/src/lib/interfaces.d.ts +15 -0
- package/dist/src/lib/interfaces.d.ts.map +1 -0
- package/dist/src/lib/interfaces.js +7 -0
- package/dist/src/lib/journey.api.d.ts +15 -0
- package/dist/src/lib/journey.api.d.ts.map +1 -0
- package/dist/src/lib/journey.api.js +129 -0
- package/dist/src/lib/journey.slice.d.ts +12 -0
- package/dist/src/lib/journey.slice.d.ts.map +1 -0
- package/dist/src/lib/journey.slice.js +18 -0
- package/dist/src/lib/journey.utils.d.ts +7 -0
- package/dist/src/lib/journey.utils.d.ts.map +1 -0
- package/dist/src/lib/journey.utils.js +33 -0
- package/dist/src/lib/login-failure.utils.d.ts +16 -0
- package/dist/src/lib/login-failure.utils.d.ts.map +1 -0
- package/dist/src/lib/login-failure.utils.js +34 -0
- package/dist/src/lib/login-success.utils.d.ts +16 -0
- package/dist/src/lib/login-success.utils.d.ts.map +1 -0
- package/dist/src/lib/login-success.utils.js +25 -0
- package/dist/src/lib/policy/interfaces.d.ts +11 -0
- package/dist/src/lib/policy/interfaces.d.ts.map +1 -0
- package/dist/src/lib/policy/interfaces.js +6 -0
- package/dist/src/lib/policy/message-creator.d.ts +3 -0
- package/dist/src/lib/policy/message-creator.d.ts.map +1 -0
- package/dist/src/lib/policy/message-creator.js +58 -0
- package/dist/src/lib/policy/policy.d.ts +57 -0
- package/dist/src/lib/policy/policy.d.ts.map +1 -0
- package/dist/src/lib/policy/policy.js +108 -0
- package/dist/src/lib/qr-code/qr-code.d.ts +35 -0
- package/dist/src/lib/qr-code/qr-code.d.ts.map +1 -0
- package/dist/src/lib/qr-code/qr-code.js +73 -0
- package/dist/src/lib/qr-code/qr-code.mock.data.d.ts +66 -0
- package/dist/src/lib/qr-code/qr-code.mock.data.d.ts.map +1 -0
- package/dist/src/lib/qr-code/qr-code.mock.data.js +175 -0
- package/dist/src/lib/recovery-codes/recovery-codes.d.ts +40 -0
- package/dist/src/lib/recovery-codes/recovery-codes.d.ts.map +1 -0
- package/dist/src/lib/recovery-codes/recovery-codes.js +64 -0
- package/dist/src/lib/recovery-codes/script-parser.d.ts +8 -0
- package/dist/src/lib/recovery-codes/script-parser.d.ts.map +1 -0
- package/dist/src/lib/recovery-codes/script-parser.js +45 -0
- package/dist/src/lib/recovery-codes/script-text.mock.data.d.ts +27 -0
- package/dist/src/lib/recovery-codes/script-text.mock.data.d.ts.map +1 -0
- package/dist/src/lib/recovery-codes/script-text.mock.data.js +103 -0
- package/dist/src/lib/step.types.d.ts +14 -0
- package/dist/src/lib/step.types.d.ts.map +1 -0
- package/dist/src/lib/step.types.js +7 -0
- package/dist/src/lib/step.utils.d.ts +10 -0
- package/dist/src/lib/step.utils.d.ts.map +1 -0
- package/dist/src/lib/step.utils.js +62 -0
- package/dist/src/lib/webauthn/enums.d.ts +24 -0
- package/dist/src/lib/webauthn/enums.d.ts.map +1 -0
- package/dist/src/lib/webauthn/enums.js +35 -0
- package/dist/src/lib/webauthn/helpers.d.ts +18 -0
- package/dist/src/lib/webauthn/helpers.d.ts.map +1 -0
- package/dist/src/lib/webauthn/helpers.js +103 -0
- package/dist/src/lib/webauthn/helpers.mock.data.d.ts +6 -0
- package/dist/src/lib/webauthn/helpers.mock.data.d.ts.map +1 -0
- package/dist/src/lib/webauthn/helpers.mock.data.js +14 -0
- package/dist/src/lib/webauthn/interfaces.d.ts +92 -0
- package/dist/src/lib/webauthn/interfaces.d.ts.map +1 -0
- package/dist/src/lib/webauthn/interfaces.js +34 -0
- package/dist/src/lib/webauthn/script-text.mock.data.d.ts +76 -0
- package/dist/src/lib/webauthn/script-text.mock.data.d.ts.map +1 -0
- package/dist/src/lib/webauthn/script-text.mock.data.js +451 -0
- package/dist/src/lib/webauthn/webauthn.d.ts +124 -0
- package/dist/src/lib/webauthn/webauthn.d.ts.map +1 -0
- package/dist/src/lib/webauthn/webauthn.js +383 -0
- package/dist/src/lib/webauthn/webauthn.mock.data.d.ts +331 -0
- package/dist/src/lib/webauthn/webauthn.mock.data.d.ts.map +1 -0
- package/dist/src/lib/webauthn/webauthn.mock.data.js +446 -0
- package/dist/src/types.d.ts +31 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/types.js +34 -0
- package/dist/tsconfig.lib.tsbuildinfo +1 -0
- package/eslint.config.mjs +19 -0
- package/out-tsc/vitest/packages/journey-client/src/lib/callbacks/attribute-input-callback.test.d.ts +1 -0
- package/out-tsc/vitest/packages/journey-client/src/lib/callbacks/fr-auth-callback.test.d.ts +1 -0
- package/out-tsc/vitest/packages/journey-client/src/lib/callbacks/ping-protect-evaluation-callback.test.d.ts +1 -0
- package/out-tsc/vitest/packages/journey-client/src/lib/callbacks/ping-protect-initialize-callback.test.d.ts +1 -0
- package/out-tsc/vitest/packages/journey-client/src/lib/callbacks/recaptcha-enterprise-callback.test.d.ts +1 -0
- package/out-tsc/vitest/packages/journey-client/src/lib/callbacks/text-input-callback.test.d.ts +1 -0
- package/out-tsc/vitest/packages/journey-client/src/lib/callbacks/validated-create-password-callback.test.d.ts +1 -0
- package/out-tsc/vitest/packages/journey-client/src/lib/callbacks/validated-create-username-callback.test.d.ts +1 -0
- package/out-tsc/vitest/packages/journey-client/src/lib/fr-device/device-profile.test.d.ts +1 -0
- package/out-tsc/vitest/packages/journey-client/src/lib/fr-policy/fr-policy.test.d.ts +1 -0
- package/out-tsc/vitest/packages/journey-client/tsconfig.spec.tsbuildinfo +1 -0
- package/out-tsc/vitest/packages/journey-client/vite.config.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/attribute-input-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/attribute-input-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/attribute-input-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/attribute-input-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/attribute-input-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/attribute-input-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/base-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/base-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/callback-types.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/callback-types.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/callback-utils.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/callback-utils.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/choice-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/choice-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/choice-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/choice-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/choice-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/choice-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/confirmation-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/confirmation-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/confirmation-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/confirmation-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/confirmation-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/confirmation-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/device-profile-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/device-profile-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/factory.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/factory.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/fr-auth-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/fr-auth-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/hidden-value-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/hidden-value-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/hidden-value-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/hidden-value-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/hidden-value-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/hidden-value-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/kba-create-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/kba-create-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/kba-create-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/kba-create-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/kba-create-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/kba-create-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/metadata-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/metadata-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/metadata-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/metadata-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/metadata-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/metadata-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/name-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/name-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/name-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/name-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/name-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/name-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/password-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/password-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/password-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/password-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/password-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/password-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/ping-protect-evaluation-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/ping-protect-evaluation-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/ping-protect-evaluation-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/ping-protect-evaluation-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/ping-protect-evaluation-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/ping-protect-evaluation-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/ping-protect-initialize-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/ping-protect-initialize-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/ping-protect-initialize-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/ping-protect-initialize-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/ping-protect-initialize-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/ping-protect-initialize-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/polling-wait-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/polling-wait-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/polling-wait-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/polling-wait-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/polling-wait-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/polling-wait-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/recaptcha-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/recaptcha-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/recaptcha-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/recaptcha-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/recaptcha-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/recaptcha-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/recaptcha-enterprise-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/recaptcha-enterprise-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/recaptcha-enterprise-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/recaptcha-enterprise-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/recaptcha-enterprise-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/recaptcha-enterprise-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/redirect-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/redirect-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/redirect-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/redirect-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/redirect-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/redirect-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/select-idp-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/select-idp-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/select-idp-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/select-idp-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/select-idp-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/select-idp-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/suspended-text-output-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/suspended-text-output-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/suspended-text-output-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/suspended-text-output-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/suspended-text-output-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/suspended-text-output-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/terms-and-conditions-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/terms-and-conditions-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/terms-and-conditions-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/terms-and-conditions-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/terms-and-conditions-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/terms-and-conditions-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/text-input-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/text-input-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/text-input-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/text-input-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/text-input-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/text-input-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/text-output-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/text-output-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/text-output-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/text-output-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/text-output-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/text-output-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/validated-create-password-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/validated-create-password-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/validated-create-password-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/validated-create-password-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/validated-create-password-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/validated-create-password-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/validated-create-username-callback-operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/validated-create-username-callback-operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/validated-create-username-callback.operators.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/validated-create-username-callback.operators.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/callbacks/validated-create-username-callback.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/callbacks/validated-create-username-callback.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/client.store.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/client.store.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/device/device-profile.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/device/device-profile.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/fr-device/device-profile.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/fr-device/device-profile.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/fr-policy/fr-policy.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/fr-policy/fr-policy.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/fr-qrcode/fr-qrcode.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/fr-qrcode/fr-qrcode.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/fr-recovery-codes/recovery-codes.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/fr-recovery-codes/recovery-codes.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/fr-recovery-codes/script-parser.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/fr-recovery-codes/script-parser.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/fr-step.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/fr-step.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/fr-webauthn/fr-webauthn.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/fr-webauthn/fr-webauthn.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/fr-webauthn/helpers.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/fr-webauthn/helpers.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/fr-webauthn/script-parser.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/fr-webauthn/script-parser.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-client.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/journey-client.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-device/device-profile.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/journey-device/device-profile.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-login-failure.utils.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/journey-login-failure.utils.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-login-success.utils.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/journey-login-success.utils.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-policy/fr-policy.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/journey-policy/fr-policy.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-policy/journey-policy.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/journey-policy/journey-policy.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-qrcode/journey-qrcode.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/journey-qrcode/journey-qrcode.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-step.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/journey-step.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/enums.d.ts +24 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/enums.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/helpers.d.ts +18 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/helpers.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/helpers.mock.data.d.ts +6 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/helpers.mock.data.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/helpers.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/helpers.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/index.d.ts +123 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/index.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/interfaces.d.ts +93 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/interfaces.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/journey-webauthn.mock.data.d.ts +331 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/journey-webauthn.mock.data.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/journey-webauthn.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/journey-webauthn.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/script-parser.d.ts +4 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/script-parser.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/script-parser.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/script-parser.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/script-text.mock.data.d.ts +76 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/script-text.mock.data.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/webauthn-utils.d.ts +38 -0
- package/out-tsc/vitest/src/lib/journey-webauthn/webauthn-utils.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey.api.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/journey.api.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/journey.store.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/journey.store.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/login-failure.utils.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/login-failure.utils.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/login-success.utils.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/login-success.utils.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/object-utils.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/object-utils.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/policy/policy.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/policy/policy.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/qr-code/qr-code.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/qr-code/qr-code.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/recovery-codes/index.d.ts +37 -0
- package/out-tsc/vitest/src/lib/recovery-codes/index.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/recovery-codes/recovery-codes.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/recovery-codes/recovery-codes.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/recovery-codes/script-parser.d.ts +9 -0
- package/out-tsc/vitest/src/lib/recovery-codes/script-parser.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/recovery-codes/script-parser.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/recovery-codes/script-parser.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/recovery-codes/script-text.mock.data.d.ts +27 -0
- package/out-tsc/vitest/src/lib/recovery-codes/script-text.mock.data.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/step-utils.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/step-utils.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/step.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/step.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/webauthn/helpers.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/webauthn/helpers.test.d.ts.map +1 -0
- package/out-tsc/vitest/src/lib/webauthn/webauthn.test.d.ts +2 -0
- package/out-tsc/vitest/src/lib/webauthn/webauthn.test.d.ts.map +1 -0
- package/out-tsc/vitest/tsconfig.spec.tsbuildinfo +1 -0
- package/out-tsc/vitest/vite.config.d.ts +3 -0
- package/out-tsc/vitest/vite.config.d.ts.map +1 -0
- package/package.json +62 -0
- package/src/index.ts +8 -0
- package/src/lib/callbacks/attribute-input-callback.test.ts +89 -0
- package/src/lib/callbacks/attribute-input-callback.ts +81 -0
- package/src/lib/callbacks/base-callback.test.ts +42 -0
- package/src/lib/callbacks/base-callback.ts +101 -0
- package/src/lib/callbacks/choice-callback.test.ts +77 -0
- package/src/lib/callbacks/choice-callback.ts +64 -0
- package/src/lib/callbacks/confirmation-callback.test.ts +94 -0
- package/src/lib/callbacks/confirmation-callback.ts +78 -0
- package/src/lib/callbacks/device-profile-callback.test.ts +68 -0
- package/src/lib/callbacks/device-profile-callback.ts +51 -0
- package/src/lib/callbacks/factory.test.ts +89 -0
- package/src/lib/callbacks/factory.ts +95 -0
- package/src/lib/callbacks/hidden-value-callback.test.ts +26 -0
- package/src/lib/callbacks/hidden-value-callback.ts +21 -0
- package/src/lib/callbacks/kba-create-callback.test.ts +62 -0
- package/src/lib/callbacks/kba-create-callback.ts +68 -0
- package/src/lib/callbacks/metadata-callback.test.ts +31 -0
- package/src/lib/callbacks/metadata-callback.ts +28 -0
- package/src/lib/callbacks/name-callback.test.ts +42 -0
- package/src/lib/callbacks/name-callback.ts +35 -0
- package/src/lib/callbacks/password-callback.test.ts +60 -0
- package/src/lib/callbacks/password-callback.ts +49 -0
- package/src/lib/callbacks/ping-protect-evaluation-callback.test.ts +69 -0
- package/src/lib/callbacks/ping-protect-evaluation-callback.ts +70 -0
- package/src/lib/callbacks/ping-protect-initialize-callback.test.ts +153 -0
- package/src/lib/callbacks/ping-protect-initialize-callback.ts +44 -0
- package/src/lib/callbacks/polling-wait-callback.test.ts +36 -0
- package/src/lib/callbacks/polling-wait-callback.ts +35 -0
- package/src/lib/callbacks/recaptcha-callback.test.ts +42 -0
- package/src/lib/callbacks/recaptcha-callback.ts +35 -0
- package/src/lib/callbacks/recaptcha-enterprise-callback.test.ts +86 -0
- package/src/lib/callbacks/recaptcha-enterprise-callback.ts +72 -0
- package/src/lib/callbacks/redirect-callback.test.ts +31 -0
- package/src/lib/callbacks/redirect-callback.ts +28 -0
- package/src/lib/callbacks/select-idp-callback.test.ts +51 -0
- package/src/lib/callbacks/select-idp-callback.ts +48 -0
- package/src/lib/callbacks/suspended-text-output-callback.test.ts +35 -0
- package/src/lib/callbacks/suspended-text-output-callback.ts +21 -0
- package/src/lib/callbacks/terms-and-conditions-callback.test.ts +55 -0
- package/src/lib/callbacks/terms-and-conditions-callback.ts +51 -0
- package/src/lib/callbacks/text-input-callback.test.ts +43 -0
- package/src/lib/callbacks/text-input-callback.ts +35 -0
- package/src/lib/callbacks/text-output-callback.test.ts +36 -0
- package/src/lib/callbacks/text-output-callback.ts +36 -0
- package/src/lib/callbacks/validated-create-password-callback.test.ts +84 -0
- package/src/lib/callbacks/validated-create-password-callback.ts +75 -0
- package/src/lib/callbacks/validated-create-username-callback.test.ts +84 -0
- package/src/lib/callbacks/validated-create-username-callback.ts +76 -0
- package/src/lib/client.store.test.ts +324 -0
- package/src/lib/client.store.ts +194 -0
- package/src/lib/client.store.utils.ts +46 -0
- package/src/lib/config.types.ts +17 -0
- package/src/lib/device/defaults.ts +79 -0
- package/src/lib/device/device-profile.mock.data.ts +120 -0
- package/src/lib/device/device-profile.test.ts +128 -0
- package/src/lib/device/device-profile.ts +287 -0
- package/src/lib/device/interfaces.ts +63 -0
- package/src/lib/device/sample-profile.json +45 -0
- package/src/lib/interfaces.ts +25 -0
- package/src/lib/journey.api.ts +198 -0
- package/src/lib/journey.slice.ts +33 -0
- package/src/lib/journey.utils.ts +44 -0
- package/src/lib/login-failure.utils.test.ts +31 -0
- package/src/lib/login-failure.utils.ts +62 -0
- package/src/lib/login-success.utils.test.ts +29 -0
- package/src/lib/login-success.utils.ts +43 -0
- package/src/lib/policy/interfaces.ts +16 -0
- package/src/lib/policy/message-creator.ts +66 -0
- package/src/lib/policy/policy.test.ts +202 -0
- package/src/lib/policy/policy.ts +134 -0
- package/src/lib/qr-code/qr-code.mock.data.ts +184 -0
- package/src/lib/qr-code/qr-code.test.ts +78 -0
- package/src/lib/qr-code/qr-code.ts +96 -0
- package/src/lib/recovery-codes/recovery-codes.test.ts +43 -0
- package/src/lib/recovery-codes/recovery-codes.ts +72 -0
- package/src/lib/recovery-codes/script-parser.test.ts +34 -0
- package/src/lib/recovery-codes/script-parser.ts +50 -0
- package/src/lib/recovery-codes/script-text.mock.data.ts +120 -0
- package/src/lib/step.test.ts +104 -0
- package/src/lib/step.types.ts +22 -0
- package/src/lib/step.utils.ts +99 -0
- package/src/lib/webauthn/enums.ts +36 -0
- package/src/lib/webauthn/helpers.mock.data.ts +24 -0
- package/src/lib/webauthn/helpers.test.ts +54 -0
- package/src/lib/webauthn/helpers.ts +124 -0
- package/src/lib/webauthn/interfaces.ts +112 -0
- package/src/lib/webauthn/script-text.mock.data.ts +463 -0
- package/src/lib/webauthn/webauthn.mock.data.ts +478 -0
- package/src/lib/webauthn/webauthn.test.ts +100 -0
- package/src/lib/webauthn/webauthn.ts +508 -0
- package/src/types.ts +50 -0
- package/tsconfig.json +28 -0
- package/tsconfig.lib.json +37 -0
- package/tsconfig.spec.json +42 -0
- package/vite.config.ts +0 -0
- package/vitest.setup.ts +1 -0
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @forgerock/ping-javascript-sdk
|
|
3
|
+
*
|
|
4
|
+
* interfaces.ts
|
|
5
|
+
*
|
|
6
|
+
* Copyright (c) 2020 - 2025 Ping Identity Corporation. All rights reserved.
|
|
7
|
+
* This software may be modified and distributed under the terms
|
|
8
|
+
* of the MIT license. See the LICENSE file for details.
|
|
9
|
+
*/
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { JourneyClientConfig } from './config.types.js';
|
|
2
|
+
import { JourneyStep } from './step.types.js';
|
|
3
|
+
export interface StartParam extends JourneyClientConfig {
|
|
4
|
+
journey: string;
|
|
5
|
+
query?: Record<string, string>;
|
|
6
|
+
}
|
|
7
|
+
export interface ResumeOptions extends JourneyClientConfig {
|
|
8
|
+
journey?: string;
|
|
9
|
+
query?: Record<string, string>;
|
|
10
|
+
}
|
|
11
|
+
export interface NextOptions extends JourneyClientConfig {
|
|
12
|
+
query?: Record<string, string>;
|
|
13
|
+
}
|
|
14
|
+
export type { JourneyStep };
|
|
15
|
+
//# sourceMappingURL=interfaces.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/lib/interfaces.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,WAAW,UAAW,SAAQ,mBAAmB;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,aAAc,SAAQ,mBAAmB;IACxD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,WAAY,SAAQ,mBAAmB;IACtD,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED,YAAY,EAAE,WAAW,EAAE,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { Step } from '@forgerock/sdk-types';
|
|
2
|
+
import type { BaseQueryFn, FetchArgs, FetchBaseQueryError, FetchBaseQueryMeta } from '@reduxjs/toolkit/query';
|
|
3
|
+
import { JourneyStep } from './step.types.js';
|
|
4
|
+
import { NextOptions, StartParam } from './interfaces.js';
|
|
5
|
+
export declare const journeyApi: import("@reduxjs/toolkit/query").Api<BaseQueryFn<string | FetchArgs, unknown, FetchBaseQueryError, {}, FetchBaseQueryMeta>, {
|
|
6
|
+
start: import("@reduxjs/toolkit/query").MutationDefinition<StartParam | undefined, BaseQueryFn<string | FetchArgs, unknown, FetchBaseQueryError, {}, FetchBaseQueryMeta>, never, Step, "journeyReducer", unknown>;
|
|
7
|
+
next: import("@reduxjs/toolkit/query").MutationDefinition<{
|
|
8
|
+
step: JourneyStep;
|
|
9
|
+
options?: NextOptions;
|
|
10
|
+
}, BaseQueryFn<string | FetchArgs, unknown, FetchBaseQueryError, {}, FetchBaseQueryMeta>, never, Step, "journeyReducer", unknown>;
|
|
11
|
+
terminate: import("@reduxjs/toolkit/query").MutationDefinition<{
|
|
12
|
+
query?: Record<string, string>;
|
|
13
|
+
} | undefined, BaseQueryFn<string | FetchArgs, unknown, FetchBaseQueryError, {}, FetchBaseQueryMeta>, never, void, "journeyReducer", unknown>;
|
|
14
|
+
}, "journeyReducer", never, typeof import("@reduxjs/toolkit/query").coreModuleName>;
|
|
15
|
+
//# sourceMappingURL=journey.api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"journey.api.d.ts","sourceRoot":"","sources":["../../../src/lib/journey.api.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAgB,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAE/D,OAAO,KAAK,EAEV,WAAW,EACX,SAAS,EACT,mBAAmB,EACnB,kBAAkB,EAEnB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAgE1D,eAAO,MAAM,UAAU;;;cA+CkB,WAAW;kBAAY,WAAW;;;gBA8B3B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;;mFA+BpE,CAAC"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2020 - 2025 Ping Identity Corporation. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* This software may be modified and distributed under the terms
|
|
5
|
+
* of the MIT license. See the LICENSE file for details.
|
|
6
|
+
*/
|
|
7
|
+
import { initQuery } from '@forgerock/sdk-request-middleware';
|
|
8
|
+
import { REQUESTED_WITH, getEndpointPath, stringify, resolve } from '@forgerock/sdk-utilities';
|
|
9
|
+
import { createApi, fetchBaseQuery } from '@reduxjs/toolkit/query';
|
|
10
|
+
// Move these functions to the top, before journeyApi definition
|
|
11
|
+
function constructUrl(serverConfig, realmPath, tree, query) {
|
|
12
|
+
const treeParams = tree ? { authIndexType: 'service', authIndexValue: tree } : undefined;
|
|
13
|
+
const params = { ...query, ...treeParams };
|
|
14
|
+
const queryString = Object.keys(params).length > 0 ? `?${stringify(params)}` : '';
|
|
15
|
+
const path = getEndpointPath({
|
|
16
|
+
endpoint: 'authenticate',
|
|
17
|
+
realmPath,
|
|
18
|
+
customPaths: serverConfig.paths,
|
|
19
|
+
});
|
|
20
|
+
const url = resolve(serverConfig.baseUrl, `${path}${queryString}`);
|
|
21
|
+
return url;
|
|
22
|
+
}
|
|
23
|
+
function constructSessionsUrl(serverConfig, realmPath, query) {
|
|
24
|
+
const params = { ...query };
|
|
25
|
+
const queryString = Object.keys(params).length > 0 ? `?${stringify(params)}` : '';
|
|
26
|
+
const path = getEndpointPath({
|
|
27
|
+
endpoint: 'sessions',
|
|
28
|
+
realmPath,
|
|
29
|
+
customPaths: serverConfig.paths,
|
|
30
|
+
});
|
|
31
|
+
const url = resolve(serverConfig.baseUrl, `${path}${queryString}`);
|
|
32
|
+
return url;
|
|
33
|
+
}
|
|
34
|
+
function configureRequest(step) {
|
|
35
|
+
const init = {
|
|
36
|
+
body: step ? JSON.stringify(step.payload) : undefined,
|
|
37
|
+
credentials: 'include',
|
|
38
|
+
headers: new Headers({}),
|
|
39
|
+
method: 'POST',
|
|
40
|
+
};
|
|
41
|
+
return init;
|
|
42
|
+
}
|
|
43
|
+
function configureSessionRequest() {
|
|
44
|
+
const init = {
|
|
45
|
+
credentials: 'include',
|
|
46
|
+
headers: new Headers({}),
|
|
47
|
+
method: 'POST',
|
|
48
|
+
};
|
|
49
|
+
return init;
|
|
50
|
+
}
|
|
51
|
+
export const journeyApi = createApi({
|
|
52
|
+
reducerPath: 'journeyReducer',
|
|
53
|
+
baseQuery: fetchBaseQuery({
|
|
54
|
+
baseUrl: '/',
|
|
55
|
+
prepareHeaders: (headers) => {
|
|
56
|
+
headers.set('Accept', 'application/json');
|
|
57
|
+
headers.set('Accept-API-Version', 'protocol=1.0,resource=2.1');
|
|
58
|
+
headers.set('Content-Type', 'application/json');
|
|
59
|
+
headers.set('X-Requested-With', REQUESTED_WITH);
|
|
60
|
+
return headers;
|
|
61
|
+
},
|
|
62
|
+
}),
|
|
63
|
+
endpoints: (builder) => ({
|
|
64
|
+
start: builder.mutation({
|
|
65
|
+
queryFn: async (options, api, _, baseQuery) => {
|
|
66
|
+
const { config } = api.extra;
|
|
67
|
+
if (!config.serverConfig) {
|
|
68
|
+
throw new Error('Server configuration is missing.');
|
|
69
|
+
}
|
|
70
|
+
const { realmPath, serverConfig } = config;
|
|
71
|
+
const query = options?.query || {};
|
|
72
|
+
const url = constructUrl(serverConfig, realmPath, options?.journey, query);
|
|
73
|
+
const request = configureRequest();
|
|
74
|
+
const { requestMiddleware } = api.extra;
|
|
75
|
+
const response = await initQuery({ ...request, url: url }, 'begin', {
|
|
76
|
+
type: 'service',
|
|
77
|
+
tree: options?.journey,
|
|
78
|
+
})
|
|
79
|
+
.applyMiddleware(requestMiddleware)
|
|
80
|
+
.applyQuery(async (req) => {
|
|
81
|
+
const result = await baseQuery(req, api, api.extra);
|
|
82
|
+
return result;
|
|
83
|
+
});
|
|
84
|
+
return response;
|
|
85
|
+
},
|
|
86
|
+
}),
|
|
87
|
+
next: builder.mutation({
|
|
88
|
+
queryFn: async ({ step, options }, api, _, baseQuery) => {
|
|
89
|
+
const { config } = api.extra;
|
|
90
|
+
if (!config.serverConfig) {
|
|
91
|
+
throw new Error('Server configuration is missing.');
|
|
92
|
+
}
|
|
93
|
+
const { realmPath, serverConfig } = config;
|
|
94
|
+
const query = options?.query || {};
|
|
95
|
+
// TODO: Handle the `undefined` argument better
|
|
96
|
+
const url = constructUrl(serverConfig, realmPath, undefined, query);
|
|
97
|
+
const request = configureRequest(step);
|
|
98
|
+
const { requestMiddleware } = api.extra;
|
|
99
|
+
const response = await initQuery({ ...request, url }, 'continue')
|
|
100
|
+
.applyMiddleware(requestMiddleware)
|
|
101
|
+
.applyQuery(async (req) => {
|
|
102
|
+
const result = await baseQuery(req, api, api.extra);
|
|
103
|
+
return result;
|
|
104
|
+
});
|
|
105
|
+
return response;
|
|
106
|
+
},
|
|
107
|
+
}),
|
|
108
|
+
terminate: builder.mutation({
|
|
109
|
+
queryFn: async (options, api, _, baseQuery) => {
|
|
110
|
+
const { config } = api.extra;
|
|
111
|
+
if (!config.serverConfig) {
|
|
112
|
+
throw new Error('Server configuration is missing.');
|
|
113
|
+
}
|
|
114
|
+
const { realmPath, serverConfig } = config;
|
|
115
|
+
const query = { ...options?.query, _action: 'logout' };
|
|
116
|
+
const url = constructSessionsUrl(serverConfig, realmPath, query);
|
|
117
|
+
const request = configureSessionRequest();
|
|
118
|
+
const { requestMiddleware } = api.extra;
|
|
119
|
+
const response = await initQuery({ ...request, url }, 'terminate')
|
|
120
|
+
.applyMiddleware(requestMiddleware)
|
|
121
|
+
.applyQuery(async (req) => {
|
|
122
|
+
const result = await baseQuery(req, api, api.extra);
|
|
123
|
+
return result;
|
|
124
|
+
});
|
|
125
|
+
return response;
|
|
126
|
+
},
|
|
127
|
+
}),
|
|
128
|
+
}),
|
|
129
|
+
});
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Slice } from '@reduxjs/toolkit';
|
|
2
|
+
import type { Step } from '@forgerock/sdk-types';
|
|
3
|
+
import type { JourneyClientConfig } from './config.types.js';
|
|
4
|
+
export interface JourneyState {
|
|
5
|
+
authId?: string;
|
|
6
|
+
step?: Step;
|
|
7
|
+
error?: Error;
|
|
8
|
+
config?: JourneyClientConfig;
|
|
9
|
+
}
|
|
10
|
+
export declare const journeySlice: Slice<JourneyState>;
|
|
11
|
+
export declare const setConfig: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<`${string}/${string}`> | import("@reduxjs/toolkit").ActionCreatorWithPayload<any, `${string}/${string}`> | import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<any[], any, `${string}/${string}`, never, never> | import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<any[], any, `${string}/${string}`, never, any> | import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<any[], any, `${string}/${string}`, any, never> | import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<any[], any, `${string}/${string}`, any, any>;
|
|
12
|
+
//# sourceMappingURL=journey.slice.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"journey.slice.d.ts","sourceRoot":"","sources":["../../../src/lib/journey.slice.ts"],"names":[],"mappings":"AAOA,OAAO,EAA8B,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAErE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,CAAC,EAAE,mBAAmB,CAAC;CAC9B;AAID,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,YAAY,CAQ3C,CAAC;AAEH,eAAO,MAAQ,SAAS,qlBAAyB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025 Ping Identity Corporation. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* This software may be modified and distributed under the terms
|
|
5
|
+
* of the MIT license. See the LICENSE file for details.
|
|
6
|
+
*/
|
|
7
|
+
import { createSlice } from '@reduxjs/toolkit';
|
|
8
|
+
const initialState = {};
|
|
9
|
+
export const journeySlice = createSlice({
|
|
10
|
+
name: 'journey',
|
|
11
|
+
initialState,
|
|
12
|
+
reducers: {
|
|
13
|
+
setConfig: (state, action) => {
|
|
14
|
+
state.config = action.payload;
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
});
|
|
18
|
+
export const { setConfig } = journeySlice.actions;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Step } from '@forgerock/sdk-types';
|
|
2
|
+
import type { JourneyStep } from './step.utils.js';
|
|
3
|
+
import type { JourneyLoginFailure } from './login-failure.utils.js';
|
|
4
|
+
import type { JourneyLoginSuccess } from './login-success.utils.js';
|
|
5
|
+
declare function createJourneyObject(step: Step): JourneyStep | JourneyLoginSuccess | JourneyLoginFailure | undefined;
|
|
6
|
+
export { createJourneyObject };
|
|
7
|
+
//# sourceMappingURL=journey.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"journey.utils.d.ts","sourceRoot":"","sources":["../../../src/lib/journey.utils.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAMjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,iBAAS,mBAAmB,CAC1B,IAAI,EAAE,IAAI,GACT,WAAW,GAAG,mBAAmB,GAAG,mBAAmB,GAAG,SAAS,CAoBrE;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025 Ping Identity Corporation. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* This software may be modified and distributed under the terms
|
|
5
|
+
* of the MIT license. See the LICENSE file for details.
|
|
6
|
+
*/
|
|
7
|
+
import { StepType } from '@forgerock/sdk-types';
|
|
8
|
+
import { createJourneyLoginSuccess } from './login-success.utils.js';
|
|
9
|
+
import { createJourneyLoginFailure } from './login-failure.utils.js';
|
|
10
|
+
import { createJourneyStep } from './step.utils.js';
|
|
11
|
+
function createJourneyObject(step) {
|
|
12
|
+
let type;
|
|
13
|
+
if (step.authId) {
|
|
14
|
+
type = StepType.Step;
|
|
15
|
+
}
|
|
16
|
+
else if (step.successUrl) {
|
|
17
|
+
type = StepType.LoginSuccess;
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
type = StepType.LoginFailure;
|
|
21
|
+
}
|
|
22
|
+
switch (type) {
|
|
23
|
+
case StepType.LoginSuccess:
|
|
24
|
+
return createJourneyLoginSuccess(step);
|
|
25
|
+
case StepType.LoginFailure:
|
|
26
|
+
return createJourneyLoginFailure(step);
|
|
27
|
+
case StepType.Step:
|
|
28
|
+
return createJourneyStep(step);
|
|
29
|
+
default:
|
|
30
|
+
return undefined;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
export { createJourneyObject };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { StepType } from '@forgerock/sdk-types';
|
|
2
|
+
import type { Step, AuthResponse, FailureDetail } from '@forgerock/sdk-types';
|
|
3
|
+
import type { MessageCreator, ProcessedPropertyError } from './policy/interfaces.js';
|
|
4
|
+
type JourneyLoginFailure = AuthResponse & {
|
|
5
|
+
type: StepType.LoginFailure;
|
|
6
|
+
payload: Step;
|
|
7
|
+
getCode: () => number;
|
|
8
|
+
getDetail: () => FailureDetail | undefined;
|
|
9
|
+
getMessage: () => string | undefined;
|
|
10
|
+
getProcessedMessage: (messageCreator?: MessageCreator) => ProcessedPropertyError[];
|
|
11
|
+
getReason: () => string | undefined;
|
|
12
|
+
};
|
|
13
|
+
declare function createJourneyLoginFailure(payload: Step): JourneyLoginFailure;
|
|
14
|
+
export { createJourneyLoginFailure };
|
|
15
|
+
export type { JourneyLoginFailure };
|
|
16
|
+
//# sourceMappingURL=login-failure.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"login-failure.utils.d.ts","sourceRoot":"","sources":["../../../src/lib/login-failure.utils.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAI9E,OAAO,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAErF,KAAK,mBAAmB,GAAG,YAAY,GAAG;IACxC,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC;IAC5B,OAAO,EAAE,IAAI,CAAC;IACd,OAAO,EAAE,MAAM,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,aAAa,GAAG,SAAS,CAAC;IAC3C,UAAU,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACrC,mBAAmB,EAAE,CAAC,cAAc,CAAC,EAAE,cAAc,KAAK,sBAAsB,EAAE,CAAC;IACnF,SAAS,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CACrC,CAAC;AAyBF,iBAAS,yBAAyB,CAAC,OAAO,EAAE,IAAI,GAAG,mBAAmB,CAWrE;AAED,OAAO,EAAE,yBAAyB,EAAE,CAAC;AAErC,YAAY,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2020 - 2025 Ping Identity Corporation. All rights reserved.
|
|
3
|
+
* This software may be modified and distributed under the terms
|
|
4
|
+
* of the MIT license. See the LICENSE file for details.
|
|
5
|
+
*/
|
|
6
|
+
import { StepType } from '@forgerock/sdk-types';
|
|
7
|
+
import { Policy } from './policy/policy.js';
|
|
8
|
+
function getCode(payload) {
|
|
9
|
+
return Number(payload.code);
|
|
10
|
+
}
|
|
11
|
+
function getDetail(payload) {
|
|
12
|
+
return payload.detail;
|
|
13
|
+
}
|
|
14
|
+
function getMessage(payload) {
|
|
15
|
+
return payload.message;
|
|
16
|
+
}
|
|
17
|
+
function getProcessedMessage(payload, messageCreator) {
|
|
18
|
+
return Policy.parseErrors(payload, messageCreator);
|
|
19
|
+
}
|
|
20
|
+
function getReason(payload) {
|
|
21
|
+
return payload.reason;
|
|
22
|
+
}
|
|
23
|
+
function createJourneyLoginFailure(payload) {
|
|
24
|
+
return {
|
|
25
|
+
payload,
|
|
26
|
+
type: StepType.LoginFailure,
|
|
27
|
+
getCode: () => getCode(payload),
|
|
28
|
+
getDetail: () => getDetail(payload),
|
|
29
|
+
getMessage: () => getMessage(payload),
|
|
30
|
+
getProcessedMessage: (messageCreator) => getProcessedMessage(payload, messageCreator),
|
|
31
|
+
getReason: () => getReason(payload),
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
export { createJourneyLoginFailure };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { StepType } from '@forgerock/sdk-types';
|
|
2
|
+
import type { Step, AuthResponse } from '@forgerock/sdk-types';
|
|
3
|
+
type JourneyLoginSuccess = AuthResponse & {
|
|
4
|
+
type: StepType.LoginSuccess;
|
|
5
|
+
payload: Step;
|
|
6
|
+
getRealm: () => string | undefined;
|
|
7
|
+
getSessionToken: () => string | undefined;
|
|
8
|
+
getSuccessUrl: () => string | undefined;
|
|
9
|
+
};
|
|
10
|
+
declare function getRealm(payload: Step): string | undefined;
|
|
11
|
+
declare function getSessionToken(payload: Step): string | undefined;
|
|
12
|
+
declare function getSuccessUrl(payload: Step): string | undefined;
|
|
13
|
+
declare function createJourneyLoginSuccess(payload: Step): JourneyLoginSuccess;
|
|
14
|
+
export { createJourneyLoginSuccess, getRealm, getSessionToken, getSuccessUrl };
|
|
15
|
+
export type { JourneyLoginSuccess };
|
|
16
|
+
//# sourceMappingURL=login-success.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"login-success.utils.d.ts","sourceRoot":"","sources":["../../../src/lib/login-success.utils.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAE/D,KAAK,mBAAmB,GAAG,YAAY,GAAG;IACxC,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC;IAC5B,OAAO,EAAE,IAAI,CAAC;IACd,QAAQ,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACnC,eAAe,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IAC1C,aAAa,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CACzC,CAAC;AAEF,iBAAS,QAAQ,CAAC,OAAO,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAEnD;AAED,iBAAS,eAAe,CAAC,OAAO,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAE1D;AAED,iBAAS,aAAa,CAAC,OAAO,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAExD;AAED,iBAAS,yBAAyB,CAAC,OAAO,EAAE,IAAI,GAAG,mBAAmB,CAQrE;AAED,OAAO,EAAE,yBAAyB,EAAE,QAAQ,EAAE,eAAe,EAAE,aAAa,EAAE,CAAC;AAE/E,YAAY,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2020 - 2025 Ping Identity Corporation. All rights reserved.
|
|
3
|
+
* This software may be modified and distributed under the terms
|
|
4
|
+
* of the MIT license. See the LICENSE file for details.
|
|
5
|
+
*/
|
|
6
|
+
import { StepType } from '@forgerock/sdk-types';
|
|
7
|
+
function getRealm(payload) {
|
|
8
|
+
return payload.realm;
|
|
9
|
+
}
|
|
10
|
+
function getSessionToken(payload) {
|
|
11
|
+
return payload.tokenId;
|
|
12
|
+
}
|
|
13
|
+
function getSuccessUrl(payload) {
|
|
14
|
+
return payload.successUrl;
|
|
15
|
+
}
|
|
16
|
+
function createJourneyLoginSuccess(payload) {
|
|
17
|
+
return {
|
|
18
|
+
payload,
|
|
19
|
+
type: StepType.LoginSuccess,
|
|
20
|
+
getRealm: () => getRealm(payload),
|
|
21
|
+
getSessionToken: () => getSessionToken(payload),
|
|
22
|
+
getSuccessUrl: () => getSuccessUrl(payload),
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
export { createJourneyLoginSuccess, getRealm, getSessionToken, getSuccessUrl };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { FailedPolicyRequirement } from '@forgerock/sdk-types';
|
|
2
|
+
export interface MessageCreator {
|
|
3
|
+
[key: string]: (propertyName: string, params?: {
|
|
4
|
+
[key: string]: unknown;
|
|
5
|
+
}) => string;
|
|
6
|
+
}
|
|
7
|
+
export interface ProcessedPropertyError {
|
|
8
|
+
detail: FailedPolicyRequirement;
|
|
9
|
+
messages: string[];
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=interfaces.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../src/lib/policy/interfaces.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAEpE,MAAM,WAAW,cAAc;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,KAAK,MAAM,CAAC;CACtF;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,uBAAuB,CAAC;IAChC,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-creator.d.ts","sourceRoot":"","sources":["../../../../src/lib/policy/message-creator.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,eAAO,MAAM,qBAAqB,EAAE,cAkDnC,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @forgerock/ping-javascript-sdk
|
|
3
|
+
*
|
|
4
|
+
* message-creator.ts
|
|
5
|
+
*
|
|
6
|
+
* Copyright (c) 2020 - 2025 Ping Identity Corporation. All rights reserved.
|
|
7
|
+
* This software may be modified and distributed under the terms
|
|
8
|
+
* of the MIT license. See the LICENSE file for details.
|
|
9
|
+
*/
|
|
10
|
+
import { PolicyKey } from '@forgerock/sdk-types';
|
|
11
|
+
import { getProp, plural } from '@forgerock/sdk-utilities';
|
|
12
|
+
export const defaultMessageCreator = {
|
|
13
|
+
[PolicyKey.CannotContainCharacters]: (property, params) => {
|
|
14
|
+
const forbiddenChars = getProp(params, 'forbiddenChars', '');
|
|
15
|
+
return `${property} must not contain following characters: "${forbiddenChars}"`;
|
|
16
|
+
},
|
|
17
|
+
[PolicyKey.CannotContainDuplicates]: (property, params) => {
|
|
18
|
+
const duplicateValue = getProp(params, 'duplicateValue', '');
|
|
19
|
+
return `${property} must not contain duplicates: "${duplicateValue}"`;
|
|
20
|
+
},
|
|
21
|
+
[PolicyKey.CannotContainOthers]: (property, params) => {
|
|
22
|
+
const disallowedFields = getProp(params, 'disallowedFields', '');
|
|
23
|
+
return `${property} must not contain: "${disallowedFields}"`;
|
|
24
|
+
},
|
|
25
|
+
[PolicyKey.LeastCapitalLetters]: (property, params) => {
|
|
26
|
+
const numCaps = getProp(params, 'numCaps', 0);
|
|
27
|
+
return `${property} must contain at least ${numCaps} capital ${plural(numCaps, 'letter')}`;
|
|
28
|
+
},
|
|
29
|
+
[PolicyKey.LeastNumbers]: (property, params) => {
|
|
30
|
+
const numNums = getProp(params, 'numNums', 0);
|
|
31
|
+
return `${property} must contain at least ${numNums} numeric ${plural(numNums, 'value')}`;
|
|
32
|
+
},
|
|
33
|
+
[PolicyKey.MatchRegexp]: (property) => `${property} has failed the "MATCH_REGEXP" policy`,
|
|
34
|
+
[PolicyKey.MaximumLength]: (property, params) => {
|
|
35
|
+
const maxLength = getProp(params, 'maxLength', 0);
|
|
36
|
+
return `${property} must be at most ${maxLength} ${plural(maxLength, 'character')}`;
|
|
37
|
+
},
|
|
38
|
+
[PolicyKey.MaximumNumber]: (property) => `${property} has failed the "MAXIMUM_NUMBER_VALUE" policy`,
|
|
39
|
+
[PolicyKey.MinimumLength]: (property, params) => {
|
|
40
|
+
const minLength = getProp(params, 'minLength', 0);
|
|
41
|
+
return `${property} must be at least ${minLength} ${plural(minLength, 'character')}`;
|
|
42
|
+
},
|
|
43
|
+
[PolicyKey.MinimumNumber]: (property) => `${property} has failed the "MINIMUM_NUMBER_VALUE" policy`,
|
|
44
|
+
[PolicyKey.Required]: (property) => `${property} is required`,
|
|
45
|
+
[PolicyKey.Unique]: (property) => `${property} must be unique`,
|
|
46
|
+
[PolicyKey.UnknownPolicy]: (property, params) => {
|
|
47
|
+
const policyRequirement = getProp(params, 'policyRequirement', 'Unknown');
|
|
48
|
+
return `${property}: Unknown policy requirement "${policyRequirement}"`;
|
|
49
|
+
},
|
|
50
|
+
[PolicyKey.ValidArrayItems]: (property) => `${property} has failed the "VALID_ARRAY_ITEMS" policy`,
|
|
51
|
+
[PolicyKey.ValidDate]: (property) => `${property} has an invalid date`,
|
|
52
|
+
[PolicyKey.ValidEmailAddress]: (property) => `${property} has an invalid email address`,
|
|
53
|
+
[PolicyKey.ValidNameFormat]: (property) => `${property} has an invalid name format`,
|
|
54
|
+
[PolicyKey.ValidNumber]: (property) => `${property} has an invalid number`,
|
|
55
|
+
[PolicyKey.ValidPhoneFormat]: (property) => `${property} has an invalid phone number`,
|
|
56
|
+
[PolicyKey.ValidQueryFilter]: (property) => `${property} has failed the "VALID_QUERY_FILTER" policy`,
|
|
57
|
+
[PolicyKey.ValidType]: (property) => `${property} has failed the "VALID_TYPE" policy`,
|
|
58
|
+
};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { FailedPolicyRequirement, PolicyRequirement, Step } from '@forgerock/sdk-types';
|
|
2
|
+
import type { MessageCreator, ProcessedPropertyError } from './interfaces.js';
|
|
3
|
+
/**
|
|
4
|
+
* Utility for processing policy failures into human readable messages.
|
|
5
|
+
*
|
|
6
|
+
* Example:
|
|
7
|
+
*
|
|
8
|
+
* ```js
|
|
9
|
+
* // Create message overrides and extensions as needed
|
|
10
|
+
* const messageCreator = {
|
|
11
|
+
* [PolicyKey.unique]: (property: string) => (
|
|
12
|
+
* `this is a custom message for "UNIQUE" policy of ${property}`
|
|
13
|
+
* ),
|
|
14
|
+
* CUSTOM_POLICY: (property: string, params: any) => (
|
|
15
|
+
* `this is a custom message for "${params.policyRequirement}" policy of ${property}`
|
|
16
|
+
* ),
|
|
17
|
+
* };
|
|
18
|
+
*
|
|
19
|
+
* const thisStep = await journeyClient.next(previousStep);
|
|
20
|
+
*
|
|
21
|
+
* if (thisStep.type === StepType.LoginFailure) {
|
|
22
|
+
* const messagesStepMethod = thisStep.getProcessedMessage(messageCreator);
|
|
23
|
+
* const messagesClassMethod = Policy.parseErrors(thisStep, messageCreator)
|
|
24
|
+
* }
|
|
25
|
+
*/
|
|
26
|
+
export declare abstract class Policy {
|
|
27
|
+
/**
|
|
28
|
+
* Parses policy errors and generates human readable error messages.
|
|
29
|
+
*
|
|
30
|
+
* @param {Step} err The step containing the error.
|
|
31
|
+
* @param {MessageCreator} messageCreator
|
|
32
|
+
* Extensible and overridable custom error messages for policy failures.
|
|
33
|
+
* @return {ProcessedPropertyError[]} Array of objects containing all processed policy errors.
|
|
34
|
+
*/
|
|
35
|
+
static parseErrors(err: Partial<Step>, messageCreator?: MessageCreator): ProcessedPropertyError[];
|
|
36
|
+
/**
|
|
37
|
+
* Parses a failed policy and returns a string array of error messages.
|
|
38
|
+
*
|
|
39
|
+
* @param {FailedPolicyRequirement} failedPolicy The detail data of the failed policy.
|
|
40
|
+
* @param {MessageCreator} customMessage
|
|
41
|
+
* Extensible and overridable custom error messages for policy failures.
|
|
42
|
+
* @return {string[]} Array of strings with all processed policy errors.
|
|
43
|
+
*/
|
|
44
|
+
static parseFailedPolicyRequirement(failedPolicy: FailedPolicyRequirement, messageCreator?: MessageCreator): string[];
|
|
45
|
+
/**
|
|
46
|
+
* Parses a policy error into a human readable error message.
|
|
47
|
+
*
|
|
48
|
+
* @param {string} property The property with the policy failure.
|
|
49
|
+
* @param {PolicyRequirement} policy The policy failure data.
|
|
50
|
+
* @param {MessageCreator} customMessage
|
|
51
|
+
* Extensible and overridable custom error messages for policy failures.
|
|
52
|
+
* @return {string} Human readable error message.
|
|
53
|
+
*/
|
|
54
|
+
static parsePolicyRequirement(property: string, policy: PolicyRequirement, messageCreator?: MessageCreator): string;
|
|
55
|
+
}
|
|
56
|
+
export type { MessageCreator, ProcessedPropertyError };
|
|
57
|
+
//# sourceMappingURL=policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../../src/lib/policy/policy.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAI7F,OAAO,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAE9E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,8BAAsB,MAAM;IAC1B;;;;;;;OAOG;WACW,WAAW,CACvB,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,EAClB,cAAc,CAAC,EAAE,cAAc,GAC9B,sBAAsB,EAAE;IAe3B;;;;;;;OAOG;WACW,4BAA4B,CACxC,YAAY,EAAE,uBAAuB,EACrC,cAAc,CAAC,EAAE,cAAc,GAC9B,MAAM,EAAE;IAUX;;;;;;;;OAQG;WACW,sBAAsB,CAClC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,iBAAiB,EACzB,cAAc,GAAE,cAAmB,GAClC,MAAM;CAiCV;AAED,YAAY,EAAE,cAAc,EAAE,sBAAsB,EAAE,CAAC"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2020 - 2025 Ping Identity Corporation. All rights reserved.
|
|
3
|
+
* This software may be modified and distributed under the terms
|
|
4
|
+
* of the MIT license. See the LICENSE file for details.
|
|
5
|
+
*/
|
|
6
|
+
import { PolicyKey } from '@forgerock/sdk-types';
|
|
7
|
+
import { defaultMessageCreator } from './message-creator.js';
|
|
8
|
+
/**
|
|
9
|
+
* Utility for processing policy failures into human readable messages.
|
|
10
|
+
*
|
|
11
|
+
* Example:
|
|
12
|
+
*
|
|
13
|
+
* ```js
|
|
14
|
+
* // Create message overrides and extensions as needed
|
|
15
|
+
* const messageCreator = {
|
|
16
|
+
* [PolicyKey.unique]: (property: string) => (
|
|
17
|
+
* `this is a custom message for "UNIQUE" policy of ${property}`
|
|
18
|
+
* ),
|
|
19
|
+
* CUSTOM_POLICY: (property: string, params: any) => (
|
|
20
|
+
* `this is a custom message for "${params.policyRequirement}" policy of ${property}`
|
|
21
|
+
* ),
|
|
22
|
+
* };
|
|
23
|
+
*
|
|
24
|
+
* const thisStep = await journeyClient.next(previousStep);
|
|
25
|
+
*
|
|
26
|
+
* if (thisStep.type === StepType.LoginFailure) {
|
|
27
|
+
* const messagesStepMethod = thisStep.getProcessedMessage(messageCreator);
|
|
28
|
+
* const messagesClassMethod = Policy.parseErrors(thisStep, messageCreator)
|
|
29
|
+
* }
|
|
30
|
+
*/
|
|
31
|
+
export class Policy {
|
|
32
|
+
/**
|
|
33
|
+
* Parses policy errors and generates human readable error messages.
|
|
34
|
+
*
|
|
35
|
+
* @param {Step} err The step containing the error.
|
|
36
|
+
* @param {MessageCreator} messageCreator
|
|
37
|
+
* Extensible and overridable custom error messages for policy failures.
|
|
38
|
+
* @return {ProcessedPropertyError[]} Array of objects containing all processed policy errors.
|
|
39
|
+
*/
|
|
40
|
+
static parseErrors(err, messageCreator) {
|
|
41
|
+
const errors = [];
|
|
42
|
+
if (err.detail && err.detail.failedPolicyRequirements) {
|
|
43
|
+
err.detail.failedPolicyRequirements.map((x) => {
|
|
44
|
+
errors.push.apply(errors, [
|
|
45
|
+
{
|
|
46
|
+
detail: x,
|
|
47
|
+
messages: this.parseFailedPolicyRequirement(x, messageCreator),
|
|
48
|
+
},
|
|
49
|
+
]);
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
return errors;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Parses a failed policy and returns a string array of error messages.
|
|
56
|
+
*
|
|
57
|
+
* @param {FailedPolicyRequirement} failedPolicy The detail data of the failed policy.
|
|
58
|
+
* @param {MessageCreator} customMessage
|
|
59
|
+
* Extensible and overridable custom error messages for policy failures.
|
|
60
|
+
* @return {string[]} Array of strings with all processed policy errors.
|
|
61
|
+
*/
|
|
62
|
+
static parseFailedPolicyRequirement(failedPolicy, messageCreator) {
|
|
63
|
+
const errors = [];
|
|
64
|
+
failedPolicy.policyRequirements.map((policyRequirement) => {
|
|
65
|
+
errors.push(this.parsePolicyRequirement(failedPolicy.property, policyRequirement, messageCreator));
|
|
66
|
+
});
|
|
67
|
+
return errors;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Parses a policy error into a human readable error message.
|
|
71
|
+
*
|
|
72
|
+
* @param {string} property The property with the policy failure.
|
|
73
|
+
* @param {PolicyRequirement} policy The policy failure data.
|
|
74
|
+
* @param {MessageCreator} customMessage
|
|
75
|
+
* Extensible and overridable custom error messages for policy failures.
|
|
76
|
+
* @return {string} Human readable error message.
|
|
77
|
+
*/
|
|
78
|
+
static parsePolicyRequirement(property, policy, messageCreator = {}) {
|
|
79
|
+
// AM is returning policy requirement failures as JSON strings
|
|
80
|
+
let policyObject;
|
|
81
|
+
if (typeof policy === 'string') {
|
|
82
|
+
try {
|
|
83
|
+
const parsed = JSON.parse(policy);
|
|
84
|
+
policyObject =
|
|
85
|
+
typeof parsed === 'string'
|
|
86
|
+
? { policyRequirement: parsed }
|
|
87
|
+
: parsed;
|
|
88
|
+
}
|
|
89
|
+
catch {
|
|
90
|
+
policyObject = { policyRequirement: policy };
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
policyObject = { ...policy };
|
|
95
|
+
}
|
|
96
|
+
const policyRequirement = policyObject.policyRequirement;
|
|
97
|
+
// Determine which message creator function to use
|
|
98
|
+
const effectiveMessageCreator = messageCreator[policyRequirement] ||
|
|
99
|
+
defaultMessageCreator[policyRequirement] ||
|
|
100
|
+
defaultMessageCreator[PolicyKey.UnknownPolicy];
|
|
101
|
+
// Flatten the parameters and create the message
|
|
102
|
+
const params = policyObject.params
|
|
103
|
+
? { ...policyObject.params, policyRequirement }
|
|
104
|
+
: { policyRequirement };
|
|
105
|
+
const message = effectiveMessageCreator(property, params);
|
|
106
|
+
return message;
|
|
107
|
+
}
|
|
108
|
+
}
|