@saas-ui/react 3.0.0-alpha.0 → 3.0.0-alpha.10

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 (397) hide show
  1. package/CHANGELOG.md +85 -0
  2. package/dist/chunk-2EUACKRH.js +26 -0
  3. package/dist/chunk-32JGENDB.js +19 -0
  4. package/dist/chunk-3MO37LYW.js +326 -0
  5. package/dist/chunk-4TR3AOMG.js +33 -0
  6. package/dist/chunk-6LOMIKR5.js +69 -0
  7. package/dist/chunk-6ZNR6N2K.js +45 -0
  8. package/dist/chunk-7VSTNV2B.js +53 -0
  9. package/dist/chunk-BCNPBZZK.js +45 -0
  10. package/dist/chunk-CB52LBJK.js +71 -0
  11. package/dist/chunk-CD2JUFI2.js +231 -0
  12. package/dist/chunk-FJFNGSPL.js +23 -0
  13. package/dist/chunk-FZW2DYK3.js +19 -0
  14. package/dist/chunk-GGAKUS66.js +141 -0
  15. package/dist/chunk-H6TFEHY4.js +63 -0
  16. package/dist/chunk-HELHPHIQ.js +35 -0
  17. package/dist/chunk-I2RXEKTB.js +38 -0
  18. package/dist/chunk-JGHXJ3PI.js +102 -0
  19. package/dist/chunk-KTLWEUNW.js +1 -0
  20. package/dist/chunk-L356FPLY.js +20 -0
  21. package/dist/chunk-LIYUBUOP.js +119 -0
  22. package/dist/chunk-M7FOBCOV.js +184 -0
  23. package/dist/chunk-NSD5HRIP.js +46 -0
  24. package/dist/chunk-O2WVT2BP.js +35 -0
  25. package/dist/chunk-PKI6YH2V.js +31 -0
  26. package/dist/chunk-Q6SNJJO2.js +63 -0
  27. package/dist/chunk-QSNSWCTM.js +32 -0
  28. package/dist/chunk-RTMS5TJN.js +10 -0
  29. package/dist/chunk-S3CQW7GD.js +100 -0
  30. package/dist/chunk-SA3OGTOO.js +23 -0
  31. package/dist/chunk-SKXSBAOS.js +35 -0
  32. package/dist/chunk-TT4C5VXB.js +36 -0
  33. package/dist/chunk-TZBAM4AD.js +20 -0
  34. package/dist/chunk-UCQ3LZIE.js +43 -0
  35. package/dist/chunk-ULAJ3JEO.js +32 -0
  36. package/dist/chunk-VDXTEASE.js +117 -0
  37. package/dist/chunk-WYLMBMAH.js +22 -0
  38. package/dist/components/app-shell/index.cjs +68 -0
  39. package/dist/components/app-shell/index.d.cts +30 -0
  40. package/dist/components/app-shell/index.d.ts +30 -0
  41. package/dist/components/app-shell/index.js +8 -0
  42. package/dist/components/avatar/index.cjs +69 -0
  43. package/dist/components/avatar/index.d.cts +18 -0
  44. package/dist/components/avatar/index.d.ts +18 -0
  45. package/dist/components/avatar/index.js +10 -0
  46. package/dist/components/breadcrumb/index.cjs +58 -0
  47. package/dist/components/breadcrumb/index.d.cts +17 -0
  48. package/dist/components/breadcrumb/index.d.ts +17 -0
  49. package/dist/components/breadcrumb/index.js +8 -0
  50. package/dist/components/button/index.cjs +65 -0
  51. package/dist/components/button/index.d.cts +12 -0
  52. package/dist/components/button/index.d.ts +12 -0
  53. package/dist/components/button/index.js +8 -0
  54. package/dist/components/checkbox/index.cjs +45 -0
  55. package/dist/components/checkbox/index.d.cts +11 -0
  56. package/dist/components/checkbox/index.d.ts +11 -0
  57. package/dist/components/checkbox/index.js +8 -0
  58. package/dist/components/close-button/index.cjs +142 -0
  59. package/dist/components/close-button/index.d.cts +8 -0
  60. package/dist/components/close-button/index.d.ts +8 -0
  61. package/dist/components/close-button/index.js +9 -0
  62. package/dist/components/command/index.cjs +56 -0
  63. package/dist/components/command/index.d.cts +6 -0
  64. package/dist/components/command/index.d.ts +6 -0
  65. package/dist/components/command/index.js +8 -0
  66. package/dist/components/dialog/index.cjs +204 -0
  67. package/dist/components/dialog/index.d.cts +27 -0
  68. package/dist/components/dialog/index.d.ts +27 -0
  69. package/dist/components/dialog/index.js +10 -0
  70. package/dist/components/drawer/index.cjs +196 -0
  71. package/dist/components/drawer/index.d.cts +28 -0
  72. package/dist/components/drawer/index.d.ts +28 -0
  73. package/dist/components/drawer/index.js +10 -0
  74. package/dist/components/empty-state/index.cjs +48 -0
  75. package/dist/components/empty-state/index.d.cts +11 -0
  76. package/dist/components/empty-state/index.d.ts +11 -0
  77. package/dist/components/empty-state/index.js +8 -0
  78. package/dist/components/grid-list/index.cjs +68 -0
  79. package/dist/components/grid-list/index.d.cts +22 -0
  80. package/dist/components/grid-list/index.d.ts +22 -0
  81. package/dist/components/grid-list/index.js +8 -0
  82. package/dist/components/icon-badge/index.cjs +70 -0
  83. package/dist/components/icon-badge/index.d.cts +16 -0
  84. package/dist/components/icon-badge/index.d.ts +16 -0
  85. package/dist/components/icon-badge/index.js +8 -0
  86. package/dist/components/icons/index.cjs +155 -0
  87. package/dist/components/icons/index.d.cts +19 -0
  88. package/dist/components/icons/index.d.ts +19 -0
  89. package/dist/components/icons/index.js +35 -0
  90. package/dist/components/input-group/index.cjs +56 -0
  91. package/dist/components/input-group/index.d.cts +13 -0
  92. package/dist/components/input-group/index.d.ts +13 -0
  93. package/dist/components/input-group/index.js +8 -0
  94. package/dist/components/link/index.cjs +71 -0
  95. package/dist/components/link/index.d.cts +13 -0
  96. package/dist/components/link/index.d.ts +13 -0
  97. package/dist/components/link/index.js +9 -0
  98. package/dist/components/loading-overlay/index.cjs +84 -0
  99. package/dist/components/loading-overlay/index.d.cts +26 -0
  100. package/dist/components/loading-overlay/index.d.ts +26 -0
  101. package/dist/components/loading-overlay/index.js +11 -0
  102. package/dist/components/menu/index.cjs +249 -0
  103. package/dist/components/menu/index.d.cts +39 -0
  104. package/dist/components/menu/index.d.ts +39 -0
  105. package/dist/components/menu/index.js +11 -0
  106. package/dist/components/navbar/index.cjs +111 -0
  107. package/dist/components/navbar/index.d.cts +21 -0
  108. package/dist/components/navbar/index.d.ts +21 -0
  109. package/dist/components/navbar/index.js +9 -0
  110. package/dist/components/number-input/index.cjs +82 -0
  111. package/dist/components/number-input/index.d.cts +13 -0
  112. package/dist/components/number-input/index.d.ts +13 -0
  113. package/dist/components/number-input/index.js +9 -0
  114. package/dist/components/password-input/index.cjs +284 -0
  115. package/dist/components/password-input/index.d.cts +18 -0
  116. package/dist/components/password-input/index.d.ts +18 -0
  117. package/dist/components/password-input/index.js +9 -0
  118. package/dist/components/persona/index.cjs +218 -0
  119. package/dist/components/persona/index.d.cts +113 -0
  120. package/dist/components/persona/index.d.ts +113 -0
  121. package/dist/components/persona/index.js +12 -0
  122. package/dist/components/pin-input/index.cjs +51 -0
  123. package/dist/components/pin-input/index.d.cts +12 -0
  124. package/dist/components/pin-input/index.d.ts +12 -0
  125. package/dist/components/pin-input/index.js +8 -0
  126. package/dist/components/radio/index.cjs +48 -0
  127. package/dist/components/radio/index.d.cts +12 -0
  128. package/dist/components/radio/index.d.ts +12 -0
  129. package/dist/components/radio/index.js +10 -0
  130. package/dist/components/search-input/index.cjs +244 -0
  131. package/dist/components/search-input/index.d.cts +15 -0
  132. package/dist/components/search-input/index.d.ts +15 -0
  133. package/dist/components/search-input/index.js +10 -0
  134. package/dist/components/segmented-control/index.cjs +60 -0
  135. package/dist/components/segmented-control/index.d.cts +14 -0
  136. package/dist/components/segmented-control/index.d.ts +14 -0
  137. package/dist/components/segmented-control/index.js +8 -0
  138. package/dist/components/select/index.cjs +233 -0
  139. package/dist/components/select/index.d.cts +32 -0
  140. package/dist/components/select/index.d.ts +32 -0
  141. package/dist/components/select/index.js +10 -0
  142. package/dist/components/sidebar/index.cjs +166 -0
  143. package/dist/components/sidebar/index.d.cts +86 -0
  144. package/dist/components/sidebar/index.d.ts +86 -0
  145. package/dist/components/sidebar/index.js +14 -0
  146. package/dist/components/spinner/index.cjs +44 -0
  147. package/dist/components/spinner/index.d.cts +10 -0
  148. package/dist/components/spinner/index.d.ts +10 -0
  149. package/dist/components/spinner/index.js +8 -0
  150. package/dist/components/steps/index.cjs +189 -0
  151. package/dist/components/steps/index.d.cts +31 -0
  152. package/dist/components/steps/index.d.ts +31 -0
  153. package/dist/components/steps/index.js +10 -0
  154. package/dist/components/switch/index.cjs +48 -0
  155. package/dist/components/switch/index.d.cts +18 -0
  156. package/dist/components/switch/index.d.ts +18 -0
  157. package/dist/components/switch/index.js +8 -0
  158. package/dist/components/toaster/index.cjs +54 -0
  159. package/dist/components/toaster/index.d.cts +10 -0
  160. package/dist/components/toaster/index.d.ts +10 -0
  161. package/dist/components/toaster/index.js +10 -0
  162. package/dist/components/tooltip/index.cjs +57 -0
  163. package/dist/components/tooltip/index.d.cts +14 -0
  164. package/dist/components/tooltip/index.d.ts +14 -0
  165. package/dist/components/tooltip/index.js +8 -0
  166. package/dist/index.cjs +2358 -222
  167. package/dist/index.d.cts +46 -10
  168. package/dist/index.d.ts +46 -10
  169. package/dist/index.js +523 -305
  170. package/dist/theme/tokens/colors.cjs +349 -0
  171. package/dist/theme/tokens/colors.d.cts +856 -0
  172. package/dist/theme/tokens/colors.d.ts +856 -0
  173. package/dist/theme/tokens/colors.js +8 -0
  174. package/package.json +15 -9
  175. package/dist/index.cjs.map +0 -1
  176. package/dist/index.js.map +0 -1
  177. package/src/components/accordion.tsx +0 -47
  178. package/src/components/action-bar.tsx +0 -40
  179. package/src/components/alert.tsx +0 -51
  180. package/src/components/app-shell/app-shell.recipe.ts +0 -52
  181. package/src/components/app-shell/app-shell.stories.tsx +0 -51
  182. package/src/components/app-shell/app-shell.tsx +0 -94
  183. package/src/components/app-shell/index.ts +0 -3
  184. package/src/components/avatar.tsx +0 -74
  185. package/src/components/blockquote.tsx +0 -31
  186. package/src/components/breadcrumbs/breadcrumb.stories.tsx +0 -17
  187. package/src/components/breadcrumbs/breadcrumb.tsx +0 -36
  188. package/src/components/breadcrumbs/index.ts +0 -1
  189. package/src/components/breadcrumbs/namespace.ts +0 -8
  190. package/src/components/button/button.recipe.ts +0 -182
  191. package/src/components/button/button.stories.tsx +0 -99
  192. package/src/components/button/button.tsx +0 -55
  193. package/src/components/button/index.ts +0 -2
  194. package/src/components/checkbox/checkbox.tsx +0 -26
  195. package/src/components/checkbox/index.ts +0 -2
  196. package/src/components/checkbox-card.tsx +0 -57
  197. package/src/components/checkbox.tsx +0 -25
  198. package/src/components/clipboard.tsx +0 -107
  199. package/src/components/close-button/close-button.stories.tsx +0 -12
  200. package/src/components/close-button/close-button.tsx +0 -18
  201. package/src/components/close-button/index.ts +0 -2
  202. package/src/components/color-mode.tsx +0 -65
  203. package/src/components/command/command.recipe.ts +0 -17
  204. package/src/components/command/command.stories.tsx +0 -47
  205. package/src/components/command/command.tsx +0 -50
  206. package/src/components/command/index.ts +0 -1
  207. package/src/components/data-list.tsx +0 -37
  208. package/src/components/dialog/dialog.tsx +0 -66
  209. package/src/components/dialog/index.ts +0 -1
  210. package/src/components/dialog/namespace.ts +0 -18
  211. package/src/components/drawer/drawer.tsx +0 -56
  212. package/src/components/drawer/index.ts +0 -3
  213. package/src/components/drawer/namespace.ts +0 -19
  214. package/src/components/empty-state.tsx +0 -34
  215. package/src/components/field.tsx +0 -33
  216. package/src/components/file-button.tsx +0 -166
  217. package/src/components/grid-list/grid-list.recipe.ts +0 -113
  218. package/src/components/hover-card.tsx +0 -35
  219. package/src/components/icon-badge/icon-badge.recipe.ts +0 -57
  220. package/src/components/icon-badge/icon-badge.stories.tsx +0 -38
  221. package/src/components/icon-badge/icon-badge.tsx +0 -59
  222. package/src/components/icon-badge/index.ts +0 -2
  223. package/src/components/icons/create-icon.tsx +0 -41
  224. package/src/components/icons/icons.tsx +0 -121
  225. package/src/components/icons/index.ts +0 -1
  226. package/src/components/input-group/index.ts +0 -1
  227. package/src/components/input-group/input-group.tsx +0 -46
  228. package/src/components/link/index.ts +0 -2
  229. package/src/components/link/link.stories.tsx +0 -17
  230. package/src/components/link/link.test.tsx +0 -33
  231. package/src/components/link/link.tsx +0 -27
  232. package/src/components/link-button.tsx +0 -12
  233. package/src/components/loading-overlay/index.ts +0 -1
  234. package/src/components/loading-overlay/loading-overlay.recipe.ts +0 -61
  235. package/src/components/loading-overlay/loading-overlay.stories.tsx +0 -68
  236. package/src/components/loading-overlay/loading-overlay.tsx +0 -54
  237. package/src/components/loading-overlay/namespace.ts +0 -7
  238. package/src/components/menu.tsx +0 -108
  239. package/src/components/native-select.tsx +0 -57
  240. package/src/components/navbar/index.ts +0 -1
  241. package/src/components/navbar/namespace.ts +0 -9
  242. package/src/components/navbar/navbar.recipe.ts +0 -109
  243. package/src/components/navbar/navbar.stories.tsx +0 -435
  244. package/src/components/navbar/navbar.test.tsx +0 -49
  245. package/src/components/navbar/navbar.tsx +0 -39
  246. package/src/components/number-input/index.ts +0 -2
  247. package/src/components/number-input/number-input.tsx +0 -41
  248. package/src/components/pagination.tsx +0 -207
  249. package/src/components/password-input/index.ts +0 -2
  250. package/src/components/password-input/password-input.tsx +0 -98
  251. package/src/components/persona/index.ts +0 -2
  252. package/src/components/persona/namespace.ts +0 -18
  253. package/src/components/persona/persona-primitive.tsx +0 -220
  254. package/src/components/persona/persona.recipe.ts +0 -94
  255. package/src/components/persona/persona.stories.tsx +0 -101
  256. package/src/components/persona/persona.tsx +0 -143
  257. package/src/components/pin-input/index.ts +0 -2
  258. package/src/components/pin-input/pin-input.tsx +0 -36
  259. package/src/components/popover.tsx +0 -58
  260. package/src/components/progress-circle.tsx +0 -37
  261. package/src/components/progress.tsx +0 -40
  262. package/src/components/prose.tsx +0 -264
  263. package/src/components/provider.tsx +0 -12
  264. package/src/components/radio/index.ts +0 -2
  265. package/src/components/radio/radio.tsx +0 -27
  266. package/src/components/radio-card.tsx +0 -57
  267. package/src/components/radio.tsx +0 -24
  268. package/src/components/rating.tsx +0 -27
  269. package/src/components/search-input/index.ts +0 -2
  270. package/src/components/search-input/search-input.stories.tsx +0 -63
  271. package/src/components/search-input/search-input.tsx +0 -134
  272. package/src/components/segmented-control.tsx +0 -47
  273. package/src/components/select/index.ts +0 -1
  274. package/src/components/select/namespace.ts +0 -18
  275. package/src/components/select/select.tsx +0 -135
  276. package/src/components/sidebar/index.ts +0 -7
  277. package/src/components/sidebar/namespace.ts +0 -27
  278. package/src/components/sidebar/sidebar-item.recipe.ts +0 -65
  279. package/src/components/sidebar/sidebar.recipe.ts +0 -237
  280. package/src/components/sidebar/sidebar.stories.tsx +0 -903
  281. package/src/components/sidebar/sidebar.tsx +0 -204
  282. package/src/components/skeleton.tsx +0 -44
  283. package/src/components/slider.tsx +0 -53
  284. package/src/components/spinner/index.ts +0 -2
  285. package/src/components/spinner/spinner.stories.tsx +0 -19
  286. package/src/components/spinner/spinner.tsx +0 -21
  287. package/src/components/stat.tsx +0 -75
  288. package/src/components/status.tsx +0 -29
  289. package/src/components/stepper-input.tsx +0 -49
  290. package/src/components/steps/index.ts +0 -1
  291. package/src/components/steps/namespace.ts +0 -16
  292. package/src/components/steps/steps.tsx +0 -82
  293. package/src/components/switch/index.ts +0 -3
  294. package/src/components/switch/switch.tsx +0 -39
  295. package/src/components/tag.tsx +0 -39
  296. package/src/components/timeline.tsx +0 -17
  297. package/src/components/toaster.tsx +0 -43
  298. package/src/components/toggle-tip.tsx +0 -62
  299. package/src/components/tooltip.tsx +0 -46
  300. package/src/index.ts +0 -7
  301. package/src/preset.ts +0 -9
  302. package/src/provider/index.ts +0 -4
  303. package/src/provider/sui-provider.tsx +0 -34
  304. package/src/provider/use-link.test.tsx +0 -60
  305. package/src/provider/use-link.tsx +0 -13
  306. package/src/theme/animation-styles.ts +0 -53
  307. package/src/theme/breakpoints.ts +0 -11
  308. package/src/theme/conditions.ts +0 -26
  309. package/src/theme/fluid-font-sizes.ts +0 -65
  310. package/src/theme/global-css.ts +0 -94
  311. package/src/theme/index.ts +0 -72
  312. package/src/theme/layer-styles.ts +0 -116
  313. package/src/theme/recipes/chakra/accordion.ts +0 -145
  314. package/src/theme/recipes/chakra/action-bar.ts +0 -62
  315. package/src/theme/recipes/chakra/alert.ts +0 -157
  316. package/src/theme/recipes/chakra/avatar.ts +0 -141
  317. package/src/theme/recipes/chakra/badge.ts +0 -67
  318. package/src/theme/recipes/chakra/blockquote.ts +0 -83
  319. package/src/theme/recipes/chakra/breadcrumb.ts +0 -94
  320. package/src/theme/recipes/chakra/card.ts +0 -99
  321. package/src/theme/recipes/chakra/checkbox-card.ts +0 -212
  322. package/src/theme/recipes/chakra/checkbox.ts +0 -70
  323. package/src/theme/recipes/chakra/checkmark.ts +0 -83
  324. package/src/theme/recipes/chakra/code.ts +0 -17
  325. package/src/theme/recipes/chakra/collapsible.ts +0 -20
  326. package/src/theme/recipes/chakra/container.ts +0 -26
  327. package/src/theme/recipes/chakra/data-list.ts +0 -80
  328. package/src/theme/recipes/chakra/dialog.ts +0 -225
  329. package/src/theme/recipes/chakra/drawer.ts +0 -201
  330. package/src/theme/recipes/chakra/editable.ts +0 -88
  331. package/src/theme/recipes/chakra/empty-state.ts +0 -88
  332. package/src/theme/recipes/chakra/field.ts +0 -68
  333. package/src/theme/recipes/chakra/fieldset.ts +0 -62
  334. package/src/theme/recipes/chakra/file-upload.ts +0 -96
  335. package/src/theme/recipes/chakra/heading.ts +0 -27
  336. package/src/theme/recipes/chakra/hover-card.ts +0 -68
  337. package/src/theme/recipes/chakra/icon.ts +0 -30
  338. package/src/theme/recipes/chakra/input-addon.ts +0 -40
  339. package/src/theme/recipes/chakra/input.ts +0 -96
  340. package/src/theme/recipes/chakra/kbd.ts +0 -60
  341. package/src/theme/recipes/chakra/link.ts +0 -37
  342. package/src/theme/recipes/chakra/list.ts +0 -67
  343. package/src/theme/recipes/chakra/mark.ts +0 -27
  344. package/src/theme/recipes/chakra/menu.ts +0 -124
  345. package/src/theme/recipes/chakra/native-select.ts +0 -140
  346. package/src/theme/recipes/chakra/number-input.ts +0 -115
  347. package/src/theme/recipes/chakra/pin-input.ts +0 -27
  348. package/src/theme/recipes/chakra/popover.ts +0 -86
  349. package/src/theme/recipes/chakra/progress-circle.ts +0 -94
  350. package/src/theme/recipes/chakra/progress.ts +0 -127
  351. package/src/theme/recipes/chakra/radio-card.ts +0 -220
  352. package/src/theme/recipes/chakra/radio-group.ts +0 -72
  353. package/src/theme/recipes/chakra/radiomark.ts +0 -107
  354. package/src/theme/recipes/chakra/rating-group.ts +0 -94
  355. package/src/theme/recipes/chakra/segment-group.ts +0 -117
  356. package/src/theme/recipes/chakra/select.ts +0 -282
  357. package/src/theme/recipes/chakra/separator.ts +0 -51
  358. package/src/theme/recipes/chakra/skeleton.ts +0 -53
  359. package/src/theme/recipes/chakra/skip-nav-link.ts +0 -34
  360. package/src/theme/recipes/chakra/slider.ts +0 -178
  361. package/src/theme/recipes/chakra/spinner.ts +0 -32
  362. package/src/theme/recipes/chakra/stat.ts +0 -79
  363. package/src/theme/recipes/chakra/status.ts +0 -48
  364. package/src/theme/recipes/chakra/steps.ts +0 -218
  365. package/src/theme/recipes/chakra/switch.ts +0 -167
  366. package/src/theme/recipes/chakra/table.ts +0 -172
  367. package/src/theme/recipes/chakra/tabs.ts +0 -280
  368. package/src/theme/recipes/chakra/tag.ts +0 -131
  369. package/src/theme/recipes/chakra/textarea.ts +0 -88
  370. package/src/theme/recipes/chakra/timeline.ts +0 -138
  371. package/src/theme/recipes/chakra/toast.ts +0 -96
  372. package/src/theme/recipes/chakra/tooltip.ts +0 -40
  373. package/src/theme/recipes.ts +0 -46
  374. package/src/theme/semantic-tokens/colors.ts +0 -403
  375. package/src/theme/semantic-tokens/radii.ts +0 -7
  376. package/src/theme/semantic-tokens/shadows.ts +0 -52
  377. package/src/theme/slot-recipes.ts +0 -104
  378. package/src/theme/text-styles.ts +0 -39
  379. package/src/theme/tokens/animations.ts +0 -8
  380. package/src/theme/tokens/aspect-ratios.ts +0 -10
  381. package/src/theme/tokens/blurs.ts +0 -12
  382. package/src/theme/tokens/borders.ts +0 -9
  383. package/src/theme/tokens/colors.ts +0 -177
  384. package/src/theme/tokens/cursor.ts +0 -12
  385. package/src/theme/tokens/durations.ts +0 -11
  386. package/src/theme/tokens/easings.ts +0 -10
  387. package/src/theme/tokens/font-sizes.ts +0 -20
  388. package/src/theme/tokens/font-weights.ts +0 -13
  389. package/src/theme/tokens/fonts.ts +0 -15
  390. package/src/theme/tokens/keyframes.ts +0 -173
  391. package/src/theme/tokens/letter-spacing.ts +0 -9
  392. package/src/theme/tokens/line-heights.ts +0 -19
  393. package/src/theme/tokens/radius.ts +0 -18
  394. package/src/theme/tokens/sizes.ts +0 -71
  395. package/src/theme/tokens/spacing.ts +0 -38
  396. package/src/theme/tokens/z-indices.ts +0 -34
  397. package/src/theme/utils.ts +0 -46
