diff --git a/apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx b/apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx index 2e2f0c889..6fe1c195b 100644 --- a/apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx +++ b/apps/web/src/app/(dashboard)/documents/[id]/edit-document.tsx @@ -224,6 +224,10 @@ export const EditDocumentForm = ({ } }; + const setSubjectFormFields = (subject?: string, message?: string) => { + // Add functionality here + }; + const onAddFieldsFormSubmit = async (data: TAddFieldsFormSchema) => { try { await addFields({ @@ -359,6 +363,7 @@ export const EditDocumentForm = ({ fields={fields} onSubmit={onAddSubjectFormSubmit} isDocumentPdfLoaded={isDocumentPdfLoaded} + setSubjectFormFields={setSubjectFormFields} /> diff --git a/packages/trpc/server/document-router/router.ts b/packages/trpc/server/document-router/router.ts index d12002674..48cb3965c 100644 --- a/packages/trpc/server/document-router/router.ts +++ b/packages/trpc/server/document-router/router.ts @@ -221,6 +221,10 @@ export const documentRouter = router({ } }), + getDocumentMetaById: authenticatedProcedure + .input(ZSetSettingsForDocumentMutationSchema) + .mutation(async ({ input, ctx }) => {}), + setTitleForDocument: authenticatedProcedure .input(ZSetTitleForDocumentMutationSchema) .mutation(async ({ input, ctx }) => { diff --git a/packages/ui/primitives/document-flow/add-settings.types.ts b/packages/ui/primitives/document-flow/add-settings.types.ts index fb669999b..c7a5326d7 100644 --- a/packages/ui/primitives/document-flow/add-settings.types.ts +++ b/packages/ui/primitives/document-flow/add-settings.types.ts @@ -28,6 +28,8 @@ export const ZAddSettingsFormSchema = z.object({ ZDocumentActionAuthTypesSchema.optional(), ), meta: z.object({ + subject: z.string().optional(), + message: z.string().optional(), timezone: z.string().optional().default(DEFAULT_DOCUMENT_TIME_ZONE), dateFormat: z.string().optional().default(DEFAULT_DOCUMENT_DATE_FORMAT), redirectUrl: z diff --git a/packages/ui/primitives/document-flow/add-subject.tsx b/packages/ui/primitives/document-flow/add-subject.tsx index 1b0608af8..e7264ea9b 100644 --- a/packages/ui/primitives/document-flow/add-subject.tsx +++ b/packages/ui/primitives/document-flow/add-subject.tsx @@ -1,5 +1,7 @@ 'use client'; +import { useEffect } from 'react'; + import { zodResolver } from '@hookform/resolvers/zod'; import { useForm } from 'react-hook-form'; @@ -30,6 +32,8 @@ export type AddSubjectFormProps = { document: DocumentWithData; onSubmit: (_data: TAddSubjectFormSchema) => void; isDocumentPdfLoaded: boolean; + // eslint-disable-next-line @typescript-eslint/no-explicit-any + setSubjectFormFields: (subject?: string, message?: string) => void; }; export const AddSubjectFormPartial = ({ @@ -39,10 +43,12 @@ export const AddSubjectFormPartial = ({ document, onSubmit, isDocumentPdfLoaded, + setSubjectFormFields, }: AddSubjectFormProps) => { const { register, handleSubmit, + getValues, formState: { errors, isSubmitting }, } = useForm({ defaultValues: { @@ -57,6 +63,13 @@ export const AddSubjectFormPartial = ({ const onFormSubmit = handleSubmit(onSubmit); const { currentStep, totalSteps, previousStep } = useStep(); + useEffect(() => { + return () => { + const { meta } = getValues(); + setSubjectFormFields(meta.subject, meta.message); + }; + }, [getValues, setSubjectFormFields]); + return ( <>