Delay bio auth (#642)

This commit is contained in:
dsvf
2025-08-17 07:06:24 +01:00
committed by GitHub
parent 60671fe461
commit 4a7827f41a
22 changed files with 1215 additions and 294 deletions

View File

@@ -3,23 +3,47 @@ import 'package:flutter/material.dart';
import 'package:server_box/data/res/store.dart';
abstract final class PlatformPublicSettings {
static Widget buildBioAuth() {
static Widget get buildBioAuth {
return ExpandTile(title: Text(libL10n.bioAuth), children: [_buildBioAuth(), _buildBioAuthDelay()]);
}
static Widget _buildBioAuthDelay() {
return FutureWidget<bool>(
future: LocalAuth.isAvail,
loading: ListTile(
title: Text(libL10n.delay),
subtitle: const Text('...', style: UIs.textGrey),
),
error: (e, _) => ListTile(
title: Text(libL10n.delay),
subtitle: Text('${libL10n.fail}: $e', style: UIs.textGrey),
),
success: (can) {
return ListTile(
title: Text(libL10n.delay),
trailing: can == true ? Stores.setting.delayBioAuthLock.fieldWidget() : null,
);
},
);
}
static Widget _buildBioAuth() {
return FutureWidget<bool>(
future: LocalAuth.isAvail,
loading: ListTile(
leading: const Icon(Icons.fingerprint),
title: Text(libL10n.bioAuth),
title: Text(libL10n.switch_),
subtitle: const Text('...', style: UIs.textGrey),
),
error: (e, _) => ListTile(
title: Text(libL10n.bioAuth),
title: Text(libL10n.switch_),
subtitle: Text('${libL10n.fail}: $e', style: UIs.textGrey),
),
success: (can) {
can ??= false;
return ListTile(
leading: const Icon(Icons.fingerprint),
title: Text(libL10n.bioAuth),
title: Text(libL10n.switch_),
subtitle: can ? null : Text(libL10n.notExistFmt(libL10n.bioAuth), style: UIs.textGrey),
trailing: can
? StoreSwitch(