@g4rcez/components 4.0.1 → 4.1.1

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 (415) hide show
  1. package/ai/SKILL.md +233 -0
  2. package/ai/docs/Alert.md +166 -0
  3. package/ai/docs/AnimatedList.md +206 -0
  4. package/ai/docs/Autocomplete.md +221 -0
  5. package/ai/docs/Button.md +182 -0
  6. package/ai/docs/Calendar.md +185 -0
  7. package/ai/docs/Card.md +178 -0
  8. package/ai/docs/Checkbox.md +194 -0
  9. package/ai/docs/CommandPalette.md +275 -0
  10. package/ai/docs/DatePicker.md +152 -0
  11. package/ai/docs/Dropdown.md +195 -0
  12. package/{dist/ai → ai}/docs/Empty.md +41 -44
  13. package/{dist/ai → ai}/docs/Expand.md +40 -54
  14. package/ai/docs/FileUpload.md +218 -0
  15. package/{dist/ai → ai}/docs/Form.md +35 -29
  16. package/{dist/ai → ai}/docs/FormReset.md +37 -37
  17. package/{dist/ai → ai}/docs/Heading.md +4 -6
  18. package/ai/docs/Input.md +212 -0
  19. package/ai/docs/InputField.md +170 -0
  20. package/ai/docs/List.md +208 -0
  21. package/ai/docs/Menu.md +168 -0
  22. package/ai/docs/Modal.md +273 -0
  23. package/ai/docs/MultiSelect.md +177 -0
  24. package/ai/docs/Notifications.md +231 -0
  25. package/ai/docs/PageCalendar.md +262 -0
  26. package/{dist/ai → ai}/docs/Polymorph.md +25 -41
  27. package/{dist/ai → ai}/docs/Progress.md +55 -51
  28. package/{dist/ai → ai}/docs/Radiobox.md +49 -41
  29. package/{dist/ai → ai}/docs/RenderOnView.md +26 -32
  30. package/{dist/ai → ai}/docs/Resizable.md +60 -65
  31. package/ai/docs/Select.md +284 -0
  32. package/{dist/ai → ai}/docs/Shortcut.md +14 -14
  33. package/{dist/ai → ai}/docs/Skeleton.md +56 -60
  34. package/{dist/ai → ai}/docs/Slider.md +26 -49
  35. package/{dist/ai → ai}/docs/Slot.md +15 -17
  36. package/{dist/ai → ai}/docs/Spinner.md +17 -15
  37. package/{dist/ai → ai}/docs/Stats.md +44 -42
  38. package/ai/docs/Step.md +159 -0
  39. package/{dist/ai → ai}/docs/Switch.md +44 -54
  40. package/ai/docs/Table.md +286 -0
  41. package/ai/docs/Tabs.md +191 -0
  42. package/ai/docs/Tag.md +222 -0
  43. package/{dist/ai → ai}/docs/TaskList.md +40 -50
  44. package/ai/docs/Textarea.md +144 -0
  45. package/ai/docs/Timeline.md +212 -0
  46. package/{dist/ai → ai}/docs/Toolbar.md +46 -46
  47. package/ai/docs/Tooltip.md +231 -0
  48. package/ai/docs/Typography.md +187 -0
  49. package/ai/docs/Wizard.md +208 -0
  50. package/ai/docs/index.md +183 -0
  51. package/dist/autocomplete-DcTNOwyg.js +393 -0
  52. package/dist/autocomplete-DcTNOwyg.js.map +1 -0
  53. package/dist/{calendar-B5lSd0ID.js → calendar-BJMHRoy2.js} +104 -105
  54. package/dist/calendar-BJMHRoy2.js.map +1 -0
  55. package/dist/components/core/button.js +10 -10
  56. package/dist/components/core/button.js.map +1 -1
  57. package/dist/components/core/tag.js +4 -4
  58. package/dist/components/core/tag.js.map +1 -1
  59. package/dist/components/display/alert.js +48 -46
  60. package/dist/components/display/alert.js.map +1 -1
  61. package/dist/components/display/calendar.js +6 -6
  62. package/dist/components/display/card.js +2 -2
  63. package/dist/components/display/card.js.map +1 -1
  64. package/dist/components/display/list.js +1 -1
  65. package/dist/components/display/list.js.map +1 -1
  66. package/dist/components/display/notifications.js +3 -3
  67. package/dist/components/display/stats.js +1 -1
  68. package/dist/components/display/tabs.js +2 -2
  69. package/dist/components/display/timeline.js +1 -1
  70. package/dist/components/floating/dropdown.js +25 -17
  71. package/dist/components/floating/dropdown.js.map +1 -1
  72. package/dist/components/floating/expand.js +7 -7
  73. package/dist/components/floating/expand.js.map +1 -1
  74. package/dist/components/floating/menu.js +10 -10
  75. package/dist/components/floating/menu.js.map +1 -1
  76. package/dist/components/floating/modal.js +106 -102
  77. package/dist/components/floating/modal.js.map +1 -1
  78. package/dist/components/floating/tooltip.js +14 -14
  79. package/dist/components/floating/tooltip.js.map +1 -1
  80. package/dist/components/form/autocomplete.js +6 -6
  81. package/dist/components/form/checkbox.js +1 -1
  82. package/dist/components/form/date-picker.js +5 -5
  83. package/dist/components/form/file-upload.js +2 -2
  84. package/dist/components/form/form.js.map +1 -1
  85. package/dist/components/form/input.js +1 -1
  86. package/dist/components/form/radiobox.js +1 -1
  87. package/dist/components/form/select.js +3 -3
  88. package/dist/components/form/switch.js +2 -2
  89. package/dist/components/form/switch.js.map +1 -1
  90. package/dist/components/table/table.js +3 -3
  91. package/dist/{date-picker-DwNo22lx.js → date-picker-Bnl07nd8.js} +8 -6
  92. package/dist/date-picker-Bnl07nd8.js.map +1 -0
  93. package/dist/{dom-Dl8XH0CK.js → dom-CyQHY7ID.js} +66 -61
  94. package/dist/dom-CyQHY7ID.js.map +1 -0
  95. package/dist/{file-upload-Brf2NkLr.js → file-upload-93d5DR4q.js} +139 -129
  96. package/dist/file-upload-93d5DR4q.js.map +1 -0
  97. package/dist/{floating-ui.react-QNHG9W4N.js → floating-ui.react-M2PGXLDp.js} +8 -8
  98. package/dist/floating-ui.react-M2PGXLDp.js.map +1 -0
  99. package/dist/{fns-D2eyJKd5.js → fns-C7Dt27Qd.js} +2 -2
  100. package/dist/fns-C7Dt27Qd.js.map +1 -0
  101. package/dist/index-BJ1ayTam.js +126 -0
  102. package/dist/index-BJ1ayTam.js.map +1 -0
  103. package/dist/index-C-PuFUZi.js.map +1 -1
  104. package/dist/{index-BelDtX5M.js → index-DDeQW0JW.js} +399 -404
  105. package/dist/index-DDeQW0JW.js.map +1 -0
  106. package/dist/index-DE4shK8D.js +215 -0
  107. package/dist/index-DE4shK8D.js.map +1 -0
  108. package/dist/{index-DJSMaZR4.js → index-DlJ_2RBL.js} +2 -2
  109. package/dist/index-DlJ_2RBL.js.map +1 -0
  110. package/dist/index.css +1 -1
  111. package/dist/index.esm-BaIwleSE.js.map +1 -1
  112. package/dist/index.js +2826 -2765
  113. package/dist/index.js.map +1 -1
  114. package/dist/{input-CrGrSnUt.js → input-_MVxmIpu.js} +116 -114
  115. package/dist/input-_MVxmIpu.js.map +1 -0
  116. package/dist/{input-field-5vYcz5tT.js → input-field-CDCOODOl.js} +63 -47
  117. package/dist/input-field-CDCOODOl.js.map +1 -0
  118. package/dist/notifications-Dp0ydKJS.js +2576 -0
  119. package/dist/notifications-Dp0ydKJS.js.map +1 -0
  120. package/dist/polymorph-B5n9fs_K.js.map +1 -1
  121. package/dist/preset/plugin.tailwind.d.ts.map +1 -1
  122. package/dist/preset/plugin.tailwind.js +20 -18
  123. package/dist/preset/preset.tailwind.js +24 -25
  124. package/dist/preset/src/styles/common.js +6 -3
  125. package/dist/preset/src/styles/dark.d.ts.map +1 -1
  126. package/dist/preset/src/styles/dark.js +9 -5
  127. package/dist/preset/src/styles/design-tokens.js +68 -89
  128. package/dist/preset/src/styles/light.d.ts.map +1 -1
  129. package/dist/preset/src/styles/light.js +9 -5
  130. package/dist/preset/src/styles/theme.js +7 -4
  131. package/dist/preset/src/styles/theme.types.d.ts +2 -1
  132. package/dist/preset/src/styles/theme.types.d.ts.map +1 -1
  133. package/dist/preset/src/styles/theme.types.js +2 -1
  134. package/dist/skeleton-BjJobYYf.js +24 -0
  135. package/dist/skeleton-BjJobYYf.js.map +1 -0
  136. package/dist/slot-CRyweuj0.js.map +1 -1
  137. package/dist/styles/common.js +6 -3
  138. package/dist/styles/dark.d.ts.map +1 -1
  139. package/dist/styles/dark.js +9 -5
  140. package/dist/styles/design-tokens.js +68 -89
  141. package/dist/styles/light.d.ts.map +1 -1
  142. package/dist/styles/light.js +9 -5
  143. package/dist/styles/theme.js +7 -4
  144. package/dist/styles/theme.types.d.ts +2 -1
  145. package/dist/styles/theme.types.d.ts.map +1 -1
  146. package/dist/styles/theme.types.js +2 -1
  147. package/dist/tabs-B0g7YtQv.js +123 -0
  148. package/dist/tabs-B0g7YtQv.js.map +1 -0
  149. package/dist/tsconfig.lib.tsbuildinfo +1 -0
  150. package/dist/{context-BFXNJVn2.js → use-translations-DSltA7H_.js} +38 -30
  151. package/dist/use-translations-DSltA7H_.js.map +1 -0
  152. package/package.json +101 -88
  153. package/dist/ai/SKILL.md +0 -266
  154. package/dist/ai/docs/Alert.md +0 -167
  155. package/dist/ai/docs/AnimatedList.md +0 -205
  156. package/dist/ai/docs/Autocomplete.md +0 -225
  157. package/dist/ai/docs/Button.md +0 -182
  158. package/dist/ai/docs/Calendar.md +0 -219
  159. package/dist/ai/docs/Card.md +0 -174
  160. package/dist/ai/docs/Checkbox.md +0 -199
  161. package/dist/ai/docs/CommandPalette.md +0 -293
  162. package/dist/ai/docs/DatePicker.md +0 -171
  163. package/dist/ai/docs/Dropdown.md +0 -223
  164. package/dist/ai/docs/FileUpload.md +0 -225
  165. package/dist/ai/docs/Input.md +0 -237
  166. package/dist/ai/docs/InputField.md +0 -170
  167. package/dist/ai/docs/List.md +0 -205
  168. package/dist/ai/docs/Menu.md +0 -166
  169. package/dist/ai/docs/Modal.md +0 -280
  170. package/dist/ai/docs/MultiSelect.md +0 -196
  171. package/dist/ai/docs/Notifications.md +0 -231
  172. package/dist/ai/docs/PageCalendar.md +0 -271
  173. package/dist/ai/docs/Select.md +0 -284
  174. package/dist/ai/docs/Step.md +0 -159
  175. package/dist/ai/docs/Table.md +0 -298
  176. package/dist/ai/docs/Tabs.md +0 -191
  177. package/dist/ai/docs/Tag.md +0 -224
  178. package/dist/ai/docs/Textarea.md +0 -167
  179. package/dist/ai/docs/Timeline.md +0 -210
  180. package/dist/ai/docs/Tooltip.md +0 -231
  181. package/dist/ai/docs/TransferList.md +0 -142
  182. package/dist/ai/docs/Typography.md +0 -187
  183. package/dist/ai/docs/Wizard.md +0 -213
  184. package/dist/ai/docs/index.md +0 -183
  185. package/dist/autocomplete-Cn9Z2hLq.js +0 -375
  186. package/dist/autocomplete-Cn9Z2hLq.js.map +0 -1
  187. package/dist/calendar-B5lSd0ID.js.map +0 -1
  188. package/dist/components/core/button.d.ts +0 -77
  189. package/dist/components/core/button.d.ts.map +0 -1
  190. package/dist/components/core/heading.d.ts +0 -3
  191. package/dist/components/core/heading.d.ts.map +0 -1
  192. package/dist/components/core/polymorph.d.ts +0 -10
  193. package/dist/components/core/polymorph.d.ts.map +0 -1
  194. package/dist/components/core/render-on-view.d.ts +0 -7
  195. package/dist/components/core/render-on-view.d.ts.map +0 -1
  196. package/dist/components/core/resizable.d.ts +0 -3
  197. package/dist/components/core/resizable.d.ts.map +0 -1
  198. package/dist/components/core/slot.d.ts +0 -16
  199. package/dist/components/core/slot.d.ts.map +0 -1
  200. package/dist/components/core/tag.d.ts +0 -35
  201. package/dist/components/core/tag.d.ts.map +0 -1
  202. package/dist/components/core/typography.d.ts +0 -24
  203. package/dist/components/core/typography.d.ts.map +0 -1
  204. package/dist/components/display/alert.d.ts +0 -28
  205. package/dist/components/display/alert.d.ts.map +0 -1
  206. package/dist/components/display/calendar.d.ts +0 -42
  207. package/dist/components/display/calendar.d.ts.map +0 -1
  208. package/dist/components/display/card.d.ts +0 -29
  209. package/dist/components/display/card.d.ts.map +0 -1
  210. package/dist/components/display/empty.d.ts +0 -8
  211. package/dist/components/display/empty.d.ts.map +0 -1
  212. package/dist/components/display/list.d.ts +0 -16
  213. package/dist/components/display/list.d.ts.map +0 -1
  214. package/dist/components/display/notifications.d.ts +0 -27
  215. package/dist/components/display/notifications.d.ts.map +0 -1
  216. package/dist/components/display/progress.d.ts +0 -13
  217. package/dist/components/display/progress.d.ts.map +0 -1
  218. package/dist/components/display/shortcut.d.ts +0 -4
  219. package/dist/components/display/shortcut.d.ts.map +0 -1
  220. package/dist/components/display/skeleton.d.ts +0 -12
  221. package/dist/components/display/skeleton.d.ts.map +0 -1
  222. package/dist/components/display/spinner.d.ts +0 -5
  223. package/dist/components/display/spinner.d.ts.map +0 -1
  224. package/dist/components/display/stats.d.ts +0 -12
  225. package/dist/components/display/stats.d.ts.map +0 -1
  226. package/dist/components/display/step.d.ts +0 -24
  227. package/dist/components/display/step.d.ts.map +0 -1
  228. package/dist/components/display/tabs.d.ts +0 -24
  229. package/dist/components/display/tabs.d.ts.map +0 -1
  230. package/dist/components/display/timeline.d.ts +0 -10
  231. package/dist/components/display/timeline.d.ts.map +0 -1
  232. package/dist/components/floating/command-palette.d.ts +0 -49
  233. package/dist/components/floating/command-palette.d.ts.map +0 -1
  234. package/dist/components/floating/dropdown.d.ts +0 -15
  235. package/dist/components/floating/dropdown.d.ts.map +0 -1
  236. package/dist/components/floating/expand.d.ts +0 -11
  237. package/dist/components/floating/expand.d.ts.map +0 -1
  238. package/dist/components/floating/menu.d.ts +0 -52
  239. package/dist/components/floating/menu.d.ts.map +0 -1
  240. package/dist/components/floating/modal.d.ts +0 -60
  241. package/dist/components/floating/modal.d.ts.map +0 -1
  242. package/dist/components/floating/toolbar.d.ts +0 -6
  243. package/dist/components/floating/toolbar.d.ts.map +0 -1
  244. package/dist/components/floating/tooltip.d.ts +0 -17
  245. package/dist/components/floating/tooltip.d.ts.map +0 -1
  246. package/dist/components/floating/wizard.d.ts +0 -26
  247. package/dist/components/floating/wizard.d.ts.map +0 -1
  248. package/dist/components/form/autocomplete.d.ts +0 -16
  249. package/dist/components/form/autocomplete.d.ts.map +0 -1
  250. package/dist/components/form/checkbox.d.ts +0 -12
  251. package/dist/components/form/checkbox.d.ts.map +0 -1
  252. package/dist/components/form/date-picker.d.ts +0 -10
  253. package/dist/components/form/date-picker.d.ts.map +0 -1
  254. package/dist/components/form/file-upload.d.ts +0 -15
  255. package/dist/components/form/file-upload.d.ts.map +0 -1
  256. package/dist/components/form/form.d.ts +0 -3
  257. package/dist/components/form/form.d.ts.map +0 -1
  258. package/dist/components/form/formReset.d.ts +0 -2
  259. package/dist/components/form/formReset.d.ts.map +0 -1
  260. package/dist/components/form/free-text.d.ts +0 -11
  261. package/dist/components/form/free-text.d.ts.map +0 -1
  262. package/dist/components/form/input-field.d.ts +0 -34
  263. package/dist/components/form/input-field.d.ts.map +0 -1
  264. package/dist/components/form/input.d.ts +0 -52
  265. package/dist/components/form/input.d.ts.map +0 -1
  266. package/dist/components/form/multi-select.d.ts +0 -19
  267. package/dist/components/form/multi-select.d.ts.map +0 -1
  268. package/dist/components/form/radiobox.d.ts +0 -7
  269. package/dist/components/form/radiobox.d.ts.map +0 -1
  270. package/dist/components/form/select.d.ts +0 -13
  271. package/dist/components/form/select.d.ts.map +0 -1
  272. package/dist/components/form/slider.d.ts +0 -7
  273. package/dist/components/form/slider.d.ts.map +0 -1
  274. package/dist/components/form/switch.d.ts +0 -9
  275. package/dist/components/form/switch.d.ts.map +0 -1
  276. package/dist/components/form/task-list.d.ts +0 -3
  277. package/dist/components/form/task-list.d.ts.map +0 -1
  278. package/dist/components/form/textarea.d.ts +0 -6
  279. package/dist/components/form/textarea.d.ts.map +0 -1
  280. package/dist/components/form/transfer-list.d.ts +0 -14
  281. package/dist/components/form/transfer-list.d.ts.map +0 -1
  282. package/dist/components/form/transfer-list.js +0 -55
  283. package/dist/components/form/transfer-list.js.map +0 -1
  284. package/dist/components/index.d.ts +0 -46
  285. package/dist/components/index.d.ts.map +0 -1
  286. package/dist/components/page-calendar/calendar-header.d.ts +0 -16
  287. package/dist/components/page-calendar/calendar-header.d.ts.map +0 -1
  288. package/dist/components/page-calendar/day-view.d.ts +0 -12
  289. package/dist/components/page-calendar/day-view.d.ts.map +0 -1
  290. package/dist/components/page-calendar/event-pill.d.ts +0 -9
  291. package/dist/components/page-calendar/event-pill.d.ts.map +0 -1
  292. package/dist/components/page-calendar/index.d.ts +0 -4
  293. package/dist/components/page-calendar/index.d.ts.map +0 -1
  294. package/dist/components/page-calendar/month-view.d.ts +0 -11
  295. package/dist/components/page-calendar/month-view.d.ts.map +0 -1
  296. package/dist/components/page-calendar/page-calendar.d.ts +0 -18
  297. package/dist/components/page-calendar/page-calendar.d.ts.map +0 -1
  298. package/dist/components/page-calendar/page-calendar.types.d.ts +0 -18
  299. package/dist/components/page-calendar/page-calendar.types.d.ts.map +0 -1
  300. package/dist/components/page-calendar/page-calendar.utils.d.ts +0 -24
  301. package/dist/components/page-calendar/page-calendar.utils.d.ts.map +0 -1
  302. package/dist/components/page-calendar/week-view.d.ts +0 -11
  303. package/dist/components/page-calendar/week-view.d.ts.map +0 -1
  304. package/dist/components/table/filter.d.ts +0 -42
  305. package/dist/components/table/filter.d.ts.map +0 -1
  306. package/dist/components/table/group.d.ts +0 -17
  307. package/dist/components/table/group.d.ts.map +0 -1
  308. package/dist/components/table/index.d.ts +0 -20
  309. package/dist/components/table/index.d.ts.map +0 -1
  310. package/dist/components/table/inner-table.d.ts +0 -29
  311. package/dist/components/table/inner-table.d.ts.map +0 -1
  312. package/dist/components/table/metadata.d.ts +0 -4
  313. package/dist/components/table/metadata.d.ts.map +0 -1
  314. package/dist/components/table/pagination.d.ts +0 -3
  315. package/dist/components/table/pagination.d.ts.map +0 -1
  316. package/dist/components/table/row.d.ts +0 -12
  317. package/dist/components/table/row.d.ts.map +0 -1
  318. package/dist/components/table/sort.d.ts +0 -28
  319. package/dist/components/table/sort.d.ts.map +0 -1
  320. package/dist/components/table/table-lib.d.ts +0 -135
  321. package/dist/components/table/table-lib.d.ts.map +0 -1
  322. package/dist/components/table/table.context.d.ts +0 -10
  323. package/dist/components/table/table.context.d.ts.map +0 -1
  324. package/dist/components/table/thead.d.ts +0 -9
  325. package/dist/components/table/thead.d.ts.map +0 -1
  326. package/dist/config/context.d.ts +0 -21
  327. package/dist/config/context.d.ts.map +0 -1
  328. package/dist/config/default-translations.d.ts +0 -90
  329. package/dist/config/default-translations.d.ts.map +0 -1
  330. package/dist/config/default-tweaks.d.ts +0 -13
  331. package/dist/config/default-tweaks.d.ts.map +0 -1
  332. package/dist/constants.d.ts +0 -3
  333. package/dist/constants.d.ts.map +0 -1
  334. package/dist/context-BFXNJVn2.js.map +0 -1
  335. package/dist/date-picker-DwNo22lx.js.map +0 -1
  336. package/dist/dom-Dl8XH0CK.js.map +0 -1
  337. package/dist/file-upload-Brf2NkLr.js.map +0 -1
  338. package/dist/floating-ui.react-QNHG9W4N.js.map +0 -1
  339. package/dist/fns-D2eyJKd5.js.map +0 -1
  340. package/dist/hooks/use-click-outside.d.ts +0 -3
  341. package/dist/hooks/use-click-outside.d.ts.map +0 -1
  342. package/dist/hooks/use-color-parser.d.ts +0 -2
  343. package/dist/hooks/use-color-parser.d.ts.map +0 -1
  344. package/dist/hooks/use-components-provider.d.ts +0 -15
  345. package/dist/hooks/use-components-provider.d.ts.map +0 -1
  346. package/dist/hooks/use-debounce.d.ts +0 -5
  347. package/dist/hooks/use-debounce.d.ts.map +0 -1
  348. package/dist/hooks/use-floating-ref.d.ts +0 -2
  349. package/dist/hooks/use-floating-ref.d.ts.map +0 -1
  350. package/dist/hooks/use-form.d.ts +0 -394
  351. package/dist/hooks/use-form.d.ts.map +0 -1
  352. package/dist/hooks/use-hover.d.ts +0 -3
  353. package/dist/hooks/use-hover.d.ts.map +0 -1
  354. package/dist/hooks/use-input-id.d.ts +0 -4
  355. package/dist/hooks/use-input-id.d.ts.map +0 -1
  356. package/dist/hooks/use-is-coarse-device.d.ts +0 -2
  357. package/dist/hooks/use-is-coarse-device.d.ts.map +0 -1
  358. package/dist/hooks/use-locale.d.ts +0 -3
  359. package/dist/hooks/use-locale.d.ts.map +0 -1
  360. package/dist/hooks/use-media-query.d.ts +0 -2
  361. package/dist/hooks/use-media-query.d.ts.map +0 -1
  362. package/dist/hooks/use-on-event.d.ts +0 -4
  363. package/dist/hooks/use-on-event.d.ts.map +0 -1
  364. package/dist/hooks/use-parent.d.ts +0 -3
  365. package/dist/hooks/use-parent.d.ts.map +0 -1
  366. package/dist/hooks/use-preferences.d.ts +0 -2
  367. package/dist/hooks/use-preferences.d.ts.map +0 -1
  368. package/dist/hooks/use-previous.d.ts +0 -2
  369. package/dist/hooks/use-previous.d.ts.map +0 -1
  370. package/dist/hooks/use-reactive.d.ts +0 -2
  371. package/dist/hooks/use-reactive.d.ts.map +0 -1
  372. package/dist/hooks/use-remove-scroll.d.ts +0 -4
  373. package/dist/hooks/use-remove-scroll.d.ts.map +0 -1
  374. package/dist/hooks/use-resize-observer.d.ts +0 -2
  375. package/dist/hooks/use-resize-observer.d.ts.map +0 -1
  376. package/dist/hooks/use-stable-ref.d.ts +0 -2
  377. package/dist/hooks/use-stable-ref.d.ts.map +0 -1
  378. package/dist/hooks/use-swipe.d.ts +0 -8
  379. package/dist/hooks/use-swipe.d.ts.map +0 -1
  380. package/dist/hooks/use-translations.d.ts +0 -88
  381. package/dist/hooks/use-translations.d.ts.map +0 -1
  382. package/dist/hooks/use-tweaks.d.ts +0 -3
  383. package/dist/hooks/use-tweaks.d.ts.map +0 -1
  384. package/dist/hooks/use-window-size.d.ts +0 -5
  385. package/dist/hooks/use-window-size.d.ts.map +0 -1
  386. package/dist/index-BelDtX5M.js.map +0 -1
  387. package/dist/index-DJSMaZR4.js.map +0 -1
  388. package/dist/index-Z-fZHxfJ.js +0 -335
  389. package/dist/index-Z-fZHxfJ.js.map +0 -1
  390. package/dist/index.d.ts +0 -22
  391. package/dist/index.d.ts.map +0 -1
  392. package/dist/input-CrGrSnUt.js.map +0 -1
  393. package/dist/input-field-5vYcz5tT.js.map +0 -1
  394. package/dist/lib/combi-keys.d.ts +0 -15
  395. package/dist/lib/combi-keys.d.ts.map +0 -1
  396. package/dist/lib/dict.d.ts +0 -12
  397. package/dist/lib/dict.d.ts.map +0 -1
  398. package/dist/lib/dom.d.ts +0 -19
  399. package/dist/lib/dom.d.ts.map +0 -1
  400. package/dist/lib/fns.d.ts +0 -11
  401. package/dist/lib/fns.d.ts.map +0 -1
  402. package/dist/lib/fzf.d.ts +0 -16
  403. package/dist/lib/fzf.d.ts.map +0 -1
  404. package/dist/lib/keyboard-area.d.ts +0 -16
  405. package/dist/lib/keyboard-area.d.ts.map +0 -1
  406. package/dist/notifications-cUdVPs-B.js +0 -2786
  407. package/dist/notifications-cUdVPs-B.js.map +0 -1
  408. package/dist/skeleton-D75GFBV6.js +0 -10
  409. package/dist/skeleton-D75GFBV6.js.map +0 -1
  410. package/dist/tabs-S00a8qq8.js +0 -106
  411. package/dist/tabs-S00a8qq8.js.map +0 -1
  412. package/dist/types.d.ts +0 -26
  413. package/dist/types.d.ts.map +0 -1
  414. package/dist/use-translations-BwLKTrZv.js +0 -10
  415. package/dist/use-translations-BwLKTrZv.js.map +0 -1
