authyra 0.1.0
authyra: ^0.1.0 copied to clipboard
A unified authentication framework for Dart. Secure by default, flexible by design.
Changelog #
All notable changes to the authyra package are documented here.
The format follows Keep a Changelog and this project adheres to Semantic Versioning.
0.1.0 - 2026-02-23 #
Added #
AccountManager— high-level multi-account facade withgetAll(),switchTo(),signOut(),signOutAll(), andcleanExpired().SessionManager.cleanExpiredSessions()— atomically prunes expired sessions and persists the full registry in one operation.AuthConfig.copyWith,toJson,fromJson— fully serialisable config withrefreshThresholdandtokenLifetimeDurationDurationgetters.AuthStateextendsEquatable— deduplicates identical consecutive states in streams, preventing unnecessary UI rebuilds.InMemoryStorage— non-persistentAuthStorageimplementation for tests and development.
Changed #
MultiAccountManagerrenamed toAccountManager(deprecated re-export kept until v0.2.0).
Fixed #
AccountManager.cleanExpired()— now delegates toSessionManager.cleanExpiredSessions()instead of overwriting a single session.AccountManager.signOut()— notifies the reactive layer after removing the active account.AuthSession.fromJson()—accessTokenandexpiresAtare cast as nullable, fixing crashes in cookie-based flows.SessionRegistryaccount election after expiry removal now orders bylastUsedAt(deterministic).AuthUser.copyWith()— removed phantom parameters (phoneNumber,provider,createdAt) that were silently ignored.
0.0.1 - 2025-01-01 #
Added #
- Initial package scaffold.
AuthyraClient— stateless authentication orchestrator.AuthyraInstance— singleton wrapper with reactive streams.AuthProviderabstract interface withCredentialsProviderimplementation.AuthStorageabstract interface for pluggable session persistence.SessionManagerwith multi-account registry.AuthUser,AuthSession,AuthState,AuthConfig,SessionRegistrymodels.