diff --git a/index.html b/index.html index 50e2076..602484a 100644 --- a/index.html +++ b/index.html @@ -23,11 +23,17 @@ canvas { width: 100%; height: 100%; } + +#clear-storage { + position: absolute; + top: 0; right: 0; +}
+ diff --git a/src/main.ts b/src/main.ts index 413665c..20145fa 100644 --- a/src/main.ts +++ b/src/main.ts @@ -6,7 +6,7 @@ import { runApp } from './runtime'; import { builtins } from './builtins'; import { CGError } from './error'; import { createStore, startTracking, stopTracking, buildDependents } from './store'; -import { loadStore } from './persistence'; +import { loadStore, clearStore } from './persistence'; import stdlibCode from './stdlib.cg?raw'; import designTokensCode from './design-tokens.cg?raw'; @@ -19,6 +19,11 @@ import textInputCode from './textinput-test.cg?raw'; const canvas = document.createElement('canvas') as HTMLCanvasElement; document.body.appendChild(canvas); +const clearButton = document.getElementById('clear-storage'); +if (clearButton) { + clearButton.onclick = () => clearStore(); +} + const cgCode = stdlibCode + '\n' + designTokensCode + '\n' + uiComponentsCode + '\n' + diff --git a/src/persistence.ts b/src/persistence.ts index 72faebe..2b0f5f3 100644 --- a/src/persistence.ts +++ b/src/persistence.ts @@ -25,5 +25,5 @@ export function loadStore(): Record | nul } export function clearStore() { - localStorage.remove(STORAGE_KEY); + localStorage.removeItem(STORAGE_KEY); }