Each setting now saves via a debounced (600ms) individual API call when its value changes. A hydration guard (_hydrated flag + nextTick) prevents watchers from firing during the initial load() fetch, ensuring the first API round-trip does not generate spurious write calls. Removed: five explicit Save buttons across Equipment, Sensory, Units, Shopping Region, and Recipe Search Layout sections. Added: "Changes save automatically." subtitle + fixed bottom-right toast that appears for 2s after any successful save, with enter/leave transitions that respect prefers-reduced-motion via the theme. The full save() and saveSensory() actions are kept as internal fallbacks. |
||
|---|---|---|
| .. | ||
| .vscode | ||
| public | ||
| src | ||
| .env | ||
| .gitignore | ||
| index.html | ||
| package-lock.json | ||
| package.json | ||
| THEMING_SYSTEM.md | ||
| tsconfig.app.json | ||
| tsconfig.json | ||
| tsconfig.node.json | ||
| vite.config.ts | ||