@eggspot/ui 0.0.2 → 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 (402) 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 +53 -5
  330. package/eslint.config.js +0 -41
  331. package/resolve-catalog.js +0 -61
  332. package/src/components/Button.machine.tsx +0 -50
  333. package/src/components/Button.tsx +0 -249
  334. package/src/components/Button.variants.tsx +0 -186
  335. package/src/components/ButtonGroup.tsx +0 -56
  336. package/src/components/Calendar.tsx +0 -275
  337. package/src/components/Calendar.utils.tsx +0 -22
  338. package/src/components/Checkbox.tsx +0 -199
  339. package/src/components/ConfirmDialog.tsx +0 -183
  340. package/src/components/DashboardLayout/DashboardLayout.tsx +0 -348
  341. package/src/components/DashboardLayout/SidebarNav.tsx +0 -509
  342. package/src/components/DashboardLayout/index.ts +0 -33
  343. package/src/components/DataTable/DataTable.tsx +0 -557
  344. package/src/components/DataTable/DataTableColumnHeader.tsx +0 -122
  345. package/src/components/DataTable/DataTableDisplaySettings.tsx +0 -265
  346. package/src/components/DataTable/DataTableFloatingBar.tsx +0 -44
  347. package/src/components/DataTable/DataTablePagination.tsx +0 -168
  348. package/src/components/DataTable/DataTableStates.tsx +0 -69
  349. package/src/components/DataTable/DataTableToolbarContainer.tsx +0 -47
  350. package/src/components/DataTable/hooks/use-data-table-settings.ts +0 -101
  351. package/src/components/DataTable/index.ts +0 -7
  352. package/src/components/DataTable/types/data-table.ts +0 -97
  353. package/src/components/DatePicker.tsx +0 -213
  354. package/src/components/DatePicker.utils.tsx +0 -38
  355. package/src/components/Datefield.tsx +0 -109
  356. package/src/components/Datefield.utils.ts +0 -10
  357. package/src/components/Dialog.tsx +0 -167
  358. package/src/components/Field.tsx +0 -49
  359. package/src/components/Filter/Filter.store.tsx +0 -122
  360. package/src/components/Filter/Filter.tsx +0 -11
  361. package/src/components/Filter/Filter.types.ts +0 -107
  362. package/src/components/Filter/FilterBar.tsx +0 -38
  363. package/src/components/Filter/FilterBuilder.tsx +0 -158
  364. package/src/components/Filter/FilterField/DateModeRowValue.tsx +0 -250
  365. package/src/components/Filter/FilterField/FilterAsyncSelect.tsx +0 -191
  366. package/src/components/Filter/FilterField/FilterDateMode.tsx +0 -241
  367. package/src/components/Filter/FilterField/FilterDateRange.tsx +0 -169
  368. package/src/components/Filter/FilterField/FilterSelect.tsx +0 -208
  369. package/src/components/Filter/FilterField/FilterSingleDate.tsx +0 -277
  370. package/src/components/Filter/FilterField/OptionItem.tsx +0 -112
  371. package/src/components/Filter/FilterField/index.ts +0 -6
  372. package/src/components/Filter/FilterRow.tsx +0 -527
  373. package/src/components/Filter/index.ts +0 -17
  374. package/src/components/Form.tsx +0 -195
  375. package/src/components/Heading.tsx +0 -41
  376. package/src/components/Input.tsx +0 -221
  377. package/src/components/InputOTP.tsx +0 -78
  378. package/src/components/Label.tsx +0 -65
  379. package/src/components/Layout.tsx +0 -129
  380. package/src/components/ListBox.tsx +0 -97
  381. package/src/components/Menu.tsx +0 -152
  382. package/src/components/NativeSelect.tsx +0 -77
  383. package/src/components/NumberInput.tsx +0 -114
  384. package/src/components/Popover.tsx +0 -44
  385. package/src/components/Provider.tsx +0 -22
  386. package/src/components/RadioGroup.tsx +0 -191
  387. package/src/components/Resizable.tsx +0 -71
  388. package/src/components/ScrollArea.tsx +0 -57
  389. package/src/components/Select.tsx +0 -626
  390. package/src/components/Select.utils.tsx +0 -64
  391. package/src/components/Separator.tsx +0 -25
  392. package/src/components/Sheet.tsx +0 -147
  393. package/src/components/Sonner.tsx +0 -96
  394. package/src/components/Spinner.tsx +0 -30
  395. package/src/components/Switch.tsx +0 -51
  396. package/src/components/Text.tsx +0 -35
  397. package/src/components/Tooltip.tsx +0 -58
  398. package/src/consts/config.ts +0 -2
  399. package/src/hooks/.gitkeep +0 -0
  400. package/src/lib/utils.ts +0 -10
  401. package/tsconfig.json +0 -27
  402. package/tsconfig.lint.json +0 -8
