fix(ui): align action controls and protect keychain consent

This commit is contained in:
NimBold
2026-07-17 18:37:50 +03:30
parent 566396e629
commit c949cbb9ee
11 changed files with 199 additions and 86 deletions
+13
View File
@@ -11,6 +11,12 @@ export type KeychainStartupDecision = {
showKeychainPrompt: boolean;
};
export type KeychainAccessReadiness = {
portable: boolean;
accessGranted: boolean;
persistent: boolean;
};
// The semantic app version can remain unchanged across release-candidate and
// packaging rebuilds. Use the build identity so an updated binary cannot skip
// Firelink's explanation and invoke the OS prompt directly. The policy epoch
@@ -30,6 +36,13 @@ export const getKeychainConsentVersion = (appVersion: string): string => {
: '';
};
export const getKeychainAccessReady = ({
portable,
accessGranted,
persistent
}: KeychainAccessReadiness): boolean =>
portable ? accessGranted : persistent;
export const getKeychainStartupDecision = ({
portable,
appVersion,