Releases: ForgeRock/ping-javascript-sdk
Release list
@forgerock/storage@2.1.0
Patch Changes
-
#555
d849256Thanks @ancheetah! - Fixes files distributed in sdk-effects packages. Excludes files not in/distfolder. -
Updated dependencies [
4fe7bfe]:- @forgerock/sdk-types@2.1.0
@forgerock/sdk-utilities@2.1.0
Minor Changes
-
#684
4fe7bfeThanks @SteinGabriel! - Add unified cross-platform SDK configuration supportNew utility functions in
@forgerock/sdk-utilitiesconvert the cross-platform unified JSON config schema into each client's native config shape. Validation and mapping are owned entirely by the utilities layer — client factories remain typed to their existing config interfaces.New in
@forgerock/sdk-utilities:makeOidcConfig(json)— validates and maps unified JSON →OidcConfig; throws on invalid inputmakeJourneyConfig(json)— validates and maps unified JSON →JourneyClientConfig; throws on invalid inputmakeDavinciConfig(json)— validates and maps unified JSON →DaVinciConfig; throws on invalid inputUnifiedSdkConfig,UnifiedOidcConfig,UnifiedJourneyConfigtypesvalidateUnifiedSdkConfig/validateUnifiedOidcConfig— pure validation returningEither<T, ConfigValidationError[]>unifiedToOidcConfig,unifiedToJourneyConfig,unifiedToDavinciConfig— pure mappers returningEither<T, ConfigValidationError>AuthDisplayValue,AuthPromptValuetypes (canonical source — shared betweenOidcConfigandGetAuthorizationUrlOptions)
Usage:
import { makeDavinciConfig } from '@forgerock/sdk-utilities'; const client = await davinci({ config: makeDavinciConfig(unifiedJsonConfig) });
New in
@forgerock/sdk-types:OidcConfig,JourneyClientConfig,DaVinciConfigmoved here as canonical types (previously mirrored insdk-utilitiesasMapped*types)AuthDisplayValue,AuthPromptValuetypes added (renamed fromOidcDisplayValue/OidcPromptValue)GetAuthorizationUrlOptionsextended withloginHint,nonce,display,uiLocales,acrValues;promptwidened to include'select_account'
Updated in
@forgerock/sdk-logger:LogLevelnow re-exported from@forgerock/sdk-types(single source of truth); runtime behaviour unchanged
New in
@forgerock/sdk-oidc:buildAuthorizeParamsforwards all new OIDC authorize params into the URL
New in
@forgerock/oidc-client:endSessionappendspost_logout_redirect_uriwhensignOutRedirectUriis set on config- Authorize URL construction forwards
loginHint,state,nonce,display,prompt,uiLocales,acrValues,additionalParametersfrom config
New in
@forgerock/journey-client:- No API change — consume
makeJourneyConfigat call-site to use unified JSON config
New in
@forgerock/davinci-client:- No API change — consume
makeDavinciConfigat call-site to use unified JSON config
Patch Changes
- Updated dependencies [
4fe7bfe]:- @forgerock/sdk-types@2.1.0
@forgerock/sdk-types@2.1.0
Minor Changes
-
#684
4fe7bfeThanks @SteinGabriel! - Add unified cross-platform SDK configuration supportNew utility functions in
@forgerock/sdk-utilitiesconvert the cross-platform unified JSON config schema into each client's native config shape. Validation and mapping are owned entirely by the utilities layer — client factories remain typed to their existing config interfaces.New in
@forgerock/sdk-utilities:makeOidcConfig(json)— validates and maps unified JSON →OidcConfig; throws on invalid inputmakeJourneyConfig(json)— validates and maps unified JSON →JourneyClientConfig; throws on invalid inputmakeDavinciConfig(json)— validates and maps unified JSON →DaVinciConfig; throws on invalid inputUnifiedSdkConfig,UnifiedOidcConfig,UnifiedJourneyConfigtypesvalidateUnifiedSdkConfig/validateUnifiedOidcConfig— pure validation returningEither<T, ConfigValidationError[]>unifiedToOidcConfig,unifiedToJourneyConfig,unifiedToDavinciConfig— pure mappers returningEither<T, ConfigValidationError>AuthDisplayValue,AuthPromptValuetypes (canonical source — shared betweenOidcConfigandGetAuthorizationUrlOptions)
Usage:
import { makeDavinciConfig } from '@forgerock/sdk-utilities'; const client = await davinci({ config: makeDavinciConfig(unifiedJsonConfig) });
New in
@forgerock/sdk-types:OidcConfig,JourneyClientConfig,DaVinciConfigmoved here as canonical types (previously mirrored insdk-utilitiesasMapped*types)AuthDisplayValue,AuthPromptValuetypes added (renamed fromOidcDisplayValue/OidcPromptValue)GetAuthorizationUrlOptionsextended withloginHint,nonce,display,uiLocales,acrValues;promptwidened to include'select_account'
Updated in
@forgerock/sdk-logger:LogLevelnow re-exported from@forgerock/sdk-types(single source of truth); runtime behaviour unchanged
New in
@forgerock/sdk-oidc:buildAuthorizeParamsforwards all new OIDC authorize params into the URL
New in
@forgerock/oidc-client:endSessionappendspost_logout_redirect_uriwhensignOutRedirectUriis set on config- Authorize URL construction forwards
loginHint,state,nonce,display,prompt,uiLocales,acrValues,additionalParametersfrom config
New in
@forgerock/journey-client:- No API change — consume
makeJourneyConfigat call-site to use unified JSON config
New in
@forgerock/davinci-client:- No API change — consume
makeDavinciConfigat call-site to use unified JSON config
@forgerock/sdk-request-middleware@2.1.0
Minor Changes
-
#563
ec39137Thanks @ancheetah! - AddspollStatus()method andPollingCollectorto@forgerock/davinci-clientfor polling support in DaVinci flows.Pass a
PollingCollectortodavinciClient.pollStatus(collector)to get a poller function. The polling mode is detected automatically from the collector:- Challenge polling: Periodically calls the
/statusendpoint until the challenge is resolved. - Continue polling: Performs a delay and returns a status based on remaining poll retries. Call the returned poller function repeatedly in a loop until it resolves with the next node in the flow or an error.
Adds ability to intercept the polling request with middleware.
- Challenge polling: Periodically calls the
-
#631
15d616dThanks @ryanbas21! - Add support for PAR in oidc-client requests for redirect flows
Patch Changes
- #555
d849256Thanks @ancheetah! - Fixes files distributed in sdk-effects packages. Excludes files not in/distfolder.
@forgerock/sdk-oidc@2.1.0
Minor Changes
-
#684
4fe7bfeThanks @SteinGabriel! - Add unified cross-platform SDK configuration supportNew utility functions in
@forgerock/sdk-utilitiesconvert the cross-platform unified JSON config schema into each client's native config shape. Validation and mapping are owned entirely by the utilities layer — client factories remain typed to their existing config interfaces.New in
@forgerock/sdk-utilities:makeOidcConfig(json)— validates and maps unified JSON →OidcConfig; throws on invalid inputmakeJourneyConfig(json)— validates and maps unified JSON →JourneyClientConfig; throws on invalid inputmakeDavinciConfig(json)— validates and maps unified JSON →DaVinciConfig; throws on invalid inputUnifiedSdkConfig,UnifiedOidcConfig,UnifiedJourneyConfigtypesvalidateUnifiedSdkConfig/validateUnifiedOidcConfig— pure validation returningEither<T, ConfigValidationError[]>unifiedToOidcConfig,unifiedToJourneyConfig,unifiedToDavinciConfig— pure mappers returningEither<T, ConfigValidationError>AuthDisplayValue,AuthPromptValuetypes (canonical source — shared betweenOidcConfigandGetAuthorizationUrlOptions)
Usage:
import { makeDavinciConfig } from '@forgerock/sdk-utilities'; const client = await davinci({ config: makeDavinciConfig(unifiedJsonConfig) });
New in
@forgerock/sdk-types:OidcConfig,JourneyClientConfig,DaVinciConfigmoved here as canonical types (previously mirrored insdk-utilitiesasMapped*types)AuthDisplayValue,AuthPromptValuetypes added (renamed fromOidcDisplayValue/OidcPromptValue)GetAuthorizationUrlOptionsextended withloginHint,nonce,display,uiLocales,acrValues;promptwidened to include'select_account'
Updated in
@forgerock/sdk-logger:LogLevelnow re-exported from@forgerock/sdk-types(single source of truth); runtime behaviour unchanged
New in
@forgerock/sdk-oidc:buildAuthorizeParamsforwards all new OIDC authorize params into the URL
New in
@forgerock/oidc-client:endSessionappendspost_logout_redirect_uriwhensignOutRedirectUriis set on config- Authorize URL construction forwards
loginHint,state,nonce,display,prompt,uiLocales,acrValues,additionalParametersfrom config
New in
@forgerock/journey-client:- No API change — consume
makeJourneyConfigat call-site to use unified JSON config
New in
@forgerock/davinci-client:- No API change — consume
makeDavinciConfigat call-site to use unified JSON config
-
#631
15d616dThanks @ryanbas21! - Add support for PAR in oidc-client requests for redirect flows
Patch Changes
-
#555
d849256Thanks @ancheetah! - Fixes files distributed in sdk-effects packages. Excludes files not in/distfolder. -
Updated dependencies [
4fe7bfe]:- @forgerock/sdk-utilities@2.1.0
- @forgerock/sdk-types@2.1.0
@forgerock/sdk-logger@2.1.0
Patch Changes
-
#555
d849256Thanks @ancheetah! - Fixes files distributed in sdk-effects packages. Excludes files not in/distfolder. -
#684
4fe7bfeThanks @SteinGabriel! - Add unified cross-platform SDK configuration supportNew utility functions in
@forgerock/sdk-utilitiesconvert the cross-platform unified JSON config schema into each client's native config shape. Validation and mapping are owned entirely by the utilities layer — client factories remain typed to their existing config interfaces.New in
@forgerock/sdk-utilities:makeOidcConfig(json)— validates and maps unified JSON →OidcConfig; throws on invalid inputmakeJourneyConfig(json)— validates and maps unified JSON →JourneyClientConfig; throws on invalid inputmakeDavinciConfig(json)— validates and maps unified JSON →DaVinciConfig; throws on invalid inputUnifiedSdkConfig,UnifiedOidcConfig,UnifiedJourneyConfigtypesvalidateUnifiedSdkConfig/validateUnifiedOidcConfig— pure validation returningEither<T, ConfigValidationError[]>unifiedToOidcConfig,unifiedToJourneyConfig,unifiedToDavinciConfig— pure mappers returningEither<T, ConfigValidationError>AuthDisplayValue,AuthPromptValuetypes (canonical source — shared betweenOidcConfigandGetAuthorizationUrlOptions)
Usage:
import { makeDavinciConfig } from '@forgerock/sdk-utilities'; const client = await davinci({ config: makeDavinciConfig(unifiedJsonConfig) });
New in
@forgerock/sdk-types:OidcConfig,JourneyClientConfig,DaVinciConfigmoved here as canonical types (previously mirrored insdk-utilitiesasMapped*types)AuthDisplayValue,AuthPromptValuetypes added (renamed fromOidcDisplayValue/OidcPromptValue)GetAuthorizationUrlOptionsextended withloginHint,nonce,display,uiLocales,acrValues;promptwidened to include'select_account'
Updated in
@forgerock/sdk-logger:LogLevelnow re-exported from@forgerock/sdk-types(single source of truth); runtime behaviour unchanged
New in
@forgerock/sdk-oidc:buildAuthorizeParamsforwards all new OIDC authorize params into the URL
New in
@forgerock/oidc-client:endSessionappendspost_logout_redirect_uriwhensignOutRedirectUriis set on config- Authorize URL construction forwards
loginHint,state,nonce,display,prompt,uiLocales,acrValues,additionalParametersfrom config
New in
@forgerock/journey-client:- No API change — consume
makeJourneyConfigat call-site to use unified JSON config
New in
@forgerock/davinci-client:- No API change — consume
makeDavinciConfigat call-site to use unified JSON config
-
Updated dependencies [
4fe7bfe]:- @forgerock/sdk-types@2.1.0
@forgerock/protect@2.1.0
Patch Changes
- #578
096733dThanks @SteinGabriel! - SupportsignalsInitializationOptionspass-through config from AM inPingOneProtectInitializeCallback.getConfig()detectssignalsInitializationOptionsin the callback output; if it is a valid plain object, returns it directly asSignalsInitializationOptions- Falls back to the existing
ProtectConfigconstruction when the property is absent or invalid (null, string, array) protect()now acceptsProtectConfig | SignalsInitializationOptionsso the pass-through config flows in without type assertions- Updates vendored Signals SDK from v5.6.0w to v5.6.9w
@forgerock/oidc-client@2.1.0
Minor Changes
-
#682
35816b4Thanks @vatsalparikh! - Adduser.session()method to oidc client for OIDC prompt=none session verification, withresponse_type=noneandresponse_type=id_tokensupport. -
#633
dcb54b2Thanks @ryanbas21! - Exposesubscribemethod on journey and oidc client instances, consistent with davinci-client. Allows consumers to listen for store state changes. -
#684
4fe7bfeThanks @SteinGabriel! - Add unified cross-platform SDK configuration supportNew utility functions in
@forgerock/sdk-utilitiesconvert the cross-platform unified JSON config schema into each client's native config shape. Validation and mapping are owned entirely by the utilities layer — client factories remain typed to their existing config interfaces.New in
@forgerock/sdk-utilities:makeOidcConfig(json)— validates and maps unified JSON →OidcConfig; throws on invalid inputmakeJourneyConfig(json)— validates and maps unified JSON →JourneyClientConfig; throws on invalid inputmakeDavinciConfig(json)— validates and maps unified JSON →DaVinciConfig; throws on invalid inputUnifiedSdkConfig,UnifiedOidcConfig,UnifiedJourneyConfigtypesvalidateUnifiedSdkConfig/validateUnifiedOidcConfig— pure validation returningEither<T, ConfigValidationError[]>unifiedToOidcConfig,unifiedToJourneyConfig,unifiedToDavinciConfig— pure mappers returningEither<T, ConfigValidationError>AuthDisplayValue,AuthPromptValuetypes (canonical source — shared betweenOidcConfigandGetAuthorizationUrlOptions)
Usage:
import { makeDavinciConfig } from '@forgerock/sdk-utilities'; const client = await davinci({ config: makeDavinciConfig(unifiedJsonConfig) });
New in
@forgerock/sdk-types:OidcConfig,JourneyClientConfig,DaVinciConfigmoved here as canonical types (previously mirrored insdk-utilitiesasMapped*types)AuthDisplayValue,AuthPromptValuetypes added (renamed fromOidcDisplayValue/OidcPromptValue)GetAuthorizationUrlOptionsextended withloginHint,nonce,display,uiLocales,acrValues;promptwidened to include'select_account'
Updated in
@forgerock/sdk-logger:LogLevelnow re-exported from@forgerock/sdk-types(single source of truth); runtime behaviour unchanged
New in
@forgerock/sdk-oidc:buildAuthorizeParamsforwards all new OIDC authorize params into the URL
New in
@forgerock/oidc-client:endSessionappendspost_logout_redirect_uriwhensignOutRedirectUriis set on config- Authorize URL construction forwards
loginHint,state,nonce,display,prompt,uiLocales,acrValues,additionalParametersfrom config
New in
@forgerock/journey-client:- No API change — consume
makeJourneyConfigat call-site to use unified JSON config
New in
@forgerock/davinci-client:- No API change — consume
makeDavinciConfigat call-site to use unified JSON config
-
#631
15d616dThanks @ryanbas21! - Add support for PAR in oidc-client requests for redirect flows
Patch Changes
-
#564
15d5af3Thanks @ryanbas21! - Update interfaces and types that are missing from exports -
Updated dependencies [
35816b4,ec39137,d849256,4fe7bfe,15d616d]:- @forgerock/iframe-manager@2.1.0
- @forgerock/sdk-request-middleware@2.1.0
- @forgerock/storage@2.1.0
- @forgerock/sdk-logger@2.1.0
- @forgerock/sdk-oidc@2.1.0
- @forgerock/sdk-utilities@2.1.0
- @forgerock/sdk-types@2.1.0
@forgerock/journey-client@2.1.0
Minor Changes
-
#633
dcb54b2Thanks @ryanbas21! - Exposesubscribemethod on journey and oidc client instances, consistent with davinci-client. Allows consumers to listen for store state changes. -
#581
07015a2Thanks @vatsalparikh! - Add WebAuthn conditional mediation (passkey autofill) support.WebAuthn.authenticate(step, signal?)derives mediation from WebAuthn metadata (meta.mediation).- When
meta.mediationis'conditional', anAbortSignalis used (caller-provided if present, otherwise created by the SDK). - If conditional mediation is requested but not supported,
authenticate()throwsNotSupportedError(and the existing error handling sets the hidden outcome tounsupported). - Adds
WebAuthn.isConditionalMediationSupported()helper, docs, and unit tests.
-
#684
4fe7bfeThanks @SteinGabriel! - Add unified cross-platform SDK configuration supportNew utility functions in
@forgerock/sdk-utilitiesconvert the cross-platform unified JSON config schema into each client's native config shape. Validation and mapping are owned entirely by the utilities layer — client factories remain typed to their existing config interfaces.New in
@forgerock/sdk-utilities:makeOidcConfig(json)— validates and maps unified JSON →OidcConfig; throws on invalid inputmakeJourneyConfig(json)— validates and maps unified JSON →JourneyClientConfig; throws on invalid inputmakeDavinciConfig(json)— validates and maps unified JSON →DaVinciConfig; throws on invalid inputUnifiedSdkConfig,UnifiedOidcConfig,UnifiedJourneyConfigtypesvalidateUnifiedSdkConfig/validateUnifiedOidcConfig— pure validation returningEither<T, ConfigValidationError[]>unifiedToOidcConfig,unifiedToJourneyConfig,unifiedToDavinciConfig— pure mappers returningEither<T, ConfigValidationError>AuthDisplayValue,AuthPromptValuetypes (canonical source — shared betweenOidcConfigandGetAuthorizationUrlOptions)
Usage:
import { makeDavinciConfig } from '@forgerock/sdk-utilities'; const client = await davinci({ config: makeDavinciConfig(unifiedJsonConfig) });
New in
@forgerock/sdk-types:OidcConfig,JourneyClientConfig,DaVinciConfigmoved here as canonical types (previously mirrored insdk-utilitiesasMapped*types)AuthDisplayValue,AuthPromptValuetypes added (renamed fromOidcDisplayValue/OidcPromptValue)GetAuthorizationUrlOptionsextended withloginHint,nonce,display,uiLocales,acrValues;promptwidened to include'select_account'
Updated in
@forgerock/sdk-logger:LogLevelnow re-exported from@forgerock/sdk-types(single source of truth); runtime behaviour unchanged
New in
@forgerock/sdk-oidc:buildAuthorizeParamsforwards all new OIDC authorize params into the URL
New in
@forgerock/oidc-client:endSessionappendspost_logout_redirect_uriwhensignOutRedirectUriis set on config- Authorize URL construction forwards
loginHint,state,nonce,display,prompt,uiLocales,acrValues,additionalParametersfrom config
New in
@forgerock/journey-client:- No API change — consume
makeJourneyConfigat call-site to use unified JSON config
New in
@forgerock/davinci-client:- No API change — consume
makeDavinciConfigat call-site to use unified JSON config
Patch Changes
-
#630
5f55b08Thanks @vatsalparikh! - patch @forgerock/journey-client: export PolicyParams from journey-client/types -
#564
15d5af3Thanks @ryanbas21! - Update interfaces and types that are missing from exports -
#583
b081582Thanks @vatsalparikh! - Restore legacy resume() redirect query-param handling.resume() now parses and forwards additional URL params (error, errorCode, errorMessage, nonce, RelayState, scope, suspendedId) and uses authIndexValue as a fallback journey value.
-
#557
5fe2f41Thanks @ryanbas21! - ExtendJourneyClientConfigfromAsyncLegacyConfigOptionsso the same config object can be shared across journey-client, davinci-client, and oidc-clientclientId,scope,redirectUri, and other inherited properties are now accepted but ignored — a warning is logged when they are providedserverConfig.wellknownremains required
-
#578
096733dThanks @SteinGabriel! - SupportsignalsInitializationOptionspass-through config from AM inPingOneProtectInitializeCallback.getConfig()detectssignalsInitializationOptionsin the callback output; if it is a valid plain object, returns it directly asSignalsInitializationOptions- Falls back to the existing
ProtectConfigconstruction when the property is absent or invalid (null, string, array) protect()now acceptsProtectConfig | SignalsInitializationOptionsso the pass-through config flows in without type assertions- Updates vendored Signals SDK from v5.6.0w to v5.6.9w
-
#670
832ce89Thanks @vatsalparikh! - ReturnJourneyLoginFailureby hitting the previously-unreachedLoginFailurebranch whenstart()/next()receives a failure payload with a login failurecode -
Updated dependencies [
ec39137,d849256,4fe7bfe,15d616d]:- @forgerock/sdk-request-middleware@2.1.0
- @forgerock/storage@2.1.0
- @forgerock/sdk-logger@2.1.0
- @forgerock/sdk-oidc@2.1.0
- @forgerock/sdk-utilities@2.1.0
- @forgerock/sdk-types@2.1.0
@forgerock/iframe-manager@2.1.0
Minor Changes
- #682
35816b4Thanks @vatsalparikh! - Adduser.session()method to oidc client for OIDC prompt=none session verification, withresponse_type=noneandresponse_type=id_tokensupport.
Patch Changes
- #555
d849256Thanks @ancheetah! - Fixes files distributed in sdk-effects packages. Excludes files not in/distfolder.