{ "version": 3, "sources": ["../../../../src/lib/ui/components/Toasts.tsx"], "sourcesContent": ["import * as T from '@radix-ui/react-toast'\nimport * as React from 'react'\nimport { TLUiToast, useToasts } from '../hooks/useToastsProvider'\nimport { useTranslation } from '../hooks/useTranslation/useTranslation'\nimport { TLUiIconType } from '../icon-types'\nimport { Button } from './primitives/Button'\nimport { Icon } from './primitives/Icon'\n\nfunction Toast({ toast }: { toast: TLUiToast }) {\n\tconst { removeToast } = useToasts()\n\tconst msg = useTranslation()\n\n\tconst onOpenChange = (isOpen: boolean) => {\n\t\tif (!isOpen) {\n\t\t\tremoveToast(toast.id)\n\t\t}\n\t}\n\n\tconst hasActions = toast.actions && toast.actions.length > 0\n\n\treturn (\n\t\t\n\t\t\t{toast.icon && (\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t)}\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t{toast.title && {toast.title}}\n\t\t\t\t\t{toast.description && (\n\t\t\t\t\t\t{toast.description}\n\t\t\t\t\t)}\n\t\t\t\t
\n\t\t\t\t{toast.actions && (\n\t\t\t\t\t
\n\t\t\t\t\t\t{toast.actions.map((action, i) => (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{action.label}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t))}\n\t\t\t\t\t\t{hasActions && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t
\n\t\t\t\t)}\n\t\t\t
\n\t\t\t{!hasActions && (\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t)}\n\t\t\n\t)\n}\n\nfunction _Toasts() {\n\tconst { toasts } = useToasts()\n\n\treturn (\n\t\t<>\n\t\t\t{toasts.map((toast) => (\n\t\t\t\t\n\t\t\t))}\n\t\t\n\t)\n}\n\nexport const Toasts = React.memo(_Toasts)\n\nexport function ToastViewport() {\n\tconst { toasts } = useToasts()\n\n\tconst [hasToasts, setHasToasts] = React.useState(false)\n\n\tReact.useEffect(() => {\n\t\tlet cancelled = false\n\t\tif (toasts.length) {\n\t\t\tsetHasToasts(true)\n\t\t} else {\n\t\t\tsetTimeout(() => {\n\t\t\t\tif (!cancelled) {\n\t\t\t\t\tsetHasToasts(false)\n\t\t\t\t}\n\t\t\t}, 1000)\n\t\t}\n\n\t\treturn () => {\n\t\t\tcancelled = true\n\t\t}\n\t}, [toasts.length, setHasToasts])\n\n\tif (!hasToasts) return null\n\n\treturn \n}\n"], "mappings": "AA4BK,SA8CH,UA9CG,KAID,YAJC;AA5BL,YAAY,OAAO;AACnB,YAAY,WAAW;AACvB,SAAoB,iBAAiB;AACrC,SAAS,sBAAsB;AAE/B,SAAS,cAAc;AACvB,SAAS,YAAY;AAErB,SAAS,MAAM,EAAE,MAAM,GAAyB;AAC/C,QAAM,EAAE,YAAY,IAAI,UAAU;AAClC,QAAM,MAAM,eAAe;AAE3B,QAAM,eAAe,CAAC,WAAoB;AACzC,QAAI,CAAC,QAAQ;AACZ,kBAAY,MAAM,EAAE;AAAA,IACrB;AAAA,EACD;AAEA,QAAM,aAAa,MAAM,WAAW,MAAM,QAAQ,SAAS;AAE3D,SACC;AAAA,IAAC,EAAE;AAAA,IAAF;AAAA,MACA;AAAA,MACA,WAAU;AAAA,MACV,UAAU,MAAM,WAAW,WAAW;AAAA,MAErC;AAAA,cAAM,QACN,oBAAC,SAAI,WAAU,oBACd,8BAAC,QAAK,MAAM,MAAM,MAAsB,GACzC;AAAA,QAED,qBAAC,SAAI,WAAU,oBACd;AAAA,+BAAC,SAAI,WAAU,uBACb;AAAA,kBAAM,SAAS,oBAAC,EAAE,OAAF,EAAQ,WAAU,qBAAqB,gBAAM,OAAM;AAAA,YACnE,MAAM,eACN,oBAAC,EAAE,aAAF,EAAc,WAAU,2BAA2B,gBAAM,aAAY;AAAA,aAExE;AAAA,UACC,MAAM,WACN,qBAAC,SAAI,WAAU,uBACb;AAAA,kBAAM,QAAQ,IAAI,CAAC,QAAQ,MAC3B,oBAAC,EAAE,QAAF,EAAiB,SAAS,OAAO,OAAO,SAAO,MAAC,SAAS,OAAO,SAChE;AAAA,cAAC;AAAA;AAAA,gBACA,WACC,OAAO,SAAS,SAAS,yBAAyB;AAAA,gBAGlD,iBAAO;AAAA;AAAA,YACT,KAPc,CAQf,CACA;AAAA,YACA,cACA,oBAAC,EAAE,OAAF,EAAQ,SAAO,MACf,8BAAC,UAAO,WAAU,qBAAoB,OAAO,EAAE,YAAY,OAAO,GAChE,gBAAM,cAAc,IAAI,aAAa,GACvC,GACD;AAAA,aAEF;AAAA,WAEF;AAAA,QACC,CAAC,cACD,oBAAC,EAAE,OAAF,EAAQ,SAAO,MACf,8BAAC,UAAO,WAAU,qBAAqB,gBAAM,cAAc,IAAI,aAAa,GAAE,GAC/E;AAAA;AAAA;AAAA,EAEF;AAEF;AAEA,SAAS,UAAU;AAClB,QAAM,EAAE,OAAO,IAAI,UAAU;AAE7B,SACC,gCACE,iBAAO,IAAI,CAAC,UACZ,oBAAC,SAAqB,SAAV,MAAM,EAAkB,CACpC,GACF;AAEF;AAEO,MAAM,SAAS,MAAM,KAAK,OAAO;AAEjC,SAAS,gBAAgB;AAC/B,QAAM,EAAE,OAAO,IAAI,UAAU;AAE7B,QAAM,CAAC,WAAW,YAAY,IAAI,MAAM,SAAS,KAAK;AAEtD,QAAM,UAAU,MAAM;AACrB,QAAI,YAAY;AAChB,QAAI,OAAO,QAAQ;AAClB,mBAAa,IAAI;AAAA,IAClB,OAAO;AACN,iBAAW,MAAM;AAChB,YAAI,CAAC,WAAW;AACf,uBAAa,KAAK;AAAA,QACnB;AAAA,MACD,GAAG,GAAI;AAAA,IACR;AAEA,WAAO,MAAM;AACZ,kBAAY;AAAA,IACb;AAAA,EACD,GAAG,CAAC,OAAO,QAAQ,YAAY,CAAC;AAEhC,MAAI,CAAC;AAAW,WAAO;AAEvB,SAAO,oBAAC,EAAE,eAAF,EAAgB,WAAU,wBAAuB;AAC1D;", "names": [] }