@@ -1,271 +0,0 @@
1
- ---
2
- title: PageCalendar
3
- description: Full-page calendar with month, week, and day views, event filtering, and custom event rendering.
4
- package: "@g4rcez/components"
5
- export: "{ PageCalendar }"
6
- import: "import { PageCalendar } from '@g4rcez/components'"
7
- category: calendar
8
- ---
9
-
10
- # PageCalendar
11
-
12
- Full-page calendar with month, week, and day views, event filtering, and custom event rendering.
13
-
14
- ## Import
15
-
16
- ```tsx
17
- import { PageCalendar } from "@g4rcez/components";
18
- ```
19
-
20
- ## Props
21
-
22
- | Prop | Type | Default | Description |
23
- |------|------|---------|-------------|
24
- | `events` | `CalendarEvent<T>[]` | — | Array of event objects to display across all views. |
25
- | `filters` | `CalendarFilter[]` | `[]` | Filter tag definitions. Each filter can be toggled to hide/show matching events. |
26
- | `defaultView` | `"month" \| "week" \| "day"` | `"month"` | Initial view rendered when the component mounts. |
27
- | `defaultDate` | `Date` | `new Date()` | Initial date the calendar focuses on. |
28
- | `onEventClick` | `(event: CalendarEvent) => void` | — | Called when the user clicks an event pill. |
29
- | `onSlotClick` | `(date: Date) => void` | — | Called when the user clicks an empty time slot (week and day views). |
30
- | `onAddEvent` | `() => void` | — | Called when the "Add event" button in the header is clicked. Omit to hide the button. |
31
- | `onChangeFilters` | `(filters: CalendarFilter[]) => void` | — | Called whenever a filter is toggled, receiving the updated filter array. |
32
- | `renderEvent` | `(event: CalendarEvent<T>) => ReactNode` | — | Custom renderer for the selected event detail panel in day view. |
33
- | `filterArea` | `ReactNode` | — | Replaces the default filter tag row in the header with custom content. |
34
- | `getFilterId` | `() => void` | — | Custom accessor to extract a `filterId` from an event. Defaults to `event.filterId`. |
35
-
36
- ## Type Definitions
37
-
38
- ### CalendarEventBase
39
-
40
- ```ts
41
- type CalendarEventBase = {
42
- id: string;
43
- date: Date;
44
- };
45
- ```
46
-
47
- ### CalendarEvent
48
-
49
- ```ts
50
- type CalendarEvent<T extends CalendarEventBase = CalendarEventBase> = T & {
51
- title: string;
52
- filterId?: string;
53
- className?: string;
54
- };
55
- ```
56
-
57
- `className` is applied directly to the event pill element in all views.
58
-
59
- ### CalendarFilter
60
-
61
- ```ts
62
- type CalendarFilter = {
63
- id: string;
64
- label: string;
65
- enabled: boolean;
66
- theme: TagProps["theme"]; // "primary" | "success" | "warn" | "danger" | "info" | "neutral" | "secondary" | "muted"
67
- };
68
- ```
69
-
70
- ### ViewMode
71
-
72
- ```ts
73
- type ViewMode = "month" | "week" | "day";
74
- ```
75
-
76
- ## Design Tokens
77
-
78
- Tokens this component reads. Customize by overriding these CSS variables in your theme.
79
-
80
- | Token | CSS Variable | Purpose |
81
- |-------|-------------|---------|
82
- | `bg-primary` | `--primary` | Today indicator background, selected day highlight |
83
- | `text-primary-foreground` | `--primary-foreground` | Text on today / selected day indicator |
84
- | `bg-card` | `--card` | Non-today day indicator background in header |
85
- | `text-foreground` | `--foreground` | Default text in day cells and header |
86
- | `text-muted-foreground` | `--muted-foreground` | Week label, hour labels, secondary text |
87
- | `border-border` | `--border` | Grid cell borders, day view hour-slot dividers |
88
- | `border-card-border` | `--card-border` | Day and week view column borders |
89
- | `bg-muted` | `--muted` | Hover background on time slots |
90
- | `z-calendar` | `--z-calendar` | `z-index` for the column resizer handle (value: 2) |
91
- | `z-floating` | `--z-floating` | `z-index` for floating overlays (value: 22) |
92
-
93
- ## Views
94
-
95
- ### Month view
96
-
97
- Displays a 6-row grid of all days in the selected month. Each day cell shows event pills. Clicking a day navigates to that day in the day view.
98
-
99
- ### Week view
100
-
101
- Displays the 7 days of the current week with an hourly time grid. Events are placed at their time position. Clicking an empty slot calls `onSlotClick`.
102
-
103
- ### Day view
104
-
105
- Displays a single day with an hourly grid alongside a mini calendar and a detail panel. The detail panel shows a default summary or your `renderEvent` output when an event is clicked.
106
-
107
- ## Examples
108
-
109
- ### Minimal calendar
110
-
111
- ```tsx
112
- import { PageCalendar } from "@g4rcez/components";
113
-
114
- type MyEvent = { id: string; date: Date; title: string };
115
-
116
- const events: MyEvent[] = [
117
- { id: "1", date: new Date(), title: "Team standup" },
118
- ];
119
-
120
- export function MyCalendar() {
121
- return (
122
- <PageCalendar
123
- events={events}
124
- onEventClick={(event) => console.log(event)}
125
- />
126
- );
127
- }
128
- ```
129
-
130
- ### With filters
131
-
132
- ```tsx
133
- import { PageCalendar } from "@g4rcez/components";
134
- import type { CalendarFilter } from "@g4rcez/components";
135
-
136
- const filters: CalendarFilter[] = [
137
- { id: "work", label: "Work", enabled: true, theme: "primary" },
138
- { id: "personal", label: "Personal", enabled: true, theme: "success" },
139
- ];
140
-
141
- const events = [
142
- { id: "1", date: new Date(), title: "Sprint planning", filterId: "work" },
143
- { id: "2", date: new Date(), title: "Gym", filterId: "personal" },
144
- ];
145
-
146
- export function FilteredCalendar() {
147
- return (
148
- <PageCalendar
149
- events={events}
150
- filters={filters}
151
- onChangeFilters={(updated) => console.log(updated)}
152
- />
153
- );
154
- }
155
- ```
156
-
157
- ### Custom event detail in day view
158
-
159
- ```tsx
160
- import { PageCalendar } from "@g4rcez/components";
161
- import { MapPinIcon } from "@phosphor-icons/react";
162
-
163
- export function DetailCalendar() {
164
- return (
165
- <PageCalendar
166
- events={events}
167
- defaultView="day"
168
- renderEvent={(event) => (
169
- <div className="flex flex-col gap-1 p-2 bg-muted rounded-card">
170
- <span className="font-semibold text-foreground">{event.title}</span>
171
- <span className="flex items-center gap-1 text-sm text-muted-foreground">
172
- <MapPinIcon size={12} />
173
- {event.location}
174
- </span>
175
- </div>
176
- )}
177
- />
178
- );
179
- }
180
- ```
181
-
182
- ### Controlled add-event flow
183
-
184
- ```tsx
185
- import { useState } from "react";
186
- import { PageCalendar } from "@g4rcez/components";
187
-
188
- export function EditableCalendar() {
189
- const [showForm, setShowForm] = useState(false);
190
- const [slotDate, setSlotDate] = useState<Date | null>(null);
191
-
192
- return (
193
- <>
194
- <PageCalendar
195
- events={events}
196
- onAddEvent={() => setShowForm(true)}
197
- onSlotClick={(date) => {
198
- setSlotDate(date);
199
- setShowForm(true);
200
- }}
201
- />
202
- {showForm && <EventForm defaultDate={slotDate} onClose={() => setShowForm(false)} />}
203
- </>
204
- );
205
- }
206
- ```
207
-
208
- ### Custom filter area
209
-
210
- ```tsx
211
- import { PageCalendar } from "@g4rcez/components";
212
- import { Button } from "@g4rcez/components/button";
213
-
214
- export function CustomFilterCalendar() {
215
- return (
216
- <PageCalendar
217
- events={events}
218
- filterArea={
219
- <div className="flex items-center gap-2 rounded-card bg-muted px-3 py-1.5">
220
- <Button theme="ghost-muted" size="small">All</Button>
221
- <Button theme="primary" size="small">Mine</Button>
222
- </div>
223
- }
224
- />
225
- );
226
- }
227
- ```
228
-
229
- ## Do
230
-
231
- - Provide unique `id` values for every event and filter to ensure stable React keys and filter matching.
232
- - Use `theme` on filters to give users a quick visual legend for event categories.
233
- - Implement both `onAddEvent` and `onSlotClick` to give users two natural entry points for creating events.
234
- - Use design-token classes in `renderEvent` output (`bg-muted`, `text-foreground`, `border-border`).
235
- - Keep event `title` values short — they are truncated in month and week event pills.
236
-
237
- ## Don't
238
-
239
- - Don't pass raw Tailwind color classes (`bg-blue-500`, `text-white`, `border-gray-300`) — use `theme` on filters/events or design tokens instead.
240
- - Don't use arbitrary Tailwind values (`bg-[#abc]`, `bg-[--my-var]`) — override CSS variables in your `@theme` block instead.
241
- - Don't pack more than a handful of events per day in month view — the grid will overflow; guide users toward week or day view for dense schedules.
242
- - Don't use extremely long event titles; they are truncated inside the event pill.
243
- - Don't supply both `filterArea` and `filters` expecting both to render — `filterArea` fully replaces the default filter tag row.
244
-
245
- ## Accessibility
246
-
247
- - The root container has `role="application"` and `aria-label` from the i18n translation key `pageCalendarLabel`.
248
- - The header month/year title uses `aria-live="polite"` and `aria-atomic="true"` so screen readers announce date changes after navigation.
249
- - Navigation buttons (`Previous`, `Today`, `Next`) have `aria-label` attributes for screen reader descriptions.
250
- - View toggle buttons use `aria-pressed` to communicate the active view.
251
- - Filter tags are rendered as `<button>` elements with `aria-pressed` and an `aria-label` that includes the enabled/disabled state.
252
- - Day view hour slots have `role="button"`, `tabIndex={0}`, and `aria-label` for keyboard-accessible slot selection.
253
- - The day column header uses `aria-label` with the full formatted date string.
254
-
255
- ## Data Attributes
256
-
257
- - `data-component="day-view-scroller"` — the scrolling container inside the day view. Useful for CSS height overrides:
258
-
259
- ```css
260
- [data-component="day-view-scroller"] {
261
- height: calc(100dvh - 200px);
262
- }
263
- ```
264
-
265
- ## Notes
266
-
267
- - Internally uses `date-fns` for all date arithmetic and locale-aware formatting. The locale is read from the `useLocale` hook; set it at the app root via the component provider.
268
- - All labels (button text, ARIA strings, week number format) are driven by the i18n translation system. Override via the `translations` prop on the root provider.
269
- - Event filtering is managed internally; `onChangeFilters` lets you mirror the filter state to an external store without controlling it.
270
- - The day view mini-calendar renders dots beneath days that have events, matching the `bg-primary` token for visual consistency.
271
- - The component grows to fill its container (`h-full flex-grow`). Place it inside a flex or grid container with an explicit height.
@@ -1,284 +0,0 @@
1
- ---
2
- title: Select
3
- description: Styled native select component with validation, loading state, and form integration.
4
- package: "@g4rcez/components"
5
- export: "{ Select }"
6
- import: "import { Select } from '@g4rcez/components/select'"
7
- category: form
8
- ---
9
-
10
- # Select
11
-
12
- Styled native select component with validation, loading state, and form integration.
13
-
14
- ## Import
15
-
16
- ```tsx
17
- import { Select } from "@g4rcez/components/select";
18
- ```
19
-
20
- ## Props
21
-
22
- | Prop | Type | Default | Description |
23
- |------|------|---------|-------------|
24
- | `options` | `OptionProps[]` | — | Array of option objects. |
25
- | `selectContainer` | `string` | `""` | Additional CSS classes for the select container. |
26
- | `required` | `boolean` | `true` | Whether the field is required. |
27
- | `error` | `string` | — | Error message to display. |
28
- | `loading` | `boolean` | `false` | Shows a loading indicator and disables the field. |
29
- | `disabled` | `boolean` | `false` | Disables the select. |
30
- | `placeholder` | `string` | — | Placeholder shown as a disabled hidden option. |
31
- | `value` | `string` | — | Controlled selected value. |
32
- | `onChange` | `(e: ChangeEvent<HTMLSelectElement>) => void` | — | Change handler. |
33
- | `...inputFieldProps` | `InputFieldProps` | — | All `InputField` props (title, left, right, feedback, etc.). |
34
-
35
- ### OptionProps
36
-
37
- | Prop | Type | Description |
38
- |------|------|-------------|
39
- | `value` | `string` | Option value (required). |
40
- | `label` | `string` | Display text (falls back to `value` if omitted). |
41
- | `disabled` | `boolean` | Disables this individual option. |
42
- | `data-dynamic` | `string` | Marks a dynamically generated option. |
43
- | `data-*` | `string` | Any custom data attributes forwarded to the `<option>`. |
44
-
45
- ## Design Tokens
46
-
47
- Tokens this component reads. Customize by overriding these CSS variables in your theme.
48
-
49
- | Token | CSS Variable | Purpose |
50
- |-------|-------------|---------|
51
- | `text-foreground` | `--foreground` | Selected option text color |
52
- | `text-input-placeholder` | `--input-placeholder` | Color when no option is selected |
53
- | `placeholder-input-placeholder` | `--input-placeholder` | Placeholder styling |
54
- | `bg-input-mask-error` (via `group-error`) | `--input-mask-error` | Placeholder tint in error state |
55
- | `text-danger` (via `group-error`) | `--danger` | Text color in error state |
56
- | `hover:text-primary` | `--primary` | Caret icon hover color |
57
- | `h-input-height` | `--input-height` | Control height (2.5 rem) |
58
- | `px-input-x` | `--input-x` | Horizontal padding |
59
- | `py-input-y` | `--input-y` | Vertical padding |
60
-
61
- ## Examples
62
-
63
- ### Basic usage
64
-
65
- ```tsx
66
- import { useState } from "react";
67
- import { Select } from "@g4rcez/components/select";
68
-
69
- export default function FruitPicker() {
70
- const [value, setValue] = useState("");
71
-
72
- return (
73
- <Select
74
- title="Fruit"
75
- options={[
76
- { value: "apple", label: "Apple" },
77
- { value: "banana", label: "Banana" },
78
- { value: "orange", label: "Orange" },
79
- ]}
80
- placeholder="Select a fruit"
81
- value={value}
82
- onChange={(e) => setValue(e.target.value)}
83
- />
84
- );
85
- }
86
- ```
87
-
88
- ### With validation error
89
-
90
- ```tsx
91
- import { useState } from "react";
92
- import { Select } from "@g4rcez/components/select";
93
-
94
- export default function CountrySelect() {
95
- const [country, setCountry] = useState("");
96
- const [error, setError] = useState("");
97
-
98
- return (
99
- <Select
100
- title="Country"
101
- options={[
102
- { value: "us", label: "United States" },
103
- { value: "ca", label: "Canada" },
104
- { value: "uk", label: "United Kingdom" },
105
- ]}
106
- placeholder="Select country"
107
- value={country}
108
- error={error}
109
- required
110
- onChange={(e) => {
111
- setCountry(e.target.value);
112
- setError(e.target.value ? "" : "Please select a country");
113
- }}
114
- />
115
- );
116
- }
117
- ```
118
-
119
- ### With disabled options
120
-
121
- ```tsx
122
- import { Select } from "@g4rcez/components/select";
123
-
124
- export default function StatusSelect() {
125
- return (
126
- <Select
127
- title="Status"
128
- options={[
129
- { value: "active", label: "Active" },
130
- { value: "pending", label: "Pending" },
131
- { value: "legacy", label: "Legacy (deprecated)", disabled: true },
132
- { value: "inactive", label: "Inactive" },
133
- ]}
134
- placeholder="Select status"
135
- />
136
- );
137
- }
138
- ```
139
-
140
- ### Async options with loading state
141
-
142
- ```tsx
143
- import { useEffect, useState } from "react";
144
- import { Select } from "@g4rcez/components/select";
145
-
146
- export default function AsyncSelect() {
147
- const [options, setOptions] = useState<{ value: string; label: string }[]>([]);
148
- const [loading, setLoading] = useState(false);
149
- const [value, setValue] = useState("");
150
-
151
- useEffect(() => {
152
- setLoading(true);
153
- fetchOptions().then((data) => {
154
- setOptions(data);
155
- setLoading(false);
156
- });
157
- }, []);
158
-
159
- return (
160
- <Select
161
- title="Region"
162
- options={options}
163
- placeholder={loading ? "Loading..." : "Select a region"}
164
- value={value}
165
- loading={loading}
166
- disabled={loading}
167
- onChange={(e) => setValue(e.target.value)}
168
- />
169
- );
170
- }
171
- ```
172
-
173
- ### Form integration with `useForm`
174
-
175
- ```tsx
176
- import { Select } from "@g4rcez/components/select";
177
- import { useForm } from "@g4rcez/components/form";
178
-
179
- export default function UserForm() {
180
- const form = useForm(schema, "userForm");
181
-
182
- return (
183
- <form {...form.props}>
184
- <Select
185
- {...form.select("role")}
186
- options={[
187
- { value: "admin", label: "Administrator" },
188
- { value: "editor", label: "Editor" },
189
- { value: "viewer", label: "Viewer" },
190
- ]}
191
- placeholder="Select role"
192
- />
193
- </form>
194
- );
195
- }
196
- ```
197
-
198
- ### Cascading selects
199
-
200
- ```tsx
201
- import { useState } from "react";
202
- import { Select } from "@g4rcez/components/select";
203
-
204
- const subcategories: Record<string, { value: string; label: string }[]> = {
205
- electronics: [
206
- { value: "phones", label: "Phones" },
207
- { value: "laptops", label: "Laptops" },
208
- ],
209
- clothing: [
210
- { value: "shirts", label: "Shirts" },
211
- { value: "pants", label: "Pants" },
212
- ],
213
- };
214
-
215
- export default function CascadingSelect() {
216
- const [category, setCategory] = useState("");
217
- const [subcategory, setSubcategory] = useState("");
218
-
219
- return (
220
- <div className="flex flex-col gap-base">
221
- <Select
222
- title="Category"
223
- options={[
224
- { value: "electronics", label: "Electronics" },
225
- { value: "clothing", label: "Clothing" },
226
- ]}
227
- placeholder="Select category"
228
- value={category}
229
- onChange={(e) => {
230
- setCategory(e.target.value);
231
- setSubcategory("");
232
- }}
233
- />
234
-
235
- {category && (
236
- <Select
237
- title="Subcategory"
238
- options={subcategories[category] ?? []}
239
- placeholder="Select subcategory"
240
- value={subcategory}
241
- onChange={(e) => setSubcategory(e.target.value)}
242
- />
243
- )}
244
- </div>
245
- );
246
- }
247
- ```
248
-
249
- ## Do
250
-
251
- - Use descriptive `label` values for each option.
252
- - Order options logically (alphabetically or by usage frequency).
253
- - Provide a `placeholder` so users know what to select.
254
- - Use `loading` and `disabled` together while fetching options asynchronously.
255
- - Use design-token classes for wrapper elements (`bg-background`, `text-foreground`, `border-border`).
256
-
257
- ## Don't
258
-
259
- - Don't use `Select` for only 2–3 options — prefer `Radiobox` or `Switch` for better visibility.
260
- - Don't use `Select` for large searchable lists — use `Autocomplete` instead.
261
- - Don't use long option labels that may truncate on small viewports.
262
- - Don't pass raw Tailwind color classes (`bg-blue-500`, `text-white`, `border-gray-300`) — use design tokens instead.
263
- - Don't use arbitrary Tailwind values (`bg-[#abc]`, `bg-[--my-var]`) — override CSS variables in your `@theme` block instead.
264
-
265
- ## Accessibility
266
-
267
- - Uses a native `<select>` element for full keyboard support and screen-reader compatibility.
268
- - The `placeholder` renders as a `disabled hidden` option so it is never submitted.
269
- - A `CaretDownIcon` caret is rendered inside a `<label>` pointing to the select id, giving it a larger click target.
270
- - `data-selected` is set to `"false"` until the user selects an option, which toggles the placeholder color class.
271
-
272
- ## Data Attributes
273
-
274
- | Attribute | Element | Value | Description |
275
- |-----------|---------|-------|-------------|
276
- | `data-component` | `InputField` root | `"select"` | Identifies the component. |
277
- | `data-selected` | `<select>` | `"true" \| "false"` | Whether a non-placeholder option is selected. |
278
-
279
- ## Notes
280
-
281
- - Built on `InputField` for layout, label, error, and loading handling.
282
- - Supports all standard HTML `<select>` attributes via prop spread.
283
- - `required` defaults to `true` — pass `required={false}` when the field is optional.
284
- - Custom data attributes on `OptionProps` (e.g., `data-price`) are forwarded to each `<option>` and accessible via `e.target.selectedOptions[0].dataset`.