From a5d4c9150fc37e7e33d60d45e7a978991059193b Mon Sep 17 00:00:00 2001 From: Alex Szabo Date: Sat, 16 Dec 2023 02:22:22 +0100 Subject: [PATCH] feat: preserve viz index after search --- bundle.min.js | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/bundle.min.js b/bundle.min.js index 16286b9..e0a6543 100644 --- a/bundle.min.js +++ b/bundle.min.js @@ -47128,6 +47128,24 @@ let downloadedSketches = []; let localSketches = []; + const sGet = (key) => { + try { + const variableStr = localStorage.getItem("variables"); + const variablesObj = JSON.parse(variablesStr); + return variablesObj[key]; + } catch(e) { + return undefined; + } + } + const sPut = (key, value) => { + if (localStorage.getItem("variables") === null) { + localStorage.setItem("variables", '{}'); + } + const o = JSON.parse(localStorage.getItem("variables")); + o[key]=value; + localStorage.setItem('variables', JSON.stringify(o)); + } + window.xemitter = emitter; emitter.on('DOMContentLoaded', function () { @@ -47289,7 +47307,7 @@ repl.eval(editor.getValue()) }) - let sketchIdx = 0; + let sketchIdx = sGet('sketchIdx') || 0; // TODO: copy emitter.on('gallery:nextSketch', (e) => { if (e.altKey || e.shiftKey || e.backwards) { @@ -47297,6 +47315,7 @@ } else { sketchIdx++; } + sPut('sketchIdx', sketchIdx); const editor = state.editor.editor; clearAll() @@ -47452,6 +47471,8 @@ editor.setValue(preamble + sketch.code); } repl.eval(editor.getValue()); + sketchIdx = sketch.index || sketchIdx; + sPut('sketchIdx', sketchIdx); document.title = sketch.name; }