feat: Implement matrix native oidc
This commit is contained in:
parent
b1a2b96aa4
commit
c1541bc4bf
6 changed files with 208 additions and 92 deletions
|
|
@ -3,7 +3,6 @@ import 'package:flutter/material.dart';
|
|||
import 'package:go_router/go_router.dart';
|
||||
import 'package:matrix/matrix.dart';
|
||||
import 'package:url_launcher/url_launcher.dart';
|
||||
import 'package:url_launcher/url_launcher_string.dart';
|
||||
|
||||
import 'package:fluffychat/config/app_config.dart';
|
||||
import 'package:fluffychat/l10n/l10n.dart';
|
||||
|
|
@ -119,13 +118,9 @@ class SettingsView extends StatelessWidget {
|
|||
},
|
||||
),
|
||||
FutureBuilder(
|
||||
future: Matrix.of(context).client.getWellknown(),
|
||||
future: Matrix.of(context).client.getAuthMetadata(),
|
||||
builder: (context, snapshot) {
|
||||
final accountManageUrl = snapshot.data?.additionalProperties
|
||||
.tryGetMap<String, Object?>(
|
||||
'org.matrix.msc2965.authentication',
|
||||
)
|
||||
?.tryGet<String>('account');
|
||||
final accountManageUrl = snapshot.data?.issuer;
|
||||
if (accountManageUrl == null) {
|
||||
return const SizedBox.shrink();
|
||||
}
|
||||
|
|
@ -133,7 +128,7 @@ class SettingsView extends StatelessWidget {
|
|||
leading: const Icon(Icons.account_circle_outlined),
|
||||
title: Text(L10n.of(context).manageAccount),
|
||||
trailing: const Icon(Icons.open_in_new_outlined),
|
||||
onTap: () => launchUrlString(
|
||||
onTap: () => launchUrl(
|
||||
accountManageUrl,
|
||||
mode: LaunchMode.inAppBrowserView,
|
||||
),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue