analytica-frontend-lib 1.0.86 → 1.0.88

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (291) hide show
  1. package/dist/Accordation/index.js +0 -1
  2. package/dist/Accordation/index.mjs +0 -1
  3. package/dist/Alert/index.js +0 -1
  4. package/dist/Alert/index.mjs +0 -1
  5. package/dist/AlertDialog/index.js +0 -1
  6. package/dist/AlertDialog/index.mjs +0 -1
  7. package/dist/Alternative/index.js +0 -1
  8. package/dist/Alternative/index.mjs +0 -1
  9. package/dist/Auth/AuthProvider/index.js +0 -1
  10. package/dist/Auth/AuthProvider/index.mjs +0 -1
  11. package/dist/Auth/ProtectedRoute/index.js +0 -1
  12. package/dist/Auth/ProtectedRoute/index.mjs +0 -1
  13. package/dist/Auth/PublicRoute/index.js +0 -1
  14. package/dist/Auth/PublicRoute/index.mjs +0 -1
  15. package/dist/Auth/getRootDomain/index.js +0 -1
  16. package/dist/Auth/getRootDomain/index.mjs +0 -1
  17. package/dist/Auth/index.js +0 -1
  18. package/dist/Auth/index.mjs +0 -1
  19. package/dist/Auth/useApiConfig/index.js +0 -1
  20. package/dist/Auth/useApiConfig/index.mjs +0 -1
  21. package/dist/Auth/useAuth/index.js +0 -1
  22. package/dist/Auth/useAuth/index.mjs +0 -1
  23. package/dist/Auth/useAuthGuard/index.js +0 -1
  24. package/dist/Auth/useAuthGuard/index.mjs +0 -1
  25. package/dist/Auth/useRouteAuth/index.js +0 -1
  26. package/dist/Auth/useRouteAuth/index.mjs +0 -1
  27. package/dist/Auth/useUrlAuthentication/index.js +0 -1
  28. package/dist/Auth/useUrlAuthentication/index.mjs +0 -1
  29. package/dist/Auth/withAuth/index.js +0 -1
  30. package/dist/Auth/withAuth/index.mjs +0 -1
  31. package/dist/Auth/zustandAuthAdapter/index.js +0 -1
  32. package/dist/Auth/zustandAuthAdapter/index.mjs +0 -1
  33. package/dist/Badge/index.js +0 -1
  34. package/dist/Badge/index.mjs +0 -1
  35. package/dist/Button/index.js +0 -1
  36. package/dist/Button/index.mjs +0 -1
  37. package/dist/Calendar/index.js +0 -1
  38. package/dist/Calendar/index.mjs +0 -1
  39. package/dist/Card/index.js +0 -1
  40. package/dist/Card/index.mjs +0 -1
  41. package/dist/CheckBox/index.js +0 -1
  42. package/dist/CheckBox/index.mjs +0 -1
  43. package/dist/Chips/index.js +0 -1
  44. package/dist/Chips/index.mjs +0 -1
  45. package/dist/Divider/index.js +0 -1
  46. package/dist/Divider/index.mjs +0 -1
  47. package/dist/DropdownMenu/index.js +0 -1
  48. package/dist/DropdownMenu/index.mjs +0 -1
  49. package/dist/IconButton/index.js +0 -1
  50. package/dist/IconButton/index.mjs +0 -1
  51. package/dist/IconRoundedButton/index.js +0 -1
  52. package/dist/IconRoundedButton/index.mjs +0 -1
  53. package/dist/Input/index.js +0 -1
  54. package/dist/Input/index.mjs +0 -1
  55. package/dist/Menu/index.js +0 -1
  56. package/dist/Menu/index.mjs +0 -1
  57. package/dist/Modal/index.js +0 -1
  58. package/dist/Modal/index.mjs +0 -1
  59. package/dist/MultipleChoice/index.js +660 -0
  60. package/dist/MultipleChoice/index.mjs +647 -0
  61. package/dist/NavButton/index.js +0 -1
  62. package/dist/NavButton/index.mjs +0 -1
  63. package/dist/NotFound/index.js +0 -1
  64. package/dist/NotFound/index.mjs +0 -1
  65. package/dist/ProgressBar/index.js +0 -1
  66. package/dist/ProgressBar/index.mjs +0 -1
  67. package/dist/ProgressCircle/index.js +0 -1
  68. package/dist/ProgressCircle/index.mjs +0 -1
  69. package/dist/Quiz/index.js +955 -296
  70. package/dist/Quiz/index.mjs +972 -295
  71. package/dist/Quiz/useQuizStore/index.js +79 -35
  72. package/dist/Quiz/useQuizStore/index.mjs +79 -35
  73. package/dist/Radio/index.js +0 -1
  74. package/dist/Radio/index.mjs +0 -1
  75. package/dist/Select/index.js +0 -1
  76. package/dist/Select/index.mjs +0 -1
  77. package/dist/SelectionButton/index.js +0 -1
  78. package/dist/SelectionButton/index.mjs +0 -1
  79. package/dist/Skeleton/index.js +0 -1
  80. package/dist/Skeleton/index.mjs +0 -1
  81. package/dist/Stepper/index.js +0 -1
  82. package/dist/Stepper/index.mjs +0 -1
  83. package/dist/Table/index.js +0 -1
  84. package/dist/Table/index.mjs +0 -1
  85. package/dist/Text/index.js +0 -1
  86. package/dist/Text/index.mjs +0 -1
  87. package/dist/TextArea/index.js +0 -1
  88. package/dist/TextArea/index.mjs +0 -1
  89. package/dist/Toast/ToastStore/index.js +0 -1
  90. package/dist/Toast/ToastStore/index.mjs +0 -1
  91. package/dist/Toast/Toaster/index.js +0 -1
  92. package/dist/Toast/Toaster/index.mjs +0 -1
  93. package/dist/Toast/index.js +0 -1
  94. package/dist/Toast/index.mjs +0 -1
  95. package/dist/index.css +42 -1
  96. package/dist/index.d.mts +2205 -41
  97. package/dist/index.d.ts +2205 -41
  98. package/dist/index.js +1397 -935
  99. package/dist/index.mjs +1338 -866
  100. package/dist/styles.css +42 -1
  101. package/package.json +5 -3
  102. package/dist/Accordation/index.d.mts +0 -12
  103. package/dist/Accordation/index.d.ts +0 -12
  104. package/dist/Accordation/index.js.map +0 -1
  105. package/dist/Accordation/index.mjs.map +0 -1
  106. package/dist/Alert/index.d.mts +0 -13
  107. package/dist/Alert/index.d.ts +0 -13
  108. package/dist/Alert/index.js.map +0 -1
  109. package/dist/Alert/index.mjs.map +0 -1
  110. package/dist/AlertDialog/index.d.mts +0 -36
  111. package/dist/AlertDialog/index.d.ts +0 -36
  112. package/dist/AlertDialog/index.js.map +0 -1
  113. package/dist/AlertDialog/index.mjs.map +0 -1
  114. package/dist/Alternative/index.d.mts +0 -81
  115. package/dist/Alternative/index.d.ts +0 -81
  116. package/dist/Alternative/index.js.map +0 -1
  117. package/dist/Alternative/index.mjs.map +0 -1
  118. package/dist/Auth/AuthProvider/index.d.mts +0 -3
  119. package/dist/Auth/AuthProvider/index.d.ts +0 -3
  120. package/dist/Auth/AuthProvider/index.js.map +0 -1
  121. package/dist/Auth/AuthProvider/index.mjs.map +0 -1
  122. package/dist/Auth/ProtectedRoute/index.d.mts +0 -3
  123. package/dist/Auth/ProtectedRoute/index.d.ts +0 -3
  124. package/dist/Auth/ProtectedRoute/index.js.map +0 -1
  125. package/dist/Auth/ProtectedRoute/index.mjs.map +0 -1
  126. package/dist/Auth/PublicRoute/index.d.mts +0 -3
  127. package/dist/Auth/PublicRoute/index.d.ts +0 -3
  128. package/dist/Auth/PublicRoute/index.js.map +0 -1
  129. package/dist/Auth/PublicRoute/index.mjs.map +0 -1
  130. package/dist/Auth/getRootDomain/index.d.mts +0 -3
  131. package/dist/Auth/getRootDomain/index.d.ts +0 -3
  132. package/dist/Auth/getRootDomain/index.js.map +0 -1
  133. package/dist/Auth/getRootDomain/index.mjs.map +0 -1
  134. package/dist/Auth/index.d.mts +0 -312
  135. package/dist/Auth/index.d.ts +0 -312
  136. package/dist/Auth/index.js.map +0 -1
  137. package/dist/Auth/index.mjs.map +0 -1
  138. package/dist/Auth/useApiConfig/index.d.mts +0 -43
  139. package/dist/Auth/useApiConfig/index.d.ts +0 -43
  140. package/dist/Auth/useApiConfig/index.js.map +0 -1
  141. package/dist/Auth/useApiConfig/index.mjs.map +0 -1
  142. package/dist/Auth/useAuth/index.d.mts +0 -3
  143. package/dist/Auth/useAuth/index.d.ts +0 -3
  144. package/dist/Auth/useAuth/index.js.map +0 -1
  145. package/dist/Auth/useAuth/index.mjs.map +0 -1
  146. package/dist/Auth/useAuthGuard/index.d.mts +0 -3
  147. package/dist/Auth/useAuthGuard/index.d.ts +0 -3
  148. package/dist/Auth/useAuthGuard/index.js.map +0 -1
  149. package/dist/Auth/useAuthGuard/index.mjs.map +0 -1
  150. package/dist/Auth/useRouteAuth/index.d.mts +0 -3
  151. package/dist/Auth/useRouteAuth/index.d.ts +0 -3
  152. package/dist/Auth/useRouteAuth/index.js.map +0 -1
  153. package/dist/Auth/useRouteAuth/index.mjs.map +0 -1
  154. package/dist/Auth/useUrlAuthentication/index.d.mts +0 -58
  155. package/dist/Auth/useUrlAuthentication/index.d.ts +0 -58
  156. package/dist/Auth/useUrlAuthentication/index.js.map +0 -1
  157. package/dist/Auth/useUrlAuthentication/index.mjs.map +0 -1
  158. package/dist/Auth/withAuth/index.d.mts +0 -3
  159. package/dist/Auth/withAuth/index.d.ts +0 -3
  160. package/dist/Auth/withAuth/index.js.map +0 -1
  161. package/dist/Auth/withAuth/index.mjs.map +0 -1
  162. package/dist/Auth/zustandAuthAdapter/index.d.mts +0 -75
  163. package/dist/Auth/zustandAuthAdapter/index.d.ts +0 -75
  164. package/dist/Auth/zustandAuthAdapter/index.js.map +0 -1
  165. package/dist/Auth/zustandAuthAdapter/index.mjs.map +0 -1
  166. package/dist/Badge/index.d.mts +0 -46
  167. package/dist/Badge/index.d.ts +0 -46
  168. package/dist/Badge/index.js.map +0 -1
  169. package/dist/Badge/index.mjs.map +0 -1
  170. package/dist/Button/index.d.mts +0 -45
  171. package/dist/Button/index.d.ts +0 -45
  172. package/dist/Button/index.js.map +0 -1
  173. package/dist/Button/index.mjs.map +0 -1
  174. package/dist/Calendar/index.d.mts +0 -60
  175. package/dist/Calendar/index.d.ts +0 -60
  176. package/dist/Calendar/index.js.map +0 -1
  177. package/dist/Calendar/index.mjs.map +0 -1
  178. package/dist/Card/index.d.mts +0 -150
  179. package/dist/Card/index.d.ts +0 -150
  180. package/dist/Card/index.js.map +0 -1
  181. package/dist/Card/index.mjs.map +0 -1
  182. package/dist/CheckBox/index.d.mts +0 -74
  183. package/dist/CheckBox/index.d.ts +0 -74
  184. package/dist/CheckBox/index.js.map +0 -1
  185. package/dist/CheckBox/index.mjs.map +0 -1
  186. package/dist/Chips/index.d.mts +0 -41
  187. package/dist/Chips/index.d.ts +0 -41
  188. package/dist/Chips/index.js.map +0 -1
  189. package/dist/Chips/index.mjs.map +0 -1
  190. package/dist/Divider/index.d.mts +0 -32
  191. package/dist/Divider/index.d.ts +0 -32
  192. package/dist/Divider/index.js.map +0 -1
  193. package/dist/Divider/index.mjs.map +0 -1
  194. package/dist/DropdownMenu/index.d.mts +0 -68
  195. package/dist/DropdownMenu/index.d.ts +0 -68
  196. package/dist/DropdownMenu/index.js.map +0 -1
  197. package/dist/DropdownMenu/index.mjs.map +0 -1
  198. package/dist/IconButton/index.d.mts +0 -76
  199. package/dist/IconButton/index.d.ts +0 -76
  200. package/dist/IconButton/index.js.map +0 -1
  201. package/dist/IconButton/index.mjs.map +0 -1
  202. package/dist/IconRoundedButton/index.d.mts +0 -34
  203. package/dist/IconRoundedButton/index.d.ts +0 -34
  204. package/dist/IconRoundedButton/index.js.map +0 -1
  205. package/dist/IconRoundedButton/index.mjs.map +0 -1
  206. package/dist/Input/index.d.mts +0 -27
  207. package/dist/Input/index.d.ts +0 -27
  208. package/dist/Input/index.js.map +0 -1
  209. package/dist/Input/index.mjs.map +0 -1
  210. package/dist/Menu/index.d.mts +0 -48
  211. package/dist/Menu/index.d.ts +0 -48
  212. package/dist/Menu/index.js.map +0 -1
  213. package/dist/Menu/index.mjs.map +0 -1
  214. package/dist/Modal/index.d.mts +0 -66
  215. package/dist/Modal/index.d.ts +0 -66
  216. package/dist/Modal/index.js.map +0 -1
  217. package/dist/Modal/index.mjs.map +0 -1
  218. package/dist/NavButton/index.d.mts +0 -57
  219. package/dist/NavButton/index.d.ts +0 -57
  220. package/dist/NavButton/index.js.map +0 -1
  221. package/dist/NavButton/index.mjs.map +0 -1
  222. package/dist/NotFound/index.d.mts +0 -58
  223. package/dist/NotFound/index.d.ts +0 -58
  224. package/dist/NotFound/index.js.map +0 -1
  225. package/dist/NotFound/index.mjs.map +0 -1
  226. package/dist/ProgressBar/index.d.mts +0 -95
  227. package/dist/ProgressBar/index.d.ts +0 -95
  228. package/dist/ProgressBar/index.js.map +0 -1
  229. package/dist/ProgressBar/index.mjs.map +0 -1
  230. package/dist/ProgressCircle/index.d.mts +0 -60
  231. package/dist/ProgressCircle/index.d.ts +0 -60
  232. package/dist/ProgressCircle/index.js.map +0 -1
  233. package/dist/ProgressCircle/index.mjs.map +0 -1
  234. package/dist/Quiz/index.d.mts +0 -52
  235. package/dist/Quiz/index.d.ts +0 -52
  236. package/dist/Quiz/index.js.map +0 -1
  237. package/dist/Quiz/index.mjs.map +0 -1
  238. package/dist/Quiz/useQuizStore/index.d.mts +0 -140
  239. package/dist/Quiz/useQuizStore/index.d.ts +0 -140
  240. package/dist/Quiz/useQuizStore/index.js.map +0 -1
  241. package/dist/Quiz/useQuizStore/index.mjs.map +0 -1
  242. package/dist/Radio/index.d.mts +0 -203
  243. package/dist/Radio/index.d.ts +0 -203
  244. package/dist/Radio/index.js.map +0 -1
  245. package/dist/Radio/index.mjs.map +0 -1
  246. package/dist/Select/index.d.mts +0 -58
  247. package/dist/Select/index.d.ts +0 -58
  248. package/dist/Select/index.js.map +0 -1
  249. package/dist/Select/index.mjs.map +0 -1
  250. package/dist/SelectionButton/index.d.mts +0 -57
  251. package/dist/SelectionButton/index.d.ts +0 -57
  252. package/dist/SelectionButton/index.js.map +0 -1
  253. package/dist/SelectionButton/index.mjs.map +0 -1
  254. package/dist/Skeleton/index.d.mts +0 -40
  255. package/dist/Skeleton/index.d.ts +0 -40
  256. package/dist/Skeleton/index.js.map +0 -1
  257. package/dist/Skeleton/index.mjs.map +0 -1
  258. package/dist/Stepper/index.d.mts +0 -169
  259. package/dist/Stepper/index.d.ts +0 -169
  260. package/dist/Stepper/index.js.map +0 -1
  261. package/dist/Stepper/index.mjs.map +0 -1
  262. package/dist/Table/index.d.mts +0 -17
  263. package/dist/Table/index.d.ts +0 -17
  264. package/dist/Table/index.js.map +0 -1
  265. package/dist/Table/index.mjs.map +0 -1
  266. package/dist/Text/index.d.mts +0 -58
  267. package/dist/Text/index.d.ts +0 -58
  268. package/dist/Text/index.js.map +0 -1
  269. package/dist/Text/index.mjs.map +0 -1
  270. package/dist/TextArea/index.d.mts +0 -70
  271. package/dist/TextArea/index.d.ts +0 -70
  272. package/dist/TextArea/index.js.map +0 -1
  273. package/dist/TextArea/index.mjs.map +0 -1
  274. package/dist/Toast/ToastStore/index.d.mts +0 -19
  275. package/dist/Toast/ToastStore/index.d.ts +0 -19
  276. package/dist/Toast/ToastStore/index.js.map +0 -1
  277. package/dist/Toast/ToastStore/index.mjs.map +0 -1
  278. package/dist/Toast/Toaster/index.d.mts +0 -16
  279. package/dist/Toast/Toaster/index.d.ts +0 -16
  280. package/dist/Toast/Toaster/index.js.map +0 -1
  281. package/dist/Toast/Toaster/index.mjs.map +0 -1
  282. package/dist/Toast/index.d.mts +0 -17
  283. package/dist/Toast/index.d.ts +0 -17
  284. package/dist/Toast/index.js.map +0 -1
  285. package/dist/Toast/index.mjs.map +0 -1
  286. package/dist/index.css.map +0 -1
  287. package/dist/index.js.map +0 -1
  288. package/dist/index.mjs.map +0 -1
  289. package/dist/styles.css.map +0 -1
  290. package/dist/styles.d.mts +0 -2
  291. package/dist/styles.d.ts +0 -2
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/Toast/utils/ToastStore.ts","../../../src/components/Toast/Toast.tsx","../../../src/utils/utils.ts","../../../src/components/Toast/utils/Toaster.tsx"],"sourcesContent":["import { create } from 'zustand';\n\ntype ToastPosition =\n | 'top-left'\n | 'top-center'\n | 'top-right'\n | 'bottom-left'\n | 'bottom-center'\n | 'bottom-right'\n | 'default';\n\ntype ToastData = {\n id: string;\n title: string;\n description?: string;\n variant?: 'solid' | 'outlined';\n action?: 'warning' | 'success' | 'info';\n position?: ToastPosition;\n};\n\ntype ToastStore = {\n toasts: ToastData[];\n addToast: (toast: Omit<ToastData, 'id'>) => void;\n removeToast: (id: string) => void;\n};\n\nconst useToastStore = create<ToastStore>((set) => ({\n toasts: [],\n addToast: (toast) => {\n const id = crypto.randomUUID();\n\n set((state) => ({\n toasts: [...state.toasts, { id, ...toast }],\n }));\n },\n removeToast: (id) => {\n set((state) => ({\n toasts: state.toasts.filter((t) => t.id !== id),\n }));\n },\n}));\n\nexport default useToastStore;\n","import { HTMLAttributes } from 'react';\nimport { CheckCircle, WarningCircle, Info, X } from 'phosphor-react';\nimport { cn } from '../../utils/utils';\n\n/**\n * Lookup table for variant and action class combinations\n */\nconst VARIANT_ACTION_CLASSES = {\n solid: {\n warning:\n 'bg-warning text-warning-600 border-none focus-visible:outline-none',\n success:\n 'bg-success text-success-800 border-none focus-visible:outline-none',\n info: 'bg-info text-info-600 border-none focus-visible:outline-none',\n },\n outlined: {\n warning:\n 'bg-warning text-warning-600 border border-warning-300 focus-visible:outline-none',\n success:\n 'bg-success text-success-800 border border-success-200 focus-visible:outline-none',\n info: 'bg-info text-info-600 border border-info-600 focus-visible:outline-none',\n },\n} as const;\n\ntype ToastPosition =\n | 'top-left'\n | 'top-center'\n | 'top-right'\n | 'bottom-left'\n | 'bottom-center'\n | 'bottom-right'\n | 'default';\n\ntype ToastProps = {\n title: string;\n description?: string;\n onClose: () => void;\n /** Visual variant of the badge */\n variant?: 'solid' | 'outlined';\n /** Action type of the badge */\n action?: 'warning' | 'success' | 'info';\n position?: ToastPosition;\n} & HTMLAttributes<HTMLDivElement>;\n\nconst iconMap = {\n success: CheckCircle,\n info: Info,\n warning: WarningCircle,\n};\n\nconst Toast = ({\n variant = 'outlined',\n action = 'success',\n className = '',\n onClose,\n title,\n description,\n position = 'default',\n ...props\n}: ToastProps) => {\n // Get classes from lookup tables\n const variantClasses = VARIANT_ACTION_CLASSES[variant][action];\n\n const positionClasses: Record<ToastPosition, string> = {\n 'top-left': 'fixed top-4 left-4',\n 'top-center': 'fixed top-4 left-1/2 transform -translate-x-1/2',\n 'top-right': 'fixed top-4 right-4',\n 'bottom-left': 'fixed bottom-4 left-4',\n 'bottom-center': 'fixed bottom-4 left-1/2 transform -translate-x-1/2',\n 'bottom-right': 'fixed bottom-4 right-4',\n default: '',\n };\n\n const IconAction = iconMap[action] || iconMap['success'];\n\n const baseClasses =\n 'max-w-[390px] w-full flex flex-row items-start justify-between shadow-lg rounded-lg border p-4 gap-6 group';\n\n return (\n <div\n role=\"alert\"\n aria-live=\"assertive\"\n aria-atomic=\"true\"\n className={cn(\n baseClasses,\n positionClasses[position],\n variantClasses,\n className\n )}\n {...props}\n >\n <div className=\"flex flex-row items-start gap-3\">\n <span className=\"mt-1\" data-testid={`toast-icon-${action}`}>\n <IconAction />\n </span>\n <div className=\"flex flex-col items-start justify-start\">\n <p className=\"font-semibold text-md\">{title}</p>\n {description && (\n <p className=\"text-md text-text-900\">{description}</p>\n )}\n </div>\n </div>\n <button\n onClick={onClose}\n aria-label=\"Dismiss notification\"\n className=\"text-background-500 cursor-pointer opacity-0 group-hover:opacity-100 transition-opacity\"\n >\n <X />\n </button>\n </div>\n );\n};\n\nexport default Toast;\n","import { clsx, type ClassValue } from 'clsx';\nimport { twMerge } from 'tailwind-merge';\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import useToastStore from './ToastStore';\nimport Toast from '../Toast';\n\nconst Toaster = () => {\n const toasts = useToastStore((state) => state.toasts);\n const removeToast = useToastStore((state) => state.removeToast);\n\n return (\n <>\n {toasts.map((toast) => (\n <Toast\n key={toast.id}\n title={toast.title}\n description={toast.description}\n variant={toast.variant}\n action={toast.action}\n position={toast.position}\n onClose={() => removeToast(toast.id)}\n />\n ))}\n </>\n );\n};\n\nexport const useToast = () => {\n const addToast = useToastStore((state) => state.addToast);\n const removeToast = useToastStore((state) => state.removeToast);\n\n return { addToast, removeToast };\n};\n\nexport default Toaster;\n"],"mappings":"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","names":["jsx"]}
@@ -1,17 +0,0 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { HTMLAttributes } from 'react';
3
-
4
- type ToastPosition = 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right' | 'default';
5
- type ToastProps = {
6
- title: string;
7
- description?: string;
8
- onClose: () => void;
9
- /** Visual variant of the badge */
10
- variant?: 'solid' | 'outlined';
11
- /** Action type of the badge */
12
- action?: 'warning' | 'success' | 'info';
13
- position?: ToastPosition;
14
- } & HTMLAttributes<HTMLDivElement>;
15
- declare const Toast: ({ variant, action, className, onClose, title, description, position, ...props }: ToastProps) => react_jsx_runtime.JSX.Element;
16
-
17
- export { Toast as default };
@@ -1,17 +0,0 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { HTMLAttributes } from 'react';
3
-
4
- type ToastPosition = 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right' | 'default';
5
- type ToastProps = {
6
- title: string;
7
- description?: string;
8
- onClose: () => void;
9
- /** Visual variant of the badge */
10
- variant?: 'solid' | 'outlined';
11
- /** Action type of the badge */
12
- action?: 'warning' | 'success' | 'info';
13
- position?: ToastPosition;
14
- } & HTMLAttributes<HTMLDivElement>;
15
- declare const Toast: ({ variant, action, className, onClose, title, description, position, ...props }: ToastProps) => react_jsx_runtime.JSX.Element;
16
-
17
- export { Toast as default };
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/Toast/Toast.tsx","../../src/utils/utils.ts"],"sourcesContent":["import { HTMLAttributes } from 'react';\nimport { CheckCircle, WarningCircle, Info, X } from 'phosphor-react';\nimport { cn } from '../../utils/utils';\n\n/**\n * Lookup table for variant and action class combinations\n */\nconst VARIANT_ACTION_CLASSES = {\n solid: {\n warning:\n 'bg-warning text-warning-600 border-none focus-visible:outline-none',\n success:\n 'bg-success text-success-800 border-none focus-visible:outline-none',\n info: 'bg-info text-info-600 border-none focus-visible:outline-none',\n },\n outlined: {\n warning:\n 'bg-warning text-warning-600 border border-warning-300 focus-visible:outline-none',\n success:\n 'bg-success text-success-800 border border-success-200 focus-visible:outline-none',\n info: 'bg-info text-info-600 border border-info-600 focus-visible:outline-none',\n },\n} as const;\n\ntype ToastPosition =\n | 'top-left'\n | 'top-center'\n | 'top-right'\n | 'bottom-left'\n | 'bottom-center'\n | 'bottom-right'\n | 'default';\n\ntype ToastProps = {\n title: string;\n description?: string;\n onClose: () => void;\n /** Visual variant of the badge */\n variant?: 'solid' | 'outlined';\n /** Action type of the badge */\n action?: 'warning' | 'success' | 'info';\n position?: ToastPosition;\n} & HTMLAttributes<HTMLDivElement>;\n\nconst iconMap = {\n success: CheckCircle,\n info: Info,\n warning: WarningCircle,\n};\n\nconst Toast = ({\n variant = 'outlined',\n action = 'success',\n className = '',\n onClose,\n title,\n description,\n position = 'default',\n ...props\n}: ToastProps) => {\n // Get classes from lookup tables\n const variantClasses = VARIANT_ACTION_CLASSES[variant][action];\n\n const positionClasses: Record<ToastPosition, string> = {\n 'top-left': 'fixed top-4 left-4',\n 'top-center': 'fixed top-4 left-1/2 transform -translate-x-1/2',\n 'top-right': 'fixed top-4 right-4',\n 'bottom-left': 'fixed bottom-4 left-4',\n 'bottom-center': 'fixed bottom-4 left-1/2 transform -translate-x-1/2',\n 'bottom-right': 'fixed bottom-4 right-4',\n default: '',\n };\n\n const IconAction = iconMap[action] || iconMap['success'];\n\n const baseClasses =\n 'max-w-[390px] w-full flex flex-row items-start justify-between shadow-lg rounded-lg border p-4 gap-6 group';\n\n return (\n <div\n role=\"alert\"\n aria-live=\"assertive\"\n aria-atomic=\"true\"\n className={cn(\n baseClasses,\n positionClasses[position],\n variantClasses,\n className\n )}\n {...props}\n >\n <div className=\"flex flex-row items-start gap-3\">\n <span className=\"mt-1\" data-testid={`toast-icon-${action}`}>\n <IconAction />\n </span>\n <div className=\"flex flex-col items-start justify-start\">\n <p className=\"font-semibold text-md\">{title}</p>\n {description && (\n <p className=\"text-md text-text-900\">{description}</p>\n )}\n </div>\n </div>\n <button\n onClick={onClose}\n aria-label=\"Dismiss notification\"\n className=\"text-background-500 cursor-pointer opacity-0 group-hover:opacity-100 transition-opacity\"\n >\n <X />\n </button>\n </div>\n );\n};\n\nexport default Toast;\n","import { clsx, type ClassValue } from 'clsx';\nimport { twMerge } from 'tailwind-merge';\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,4BAAoD;;;ACDpD,kBAAsC;AACtC,4BAAwB;AAEjB,SAAS,MAAM,QAAsB;AAC1C,aAAO,mCAAQ,kBAAK,MAAM,CAAC;AAC7B;;;ADwFU;AAtFV,IAAM,yBAAyB;AAAA,EAC7B,OAAO;AAAA,IACL,SACE;AAAA,IACF,SACE;AAAA,IACF,MAAM;AAAA,EACR;AAAA,EACA,UAAU;AAAA,IACR,SACE;AAAA,IACF,SACE;AAAA,IACF,MAAM;AAAA,EACR;AACF;AAsBA,IAAM,UAAU;AAAA,EACd,SAAS;AAAA,EACT,MAAM;AAAA,EACN,SAAS;AACX;AAEA,IAAM,QAAQ,CAAC;AAAA,EACb,UAAU;AAAA,EACV,SAAS;AAAA,EACT,YAAY;AAAA,EACZ;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX,GAAG;AACL,MAAkB;AAEhB,QAAM,iBAAiB,uBAAuB,OAAO,EAAE,MAAM;AAE7D,QAAM,kBAAiD;AAAA,IACrD,YAAY;AAAA,IACZ,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,IACf,iBAAiB;AAAA,IACjB,gBAAgB;AAAA,IAChB,SAAS;AAAA,EACX;AAEA,QAAM,aAAa,QAAQ,MAAM,KAAK,QAAQ,SAAS;AAEvD,QAAM,cACJ;AAEF,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,aAAU;AAAA,MACV,eAAY;AAAA,MACZ,WAAW;AAAA,QACT;AAAA,QACA,gBAAgB,QAAQ;AAAA,QACxB;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEJ;AAAA,qDAAC,SAAI,WAAU,mCACb;AAAA,sDAAC,UAAK,WAAU,QAAO,eAAa,cAAc,MAAM,IACtD,sDAAC,cAAW,GACd;AAAA,UACA,6CAAC,SAAI,WAAU,2CACb;AAAA,wDAAC,OAAE,WAAU,yBAAyB,iBAAM;AAAA,YAC3C,eACC,4CAAC,OAAE,WAAU,yBAAyB,uBAAY;AAAA,aAEtD;AAAA,WACF;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,SAAS;AAAA,YACT,cAAW;AAAA,YACX,WAAU;AAAA,YAEV,sDAAC,2BAAE;AAAA;AAAA,QACL;AAAA;AAAA;AAAA,EACF;AAEJ;AAEA,IAAO,gBAAQ;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/Toast/Toast.tsx","../../src/utils/utils.ts"],"sourcesContent":["import { HTMLAttributes } from 'react';\nimport { CheckCircle, WarningCircle, Info, X } from 'phosphor-react';\nimport { cn } from '../../utils/utils';\n\n/**\n * Lookup table for variant and action class combinations\n */\nconst VARIANT_ACTION_CLASSES = {\n solid: {\n warning:\n 'bg-warning text-warning-600 border-none focus-visible:outline-none',\n success:\n 'bg-success text-success-800 border-none focus-visible:outline-none',\n info: 'bg-info text-info-600 border-none focus-visible:outline-none',\n },\n outlined: {\n warning:\n 'bg-warning text-warning-600 border border-warning-300 focus-visible:outline-none',\n success:\n 'bg-success text-success-800 border border-success-200 focus-visible:outline-none',\n info: 'bg-info text-info-600 border border-info-600 focus-visible:outline-none',\n },\n} as const;\n\ntype ToastPosition =\n | 'top-left'\n | 'top-center'\n | 'top-right'\n | 'bottom-left'\n | 'bottom-center'\n | 'bottom-right'\n | 'default';\n\ntype ToastProps = {\n title: string;\n description?: string;\n onClose: () => void;\n /** Visual variant of the badge */\n variant?: 'solid' | 'outlined';\n /** Action type of the badge */\n action?: 'warning' | 'success' | 'info';\n position?: ToastPosition;\n} & HTMLAttributes<HTMLDivElement>;\n\nconst iconMap = {\n success: CheckCircle,\n info: Info,\n warning: WarningCircle,\n};\n\nconst Toast = ({\n variant = 'outlined',\n action = 'success',\n className = '',\n onClose,\n title,\n description,\n position = 'default',\n ...props\n}: ToastProps) => {\n // Get classes from lookup tables\n const variantClasses = VARIANT_ACTION_CLASSES[variant][action];\n\n const positionClasses: Record<ToastPosition, string> = {\n 'top-left': 'fixed top-4 left-4',\n 'top-center': 'fixed top-4 left-1/2 transform -translate-x-1/2',\n 'top-right': 'fixed top-4 right-4',\n 'bottom-left': 'fixed bottom-4 left-4',\n 'bottom-center': 'fixed bottom-4 left-1/2 transform -translate-x-1/2',\n 'bottom-right': 'fixed bottom-4 right-4',\n default: '',\n };\n\n const IconAction = iconMap[action] || iconMap['success'];\n\n const baseClasses =\n 'max-w-[390px] w-full flex flex-row items-start justify-between shadow-lg rounded-lg border p-4 gap-6 group';\n\n return (\n <div\n role=\"alert\"\n aria-live=\"assertive\"\n aria-atomic=\"true\"\n className={cn(\n baseClasses,\n positionClasses[position],\n variantClasses,\n className\n )}\n {...props}\n >\n <div className=\"flex flex-row items-start gap-3\">\n <span className=\"mt-1\" data-testid={`toast-icon-${action}`}>\n <IconAction />\n </span>\n <div className=\"flex flex-col items-start justify-start\">\n <p className=\"font-semibold text-md\">{title}</p>\n {description && (\n <p className=\"text-md text-text-900\">{description}</p>\n )}\n </div>\n </div>\n <button\n onClick={onClose}\n aria-label=\"Dismiss notification\"\n className=\"text-background-500 cursor-pointer opacity-0 group-hover:opacity-100 transition-opacity\"\n >\n <X />\n </button>\n </div>\n );\n};\n\nexport default Toast;\n","import { clsx, type ClassValue } from 'clsx';\nimport { twMerge } from 'tailwind-merge';\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n"],"mappings":";AACA,SAAS,aAAa,eAAe,MAAM,SAAS;;;ACDpD,SAAS,YAA6B;AACtC,SAAS,eAAe;AAEjB,SAAS,MAAM,QAAsB;AAC1C,SAAO,QAAQ,KAAK,MAAM,CAAC;AAC7B;;;ADwFU,cAEF,YAFE;AAtFV,IAAM,yBAAyB;AAAA,EAC7B,OAAO;AAAA,IACL,SACE;AAAA,IACF,SACE;AAAA,IACF,MAAM;AAAA,EACR;AAAA,EACA,UAAU;AAAA,IACR,SACE;AAAA,IACF,SACE;AAAA,IACF,MAAM;AAAA,EACR;AACF;AAsBA,IAAM,UAAU;AAAA,EACd,SAAS;AAAA,EACT,MAAM;AAAA,EACN,SAAS;AACX;AAEA,IAAM,QAAQ,CAAC;AAAA,EACb,UAAU;AAAA,EACV,SAAS;AAAA,EACT,YAAY;AAAA,EACZ;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX,GAAG;AACL,MAAkB;AAEhB,QAAM,iBAAiB,uBAAuB,OAAO,EAAE,MAAM;AAE7D,QAAM,kBAAiD;AAAA,IACrD,YAAY;AAAA,IACZ,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,IACf,iBAAiB;AAAA,IACjB,gBAAgB;AAAA,IAChB,SAAS;AAAA,EACX;AAEA,QAAM,aAAa,QAAQ,MAAM,KAAK,QAAQ,SAAS;AAEvD,QAAM,cACJ;AAEF,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,aAAU;AAAA,MACV,eAAY;AAAA,MACZ,WAAW;AAAA,QACT;AAAA,QACA,gBAAgB,QAAQ;AAAA,QACxB;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEJ;AAAA,6BAAC,SAAI,WAAU,mCACb;AAAA,8BAAC,UAAK,WAAU,QAAO,eAAa,cAAc,MAAM,IACtD,8BAAC,cAAW,GACd;AAAA,UACA,qBAAC,SAAI,WAAU,2CACb;AAAA,gCAAC,OAAE,WAAU,yBAAyB,iBAAM;AAAA,YAC3C,eACC,oBAAC,OAAE,WAAU,yBAAyB,uBAAY;AAAA,aAEtD;AAAA,WACF;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,SAAS;AAAA,YACT,cAAW;AAAA,YACX,WAAU;AAAA,YAEV,8BAAC,KAAE;AAAA;AAAA,QACL;AAAA;AAAA;AAAA,EACF;AAEJ;AAEA,IAAO,gBAAQ;","names":[]}