@@ -0,0 +1,113 @@
1
+ import * as react from 'react';
2
+ import react__default from 'react';
3
+ import { HTMLChakraProps, SlotRecipeProps, AvatarRootProps, ImageProps } from '@chakra-ui/react';
4
+
5
+ type Presence = 'online' | 'offline' | 'busy' | 'dnd' | 'away';
6
+ interface PresenceConfig {
7
+ label: string;
8
+ color: string;
9
+ }
10
+ type PresenceOptions<P extends string = Presence> = Record<P, PresenceConfig>;
11
+ /**
12
+ * The presence configuration object.
13
+ *
14
+ * Default presence values: online, offline, busy, dnd, away
15
+ *
16
+ * You can overwrite colors in the theme semantic tokens.
17
+ * theme.semanticTokens.colors['presence.online'] = 'cyan.500'
18
+ *
19
+ * Or add a custom presence value
20
+ * theme.semanticTokens.colors['presence.vacay'] = 'blue.500'
21
+ *
22
+ * @see Docs https://saas-ui.dev/docs/components/data-display/persona
23
+ */
24
+ declare const defaultPresenceOptions: PresenceOptions;
25
+
26
+ interface PersonaRootProps extends HTMLChakraProps<'div'>, SlotRecipeProps<'suiPersona'> {
27
+ /**
28
+ * Indicates that a person is out of office. Changes the presence badge style.
29
+ */
30
+ outOfOffice?: boolean;
31
+ /**
32
+ * The presence status of the person
33
+ */
34
+ presence?: Presence;
35
+ }
36
+ interface PersonaAvatarOptions {
37
+ /**
38
+ * The name of the person in the avatar.
39
+ *
40
+ * - if `src` has loaded, the name will be used as the `alt` attribute of the `img`
41
+ * - If `src` is not loaded, the name will be used to create the initials
42
+ */
43
+ name?: string;
44
+ }
45
+ interface PersonaAvatarProps$1 extends PersonaAvatarOptions, AvatarRootProps {
46
+ src?: string;
47
+ srcSet?: string;
48
+ loading?: ImageProps['loading'];
49
+ icon?: react__default.ReactElement;
50
+ fallback?: react__default.ReactNode;
51
+ getInitials?: (name?: string | null) => string | null;
52
+ }
53
+
54
+ interface PersonaOptions {
55
+ /**
56
+ * The name of the person in the avatar.
57
+ *
58
+ * - if `src` has loaded, the name will be used as the `alt` attribute of the `img`
59
+ * - If `src` is not loaded, the name will be used to create the initials
60
+ */
61
+ name?: string;
62
+ /**
63
+ * The presence status of the person
64
+ *
65
+ * If set will add an AvatarBadge with color configured in `Presence`
66
+ * Default presence options:
67
+ * - online
68
+ * - offline
69
+ * - busy
70
+ * - dnd
71
+ * - away
72
+ */
73
+ presence?: Presence;
74
+ /**
75
+ * The icon shown in the AvatarBadge
76
+ */
77
+ presenceIcon?: react.ReactNode;
78
+ /**
79
+ * Indicates that a person is out of office. Changes the presence badge style.
80
+ */
81
+ isOutOfOffice?: boolean;
82
+ /**
83
+ * Primary label of the persona, defaults to the name
84
+ */
85
+ label?: react.ReactNode;
86
+ /**
87
+ * Secondary label, usually the role of the person
88
+ * Only visible from md size and up.
89
+ */
90
+ secondaryLabel?: react.ReactNode;
91
+ /**
92
+ * Tertiary label, usually the status of the person.
93
+ * Only visible from lg size and up.
94
+ */
95
+ tertiaryLabel?: react.ReactNode;
96
+ /**
97
+ * Hide the persona details next to the avatar.
98
+ */
99
+ hideDetails?: boolean;
100
+ }
101
+ interface PersonaProps extends PersonaOptions, PersonaAvatarProps$1, PersonaRootProps {
102
+ }
103
+ /**
104
+ * The wrapper component that handles default composition.
105
+ *
106
+ * @see Docs https://saas-ui.dev/docs/components/data-display/persona
107
+ */
108
+ declare const Persona: react.ForwardRefExoticComponent<PersonaProps & react.RefAttributes<HTMLDivElement>>;
109
+ interface PersonaAvatarProps extends Omit<PersonaProps, 'hideDetails' | 'label' | 'secondaryLabel' | 'tertiaryLabel' | 'children'> {
110
+ }
111
+ declare const PersonaAvatar: react.ForwardRefExoticComponent<PersonaAvatarProps & react.RefAttributes<HTMLDivElement>>;
112
+
113
+ export { Persona, PersonaAvatar, type PersonaAvatarProps, type PersonaProps, type Presence, type PresenceConfig, defaultPresenceOptions };
@@ -0,0 +1,12 @@
1
+ 'use client'
2
+ import {
3
+ Persona,
4
+ PersonaAvatar,
5
+ defaultPresenceOptions
6
+ } from "../../chunk-M7FOBCOV.js";
7
+ import "../../chunk-RTMS5TJN.js";
8
+ export {
9
+ Persona,
10
+ PersonaAvatar,
11
+ defaultPresenceOptions
12
+ };
@@ -0,0 +1,51 @@
1
+ 'use client'
2
+ "use strict";
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+
21
+ // src/components/pin-input/index.ts
22
+ var pin_input_exports = {};
23
+ __export(pin_input_exports, {
24
+ PinInput: () => PinInput
25
+ });
26
+ module.exports = __toCommonJS(pin_input_exports);
27
+
28
+ // src/components/pin-input/pin-input.tsx
29
+ var import_react = require("react");
30
+ var import_react2 = require("@chakra-ui/react");
31
+ var import_jsx_runtime = require("react/jsx-runtime");
32
+ var PinInput = (0, import_react.forwardRef)(
33
+ function PinInput2(props, ref) {
34
+ const {
35
+ pinLength = 4,
36
+ inputProps,
37
+ rootRef,
38
+ attached,
39
+ gap = attached ? 0 : 2,
40
+ ...rest
41
+ } = props;
42
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react2.PinInput.Root, { ref: rootRef, ...rest, children: [
43
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.PinInput.HiddenInput, { ref, ...inputProps }),
44
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.PinInput.Control, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.Group, { attached, gap, children: Array.from({ length: pinLength }).map((_, index) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.PinInput.Input, { index }, index)) }) })
45
+ ] });
46
+ }
47
+ );
48
+ // Annotate the CommonJS export names for ESM import in node:
49
+ 0 && (module.exports = {
50
+ PinInput
51
+ });
@@ -0,0 +1,12 @@
1
+ import * as react from 'react';
2
+ import { PinInput as PinInput$1 } from '@chakra-ui/react';
3
+
4
+ interface PinInputProps extends PinInput$1.RootProps {
5
+ rootRef?: React.Ref<HTMLDivElement>;
6
+ pinLength?: number;
7
+ inputProps?: React.InputHTMLAttributes<HTMLInputElement>;
8
+ attached?: boolean;
9
+ }
10
+ declare const PinInput: react.ForwardRefExoticComponent<PinInputProps & react.RefAttributes<HTMLInputElement>>;
11
+
12
+ export { PinInput, type PinInputProps };
@@ -0,0 +1,12 @@
1
+ import * as react from 'react';
2
+ import { PinInput as PinInput$1 } from '@chakra-ui/react';
3
+
4
+ interface PinInputProps extends PinInput$1.RootProps {
5
+ rootRef?: React.Ref<HTMLDivElement>;
6
+ pinLength?: number;
7
+ inputProps?: React.InputHTMLAttributes<HTMLInputElement>;
8
+ attached?: boolean;
9
+ }
10
+ declare const PinInput: react.ForwardRefExoticComponent<PinInputProps & react.RefAttributes<HTMLInputElement>>;
11
+
12
+ export { PinInput, type PinInputProps };
@@ -0,0 +1,8 @@
1
+ 'use client'
2
+ import {
3
+ PinInput
4
+ } from "../../chunk-2EUACKRH.js";
5
+ import "../../chunk-RTMS5TJN.js";
6
+ export {
7
+ PinInput
8
+ };
@@ -0,0 +1,48 @@
1
+ 'use client'
2
+ "use strict";
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+
21
+ // src/components/radio/index.ts
22
+ var radio_exports = {};
23
+ __export(radio_exports, {
24
+ Radio: () => Radio,
25
+ RadioGroup: () => RadioGroup
26
+ });
27
+ module.exports = __toCommonJS(radio_exports);
28
+
29
+ // src/components/radio/radio.tsx
30
+ var import_react = require("react");
31
+ var import_react2 = require("@chakra-ui/react");
32
+ var import_jsx_runtime = require("react/jsx-runtime");
33
+ var Radio = (0, import_react.forwardRef)(
34
+ function Radio2(props, ref) {
35
+ const { children, inputProps, rootRef, ...rest } = props;
36
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react2.RadioGroup.Item, { ref: rootRef, ...rest, children: [
37
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.RadioGroup.ItemHiddenInput, { ref, ...inputProps }),
38
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.RadioGroup.ItemIndicator, {}),
39
+ children && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.RadioGroup.ItemText, { children })
40
+ ] });
41
+ }
42
+ );
43
+ var RadioGroup = import_react2.RadioGroup.Root;
44
+ // Annotate the CommonJS export names for ESM import in node:
45
+ 0 && (module.exports = {
46
+ Radio,
47
+ RadioGroup
48
+ });
@@ -0,0 +1,12 @@
1
+ import * as react from 'react';
2
+ import { RadioGroup as RadioGroup$1 } from '@chakra-ui/react';
3
+
4
+ interface RadioProps extends RadioGroup$1.ItemProps {
5
+ rootRef?: React.Ref<HTMLDivElement>;
6
+ inputProps?: React.InputHTMLAttributes<HTMLInputElement>;
7
+ }
8
+ declare const Radio: react.ForwardRefExoticComponent<RadioProps & react.RefAttributes<HTMLInputElement>>;
9
+ type RadioGroupProps = RadioGroup$1.RootProps;
10
+ declare const RadioGroup: react.ForwardRefExoticComponent<RadioGroup$1.RootProps & react.RefAttributes<HTMLDivElement>>;
11
+
12
+ export { Radio, RadioGroup, type RadioGroupProps, type RadioProps };
@@ -0,0 +1,12 @@
1
+ import * as react from 'react';
2
+ import { RadioGroup as RadioGroup$1 } from '@chakra-ui/react';
3
+
4
+ interface RadioProps extends RadioGroup$1.ItemProps {
5
+ rootRef?: React.Ref<HTMLDivElement>;
6
+ inputProps?: React.InputHTMLAttributes<HTMLInputElement>;
7
+ }
8
+ declare const Radio: react.ForwardRefExoticComponent<RadioProps & react.RefAttributes<HTMLInputElement>>;
9
+ type RadioGroupProps = RadioGroup$1.RootProps;
10
+ declare const RadioGroup: react.ForwardRefExoticComponent<RadioGroup$1.RootProps & react.RefAttributes<HTMLDivElement>>;
11
+
12
+ export { Radio, RadioGroup, type RadioGroupProps, type RadioProps };
@@ -0,0 +1,10 @@
1
+ 'use client'
2
+ import {
3
+ Radio,
4
+ RadioGroup
5
+ } from "../../chunk-WYLMBMAH.js";
6
+ import "../../chunk-RTMS5TJN.js";
7
+ export {
8
+ Radio,
9
+ RadioGroup
10
+ };
@@ -0,0 +1,244 @@
1
+ 'use client'
2
+ "use strict";
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from))
16
+ if (!__hasOwnProp.call(to, key) && key !== except)
17
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
+ }
19
+ return to;
20
+ };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
+
31
+ // src/components/search-input/index.ts
32
+ var search_input_exports = {};
33
+ __export(search_input_exports, {
34
+ SearchInput: () => SearchInput
35
+ });
36
+ module.exports = __toCommonJS(search_input_exports);
37
+
38
+ // src/components/search-input/search-input.tsx
39
+ var import_react2 = __toESM(require("react"), 1);
40
+ var import_react3 = require("@chakra-ui/react");
41
+ var import_utils = require("@saas-ui/core/utils");
42
+
43
+ // src/components/icons/create-icon.tsx
44
+ var import_react = require("@chakra-ui/react");
45
+ var createIcon = (props) => {
46
+ return (0, import_react.createIcon)({
47
+ viewBox: "0 0 24 24",
48
+ defaultProps: {
49
+ fill: "none",
50
+ stroke: "currentColor",
51
+ strokeWidth: "2",
52
+ strokeLinecap: "round",
53
+ strokeLinejoin: "round"
54
+ },
55
+ ...props
56
+ });
57
+ };
58
+
59
+ // src/components/icons/icons.tsx
60
+ var import_jsx_runtime = require("react/jsx-runtime");
61
+ var ChevronUpIcon = createIcon({
62
+ displayName: "ChevronUpIcon",
63
+ path: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("polyline", { points: "18 15 12 9 6 15" })
64
+ });
65
+ var ChevronDownIcon = createIcon({
66
+ displayName: "ChevronDownIcon",
67
+ path: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("polyline", { points: "6 9 12 15 18 9" })
68
+ });
69
+ var ChevronLeftIcon = createIcon({
70
+ displayName: "ChevronLeftIcon",
71
+ path: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("polyline", { points: "15 18 9 12 15 6" })
72
+ });
73
+ var ChevronRightIcon = createIcon({
74
+ displayName: "ChevronRightIcon",
75
+ path: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("polyline", { points: "9 18 15 12 9 6" })
76
+ });
77
+ var HamburgerIcon = createIcon({
78
+ displayName: "ChevronDownIcon",
79
+ path: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("g", { fill: "none", children: [
80
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("line", { x1: "3", y1: "12", x2: "21", y2: "12" }),
81
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("line", { x1: "3", y1: "6", x2: "21", y2: "6" }),
82
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("line", { x1: "3", y1: "18", x2: "21", y2: "18" })
83
+ ] })
84
+ });
85
+ var CloseIcon = createIcon({
86
+ displayName: "CloseIcon",
87
+ path: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("g", { children: [
88
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("line", { x1: "18", y1: "6", x2: "6", y2: "18" }),
89
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("line", { x1: "6", y1: "6", x2: "18", y2: "18" })
90
+ ] })
91
+ });
92
+ var FilterIcon = createIcon({
93
+ displayName: "FilterIcon",
94
+ path: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("polygon", { points: "22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3" })
95
+ });
96
+ var CalendarIcon = createIcon({
97
+ displayName: "CalendarIcon",
98
+ path: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("g", { children: [
99
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("rect", { x: "3", y: "4", width: "18", height: "18", rx: "2", ry: "2" }),
100
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("line", { x1: "16", y1: "2", x2: "16", y2: "6" }),
101
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("line", { x1: "8", y1: "2", x2: "8", y2: "6" }),
102
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("line", { x1: "3", y1: "10", x2: "21", y2: "10" })
103
+ ] })
104
+ });
105
+ var PlusIcon = createIcon({
106
+ displayName: "PlusIcon",
107
+ path: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("g", { children: [
108
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("line", { x1: "12", y1: "5", x2: "12", y2: "19" }),
109
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("line", { x1: "5", y1: "12", x2: "19", y2: "12" })
110
+ ] })
111
+ });
112
+ var MinusIcon = createIcon({
113
+ displayName: "MinusIcon",
114
+ path: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("g", { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("line", { x1: "5", y1: "12", x2: "19", y2: "12" }) })
115
+ });
116
+ var ViewOffIcon = createIcon({
117
+ displayName: "ViewOffIcon",
118
+ path: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("g", { children: [
119
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24" }),
120
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("line", { x1: "1", y1: "1", x2: "23", y2: "23" })
121
+ ] })
122
+ });
123
+ var ViewIcon = createIcon({
124
+ displayName: "ViewOffIcon",
125
+ path: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("g", { children: [
126
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z" }),
127
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("circle", { cx: "12", cy: "12", r: "3" })
128
+ ] })
129
+ });
130
+ var SearchIcon = createIcon({
131
+ displayName: "SearchIcon",
132
+ path: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("g", { children: [
133
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("circle", { cx: "11", cy: "11", r: "8" }),
134
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("line", { x1: "21", y1: "21", x2: "16.65", y2: "16.65" })
135
+ ] })
136
+ });
137
+ var CheckIcon = createIcon({
138
+ displayName: "CheckIcon",
139
+ path: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("g", { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("polyline", { points: "20 6 9 17 4 12" }) })
140
+ });
141
+
142
+ // src/components/search-input/search-input.tsx
143
+ var import_jsx_runtime2 = require("react/jsx-runtime");
144
+ var SearchInput = (0, import_react2.forwardRef)(
145
+ (props, ref) => {
146
+ const {
147
+ placeholder = "Search",
148
+ value: valueProp,
149
+ defaultValue: defaultValueProp,
150
+ size,
151
+ variant,
152
+ width = "full",
153
+ icon = /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(SearchIcon, {}),
154
+ resetIcon,
155
+ endElement: endElementProp,
156
+ onChange: onChangeProp,
157
+ onReset: onResetProp,
158
+ onKeyDown: onKeyDownProp,
159
+ disabled,
160
+ ...inputProps
161
+ } = props;
162
+ const inputRef = import_react2.default.useRef(null);
163
+ const [value, setValue] = (0, import_react3.useControllableState)({
164
+ value: valueProp,
165
+ defaultValue: defaultValueProp
166
+ });
167
+ const onChange = import_react2.default.useCallback(
168
+ (e) => {
169
+ setValue(e.target.value);
170
+ },
171
+ [setValue]
172
+ );
173
+ const onKeyDown = import_react2.default.useCallback(
174
+ (event) => {
175
+ if (event.key === "Escape") {
176
+ setValue("");
177
+ onReset();
178
+ }
179
+ },
180
+ [onResetProp, setValue]
181
+ );
182
+ const onReset = () => {
183
+ var _a;
184
+ setValue("");
185
+ onResetProp == null ? void 0 : onResetProp();
186
+ (_a = inputRef.current) == null ? void 0 : _a.focus();
187
+ };
188
+ const showReset = value && !props.disabled;
189
+ const endElement = showReset ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(SearchInputResetButton, { size, children: resetIcon }) : endElementProp;
190
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_react3.Group, { width, children: [
191
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
192
+ import_react3.InputElement,
193
+ {
194
+ placement: "start",
195
+ px: "0",
196
+ aspectRatio: "9/10",
197
+ fontSize: size,
198
+ children: icon
199
+ }
200
+ ),
201
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
202
+ import_react3.Input,
203
+ {
204
+ type: "text",
205
+ placeholder,
206
+ variant,
207
+ size,
208
+ value,
209
+ disabled,
210
+ ref: (0, import_react3.mergeRefs)(ref, inputRef),
211
+ onChange: (0, import_utils.callAll)(onChange, onChangeProp),
212
+ onKeyDown: (0, import_utils.callAll)(onKeyDown, onKeyDownProp),
213
+ ps: "calc(var(--input-height) - var(--input-height) / 10)",
214
+ pe: "calc(var(--input-height) - var(--input-height) / 10)",
215
+ ...inputProps
216
+ }
217
+ ),
218
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react3.InputElement, { placement: "end", children: endElement })
219
+ ] });
220
+ }
221
+ );
222
+ var SearchInputResetButton = (0, import_react2.forwardRef)(
223
+ (props, ref) => {
224
+ const { children = /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(CloseIcon, {}), ...rest } = props;
225
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
226
+ import_react3.IconButton,
227
+ {
228
+ ref,
229
+ variant: "ghost",
230
+ "aria-label": "Reset search",
231
+ me: "-2",
232
+ aspectRatio: "square",
233
+ height: "calc(100% - {spacing.2})",
234
+ ...rest,
235
+ children
236
+ }
237
+ );
238
+ }
239
+ );
240
+ SearchInput.displayName = "SearchInput";
241
+ // Annotate the CommonJS export names for ESM import in node:
242
+ 0 && (module.exports = {
243
+ SearchInput
244
+ });
@@ -0,0 +1,15 @@
1
+ import react__default from 'react';
2
+ import { InputProps } from '@chakra-ui/react';
3
+
4
+ interface SearchInputProps extends InputProps {
5
+ value?: string;
6
+ defaultValue?: string;
7
+ placeholder?: string;
8
+ icon?: react__default.ReactElement;
9
+ resetIcon?: react__default.ReactElement;
10
+ endElement?: react__default.ReactElement;
11
+ onReset?: () => void;
12
+ }
13
+ declare const SearchInput: react__default.ForwardRefExoticComponent<SearchInputProps & react__default.RefAttributes<HTMLInputElement>>;
14
+
15
+ export { SearchInput, type SearchInputProps };
@@ -0,0 +1,15 @@
1
+ import react__default from 'react';
2
+ import { InputProps } from '@chakra-ui/react';
3
+
4
+ interface SearchInputProps extends InputProps {
5
+ value?: string;
6
+ defaultValue?: string;
7
+ placeholder?: string;
8
+ icon?: react__default.ReactElement;
9
+ resetIcon?: react__default.ReactElement;
10
+ endElement?: react__default.ReactElement;
11
+ onReset?: () => void;
12
+ }
13
+ declare const SearchInput: react__default.ForwardRefExoticComponent<SearchInputProps & react__default.RefAttributes<HTMLInputElement>>;
14
+
15
+ export { SearchInput, type SearchInputProps };
@@ -0,0 +1,10 @@
1
+ 'use client'
2
+ import {
3
+ SearchInput
4
+ } from "../../chunk-LIYUBUOP.js";
5
+ import "../../chunk-KTLWEUNW.js";
6
+ import "../../chunk-VDXTEASE.js";
7
+ import "../../chunk-RTMS5TJN.js";
8
+ export {
9
+ SearchInput
10
+ };
@@ -0,0 +1,60 @@
1
+ 'use client'
2
+ "use strict";
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+
21
+ // src/components/segmented-control/index.ts
22
+ var segmented_control_exports = {};
23
+ __export(segmented_control_exports, {
24
+ SegmentedControl: () => SegmentedControl
25
+ });
26
+ module.exports = __toCommonJS(segmented_control_exports);
27
+
28
+ // src/components/segmented-control/segmented-control.tsx
29
+ var import_react = require("react");
30
+ var import_react2 = require("@chakra-ui/react");
31
+ var import_jsx_runtime = require("react/jsx-runtime");
32
+ function normalize(items) {
33
+ return items.map((item) => {
34
+ if (typeof item === "string") return { value: item, label: item };
35
+ return item;
36
+ });
37
+ }
38
+ var SegmentedControl = (0, import_react.forwardRef)(function SegmentedControl2(props, ref) {
39
+ const { items, ...rest } = props;
40
+ const data = (0, import_react.useMemo)(() => normalize(items), [items]);
41
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react2.SegmentGroup.Root, { ref, ...rest, children: [
42
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.SegmentGroup.Indicator, {}),
43
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.For, { each: data, children: (item) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
44
+ import_react2.SegmentGroup.Item,
45
+ {
46
+ value: item.value,
47
+ disabled: item.disabled,
48
+ children: [
49
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.SegmentGroup.ItemText, { children: item.label }),
50
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.SegmentGroup.ItemHiddenInput, {})
51
+ ]
52
+ },
53
+ item.value
54
+ ) })
55
+ ] });
56
+ });
57
+ // Annotate the CommonJS export names for ESM import in node:
58
+ 0 && (module.exports = {
59
+ SegmentedControl
60
+ });
@@ -0,0 +1,14 @@
1
+ import * as react from 'react';
2
+ import { SegmentGroup } from '@chakra-ui/react';
3
+
4
+ interface Item {
5
+ value: string;
6
+ label: React.ReactNode;
7
+ disabled?: boolean;
8
+ }
9
+ interface SegmentedControlProps extends SegmentGroup.RootProps {
10
+ items: Array<string | Item>;
11
+ }
12
+ declare const SegmentedControl: react.ForwardRefExoticComponent<SegmentedControlProps & react.RefAttributes<HTMLDivElement>>;
13
+
14
+ export { SegmentedControl, type SegmentedControlProps };