fluffychat/lib/utils/matrix_sdk_extensions/oidc_session_json_extension.dart
2026-02-22 10:47:58 +01:00

24 lines
915 B
Dart

import 'package:matrix/matrix.dart';
extension OidcSessionJsonExtension on OidcLoginSession {
static const String storeKey = 'oidc_session';
static const String homeserverStoreKey = 'oidc_stored_homeserver';
Map<String, Object?> toJson() => {
'oidc_client_data': oidcClientData.toJson(),
'authentication_uri': authenticationUri.toString(),
'redirect_uri': redirectUri.toString(),
'code_verifier': codeVerifier,
'state': state,
};
static OidcLoginSession fromJson(Map<String, Object?> json) =>
OidcLoginSession(
oidcClientData: OidcClientData.fromJson(
json['oidc_client_data'] as Map<String, Object?>,
),
authenticationUri: Uri.parse(json['authentication_uri'] as String),
redirectUri: Uri.parse(json['redirect_uri'] as String),
codeVerifier: json['code_verifier'] as String,
state: json['state'] as String,
);
}