From e417b71539d3f7d803e47c1ddea26fc961cd9264 Mon Sep 17 00:00:00 2001 From: curo1305 Date: Mon, 8 Jun 2026 16:30:30 +0200 Subject: [PATCH] feat(08-03): create useToastStore Pinia stub with locked show() contract - Defines show(message, type='success', duration=4000) as silent no-op - Positional parameters only per UI-SPEC.md contract - Phase 10 (UX-10) must implement rendering without modifying call sites --- frontend/src/stores/toast.js | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 frontend/src/stores/toast.js diff --git a/frontend/src/stores/toast.js b/frontend/src/stores/toast.js new file mode 100644 index 0000000..0206d89 --- /dev/null +++ b/frontend/src/stores/toast.js @@ -0,0 +1,20 @@ +/** + * Phase 7.1 STUB — Phase 10 (UX-10) fills in the full implementation. + * + * The signature `show(message, type, duration)` is locked and Phase 10 must + * honor it without modifying Phase 8 call sites. + * + * Default values match UI-SPEC.md: + * type = 'success' (NOT 'info') + * duration = 4000 + */ +import { defineStore } from 'pinia' + +export const useToastStore = defineStore('toast', () => { + // eslint-disable-next-line no-unused-vars + function show(message, type = 'success', duration = 4000) { + // No-op stub — Phase 10 implements rendering. + } + + return { show } +})