Files
yaak/apps/yaak-client/lib/setupOrConfigureEncryption.tsx
Gregory Schier 7314aedc71 Merge main into proxy branch (formatting and docs)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 12:09:59 -07:00

33 lines
975 B
TypeScript

import { VStack } from "@yaakapp-internal/ui";
import { WorkspaceEncryptionSetting } from "../components/WorkspaceEncryptionSetting";
import { activeWorkspaceMetaAtom } from "../hooks/useActiveWorkspace";
import { showDialog } from "./dialog";
import { jotaiStore } from "./jotai";
export function setupOrConfigureEncryption() {
setupOrConfigure();
}
export function withEncryptionEnabled(callback?: () => void) {
const workspaceMeta = jotaiStore.get(activeWorkspaceMetaAtom);
if (workspaceMeta?.encryptionKey != null) {
callback?.(); // Already set up
return;
}
setupOrConfigure(callback);
}
function setupOrConfigure(onEnable?: () => void) {
showDialog({
id: "workspace-encryption",
title: "Workspace Encryption",
size: "md",
render: ({ hide }) => (
<VStack space={3} className="pb-2" alignItems="end">
<WorkspaceEncryptionSetting expanded onDone={hide} onEnabledEncryption={onEnable} />
</VStack>
),
});
}