Files
tatuchat/lib/utils/matrix_sdk_extensions/oidc_session_json_extension.dart
Welton Moura 0037b0b9cf
Some checks failed
Main Deploy Workflow / deploy_web (push) Has been cancelled
Main Deploy Workflow / deploy_playstore_internal (push) Has been cancelled
Close stale issues and PRs / stale (push) Has been cancelled
Initial commit
2026-09-11 15:59:56 -03:00

30 lines
1.1 KiB
Dart

// SPDX-FileCopyrightText: 2019-Present Christian Kußowski
// SPDX-FileCopyrightText: 2019-Present Contributors to FluffyChat
//
// SPDX-License-Identifier: AGPL-3.0-or-later
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,
);
}