{"version":3,"file":"useToast.hook.cjs","sources":["../../../src/hooks/use-toast/useToast.hook.tsx"],"sourcesContent":["import { useCallback } from 'react'\r\nimport { toast } from 'sonner'\r\n\r\nimport { Toast, type ToastVariant } from '@components/feedback/toast'\r\nimport { TOAST_CHANNELS } from '@components/feedback/toast/constants'\r\nimport type {\r\n    ShowToastOptions,\r\n    ToastId,\r\n    UseToastReturn,\r\n} from '@hooks/use-toast/types/useToast.types.ts'\r\n\r\nconst DEFAULT_TOAST_DURATION = 5000\r\n\r\nexport const useToast = (): UseToastReturn => {\r\n    const show = useCallback((\r\n        variant: ToastVariant,\r\n        {\r\n            title,\r\n            description,\r\n            duration = DEFAULT_TOAST_DURATION,\r\n            icon,\r\n        }: ShowToastOptions,\r\n    ): ToastId => toast.custom(\r\n        (id) => (\r\n            <Toast\r\n                variant={variant}\r\n                icon={icon}\r\n                title={title}\r\n                description={description}\r\n                onClose={() => toast.dismiss(id)}\r\n            />\r\n        ),\r\n        {\r\n            duration,\r\n            toasterId: TOAST_CHANNELS.toasts,\r\n        },\r\n    ), [])\r\n\r\n    const dismiss = useCallback((id: ToastId): void => {\r\n        toast.dismiss(id)\r\n    }, [])\r\n\r\n    return {\r\n        show,\r\n        showSuccess: (options) => show('success', options),\r\n        showError: (options) => show('error', options),\r\n        showWarning: (options) => show('warning', options),\r\n        showInfo: (options) => show('info', options),\r\n        dismiss,\r\n    }\r\n}\r\n"],"names":["DEFAULT_TOAST_DURATION","useToast","show","useCallback","variant","title","description","duration","icon","toast","id","jsx","Toast","TOAST_CHANNELS","dismiss","options"],"mappings":"8gBAWMA,EAAyB,IAElBC,EAAW,IAAsB,CAC1C,MAAMC,EAAOC,cAAY,CACrBC,EACA,CACI,MAAAC,EACA,YAAAC,EACA,SAAAC,EAAWP,EACX,KAAAQ,CAAA,IAEMC,EAAAA,MAAM,OACfC,GACGC,EAAAA,IAACC,EAAA,CACG,QAAAR,EACA,KAAAI,EACA,MAAAH,EACA,YAAAC,EACA,QAAS,IAAMG,QAAM,QAAQC,CAAE,CAAA,CAAA,EAGvC,CACI,SAAAH,EACA,UAAWM,EAAAA,eAAe,MAAA,CAC9B,EACD,EAAE,EAECC,EAAUX,cAAaO,GAAsB,CAC/CD,EAAAA,MAAM,QAAQC,CAAE,CACpB,EAAG,CAAA,CAAE,EAEL,MAAO,CACH,KAAAR,EACA,YAAca,GAAYb,EAAK,UAAWa,CAAO,EACjD,UAAYA,GAAYb,EAAK,QAASa,CAAO,EAC7C,YAAcA,GAAYb,EAAK,UAAWa,CAAO,EACjD,SAAWA,GAAYb,EAAK,OAAQa,CAAO,EAC3C,QAAAD,CAAA,CAER"}