@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,95 @@
|
|
|
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
|
+
|
|
8
|
+
import { callbackType } from '@forgerock/sdk-types';
|
|
9
|
+
|
|
10
|
+
import type { Callback } from '@forgerock/sdk-types';
|
|
11
|
+
|
|
12
|
+
import { BaseCallback } from './base-callback.js';
|
|
13
|
+
|
|
14
|
+
import { AttributeInputCallback } from './attribute-input-callback.js';
|
|
15
|
+
import { ChoiceCallback } from './choice-callback.js';
|
|
16
|
+
import { ConfirmationCallback } from './confirmation-callback.js';
|
|
17
|
+
import { DeviceProfileCallback } from './device-profile-callback.js';
|
|
18
|
+
import { HiddenValueCallback } from './hidden-value-callback.js';
|
|
19
|
+
import { KbaCreateCallback } from './kba-create-callback.js';
|
|
20
|
+
import { MetadataCallback } from './metadata-callback.js';
|
|
21
|
+
import { NameCallback } from './name-callback.js';
|
|
22
|
+
import { PasswordCallback } from './password-callback.js';
|
|
23
|
+
import { PingOneProtectEvaluationCallback } from './ping-protect-evaluation-callback.js';
|
|
24
|
+
import { PingOneProtectInitializeCallback } from './ping-protect-initialize-callback.js';
|
|
25
|
+
import { PollingWaitCallback } from './polling-wait-callback.js';
|
|
26
|
+
import { ReCaptchaCallback } from './recaptcha-callback.js';
|
|
27
|
+
import { ReCaptchaEnterpriseCallback } from './recaptcha-enterprise-callback.js';
|
|
28
|
+
import { RedirectCallback } from './redirect-callback.js';
|
|
29
|
+
import { SelectIdPCallback } from './select-idp-callback.js';
|
|
30
|
+
import { SuspendedTextOutputCallback } from './suspended-text-output-callback.js';
|
|
31
|
+
import { TermsAndConditionsCallback } from './terms-and-conditions-callback.js';
|
|
32
|
+
import { TextInputCallback } from './text-input-callback.js';
|
|
33
|
+
import { TextOutputCallback } from './text-output-callback.js';
|
|
34
|
+
import { ValidatedCreatePasswordCallback } from './validated-create-password-callback.js';
|
|
35
|
+
import { ValidatedCreateUsernameCallback } from './validated-create-username-callback.js';
|
|
36
|
+
|
|
37
|
+
export type CallbackFactory = (callback: Callback) => BaseCallback;
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* @hidden
|
|
41
|
+
*/
|
|
42
|
+
export function createCallback(callback: Callback): BaseCallback {
|
|
43
|
+
switch (callback.type) {
|
|
44
|
+
case callbackType.BooleanAttributeInputCallback:
|
|
45
|
+
return new AttributeInputCallback<boolean>(callback);
|
|
46
|
+
case callbackType.ChoiceCallback:
|
|
47
|
+
return new ChoiceCallback(callback);
|
|
48
|
+
case callbackType.ConfirmationCallback:
|
|
49
|
+
return new ConfirmationCallback(callback);
|
|
50
|
+
case callbackType.DeviceProfileCallback:
|
|
51
|
+
return new DeviceProfileCallback(callback);
|
|
52
|
+
case callbackType.HiddenValueCallback:
|
|
53
|
+
return new HiddenValueCallback(callback);
|
|
54
|
+
case callbackType.KbaCreateCallback:
|
|
55
|
+
return new KbaCreateCallback(callback);
|
|
56
|
+
case callbackType.MetadataCallback:
|
|
57
|
+
return new MetadataCallback(callback);
|
|
58
|
+
case callbackType.NameCallback:
|
|
59
|
+
return new NameCallback(callback);
|
|
60
|
+
case callbackType.NumberAttributeInputCallback:
|
|
61
|
+
return new AttributeInputCallback<number>(callback);
|
|
62
|
+
case callbackType.PasswordCallback:
|
|
63
|
+
return new PasswordCallback(callback);
|
|
64
|
+
case callbackType.PingOneProtectEvaluationCallback:
|
|
65
|
+
return new PingOneProtectEvaluationCallback(callback);
|
|
66
|
+
case callbackType.PingOneProtectInitializeCallback:
|
|
67
|
+
return new PingOneProtectInitializeCallback(callback);
|
|
68
|
+
case callbackType.PollingWaitCallback:
|
|
69
|
+
return new PollingWaitCallback(callback);
|
|
70
|
+
case callbackType.ReCaptchaCallback:
|
|
71
|
+
return new ReCaptchaCallback(callback);
|
|
72
|
+
case callbackType.ReCaptchaEnterpriseCallback:
|
|
73
|
+
return new ReCaptchaEnterpriseCallback(callback);
|
|
74
|
+
case callbackType.RedirectCallback:
|
|
75
|
+
return new RedirectCallback(callback);
|
|
76
|
+
case callbackType.SelectIdPCallback:
|
|
77
|
+
return new SelectIdPCallback(callback);
|
|
78
|
+
case callbackType.StringAttributeInputCallback:
|
|
79
|
+
return new AttributeInputCallback<string>(callback);
|
|
80
|
+
case callbackType.SuspendedTextOutputCallback:
|
|
81
|
+
return new SuspendedTextOutputCallback(callback);
|
|
82
|
+
case callbackType.TermsAndConditionsCallback:
|
|
83
|
+
return new TermsAndConditionsCallback(callback);
|
|
84
|
+
case callbackType.TextInputCallback:
|
|
85
|
+
return new TextInputCallback(callback);
|
|
86
|
+
case callbackType.TextOutputCallback:
|
|
87
|
+
return new TextOutputCallback(callback);
|
|
88
|
+
case callbackType.ValidatedCreatePasswordCallback:
|
|
89
|
+
return new ValidatedCreatePasswordCallback(callback);
|
|
90
|
+
case callbackType.ValidatedCreateUsernameCallback:
|
|
91
|
+
return new ValidatedCreateUsernameCallback(callback);
|
|
92
|
+
default:
|
|
93
|
+
return new BaseCallback(callback);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
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
|
+
|
|
8
|
+
import { callbackType } from '@forgerock/sdk-types';
|
|
9
|
+
import { describe, it, expect } from 'vitest';
|
|
10
|
+
|
|
11
|
+
import type { Callback } from '@forgerock/sdk-types';
|
|
12
|
+
|
|
13
|
+
import { HiddenValueCallback } from './hidden-value-callback.js';
|
|
14
|
+
|
|
15
|
+
describe('HiddenValueCallback', () => {
|
|
16
|
+
it('should instantiate correctly', () => {
|
|
17
|
+
const payload: Callback = {
|
|
18
|
+
type: callbackType.HiddenValueCallback,
|
|
19
|
+
output: [{ name: 'value', value: 'some-hidden-value' }],
|
|
20
|
+
input: [{ name: 'IDToken1', value: '' }],
|
|
21
|
+
};
|
|
22
|
+
const cb = new HiddenValueCallback(payload);
|
|
23
|
+
expect(cb).toBeInstanceOf(HiddenValueCallback);
|
|
24
|
+
expect(cb.getOutputValue('value')).toBe('some-hidden-value');
|
|
25
|
+
});
|
|
26
|
+
});
|
|
@@ -0,0 +1,21 @@
|
|
|
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
|
+
|
|
7
|
+
import type { Callback } from '@forgerock/sdk-types';
|
|
8
|
+
|
|
9
|
+
import { BaseCallback } from './base-callback.js';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Represents a callback used to collect information indirectly from the user.
|
|
13
|
+
*/
|
|
14
|
+
export class HiddenValueCallback extends BaseCallback {
|
|
15
|
+
/**
|
|
16
|
+
* @param payload The raw payload returned by OpenAM
|
|
17
|
+
*/
|
|
18
|
+
constructor(public override payload: Callback) {
|
|
19
|
+
super(payload);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
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
|
+
|
|
8
|
+
import { callbackType } from '@forgerock/sdk-types';
|
|
9
|
+
import { describe, it, expect } from 'vitest';
|
|
10
|
+
|
|
11
|
+
import type { Callback } from '@forgerock/sdk-types';
|
|
12
|
+
|
|
13
|
+
import { KbaCreateCallback } from './kba-create-callback.js';
|
|
14
|
+
|
|
15
|
+
describe('KbaCreateCallback', () => {
|
|
16
|
+
const payload: Callback = {
|
|
17
|
+
type: callbackType.KbaCreateCallback,
|
|
18
|
+
output: [
|
|
19
|
+
{
|
|
20
|
+
name: 'prompt',
|
|
21
|
+
value: 'What is your favorite color?',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
name: 'predefinedQuestions',
|
|
25
|
+
value: ['Question 1', 'Question 2'],
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
name: 'allowUserDefinedQuestions',
|
|
29
|
+
value: true,
|
|
30
|
+
},
|
|
31
|
+
],
|
|
32
|
+
input: [
|
|
33
|
+
{
|
|
34
|
+
name: 'IDToken1question',
|
|
35
|
+
value: '',
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: 'IDToken1answer',
|
|
39
|
+
value: '',
|
|
40
|
+
},
|
|
41
|
+
],
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
it('should allow getting the prompt and questions', () => {
|
|
45
|
+
const cb = new KbaCreateCallback(payload);
|
|
46
|
+
expect(cb.getPrompt()).toBe('What is your favorite color?');
|
|
47
|
+
expect(cb.getPredefinedQuestions()).toEqual(['Question 1', 'Question 2']);
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
it('should allow setting the question and answer', () => {
|
|
51
|
+
const cb = new KbaCreateCallback(payload);
|
|
52
|
+
cb.setQuestion('My custom question');
|
|
53
|
+
cb.setAnswer('Blue');
|
|
54
|
+
expect(cb.getInputValue('IDToken1question')).toBe('My custom question');
|
|
55
|
+
expect(cb.getInputValue('IDToken1answer')).toBe('Blue');
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
it('should indicate if user-defined questions are allowed', () => {
|
|
59
|
+
const cb = new KbaCreateCallback(payload);
|
|
60
|
+
expect(cb.isAllowedUserDefinedQuestions()).toBe(true);
|
|
61
|
+
});
|
|
62
|
+
});
|
|
@@ -0,0 +1,68 @@
|
|
|
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
|
+
|
|
7
|
+
import type { Callback } from '@forgerock/sdk-types';
|
|
8
|
+
|
|
9
|
+
import { BaseCallback } from './base-callback.js';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Represents a callback used to collect KBA-style security questions and answers.
|
|
13
|
+
*/
|
|
14
|
+
export class KbaCreateCallback extends BaseCallback {
|
|
15
|
+
/**
|
|
16
|
+
* @param payload The raw payload returned by OpenAM
|
|
17
|
+
*/
|
|
18
|
+
constructor(public override payload: Callback) {
|
|
19
|
+
super(payload);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Gets the callback prompt.
|
|
24
|
+
*/
|
|
25
|
+
public getPrompt(): string {
|
|
26
|
+
return this.getOutputByName<string>('prompt', '');
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Gets the callback's list of pre-defined security questions.
|
|
31
|
+
*/
|
|
32
|
+
public getPredefinedQuestions(): string[] {
|
|
33
|
+
return this.getOutputByName<string[]>('predefinedQuestions', []);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Gets whether the user can define questions.
|
|
38
|
+
*/
|
|
39
|
+
public isAllowedUserDefinedQuestions(): boolean {
|
|
40
|
+
return this.getOutputByName<boolean>('allowUserDefinedQuestions', false);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Sets the callback's security question.
|
|
45
|
+
*/
|
|
46
|
+
public setQuestion(question: string): void {
|
|
47
|
+
this.setValue('question', question);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Sets the callback's security question answer.
|
|
52
|
+
*/
|
|
53
|
+
public setAnswer(answer: string): void {
|
|
54
|
+
this.setValue('answer', answer);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
private setValue(type: 'question' | 'answer', value: string): void {
|
|
58
|
+
if (!this.payload.input) {
|
|
59
|
+
throw new Error('KBA payload is missing input');
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
const input = this.payload.input.find((x) => x.name.endsWith(type));
|
|
63
|
+
if (!input) {
|
|
64
|
+
throw new Error(`No input has name ending in "${type}"`);
|
|
65
|
+
}
|
|
66
|
+
input.value = value;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
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
|
+
|
|
8
|
+
import { callbackType } from '@forgerock/sdk-types';
|
|
9
|
+
import { describe, it, expect } from 'vitest';
|
|
10
|
+
|
|
11
|
+
import type { Callback } from '@forgerock/sdk-types';
|
|
12
|
+
|
|
13
|
+
import { MetadataCallback } from './metadata-callback.js';
|
|
14
|
+
|
|
15
|
+
describe('MetadataCallback', () => {
|
|
16
|
+
it('should allow getting the data', () => {
|
|
17
|
+
const mockData = { foo: 'bar', baz: 123 };
|
|
18
|
+
const payload: Callback = {
|
|
19
|
+
type: callbackType.MetadataCallback,
|
|
20
|
+
output: [
|
|
21
|
+
{
|
|
22
|
+
name: 'data',
|
|
23
|
+
value: mockData,
|
|
24
|
+
},
|
|
25
|
+
],
|
|
26
|
+
input: [],
|
|
27
|
+
};
|
|
28
|
+
const cb = new MetadataCallback(payload);
|
|
29
|
+
expect(cb.getData()).toEqual(mockData);
|
|
30
|
+
});
|
|
31
|
+
});
|
|
@@ -0,0 +1,28 @@
|
|
|
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
|
+
|
|
7
|
+
import type { Callback } from '@forgerock/sdk-types';
|
|
8
|
+
|
|
9
|
+
import { BaseCallback } from './base-callback.js';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Represents a callback used to deliver and collect miscellaneous data.
|
|
13
|
+
*/
|
|
14
|
+
export class MetadataCallback extends BaseCallback {
|
|
15
|
+
/**
|
|
16
|
+
* @param payload The raw payload returned by OpenAM
|
|
17
|
+
*/
|
|
18
|
+
constructor(public override payload: Callback) {
|
|
19
|
+
super(payload);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Gets the callback's data.
|
|
24
|
+
*/
|
|
25
|
+
public getData<T>(): T {
|
|
26
|
+
return this.getOutputByName<T>('data', {} as T);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
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
|
+
|
|
8
|
+
import { callbackType } from '@forgerock/sdk-types';
|
|
9
|
+
import { describe, it, expect } from 'vitest';
|
|
10
|
+
|
|
11
|
+
import type { Callback } from '@forgerock/sdk-types';
|
|
12
|
+
|
|
13
|
+
import { NameCallback } from './name-callback.js';
|
|
14
|
+
|
|
15
|
+
describe('NameCallback', () => {
|
|
16
|
+
const payload: Callback = {
|
|
17
|
+
type: callbackType.NameCallback,
|
|
18
|
+
output: [
|
|
19
|
+
{
|
|
20
|
+
name: 'prompt',
|
|
21
|
+
value: 'Username',
|
|
22
|
+
},
|
|
23
|
+
],
|
|
24
|
+
input: [
|
|
25
|
+
{
|
|
26
|
+
name: 'IDToken1',
|
|
27
|
+
value: '',
|
|
28
|
+
},
|
|
29
|
+
],
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
it('should allow getting the prompt', () => {
|
|
33
|
+
const cb = new NameCallback(payload);
|
|
34
|
+
expect(cb.getPrompt()).toBe('Username');
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
it('should allow setting the name', () => {
|
|
38
|
+
const cb = new NameCallback(payload);
|
|
39
|
+
cb.setName('test-user');
|
|
40
|
+
expect(cb.getInputValue()).toBe('test-user');
|
|
41
|
+
});
|
|
42
|
+
});
|
|
@@ -0,0 +1,35 @@
|
|
|
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
|
+
|
|
7
|
+
import type { Callback } from '@forgerock/sdk-types';
|
|
8
|
+
|
|
9
|
+
import { BaseCallback } from './base-callback.js';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Represents a callback used to collect a username.
|
|
13
|
+
*/
|
|
14
|
+
export class NameCallback extends BaseCallback {
|
|
15
|
+
/**
|
|
16
|
+
* @param payload The raw payload returned by OpenAM
|
|
17
|
+
*/
|
|
18
|
+
constructor(public override payload: Callback) {
|
|
19
|
+
super(payload);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Gets the callback's prompt.
|
|
24
|
+
*/
|
|
25
|
+
public getPrompt(): string {
|
|
26
|
+
return this.getOutputByName<string>('prompt', '');
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Sets the username.
|
|
31
|
+
*/
|
|
32
|
+
public setName(name: string): void {
|
|
33
|
+
this.setInputValue(name);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
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
|
+
|
|
8
|
+
import { callbackType } from '@forgerock/sdk-types';
|
|
9
|
+
import { describe, it, expect } from 'vitest';
|
|
10
|
+
|
|
11
|
+
import type { Callback } from '@forgerock/sdk-types';
|
|
12
|
+
|
|
13
|
+
import { PasswordCallback } from './password-callback.js';
|
|
14
|
+
|
|
15
|
+
describe('PasswordCallback', () => {
|
|
16
|
+
const payload: Callback = {
|
|
17
|
+
type: callbackType.PasswordCallback,
|
|
18
|
+
output: [
|
|
19
|
+
{
|
|
20
|
+
name: 'prompt',
|
|
21
|
+
value: 'Password',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
name: 'policies',
|
|
25
|
+
value: ['policy1', 'policy2'],
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
name: 'failedPolicies',
|
|
29
|
+
value: ['failedPolicy1'],
|
|
30
|
+
},
|
|
31
|
+
],
|
|
32
|
+
input: [
|
|
33
|
+
{
|
|
34
|
+
name: 'IDToken1',
|
|
35
|
+
value: '',
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
it('should allow getting the prompt', () => {
|
|
41
|
+
const cb = new PasswordCallback(payload);
|
|
42
|
+
expect(cb.getPrompt()).toBe('Password');
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
it('should allow getting policies', () => {
|
|
46
|
+
const cb = new PasswordCallback(payload);
|
|
47
|
+
expect(cb.getPolicies()).toEqual(['policy1', 'policy2']);
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
it('should allow getting failed policies', () => {
|
|
51
|
+
const cb = new PasswordCallback(payload);
|
|
52
|
+
expect(cb.getFailedPolicies()).toEqual(['failedPolicy1']);
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
it('should allow setting the password', () => {
|
|
56
|
+
const cb = new PasswordCallback(payload);
|
|
57
|
+
cb.setPassword('new-password');
|
|
58
|
+
expect(cb.getInputValue()).toBe('new-password');
|
|
59
|
+
});
|
|
60
|
+
});
|
|
@@ -0,0 +1,49 @@
|
|
|
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
|
+
|
|
7
|
+
import type { Callback, PolicyRequirement } from '@forgerock/sdk-types';
|
|
8
|
+
|
|
9
|
+
import { BaseCallback } from './base-callback.js';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Represents a callback used to collect a password.
|
|
13
|
+
*/
|
|
14
|
+
export class PasswordCallback extends BaseCallback {
|
|
15
|
+
/**
|
|
16
|
+
* @param payload The raw payload returned by OpenAM
|
|
17
|
+
*/
|
|
18
|
+
constructor(public override payload: Callback) {
|
|
19
|
+
super(payload);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Gets the callback's failed policies.
|
|
24
|
+
*/
|
|
25
|
+
public getFailedPolicies(): PolicyRequirement[] {
|
|
26
|
+
return this.getOutputByName<PolicyRequirement[]>('failedPolicies', []);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Gets the callback's applicable policies.
|
|
31
|
+
*/
|
|
32
|
+
public getPolicies(): string[] {
|
|
33
|
+
return this.getOutputByName<string[]>('policies', []);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Gets the callback's prompt.
|
|
38
|
+
*/
|
|
39
|
+
public getPrompt(): string {
|
|
40
|
+
return this.getOutputByName<string>('prompt', '');
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Sets the password.
|
|
45
|
+
*/
|
|
46
|
+
public setPassword(password: string): void {
|
|
47
|
+
this.setInputValue(password);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @forgerock/ping-javascript-sdk
|
|
3
|
+
*
|
|
4
|
+
* ping-protect-evaluation-callback.test.ts
|
|
5
|
+
*
|
|
6
|
+
* Copyright (c) 2024 - 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
|
+
|
|
11
|
+
import { callbackType } from '@forgerock/sdk-types';
|
|
12
|
+
import { vi, describe, it, expect } from 'vitest';
|
|
13
|
+
|
|
14
|
+
import { PingOneProtectEvaluationCallback } from './ping-protect-evaluation-callback.js';
|
|
15
|
+
|
|
16
|
+
describe('PingOneProtectEvaluationCallback', () => {
|
|
17
|
+
it('should be defined', () => {
|
|
18
|
+
expect(PingOneProtectEvaluationCallback).toBeDefined();
|
|
19
|
+
});
|
|
20
|
+
it('should test that the pauseBehavior method can be called', () => {
|
|
21
|
+
const callback = new PingOneProtectEvaluationCallback({
|
|
22
|
+
type: callbackType.PingOneProtectEvaluationCallback,
|
|
23
|
+
output: [{ name: 'pauseBehavioralData', value: true }],
|
|
24
|
+
});
|
|
25
|
+
const mock = vi.spyOn(callback, 'getPauseBehavioralData');
|
|
26
|
+
callback.getPauseBehavioralData();
|
|
27
|
+
expect(mock).toHaveBeenCalled();
|
|
28
|
+
});
|
|
29
|
+
it('should test setData method', () => {
|
|
30
|
+
const callback = new PingOneProtectEvaluationCallback({
|
|
31
|
+
type: callbackType.PingOneProtectEvaluationCallback,
|
|
32
|
+
output: [{ name: 'signals', value: '' }],
|
|
33
|
+
input: [
|
|
34
|
+
{
|
|
35
|
+
name: 'IDToken1signals',
|
|
36
|
+
value: '',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'IDToken1clientError',
|
|
40
|
+
value: '',
|
|
41
|
+
},
|
|
42
|
+
],
|
|
43
|
+
});
|
|
44
|
+
const mock = vi.spyOn(callback, 'setData');
|
|
45
|
+
callback.setData('data');
|
|
46
|
+
expect(mock).toHaveBeenCalledWith('data');
|
|
47
|
+
expect(callback.getInputValue('IDToken1signals')).toBe('data');
|
|
48
|
+
});
|
|
49
|
+
it('should test setClientError method', () => {
|
|
50
|
+
const callback = new PingOneProtectEvaluationCallback({
|
|
51
|
+
type: callbackType.PingOneProtectEvaluationCallback,
|
|
52
|
+
output: [{ name: 'signals', value: '' }],
|
|
53
|
+
input: [
|
|
54
|
+
{
|
|
55
|
+
name: 'IDToken1signals',
|
|
56
|
+
value: '',
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
name: 'IDToken1clientError',
|
|
60
|
+
value: '',
|
|
61
|
+
},
|
|
62
|
+
],
|
|
63
|
+
});
|
|
64
|
+
const mock = vi.spyOn(callback, 'setClientError');
|
|
65
|
+
callback.setClientError('error i just set');
|
|
66
|
+
expect(mock).toHaveBeenCalledWith('error i just set');
|
|
67
|
+
expect(callback.getInputValue('IDToken1clientError')).toBe('error i just set');
|
|
68
|
+
});
|
|
69
|
+
});
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2024 - 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
|
+
|
|
7
|
+
import type { Callback } from '@forgerock/sdk-types';
|
|
8
|
+
|
|
9
|
+
import { BaseCallback } from './base-callback.js';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @class - Represents a callback used to complete and package up device and behavioral data.
|
|
13
|
+
*/
|
|
14
|
+
export class PingOneProtectEvaluationCallback extends BaseCallback {
|
|
15
|
+
/**
|
|
16
|
+
* @param payload The raw payload returned by OpenAM
|
|
17
|
+
*/
|
|
18
|
+
constructor(public override payload: Callback) {
|
|
19
|
+
super(payload);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Gets the callback's pauseBehavioralData value.
|
|
24
|
+
* @returns {boolean}
|
|
25
|
+
*/
|
|
26
|
+
public getPauseBehavioralData(): boolean {
|
|
27
|
+
return this.getOutputByName<boolean>('pauseBehavioralData', false);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* @method setData - Set the result of data collection
|
|
32
|
+
* @param {string} data - Data from calling pingProtect.get()
|
|
33
|
+
* @returns {void}
|
|
34
|
+
*/
|
|
35
|
+
public setData(data: string): void {
|
|
36
|
+
this.setInputValue(data, /signals/);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* @method setClientError - Set the client error message
|
|
41
|
+
* @param {string} errorMessage - Error message
|
|
42
|
+
* @returns {void}
|
|
43
|
+
*/
|
|
44
|
+
public setClientError(errorMessage: string): void {
|
|
45
|
+
this.setInputValue(errorMessage, /clientError/);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Example of callback:
|
|
51
|
+
{
|
|
52
|
+
"type": "PingOneProtectEvaluationCallback",
|
|
53
|
+
"output": [
|
|
54
|
+
{
|
|
55
|
+
"name": "pauseBehavioralData",
|
|
56
|
+
"value": true
|
|
57
|
+
}
|
|
58
|
+
],
|
|
59
|
+
"input": [
|
|
60
|
+
{
|
|
61
|
+
"name": "IDToken1signals",
|
|
62
|
+
"value": ""
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"name": "IDToken1clientError",
|
|
66
|
+
"value": ""
|
|
67
|
+
}
|
|
68
|
+
]
|
|
69
|
+
}
|
|
70
|
+
*/
|