@@ -1,208 +0,0 @@
1
- "use client"
2
-
3
- import { useCallback, useContext, useMemo, useState } from "react"
4
- import { SearchInput } from "@eggspot/ui/components/Input"
5
- import { cn } from "@eggspot/ui/lib/utils"
6
- import { Check, Minus } from "lucide-react"
7
- import {
8
- Menu as AriaMenu,
9
- MenuItem as AriaMenuItem,
10
- Collection,
11
- ListLayout,
12
- RootMenuTriggerStateContext,
13
- Virtualizer,
14
- } from "react-aria-components"
15
-
16
- import {
17
- useFilterContext,
18
- useFilterItem,
19
- useFilterItemClose,
20
- } from "../Filter.store"
21
- import type { SelectOption } from "../Filter.types"
22
- import { isSelectOptionArray } from "../Filter.types"
23
- import { MenuOptionItem } from "./OptionItem"
24
-
25
- interface FilterSelectProps {
26
- field?: string
27
- options?: SelectOption[]
28
- multi?: boolean
29
- renderIcon?: (option: SelectOption, isSelected: boolean) => React.ReactNode
30
- placeholder?: string
31
- emptyMessage?: string
32
- }
33
-
34
- export function FilterSelect({
35
- field: fieldProp,
36
- options: optionsProp,
37
- multi = true,
38
- renderIcon,
39
- placeholder = "Filter...",
40
- emptyMessage = "No matching options",
41
- }: FilterSelectProps) {
42
- const { value: filters, setFieldValue } = useFilterContext()
43
- const filterItem = useFilterItem()
44
- const onClose = useFilterItemClose()
45
- const menuState = useContext(RootMenuTriggerStateContext)
46
-
47
- const field = fieldProp ?? filterItem?.field
48
- const options = optionsProp ?? filterItem?.options ?? []
49
-
50
- if (!field) {
51
- throw new Error(
52
- "FilterSelect requires a field prop or must be used within a FilterItemProvider"
53
- )
54
- }
55
-
56
- const [search, setSearch] = useState("")
57
-
58
- const raw = filters[field]
59
-
60
- const selectedValues = useMemo(() => {
61
- if (!raw) return []
62
- if (isSelectOptionArray(raw)) {
63
- return raw.map((opt) => opt.value)
64
- }
65
- if (Array.isArray(raw)) {
66
- return raw.map(String)
67
- }
68
- return [String(raw)]
69
- }, [raw])
70
-
71
- const selectedKeys = useMemo(() => new Set(selectedValues), [selectedValues])
72
-
73
- const filteredOptions = useMemo(() => {
74
- if (!search) return options
75
- const lowerSearch = search.toLowerCase()
76
- return options.filter((opt) =>
77
- opt.label.toLowerCase().includes(lowerSearch)
78
- )
79
- }, [options, search])
80
-
81
- const optionsWithId = useMemo(
82
- () => filteredOptions.map((opt) => ({ ...opt, id: String(opt.value) })),
83
- [filteredOptions]
84
- )
85
-
86
- const handleSelectionChange = useCallback(
87
- (keys: Set<React.Key>) => {
88
- const selectedIds = Array.from(keys).map(String)
89
- const selectedOptions = options
90
- .filter((opt) => selectedIds.includes(String(opt.value)))
91
- .map(({ icon, ...rest }) => rest)
92
-
93
- setFieldValue(
94
- field,
95
- selectedOptions.length > 0 ? selectedOptions : undefined
96
- )
97
-
98
- if (!multi && selectedOptions.length > 0) {
99
- menuState?.close()
100
- onClose?.()
101
- }
102
- },
103
- [field, options, setFieldValue, multi, onClose]
104
- )
105
-
106
- const handleSelectAll = useCallback(() => {
107
- const isAllSelected = selectedValues.length === optionsWithId.length
108
-
109
- if (isAllSelected) {
110
- setFieldValue(field, undefined)
111
- } else {
112
- const allOptions = optionsWithId.map(({ icon, id, ...rest }) => rest)
113
- setFieldValue(field, allOptions)
114
- }
115
- }, [field, optionsWithId, selectedValues.length, setFieldValue])
116
-
117
- const isAllSelected =
118
- selectedValues.length === optionsWithId.length && optionsWithId.length > 0
119
- const isIndeterminate =
120
- selectedValues.length > 0 && selectedValues.length < optionsWithId.length
121
-
122
- return (
123
- <div className="flex max-h-[300px] min-w-[200px] flex-col">
124
- <div className="border-gray-6 border-b px-3 py-2">
125
- <SearchInput
126
- placeholder={placeholder}
127
- className="placeholder:text-gray-11 h-7 rounded border-0 bg-transparent pl-0 text-xs ring-0!"
128
- onChange={setSearch}
129
- value={search}
130
- />
131
- </div>
132
-
133
- <Virtualizer
134
- layout={ListLayout}
135
- layoutOptions={{ estimatedRowHeight: 32 }}
136
- >
137
- <AriaMenu
138
- aria-label="Filter options"
139
- selectionMode={multi ? "multiple" : "single"}
140
- selectedKeys={selectedKeys}
141
- onSelectionChange={(keys) =>
142
- handleSelectionChange(keys as Set<string>)
143
- }
144
- className="max-h-[250px] flex-1 overflow-auto py-1 outline-none"
145
- renderEmptyState={() => (
146
- <div className="text-gray-11 px-3 py-6 text-center text-xs">
147
- {emptyMessage}
148
- </div>
149
- )}
150
- >
151
- {multi && optionsWithId.length > 0 && (
152
- <SelectAllItem
153
- isAllSelected={isAllSelected}
154
- isIndeterminate={isIndeterminate}
155
- onSelectAll={handleSelectAll}
156
- />
157
- )}
158
-
159
- <Collection items={optionsWithId}>
160
- {(option) => (
161
- <MenuOptionItem
162
- option={option}
163
- multi={multi}
164
- renderIcon={renderIcon}
165
- />
166
- )}
167
- </Collection>
168
- </AriaMenu>
169
- </Virtualizer>
170
- </div>
171
- )
172
- }
173
-
174
- function SelectAllItem({
175
- isAllSelected,
176
- isIndeterminate,
177
- onSelectAll,
178
- }: {
179
- isAllSelected: boolean
180
- isIndeterminate: boolean
181
- onSelectAll: () => void
182
- }) {
183
- return (
184
- <AriaMenuItem
185
- id="__select_all__"
186
- textValue="Select All"
187
- onAction={onSelectAll}
188
- className={cn(
189
- "flex w-full cursor-pointer items-center gap-2.5 px-3 py-1.5 text-left text-sm outline-none",
190
- "hover:bg-gray-3 data-focused:bg-gray-3 transition-colors",
191
- "text-gray-11 font-medium"
192
- )}
193
- >
194
- <span
195
- className={cn(
196
- "flex size-4 shrink-0 items-center justify-center rounded border",
197
- isAllSelected || isIndeterminate
198
- ? "bg-accent-9 border-accent-9 text-white"
199
- : "border-gray-7 bg-transparent"
200
- )}
201
- >
202
- {isAllSelected && <Check className="size-3" strokeWidth={2.5} />}
203
- {isIndeterminate && <Minus className="size-3" strokeWidth={2.5} />}
204
- </span>
205
- <span className="flex-1">Select All</span>
206
- </AriaMenuItem>
207
- )
208
- }
@@ -1,277 +0,0 @@
1
- "use client"
2
-
3
- import { useContext, useState } from "react"
4
- import { Button } from "@eggspot/ui/components/Button"
5
- import {
6
- Calendar,
7
- CalendarCell,
8
- CalendarGrid,
9
- CalendarGridBody,
10
- CalendarGridHeader,
11
- CalendarHeaderCell,
12
- CalendarHeading,
13
- } from "@eggspot/ui/components/Calendar"
14
- import { parse } from "@eggspot/ui/components/DatePicker.utils"
15
- import { cn } from "@eggspot/ui/lib/utils"
16
- import type { CalendarDate, CalendarDateTime } from "@internationalized/date"
17
- import { getLocalTimeZone, today } from "@internationalized/date"
18
- import dayjs from "dayjs"
19
- import { ChevronLeft, ChevronRight } from "lucide-react"
20
- import { RootMenuTriggerStateContext } from "react-aria-components"
21
-
22
- import {
23
- useFilterContext,
24
- useFilterItem,
25
- useFilterItemClose,
26
- } from "../Filter.store"
27
-
28
- interface FilterSingleDateProps {
29
- field?: string
30
- granularity?: "day" | "month"
31
- onSelect?: (date: Date | undefined) => void
32
- }
33
-
34
- export function FilterSingleDate({
35
- field: fieldProp,
36
- granularity = "day",
37
- onSelect,
38
- }: FilterSingleDateProps) {
39
- const { value, setFieldValue } = useFilterContext()
40
- const filterItem = useFilterItem()
41
-
42
- const field = fieldProp ?? filterItem?.field
43
-
44
- if (!field) {
45
- throw new Error(
46
- "FilterSingleDate requires a field prop or must be used within a FilterItemProvider"
47
- )
48
- }
49
-
50
- const dateValue = value[field] as Date | null | undefined
51
-
52
- const handleChange = (date: Date) => {
53
- if (onSelect) {
54
- onSelect(date)
55
- } else {
56
- setFieldValue(field, date)
57
- }
58
- }
59
-
60
- const handleClear = () => {
61
- if (onSelect) {
62
- onSelect(undefined)
63
- } else {
64
- setFieldValue(field, undefined)
65
- }
66
- }
67
-
68
- if (granularity === "month") {
69
- return (
70
- <MonthPicker
71
- value={dateValue ?? undefined}
72
- onChange={handleChange}
73
- onClear={handleClear}
74
- />
75
- )
76
- }
77
-
78
- return (
79
- <DayPicker
80
- value={dateValue ?? undefined}
81
- onChange={handleChange}
82
- onClear={handleClear}
83
- />
84
- )
85
- }
86
-
87
- interface DayPickerProps {
88
- value?: Date
89
- onChange: (date: Date) => void
90
- onClear: () => void
91
- }
92
-
93
- function DayPicker({ value, onChange, onClear }: DayPickerProps) {
94
- const calendarValue = parse(value, "day")
95
- const todayDate = today(getLocalTimeZone())
96
- const menuState = useContext(RootMenuTriggerStateContext)
97
- const onClose = useFilterItemClose()
98
-
99
- const handleDateChange = (date: CalendarDate | CalendarDateTime) => {
100
- onChange(date.toDate(getLocalTimeZone()))
101
- // Close popover after selection
102
- menuState?.close()
103
- onClose?.()
104
- }
105
-
106
- const handleToday = () => {
107
- onChange(dayjs().startOf("day").toDate())
108
- }
109
-
110
- return (
111
- <div className="flex h-[352px] min-w-[280px] flex-col p-2">
112
- <Calendar
113
- aria-label="Select date"
114
- className="w-full flex-1"
115
- value={calendarValue}
116
- onChange={handleDateChange}
117
- defaultFocusedValue={calendarValue ?? todayDate}
118
- >
119
- <CalendarHeading />
120
- <CalendarGrid className="w-full">
121
- <CalendarGridHeader>
122
- {(day) => (
123
- <CalendarHeaderCell className="flex-1">{day}</CalendarHeaderCell>
124
- )}
125
- </CalendarGridHeader>
126
- <CalendarGridBody>
127
- {(date) => <CalendarCell date={date} />}
128
- </CalendarGridBody>
129
- </CalendarGrid>
130
- </Calendar>
131
-
132
- <div className="border-gray-6 flex justify-center gap-2 border-t pt-2">
133
- <Button
134
- size="sm"
135
- variant="ghost"
136
- intent="primary"
137
- onClick={handleToday}
138
- >
139
- Today
140
- </Button>
141
- <Button
142
- size="sm"
143
- variant="ghost"
144
- intent="secondary"
145
- onClick={onClear}
146
- isDisabled={!value}
147
- >
148
- Clear
149
- </Button>
150
- </div>
151
- </div>
152
- )
153
- }
154
-
155
- interface MonthPickerProps {
156
- value?: Date
157
- onChange: (date: Date) => void
158
- onClear: () => void
159
- }
160
-
161
- const MONTHS = [
162
- "Jan",
163
- "Feb",
164
- "Mar",
165
- "Apr",
166
- "May",
167
- "Jun",
168
- "Jul",
169
- "Aug",
170
- "Sep",
171
- "Oct",
172
- "Nov",
173
- "Dec",
174
- ]
175
-
176
- function MonthPicker({ value, onChange, onClear }: MonthPickerProps) {
177
- const currentYear = dayjs().year()
178
- const [viewYear, setViewYear] = useState(
179
- value ? dayjs(value).year() : currentYear
180
- )
181
- const onClose = useFilterItemClose()
182
- const menuState = useContext(RootMenuTriggerStateContext)
183
-
184
- const selectedMonth = value ? dayjs(value).month() : null
185
- const selectedYear = value ? dayjs(value).year() : null
186
-
187
- const handleMonthSelect = (monthIndex: number) => {
188
- const date = dayjs()
189
- .year(viewYear)
190
- .month(monthIndex)
191
- .startOf("month")
192
- .toDate()
193
- onChange(date)
194
- onClose?.()
195
- menuState?.close()
196
- }
197
-
198
- const handleThisMonth = () => {
199
- onChange(dayjs().startOf("month").toDate())
200
- }
201
-
202
- return (
203
- <div className="flex min-w-[280px] flex-col p-2">
204
- <div className="mb-2 flex items-center justify-between">
205
- <Button
206
- mode="icon"
207
- size="sm"
208
- variant="ghost"
209
- intent="secondary"
210
- onClick={() => setViewYear((y) => y - 1)}
211
- aria-label="Previous year"
212
- >
213
- <ChevronLeft className="size-4" />
214
- </Button>
215
- <span className="text-gray-12 text-sm font-medium">{viewYear}</span>
216
- <Button
217
- mode="icon"
218
- size="sm"
219
- variant="ghost"
220
- intent="secondary"
221
- onClick={() => setViewYear((y) => y + 1)}
222
- aria-label="Next year"
223
- >
224
- <ChevronRight className="size-4" />
225
- </Button>
226
- </div>
227
-
228
- <div className="grid grid-cols-3 gap-1">
229
- {MONTHS.map((month, index) => {
230
- const isSelected =
231
- selectedMonth === index && selectedYear === viewYear
232
- const isCurrentMonth =
233
- dayjs().month() === index && dayjs().year() === viewYear
234
-
235
- return (
236
- <button
237
- key={month}
238
- type="button"
239
- onClick={() => handleMonthSelect(index)}
240
- className={cn(
241
- "rounded-md px-3 py-2 text-sm transition-colors",
242
- "hover:bg-gray-4 focus-visible:ring-accent-9 focus-visible:ring-2 focus-visible:outline-none",
243
- isSelected
244
- ? "bg-accent-9 hover:bg-accent-10 text-white"
245
- : isCurrentMonth
246
- ? "text-accent-11"
247
- : "text-gray-11 hover:text-gray-12"
248
- )}
249
- >
250
- {month}
251
- </button>
252
- )
253
- })}
254
- </div>
255
-
256
- <div className="border-gray-6 mt-2 flex justify-center gap-2 border-t pt-2">
257
- <Button
258
- size="sm"
259
- variant="ghost"
260
- intent="primary"
261
- onClick={handleThisMonth}
262
- >
263
- This month
264
- </Button>
265
- <Button
266
- size="sm"
267
- variant="ghost"
268
- intent="secondary"
269
- onClick={onClear}
270
- isDisabled={!value}
271
- >
272
- Clear
273
- </Button>
274
- </div>
275
- </div>
276
- )
277
- }
@@ -1,112 +0,0 @@
1
- "use client"
2
-
3
- import { cn } from "@eggspot/ui/lib/utils"
4
- import { Check } from "lucide-react"
5
- import { MenuItem as AriaMenuItem, ListBoxItem } from "react-aria-components"
6
-
7
- import type { SelectOption } from "../Filter.types"
8
-
9
- interface OptionItemProps {
10
- option: SelectOption
11
- multi?: boolean
12
- renderIcon?: (option: SelectOption, isSelected: boolean) => React.ReactNode
13
- }
14
-
15
- /* Shared option item for Menu-based selects (FilterSelect) */
16
- export function MenuOptionItem({
17
- option,
18
- multi = true,
19
- renderIcon,
20
- }: OptionItemProps) {
21
- return (
22
- <AriaMenuItem
23
- id={String(option.value)}
24
- textValue={option.label}
25
- className={cn(
26
- "flex w-full cursor-pointer items-center gap-2.5 px-3 py-1.5 text-left text-sm outline-none",
27
- "hover:bg-gray-3 data-focused:bg-gray-3 transition-colors",
28
- "data-selected:text-gray-12 text-gray-11"
29
- )}
30
- >
31
- {({ isSelected }) => (
32
- <OptionItemContent
33
- option={option}
34
- isSelected={isSelected}
35
- multi={multi}
36
- renderIcon={renderIcon}
37
- />
38
- )}
39
- </AriaMenuItem>
40
- )
41
- }
42
-
43
- /* Shared option item for ListBox-based selects (FilterAsyncSelect) */
44
- export function ListBoxOptionItem({
45
- option,
46
- multi = true,
47
- renderIcon,
48
- }: OptionItemProps) {
49
- return (
50
- <ListBoxItem
51
- id={String(option.value)}
52
- textValue={option.label}
53
- className={cn(
54
- "flex w-full cursor-pointer items-center gap-2.5 px-3 py-1.5 text-left text-sm outline-none",
55
- "hover:bg-gray-3 data-focused:bg-gray-3 transition-colors",
56
- "data-selected:text-gray-12 text-gray-11"
57
- )}
58
- >
59
- {({ isSelected }) => (
60
- <OptionItemContent
61
- option={option}
62
- isSelected={isSelected}
63
- multi={multi}
64
- renderIcon={renderIcon}
65
- />
66
- )}
67
- </ListBoxItem>
68
- )
69
- }
70
-
71
- /* Shared content for option items */
72
- function OptionItemContent({
73
- option,
74
- isSelected,
75
- multi,
76
- renderIcon,
77
- }: {
78
- option: SelectOption
79
- isSelected: boolean
80
- multi?: boolean
81
- renderIcon?: (option: SelectOption, isSelected: boolean) => React.ReactNode
82
- }) {
83
- return (
84
- <>
85
- <span
86
- className={cn(
87
- "flex size-4 shrink-0 items-center justify-center rounded border",
88
- multi ? "rounded" : "rounded-full",
89
- isSelected
90
- ? "bg-accent-9 border-accent-9 text-white"
91
- : "border-gray-7 bg-transparent"
92
- )}
93
- >
94
- {isSelected && <Check className="size-3" strokeWidth={2.5} />}
95
- </span>
96
-
97
- {renderIcon ? (
98
- <span className="shrink-0">{renderIcon(option, isSelected)}</span>
99
- ) : option.avatar ? (
100
- <img
101
- src={option.avatar}
102
- alt={option.label}
103
- className="size-5 shrink-0 rounded-full object-cover"
104
- />
105
- ) : option.icon ? (
106
- <span className="text-gray-11 shrink-0">{option.icon}</span>
107
- ) : null}
108
-
109
- <span className="flex-1 truncate">{option.label}</span>
110
- </>
111
- )
112
- }
@@ -1,6 +0,0 @@
1
- export * from "./DateModeRowValue"
2
- export * from "./FilterAsyncSelect"
3
- export * from "./FilterDateMode"
4
- export * from "./FilterDateRange"
5
- export * from "./FilterSelect"
6
- export * from "./FilterSingleDate"