diff --git a/src/frontend/apps/impress/src/features/docs/doc-management/api/useCreateDoc.tsx b/src/frontend/apps/impress/src/features/docs/doc-management/api/useCreateDoc.tsx index 78abddbe..f98a5626 100644 --- a/src/frontend/apps/impress/src/features/docs/doc-management/api/useCreateDoc.tsx +++ b/src/frontend/apps/impress/src/features/docs/doc-management/api/useCreateDoc.tsx @@ -1,4 +1,5 @@ import { useMutation, useQueryClient } from '@tanstack/react-query'; +import { e2esdkClient } from '@/core/auth/useAuthStore'; import { APIError, errorCauses, fetchAPI } from '@/api'; @@ -13,6 +14,7 @@ export const createDoc = async ({ title }: CreateDocParam): Promise => { method: 'POST', body: JSON.stringify({ title, + is_e2ee: true }), }); @@ -20,7 +22,16 @@ export const createDoc = async ({ title }: CreateDocParam): Promise => { throw new APIError('Failed to create the doc', await errorCauses(response)); } - return response.json() as Promise; + const resp = await (response.json() as Promise); + + const { keychainFingerprint } = await e2esdkClient.createNewKeychain( + `docs:${resp.id}`, + 'secretBox' + ); + + console.log('new e2ee keychain registered', keychainFingerprint); + + return resp; }; interface CreateDocProps { diff --git a/src/frontend/apps/impress/src/features/docs/doc-management/types.tsx b/src/frontend/apps/impress/src/features/docs/doc-management/types.tsx index 0125cedc..ebb54efa 100644 --- a/src/frontend/apps/impress/src/features/docs/doc-management/types.tsx +++ b/src/frontend/apps/impress/src/features/docs/doc-management/types.tsx @@ -37,6 +37,7 @@ export interface Doc { accesses: Access[]; created_at: string; updated_at: string; + is_e2ee: boolean; abilities: { destroy: boolean; link_configuration: boolean;