diff --git a/src/lib/Util/state.ts b/src/lib/Util/state.ts index feea1576..eca4196b 100644 --- a/src/lib/Util/state.ts +++ b/src/lib/Util/state.ts @@ -42,9 +42,24 @@ export const updateCodeStore = (newState: State): void => { }); }; -export const updateCode = (code: string, updateEditor: boolean): void => { +let prompted = false; +export const updateCode = (code: string, updateEditor: boolean, updateDiagram = false): void => { + const lines = (code.match(/\n/g) || '').length + 1; + + if (lines > 50 && !prompted && get(codeStore).autoSync) { + const turnOff = confirm( + 'Long diagram deteced. Turn off Auto Sync? Click the sync logo to manually sync.' + ); + prompted = true; + if (turnOff) { + updateCodeStore({ + autoSync: false + } as State); + } + } + codeStore.update((state) => { - return { ...state, code, updateEditor }; + return { ...state, code, updateEditor, updateDiagram }; }); }; diff --git a/src/lib/components/actions.svelte b/src/lib/components/actions.svelte index da46ff8e..64ea41f0 100644 --- a/src/lib/components/actions.svelte +++ b/src/lib/components/actions.svelte @@ -128,10 +128,10 @@