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

Sign up to get free protection for your applications and to get access to all the features.
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 };