@eggspot/ui 0.0.0 → 0.0.3

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 (401) hide show
  1. package/dist/components/Badge.d.ts +15 -0
  2. package/dist/components/Badge.d.ts.map +1 -0
  3. package/dist/components/Badge.js +29 -0
  4. package/dist/components/Badge.js.map +1 -0
  5. package/dist/components/Breadcrumb.d.ts +12 -0
  6. package/dist/components/Breadcrumb.d.ts.map +1 -0
  7. package/dist/components/Breadcrumb.js +28 -0
  8. package/dist/components/Breadcrumb.js.map +1 -0
  9. package/dist/components/Button.d.ts +53 -0
  10. package/dist/components/Button.d.ts.map +1 -0
  11. package/dist/components/Button.js +81 -0
  12. package/dist/components/Button.js.map +1 -0
  13. package/dist/components/Button.machine.d.ts +9 -0
  14. package/dist/components/Button.machine.d.ts.map +1 -0
  15. package/dist/components/Button.machine.js +50 -0
  16. package/dist/components/Button.machine.js.map +1 -0
  17. package/dist/components/Button.variants.d.ts +10 -0
  18. package/dist/components/Button.variants.d.ts.map +1 -0
  19. package/dist/components/Button.variants.js +214 -0
  20. package/dist/components/Button.variants.js.map +1 -0
  21. package/dist/components/ButtonGroup.d.ts +9 -0
  22. package/dist/components/ButtonGroup.d.ts.map +1 -0
  23. package/dist/components/ButtonGroup.js +23 -0
  24. package/dist/components/ButtonGroup.js.map +1 -0
  25. package/dist/components/Calendar.d.ts +24 -0
  26. package/dist/components/Calendar.d.ts.map +1 -0
  27. package/dist/components/Calendar.js +64 -0
  28. package/dist/components/Calendar.js.map +1 -0
  29. package/dist/components/Calendar.utils.d.ts +6 -0
  30. package/dist/components/Calendar.utils.d.ts.map +1 -0
  31. package/dist/components/Calendar.utils.js +17 -0
  32. package/dist/components/Calendar.utils.js.map +1 -0
  33. package/dist/components/Card.d.ts +8 -0
  34. package/dist/components/Card.d.ts.map +1 -0
  35. package/dist/components/Card.js +19 -0
  36. package/dist/components/Card.js.map +1 -0
  37. package/dist/components/Checkbox.d.ts +36 -0
  38. package/dist/components/Checkbox.d.ts.map +1 -0
  39. package/dist/components/Checkbox.js +55 -0
  40. package/dist/components/Checkbox.js.map +1 -0
  41. package/dist/components/Collapsible.d.ts +20 -0
  42. package/dist/components/Collapsible.d.ts.map +1 -0
  43. package/dist/components/Collapsible.js +15 -0
  44. package/dist/components/Collapsible.js.map +1 -0
  45. package/dist/components/ConfirmDialog.d.ts +35 -0
  46. package/dist/components/ConfirmDialog.d.ts.map +1 -0
  47. package/dist/components/ConfirmDialog.js +81 -0
  48. package/dist/components/ConfirmDialog.js.map +1 -0
  49. package/dist/components/CopyButton.d.ts +67 -0
  50. package/dist/components/CopyButton.d.ts.map +1 -0
  51. package/dist/components/CopyButton.js +51 -0
  52. package/dist/components/CopyButton.js.map +1 -0
  53. package/dist/components/DashboardLayout/DashboardLayout.d.ts +3 -0
  54. package/dist/components/DashboardLayout/DashboardLayout.d.ts.map +1 -0
  55. package/dist/components/DashboardLayout/DashboardLayout.js +38 -0
  56. package/dist/components/DashboardLayout/DashboardLayout.js.map +1 -0
  57. package/dist/components/DashboardLayout/DashboardLayoutContent.d.ts +9 -0
  58. package/dist/components/DashboardLayout/DashboardLayoutContent.d.ts.map +1 -0
  59. package/dist/components/DashboardLayout/DashboardLayoutContent.js +10 -0
  60. package/dist/components/DashboardLayout/DashboardLayoutContent.js.map +1 -0
  61. package/dist/components/DashboardLayout/index.d.ts +4 -0
  62. package/dist/components/DashboardLayout/index.d.ts.map +1 -0
  63. package/dist/components/DashboardLayout/index.js +3 -0
  64. package/dist/components/DashboardLayout/index.js.map +1 -0
  65. package/dist/components/DashboardLayout/types.d.ts +37 -0
  66. package/dist/components/DashboardLayout/types.d.ts.map +1 -0
  67. package/dist/components/DashboardLayout/types.js +2 -0
  68. package/dist/components/DashboardLayout/types.js.map +1 -0
  69. package/dist/components/DataTable/DataTable.d.ts +9 -0
  70. package/dist/components/DataTable/DataTable.d.ts.map +1 -0
  71. package/dist/components/DataTable/DataTable.js +271 -0
  72. package/dist/components/DataTable/DataTable.js.map +1 -0
  73. package/dist/components/DataTable/DataTableColumnHeader.d.ts +11 -0
  74. package/dist/components/DataTable/DataTableColumnHeader.d.ts.map +1 -0
  75. package/dist/components/DataTable/DataTableColumnHeader.js +26 -0
  76. package/dist/components/DataTable/DataTableColumnHeader.js.map +1 -0
  77. package/dist/components/DataTable/DataTableDisplaySettings.d.ts +8 -0
  78. package/dist/components/DataTable/DataTableDisplaySettings.d.ts.map +1 -0
  79. package/dist/components/DataTable/DataTableDisplaySettings.js +88 -0
  80. package/dist/components/DataTable/DataTableDisplaySettings.js.map +1 -0
  81. package/dist/components/DataTable/DataTableFloatingBar.d.ts +8 -0
  82. package/dist/components/DataTable/DataTableFloatingBar.d.ts.map +1 -0
  83. package/dist/components/DataTable/DataTableFloatingBar.js +11 -0
  84. package/dist/components/DataTable/DataTableFloatingBar.js.map +1 -0
  85. package/dist/components/DataTable/DataTablePagination.d.ts +11 -0
  86. package/dist/components/DataTable/DataTablePagination.d.ts.map +1 -0
  87. package/dist/components/DataTable/DataTablePagination.js +68 -0
  88. package/dist/components/DataTable/DataTablePagination.js.map +1 -0
  89. package/dist/components/DataTable/DataTableStates.d.ts +13 -0
  90. package/dist/components/DataTable/DataTableStates.d.ts.map +1 -0
  91. package/dist/components/DataTable/DataTableStates.js +17 -0
  92. package/dist/components/DataTable/DataTableStates.js.map +1 -0
  93. package/dist/components/DataTable/DataTableToolbarContainer.d.ts +7 -0
  94. package/dist/components/DataTable/DataTableToolbarContainer.d.ts.map +1 -0
  95. package/dist/components/DataTable/DataTableToolbarContainer.js +7 -0
  96. package/dist/components/DataTable/DataTableToolbarContainer.js.map +1 -0
  97. package/dist/components/DataTable/hooks/use-data-table-settings.d.ts +19 -0
  98. package/dist/components/DataTable/hooks/use-data-table-settings.d.ts.map +1 -0
  99. package/dist/components/DataTable/hooks/use-data-table-settings.js +70 -0
  100. package/dist/components/DataTable/hooks/use-data-table-settings.js.map +1 -0
  101. package/dist/components/DataTable/index.d.ts +4 -0
  102. package/dist/components/DataTable/index.d.ts.map +1 -0
  103. package/dist/components/DataTable/index.js +3 -0
  104. package/dist/components/DataTable/index.js.map +1 -0
  105. package/dist/components/DataTable/types/data-table.d.ts +76 -0
  106. package/dist/components/DataTable/types/data-table.d.ts.map +1 -0
  107. package/dist/components/DataTable/types/data-table.js +2 -0
  108. package/dist/components/DataTable/types/data-table.js.map +1 -0
  109. package/dist/components/DatePicker.d.ts +19 -0
  110. package/dist/components/DatePicker.d.ts.map +1 -0
  111. package/dist/components/DatePicker.js +49 -0
  112. package/dist/components/DatePicker.js.map +1 -0
  113. package/dist/components/DatePicker.utils.d.ts +3 -0
  114. package/dist/components/DatePicker.utils.d.ts.map +1 -0
  115. package/dist/components/DatePicker.utils.js +23 -0
  116. package/dist/components/DatePicker.utils.js.map +1 -0
  117. package/dist/components/Datefield.d.ts +25 -0
  118. package/dist/components/Datefield.d.ts.map +1 -0
  119. package/dist/components/Datefield.js +29 -0
  120. package/dist/components/Datefield.js.map +1 -0
  121. package/dist/components/Datefield.utils.d.ts +3 -0
  122. package/dist/components/Datefield.utils.d.ts.map +1 -0
  123. package/dist/components/Datefield.utils.js +11 -0
  124. package/dist/components/Datefield.utils.js.map +1 -0
  125. package/dist/components/Dialog.d.ts +21 -0
  126. package/dist/components/Dialog.d.ts.map +1 -0
  127. package/dist/components/Dialog.js +23 -0
  128. package/dist/components/Dialog.js.map +1 -0
  129. package/dist/components/Field.d.ts +10 -0
  130. package/dist/components/Field.d.ts.map +1 -0
  131. package/dist/components/Field.js +32 -0
  132. package/dist/components/Field.js.map +1 -0
  133. package/dist/components/Filter/Filter.d.ts +4 -0
  134. package/dist/components/Filter/Filter.d.ts.map +1 -0
  135. package/dist/components/Filter/Filter.js +8 -0
  136. package/dist/components/Filter/Filter.js.map +1 -0
  137. package/dist/components/Filter/Filter.store.d.ts +13 -0
  138. package/dist/components/Filter/Filter.store.d.ts.map +1 -0
  139. package/dist/components/Filter/Filter.store.js +61 -0
  140. package/dist/components/Filter/Filter.store.js.map +1 -0
  141. package/dist/components/Filter/Filter.types.d.ts +66 -0
  142. package/dist/components/Filter/Filter.types.d.ts.map +1 -0
  143. package/dist/components/Filter/Filter.types.js +15 -0
  144. package/dist/components/Filter/Filter.types.js.map +1 -0
  145. package/dist/components/Filter/FilterBar.d.ts +7 -0
  146. package/dist/components/Filter/FilterBar.d.ts.map +1 -0
  147. package/dist/components/Filter/FilterBar.js +28 -0
  148. package/dist/components/Filter/FilterBar.js.map +1 -0
  149. package/dist/components/Filter/FilterBuilder.d.ts +3 -0
  150. package/dist/components/Filter/FilterBuilder.d.ts.map +1 -0
  151. package/dist/components/Filter/FilterBuilder.js +47 -0
  152. package/dist/components/Filter/FilterBuilder.js.map +1 -0
  153. package/dist/components/Filter/FilterField/DateModeRowValue.d.ts +5 -0
  154. package/dist/components/Filter/FilterField/DateModeRowValue.d.ts.map +1 -0
  155. package/dist/components/Filter/FilterField/DateModeRowValue.js +150 -0
  156. package/dist/components/Filter/FilterField/DateModeRowValue.js.map +1 -0
  157. package/dist/components/Filter/FilterField/FilterAsyncSelect.d.ts +13 -0
  158. package/dist/components/Filter/FilterField/FilterAsyncSelect.d.ts.map +1 -0
  159. package/dist/components/Filter/FilterField/FilterAsyncSelect.js +62 -0
  160. package/dist/components/Filter/FilterField/FilterAsyncSelect.js.map +1 -0
  161. package/dist/components/Filter/FilterField/FilterDateMode.d.ts +2 -0
  162. package/dist/components/Filter/FilterField/FilterDateMode.d.ts.map +1 -0
  163. package/dist/components/Filter/FilterField/FilterDateMode.js +167 -0
  164. package/dist/components/Filter/FilterField/FilterDateMode.js.map +1 -0
  165. package/dist/components/Filter/FilterField/FilterDateRange.d.ts +7 -0
  166. package/dist/components/Filter/FilterField/FilterDateRange.d.ts.map +1 -0
  167. package/dist/components/Filter/FilterField/FilterDateRange.js +60 -0
  168. package/dist/components/Filter/FilterField/FilterDateRange.js.map +1 -0
  169. package/dist/components/Filter/FilterField/FilterSelect.d.ts +12 -0
  170. package/dist/components/Filter/FilterField/FilterSelect.d.ts.map +1 -0
  171. package/dist/components/Filter/FilterField/FilterSelect.js +72 -0
  172. package/dist/components/Filter/FilterField/FilterSelect.js.map +1 -0
  173. package/dist/components/Filter/FilterField/FilterSingleDate.d.ts +8 -0
  174. package/dist/components/Filter/FilterField/FilterSingleDate.d.ts.map +1 -0
  175. package/dist/components/Filter/FilterField/FilterSingleDate.js +102 -0
  176. package/dist/components/Filter/FilterField/FilterSingleDate.js.map +1 -0
  177. package/dist/components/Filter/FilterField/OptionItem.d.ts +10 -0
  178. package/dist/components/Filter/FilterField/OptionItem.d.ts.map +1 -0
  179. package/dist/components/Filter/FilterField/OptionItem.js +20 -0
  180. package/dist/components/Filter/FilterField/OptionItem.js.map +1 -0
  181. package/dist/components/Filter/FilterField/index.d.ts +7 -0
  182. package/dist/components/Filter/FilterField/index.d.ts.map +1 -0
  183. package/dist/components/Filter/FilterField/index.js +7 -0
  184. package/dist/components/Filter/FilterField/index.js.map +1 -0
  185. package/dist/components/Filter/FilterRow.d.ts +7 -0
  186. package/dist/components/Filter/FilterRow.d.ts.map +1 -0
  187. package/dist/components/Filter/FilterRow.js +152 -0
  188. package/dist/components/Filter/FilterRow.js.map +1 -0
  189. package/dist/components/Filter/index.d.ts +7 -0
  190. package/dist/components/Filter/index.d.ts.map +1 -0
  191. package/dist/components/Filter/index.js +6 -0
  192. package/dist/components/Filter/index.js.map +1 -0
  193. package/dist/components/Form.d.ts +32 -0
  194. package/dist/components/Form.d.ts.map +1 -0
  195. package/dist/components/Form.js +82 -0
  196. package/dist/components/Form.js.map +1 -0
  197. package/dist/components/Heading.d.ts +10 -0
  198. package/dist/components/Heading.d.ts.map +1 -0
  199. package/dist/components/Heading.js +27 -0
  200. package/dist/components/Heading.js.map +1 -0
  201. package/dist/components/Input.d.ts +43 -0
  202. package/dist/components/Input.d.ts.map +1 -0
  203. package/dist/components/Input.js +58 -0
  204. package/dist/components/Input.js.map +1 -0
  205. package/dist/components/InputOTP.d.ts +12 -0
  206. package/dist/components/InputOTP.d.ts.map +1 -0
  207. package/dist/components/InputOTP.js +24 -0
  208. package/dist/components/InputOTP.js.map +1 -0
  209. package/dist/components/Label.d.ts +9 -0
  210. package/dist/components/Label.d.ts.map +1 -0
  211. package/dist/components/Label.js +19 -0
  212. package/dist/components/Label.js.map +1 -0
  213. package/dist/components/Layout.d.ts +47 -0
  214. package/dist/components/Layout.d.ts.map +1 -0
  215. package/dist/components/Layout.js +78 -0
  216. package/dist/components/Layout.js.map +1 -0
  217. package/dist/components/ListBox.d.ts +8 -0
  218. package/dist/components/ListBox.d.ts.map +1 -0
  219. package/dist/components/ListBox.js +28 -0
  220. package/dist/components/ListBox.js.map +1 -0
  221. package/dist/components/Menu.d.ts +19 -0
  222. package/dist/components/Menu.d.ts.map +1 -0
  223. package/dist/components/Menu.js +29 -0
  224. package/dist/components/Menu.js.map +1 -0
  225. package/dist/components/NativeSelect.d.ts +10 -0
  226. package/dist/components/NativeSelect.d.ts.map +1 -0
  227. package/dist/components/NativeSelect.js +36 -0
  228. package/dist/components/NativeSelect.js.map +1 -0
  229. package/dist/components/NumberInput.d.ts +12 -0
  230. package/dist/components/NumberInput.d.ts.map +1 -0
  231. package/dist/components/NumberInput.js +25 -0
  232. package/dist/components/NumberInput.js.map +1 -0
  233. package/dist/components/Popover.d.ts +9 -0
  234. package/dist/components/Popover.d.ts.map +1 -0
  235. package/dist/components/Popover.js +17 -0
  236. package/dist/components/Popover.js.map +1 -0
  237. package/dist/components/Provider.d.ts +10 -0
  238. package/dist/components/Provider.d.ts.map +1 -0
  239. package/dist/components/Provider.js +11 -0
  240. package/dist/components/Provider.js.map +1 -0
  241. package/dist/components/RadioGroup.d.ts +37 -0
  242. package/dist/components/RadioGroup.d.ts.map +1 -0
  243. package/dist/components/RadioGroup.js +61 -0
  244. package/dist/components/RadioGroup.js.map +1 -0
  245. package/dist/components/Resizable.d.ts +25 -0
  246. package/dist/components/Resizable.d.ts.map +1 -0
  247. package/dist/components/Resizable.js +19 -0
  248. package/dist/components/Resizable.js.map +1 -0
  249. package/dist/components/ScrollArea.d.ts +6 -0
  250. package/dist/components/ScrollArea.d.ts.map +1 -0
  251. package/dist/components/ScrollArea.js +14 -0
  252. package/dist/components/ScrollArea.js.map +1 -0
  253. package/dist/components/Select.d.ts +88 -0
  254. package/dist/components/Select.d.ts.map +1 -0
  255. package/dist/components/Select.js +174 -0
  256. package/dist/components/Select.js.map +1 -0
  257. package/dist/components/Select.utils.d.ts +13 -0
  258. package/dist/components/Select.utils.d.ts.map +1 -0
  259. package/dist/components/Select.utils.js +41 -0
  260. package/dist/components/Select.utils.js.map +1 -0
  261. package/dist/components/Separator.d.ts +4 -0
  262. package/dist/components/Separator.d.ts.map +1 -0
  263. package/dist/components/Separator.js +7 -0
  264. package/dist/components/Separator.js.map +1 -0
  265. package/dist/components/Sheet.d.ts +19 -0
  266. package/dist/components/Sheet.d.ts.map +1 -0
  267. package/dist/components/Sheet.js +24 -0
  268. package/dist/components/Sheet.js.map +1 -0
  269. package/dist/components/Sidebar/LinkItem.d.ts +34 -0
  270. package/dist/components/Sidebar/LinkItem.d.ts.map +1 -0
  271. package/dist/components/Sidebar/LinkItem.js +19 -0
  272. package/dist/components/Sidebar/LinkItem.js.map +1 -0
  273. package/dist/components/Sidebar/PageTree.d.ts +46 -0
  274. package/dist/components/Sidebar/PageTree.d.ts.map +1 -0
  275. package/dist/components/Sidebar/PageTree.js +46 -0
  276. package/dist/components/Sidebar/PageTree.js.map +1 -0
  277. package/dist/components/Sidebar/Sidebar.d.ts +94 -0
  278. package/dist/components/Sidebar/Sidebar.d.ts.map +1 -0
  279. package/dist/components/Sidebar/Sidebar.js +328 -0
  280. package/dist/components/Sidebar/Sidebar.js.map +1 -0
  281. package/dist/components/Sidebar/SidebarNavTree.d.ts +26 -0
  282. package/dist/components/Sidebar/SidebarNavTree.d.ts.map +1 -0
  283. package/dist/components/Sidebar/SidebarNavTree.js +32 -0
  284. package/dist/components/Sidebar/SidebarNavTree.js.map +1 -0
  285. package/dist/components/Sidebar/Tabs.d.ts +27 -0
  286. package/dist/components/Sidebar/Tabs.d.ts.map +1 -0
  287. package/dist/components/Sidebar/Tabs.js +49 -0
  288. package/dist/components/Sidebar/Tabs.js.map +1 -0
  289. package/dist/components/Sidebar/index.d.ts +6 -0
  290. package/dist/components/Sidebar/index.d.ts.map +1 -0
  291. package/dist/components/Sidebar/index.js +22 -0
  292. package/dist/components/Sidebar/index.js.map +1 -0
  293. package/dist/components/Sonner.d.ts +16 -0
  294. package/dist/components/Sonner.d.ts.map +1 -0
  295. package/dist/components/Sonner.js +38 -0
  296. package/dist/components/Sonner.js.map +1 -0
  297. package/dist/components/Spinner.d.ts +3 -0
  298. package/dist/components/Spinner.d.ts.map +1 -0
  299. package/dist/components/Spinner.js +7 -0
  300. package/dist/components/Spinner.js.map +1 -0
  301. package/dist/components/Switch.d.ts +4 -0
  302. package/dist/components/Switch.d.ts.map +1 -0
  303. package/dist/components/Switch.js +19 -0
  304. package/dist/components/Switch.js.map +1 -0
  305. package/dist/components/Text.d.ts +10 -0
  306. package/dist/components/Text.d.ts.map +1 -0
  307. package/dist/components/Text.js +22 -0
  308. package/dist/components/Text.js.map +1 -0
  309. package/dist/components/Tooltip.d.ts +8 -0
  310. package/dist/components/Tooltip.d.ts.map +1 -0
  311. package/dist/components/Tooltip.js +24 -0
  312. package/dist/components/Tooltip.js.map +1 -0
  313. package/dist/components/Virtualizer.d.ts +8 -0
  314. package/dist/components/Virtualizer.d.ts.map +1 -0
  315. package/dist/components/Virtualizer.js +8 -0
  316. package/dist/components/Virtualizer.js.map +1 -0
  317. package/dist/consts/config.d.ts +3 -0
  318. package/dist/consts/config.d.ts.map +1 -0
  319. package/dist/consts/config.js +3 -0
  320. package/dist/consts/config.js.map +1 -0
  321. package/dist/hooks/use-mobile.d.ts +6 -0
  322. package/dist/hooks/use-mobile.d.ts.map +1 -0
  323. package/dist/hooks/use-mobile.js +16 -0
  324. package/dist/hooks/use-mobile.js.map +1 -0
  325. package/dist/lib/utils.d.ts +4 -0
  326. package/dist/lib/utils.d.ts.map +1 -0
  327. package/dist/lib/utils.js +9 -0
  328. package/dist/lib/utils.js.map +1 -0
  329. package/package.json +72 -24
  330. package/eslint.config.js +0 -4
  331. package/src/components/Button.machine.tsx +0 -50
  332. package/src/components/Button.tsx +0 -249
  333. package/src/components/Button.variants.tsx +0 -186
  334. package/src/components/ButtonGroup.tsx +0 -56
  335. package/src/components/Calendar.tsx +0 -275
  336. package/src/components/Calendar.utils.tsx +0 -22
  337. package/src/components/Checkbox.tsx +0 -199
  338. package/src/components/ConfirmDialog.tsx +0 -183
  339. package/src/components/DashboardLayout/DashboardLayout.tsx +0 -348
  340. package/src/components/DashboardLayout/SidebarNav.tsx +0 -509
  341. package/src/components/DashboardLayout/index.ts +0 -33
  342. package/src/components/DataTable/DataTable.tsx +0 -557
  343. package/src/components/DataTable/DataTableColumnHeader.tsx +0 -122
  344. package/src/components/DataTable/DataTableDisplaySettings.tsx +0 -265
  345. package/src/components/DataTable/DataTableFloatingBar.tsx +0 -44
  346. package/src/components/DataTable/DataTablePagination.tsx +0 -168
  347. package/src/components/DataTable/DataTableStates.tsx +0 -69
  348. package/src/components/DataTable/DataTableToolbarContainer.tsx +0 -47
  349. package/src/components/DataTable/hooks/use-data-table-settings.ts +0 -101
  350. package/src/components/DataTable/index.ts +0 -7
  351. package/src/components/DataTable/types/data-table.ts +0 -97
  352. package/src/components/DatePicker.tsx +0 -213
  353. package/src/components/DatePicker.utils.tsx +0 -38
  354. package/src/components/Datefield.tsx +0 -109
  355. package/src/components/Datefield.utils.ts +0 -10
  356. package/src/components/Dialog.tsx +0 -167
  357. package/src/components/Field.tsx +0 -49
  358. package/src/components/Filter/Filter.store.tsx +0 -122
  359. package/src/components/Filter/Filter.tsx +0 -11
  360. package/src/components/Filter/Filter.types.ts +0 -107
  361. package/src/components/Filter/FilterBar.tsx +0 -38
  362. package/src/components/Filter/FilterBuilder.tsx +0 -158
  363. package/src/components/Filter/FilterField/DateModeRowValue.tsx +0 -250
  364. package/src/components/Filter/FilterField/FilterAsyncSelect.tsx +0 -191
  365. package/src/components/Filter/FilterField/FilterDateMode.tsx +0 -241
  366. package/src/components/Filter/FilterField/FilterDateRange.tsx +0 -169
  367. package/src/components/Filter/FilterField/FilterSelect.tsx +0 -208
  368. package/src/components/Filter/FilterField/FilterSingleDate.tsx +0 -277
  369. package/src/components/Filter/FilterField/OptionItem.tsx +0 -112
  370. package/src/components/Filter/FilterField/index.ts +0 -6
  371. package/src/components/Filter/FilterRow.tsx +0 -527
  372. package/src/components/Filter/index.ts +0 -17
  373. package/src/components/Form.tsx +0 -195
  374. package/src/components/Heading.tsx +0 -41
  375. package/src/components/Input.tsx +0 -221
  376. package/src/components/InputOTP.tsx +0 -78
  377. package/src/components/Label.tsx +0 -65
  378. package/src/components/Layout.tsx +0 -129
  379. package/src/components/ListBox.tsx +0 -97
  380. package/src/components/Menu.tsx +0 -152
  381. package/src/components/NativeSelect.tsx +0 -77
  382. package/src/components/NumberInput.tsx +0 -114
  383. package/src/components/Popover.tsx +0 -44
  384. package/src/components/Provider.tsx +0 -22
  385. package/src/components/RadioGroup.tsx +0 -191
  386. package/src/components/Resizable.tsx +0 -71
  387. package/src/components/ScrollArea.tsx +0 -57
  388. package/src/components/Select.tsx +0 -626
  389. package/src/components/Select.utils.tsx +0 -64
  390. package/src/components/Separator.tsx +0 -25
  391. package/src/components/Sheet.tsx +0 -147
  392. package/src/components/Sonner.tsx +0 -96
  393. package/src/components/Spinner.tsx +0 -30
  394. package/src/components/Switch.tsx +0 -51
  395. package/src/components/Text.tsx +0 -35
  396. package/src/components/Tooltip.tsx +0 -58
  397. package/src/consts/config.ts +0 -2
  398. package/src/hooks/.gitkeep +0 -0
  399. package/src/lib/utils.ts +0 -10
  400. package/tsconfig.json +0 -11
  401. package/tsconfig.lint.json +0 -8
