fix(useragent): unsafe, but working implementation of ml-dsa
This commit is contained in:
@@ -12,30 +12,24 @@ class ClientSummaryCard extends StatelessWidget {
|
||||
return CreamFrame(
|
||||
padding: const EdgeInsets.all(20),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Text(
|
||||
client.info.name,
|
||||
style: Theme.of(context).textTheme.titleLarge,
|
||||
),
|
||||
const SizedBox(height: 8),
|
||||
Text(client.info.description),
|
||||
const SizedBox(height: 16),
|
||||
Wrap(
|
||||
runSpacing: 8,
|
||||
spacing: 16,
|
||||
children: [
|
||||
_Fact(label: 'Client ID', value: '${client.id}'),
|
||||
_Fact(label: 'Version', value: client.info.version),
|
||||
_Fact(
|
||||
label: 'Registered',
|
||||
value: _formatDate(client.createdAt),
|
||||
),
|
||||
_Fact(label: 'Pubkey', value: _shortPubkey(client.pubkey)),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Text(client.info.name, style: Theme.of(context).textTheme.titleLarge),
|
||||
const SizedBox(height: 8),
|
||||
Text(client.info.description),
|
||||
const SizedBox(height: 16),
|
||||
Wrap(
|
||||
runSpacing: 8,
|
||||
spacing: 16,
|
||||
children: [
|
||||
_Fact(label: 'Client ID', value: '${client.id}'),
|
||||
_Fact(label: 'Version', value: client.info.version),
|
||||
_Fact(label: 'Registered', value: _formatDate(client.createdAt)),
|
||||
_Fact(label: 'Pubkey', value: _shortPubkey(client.pubkey)),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,27 +28,27 @@ class WalletAccessSaveBar extends StatelessWidget {
|
||||
return CreamFrame(
|
||||
padding: const EdgeInsets.all(16),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
if (errorText != null) ...[
|
||||
Text(errorText, style: TextStyle(color: Palette.coral)),
|
||||
const SizedBox(height: 12),
|
||||
],
|
||||
Row(
|
||||
children: [
|
||||
TextButton(
|
||||
onPressed: state.hasChanges && !isPending ? onDiscard : null,
|
||||
child: const Text('Reset'),
|
||||
),
|
||||
const Spacer(),
|
||||
FilledButton(
|
||||
onPressed: state.hasChanges && !isPending ? onSave : null,
|
||||
child: Text(isPending ? 'Saving...' : 'Save changes'),
|
||||
),
|
||||
],
|
||||
),
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
if (errorText != null) ...[
|
||||
Text(errorText, style: TextStyle(color: Palette.coral)),
|
||||
const SizedBox(height: 12),
|
||||
],
|
||||
),
|
||||
Row(
|
||||
children: [
|
||||
TextButton(
|
||||
onPressed: state.hasChanges && !isPending ? onDiscard : null,
|
||||
child: const Text('Reset'),
|
||||
),
|
||||
const Spacer(),
|
||||
FilledButton(
|
||||
onPressed: state.hasChanges && !isPending ? onSave : null,
|
||||
child: Text(isPending ? 'Saving...' : 'Save changes'),
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,26 +30,23 @@ class WalletAccessSection extends ConsumerWidget {
|
||||
return CreamFrame(
|
||||
padding: const EdgeInsets.all(20),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Text(
|
||||
'Wallet access',
|
||||
style: Theme.of(context).textTheme.titleLarge,
|
||||
),
|
||||
const SizedBox(height: 8),
|
||||
Text('Choose which managed wallets this client can see.'),
|
||||
const SizedBox(height: 16),
|
||||
_WalletAccessBody(
|
||||
clientId: clientId,
|
||||
state: state,
|
||||
accessSelectionAsync: accessSelectionAsync,
|
||||
isSavePending: isSavePending,
|
||||
optionsAsync: optionsAsync,
|
||||
onSearchChanged: onSearchChanged,
|
||||
onToggleWallet: onToggleWallet,
|
||||
),
|
||||
],
|
||||
),
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Text('Wallet access', style: Theme.of(context).textTheme.titleLarge),
|
||||
const SizedBox(height: 8),
|
||||
Text('Choose which managed wallets this client can see.'),
|
||||
const SizedBox(height: 16),
|
||||
_WalletAccessBody(
|
||||
clientId: clientId,
|
||||
state: state,
|
||||
accessSelectionAsync: accessSelectionAsync,
|
||||
isSavePending: isSavePending,
|
||||
optionsAsync: optionsAsync,
|
||||
onSearchChanged: onSearchChanged,
|
||||
onToggleWallet: onToggleWallet,
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user