feat(server,web): OIDC Implementation (#884)

* chore: merge

* feat: nullable password

* feat: server debugger

* chore: regenerate api

* feat: auto-register flag

* refactor: oauth endpoints

* chore: regenerate api

* fix: default scope configuration

* refactor: pass in redirect uri from client

* chore: docs

* fix: bugs

* refactor: auth services and user repository

* fix: select password

* fix: tests

* fix: get signing algorithm from discovery document

* refactor: cookie constants

* feat: oauth logout

* test: auth services

* fix: query param check

* fix: regenerate open-api
This commit is contained in:
Jason Rasmussen
2022-11-14 21:24:25 -05:00
committed by GitHub
parent d476656789
commit d3c35ec9c5
51 changed files with 1997 additions and 253 deletions

View File

@@ -14,25 +14,31 @@ class LogoutResponseDto {
/// Returns a new [LogoutResponseDto] instance.
LogoutResponseDto({
required this.successful,
required this.redirectUri,
});
bool successful;
String redirectUri;
@override
bool operator ==(Object other) => identical(this, other) || other is LogoutResponseDto &&
other.successful == successful;
other.successful == successful &&
other.redirectUri == redirectUri;
@override
int get hashCode =>
// ignore: unnecessary_parenthesis
(successful.hashCode);
(successful.hashCode) +
(redirectUri.hashCode);
@override
String toString() => 'LogoutResponseDto[successful=$successful]';
String toString() => 'LogoutResponseDto[successful=$successful, redirectUri=$redirectUri]';
Map<String, dynamic> toJson() {
final _json = <String, dynamic>{};
_json[r'successful'] = successful;
_json[r'redirectUri'] = redirectUri;
return _json;
}
@@ -56,6 +62,7 @@ class LogoutResponseDto {
return LogoutResponseDto(
successful: mapValueOfType<bool>(json, r'successful')!,
redirectUri: mapValueOfType<String>(json, r'redirectUri')!,
);
}
return null;
@@ -106,6 +113,7 @@ class LogoutResponseDto {
/// The list of required keys that must be present in a JSON.
static const requiredKeys = <String>{
'successful',
'redirectUri',
};
}