@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,35 @@
|
|
|
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 { SuspendedTextOutputCallback } from './suspended-text-output-callback.js';
|
|
14
|
+
|
|
15
|
+
describe('SuspendedTextOutputCallback', () => {
|
|
16
|
+
it('should instantiate correctly and inherit from TextOutputCallback', () => {
|
|
17
|
+
const payload: Callback = {
|
|
18
|
+
type: callbackType.SuspendedTextOutputCallback,
|
|
19
|
+
output: [
|
|
20
|
+
{
|
|
21
|
+
name: 'message',
|
|
22
|
+
value: 'Suspended message',
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
name: 'messageType',
|
|
26
|
+
value: '0',
|
|
27
|
+
},
|
|
28
|
+
],
|
|
29
|
+
input: [],
|
|
30
|
+
};
|
|
31
|
+
const cb = new SuspendedTextOutputCallback(payload);
|
|
32
|
+
expect(cb.getMessage()).toBe('Suspended message');
|
|
33
|
+
expect(cb.getMessageType()).toBe('0');
|
|
34
|
+
});
|
|
35
|
+
});
|
|
@@ -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 { TextOutputCallback } from './text-output-callback.js';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Represents a callback used to display a message.
|
|
13
|
+
*/
|
|
14
|
+
export class SuspendedTextOutputCallback extends TextOutputCallback {
|
|
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,55 @@
|
|
|
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 { TermsAndConditionsCallback } from './terms-and-conditions-callback.js';
|
|
14
|
+
|
|
15
|
+
describe('TermsAndConditionsCallback', () => {
|
|
16
|
+
const date = new Date().toString();
|
|
17
|
+
const payload: Callback = {
|
|
18
|
+
type: callbackType.TermsAndConditionsCallback,
|
|
19
|
+
output: [
|
|
20
|
+
{
|
|
21
|
+
name: 'terms',
|
|
22
|
+
value: 'Lorem ipsum...',
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
name: 'version',
|
|
26
|
+
value: '1.0',
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
name: 'createDate',
|
|
30
|
+
value: date,
|
|
31
|
+
},
|
|
32
|
+
],
|
|
33
|
+
input: [
|
|
34
|
+
{
|
|
35
|
+
name: 'IDToken1',
|
|
36
|
+
value: false,
|
|
37
|
+
},
|
|
38
|
+
],
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
it('should allow getting terms, version, and date', () => {
|
|
42
|
+
const cb = new TermsAndConditionsCallback(payload);
|
|
43
|
+
expect(cb.getTerms()).toBe('Lorem ipsum...');
|
|
44
|
+
expect(cb.getVersion()).toBe('1.0');
|
|
45
|
+
expect(cb.getCreateDate()).toEqual(new Date(date));
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
it('should allow setting acceptance', () => {
|
|
49
|
+
const cb = new TermsAndConditionsCallback(payload);
|
|
50
|
+
cb.setAccepted(true);
|
|
51
|
+
expect(cb.getInputValue()).toBe(true);
|
|
52
|
+
cb.setAccepted(false);
|
|
53
|
+
expect(cb.getInputValue()).toBe(false);
|
|
54
|
+
});
|
|
55
|
+
});
|
|
@@ -0,0 +1,51 @@
|
|
|
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 acceptance of terms and conditions.
|
|
13
|
+
*/
|
|
14
|
+
export class TermsAndConditionsCallback 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 terms and conditions content.
|
|
24
|
+
*/
|
|
25
|
+
public getTerms(): string {
|
|
26
|
+
return this.getOutputByName<string>('terms', '');
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Gets the version of the terms and conditions.
|
|
31
|
+
*/
|
|
32
|
+
public getVersion(): string {
|
|
33
|
+
return this.getOutputByName<string>('version', '');
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Gets the date of the terms and conditions.
|
|
38
|
+
*/
|
|
39
|
+
public getCreateDate(): Date | null {
|
|
40
|
+
const data = this.getOutputByName<string>('createDate', '');
|
|
41
|
+
const date = new Date(data);
|
|
42
|
+
return Number.isNaN(date.getTime()) ? null : date;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Sets the callback's acceptance.
|
|
47
|
+
*/
|
|
48
|
+
public setAccepted(accepted = true): void {
|
|
49
|
+
this.setInputValue(accepted);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @forgerock/ping-javascript-sdk
|
|
3
|
+
*
|
|
4
|
+
* attribute-input-callback.test.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
|
+
|
|
11
|
+
import { callbackType } from '@forgerock/sdk-types';
|
|
12
|
+
|
|
13
|
+
import type { Callback } from '@forgerock/sdk-types';
|
|
14
|
+
|
|
15
|
+
import { TextInputCallback } from './text-input-callback.js';
|
|
16
|
+
|
|
17
|
+
describe('TextInputCallback', () => {
|
|
18
|
+
const payload: Callback = {
|
|
19
|
+
type: callbackType.TextInputCallback,
|
|
20
|
+
output: [
|
|
21
|
+
{
|
|
22
|
+
name: 'prompt',
|
|
23
|
+
value: 'Provide a nickname for this account',
|
|
24
|
+
},
|
|
25
|
+
],
|
|
26
|
+
input: [
|
|
27
|
+
{
|
|
28
|
+
name: 'IDToken1',
|
|
29
|
+
value: '',
|
|
30
|
+
},
|
|
31
|
+
],
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
it('reads/writes basic properties', () => {
|
|
35
|
+
const cb = new TextInputCallback(payload);
|
|
36
|
+
|
|
37
|
+
expect(cb.getPrompt()).toBe('Provide a nickname for this account');
|
|
38
|
+
|
|
39
|
+
cb.setInput('Test setting input');
|
|
40
|
+
|
|
41
|
+
expect(cb.getInputValue()).toBe('Test setting input');
|
|
42
|
+
});
|
|
43
|
+
});
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2022 - 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 retrieve input from the user.
|
|
13
|
+
*/
|
|
14
|
+
export class TextInputCallback 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 callback's input value.
|
|
31
|
+
*/
|
|
32
|
+
public setInput(input: string): void {
|
|
33
|
+
this.setInputValue(input);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
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 { TextOutputCallback } from './text-output-callback.js';
|
|
14
|
+
|
|
15
|
+
describe('TextOutputCallback', () => {
|
|
16
|
+
const payload: Callback = {
|
|
17
|
+
type: callbackType.TextOutputCallback,
|
|
18
|
+
output: [
|
|
19
|
+
{
|
|
20
|
+
name: 'message',
|
|
21
|
+
value: 'This is a message',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
name: 'messageType',
|
|
25
|
+
value: '0',
|
|
26
|
+
},
|
|
27
|
+
],
|
|
28
|
+
input: [],
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
it('should allow getting the message and message type', () => {
|
|
32
|
+
const cb = new TextOutputCallback(payload);
|
|
33
|
+
expect(cb.getMessage()).toBe('This is a message');
|
|
34
|
+
expect(cb.getMessageType()).toBe('0');
|
|
35
|
+
});
|
|
36
|
+
});
|
|
@@ -0,0 +1,36 @@
|
|
|
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 display a message.
|
|
13
|
+
*/
|
|
14
|
+
export class TextOutputCallback 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 message content.
|
|
24
|
+
*/
|
|
25
|
+
public getMessage(): string {
|
|
26
|
+
return this.getOutputByName<string>('message', '');
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Gets the message type.
|
|
31
|
+
* Official docs state this is a number, but in practice it's a string.
|
|
32
|
+
*/
|
|
33
|
+
public getMessageType(): string {
|
|
34
|
+
return this.getOutputByName<string>('messageType', '');
|
|
35
|
+
}
|
|
36
|
+
}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @forgerock/ping-javascript-sdk
|
|
3
|
+
*
|
|
4
|
+
* validated-create-password-callback.test.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
|
+
|
|
11
|
+
import { callbackType } from '@forgerock/sdk-types';
|
|
12
|
+
|
|
13
|
+
import type { Callback } from '@forgerock/sdk-types';
|
|
14
|
+
|
|
15
|
+
import { ValidatedCreatePasswordCallback } from './validated-create-password-callback.js';
|
|
16
|
+
|
|
17
|
+
describe('ValidatedCreatePasswordCallback', () => {
|
|
18
|
+
const payload: Callback = {
|
|
19
|
+
type: callbackType.ValidatedCreatePasswordCallback,
|
|
20
|
+
output: [
|
|
21
|
+
{
|
|
22
|
+
name: 'echoOn',
|
|
23
|
+
value: false,
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
name: 'required',
|
|
27
|
+
value: true,
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
name: 'policies',
|
|
31
|
+
value: {
|
|
32
|
+
policyRequirements: ['a', 'b'],
|
|
33
|
+
name: 'password',
|
|
34
|
+
policies: [],
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: 'failedPolicies',
|
|
39
|
+
value: [JSON.stringify({ failedPolicies: { c: 'c', d: 'd' } })],
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
name: 'validateOnly',
|
|
43
|
+
value: false,
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
name: 'prompt',
|
|
47
|
+
value: 'Password',
|
|
48
|
+
},
|
|
49
|
+
],
|
|
50
|
+
input: [
|
|
51
|
+
{
|
|
52
|
+
name: 'IDToken2',
|
|
53
|
+
value: '',
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
name: 'IDToken2validateOnly',
|
|
57
|
+
value: false,
|
|
58
|
+
},
|
|
59
|
+
],
|
|
60
|
+
_id: 1,
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
it('reads/writes basic properties with "validate only"', () => {
|
|
64
|
+
const cb = new ValidatedCreatePasswordCallback(payload);
|
|
65
|
+
cb.setPassword('abcd123');
|
|
66
|
+
cb.setValidateOnly(true);
|
|
67
|
+
|
|
68
|
+
expect(cb.getType()).toBe('ValidatedCreatePasswordCallback');
|
|
69
|
+
expect(cb.getPrompt()).toBe('Password');
|
|
70
|
+
expect(cb.isRequired()).toBe(true);
|
|
71
|
+
expect(cb.getPolicies().policyRequirements).toStrictEqual(['a', 'b']);
|
|
72
|
+
expect(cb.getFailedPolicies()).toStrictEqual([{ failedPolicies: { c: 'c', d: 'd' } }]);
|
|
73
|
+
if (!cb.payload.input) throw new Error('Input is not defined');
|
|
74
|
+
expect(cb.payload.input[0].value).toBe('abcd123');
|
|
75
|
+
expect(cb.payload.input[1].value).toBe(true);
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
it('writes validate only to `false` for submission', () => {
|
|
79
|
+
const cb = new ValidatedCreatePasswordCallback(payload);
|
|
80
|
+
cb.setValidateOnly(false);
|
|
81
|
+
if (!cb.payload.input) throw new Error('Input is not defined');
|
|
82
|
+
expect(cb.payload.input[1].value).toBe(false);
|
|
83
|
+
});
|
|
84
|
+
});
|
|
@@ -0,0 +1,75 @@
|
|
|
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 valid platform password.
|
|
13
|
+
*/
|
|
14
|
+
export class ValidatedCreatePasswordCallback 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
|
+
const failedPolicies = this.getOutputByName<PolicyRequirement[]>(
|
|
27
|
+
'failedPolicies',
|
|
28
|
+
[],
|
|
29
|
+
) as unknown as string[];
|
|
30
|
+
try {
|
|
31
|
+
return failedPolicies.map((v) => JSON.parse(v)) as PolicyRequirement[];
|
|
32
|
+
} catch {
|
|
33
|
+
throw new Error(
|
|
34
|
+
'Unable to parse "failed policies" from the ForgeRock server. The JSON within `ValidatedCreatePasswordCallback` was either malformed or missing.',
|
|
35
|
+
);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* Gets the callback's applicable policies.
|
|
41
|
+
*/
|
|
42
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
43
|
+
public getPolicies(): Record<string, any> {
|
|
44
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
45
|
+
return this.getOutputByName<Record<string, any>>('policies', {});
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Gets the callback's prompt.
|
|
50
|
+
*/
|
|
51
|
+
public getPrompt(): string {
|
|
52
|
+
return this.getOutputByName<string>('prompt', '');
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Gets whether the password is required.
|
|
57
|
+
*/
|
|
58
|
+
public isRequired(): boolean {
|
|
59
|
+
return this.getOutputByName<boolean>('required', false);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Sets the callback's password.
|
|
64
|
+
*/
|
|
65
|
+
public setPassword(password: string): void {
|
|
66
|
+
this.setInputValue(password);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Set if validating value only.
|
|
71
|
+
*/
|
|
72
|
+
public setValidateOnly(value: boolean): void {
|
|
73
|
+
this.setInputValue(value, /validateOnly/);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @forgerock/ping-javascript-sdk
|
|
3
|
+
*
|
|
4
|
+
* validated-create-username-callback.test.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
|
+
|
|
11
|
+
import { callbackType } from '@forgerock/sdk-types';
|
|
12
|
+
|
|
13
|
+
import type { Callback } from '@forgerock/sdk-types';
|
|
14
|
+
|
|
15
|
+
import { ValidatedCreateUsernameCallback } from './validated-create-username-callback.js';
|
|
16
|
+
|
|
17
|
+
describe('ValidatedCreateUsernameCallback', () => {
|
|
18
|
+
const payload: Callback = {
|
|
19
|
+
type: callbackType.ValidatedCreateUsernameCallback,
|
|
20
|
+
output: [
|
|
21
|
+
{
|
|
22
|
+
name: 'echoOn',
|
|
23
|
+
value: false,
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
name: 'required',
|
|
27
|
+
value: true,
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
name: 'policies',
|
|
31
|
+
value: {
|
|
32
|
+
policyRequirements: ['a', 'b'],
|
|
33
|
+
name: 'username',
|
|
34
|
+
policies: [],
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: 'failedPolicies',
|
|
39
|
+
value: [JSON.stringify({ failedPolicies: { c: 'c', d: 'd' } })],
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
name: 'validateOnly',
|
|
43
|
+
value: false,
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
name: 'prompt',
|
|
47
|
+
value: 'Username',
|
|
48
|
+
},
|
|
49
|
+
],
|
|
50
|
+
input: [
|
|
51
|
+
{
|
|
52
|
+
name: 'IDToken2',
|
|
53
|
+
value: '',
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
name: 'IDToken2validateOnly',
|
|
57
|
+
value: false,
|
|
58
|
+
},
|
|
59
|
+
],
|
|
60
|
+
_id: 1,
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
it('reads/writes basic properties with "validate only"', () => {
|
|
64
|
+
const cb = new ValidatedCreateUsernameCallback(payload);
|
|
65
|
+
cb.setName('abcd123');
|
|
66
|
+
cb.setValidateOnly(true);
|
|
67
|
+
|
|
68
|
+
expect(cb.getType()).toBe('ValidatedCreateUsernameCallback');
|
|
69
|
+
expect(cb.getPrompt()).toBe('Username');
|
|
70
|
+
expect(cb.isRequired()).toBe(true);
|
|
71
|
+
expect(cb.getPolicies().policyRequirements).toStrictEqual(['a', 'b']);
|
|
72
|
+
expect(cb.getFailedPolicies()).toStrictEqual([{ failedPolicies: { c: 'c', d: 'd' } }]);
|
|
73
|
+
if (!cb.payload.input) throw new Error('Input is not defined');
|
|
74
|
+
expect(cb.payload.input[0].value).toBe('abcd123');
|
|
75
|
+
expect(cb.payload.input[1].value).toBe(true);
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
it('writes validate only to `false` for submission', () => {
|
|
79
|
+
const cb = new ValidatedCreateUsernameCallback(payload);
|
|
80
|
+
cb.setValidateOnly(false);
|
|
81
|
+
if (!cb.payload.input) throw new Error('Input is not defined');
|
|
82
|
+
expect(cb.payload.input[1].value).toBe(false);
|
|
83
|
+
});
|
|
84
|
+
});
|
|
@@ -0,0 +1,76 @@
|
|
|
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 type { Callback, PolicyRequirement } from '@forgerock/sdk-types';
|
|
9
|
+
|
|
10
|
+
import { BaseCallback } from './base-callback.js';
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Represents a callback used to collect a valid platform username.
|
|
14
|
+
*/
|
|
15
|
+
export class ValidatedCreateUsernameCallback extends BaseCallback {
|
|
16
|
+
/**
|
|
17
|
+
* @param payload The raw payload returned by OpenAM
|
|
18
|
+
*/
|
|
19
|
+
constructor(public override payload: Callback) {
|
|
20
|
+
super(payload);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Gets the callback's prompt.
|
|
25
|
+
*/
|
|
26
|
+
public getPrompt(): string {
|
|
27
|
+
return this.getOutputByName<string>('prompt', '');
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Gets the callback's failed policies.
|
|
32
|
+
*/
|
|
33
|
+
public getFailedPolicies(): PolicyRequirement[] {
|
|
34
|
+
const failedPolicies = this.getOutputByName<PolicyRequirement[]>(
|
|
35
|
+
'failedPolicies',
|
|
36
|
+
[],
|
|
37
|
+
) as unknown as string[];
|
|
38
|
+
try {
|
|
39
|
+
return failedPolicies.map((v) => JSON.parse(v)) as PolicyRequirement[];
|
|
40
|
+
} catch {
|
|
41
|
+
throw new Error(
|
|
42
|
+
'Unable to parse "failed policies" from the ForgeRock server. The JSON within `ValidatedCreateUsernameCallback` was either malformed or missing.',
|
|
43
|
+
);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Gets the callback's applicable policies.
|
|
49
|
+
*/
|
|
50
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
51
|
+
public getPolicies(): Record<string, any> {
|
|
52
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
53
|
+
return this.getOutputByName<Record<string, any>>('policies', {});
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Gets whether the username is required.
|
|
58
|
+
*/
|
|
59
|
+
public isRequired(): boolean {
|
|
60
|
+
return this.getOutputByName<boolean>('required', false);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Sets the callback's username.
|
|
65
|
+
*/
|
|
66
|
+
public setName(name: string): void {
|
|
67
|
+
this.setInputValue(name);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Set if validating value only.
|
|
72
|
+
*/
|
|
73
|
+
public setValidateOnly(value: boolean): void {
|
|
74
|
+
this.setInputValue(value, /validateOnly/);
|
|
75
|
+
}
|
|
76
|
+
}
|