604d4f6005
Add a module-scope Base UI toast manager bridged to the QueryClient so every mutation can give consistent feedback. A MutationCache (extracted into a makeQueryClient() factory for test reuse) emits a catch-all, type-aware error toast (unless meta.suppressErrorToast) and an opt-in success toast (meta.successMessage), reading mutation.meta + i18n.t outside React. meta is type-checked via a react-query Register augmentation. ToastRegion is mounted app-wide in main.tsx. Adds a toast i18n namespace (en/sv parity) and a validated story. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
15 lines
425 B
TypeScript
15 lines
425 B
TypeScript
import "@tanstack/react-query";
|
|
|
|
declare module "@tanstack/react-query" {
|
|
interface Register {
|
|
mutationMeta: {
|
|
/** i18n key for a success toast (opt-in). */
|
|
successMessage?: string;
|
|
/** i18n key overriding the default error toast message. */
|
|
errorMessage?: string;
|
|
/** Skip the global error toast (the component shows the error inline). */
|
|
suppressErrorToast?: boolean;
|
|
};
|
|
}
|
|
}
|