diff --git a/src/store/store.ts b/src/store/store.ts index c68906c..117bc75 100644 --- a/src/store/store.ts +++ b/src/store/store.ts @@ -32,6 +32,7 @@ export interface DecompressedData { templateMarkdown: string; modelCto: string; data: string; + agreementHtml: string; } async function rebuild(template: string, model: string, dataString: string) { @@ -149,21 +150,21 @@ const useAppStore = create()( templateMarkdown: state.templateMarkdown, modelCto: state.modelCto, data: state.data, + agreementHtml: state.agreementHtml, }); return `${window.location.origin}/v1?data=${compressedData}`; }, loadFromLink: async (compressedData: string) => { try { - const { templateMarkdown, modelCto, data } = + const { templateMarkdown, modelCto, data, agreementHtml } = decompress(compressedData); set(() => ({ templateMarkdown, modelCto, data, - agreementHtml: "", + agreementHtml, error: undefined, })); - await rebuildDeBounce(templateMarkdown, modelCto, data); } catch (error) { set(() => ({ error: "Failed to load data from the link", diff --git a/src/tests/store/generateSharebleLink.test.tsx b/src/tests/store/generateSharebleLink.test.tsx index d5532dc..0c34e2d 100644 --- a/src/tests/store/generateSharebleLink.test.tsx +++ b/src/tests/store/generateSharebleLink.test.tsx @@ -10,6 +10,7 @@ describe("useAppStore", () => { templateMarkdown: "Sample Template", modelCto: "Sample Model", data: '{"key": "value"}', + agreementHtml: "

Sample Agreement

", }; // Mock compress function to return a sample compressed string @@ -21,6 +22,7 @@ describe("useAppStore", () => { await store.setTemplateMarkdown(initialState.templateMarkdown); await store.setModelCto(initialState.modelCto); await store.setData(initialState.data); + store.agreementHtml = initialState.agreementHtml; const shareableLink = store.generateShareableLink();