prelude_flutter_auth_sdk 0.6.0
prelude_flutter_auth_sdk: ^0.6.0 copied to clipboard
Prelude Flutter Auth SDK. Easily integrate Prelude Auth in your Flutter application.
Changelog #
Notable changes to the Prelude Flutter Auth SDK.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.6.0 - 2026-07-01 #
Added #
- Social login.
loginWithOAuth(OAuthLoginOptions)presents the provider page in a system web session and establishes a session;initiateOAuthLogin/finalizeOAuthLoginback it for apps that present the page themselves. Unverified provider emails surface asOAuthOtpRequired. New types:OAuthProvider,OAuthLoginOptions,InitiateOAuthLoginOptions,FinalizeOAuthLoginResult(OAuthLoggedIn/OAuthOtpRequired), andCancelledExceptionfor a dismissed page. checkOAuthEmailOTP(OAuthEmailChallenge, String)completes an OAuth login when the provider's email must be verified (e.g. Microsoft).OAuthOtpRequirednow carries anOAuthEmailChallengehandle; redeem it with the code the user receives. The verification token stays in the native plugin's per-handle cache, so concurrent logins stay isolated and the bearer credential never crosses the channel.- On Android, social login opens a Chrome Custom Tab: apps add
androidx.browserand declareOAuthRedirectActivitywith their redirect scheme. On iOS no extra config is needed.
Changed #
- Bumps the iOS dependency to
PreludeAuth0.6.0and the Android dependency toso.prelude.android:auth-sdk:0.6.0, the native releases that add social login and OAuth email-link completion.
0.5.0 - 2026-06-12 #
Added #
migrate(MigrateOptions)— exchange a legacy bearer token for a Prelude session via PKCE-bound/migration⇒/login/finalize. Idempotent (a cached session short-circuits) and single-flight (concurrent callers share one exchange), so the legacy token is spent at most once. The token is wrapped in aRedactedStringso the options object never leaks it throughtoString.canChangePassword()— returnstruewhen the current session already carriesprld:pwd:write, so a UI can skip step-up beforechangePassword.
Changed #
- Bumps the iOS dependency to
PreludeAuth0.4.0and the Android dependency toso.prelude.android:auth-sdk:0.5.0. The native0.4.0release also brings per-domain DPoP clock-skew correction, best-effort (non-blocking) signals dispatch, and race-safe cached-session accessors.
0.4.0 - 2026-05-18 #
First release under the new package name. Continues the history of
prelude_flutter_session_sdk;
versions ≤ 0.3.0 below are listed for migration context.
Changed #
- Renamed: package
prelude_flutter_session_sdk→prelude_flutter_auth_sdk;PreludeSessionClient→PreludeAuthClient;PreludeSessionException→PreludeAuthException. Native dependencies follow:PreludeAuthon iOS andso.prelude.android:auth-sdkon Android. - Bumps the iOS dependency to
PreludeAuth0.3.0and the Android dependency toso.prelude.android:auth-sdk:0.3.0(the renamed native auth SDKs; behavior-equivalent to the matching0.3.0session-SDK releases). - Bumps the Android signals SDK pin to
so.prelude.android:sdk:0.5.2(was0.5.0).
0.3.0 - 2026-05-10 #
Added #
listSessions(options)andrevokeSessions(target)for managing the user's active sessions, withPreludeRevokeTarget.all,.others,.mine, and.session(id). Revoking the current session also wipes local credentials.sendStepUpOTP(challenge)— caller-driven OTP delivery for step-up flows.requestStepUp(scope, metadata)accepts an optionalMap<String, String>forwarded to the server's step-up audit hook (server caps: 5 keys, 12-char keys, 32-char values).getActiveStepUp()— read-only accessor for the most recent in-flight challenge so a UI can resume a step-up flow without threading the handle through its state.- Anti-fraud signals: unauthenticated logins (start OTP, login with password, request step-up) now stamp a
dispatch_idon the request body when an SDK key is configured. Keys live in the native manifest (PreludeSDKKeyinInfo.plist,<meta-data android:name="so.prelude.sdk_key">inAndroidManifest.xml); an optionalsignalsKeyOverrideconstructor argument covers runtime-fetched configuration. Absent configuration is a permissive no-op —dispatch_idis omitted and the rest of the flow is unchanged. - New types:
PreludeSessionView,PreludeDeviceType,PreludeListSessionsOptions,PreludeListSessionsResponse,PreludeRevokeTarget.
Changed #
- Behavior change:
requestStepUpandsubmitStepUpOTPno longer auto-firePOST /otp. Callers must invokesendStepUpOTP(challenge)explicitly when the next step is an OTP-delivery step. - Bumps the iOS dependency to
PreludeAuth0.2.0and the Android dependency toso.prelude.android:auth-sdk:0.2.0.
0.2.0 - 2026-04-30 #
0.1.0 - 2026-04-30 #
Initial release. iOS-only; the Android bridge was wired up in 0.2.0.
Added #
- Email OTP login:
startOTPLogin,resendOTP,checkOTP. - Email and password login:
loginWithPassword. - Password validation:
passwordCompliancy,validatePassword. - Session lifecycle:
refresh,logout,dispose. - Cached session readers:
getProfile,getAccessToken. - Typed errors for every documented failure case (invalid OTP, unauthorized, rate-limited, network, …).