claude-code

This commit is contained in:
ashutoshpythoncs@gmail.com
2026-03-31 18:58:05 +05:30
parent a2a44a5841
commit b564857c0b
2148 changed files with 564518 additions and 2 deletions

29
web/hooks/useToast.ts Normal file
View File

@@ -0,0 +1,29 @@
"use client";
import { useCallback } from "react";
import { useNotificationStore, DEFAULT_DURATIONS, type ToastVariant } from "@/lib/notifications";
export interface ToastOptions {
variant: ToastVariant;
title: string;
description?: string;
duration?: number;
action?: { label: string; onClick: () => void };
details?: string;
}
export function useToast() {
const addToast = useNotificationStore((s) => s.addToast);
const dismissToast = useNotificationStore((s) => s.dismissToast);
const dismissAllToasts = useNotificationStore((s) => s.dismissAllToasts);
const toast = useCallback(
(options: ToastOptions): string => {
const duration = options.duration ?? DEFAULT_DURATIONS[options.variant];
return addToast({ ...options, duration });
},
[addToast]
);
return { toast, dismiss: dismissToast, dismissAll: dismissAllToasts };
}