- Updated
FlutterAppAuthPlatformErrorDetails
so all the constructor parameters are optional instead of being mandatory through therequired
keyword. This should be a non-breaking change since all the parameters were nullable. Change was done to make code using the class easier to use e.g. when writing tests
- Breaking change Bumped minimum Flutter and Dart SDK constraints to 3.13.0 and 3.1.0 respectively
- Breaking change all methods have now been made to return non-nullable types
- Updated error handling to expose more details for each platform. Plugin will now throw
FlutterAppAuthUserCancelledException
when an authorization request has been cancelled as a result of the user closing the browser. For other scenarios the plugin will throwFlutterAppAuthPlatformException
. See the API docs for both classes for more details on the available details. Both exception classes inherit fromPlatformException
so the changes should be backwards compatible
- Breaking change Aligned minimum Flutter and Dart SDK constraints to 3.0.0 and 2.17 respectively
- Bumped maximum Dart SDK constraint
- Updated code for API docs to avoid lines longer than 80 characters
- Added
preferEphemeralSession
toEndSessionRequest
Thanks to the PR from Daniel Ziegler.
- Added ability to specify the
nonce
as part of requests
- Breaking change
AuthorizationResponse
's constructor now includesnonce
and has changed to take positional parameters nonce
can now be specified forTokenRequest
class. This is especially useful on Android as the AppAuth Android SKD had turned on ID token validation that results in nonce mismatch errors. These errors should no longer appear when using thenonce
value returned by theAuthorizationResponse
object after callingauthorize()
and passing the value to theTokenRequest
when calling thetoken()
method- now uses
mocktail
instead ofmockito
as dev dependency for unit tests
- Added
scopes
property toTokenResponse
class andAuthorizationTokenResponse
class that inherits from it. Thanks to PR from leoshusar
- Breaking change
AuthorizationServiceConfiguration
constructor has changed to take named parameters - Added
endSession()
method,EndSessionRequest
andEndSessionResponse
classes to support end session requests
- Added the ability to specify the response mode for authorization requests. This can be done using the
responseMode
parameter when constructing either anAuthorizationRequest
orAuthorizationTokenRequest
. This was done as the AppAuth Android SDK throws an exception when this was done viaadditionalParameters
- Updated Dart SDK constraints
- Migrated to null safety
AuthorizationServiceConfiguration
andAuthorizationResponse
now haveconst
constructors
- Breaking change Removed the
toMap
methods so that it's not part of the public API surface. This was done as these methods were for internal use. Currentlyflutter_appauth
(version 0.8.3) is constrained to depend on versions >= 1.0.2 and < 2.0.0. As it's possible that plugin consumers were calling the methods via the plugin, where the platform interface is a transitive dependency, the platform interface has been bumped to version 2.0.0 instead of 1.1.0 to be safe. - Added
preferEphemeralSession
toAuthorizationRequest
andAuthorizationTokenRequest
classes. Thanks to the PR from Matthew Smith.
- Fixes issue #86 where there was an error on casting
tokenAdditionalParameters
property upon calling thetoken()
method. Thanks to the PR from Sven
- Specify the object type for the
instance
property withinFlutterAppAuthPlatform
instead of being dynamic
- Add pub badge to readme
- Initial release of platform interface