@@ -0,0 +1,328 @@
1
+ "use client";
2
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import React, { createContext, useContext, useEffect, useMemo, useRef, useState, } from "react";
4
+ import { Collapsible, CollapsibleContent, CollapsibleTrigger, } from "@eggspot/ui/components/Collapsible";
5
+ import { ScrollArea } from "@eggspot/ui/components/ScrollArea";
6
+ import { cn } from "@eggspot/ui/lib/utils";
7
+ import { ChevronDown, ExternalLink } from "lucide-react";
8
+ import { Link as AriaLink } from "react-aria-components";
9
+ import { Button } from "../Button";
10
+ const SidebarContext = createContext(null);
11
+ const FolderContext = createContext(null);
12
+ export function useSidebar() {
13
+ const ctx = useContext(SidebarContext);
14
+ if (!ctx) {
15
+ throw new Error("useSidebar must be used within a SidebarProvider");
16
+ }
17
+ return ctx;
18
+ }
19
+ export function useFolder() {
20
+ return useContext(FolderContext);
21
+ }
22
+ export function useFolderDepth() {
23
+ return useContext(FolderContext)?.depth ?? 0;
24
+ }
25
+ function useMediaQuery(query) {
26
+ const [matches, setMatches] = useState(false);
27
+ useEffect(() => {
28
+ const mediaQuery = window.matchMedia(query);
29
+ setMatches(mediaQuery.matches);
30
+ const handler = (e) => setMatches(e.matches);
31
+ mediaQuery.addEventListener("change", handler);
32
+ return () => mediaQuery.removeEventListener("change", handler);
33
+ }, [query]);
34
+ return matches;
35
+ }
36
+ function useOnChange(value, callback) {
37
+ const prevRef = useRef(value);
38
+ useEffect(() => {
39
+ if (prevRef.current !== value) {
40
+ callback(value);
41
+ prevRef.current = value;
42
+ }
43
+ }, [value, callback]);
44
+ }
45
+ /**
46
+ * Scroll to the element if `active` is true
47
+ */
48
+ export function useAutoScroll(active, ref) {
49
+ const { mode, desktopBoundaryRef, mobileBoundaryRef } = useSidebar();
50
+ useEffect(() => {
51
+ if (active && ref.current) {
52
+ const boundary = mode === "drawer"
53
+ ? mobileBoundaryRef.current
54
+ : desktopBoundaryRef.current;
55
+ if (boundary) {
56
+ const element = ref.current;
57
+ const elementRect = element.getBoundingClientRect();
58
+ const boundaryRect = boundary.getBoundingClientRect();
59
+ const isAbove = elementRect.top < boundaryRect.top;
60
+ const isBelow = elementRect.bottom > boundaryRect.bottom;
61
+ if (isAbove || isBelow) {
62
+ element.scrollIntoView({
63
+ block: "nearest",
64
+ behavior: "smooth",
65
+ });
66
+ }
67
+ }
68
+ }
69
+ }, [active, mode, ref]);
70
+ }
71
+ export function SidebarProvider({ defaultOpenLevel = 0, prefetch, pathname = "", children, }) {
72
+ const closeOnRedirect = useRef(true);
73
+ const [open, setOpen] = useState(false);
74
+ const [collapsed, setCollapsed] = useState(() => {
75
+ if (typeof window === "undefined")
76
+ return false;
77
+ const stored = localStorage.getItem("sidebar-collapsed");
78
+ return stored ? JSON.parse(stored) : false;
79
+ });
80
+ const mode = useMediaQuery("(max-width: 767px)") ? "drawer" : "full";
81
+ const desktopBoundaryRef = useRef(null);
82
+ const mobileBoundaryRef = useRef(null);
83
+ const setForceHover = (forceHover) => {
84
+ const sidebar = document.querySelector('[data-slot="sidebar"]');
85
+ if (sidebar) {
86
+ setTimeout(() => {
87
+ sidebar.dataset.forceHover = forceHover.toString();
88
+ }, 0);
89
+ }
90
+ };
91
+ // Store the collapsed state in localStorage
92
+ useEffect(() => {
93
+ localStorage.setItem("sidebar-collapsed", JSON.stringify(collapsed));
94
+ }, [collapsed]);
95
+ // Handle keyboard shortcut for collapsing the sidebar
96
+ useEffect(() => {
97
+ const handleKeyDown = (e) => {
98
+ if ((e.metaKey || e.ctrlKey) && e.key === "b") {
99
+ e.preventDefault();
100
+ setCollapsed((prev) => !prev);
101
+ }
102
+ };
103
+ window.addEventListener("keydown", handleKeyDown);
104
+ return () => window.removeEventListener("keydown", handleKeyDown);
105
+ }, []);
106
+ useOnChange(pathname, () => {
107
+ if (closeOnRedirect.current) {
108
+ setOpen(false);
109
+ }
110
+ closeOnRedirect.current = true;
111
+ });
112
+ return (_jsx(SidebarContext.Provider, { value: useMemo(() => ({
113
+ open,
114
+ setOpen,
115
+ collapsed,
116
+ setCollapsed,
117
+ setForceHover,
118
+ closeOnRedirect,
119
+ defaultOpenLevel,
120
+ prefetch,
121
+ mode,
122
+ pathname,
123
+ desktopBoundaryRef,
124
+ mobileBoundaryRef,
125
+ }), [
126
+ open,
127
+ collapsed,
128
+ defaultOpenLevel,
129
+ prefetch,
130
+ mode,
131
+ pathname,
132
+ desktopBoundaryRef,
133
+ mobileBoundaryRef,
134
+ ]), children: children }));
135
+ }
136
+ export function SidebarContent({ children, }) {
137
+ const { collapsed, mode, desktopBoundaryRef } = useSidebar();
138
+ const [hover, setHover] = useState(false);
139
+ const timerRef = useRef(0);
140
+ useOnChange(collapsed, () => {
141
+ if (collapsed)
142
+ setHover(false);
143
+ });
144
+ if (mode !== "full")
145
+ return null;
146
+ function shouldIgnoreHover(e) {
147
+ const element = desktopBoundaryRef.current;
148
+ if (!element)
149
+ return true;
150
+ return (!collapsed ||
151
+ e.pointerType === "touch" ||
152
+ element.getAnimations().length > 0);
153
+ }
154
+ return children({
155
+ ref: desktopBoundaryRef,
156
+ collapsed,
157
+ hovered: hover,
158
+ onPointerEnter(e) {
159
+ if (shouldIgnoreHover(e))
160
+ return;
161
+ window.clearTimeout(timerRef.current);
162
+ setHover(true);
163
+ },
164
+ onPointerLeave(e) {
165
+ if (shouldIgnoreHover(e))
166
+ return;
167
+ window.clearTimeout(timerRef.current);
168
+ timerRef.current = window.setTimeout(() => setHover(false), Math.min(e.clientX, document.body.clientWidth - e.clientX) > 100
169
+ ? 0
170
+ : 500);
171
+ },
172
+ });
173
+ }
174
+ export function SidebarDrawerOverlay(props) {
175
+ const { open, setOpen, mode } = useSidebar();
176
+ const [hidden, setHidden] = useState(!open);
177
+ useEffect(() => {
178
+ if (open) {
179
+ setHidden(false);
180
+ }
181
+ else {
182
+ const timer = window.setTimeout(() => setHidden(true), 220);
183
+ return () => window.clearTimeout(timer);
184
+ }
185
+ }, [open]);
186
+ if (mode !== "drawer")
187
+ return null;
188
+ return (_jsx("div", { "data-state": open ? "open" : "closed", onPointerDown: (e) => {
189
+ setOpen(false);
190
+ }, ...props, className: cn("fixed inset-0 z-40 bg-black/50 backdrop-blur-xs", "transition-opacity duration-200", open ? "opacity-100" : "opacity-0", hidden && "pointer-events-none invisible", props.className) }));
191
+ }
192
+ export function SidebarDrawerContent({ className, children, ...props }) {
193
+ const { open, mode, mobileBoundaryRef } = useSidebar();
194
+ const [hidden, setHidden] = useState(!open);
195
+ useEffect(() => {
196
+ if (open) {
197
+ setHidden(false);
198
+ }
199
+ else {
200
+ // Fallback timeout in case onTransitionEnd doesn't fire
201
+ const timer = window.setTimeout(() => setHidden(true), 220);
202
+ return () => window.clearTimeout(timer);
203
+ }
204
+ }, [open]);
205
+ if (mode !== "drawer")
206
+ return null;
207
+ return (_jsx("aside", { ref: mobileBoundaryRef, "data-state": open ? "open" : "closed", className: cn("bg-gray-2 border-gray-6 fixed inset-y-0 end-0 z-50 flex w-[85%] max-w-[380px] flex-col border-s shadow-lg", "transition-transform duration-200 ease-out", open ? "translate-x-0" : "translate-x-full", hidden && "pointer-events-none invisible", className), onTransitionEnd: (e) => {
208
+ // Avoid handling bubbled transition events from children.
209
+ if (e.currentTarget !== e.target)
210
+ return;
211
+ if (!open)
212
+ setHidden(true);
213
+ }, ...props, children: children }));
214
+ }
215
+ export function SidebarViewport({ className, children }) {
216
+ return (_jsx(ScrollArea, { className: cn("min-h-0 flex-1", className), children: _jsx("div", { className: "space-y-1 overscroll-contain p-4", style: {
217
+ maskImage: "linear-gradient(to bottom, transparent, white 12px, white calc(100% - 12px), transparent)",
218
+ }, children: children }) }));
219
+ }
220
+ export function SidebarSeparator(props) {
221
+ const depth = useFolderDepth();
222
+ return (_jsx("p", { ...props, className: cn("text-gray-12 mt-6 mb-1.5 inline-flex items-center gap-2 px-2 text-sm font-medium empty:mb-0", depth === 0 && "first:mt-0", props.className), children: props.children }));
223
+ }
224
+ export function SidebarItem({ asChild, href = "#", icon, external, active: activeProp, className, children, }) {
225
+ const { prefetch, pathname } = useSidebar();
226
+ const depth = useFolderDepth();
227
+ const isNested = depth > 0;
228
+ const computedActive = pathname === href || (href !== "/" && pathname.startsWith(href + "/"));
229
+ const active = activeProp ?? computedActive;
230
+ const baseClasses = cn("flex w-full items-center gap-2 rounded-md text-sm transition-colors", "focus-visible:ring-accent-9 focus:outline-none focus-visible:ring-2 focus-visible:ring-inset", isNested ? "relative min-h-9 py-2 ps-5 pe-2" : "min-h-9 px-2 py-2", active
231
+ ? [
232
+ "bg-accent-11/10 text-accent-11",
233
+ isNested && [
234
+ "relative",
235
+ "before:absolute before:content-['']",
236
+ "before:left-2.5",
237
+ "before:top-1/2 before:-translate-y-1/2",
238
+ "before:h-4 before:w-px",
239
+ "before:rounded-full",
240
+ "before:bg-accent-11",
241
+ ],
242
+ ]
243
+ : "text-gray-12/70 hover:bg-gray-4/50 hover:text-gray-12", className);
244
+ if (asChild) {
245
+ const child = React.Children.only(children);
246
+ return React.cloneElement(child, {
247
+ className: cn(baseClasses, child.props.className),
248
+ "data-active": active,
249
+ "data-prefetch": prefetch,
250
+ ...(external ? { target: "_blank", rel: "noopener noreferrer" } : null),
251
+ style: { ...(child.props.style ?? {}), textDecoration: "none" },
252
+ children: (_jsxs(_Fragment, { children: [icon && _jsx("span", { className: "shrink-0 [&>svg]:size-4", children: icon }), child.props.children, external && _jsx(ExternalLink, { className: "ms-auto size-3.5 opacity-50" })] })),
253
+ });
254
+ }
255
+ return (_jsxs(AriaLink, { href: href, target: external ? "_blank" : undefined, rel: external ? "noopener noreferrer" : undefined, "data-active": active, "data-prefetch": prefetch, className: baseClasses, children: [icon && _jsx("span", { className: "shrink-0 [&>svg]:size-4", children: icon }), children, external && _jsx(ExternalLink, { className: "ms-auto size-3.5 opacity-50" })] }));
256
+ }
257
+ export function SidebarFolder({ defaultOpen: defaultOpenProp, collapsible = true, active = false, children, className, ...props }) {
258
+ const { defaultOpenLevel } = useSidebar();
259
+ const depth = useFolderDepth() + 1;
260
+ const defaultOpen = collapsible === false ||
261
+ active ||
262
+ (defaultOpenProp ?? defaultOpenLevel >= depth);
263
+ const [open, setOpen] = useState(defaultOpen);
264
+ useOnChange(defaultOpen, (v) => {
265
+ if (v)
266
+ setOpen(v);
267
+ });
268
+ return (_jsx(Collapsible, { open: open, onOpenChange: setOpen, disabled: !collapsible, className: className, ...props, children: _jsx(FolderContext.Provider, { value: useMemo(() => ({ open, setOpen, depth, collapsible }), [collapsible, depth, open]), children: children }) }));
269
+ }
270
+ export function SidebarFolderTrigger({ children, className, ...props }) {
271
+ const folder = useFolder();
272
+ if (!folder)
273
+ return null;
274
+ const { open, collapsible } = folder;
275
+ if (collapsible) {
276
+ return (_jsxs(CollapsibleTrigger, { className: cn("flex min-h-9 w-full items-center gap-2 rounded-md px-2 py-2", "text-gray-11 text-sm transition-colors", "hover:bg-gray-4/50 hover:text-gray-12", "focus-visible:ring-accent-9 focus:outline-none focus-visible:ring-2", className), ...props, children: [children, _jsx(ChevronDown, { "data-icon": true, className: cn("ms-auto size-4 transition-transform", !open && "-rotate-90") })] }));
277
+ }
278
+ return (_jsx("div", { className: cn("text-gray-11 flex min-h-9 w-full items-center gap-2 px-2 py-2 text-sm", className), children: children }));
279
+ }
280
+ export function SidebarFolderLink({ children, href, external, active: activeProp, className, ...props }) {
281
+ const ref = useRef(null);
282
+ const folder = useFolder();
283
+ const { prefetch, pathname } = useSidebar();
284
+ if (!folder)
285
+ return null;
286
+ const { open, setOpen, collapsible } = folder;
287
+ const computedActive = pathname === href || (href !== "/" && pathname.startsWith(href + "/"));
288
+ const active = activeProp ?? computedActive;
289
+ useAutoScroll(active, ref);
290
+ const handleClick = (e) => {
291
+ if (!collapsible)
292
+ return;
293
+ const target = e.target;
294
+ const clickedToggle = target.closest("[data-folder-toggle]");
295
+ if (clickedToggle) {
296
+ e.preventDefault();
297
+ setOpen((v) => !v);
298
+ return;
299
+ }
300
+ setOpen(active ? !open : true);
301
+ };
302
+ return (_jsxs("a", { ref: ref, href: href, target: external ? "_blank" : undefined, rel: external ? "noopener noreferrer" : undefined, "data-active": active, "data-prefetch": prefetch, "aria-current": active ? "page" : undefined, onClick: handleClick, className: cn("flex min-h-9 w-full items-center gap-2 rounded-md px-2 py-2", "text-sm transition-colors", "hover:bg-gray-4/50 hover:text-gray-12", "focus-visible:ring-accent-9 focus:outline-none focus-visible:ring-2", active ? "bg-accent-11/10 text-accent-11" : "text-gray-11", className), ...props, children: [children, collapsible && (_jsx("span", { "data-folder-toggle": true, role: "presentation", className: "ms-auto inline-flex", children: _jsx(ChevronDown, { className: cn("size-4 transition-transform", !open && "-rotate-90") }) }))] }));
303
+ }
304
+ export function SidebarFolderContent({ className, children, ...props }) {
305
+ return (_jsx(CollapsibleContent, { className: cn("relative", "before:bg-gray-6 before:absolute before:inset-y-1 before:left-2.5 before:w-px", className), ...props, children: children }));
306
+ }
307
+ export function SidebarTrigger({ children, className, ...props }) {
308
+ const { setOpen } = useSidebar();
309
+ const { onPress, ...restProps } = props;
310
+ return (_jsx(Button, { mode: "icon", size: "md", intent: "secondary", variant: "ghost", "aria-label": "Open Sidebar", tooltip: "Open Sidebar", className: cn("text-gray-11 hover:text-gray-12", className), onPress: (e) => {
311
+ setOpen((prev) => !prev);
312
+ onPress?.(e);
313
+ }, onClick: () => {
314
+ setOpen((prev) => !prev);
315
+ }, ...restProps, children: children }));
316
+ }
317
+ export function SidebarCollapseTrigger({ className, ...props }) {
318
+ const { collapsed, setCollapsed } = useSidebar();
319
+ const { onPress, ...restProps } = props;
320
+ return (_jsx(Button, { size: "md", mode: "icon", variant: "ghost", intent: "secondary", "data-slot": "collapse-trigger", "aria-label": "Collapse Sidebar", tooltip: collapsed ? "Expand Sidebar" : "Collapse Sidebar", tooltipDelay: 1000, "data-collapsed": collapsed, onPress: (e) => {
321
+ setCollapsed((prev) => !prev);
322
+ onPress?.(e);
323
+ }, onClick: () => {
324
+ console.log("clicked");
325
+ setCollapsed((prev) => !prev);
326
+ }, className: className, ...restProps }));
327
+ }
328
+ //# sourceMappingURL=Sidebar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sidebar.js","sourceRoot":"","sources":["../../../src/components/Sidebar/Sidebar.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { type ReactElement, type ReactNode } from "react";
2
+ export type SidebarNavNode = SidebarNavItem | SidebarNavFolder;
3
+ export type SidebarNavItem = {
4
+ type: "item";
5
+ to: string;
6
+ label: ReactNode;
7
+ icon?: ReactNode;
8
+ exact?: boolean;
9
+ key?: string;
10
+ };
11
+ export type SidebarNavFolder = {
12
+ type: "folder";
13
+ label: ReactNode;
14
+ icon?: ReactNode;
15
+ defaultOpen?: boolean;
16
+ items: SidebarNavNode[];
17
+ key?: string;
18
+ };
19
+ export declare function isActivePath(pathname: string, to: string, exact?: boolean): boolean;
20
+ export declare function SidebarNavTree({ nodes, pathname, renderLink, className, }: {
21
+ nodes: SidebarNavNode[];
22
+ pathname: string;
23
+ renderLink?: (node: SidebarNavItem, active: boolean) => ReactElement<any>;
24
+ className?: string;
25
+ }): import("react/jsx-runtime").JSX.Element;
26
+ //# sourceMappingURL=SidebarNavTree.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SidebarNavTree.d.ts","sourceRoot":"","sources":["../../../src/components/Sidebar/SidebarNavTree.tsx"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,SAAS,EACf,MAAM,OAAO,CAAA;AASd,MAAM,MAAM,cAAc,GAAG,cAAc,GAAG,gBAAgB,CAAA;AAE9D,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,SAAS,CAAA;IAChB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,QAAQ,CAAA;IACd,KAAK,EAAE,SAAS,CAAA;IAChB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,KAAK,EAAE,cAAc,EAAE,CAAA;IACvB,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAA;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,WAGzE;AAOD,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,QAAQ,EACR,UAAU,EACV,SAAS,GACV,EAAE;IACD,KAAK,EAAE,cAAc,EAAE,CAAA;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,KAAK,YAAY,CAAC,GAAG,CAAC,CAAA;IACzE,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,2CAaA"}
@@ -0,0 +1,32 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { cloneElement, isValidElement, } from "react";
4
+ import { SidebarFolder, SidebarFolderContent, SidebarFolderTrigger, SidebarItem, } from "./Sidebar";
5
+ export function isActivePath(pathname, to, exact) {
6
+ if (exact)
7
+ return pathname === to;
8
+ return pathname === to || (to !== "/" && pathname.startsWith(to + "/"));
9
+ }
10
+ function anyActive(node, pathname) {
11
+ if (node.type === "item")
12
+ return isActivePath(pathname, node.to, node.exact);
13
+ return node.items.some((n) => anyActive(n, pathname));
14
+ }
15
+ export function SidebarNavTree({ nodes, pathname, renderLink, className, }) {
16
+ return (_jsx("div", { className: className ?? "space-y-1", children: nodes.map((node, idx) => (_jsx(SidebarNavTreeNode, { node: node, pathname: pathname, renderLink: renderLink }, node.key ?? `${node.type}-${idx}`))) }));
17
+ }
18
+ function SidebarNavTreeNode({ node, pathname, renderLink, }) {
19
+ if (node.type === "item") {
20
+ const active = isActivePath(pathname, node.to, node.exact);
21
+ const linkEl = renderLink ? (renderLink(node, active)) : (_jsx("a", { href: node.to, "aria-current": active ? "page" : undefined, children: node.label }));
22
+ const linkWithA11y = isValidElement(linkEl)
23
+ ? cloneElement(linkEl, {
24
+ "aria-current": active ? "page" : undefined,
25
+ })
26
+ : linkEl;
27
+ return (_jsx(SidebarItem, { asChild: true, icon: node.icon, active: active, children: linkWithA11y }));
28
+ }
29
+ const active = anyActive(node, pathname);
30
+ return (_jsxs(SidebarFolder, { defaultOpen: node.defaultOpen, active: active, children: [_jsxs(SidebarFolderTrigger, { className: "min-h-9 py-2", children: [node.icon, node.label] }), _jsx(SidebarFolderContent, { className: "mt-0.5", children: _jsx("div", { className: "space-y-0.5", children: node.items.map((child, idx) => (_jsx(SidebarNavTreeNode, { node: child, pathname: pathname, renderLink: renderLink }, child.key ?? `${child.type}-${idx}`))) }) })] }));
31
+ }
32
+ //# sourceMappingURL=SidebarNavTree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SidebarNavTree.js","sourceRoot":"","sources":["../../../src/components/Sidebar/SidebarNavTree.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { type ComponentProps, type ReactNode } from "react";
2
+ export interface SidebarTab {
3
+ /**
4
+ * Redirect URL of the folder, usually the index page
5
+ */
6
+ url: string;
7
+ icon?: ReactNode;
8
+ title: ReactNode;
9
+ description?: ReactNode;
10
+ /**
11
+ * Detect from a list of urls
12
+ */
13
+ urls?: Set<string>;
14
+ unlisted?: boolean;
15
+ }
16
+ export interface SidebarTabWithProps extends SidebarTab {
17
+ props?: ComponentProps<"a">;
18
+ }
19
+ export declare function isTabActive(tab: SidebarTab, pathname: string): boolean;
20
+ export interface SidebarTabsDropdownProps {
21
+ options: SidebarTabWithProps[];
22
+ placeholder?: ReactNode;
23
+ pathname?: string;
24
+ className?: string;
25
+ }
26
+ export declare function SidebarTabsDropdown({ options, placeholder, pathname, className, }: SidebarTabsDropdownProps): import("react/jsx-runtime").JSX.Element;
27
+ //# sourceMappingURL=Tabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../src/components/Sidebar/Tabs.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAqB,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAY9E,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,KAAK,EAAE,SAAS,CAAA;IAChB,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB;;OAEG;IACH,IAAI,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,KAAK,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,CAAA;CAC5B;AAiBD,wBAAgB,WAAW,CAAC,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAGtE;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,mBAAmB,EAAE,CAAA;IAC9B,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,wBAAgB,mBAAmB,CAAC,EAClC,OAAO,EACP,WAAW,EACX,QAAa,EACb,SAAS,GACV,EAAE,wBAAwB,2CA2F1B"}
@@ -0,0 +1,49 @@
1
+ "use client";
2
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useMemo, useState } from "react";
4
+ import { Popover, PopoverDialog, PopoverTrigger, } from "@eggspot/ui/components/Popover";
5
+ import { cn } from "@eggspot/ui/lib/utils";
6
+ import { Check, ChevronsUpDown } from "lucide-react";
7
+ import { Button } from "../Button";
8
+ import { useSidebar } from "./Sidebar";
9
+ function normalize(url) {
10
+ return url.replace(/\/$/, "");
11
+ }
12
+ function isActive(url, pathname, nested) {
13
+ const normalizedUrl = normalize(url);
14
+ const normalizedPathname = normalize(pathname);
15
+ if (nested) {
16
+ return normalizedPathname.startsWith(normalizedUrl);
17
+ }
18
+ return normalizedPathname === normalizedUrl;
19
+ }
20
+ export function isTabActive(tab, pathname) {
21
+ if (tab.urls)
22
+ return tab.urls.has(normalize(pathname));
23
+ return isActive(tab.url, pathname, true);
24
+ }
25
+ export function SidebarTabsDropdown({ options, placeholder, pathname = "", className, }) {
26
+ const [open, setOpen] = useState(false);
27
+ const { closeOnRedirect } = useSidebar();
28
+ const selected = useMemo(() => {
29
+ for (let i = options.length - 1; i >= 0; i--) {
30
+ const item = options[i];
31
+ if (item && isTabActive(item, pathname)) {
32
+ return item;
33
+ }
34
+ }
35
+ return undefined;
36
+ }, [options, pathname]);
37
+ const handleClick = () => {
38
+ closeOnRedirect.current = false;
39
+ setOpen(false);
40
+ };
41
+ const selectedItem = selected ? (_jsxs(_Fragment, { children: [_jsx("div", { className: "size-5 shrink-0 empty:hidden [&>svg]:size-full", children: selected.icon }), _jsx("div", { className: "flex-1 text-left", children: _jsx("p", { className: "text-sm font-medium", children: selected.title }) })] })) : (placeholder);
42
+ return (_jsxs(PopoverTrigger, { isOpen: open, onOpenChange: setOpen, children: [_jsx(Button, { mode: "default", size: "md", intent: "secondary", variant: "ghost", "aria-label": "Open Tabs Dropdown", className: className, rightIcon: _jsx(ChevronsUpDown, { className: "text-gray-11 ms-auto size-4 shrink-0" }), children: selectedItem }), _jsx(Popover, { placement: "bottom start", className: "w-[var(--trigger-width)]", children: _jsx(PopoverDialog, { className: "flex flex-col gap-0.5 p-1", children: options.map((item) => {
43
+ const active = selected && item.url === selected.url;
44
+ if (!active && item.unlisted)
45
+ return null;
46
+ return (_jsxs("a", { href: item.url, onClick: handleClick, ...item.props, className: cn("flex items-center gap-2 rounded-md p-2 text-sm transition-colors", "hover:bg-gray-4 hover:text-gray-12", "focus-visible:ring-accent-9 focus:outline-none focus-visible:ring-2", active && "bg-accent-4 text-accent-11", item.props?.className), children: [_jsx("div", { className: "size-5 shrink-0 empty:hidden [&>svg]:size-full", children: item.icon }), _jsxs("div", { className: "flex-1", children: [_jsx("p", { className: "leading-none font-medium", children: item.title }), item.description && (_jsx("p", { className: "text-gray-11 mt-1 text-xs", children: item.description }))] }), _jsx(Check, { className: cn("text-accent-11 ms-auto size-4 shrink-0", !active && "invisible") })] }, item.url));
47
+ }) }) })] }));
48
+ }
49
+ //# sourceMappingURL=Tabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tabs.js","sourceRoot":"","sources":["../../../src/components/Sidebar/Tabs.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAuC,MAAM,OAAO,CAAA;AAC9E,OAAO,EACL,OAAO,EACP,aAAa,EACb,cAAc,GACf,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAA;AAC1C,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAEpD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAqBtC,SAAS,SAAS,CAAC,GAAW;IAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AAC/B,CAAC;AAED,SAAS,QAAQ,CAAC,GAAW,EAAE,QAAgB,EAAE,MAAe;IAC9D,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;IACpC,MAAM,kBAAkB,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAA;IAE9C,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,kBAAkB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;IACrD,CAAC;IAED,OAAO,kBAAkB,KAAK,aAAa,CAAA;AAC7C,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAe,EAAE,QAAgB;IAC3D,IAAI,GAAG,CAAC,IAAI;QAAE,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAA;IACtD,OAAO,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;AAC1C,CAAC;AASD,MAAM,UAAU,mBAAmB,CAAC,EAClC,OAAO,EACP,WAAW,EACX,QAAQ,GAAG,EAAE,EACb,SAAS,GACgB;IACzB,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACvC,MAAM,EAAE,eAAe,EAAE,GAAG,UAAU,EAAE,CAAA;IAExC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;QAC5B,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;YACvB,IAAI,IAAI,IAAI,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;gBACxC,OAAO,IAAI,CAAA;YACb,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAA;IAEvB,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,eAAe,CAAC,OAAO,GAAG,KAAK,CAAA;QAC/B,OAAO,CAAC,KAAK,CAAC,CAAA;IAChB,CAAC,CAAA;IAED,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,CAC9B,8BACE,cAAK,SAAS,EAAC,gDAAgD,YAC5D,QAAQ,CAAC,IAAI,GACV,EACN,cAAK,SAAS,EAAC,kBAAkB,YAC/B,YAAG,SAAS,EAAC,qBAAqB,YAAE,QAAQ,CAAC,KAAK,GAAK,GACnD,IACL,CACJ,CAAC,CAAC,CAAC,CACF,WAAW,CACZ,CAAA;IAED,OAAO,CACL,MAAC,cAAc,IAAC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,aACjD,KAAC,MAAM,IACL,IAAI,EAAC,SAAS,EACd,IAAI,EAAC,IAAI,EACT,MAAM,EAAC,WAAW,EAClB,OAAO,EAAC,OAAO,gBACJ,oBAAoB,EAC/B,SAAS,EAAE,SAAS,EACpB,SAAS,EACP,KAAC,cAAc,IAAC,SAAS,EAAC,sCAAsC,GAAG,YAGpE,YAAY,GACN,EACT,KAAC,OAAO,IAAC,SAAS,EAAC,cAAc,EAAC,SAAS,EAAC,0BAA0B,YACpE,KAAC,aAAa,IAAC,SAAS,EAAC,2BAA2B,YACjD,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;wBACpB,MAAM,MAAM,GAAG,QAAQ,IAAI,IAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAA;wBACpD,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ;4BAAE,OAAO,IAAI,CAAA;wBAEzC,OAAO,CACL,aAEE,IAAI,EAAE,IAAI,CAAC,GAAG,EACd,OAAO,EAAE,WAAW,KAChB,IAAI,CAAC,KAAK,EACd,SAAS,EAAE,EAAE,CACX,kEAAkE,EAClE,oCAAoC,EACpC,qEAAqE,EACrE,MAAM,IAAI,4BAA4B,EACtC,IAAI,CAAC,KAAK,EAAE,SAAS,CACtB,aAED,cAAK,SAAS,EAAC,gDAAgD,YAC5D,IAAI,CAAC,IAAI,GACN,EACN,eAAK,SAAS,EAAC,QAAQ,aACrB,YAAG,SAAS,EAAC,0BAA0B,YAAE,IAAI,CAAC,KAAK,GAAK,EACvD,IAAI,CAAC,WAAW,IAAI,CACnB,YAAG,SAAS,EAAC,2BAA2B,YACrC,IAAI,CAAC,WAAW,GACf,CACL,IACG,EACN,KAAC,KAAK,IACJ,SAAS,EAAE,EAAE,CACX,wCAAwC,EACxC,CAAC,MAAM,IAAI,WAAW,CACvB,GACD,KA5BG,IAAI,CAAC,GAAG,CA6BX,CACL,CAAA;oBACH,CAAC,CAAC,GACY,GACR,IACK,CAClB,CAAA;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ export { SidebarCollapseTrigger, SidebarContent, SidebarDrawerContent, SidebarDrawerOverlay, SidebarFolder, SidebarFolderContent, SidebarFolderLink, SidebarFolderTrigger, SidebarItem, SidebarProvider, SidebarSeparator, SidebarTrigger, SidebarViewport, useAutoScroll, useFolder, useFolderDepth, useSidebar, type SidebarFolderLinkProps, type SidebarFolderProps, type SidebarItemProps, type SidebarProviderProps, type SidebarViewportProps, } from "./Sidebar";
2
+ export { SidebarPageTree, type PageTreeFolder, type PageTreeItem, type PageTreeNode, type PageTreeRoot, type PageTreeSeparator, type SidebarPageTreeComponents, } from "./PageTree";
3
+ export { SidebarLinkItem, type LinkItemType } from "./LinkItem";
4
+ export { isTabActive, SidebarTabsDropdown, type SidebarTab, type SidebarTabsDropdownProps, type SidebarTabWithProps, } from "./Tabs";
5
+ export { isActivePath, SidebarNavTree, type SidebarNavFolder, type SidebarNavItem, type SidebarNavNode, } from "./SidebarNavTree";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Sidebar/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,sBAAsB,EAEtB,cAAc,EACd,oBAAoB,EAEpB,oBAAoB,EACpB,aAAa,EACb,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,WAAW,EAEX,eAAe,EAEf,gBAAgB,EAEhB,cAAc,EACd,eAAe,EACf,aAAa,EACb,SAAS,EACT,cAAc,EAEd,UAAU,EACV,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EAErB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,GAC1B,MAAM,WAAW,CAAA;AAGlB,OAAO,EACL,eAAe,EACf,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,yBAAyB,GAC/B,MAAM,YAAY,CAAA;AAGnB,OAAO,EAAE,eAAe,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAA;AAG/D,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,KAAK,UAAU,EACf,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,GACzB,MAAM,QAAQ,CAAA;AAEf,OAAO,EACL,YAAY,EACZ,cAAc,EACd,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,cAAc,GACpB,MAAM,kBAAkB,CAAA"}
@@ -0,0 +1,22 @@
1
+ // Core sidebar components
2
+ export { SidebarCollapseTrigger,
3
+ // Content components
4
+ SidebarContent, SidebarDrawerContent,
5
+ // Drawer (mobile)
6
+ SidebarDrawerOverlay, SidebarFolder, SidebarFolderContent, SidebarFolderLink, SidebarFolderTrigger, SidebarItem,
7
+ // Provider
8
+ SidebarProvider,
9
+ // Navigation components
10
+ SidebarSeparator,
11
+ // Triggers
12
+ SidebarTrigger, SidebarViewport, useAutoScroll, useFolder, useFolderDepth,
13
+ // Hooks
14
+ useSidebar, } from "./Sidebar";
15
+ // Page tree renderer
16
+ export { SidebarPageTree, } from "./PageTree";
17
+ // Link item renderer
18
+ export { SidebarLinkItem } from "./LinkItem";
19
+ // Tabs dropdown
20
+ export { isTabActive, SidebarTabsDropdown, } from "./Tabs";
21
+ export { isActivePath, SidebarNavTree, } from "./SidebarNavTree";
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Sidebar/index.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,OAAO,EACL,sBAAsB;AACtB,qBAAqB;AACrB,cAAc,EACd,oBAAoB;AACpB,kBAAkB;AAClB,oBAAoB,EACpB,aAAa,EACb,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,WAAW;AACX,WAAW;AACX,eAAe;AACf,wBAAwB;AACxB,gBAAgB;AAChB,WAAW;AACX,cAAc,EACd,eAAe,EACf,aAAa,EACb,SAAS,EACT,cAAc;AACd,QAAQ;AACR,UAAU,GAOX,MAAM,WAAW,CAAA;AAElB,qBAAqB;AACrB,OAAO,EACL,eAAe,GAOhB,MAAM,YAAY,CAAA;AAEnB,qBAAqB;AACrB,OAAO,EAAE,eAAe,EAAqB,MAAM,YAAY,CAAA;AAE/D,gBAAgB;AAChB,OAAO,EACL,WAAW,EACX,mBAAmB,GAIpB,MAAM,QAAQ,CAAA;AAEf,OAAO,EACL,YAAY,EACZ,cAAc,GAIf,MAAM,kBAAkB,CAAA"}
@@ -0,0 +1,16 @@
1
+ import { Toaster, ToastT } from "sonner";
2
+ interface ToastProps {
3
+ id: string | number;
4
+ title: string;
5
+ description?: React.ReactNode;
6
+ variant?: "success" | "error" | "info" | "warning" | "neutral";
7
+ }
8
+ declare const toast: {
9
+ success: (props: Omit<ToastProps, "id" | "variant">, options?: Pick<ToastT, "position" | "duration">) => string | number;
10
+ error: (props: Omit<ToastProps, "id" | "variant">, options?: Pick<ToastT, "position" | "duration">) => string | number;
11
+ info: (props: Omit<ToastProps, "id" | "variant">, options?: Pick<ToastT, "position" | "duration">) => string | number;
12
+ warning: (props: Omit<ToastProps, "id" | "variant">, options?: Pick<ToastT, "position" | "duration">) => string | number;
13
+ neutral: (props: Omit<ToastProps, "id" | "variant">, options?: Pick<ToastT, "position" | "duration">) => string | number;
14
+ };
15
+ export { toast, Toaster };
16
+ //# sourceMappingURL=Sonner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sonner.d.ts","sourceRoot":"","sources":["../../src/components/Sonner.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAwB,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE9D,UAAU,UAAU;IAClB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,CAAA;CAC/D;AAsED,QAAA,MAAM,KAAK;qBAnBA,IAAI,CAAC,UAAU,EAAE,IAAI,GAAG,SAAS,CAAC,YAChC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC;mBADvC,IAAI,CAAC,UAAU,EAAE,IAAI,GAAG,SAAS,CAAC,YAChC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC;kBADvC,IAAI,CAAC,UAAU,EAAE,IAAI,GAAG,SAAS,CAAC,YAChC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC;qBADvC,IAAI,CAAC,UAAU,EAAE,IAAI,GAAG,SAAS,CAAC,YAChC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC;qBADvC,IAAI,CAAC,UAAU,EAAE,IAAI,GAAG,SAAS,CAAC,YAChC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC;CAwBjD,CAAA;AAED,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAA"}
@@ -0,0 +1,38 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import { Button } from "@eggspot/ui/components/Button";
4
+ import { AlertTriangleIcon, CircleCheckIcon, CircleXIcon, InfoIcon, XIcon, } from "lucide-react";
5
+ import { toast as sonnerToast, Toaster } from "sonner";
6
+ /** A fully custom toast that still maintains the animations and interactions. */
7
+ function Toast(props) {
8
+ const { title, description, id, variant = "neutral" } = props;
9
+ return (_jsxs("div", { className: "group bg-gray-2 text-gray-12 relative flex min-h-[64px] w-full items-center gap-3 rounded-xl border px-4 py-2.5 pr-7 shadow-lg md:w-[364px]", children: [_jsx(ToastIcon, { variant: variant }), _jsx("div", { className: "flex flex-1 items-center", children: _jsxs("div", { className: "w-full", children: [_jsx("p", { className: "text-gray-12 text-sm font-semibold", children: title }), description && (_jsx("div", { className: "text-gray-11 mt-0.5 text-sm", children: description }))] }) }), _jsx(Button, { size: "sm", mode: "icon", variant: "ghost", onClick: () => sonnerToast.dismiss(id), className: "absolute top-1.5 right-1.5 opacity-0 transition-opacity group-hover:opacity-100", children: _jsx(XIcon, { className: "text-gray-11 h-4 w-4" }) })] }));
10
+ }
11
+ function ToastIcon({ variant }) {
12
+ if (variant === "neutral") {
13
+ return null;
14
+ }
15
+ return (_jsxs(_Fragment, { children: [variant === "success" && (_jsx(CircleCheckIcon, { className: "text-success-9 size-5" })), variant === "error" && _jsx(CircleXIcon, { className: "text-error-9 size-5" }), variant === "info" && _jsx(InfoIcon, { className: "text-info-9 size-5" }), variant === "warning" && (_jsx(AlertTriangleIcon, { className: "text-warning-9 size-5" }))] }));
16
+ }
17
+ function createToast(variant) {
18
+ return (props, options = {}) => {
19
+ return sonnerToast.custom((id) => _jsx(Toast, { id: id, variant: variant, ...props }), {
20
+ position: "bottom-right",
21
+ ...options,
22
+ });
23
+ };
24
+ }
25
+ const success = createToast("success");
26
+ const error = createToast("error");
27
+ const info = createToast("info");
28
+ const warning = createToast("warning");
29
+ const neutral = createToast("neutral");
30
+ const toast = {
31
+ success,
32
+ error,
33
+ info,
34
+ warning,
35
+ neutral,
36
+ };
37
+ export { toast, Toaster };
38
+ //# sourceMappingURL=Sonner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sonner.js","sourceRoot":"","sources":["../../src/components/Sonner.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AACtD,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,QAAQ,EACR,KAAK,GACN,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,OAAO,EAAU,MAAM,QAAQ,CAAA;AAS9D,iFAAiF;AACjF,SAAS,KAAK,CAAC,KAAiB;IAC9B,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,OAAO,GAAG,SAAS,EAAE,GAAG,KAAK,CAAA;IAE7D,OAAO,CACL,eAAK,SAAS,EAAC,6IAA6I,aAC1J,KAAC,SAAS,IAAC,OAAO,EAAE,OAAO,GAAI,EAC/B,cAAK,SAAS,EAAC,0BAA0B,YACvC,eAAK,SAAS,EAAC,QAAQ,aACrB,YAAG,SAAS,EAAC,oCAAoC,YAAE,KAAK,GAAK,EAC5D,WAAW,IAAI,CACd,cAAK,SAAS,EAAC,6BAA6B,YAAE,WAAW,GAAO,CACjE,IACG,GACF,EACN,KAAC,MAAM,IACL,IAAI,EAAC,IAAI,EACT,IAAI,EAAC,MAAM,EACX,OAAO,EAAC,OAAO,EACf,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,EACtC,SAAS,EAAC,iFAAiF,YAE3F,KAAC,KAAK,IAAC,SAAS,EAAC,sBAAsB,GAAG,GACnC,IACL,CACP,CAAA;AACH,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,OAAO,EAAsC;IAChE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,CACL,8BACG,OAAO,KAAK,SAAS,IAAI,CACxB,KAAC,eAAe,IAAC,SAAS,EAAC,uBAAuB,GAAG,CACtD,EACA,OAAO,KAAK,OAAO,IAAI,KAAC,WAAW,IAAC,SAAS,EAAC,qBAAqB,GAAG,EACtE,OAAO,KAAK,MAAM,IAAI,KAAC,QAAQ,IAAC,SAAS,EAAC,oBAAoB,GAAG,EACjE,OAAO,KAAK,SAAS,IAAI,CACxB,KAAC,iBAAiB,IAAC,SAAS,EAAC,uBAAuB,GAAG,CACxD,IACA,CACJ,CAAA;AACH,CAAC;AAED,SAAS,WAAW,CAAC,OAA8B;IACjD,OAAO,CACL,KAAyC,EACzC,UAAiD,EAAE,EACnD,EAAE;QACF,OAAO,WAAW,CAAC,MAAM,CACvB,CAAC,EAAE,EAAE,EAAE,CAAC,KAAC,KAAK,IAAC,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,KAAM,KAAK,GAAI,EACtD;YACE,QAAQ,EAAE,cAAc;YACxB,GAAG,OAAO;SACX,CACF,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AAED,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CAAC,CAAA;AACtC,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;AAClC,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;AAChC,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CAAC,CAAA;AACtC,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CAAC,CAAA;AAEtC,MAAM,KAAK,GAAG;IACZ,OAAO;IACP,KAAK;IACL,IAAI;IACJ,OAAO;IACP,OAAO;CACR,CAAA;AAED,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAA"}