Skip to content

Commit 732c6eb

Browse files
committed
fix: prevent full body re-render when selecting a sample from Load Sample dropdown
Signed-off-by: surya4419 <[email protected]>
1 parent aee51a0 commit 732c6eb

File tree

1 file changed

+16
-4
lines changed

1 file changed

+16
-4
lines changed

src/store/store.ts

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ const useAppStore = create<AppState>()(
125125
);
126126
set(() => ({ agreementHtml: result, error: undefined }));
127127
} catch (error: any) {
128-
set(() => ({ error: error instanceof Error ? error.message : 'Unknown error' }));
128+
set(() => ({ error: formatError(error) }));
129129
} finally {
130130
set(() => ({ isLoading: false }));
131131
}
@@ -140,7 +140,7 @@ const useAppStore = create<AppState>()(
140140
const result = await rebuildDeBounce(template, modelCto, data);
141141
set(() => ({ agreementHtml: result, error: undefined }));
142142
} catch (error: any) {
143-
set(() => ({ error: error instanceof Error ? error.message : 'Unknown error' }));
143+
set(() => ({ error: formatError(error) }));
144144
}
145145
},
146146
setEditorValue: (value: string) => {
@@ -156,7 +156,7 @@ const useAppStore = create<AppState>()(
156156
const result = await rebuildDeBounce(templateMarkdown, model, data);
157157
set(() => ({ agreementHtml: result, error: undefined }));
158158
} catch (error: any) {
159-
set(() => ({ error: error instanceof Error ? error.message : 'Unknown error' }));
159+
set(() => ({ error: formatError(error) }));
160160
}
161161
},
162162
setEditorModelCto: (value: string) => {
@@ -175,7 +175,7 @@ const useAppStore = create<AppState>()(
175175
);
176176
set(() => ({ agreementHtml: result, error: undefined }));
177177
} catch (error: any) {
178-
set(() => ({ error: error instanceof Error ? error.message : 'Unknown error' }));
178+
set(() => ({ error: formatError(error) }));
179179
}
180180
},
181181
setEditorAgreementData: (value: string) => {
@@ -235,3 +235,15 @@ const useAppStore = create<AppState>()(
235235

236236

237237
export default useAppStore;
238+
239+
function formatError(error: any): string {
240+
console.error(error);
241+
if (typeof error === "string") return error;
242+
if (Array.isArray(error)) return error.map((e) => formatError(e)).join("\n");
243+
if (error.code) {
244+
const sub = error.errors ? formatError(error.errors) : "";
245+
const msg = error.renderedMessage || "";
246+
return `Error: ${error.code} ${sub} ${msg}`;
247+
}
248+
return error.toString();
249+
}

0 commit comments

Comments
 (0)