@ifhover/leaf-ui 0.5.0 → 0.6.0

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 (2021) hide show
  1. package/README.md +10 -7
  2. package/THIRD_PARTY.md +2 -3
  3. package/dist/cjs/alert/alert.cjs +4 -2
  4. package/dist/cjs/alert/alert.cjs.map +1 -1
  5. package/dist/cjs/alert/alert.d.cts +1 -1
  6. package/dist/cjs/alert/alert.d.cts.map +1 -1
  7. package/dist/cjs/anchor/anchor.cjs +5 -2
  8. package/dist/cjs/anchor/anchor.cjs.map +1 -1
  9. package/dist/cjs/anchor/anchor.d.cts +2 -2
  10. package/dist/cjs/anchor/anchor.d.cts.map +1 -1
  11. package/dist/cjs/anchor/index.cjs +13 -32
  12. package/dist/cjs/anchor/index.cjs.map +1 -1
  13. package/dist/cjs/anchor/index.d.cts +2 -1
  14. package/dist/cjs/anchor/index.d.cts.map +1 -1
  15. package/dist/cjs/appbar/appbar.cjs +7 -3
  16. package/dist/cjs/appbar/appbar.cjs.map +1 -1
  17. package/dist/cjs/appbar/appbar.d.cts +1 -1
  18. package/dist/cjs/appbar/appbar.d.cts.map +1 -1
  19. package/dist/cjs/appbar/index.cjs +16 -32
  20. package/dist/cjs/appbar/index.cjs.map +1 -1
  21. package/dist/cjs/appbar/index.d.cts +2 -1
  22. package/dist/cjs/appbar/index.d.cts.map +1 -1
  23. package/dist/cjs/autocomplete/autocomplete.cjs +35 -16
  24. package/dist/cjs/autocomplete/autocomplete.cjs.map +1 -1
  25. package/dist/cjs/autocomplete/autocomplete.d.cts.map +1 -1
  26. package/dist/cjs/autocomplete/index.cjs +10 -32
  27. package/dist/cjs/autocomplete/index.cjs.map +1 -1
  28. package/dist/cjs/autocomplete/index.d.cts +2 -1
  29. package/dist/cjs/autocomplete/index.d.cts.map +1 -1
  30. package/dist/cjs/avatar/avatar.cjs +14 -4
  31. package/dist/cjs/avatar/avatar.cjs.map +1 -1
  32. package/dist/cjs/avatar/avatar.d.cts +2 -1
  33. package/dist/cjs/avatar/avatar.d.cts.map +1 -1
  34. package/dist/cjs/avatar/group.cjs +12 -6
  35. package/dist/cjs/avatar/group.cjs.map +1 -1
  36. package/dist/cjs/avatar/group.d.cts +1 -1
  37. package/dist/cjs/avatar/group.d.cts.map +1 -1
  38. package/dist/cjs/backtop/backtop.cjs +6 -4
  39. package/dist/cjs/backtop/backtop.cjs.map +1 -1
  40. package/dist/cjs/backtop/backtop.d.cts +1 -1
  41. package/dist/cjs/backtop/backtop.d.cts.map +1 -1
  42. package/dist/cjs/badge/badge.cjs +3 -1
  43. package/dist/cjs/badge/badge.cjs.map +1 -1
  44. package/dist/cjs/badge/badge.d.cts +1 -1
  45. package/dist/cjs/badge/badge.d.cts.map +1 -1
  46. package/dist/cjs/breadcrumb/breadcrumb.cjs +13 -11
  47. package/dist/cjs/breadcrumb/breadcrumb.cjs.map +1 -1
  48. package/dist/cjs/breadcrumb/breadcrumb.d.cts +2 -2
  49. package/dist/cjs/breadcrumb/breadcrumb.d.cts.map +1 -1
  50. package/dist/cjs/browser/flex.cjs +2 -0
  51. package/dist/cjs/browser/modules/alert/alert.cjs +5 -2
  52. package/dist/cjs/browser/modules/alert/alert.cjs.map +1 -1
  53. package/dist/cjs/browser/modules/anchor/anchor.cjs +6 -2
  54. package/dist/cjs/browser/modules/anchor/anchor.cjs.map +1 -1
  55. package/dist/cjs/browser/modules/anchor/index.cjs +13 -32
  56. package/dist/cjs/browser/modules/anchor/index.cjs.map +1 -1
  57. package/dist/cjs/browser/modules/appbar/appbar.cjs +8 -3
  58. package/dist/cjs/browser/modules/appbar/appbar.cjs.map +1 -1
  59. package/dist/cjs/browser/modules/appbar/index.cjs +16 -32
  60. package/dist/cjs/browser/modules/appbar/index.cjs.map +1 -1
  61. package/dist/cjs/browser/modules/autocomplete/autocomplete.cjs +36 -16
  62. package/dist/cjs/browser/modules/autocomplete/autocomplete.cjs.map +1 -1
  63. package/dist/cjs/browser/modules/autocomplete/index.cjs +10 -32
  64. package/dist/cjs/browser/modules/autocomplete/index.cjs.map +1 -1
  65. package/dist/cjs/browser/modules/avatar/avatar.cjs +15 -4
  66. package/dist/cjs/browser/modules/avatar/avatar.cjs.map +1 -1
  67. package/dist/cjs/browser/modules/avatar/group.cjs +13 -6
  68. package/dist/cjs/browser/modules/avatar/group.cjs.map +1 -1
  69. package/dist/cjs/browser/modules/backtop/backtop.cjs +7 -4
  70. package/dist/cjs/browser/modules/backtop/backtop.cjs.map +1 -1
  71. package/dist/cjs/browser/modules/badge/badge.cjs +4 -1
  72. package/dist/cjs/browser/modules/badge/badge.cjs.map +1 -1
  73. package/dist/cjs/browser/modules/breadcrumb/breadcrumb.cjs +14 -11
  74. package/dist/cjs/browser/modules/breadcrumb/breadcrumb.cjs.map +1 -1
  75. package/dist/cjs/browser/modules/button/button.cjs +17 -3
  76. package/dist/cjs/browser/modules/button/button.cjs.map +1 -1
  77. package/dist/cjs/browser/modules/button/group.cjs +26 -10
  78. package/dist/cjs/browser/modules/button/group.cjs.map +1 -1
  79. package/dist/cjs/browser/modules/calendar/calendar.cjs +5 -2
  80. package/dist/cjs/browser/modules/calendar/calendar.cjs.map +1 -1
  81. package/dist/cjs/browser/modules/card/card.cjs +42 -6
  82. package/dist/cjs/browser/modules/card/card.cjs.map +1 -1
  83. package/dist/cjs/browser/modules/carousel/carousel.cjs +13 -6
  84. package/dist/cjs/browser/modules/carousel/carousel.cjs.map +1 -1
  85. package/dist/cjs/browser/modules/carousel/index.cjs +10 -32
  86. package/dist/cjs/browser/modules/carousel/index.cjs.map +1 -1
  87. package/dist/cjs/browser/modules/cascader/cascader.cjs +41 -20
  88. package/dist/cjs/browser/modules/cascader/cascader.cjs.map +1 -1
  89. package/dist/cjs/browser/modules/cascader/index.cjs +10 -41
  90. package/dist/cjs/browser/modules/cascader/index.cjs.map +1 -1
  91. package/dist/cjs/browser/modules/checkbox/checkbox.cjs +16 -3
  92. package/dist/cjs/browser/modules/checkbox/checkbox.cjs.map +1 -1
  93. package/dist/cjs/browser/modules/checkbox/group.cjs +5 -2
  94. package/dist/cjs/browser/modules/checkbox/group.cjs.map +1 -1
  95. package/dist/cjs/browser/modules/checkbox/index.cjs +10 -41
  96. package/dist/cjs/browser/modules/checkbox/index.cjs.map +1 -1
  97. package/dist/cjs/browser/modules/collapse/collapse.cjs +5 -2
  98. package/dist/cjs/browser/modules/collapse/collapse.cjs.map +1 -1
  99. package/dist/cjs/browser/modules/color-recipes.cjs +5 -0
  100. package/dist/cjs/browser/modules/color-recipes.cjs.map +1 -1
  101. package/dist/cjs/browser/modules/colorpicker/colorpicker.cjs +27 -13
  102. package/dist/cjs/browser/modules/colorpicker/colorpicker.cjs.map +1 -1
  103. package/dist/cjs/browser/modules/colorpicker/gradient.cjs +36 -19
  104. package/dist/cjs/browser/modules/colorpicker/gradient.cjs.map +1 -1
  105. package/dist/cjs/browser/modules/commandpalette/commandpalette.cjs +17 -14
  106. package/dist/cjs/browser/modules/commandpalette/commandpalette.cjs.map +1 -1
  107. package/dist/cjs/browser/modules/commandpalette/index.cjs +10 -32
  108. package/dist/cjs/browser/modules/commandpalette/index.cjs.map +1 -1
  109. package/dist/cjs/browser/modules/config-provider/component-defaults.cjs +117 -0
  110. package/dist/cjs/browser/modules/config-provider/component-defaults.cjs.map +1 -0
  111. package/dist/cjs/browser/modules/{signaturepad/index.cjs → config-provider/config-context.cjs} +6 -5
  112. package/dist/cjs/browser/modules/config-provider/config-context.cjs.map +1 -0
  113. package/dist/cjs/browser/modules/config-provider/config-provider.cjs +44 -23
  114. package/dist/cjs/browser/modules/config-provider/config-provider.cjs.map +1 -1
  115. package/dist/cjs/browser/modules/config-provider/context.cjs +20 -207
  116. package/dist/cjs/browser/modules/config-provider/context.cjs.map +1 -1
  117. package/dist/cjs/browser/modules/config-provider/index.cjs +17 -42
  118. package/dist/cjs/browser/modules/config-provider/index.cjs.map +1 -1
  119. package/dist/cjs/browser/modules/confirm/confirm.cjs +10 -8
  120. package/dist/cjs/browser/modules/confirm/confirm.cjs.map +1 -1
  121. package/dist/cjs/browser/modules/confirm/provider.cjs +26 -18
  122. package/dist/cjs/browser/modules/confirm/provider.cjs.map +1 -1
  123. package/dist/cjs/browser/modules/confirm/store.cjs +6 -4
  124. package/dist/cjs/browser/modules/confirm/store.cjs.map +1 -1
  125. package/dist/cjs/browser/modules/datepicker/datepicker.cjs +8 -5
  126. package/dist/cjs/browser/modules/datepicker/datepicker.cjs.map +1 -1
  127. package/dist/cjs/browser/modules/datepicker/index.cjs +10 -32
  128. package/dist/cjs/browser/modules/datepicker/index.cjs.map +1 -1
  129. package/dist/cjs/browser/modules/datepicker/multiple.cjs +1 -0
  130. package/dist/cjs/browser/modules/datepicker/multiple.cjs.map +1 -1
  131. package/dist/cjs/browser/modules/daterangepicker/daterangepicker.cjs +29 -21
  132. package/dist/cjs/browser/modules/daterangepicker/daterangepicker.cjs.map +1 -1
  133. package/dist/cjs/browser/modules/datetimepicker/datetimepicker.cjs +24 -16
  134. package/dist/cjs/browser/modules/datetimepicker/datetimepicker.cjs.map +1 -1
  135. package/dist/cjs/browser/modules/density.cjs +13 -4
  136. package/dist/cjs/browser/modules/density.cjs.map +1 -1
  137. package/dist/cjs/browser/modules/descriptions/descriptions.cjs +8 -5
  138. package/dist/cjs/browser/modules/descriptions/descriptions.cjs.map +1 -1
  139. package/dist/cjs/browser/modules/divider/divider.cjs +4 -1
  140. package/dist/cjs/browser/modules/divider/divider.cjs.map +1 -1
  141. package/dist/cjs/browser/modules/drawer/drawer.cjs +7 -4
  142. package/dist/cjs/browser/modules/drawer/drawer.cjs.map +1 -1
  143. package/dist/cjs/browser/modules/dropdown/dropdown.cjs +17 -4
  144. package/dist/cjs/browser/modules/dropdown/dropdown.cjs.map +1 -1
  145. package/dist/cjs/browser/modules/empty/empty.cjs +5 -3
  146. package/dist/cjs/browser/modules/empty/empty.cjs.map +1 -1
  147. package/dist/cjs/browser/modules/errorboundary/errorboundary.cjs +26 -14
  148. package/dist/cjs/browser/modules/errorboundary/errorboundary.cjs.map +1 -1
  149. package/dist/cjs/browser/modules/filelist/filelist.cjs +288 -192
  150. package/dist/cjs/browser/modules/filelist/filelist.cjs.map +1 -1
  151. package/dist/cjs/browser/modules/flex/flex.cjs +76 -0
  152. package/dist/cjs/browser/modules/flex/flex.cjs.map +1 -0
  153. package/dist/cjs/browser/modules/{imagecropper → flex}/index.cjs +4 -4
  154. package/dist/cjs/browser/modules/flex/index.cjs.map +1 -0
  155. package/dist/cjs/browser/modules/floatbutton/floatbutton.cjs +23 -11
  156. package/dist/cjs/browser/modules/floatbutton/floatbutton.cjs.map +1 -1
  157. package/dist/cjs/browser/modules/floatbutton/index.cjs +16 -32
  158. package/dist/cjs/browser/modules/floatbutton/index.cjs.map +1 -1
  159. package/dist/cjs/browser/modules/form/form.cjs +15 -9
  160. package/dist/cjs/browser/modules/form/form.cjs.map +1 -1
  161. package/dist/cjs/browser/modules/form/index.cjs +16 -54
  162. package/dist/cjs/browser/modules/form/index.cjs.map +1 -1
  163. package/dist/cjs/browser/modules/form/list.cjs +4 -1
  164. package/dist/cjs/browser/modules/form/list.cjs.map +1 -1
  165. package/dist/cjs/browser/modules/grid/grid.cjs +19 -4
  166. package/dist/cjs/browser/modules/grid/grid.cjs.map +1 -1
  167. package/dist/cjs/browser/modules/image/image.cjs +26 -9
  168. package/dist/cjs/browser/modules/image/image.cjs.map +1 -1
  169. package/dist/cjs/browser/modules/image/viewer.cjs +35 -25
  170. package/dist/cjs/browser/modules/image/viewer.cjs.map +1 -1
  171. package/dist/cjs/browser/modules/index.cjs +4 -8
  172. package/dist/cjs/browser/modules/infinitescroll/infinitescroll.cjs +13 -10
  173. package/dist/cjs/browser/modules/infinitescroll/infinitescroll.cjs.map +1 -1
  174. package/dist/cjs/browser/modules/input/group.cjs +19 -8
  175. package/dist/cjs/browser/modules/input/group.cjs.map +1 -1
  176. package/dist/cjs/browser/modules/input/index.cjs +11 -43
  177. package/dist/cjs/browser/modules/input/index.cjs.map +1 -1
  178. package/dist/cjs/browser/modules/input/input.cjs +17 -5
  179. package/dist/cjs/browser/modules/input/input.cjs.map +1 -1
  180. package/dist/cjs/browser/modules/inputmask/inputmask.cjs +6 -3
  181. package/dist/cjs/browser/modules/inputmask/inputmask.cjs.map +1 -1
  182. package/dist/cjs/browser/modules/inputnumber/inputnumber.cjs +20 -7
  183. package/dist/cjs/browser/modules/inputnumber/inputnumber.cjs.map +1 -1
  184. package/dist/cjs/browser/modules/inputnumber/string.cjs +4 -3
  185. package/dist/cjs/browser/modules/inputnumber/string.cjs.map +1 -1
  186. package/dist/cjs/browser/modules/inputotp/inputotp.cjs +5 -2
  187. package/dist/cjs/browser/modules/inputotp/inputotp.cjs.map +1 -1
  188. package/dist/cjs/browser/modules/layout/layout.cjs +16 -9
  189. package/dist/cjs/browser/modules/layout/layout.cjs.map +1 -1
  190. package/dist/cjs/browser/modules/loading/loading.cjs +15 -4
  191. package/dist/cjs/browser/modules/loading/loading.cjs.map +1 -1
  192. package/dist/cjs/browser/modules/loadingbar/loadingbar.cjs +55 -9
  193. package/dist/cjs/browser/modules/loadingbar/loadingbar.cjs.map +1 -1
  194. package/dist/cjs/browser/modules/locales/en-US.cjs +1 -0
  195. package/dist/cjs/browser/modules/locales/ja-JP.cjs +1 -0
  196. package/dist/cjs/browser/modules/locales/ko-KR.cjs +1 -0
  197. package/dist/cjs/browser/modules/locales/messages.cjs +21 -0
  198. package/dist/cjs/browser/modules/locales/messages.cjs.map +1 -0
  199. package/dist/cjs/browser/modules/locales/resolve.cjs +153 -0
  200. package/dist/cjs/browser/modules/locales/resolve.cjs.map +1 -0
  201. package/dist/cjs/browser/modules/locales/types.cjs +21 -0
  202. package/dist/cjs/browser/modules/locales/types.cjs.map +1 -0
  203. package/dist/cjs/browser/modules/locales/zh-CN.cjs +1 -0
  204. package/dist/cjs/browser/modules/locales/zh-TW.cjs +1 -0
  205. package/dist/cjs/browser/modules/masonry/masonry.cjs +8 -5
  206. package/dist/cjs/browser/modules/masonry/masonry.cjs.map +1 -1
  207. package/dist/cjs/browser/modules/mentions/index.cjs +10 -32
  208. package/dist/cjs/browser/modules/mentions/index.cjs.map +1 -1
  209. package/dist/cjs/browser/modules/mentions/mentions.cjs +10 -6
  210. package/dist/cjs/browser/modules/mentions/mentions.cjs.map +1 -1
  211. package/dist/cjs/browser/modules/menu/menu.cjs +7 -4
  212. package/dist/cjs/browser/modules/menu/menu.cjs.map +1 -1
  213. package/dist/cjs/browser/modules/message/item.cjs +2 -1
  214. package/dist/cjs/browser/modules/message/item.cjs.map +1 -1
  215. package/dist/cjs/browser/modules/message/message.cjs +11 -4
  216. package/dist/cjs/browser/modules/message/message.cjs.map +1 -1
  217. package/dist/cjs/browser/modules/message/provider.cjs +9 -4
  218. package/dist/cjs/browser/modules/message/provider.cjs.map +1 -1
  219. package/dist/cjs/browser/modules/message/store.cjs +12 -6
  220. package/dist/cjs/browser/modules/message/store.cjs.map +1 -1
  221. package/dist/cjs/browser/modules/modal/modal.cjs +26 -13
  222. package/dist/cjs/browser/modules/modal/modal.cjs.map +1 -1
  223. package/dist/cjs/browser/modules/notification/notification.cjs +28 -14
  224. package/dist/cjs/browser/modules/notification/notification.cjs.map +1 -1
  225. package/dist/cjs/browser/modules/pagination/pagination.cjs +75 -26
  226. package/dist/cjs/browser/modules/pagination/pagination.cjs.map +1 -1
  227. package/dist/cjs/browser/modules/popconfirm/popconfirm.cjs +13 -10
  228. package/dist/cjs/browser/modules/popconfirm/popconfirm.cjs.map +1 -1
  229. package/dist/cjs/browser/modules/popover/popover.cjs +14 -3
  230. package/dist/cjs/browser/modules/popover/popover.cjs.map +1 -1
  231. package/dist/cjs/browser/modules/progress/progress.cjs +6 -3
  232. package/dist/cjs/browser/modules/progress/progress.cjs.map +1 -1
  233. package/dist/cjs/browser/modules/qrcode/qrcode.cjs +11 -8
  234. package/dist/cjs/browser/modules/qrcode/qrcode.cjs.map +1 -1
  235. package/dist/cjs/browser/modules/radio/index.cjs +13 -32
  236. package/dist/cjs/browser/modules/radio/index.cjs.map +1 -1
  237. package/dist/cjs/browser/modules/radio/radio.cjs +18 -4
  238. package/dist/cjs/browser/modules/radio/radio.cjs.map +1 -1
  239. package/dist/cjs/browser/modules/rate/rate.cjs +9 -6
  240. package/dist/cjs/browser/modules/rate/rate.cjs.map +1 -1
  241. package/dist/cjs/browser/modules/result/result.cjs +15 -4
  242. package/dist/cjs/browser/modules/result/result.cjs.map +1 -1
  243. package/dist/cjs/browser/modules/scrollarea/scrollarea.cjs +6 -3
  244. package/dist/cjs/browser/modules/scrollarea/scrollarea.cjs.map +1 -1
  245. package/dist/cjs/browser/modules/scrollbar/scrollbar.cjs +17 -4
  246. package/dist/cjs/browser/modules/scrollbar/scrollbar.cjs.map +1 -1
  247. package/dist/cjs/browser/modules/segmented/segmented.cjs +4 -1
  248. package/dist/cjs/browser/modules/segmented/segmented.cjs.map +1 -1
  249. package/dist/cjs/browser/modules/select/index.cjs +10 -32
  250. package/dist/cjs/browser/modules/select/index.cjs.map +1 -1
  251. package/dist/cjs/browser/modules/select/select.cjs +180 -209
  252. package/dist/cjs/browser/modules/select/select.cjs.map +1 -1
  253. package/dist/cjs/browser/modules/shared/calendar.cjs +7 -6
  254. package/dist/cjs/browser/modules/shared/calendar.cjs.map +1 -1
  255. package/dist/cjs/browser/modules/shared/date-input.cjs +6 -6
  256. package/dist/cjs/browser/modules/shared/date-input.cjs.map +1 -1
  257. package/dist/cjs/browser/modules/shared/floating-feedback.cjs +62 -0
  258. package/dist/cjs/browser/modules/shared/floating-feedback.cjs.map +1 -0
  259. package/dist/cjs/browser/modules/shared/floating.cjs +1 -0
  260. package/dist/cjs/browser/modules/shared/floating.cjs.map +1 -1
  261. package/dist/cjs/browser/modules/shared/motion.cjs +3 -3
  262. package/dist/cjs/browser/modules/shared/motion.cjs.map +1 -1
  263. package/dist/cjs/browser/modules/shared/parse-date.cjs +2 -2
  264. package/dist/cjs/browser/modules/shared/parse-date.cjs.map +1 -1
  265. package/dist/cjs/browser/modules/shared/scoped-portal.cjs +17 -2
  266. package/dist/cjs/browser/modules/shared/scoped-portal.cjs.map +1 -1
  267. package/dist/cjs/browser/modules/shared/selection-content.cjs +202 -0
  268. package/dist/cjs/browser/modules/shared/selection-content.cjs.map +1 -0
  269. package/dist/cjs/browser/modules/shared/time.cjs +16 -2
  270. package/dist/cjs/browser/modules/shared/time.cjs.map +1 -1
  271. package/dist/cjs/browser/modules/shared/use-drag-announcements.cjs +66 -0
  272. package/dist/cjs/browser/modules/shared/use-drag-announcements.cjs.map +1 -0
  273. package/dist/cjs/browser/modules/shared/use-formatted-text.cjs +118 -0
  274. package/dist/cjs/browser/modules/shared/use-formatted-text.cjs.map +1 -0
  275. package/dist/cjs/browser/modules/shared/use-text.cjs +3 -3
  276. package/dist/cjs/browser/modules/shared/use-text.cjs.map +1 -1
  277. package/dist/cjs/browser/modules/skeleton/skeleton.cjs +15 -4
  278. package/dist/cjs/browser/modules/skeleton/skeleton.cjs.map +1 -1
  279. package/dist/cjs/browser/modules/slider/slider.cjs +19 -6
  280. package/dist/cjs/browser/modules/slider/slider.cjs.map +1 -1
  281. package/dist/cjs/browser/modules/space/space.cjs +4 -1
  282. package/dist/cjs/browser/modules/space/space.cjs.map +1 -1
  283. package/dist/cjs/browser/modules/splitter/index.cjs +13 -32
  284. package/dist/cjs/browser/modules/splitter/index.cjs.map +1 -1
  285. package/dist/cjs/browser/modules/splitter/splitter.cjs +10 -3
  286. package/dist/cjs/browser/modules/splitter/splitter.cjs.map +1 -1
  287. package/dist/cjs/browser/modules/statistic/index.cjs +13 -32
  288. package/dist/cjs/browser/modules/statistic/index.cjs.map +1 -1
  289. package/dist/cjs/browser/modules/statistic/statistic.cjs +18 -6
  290. package/dist/cjs/browser/modules/statistic/statistic.cjs.map +1 -1
  291. package/dist/cjs/browser/modules/steps/steps.cjs +4 -1
  292. package/dist/cjs/browser/modules/steps/steps.cjs.map +1 -1
  293. package/dist/cjs/browser/modules/switch/index.cjs +10 -32
  294. package/dist/cjs/browser/modules/switch/index.cjs.map +1 -1
  295. package/dist/cjs/browser/modules/switch/switch.cjs +4 -1
  296. package/dist/cjs/browser/modules/switch/switch.cjs.map +1 -1
  297. package/dist/cjs/browser/modules/table/table.cjs +148 -32
  298. package/dist/cjs/browser/modules/table/table.cjs.map +1 -1
  299. package/dist/cjs/browser/modules/tabletanstack/defaults.cjs +21 -0
  300. package/dist/cjs/browser/modules/tabletanstack/defaults.cjs.map +1 -0
  301. package/dist/cjs/browser/modules/tabletanstack/reordering.cjs +19 -10
  302. package/dist/cjs/browser/modules/tabletanstack/reordering.cjs.map +1 -1
  303. package/dist/cjs/browser/modules/tabletanstack/tabletanstack.cjs +116 -69
  304. package/dist/cjs/browser/modules/tabletanstack/tabletanstack.cjs.map +1 -1
  305. package/dist/cjs/browser/modules/tabs/tabs.cjs +122 -173
  306. package/dist/cjs/browser/modules/tabs/tabs.cjs.map +1 -1
  307. package/dist/cjs/browser/modules/tag/group.cjs +6 -2
  308. package/dist/cjs/browser/modules/tag/group.cjs.map +1 -1
  309. package/dist/cjs/browser/modules/tag/tag.cjs +5 -8
  310. package/dist/cjs/browser/modules/tag/tag.cjs.map +1 -1
  311. package/dist/cjs/browser/modules/tailwind-tokens.cjs +131 -0
  312. package/dist/cjs/browser/modules/tailwind-tokens.cjs.map +1 -0
  313. package/dist/cjs/browser/modules/tailwind.cjs +62 -0
  314. package/dist/cjs/browser/modules/tailwind.cjs.map +1 -0
  315. package/dist/cjs/browser/modules/textarea/index.cjs +10 -32
  316. package/dist/cjs/browser/modules/textarea/index.cjs.map +1 -1
  317. package/dist/cjs/browser/modules/textarea/textarea.cjs +16 -3
  318. package/dist/cjs/browser/modules/textarea/textarea.cjs.map +1 -1
  319. package/dist/cjs/browser/modules/timeline/timeline.cjs +4 -1
  320. package/dist/cjs/browser/modules/timeline/timeline.cjs.map +1 -1
  321. package/dist/cjs/browser/modules/timepicker/index.cjs +10 -32
  322. package/dist/cjs/browser/modules/timepicker/index.cjs.map +1 -1
  323. package/dist/cjs/browser/modules/timepicker/time-panel.cjs +7 -6
  324. package/dist/cjs/browser/modules/timepicker/time-panel.cjs.map +1 -1
  325. package/dist/cjs/browser/modules/timepicker/timepicker.cjs +22 -13
  326. package/dist/cjs/browser/modules/timepicker/timepicker.cjs.map +1 -1
  327. package/dist/cjs/browser/modules/timerangepicker/timerangepicker.cjs +21 -14
  328. package/dist/cjs/browser/modules/timerangepicker/timerangepicker.cjs.map +1 -1
  329. package/dist/cjs/browser/modules/tooltip/tooltip.cjs +14 -3
  330. package/dist/cjs/browser/modules/tooltip/tooltip.cjs.map +1 -1
  331. package/dist/cjs/browser/modules/tour/index.cjs +10 -32
  332. package/dist/cjs/browser/modules/tour/index.cjs.map +1 -1
  333. package/dist/cjs/browser/modules/tour/tour.cjs +11 -8
  334. package/dist/cjs/browser/modules/tour/tour.cjs.map +1 -1
  335. package/dist/cjs/browser/modules/transfer/transfer.cjs +27 -21
  336. package/dist/cjs/browser/modules/transfer/transfer.cjs.map +1 -1
  337. package/dist/cjs/browser/modules/tree/drag.cjs +14 -11
  338. package/dist/cjs/browser/modules/tree/drag.cjs.map +1 -1
  339. package/dist/cjs/browser/modules/tree/tree.cjs +33 -13
  340. package/dist/cjs/browser/modules/tree/tree.cjs.map +1 -1
  341. package/dist/cjs/browser/modules/treeselect/treeselect.cjs +154 -112
  342. package/dist/cjs/browser/modules/treeselect/treeselect.cjs.map +1 -1
  343. package/dist/cjs/browser/modules/typography/index.cjs +22 -32
  344. package/dist/cjs/browser/modules/typography/index.cjs.map +1 -1
  345. package/dist/cjs/browser/modules/typography/typography.cjs +19 -12
  346. package/dist/cjs/browser/modules/typography/typography.cjs.map +1 -1
  347. package/dist/cjs/browser/modules/upload/upload.cjs +30 -21
  348. package/dist/cjs/browser/modules/upload/upload.cjs.map +1 -1
  349. package/dist/cjs/browser/modules/virtuallist/virtuallist.cjs +20 -6
  350. package/dist/cjs/browser/modules/virtuallist/virtuallist.cjs.map +1 -1
  351. package/dist/cjs/button/button.cjs +16 -3
  352. package/dist/cjs/button/button.cjs.map +1 -1
  353. package/dist/cjs/button/button.d.cts +3 -1
  354. package/dist/cjs/button/button.d.cts.map +1 -1
  355. package/dist/cjs/button/group.cjs +25 -10
  356. package/dist/cjs/button/group.cjs.map +1 -1
  357. package/dist/cjs/button/group.d.cts +4 -3
  358. package/dist/cjs/button/group.d.cts.map +1 -1
  359. package/dist/cjs/calendar/calendar.cjs +4 -2
  360. package/dist/cjs/calendar/calendar.cjs.map +1 -1
  361. package/dist/cjs/calendar/calendar.d.cts +1 -1
  362. package/dist/cjs/calendar/calendar.d.cts.map +1 -1
  363. package/dist/cjs/card/card.cjs +41 -6
  364. package/dist/cjs/card/card.cjs.map +1 -1
  365. package/dist/cjs/card/card.d.cts +9 -3
  366. package/dist/cjs/card/card.d.cts.map +1 -1
  367. package/dist/cjs/card/index.d.cts +1 -1
  368. package/dist/cjs/card/index.d.cts.map +1 -1
  369. package/dist/cjs/carousel/carousel.cjs +12 -6
  370. package/dist/cjs/carousel/carousel.cjs.map +1 -1
  371. package/dist/cjs/carousel/carousel.d.cts.map +1 -1
  372. package/dist/cjs/carousel/index.cjs +10 -32
  373. package/dist/cjs/carousel/index.cjs.map +1 -1
  374. package/dist/cjs/carousel/index.d.cts +2 -1
  375. package/dist/cjs/carousel/index.d.cts.map +1 -1
  376. package/dist/cjs/cascader/cascader.cjs +40 -20
  377. package/dist/cjs/cascader/cascader.cjs.map +1 -1
  378. package/dist/cjs/cascader/cascader.d.cts +2 -0
  379. package/dist/cjs/cascader/cascader.d.cts.map +1 -1
  380. package/dist/cjs/cascader/index.cjs +10 -41
  381. package/dist/cjs/cascader/index.cjs.map +1 -1
  382. package/dist/cjs/cascader/index.d.cts +2 -1
  383. package/dist/cjs/cascader/index.d.cts.map +1 -1
  384. package/dist/cjs/checkbox/checkbox.cjs +15 -3
  385. package/dist/cjs/checkbox/checkbox.cjs.map +1 -1
  386. package/dist/cjs/checkbox/checkbox.d.cts +1 -0
  387. package/dist/cjs/checkbox/checkbox.d.cts.map +1 -1
  388. package/dist/cjs/checkbox/group.cjs +4 -2
  389. package/dist/cjs/checkbox/group.cjs.map +1 -1
  390. package/dist/cjs/checkbox/group.d.cts +1 -1
  391. package/dist/cjs/checkbox/group.d.cts.map +1 -1
  392. package/dist/cjs/checkbox/index.cjs +10 -41
  393. package/dist/cjs/checkbox/index.cjs.map +1 -1
  394. package/dist/cjs/checkbox/index.d.cts +2 -1
  395. package/dist/cjs/checkbox/index.d.cts.map +1 -1
  396. package/dist/cjs/collapse/collapse.cjs +4 -2
  397. package/dist/cjs/collapse/collapse.cjs.map +1 -1
  398. package/dist/cjs/collapse/collapse.d.cts +1 -1
  399. package/dist/cjs/collapse/collapse.d.cts.map +1 -1
  400. package/dist/cjs/color-recipes.cjs +5 -0
  401. package/dist/cjs/color-recipes.cjs.map +1 -1
  402. package/dist/cjs/color-recipes.d.cts.map +1 -1
  403. package/dist/cjs/colorpicker/colorpicker.cjs +26 -13
  404. package/dist/cjs/colorpicker/colorpicker.cjs.map +1 -1
  405. package/dist/cjs/colorpicker/colorpicker.d.cts +1 -1
  406. package/dist/cjs/colorpicker/colorpicker.d.cts.map +1 -1
  407. package/dist/cjs/colorpicker/gradient.cjs +35 -19
  408. package/dist/cjs/colorpicker/gradient.cjs.map +1 -1
  409. package/dist/cjs/colorpicker/gradient.d.cts.map +1 -1
  410. package/dist/cjs/commandpalette/commandpalette.cjs +16 -14
  411. package/dist/cjs/commandpalette/commandpalette.cjs.map +1 -1
  412. package/dist/cjs/commandpalette/commandpalette.d.cts +1 -1
  413. package/dist/cjs/commandpalette/commandpalette.d.cts.map +1 -1
  414. package/dist/cjs/commandpalette/index.cjs +10 -32
  415. package/dist/cjs/commandpalette/index.cjs.map +1 -1
  416. package/dist/cjs/commandpalette/index.d.cts +2 -1
  417. package/dist/cjs/commandpalette/index.d.cts.map +1 -1
  418. package/dist/cjs/config-provider/component-defaults.cjs +117 -0
  419. package/dist/cjs/config-provider/component-defaults.cjs.map +1 -0
  420. package/dist/cjs/config-provider/component-defaults.d.cts +365 -0
  421. package/dist/cjs/config-provider/component-defaults.d.cts.map +1 -0
  422. package/dist/cjs/{signaturepad/index.cjs → config-provider/config-context.cjs} +6 -5
  423. package/dist/cjs/config-provider/config-context.cjs.map +1 -0
  424. package/dist/cjs/config-provider/config-context.d.cts +15 -0
  425. package/dist/cjs/config-provider/config-context.d.cts.map +1 -0
  426. package/dist/cjs/config-provider/config-provider.cjs +44 -23
  427. package/dist/cjs/config-provider/config-provider.cjs.map +1 -1
  428. package/dist/cjs/config-provider/config-provider.d.cts +13 -6
  429. package/dist/cjs/config-provider/config-provider.d.cts.map +1 -1
  430. package/dist/cjs/config-provider/context.cjs +20 -207
  431. package/dist/cjs/config-provider/context.cjs.map +1 -1
  432. package/dist/cjs/config-provider/context.d.cts +11 -368
  433. package/dist/cjs/config-provider/context.d.cts.map +1 -1
  434. package/dist/cjs/config-provider/index.cjs +17 -42
  435. package/dist/cjs/config-provider/index.cjs.map +1 -1
  436. package/dist/cjs/config-provider/index.d.cts +2 -2
  437. package/dist/cjs/config-provider/index.d.cts.map +1 -1
  438. package/dist/cjs/confirm/confirm.cjs +10 -8
  439. package/dist/cjs/confirm/confirm.cjs.map +1 -1
  440. package/dist/cjs/confirm/confirm.d.cts +1 -1
  441. package/dist/cjs/confirm/confirm.d.cts.map +1 -1
  442. package/dist/cjs/confirm/provider.cjs +26 -18
  443. package/dist/cjs/confirm/provider.cjs.map +1 -1
  444. package/dist/cjs/confirm/provider.d.cts.map +1 -1
  445. package/dist/cjs/confirm/store.cjs +6 -4
  446. package/dist/cjs/confirm/store.cjs.map +1 -1
  447. package/dist/cjs/confirm/store.d.cts +6 -4
  448. package/dist/cjs/confirm/store.d.cts.map +1 -1
  449. package/dist/cjs/datepicker/datepicker.cjs +7 -5
  450. package/dist/cjs/datepicker/datepicker.cjs.map +1 -1
  451. package/dist/cjs/datepicker/datepicker.d.cts.map +1 -1
  452. package/dist/cjs/datepicker/index.cjs +10 -32
  453. package/dist/cjs/datepicker/index.cjs.map +1 -1
  454. package/dist/cjs/datepicker/index.d.cts +2 -1
  455. package/dist/cjs/datepicker/index.d.cts.map +1 -1
  456. package/dist/cjs/daterangepicker/daterangepicker.cjs +29 -21
  457. package/dist/cjs/daterangepicker/daterangepicker.cjs.map +1 -1
  458. package/dist/cjs/daterangepicker/daterangepicker.d.cts.map +1 -1
  459. package/dist/cjs/datetimepicker/datetimepicker.cjs +24 -16
  460. package/dist/cjs/datetimepicker/datetimepicker.cjs.map +1 -1
  461. package/dist/cjs/datetimepicker/datetimepicker.d.cts.map +1 -1
  462. package/dist/cjs/density.cjs +13 -4
  463. package/dist/cjs/density.cjs.map +1 -1
  464. package/dist/cjs/density.d.cts +3 -1
  465. package/dist/cjs/density.d.cts.map +1 -1
  466. package/dist/cjs/descriptions/descriptions.cjs +7 -5
  467. package/dist/cjs/descriptions/descriptions.cjs.map +1 -1
  468. package/dist/cjs/descriptions/descriptions.d.cts +1 -1
  469. package/dist/cjs/descriptions/descriptions.d.cts.map +1 -1
  470. package/dist/cjs/divider/divider.cjs +3 -1
  471. package/dist/cjs/divider/divider.cjs.map +1 -1
  472. package/dist/cjs/divider/divider.d.cts +1 -1
  473. package/dist/cjs/divider/divider.d.cts.map +1 -1
  474. package/dist/cjs/drawer/drawer.cjs +6 -4
  475. package/dist/cjs/drawer/drawer.cjs.map +1 -1
  476. package/dist/cjs/drawer/drawer.d.cts +1 -1
  477. package/dist/cjs/drawer/drawer.d.cts.map +1 -1
  478. package/dist/cjs/dropdown/dropdown.cjs +16 -4
  479. package/dist/cjs/dropdown/dropdown.cjs.map +1 -1
  480. package/dist/cjs/dropdown/dropdown.d.cts +2 -1
  481. package/dist/cjs/dropdown/dropdown.d.cts.map +1 -1
  482. package/dist/cjs/empty/empty.cjs +5 -3
  483. package/dist/cjs/empty/empty.cjs.map +1 -1
  484. package/dist/cjs/empty/empty.d.cts +1 -1
  485. package/dist/cjs/empty/empty.d.cts.map +1 -1
  486. package/dist/cjs/errorboundary/errorboundary.cjs +25 -14
  487. package/dist/cjs/errorboundary/errorboundary.cjs.map +1 -1
  488. package/dist/cjs/errorboundary/errorboundary.d.cts +8 -2
  489. package/dist/cjs/errorboundary/errorboundary.d.cts.map +1 -1
  490. package/dist/cjs/filelist/filelist.cjs +287 -192
  491. package/dist/cjs/filelist/filelist.cjs.map +1 -1
  492. package/dist/cjs/filelist/filelist.d.cts +2 -1
  493. package/dist/cjs/filelist/filelist.d.cts.map +1 -1
  494. package/dist/cjs/flex/flex.cjs +74 -0
  495. package/dist/cjs/flex/flex.cjs.map +1 -0
  496. package/dist/cjs/flex/flex.d.cts +13 -0
  497. package/dist/cjs/flex/flex.d.cts.map +1 -0
  498. package/dist/cjs/{imagecropper → flex}/index.cjs +4 -4
  499. package/dist/cjs/flex/index.cjs.map +1 -0
  500. package/dist/cjs/flex/index.d.cts +2 -0
  501. package/dist/cjs/flex/index.d.cts.map +1 -0
  502. package/dist/cjs/floatbutton/floatbutton.cjs +22 -11
  503. package/dist/cjs/floatbutton/floatbutton.cjs.map +1 -1
  504. package/dist/cjs/floatbutton/floatbutton.d.cts +5 -3
  505. package/dist/cjs/floatbutton/floatbutton.d.cts.map +1 -1
  506. package/dist/cjs/floatbutton/index.cjs +16 -32
  507. package/dist/cjs/floatbutton/index.cjs.map +1 -1
  508. package/dist/cjs/floatbutton/index.d.cts +2 -1
  509. package/dist/cjs/floatbutton/index.d.cts.map +1 -1
  510. package/dist/cjs/form/form.cjs +14 -9
  511. package/dist/cjs/form/form.cjs.map +1 -1
  512. package/dist/cjs/form/form.d.cts +3 -3
  513. package/dist/cjs/form/form.d.cts.map +1 -1
  514. package/dist/cjs/form/index.cjs +16 -54
  515. package/dist/cjs/form/index.cjs.map +1 -1
  516. package/dist/cjs/form/index.d.cts +2 -1
  517. package/dist/cjs/form/index.d.cts.map +1 -1
  518. package/dist/cjs/form/list.cjs +3 -1
  519. package/dist/cjs/form/list.cjs.map +1 -1
  520. package/dist/cjs/form/list.d.cts +1 -1
  521. package/dist/cjs/form/list.d.cts.map +1 -1
  522. package/dist/cjs/grid/grid.cjs +18 -4
  523. package/dist/cjs/grid/grid.cjs.map +1 -1
  524. package/dist/cjs/grid/grid.d.cts +2 -1
  525. package/dist/cjs/grid/grid.d.cts.map +1 -1
  526. package/dist/cjs/image/image.cjs +25 -9
  527. package/dist/cjs/image/image.cjs.map +1 -1
  528. package/dist/cjs/image/image.d.cts +3 -2
  529. package/dist/cjs/image/image.d.cts.map +1 -1
  530. package/dist/cjs/image/viewer.cjs +34 -25
  531. package/dist/cjs/image/viewer.cjs.map +1 -1
  532. package/dist/cjs/image/viewer.d.cts.map +1 -1
  533. package/dist/cjs/index.cjs +4 -8
  534. package/dist/cjs/index.d.cts +6 -7
  535. package/dist/cjs/index.d.cts.map +1 -1
  536. package/dist/cjs/infinitescroll/infinitescroll.cjs +12 -10
  537. package/dist/cjs/infinitescroll/infinitescroll.cjs.map +1 -1
  538. package/dist/cjs/infinitescroll/infinitescroll.d.cts +1 -1
  539. package/dist/cjs/infinitescroll/infinitescroll.d.cts.map +1 -1
  540. package/dist/cjs/input/group.cjs +18 -8
  541. package/dist/cjs/input/group.cjs.map +1 -1
  542. package/dist/cjs/input/group.d.cts +1 -1
  543. package/dist/cjs/input/group.d.cts.map +1 -1
  544. package/dist/cjs/input/index.cjs +11 -43
  545. package/dist/cjs/input/index.cjs.map +1 -1
  546. package/dist/cjs/input/index.d.cts +2 -1
  547. package/dist/cjs/input/index.d.cts.map +1 -1
  548. package/dist/cjs/input/input.cjs +16 -5
  549. package/dist/cjs/input/input.cjs.map +1 -1
  550. package/dist/cjs/input/input.d.cts +1 -0
  551. package/dist/cjs/input/input.d.cts.map +1 -1
  552. package/dist/cjs/inputmask/inputmask.cjs +5 -3
  553. package/dist/cjs/inputmask/inputmask.cjs.map +1 -1
  554. package/dist/cjs/inputmask/inputmask.d.cts +1 -1
  555. package/dist/cjs/inputmask/inputmask.d.cts.map +1 -1
  556. package/dist/cjs/inputnumber/inputnumber.cjs +19 -7
  557. package/dist/cjs/inputnumber/inputnumber.cjs.map +1 -1
  558. package/dist/cjs/inputnumber/inputnumber.d.cts +1 -0
  559. package/dist/cjs/inputnumber/inputnumber.d.cts.map +1 -1
  560. package/dist/cjs/inputnumber/string.cjs +3 -3
  561. package/dist/cjs/inputnumber/string.cjs.map +1 -1
  562. package/dist/cjs/inputnumber/string.d.cts.map +1 -1
  563. package/dist/cjs/inputotp/inputotp.cjs +4 -2
  564. package/dist/cjs/inputotp/inputotp.cjs.map +1 -1
  565. package/dist/cjs/inputotp/inputotp.d.cts.map +1 -1
  566. package/dist/cjs/layout/layout.cjs +15 -9
  567. package/dist/cjs/layout/layout.cjs.map +1 -1
  568. package/dist/cjs/layout/layout.d.cts.map +1 -1
  569. package/dist/cjs/loading/loading.cjs +14 -4
  570. package/dist/cjs/loading/loading.cjs.map +1 -1
  571. package/dist/cjs/loading/loading.d.cts +2 -1
  572. package/dist/cjs/loading/loading.d.cts.map +1 -1
  573. package/dist/cjs/loadingbar/loadingbar.cjs +54 -9
  574. package/dist/cjs/loadingbar/loadingbar.cjs.map +1 -1
  575. package/dist/cjs/loadingbar/loadingbar.d.cts +2 -1
  576. package/dist/cjs/loadingbar/loadingbar.d.cts.map +1 -1
  577. package/dist/cjs/locales/en-US.cjs +1 -0
  578. package/dist/cjs/locales/ja-JP.cjs +1 -0
  579. package/dist/cjs/locales/ko-KR.cjs +1 -0
  580. package/dist/cjs/locales/messages.cjs +21 -0
  581. package/dist/cjs/locales/messages.cjs.map +1 -0
  582. package/dist/cjs/locales/messages.d.cts +336 -0
  583. package/dist/cjs/locales/messages.d.cts.map +1 -0
  584. package/dist/cjs/locales/resolve.cjs +153 -0
  585. package/dist/cjs/locales/resolve.cjs.map +1 -0
  586. package/dist/cjs/locales/resolve.d.cts +13 -0
  587. package/dist/cjs/locales/resolve.d.cts.map +1 -0
  588. package/dist/cjs/locales/types.cjs +21 -0
  589. package/dist/cjs/locales/types.cjs.map +1 -0
  590. package/dist/cjs/locales/types.d.cts +18 -0
  591. package/dist/cjs/locales/types.d.cts.map +1 -0
  592. package/dist/cjs/locales/zh-CN.cjs +1 -0
  593. package/dist/cjs/locales/zh-TW.cjs +1 -0
  594. package/dist/cjs/masonry/masonry.cjs +7 -5
  595. package/dist/cjs/masonry/masonry.cjs.map +1 -1
  596. package/dist/cjs/masonry/masonry.d.cts.map +1 -1
  597. package/dist/cjs/mentions/index.cjs +10 -32
  598. package/dist/cjs/mentions/index.cjs.map +1 -1
  599. package/dist/cjs/mentions/index.d.cts +2 -1
  600. package/dist/cjs/mentions/index.d.cts.map +1 -1
  601. package/dist/cjs/mentions/mentions.cjs +9 -6
  602. package/dist/cjs/mentions/mentions.cjs.map +1 -1
  603. package/dist/cjs/mentions/mentions.d.cts +1 -1
  604. package/dist/cjs/mentions/mentions.d.cts.map +1 -1
  605. package/dist/cjs/menu/menu.cjs +6 -4
  606. package/dist/cjs/menu/menu.cjs.map +1 -1
  607. package/dist/cjs/menu/menu.d.cts +1 -1
  608. package/dist/cjs/menu/menu.d.cts.map +1 -1
  609. package/dist/cjs/message/item.cjs +1 -1
  610. package/dist/cjs/message/item.cjs.map +1 -1
  611. package/dist/cjs/message/message.cjs +10 -4
  612. package/dist/cjs/message/message.cjs.map +1 -1
  613. package/dist/cjs/message/message.d.cts +1 -1
  614. package/dist/cjs/message/message.d.cts.map +1 -1
  615. package/dist/cjs/message/provider.cjs +8 -4
  616. package/dist/cjs/message/provider.cjs.map +1 -1
  617. package/dist/cjs/message/provider.d.cts.map +1 -1
  618. package/dist/cjs/message/store.cjs +12 -6
  619. package/dist/cjs/message/store.cjs.map +1 -1
  620. package/dist/cjs/message/store.d.cts +6 -4
  621. package/dist/cjs/message/store.d.cts.map +1 -1
  622. package/dist/cjs/modal/modal.cjs +25 -13
  623. package/dist/cjs/modal/modal.cjs.map +1 -1
  624. package/dist/cjs/modal/modal.d.cts +3 -2
  625. package/dist/cjs/modal/modal.d.cts.map +1 -1
  626. package/dist/cjs/notification/notification.cjs +27 -14
  627. package/dist/cjs/notification/notification.cjs.map +1 -1
  628. package/dist/cjs/notification/notification.d.cts +1 -1
  629. package/dist/cjs/notification/notification.d.cts.map +1 -1
  630. package/dist/cjs/pagination/pagination.cjs +74 -26
  631. package/dist/cjs/pagination/pagination.cjs.map +1 -1
  632. package/dist/cjs/pagination/pagination.d.cts +4 -2
  633. package/dist/cjs/pagination/pagination.d.cts.map +1 -1
  634. package/dist/cjs/popconfirm/popconfirm.cjs +12 -10
  635. package/dist/cjs/popconfirm/popconfirm.cjs.map +1 -1
  636. package/dist/cjs/popconfirm/popconfirm.d.cts +3 -3
  637. package/dist/cjs/popconfirm/popconfirm.d.cts.map +1 -1
  638. package/dist/cjs/popover/popover.cjs +13 -3
  639. package/dist/cjs/popover/popover.cjs.map +1 -1
  640. package/dist/cjs/popover/popover.d.cts +2 -1
  641. package/dist/cjs/popover/popover.d.cts.map +1 -1
  642. package/dist/cjs/progress/progress.cjs +5 -3
  643. package/dist/cjs/progress/progress.cjs.map +1 -1
  644. package/dist/cjs/progress/progress.d.cts +1 -1
  645. package/dist/cjs/progress/progress.d.cts.map +1 -1
  646. package/dist/cjs/qrcode/qrcode.cjs +10 -8
  647. package/dist/cjs/qrcode/qrcode.cjs.map +1 -1
  648. package/dist/cjs/qrcode/qrcode.d.cts +1 -1
  649. package/dist/cjs/qrcode/qrcode.d.cts.map +1 -1
  650. package/dist/cjs/radio/index.cjs +13 -32
  651. package/dist/cjs/radio/index.cjs.map +1 -1
  652. package/dist/cjs/radio/index.d.cts +2 -1
  653. package/dist/cjs/radio/index.d.cts.map +1 -1
  654. package/dist/cjs/radio/radio.cjs +17 -4
  655. package/dist/cjs/radio/radio.cjs.map +1 -1
  656. package/dist/cjs/radio/radio.d.cts +2 -1
  657. package/dist/cjs/radio/radio.d.cts.map +1 -1
  658. package/dist/cjs/rate/rate.cjs +8 -6
  659. package/dist/cjs/rate/rate.cjs.map +1 -1
  660. package/dist/cjs/rate/rate.d.cts +1 -1
  661. package/dist/cjs/rate/rate.d.cts.map +1 -1
  662. package/dist/cjs/result/result.cjs +14 -4
  663. package/dist/cjs/result/result.cjs.map +1 -1
  664. package/dist/cjs/result/result.d.cts +2 -1
  665. package/dist/cjs/result/result.d.cts.map +1 -1
  666. package/dist/cjs/scrollarea/scrollarea.cjs +5 -3
  667. package/dist/cjs/scrollarea/scrollarea.cjs.map +1 -1
  668. package/dist/cjs/scrollarea/scrollarea.d.cts +1 -1
  669. package/dist/cjs/scrollarea/scrollarea.d.cts.map +1 -1
  670. package/dist/cjs/scrollbar/scrollbar.cjs +16 -4
  671. package/dist/cjs/scrollbar/scrollbar.cjs.map +1 -1
  672. package/dist/cjs/scrollbar/scrollbar.d.cts +1 -0
  673. package/dist/cjs/scrollbar/scrollbar.d.cts.map +1 -1
  674. package/dist/cjs/segmented/segmented.cjs +3 -1
  675. package/dist/cjs/segmented/segmented.cjs.map +1 -1
  676. package/dist/cjs/segmented/segmented.d.cts.map +1 -1
  677. package/dist/cjs/select/index.cjs +10 -32
  678. package/dist/cjs/select/index.cjs.map +1 -1
  679. package/dist/cjs/select/index.d.cts +2 -2
  680. package/dist/cjs/select/index.d.cts.map +1 -1
  681. package/dist/cjs/select/select.cjs +179 -209
  682. package/dist/cjs/select/select.cjs.map +1 -1
  683. package/dist/cjs/select/select.d.cts +3 -0
  684. package/dist/cjs/select/select.d.cts.map +1 -1
  685. package/dist/cjs/shared/calendar.cjs +6 -6
  686. package/dist/cjs/shared/calendar.cjs.map +1 -1
  687. package/dist/cjs/shared/calendar.d.cts.map +1 -1
  688. package/dist/cjs/shared/date-input.cjs +6 -6
  689. package/dist/cjs/shared/date-input.cjs.map +1 -1
  690. package/dist/cjs/shared/floating-feedback.cjs +62 -0
  691. package/dist/cjs/shared/floating-feedback.cjs.map +1 -0
  692. package/dist/cjs/shared/floating-feedback.d.cts +7 -0
  693. package/dist/cjs/shared/floating-feedback.d.cts.map +1 -0
  694. package/dist/cjs/shared/floating.cjs +1 -0
  695. package/dist/cjs/shared/floating.cjs.map +1 -1
  696. package/dist/cjs/shared/floating.d.cts.map +1 -1
  697. package/dist/cjs/shared/motion.cjs +3 -3
  698. package/dist/cjs/shared/motion.cjs.map +1 -1
  699. package/dist/cjs/shared/motion.d.cts.map +1 -1
  700. package/dist/cjs/shared/parse-date.cjs +2 -2
  701. package/dist/cjs/shared/parse-date.cjs.map +1 -1
  702. package/dist/cjs/shared/parse-date.d.cts +1 -1
  703. package/dist/cjs/shared/parse-date.d.cts.map +1 -1
  704. package/dist/cjs/shared/scoped-portal.cjs +17 -2
  705. package/dist/cjs/shared/scoped-portal.cjs.map +1 -1
  706. package/dist/cjs/shared/scoped-portal.d.cts.map +1 -1
  707. package/dist/cjs/shared/selection-content.cjs +202 -0
  708. package/dist/cjs/shared/selection-content.cjs.map +1 -0
  709. package/dist/cjs/shared/selection-content.d.cts +22 -0
  710. package/dist/cjs/shared/selection-content.d.cts.map +1 -0
  711. package/dist/cjs/shared/time.cjs +16 -2
  712. package/dist/cjs/shared/time.cjs.map +1 -1
  713. package/dist/cjs/shared/time.d.cts +1 -1
  714. package/dist/cjs/shared/time.d.cts.map +1 -1
  715. package/dist/cjs/shared/types.d.cts +1 -1
  716. package/dist/cjs/shared/use-drag-announcements.cjs +66 -0
  717. package/dist/cjs/shared/use-drag-announcements.cjs.map +1 -0
  718. package/dist/cjs/shared/use-drag-announcements.d.cts +8 -0
  719. package/dist/cjs/shared/use-drag-announcements.d.cts.map +1 -0
  720. package/dist/cjs/shared/use-formatted-text.cjs +118 -0
  721. package/dist/cjs/shared/use-formatted-text.cjs.map +1 -0
  722. package/dist/cjs/shared/use-formatted-text.d.cts +4 -0
  723. package/dist/cjs/shared/use-formatted-text.d.cts.map +1 -0
  724. package/dist/cjs/shared/use-text.cjs +3 -3
  725. package/dist/cjs/shared/use-text.cjs.map +1 -1
  726. package/dist/cjs/shared/use-text.d.cts +3 -2
  727. package/dist/cjs/shared/use-text.d.cts.map +1 -1
  728. package/dist/cjs/skeleton/skeleton.cjs +14 -4
  729. package/dist/cjs/skeleton/skeleton.cjs.map +1 -1
  730. package/dist/cjs/skeleton/skeleton.d.cts +2 -1
  731. package/dist/cjs/skeleton/skeleton.d.cts.map +1 -1
  732. package/dist/cjs/slider/slider.cjs +18 -6
  733. package/dist/cjs/slider/slider.cjs.map +1 -1
  734. package/dist/cjs/slider/slider.d.cts +1 -0
  735. package/dist/cjs/slider/slider.d.cts.map +1 -1
  736. package/dist/cjs/space/space.cjs +3 -1
  737. package/dist/cjs/space/space.cjs.map +1 -1
  738. package/dist/cjs/space/space.d.cts.map +1 -1
  739. package/dist/cjs/splitter/index.cjs +13 -32
  740. package/dist/cjs/splitter/index.cjs.map +1 -1
  741. package/dist/cjs/splitter/index.d.cts +2 -1
  742. package/dist/cjs/splitter/index.d.cts.map +1 -1
  743. package/dist/cjs/splitter/splitter.cjs +9 -3
  744. package/dist/cjs/splitter/splitter.cjs.map +1 -1
  745. package/dist/cjs/splitter/splitter.d.cts +1 -1
  746. package/dist/cjs/splitter/splitter.d.cts.map +1 -1
  747. package/dist/cjs/statistic/index.cjs +13 -32
  748. package/dist/cjs/statistic/index.cjs.map +1 -1
  749. package/dist/cjs/statistic/index.d.cts +2 -1
  750. package/dist/cjs/statistic/index.d.cts.map +1 -1
  751. package/dist/cjs/statistic/statistic.cjs +17 -6
  752. package/dist/cjs/statistic/statistic.cjs.map +1 -1
  753. package/dist/cjs/statistic/statistic.d.cts +3 -2
  754. package/dist/cjs/statistic/statistic.d.cts.map +1 -1
  755. package/dist/cjs/steps/steps.cjs +3 -1
  756. package/dist/cjs/steps/steps.cjs.map +1 -1
  757. package/dist/cjs/steps/steps.d.cts +1 -1
  758. package/dist/cjs/steps/steps.d.cts.map +1 -1
  759. package/dist/cjs/styles/alert.css +1 -1
  760. package/dist/cjs/styles/anchor.css +1 -1
  761. package/dist/cjs/styles/appbar.css +1 -1
  762. package/dist/cjs/styles/autocomplete.css +1 -1
  763. package/dist/cjs/styles/avatar.css +1 -1
  764. package/dist/cjs/styles/backtop.css +1 -1
  765. package/dist/cjs/styles/badge.css +1 -1
  766. package/dist/cjs/styles/base.css +1 -2
  767. package/dist/cjs/styles/breadcrumb.css +1 -1
  768. package/dist/cjs/styles/button.css +1 -1
  769. package/dist/cjs/styles/calendar.css +1 -1
  770. package/dist/cjs/styles/card.css +1 -1
  771. package/dist/cjs/styles/carousel.css +1 -1
  772. package/dist/cjs/styles/cascader.css +1 -1
  773. package/dist/cjs/styles/checkbox.css +1 -1
  774. package/dist/cjs/styles/collapse.css +1 -1
  775. package/dist/cjs/styles/colorpicker.css +1 -1
  776. package/dist/cjs/styles/commandpalette.css +1 -1
  777. package/dist/cjs/styles/components/autocomplete.css +1 -1
  778. package/dist/cjs/styles/components/button.css +1 -1
  779. package/dist/cjs/styles/components/card.css +1 -1
  780. package/dist/cjs/styles/components/cascader.css +1 -1
  781. package/dist/cjs/styles/components/checkbox.css +1 -1
  782. package/dist/cjs/styles/components/collapse.css +1 -1
  783. package/dist/cjs/styles/components/colorpicker.css +1 -1
  784. package/dist/cjs/styles/components/commandpalette.css +1 -1
  785. package/dist/cjs/styles/components/datepicker.css +1 -1
  786. package/dist/cjs/styles/components/drawer.css +1 -1
  787. package/dist/cjs/styles/components/dropdown.css +1 -1
  788. package/dist/cjs/styles/components/filelist.css +1 -1
  789. package/dist/cjs/styles/components/flex.css +1 -0
  790. package/dist/cjs/styles/components/floatbutton.css +1 -1
  791. package/dist/cjs/styles/components/form.css +1 -1
  792. package/dist/cjs/styles/components/input.css +1 -1
  793. package/dist/cjs/styles/components/inputnumber.css +1 -1
  794. package/dist/cjs/styles/components/inputotp.css +1 -1
  795. package/dist/cjs/styles/components/mentions.css +1 -1
  796. package/dist/cjs/styles/components/menu.css +1 -1
  797. package/dist/cjs/styles/components/modal.css +1 -1
  798. package/dist/cjs/styles/components/pagination.css +1 -1
  799. package/dist/cjs/styles/components/radio.css +1 -1
  800. package/dist/cjs/styles/components/segmented.css +1 -1
  801. package/dist/cjs/styles/components/select.css +1 -1
  802. package/dist/cjs/styles/components/steps.css +1 -1
  803. package/dist/cjs/styles/components/switch.css +1 -1
  804. package/dist/cjs/styles/components/tabs.css +1 -1
  805. package/dist/cjs/styles/components/tag.css +1 -1
  806. package/dist/cjs/styles/components/textarea.css +1 -1
  807. package/dist/cjs/styles/components/timepicker.css +1 -1
  808. package/dist/cjs/styles/components/tree.css +1 -1
  809. package/dist/cjs/styles/components/treeselect.css +1 -1
  810. package/dist/cjs/styles/config-provider.css +1 -1
  811. package/dist/cjs/styles/confirm.css +1 -1
  812. package/dist/cjs/styles/datepicker.css +1 -1
  813. package/dist/cjs/styles/daterangepicker.css +1 -1
  814. package/dist/cjs/styles/datetimepicker.css +1 -1
  815. package/dist/cjs/styles/descriptions.css +1 -1
  816. package/dist/cjs/styles/divider.css +1 -1
  817. package/dist/cjs/styles/drawer.css +1 -1
  818. package/dist/cjs/styles/dropdown.css +1 -1
  819. package/dist/cjs/styles/empty.css +1 -1
  820. package/dist/cjs/styles/errorboundary.css +1 -1
  821. package/dist/cjs/styles/filelist.css +1 -1
  822. package/dist/cjs/styles/flex.css +1 -0
  823. package/dist/cjs/styles/floatbutton.css +1 -1
  824. package/dist/cjs/styles/form.css +1 -1
  825. package/dist/cjs/styles/foundation.css +1 -0
  826. package/dist/cjs/styles/grid.css +1 -1
  827. package/dist/cjs/styles/image.css +1 -1
  828. package/dist/cjs/styles/index.css +886 -941
  829. package/dist/cjs/styles/index.css.map +1 -1
  830. package/dist/cjs/styles/infinitescroll.css +1 -1
  831. package/dist/cjs/styles/input.css +1 -1
  832. package/dist/cjs/styles/inputmask.css +1 -1
  833. package/dist/cjs/styles/inputnumber.css +1 -1
  834. package/dist/cjs/styles/inputotp.css +1 -1
  835. package/dist/cjs/styles/layout.css +1 -1
  836. package/dist/cjs/styles/loading.css +1 -1
  837. package/dist/cjs/styles/loadingbar.css +1 -1
  838. package/dist/cjs/styles/masonry.css +1 -1
  839. package/dist/cjs/styles/mentions.css +1 -1
  840. package/dist/cjs/styles/menu.css +1 -1
  841. package/dist/cjs/styles/message.css +1 -1
  842. package/dist/cjs/styles/modal.css +1 -1
  843. package/dist/cjs/styles/notification.css +1 -1
  844. package/dist/cjs/styles/pagination.css +1 -1
  845. package/dist/cjs/styles/popconfirm.css +1 -1
  846. package/dist/cjs/styles/popover.css +1 -1
  847. package/dist/cjs/styles/progress.css +1 -1
  848. package/dist/cjs/styles/qrcode.css +1 -1
  849. package/dist/cjs/styles/radio.css +1 -1
  850. package/dist/cjs/styles/rate.css +1 -1
  851. package/dist/cjs/styles/result.css +1 -1
  852. package/dist/cjs/styles/scrollarea.css +1 -1
  853. package/dist/cjs/styles/scrollbar.css +1 -1
  854. package/dist/cjs/styles/segmented.css +1 -1
  855. package/dist/cjs/styles/select.css +1 -1
  856. package/dist/cjs/styles/skeleton.css +1 -1
  857. package/dist/cjs/styles/slider.css +1 -1
  858. package/dist/cjs/styles/space.css +1 -1
  859. package/dist/cjs/styles/splitter.css +1 -1
  860. package/dist/cjs/styles/statistic.css +1 -1
  861. package/dist/cjs/styles/steps.css +1 -1
  862. package/dist/cjs/styles/switch.css +1 -1
  863. package/dist/cjs/styles/table.css +1 -1
  864. package/dist/cjs/styles/tabletanstack.css +1 -1
  865. package/dist/cjs/styles/tabs.css +1 -1
  866. package/dist/cjs/styles/tag.css +1 -1
  867. package/dist/cjs/styles/textarea.css +1 -1
  868. package/dist/cjs/styles/timeline.css +1 -1
  869. package/dist/cjs/styles/timepicker.css +1 -1
  870. package/dist/cjs/styles/timerangepicker.css +1 -1
  871. package/dist/cjs/styles/tooltip.css +1 -1
  872. package/dist/cjs/styles/tour.css +1 -1
  873. package/dist/cjs/styles/transfer.css +1 -1
  874. package/dist/cjs/styles/tree.css +1 -1
  875. package/dist/cjs/styles/treeselect.css +1 -1
  876. package/dist/cjs/styles/typography.css +1 -1
  877. package/dist/cjs/styles/upload.css +1 -1
  878. package/dist/cjs/styles/virtuallist.css +1 -1
  879. package/dist/cjs/switch/index.cjs +10 -32
  880. package/dist/cjs/switch/index.cjs.map +1 -1
  881. package/dist/cjs/switch/index.d.cts +2 -1
  882. package/dist/cjs/switch/index.d.cts.map +1 -1
  883. package/dist/cjs/switch/switch.cjs +3 -1
  884. package/dist/cjs/switch/switch.cjs.map +1 -1
  885. package/dist/cjs/switch/switch.d.cts.map +1 -1
  886. package/dist/cjs/table/table.cjs +147 -32
  887. package/dist/cjs/table/table.cjs.map +1 -1
  888. package/dist/cjs/table/table.d.cts +28 -5
  889. package/dist/cjs/table/table.d.cts.map +1 -1
  890. package/dist/cjs/tabletanstack/defaults.cjs +21 -0
  891. package/dist/cjs/tabletanstack/defaults.cjs.map +1 -0
  892. package/dist/cjs/tabletanstack/defaults.d.cts +44 -0
  893. package/dist/cjs/tabletanstack/defaults.d.cts.map +1 -0
  894. package/dist/cjs/tabletanstack/index.d.cts +1 -1
  895. package/dist/cjs/tabletanstack/index.d.cts.map +1 -1
  896. package/dist/cjs/tabletanstack/reordering.cjs +18 -10
  897. package/dist/cjs/tabletanstack/reordering.cjs.map +1 -1
  898. package/dist/cjs/tabletanstack/reordering.d.cts +1 -1
  899. package/dist/cjs/tabletanstack/reordering.d.cts.map +1 -1
  900. package/dist/cjs/tabletanstack/tabletanstack.cjs +115 -69
  901. package/dist/cjs/tabletanstack/tabletanstack.cjs.map +1 -1
  902. package/dist/cjs/tabletanstack/tabletanstack.d.cts +15 -49
  903. package/dist/cjs/tabletanstack/tabletanstack.d.cts.map +1 -1
  904. package/dist/cjs/tabs/tabs.cjs +121 -173
  905. package/dist/cjs/tabs/tabs.cjs.map +1 -1
  906. package/dist/cjs/tabs/tabs.d.cts +2 -1
  907. package/dist/cjs/tabs/tabs.d.cts.map +1 -1
  908. package/dist/cjs/tag/group.cjs +5 -2
  909. package/dist/cjs/tag/group.cjs.map +1 -1
  910. package/dist/cjs/tag/group.d.cts +2 -2
  911. package/dist/cjs/tag/group.d.cts.map +1 -1
  912. package/dist/cjs/tag/tag.cjs +4 -8
  913. package/dist/cjs/tag/tag.cjs.map +1 -1
  914. package/dist/cjs/tag/tag.d.cts +2 -2
  915. package/dist/cjs/tag/tag.d.cts.map +1 -1
  916. package/dist/cjs/tailwind-tokens.cjs +131 -0
  917. package/dist/cjs/tailwind-tokens.cjs.map +1 -0
  918. package/dist/cjs/tailwind-tokens.d.cts +91 -0
  919. package/dist/cjs/tailwind-tokens.d.cts.map +1 -0
  920. package/dist/cjs/tailwind.cjs +62 -0
  921. package/dist/cjs/tailwind.cjs.map +1 -0
  922. package/dist/cjs/tailwind.d.cts +136 -0
  923. package/dist/cjs/tailwind.d.cts.map +1 -0
  924. package/dist/cjs/textarea/index.cjs +10 -32
  925. package/dist/cjs/textarea/index.cjs.map +1 -1
  926. package/dist/cjs/textarea/index.d.cts +2 -2
  927. package/dist/cjs/textarea/index.d.cts.map +1 -1
  928. package/dist/cjs/textarea/textarea.cjs +15 -3
  929. package/dist/cjs/textarea/textarea.cjs.map +1 -1
  930. package/dist/cjs/textarea/textarea.d.cts +1 -0
  931. package/dist/cjs/textarea/textarea.d.cts.map +1 -1
  932. package/dist/cjs/timeline/timeline.cjs +3 -1
  933. package/dist/cjs/timeline/timeline.cjs.map +1 -1
  934. package/dist/cjs/timeline/timeline.d.cts +1 -1
  935. package/dist/cjs/timeline/timeline.d.cts.map +1 -1
  936. package/dist/cjs/timepicker/index.cjs +10 -32
  937. package/dist/cjs/timepicker/index.cjs.map +1 -1
  938. package/dist/cjs/timepicker/index.d.cts +2 -1
  939. package/dist/cjs/timepicker/index.d.cts.map +1 -1
  940. package/dist/cjs/timepicker/time-panel.cjs +6 -6
  941. package/dist/cjs/timepicker/time-panel.cjs.map +1 -1
  942. package/dist/cjs/timepicker/timepicker.cjs +21 -13
  943. package/dist/cjs/timepicker/timepicker.cjs.map +1 -1
  944. package/dist/cjs/timepicker/timepicker.d.cts.map +1 -1
  945. package/dist/cjs/timerangepicker/timerangepicker.cjs +20 -14
  946. package/dist/cjs/timerangepicker/timerangepicker.cjs.map +1 -1
  947. package/dist/cjs/timerangepicker/timerangepicker.d.cts.map +1 -1
  948. package/dist/cjs/tooltip/tooltip.cjs +13 -3
  949. package/dist/cjs/tooltip/tooltip.cjs.map +1 -1
  950. package/dist/cjs/tooltip/tooltip.d.cts +2 -1
  951. package/dist/cjs/tooltip/tooltip.d.cts.map +1 -1
  952. package/dist/cjs/tour/index.cjs +10 -32
  953. package/dist/cjs/tour/index.cjs.map +1 -1
  954. package/dist/cjs/tour/index.d.cts +2 -1
  955. package/dist/cjs/tour/index.d.cts.map +1 -1
  956. package/dist/cjs/tour/tour.cjs +10 -8
  957. package/dist/cjs/tour/tour.cjs.map +1 -1
  958. package/dist/cjs/tour/tour.d.cts +1 -1
  959. package/dist/cjs/tour/tour.d.cts.map +1 -1
  960. package/dist/cjs/transfer/transfer.cjs +26 -21
  961. package/dist/cjs/transfer/transfer.cjs.map +1 -1
  962. package/dist/cjs/transfer/transfer.d.cts +1 -1
  963. package/dist/cjs/transfer/transfer.d.cts.map +1 -1
  964. package/dist/cjs/tree/drag.cjs +13 -11
  965. package/dist/cjs/tree/drag.cjs.map +1 -1
  966. package/dist/cjs/tree/drag.d.cts.map +1 -1
  967. package/dist/cjs/tree/tree.cjs +32 -13
  968. package/dist/cjs/tree/tree.cjs.map +1 -1
  969. package/dist/cjs/tree/tree.d.cts +5 -1
  970. package/dist/cjs/tree/tree.d.cts.map +1 -1
  971. package/dist/cjs/treeselect/treeselect.cjs +153 -112
  972. package/dist/cjs/treeselect/treeselect.cjs.map +1 -1
  973. package/dist/cjs/treeselect/treeselect.d.cts +4 -2
  974. package/dist/cjs/treeselect/treeselect.d.cts.map +1 -1
  975. package/dist/cjs/typography/index.cjs +22 -32
  976. package/dist/cjs/typography/index.cjs.map +1 -1
  977. package/dist/cjs/typography/index.d.cts +2 -1
  978. package/dist/cjs/typography/index.d.cts.map +1 -1
  979. package/dist/cjs/typography/typography.cjs +18 -12
  980. package/dist/cjs/typography/typography.cjs.map +1 -1
  981. package/dist/cjs/typography/typography.d.cts.map +1 -1
  982. package/dist/cjs/upload/upload.cjs +29 -21
  983. package/dist/cjs/upload/upload.cjs.map +1 -1
  984. package/dist/cjs/upload/upload.d.cts +1 -1
  985. package/dist/cjs/upload/upload.d.cts.map +1 -1
  986. package/dist/cjs/virtuallist/virtuallist.cjs +19 -6
  987. package/dist/cjs/virtuallist/virtuallist.cjs.map +1 -1
  988. package/dist/cjs/virtuallist/virtuallist.d.cts +1 -0
  989. package/dist/cjs/virtuallist/virtuallist.d.cts.map +1 -1
  990. package/dist/esm/alert/alert.d.ts +1 -1
  991. package/dist/esm/alert/alert.d.ts.map +1 -1
  992. package/dist/esm/alert/alert.js +4 -2
  993. package/dist/esm/alert/alert.js.map +1 -1
  994. package/dist/esm/anchor/anchor.d.ts +2 -2
  995. package/dist/esm/anchor/anchor.d.ts.map +1 -1
  996. package/dist/esm/anchor/anchor.js +5 -2
  997. package/dist/esm/anchor/anchor.js.map +1 -1
  998. package/dist/esm/anchor/index.d.ts +2 -1
  999. package/dist/esm/anchor/index.d.ts.map +1 -1
  1000. package/dist/esm/anchor/index.js +1 -1
  1001. package/dist/esm/appbar/appbar.d.ts +1 -1
  1002. package/dist/esm/appbar/appbar.d.ts.map +1 -1
  1003. package/dist/esm/appbar/appbar.js +7 -3
  1004. package/dist/esm/appbar/appbar.js.map +1 -1
  1005. package/dist/esm/appbar/index.d.ts +2 -1
  1006. package/dist/esm/appbar/index.d.ts.map +1 -1
  1007. package/dist/esm/appbar/index.js +1 -1
  1008. package/dist/esm/autocomplete/autocomplete.d.ts.map +1 -1
  1009. package/dist/esm/autocomplete/autocomplete.js +35 -16
  1010. package/dist/esm/autocomplete/autocomplete.js.map +1 -1
  1011. package/dist/esm/autocomplete/index.d.ts +2 -1
  1012. package/dist/esm/autocomplete/index.d.ts.map +1 -1
  1013. package/dist/esm/autocomplete/index.js +1 -1
  1014. package/dist/esm/avatar/avatar.d.ts +2 -1
  1015. package/dist/esm/avatar/avatar.d.ts.map +1 -1
  1016. package/dist/esm/avatar/avatar.js +10 -3
  1017. package/dist/esm/avatar/avatar.js.map +1 -1
  1018. package/dist/esm/avatar/group.d.ts +1 -1
  1019. package/dist/esm/avatar/group.d.ts.map +1 -1
  1020. package/dist/esm/avatar/group.js +13 -7
  1021. package/dist/esm/avatar/group.js.map +1 -1
  1022. package/dist/esm/backtop/backtop.d.ts +1 -1
  1023. package/dist/esm/backtop/backtop.d.ts.map +1 -1
  1024. package/dist/esm/backtop/backtop.js +6 -4
  1025. package/dist/esm/backtop/backtop.js.map +1 -1
  1026. package/dist/esm/badge/badge.d.ts +1 -1
  1027. package/dist/esm/badge/badge.d.ts.map +1 -1
  1028. package/dist/esm/badge/badge.js +3 -1
  1029. package/dist/esm/badge/badge.js.map +1 -1
  1030. package/dist/esm/breadcrumb/breadcrumb.d.ts +2 -2
  1031. package/dist/esm/breadcrumb/breadcrumb.d.ts.map +1 -1
  1032. package/dist/esm/breadcrumb/breadcrumb.js +13 -11
  1033. package/dist/esm/breadcrumb/breadcrumb.js.map +1 -1
  1034. package/dist/esm/browser/flex.js +2 -0
  1035. package/dist/esm/browser/modules/alert/alert.js +5 -2
  1036. package/dist/esm/browser/modules/alert/alert.js.map +1 -1
  1037. package/dist/esm/browser/modules/anchor/anchor.js +6 -2
  1038. package/dist/esm/browser/modules/anchor/anchor.js.map +1 -1
  1039. package/dist/esm/browser/modules/anchor/index.js +1 -1
  1040. package/dist/esm/browser/modules/appbar/appbar.js +8 -3
  1041. package/dist/esm/browser/modules/appbar/appbar.js.map +1 -1
  1042. package/dist/esm/browser/modules/appbar/index.js +1 -1
  1043. package/dist/esm/browser/modules/autocomplete/autocomplete.js +36 -16
  1044. package/dist/esm/browser/modules/autocomplete/autocomplete.js.map +1 -1
  1045. package/dist/esm/browser/modules/autocomplete/index.js +1 -1
  1046. package/dist/esm/browser/modules/avatar/avatar.js +11 -3
  1047. package/dist/esm/browser/modules/avatar/avatar.js.map +1 -1
  1048. package/dist/esm/browser/modules/avatar/group.js +14 -7
  1049. package/dist/esm/browser/modules/avatar/group.js.map +1 -1
  1050. package/dist/esm/browser/modules/backtop/backtop.js +7 -4
  1051. package/dist/esm/browser/modules/backtop/backtop.js.map +1 -1
  1052. package/dist/esm/browser/modules/badge/badge.js +4 -1
  1053. package/dist/esm/browser/modules/badge/badge.js.map +1 -1
  1054. package/dist/esm/browser/modules/breadcrumb/breadcrumb.js +14 -11
  1055. package/dist/esm/browser/modules/breadcrumb/breadcrumb.js.map +1 -1
  1056. package/dist/esm/browser/modules/button/button.js +13 -2
  1057. package/dist/esm/browser/modules/button/button.js.map +1 -1
  1058. package/dist/esm/browser/modules/button/group.js +25 -12
  1059. package/dist/esm/browser/modules/button/group.js.map +1 -1
  1060. package/dist/esm/browser/modules/calendar/calendar.js +5 -2
  1061. package/dist/esm/browser/modules/calendar/calendar.js.map +1 -1
  1062. package/dist/esm/browser/modules/card/card.js +42 -6
  1063. package/dist/esm/browser/modules/card/card.js.map +1 -1
  1064. package/dist/esm/browser/modules/carousel/carousel.js +13 -6
  1065. package/dist/esm/browser/modules/carousel/carousel.js.map +1 -1
  1066. package/dist/esm/browser/modules/carousel/index.js +1 -1
  1067. package/dist/esm/browser/modules/cascader/cascader.js +41 -20
  1068. package/dist/esm/browser/modules/cascader/cascader.js.map +1 -1
  1069. package/dist/esm/browser/modules/cascader/index.js +1 -1
  1070. package/dist/esm/browser/modules/checkbox/checkbox.js +12 -2
  1071. package/dist/esm/browser/modules/checkbox/checkbox.js.map +1 -1
  1072. package/dist/esm/browser/modules/checkbox/group.js +6 -3
  1073. package/dist/esm/browser/modules/checkbox/group.js.map +1 -1
  1074. package/dist/esm/browser/modules/checkbox/index.js +1 -1
  1075. package/dist/esm/browser/modules/collapse/collapse.js +5 -2
  1076. package/dist/esm/browser/modules/collapse/collapse.js.map +1 -1
  1077. package/dist/esm/browser/modules/color-recipes.js +5 -0
  1078. package/dist/esm/browser/modules/color-recipes.js.map +1 -1
  1079. package/dist/esm/browser/modules/colorpicker/colorpicker.js +27 -13
  1080. package/dist/esm/browser/modules/colorpicker/colorpicker.js.map +1 -1
  1081. package/dist/esm/browser/modules/colorpicker/gradient.js +36 -19
  1082. package/dist/esm/browser/modules/colorpicker/gradient.js.map +1 -1
  1083. package/dist/esm/browser/modules/commandpalette/commandpalette.js +17 -14
  1084. package/dist/esm/browser/modules/commandpalette/commandpalette.js.map +1 -1
  1085. package/dist/esm/browser/modules/commandpalette/index.js +1 -1
  1086. package/dist/esm/browser/modules/config-provider/component-defaults.js +64 -0
  1087. package/dist/esm/browser/modules/config-provider/component-defaults.js.map +1 -0
  1088. package/dist/esm/browser/modules/config-provider/config-context.js +6 -0
  1089. package/dist/esm/browser/modules/config-provider/config-context.js.map +1 -0
  1090. package/dist/esm/browser/modules/config-provider/config-provider.js +46 -25
  1091. package/dist/esm/browser/modules/config-provider/config-provider.js.map +1 -1
  1092. package/dist/esm/browser/modules/config-provider/context.js +11 -205
  1093. package/dist/esm/browser/modules/config-provider/context.js.map +1 -1
  1094. package/dist/esm/browser/modules/config-provider/index.js +1 -1
  1095. package/dist/esm/browser/modules/confirm/confirm.js +10 -8
  1096. package/dist/esm/browser/modules/confirm/confirm.js.map +1 -1
  1097. package/dist/esm/browser/modules/confirm/provider.js +26 -18
  1098. package/dist/esm/browser/modules/confirm/provider.js.map +1 -1
  1099. package/dist/esm/browser/modules/confirm/store.js +6 -4
  1100. package/dist/esm/browser/modules/confirm/store.js.map +1 -1
  1101. package/dist/esm/browser/modules/datepicker/datepicker.js +8 -5
  1102. package/dist/esm/browser/modules/datepicker/datepicker.js.map +1 -1
  1103. package/dist/esm/browser/modules/datepicker/index.js +1 -1
  1104. package/dist/esm/browser/modules/datepicker/multiple.js +1 -0
  1105. package/dist/esm/browser/modules/datepicker/multiple.js.map +1 -1
  1106. package/dist/esm/browser/modules/daterangepicker/daterangepicker.js +29 -21
  1107. package/dist/esm/browser/modules/daterangepicker/daterangepicker.js.map +1 -1
  1108. package/dist/esm/browser/modules/datetimepicker/datetimepicker.js +24 -16
  1109. package/dist/esm/browser/modules/datetimepicker/datetimepicker.js.map +1 -1
  1110. package/dist/esm/browser/modules/density.js +11 -5
  1111. package/dist/esm/browser/modules/density.js.map +1 -1
  1112. package/dist/esm/browser/modules/descriptions/descriptions.js +8 -5
  1113. package/dist/esm/browser/modules/descriptions/descriptions.js.map +1 -1
  1114. package/dist/esm/browser/modules/divider/divider.js +4 -1
  1115. package/dist/esm/browser/modules/divider/divider.js.map +1 -1
  1116. package/dist/esm/browser/modules/drawer/drawer.js +7 -4
  1117. package/dist/esm/browser/modules/drawer/drawer.js.map +1 -1
  1118. package/dist/esm/browser/modules/dropdown/dropdown.js +13 -3
  1119. package/dist/esm/browser/modules/dropdown/dropdown.js.map +1 -1
  1120. package/dist/esm/browser/modules/empty/empty.js +5 -3
  1121. package/dist/esm/browser/modules/empty/empty.js.map +1 -1
  1122. package/dist/esm/browser/modules/errorboundary/errorboundary.js +26 -14
  1123. package/dist/esm/browser/modules/errorboundary/errorboundary.js.map +1 -1
  1124. package/dist/esm/browser/modules/filelist/filelist.js +286 -193
  1125. package/dist/esm/browser/modules/filelist/filelist.js.map +1 -1
  1126. package/dist/esm/browser/modules/flex/flex.js +38 -0
  1127. package/dist/esm/browser/modules/flex/flex.js.map +1 -0
  1128. package/dist/esm/browser/modules/flex/index.js +2 -0
  1129. package/dist/esm/browser/modules/floatbutton/floatbutton.js +21 -12
  1130. package/dist/esm/browser/modules/floatbutton/floatbutton.js.map +1 -1
  1131. package/dist/esm/browser/modules/floatbutton/index.js +1 -1
  1132. package/dist/esm/browser/modules/form/form.js +15 -9
  1133. package/dist/esm/browser/modules/form/form.js.map +1 -1
  1134. package/dist/esm/browser/modules/form/index.js +1 -1
  1135. package/dist/esm/browser/modules/form/list.js +4 -1
  1136. package/dist/esm/browser/modules/form/list.js.map +1 -1
  1137. package/dist/esm/browser/modules/grid/grid.js +17 -5
  1138. package/dist/esm/browser/modules/grid/grid.js.map +1 -1
  1139. package/dist/esm/browser/modules/image/image.js +24 -10
  1140. package/dist/esm/browser/modules/image/image.js.map +1 -1
  1141. package/dist/esm/browser/modules/image/viewer.js +35 -25
  1142. package/dist/esm/browser/modules/image/viewer.js.map +1 -1
  1143. package/dist/esm/browser/modules/index.js +1 -2
  1144. package/dist/esm/browser/modules/infinitescroll/infinitescroll.js +13 -10
  1145. package/dist/esm/browser/modules/infinitescroll/infinitescroll.js.map +1 -1
  1146. package/dist/esm/browser/modules/input/group.js +20 -9
  1147. package/dist/esm/browser/modules/input/group.js.map +1 -1
  1148. package/dist/esm/browser/modules/input/index.js +1 -1
  1149. package/dist/esm/browser/modules/input/input.js +13 -4
  1150. package/dist/esm/browser/modules/input/input.js.map +1 -1
  1151. package/dist/esm/browser/modules/inputmask/inputmask.js +6 -3
  1152. package/dist/esm/browser/modules/inputmask/inputmask.js.map +1 -1
  1153. package/dist/esm/browser/modules/inputnumber/inputnumber.js +16 -6
  1154. package/dist/esm/browser/modules/inputnumber/inputnumber.js.map +1 -1
  1155. package/dist/esm/browser/modules/inputnumber/string.js +4 -3
  1156. package/dist/esm/browser/modules/inputnumber/string.js.map +1 -1
  1157. package/dist/esm/browser/modules/inputotp/inputotp.js +5 -2
  1158. package/dist/esm/browser/modules/inputotp/inputotp.js.map +1 -1
  1159. package/dist/esm/browser/modules/layout/layout.js +16 -9
  1160. package/dist/esm/browser/modules/layout/layout.js.map +1 -1
  1161. package/dist/esm/browser/modules/loading/loading.js +11 -3
  1162. package/dist/esm/browser/modules/loading/loading.js.map +1 -1
  1163. package/dist/esm/browser/modules/loadingbar/loadingbar.js +53 -10
  1164. package/dist/esm/browser/modules/loadingbar/loadingbar.js.map +1 -1
  1165. package/dist/esm/browser/modules/locales/en-US.js +1 -0
  1166. package/dist/esm/browser/modules/locales/ja-JP.js +1 -0
  1167. package/dist/esm/browser/modules/locales/ko-KR.js +1 -0
  1168. package/dist/esm/browser/modules/locales/messages.js +1 -0
  1169. package/dist/esm/browser/modules/locales/resolve.js +89 -0
  1170. package/dist/esm/browser/modules/locales/resolve.js.map +1 -0
  1171. package/dist/esm/browser/modules/locales/types.js +1 -0
  1172. package/dist/esm/browser/modules/locales/zh-CN.js +1 -0
  1173. package/dist/esm/browser/modules/locales/zh-TW.js +1 -0
  1174. package/dist/esm/browser/modules/masonry/masonry.js +8 -5
  1175. package/dist/esm/browser/modules/masonry/masonry.js.map +1 -1
  1176. package/dist/esm/browser/modules/mentions/index.js +1 -1
  1177. package/dist/esm/browser/modules/mentions/mentions.js +10 -6
  1178. package/dist/esm/browser/modules/mentions/mentions.js.map +1 -1
  1179. package/dist/esm/browser/modules/menu/menu.js +7 -4
  1180. package/dist/esm/browser/modules/menu/menu.js.map +1 -1
  1181. package/dist/esm/browser/modules/message/item.js +2 -1
  1182. package/dist/esm/browser/modules/message/item.js.map +1 -1
  1183. package/dist/esm/browser/modules/message/message.js +11 -4
  1184. package/dist/esm/browser/modules/message/message.js.map +1 -1
  1185. package/dist/esm/browser/modules/message/provider.js +9 -4
  1186. package/dist/esm/browser/modules/message/provider.js.map +1 -1
  1187. package/dist/esm/browser/modules/message/store.js +12 -6
  1188. package/dist/esm/browser/modules/message/store.js.map +1 -1
  1189. package/dist/esm/browser/modules/modal/modal.js +22 -12
  1190. package/dist/esm/browser/modules/modal/modal.js.map +1 -1
  1191. package/dist/esm/browser/modules/notification/notification.js +28 -14
  1192. package/dist/esm/browser/modules/notification/notification.js.map +1 -1
  1193. package/dist/esm/browser/modules/pagination/pagination.js +71 -25
  1194. package/dist/esm/browser/modules/pagination/pagination.js.map +1 -1
  1195. package/dist/esm/browser/modules/popconfirm/popconfirm.js +13 -10
  1196. package/dist/esm/browser/modules/popconfirm/popconfirm.js.map +1 -1
  1197. package/dist/esm/browser/modules/popover/popover.js +10 -2
  1198. package/dist/esm/browser/modules/popover/popover.js.map +1 -1
  1199. package/dist/esm/browser/modules/progress/progress.js +6 -3
  1200. package/dist/esm/browser/modules/progress/progress.js.map +1 -1
  1201. package/dist/esm/browser/modules/qrcode/qrcode.js +11 -8
  1202. package/dist/esm/browser/modules/qrcode/qrcode.js.map +1 -1
  1203. package/dist/esm/browser/modules/radio/index.js +1 -1
  1204. package/dist/esm/browser/modules/radio/radio.js +16 -5
  1205. package/dist/esm/browser/modules/radio/radio.js.map +1 -1
  1206. package/dist/esm/browser/modules/rate/rate.js +9 -6
  1207. package/dist/esm/browser/modules/rate/rate.js.map +1 -1
  1208. package/dist/esm/browser/modules/result/result.js +11 -3
  1209. package/dist/esm/browser/modules/result/result.js.map +1 -1
  1210. package/dist/esm/browser/modules/scrollarea/scrollarea.js +6 -3
  1211. package/dist/esm/browser/modules/scrollarea/scrollarea.js.map +1 -1
  1212. package/dist/esm/browser/modules/scrollbar/scrollbar.js +13 -3
  1213. package/dist/esm/browser/modules/scrollbar/scrollbar.js.map +1 -1
  1214. package/dist/esm/browser/modules/segmented/segmented.js +4 -1
  1215. package/dist/esm/browser/modules/segmented/segmented.js.map +1 -1
  1216. package/dist/esm/browser/modules/select/index.js +1 -1
  1217. package/dist/esm/browser/modules/select/select.js +177 -209
  1218. package/dist/esm/browser/modules/select/select.js.map +1 -1
  1219. package/dist/esm/browser/modules/shared/calendar.js +7 -6
  1220. package/dist/esm/browser/modules/shared/calendar.js.map +1 -1
  1221. package/dist/esm/browser/modules/shared/date-input.js +6 -6
  1222. package/dist/esm/browser/modules/shared/date-input.js.map +1 -1
  1223. package/dist/esm/browser/modules/shared/floating-feedback.js +24 -0
  1224. package/dist/esm/browser/modules/shared/floating-feedback.js.map +1 -0
  1225. package/dist/esm/browser/modules/shared/floating.js +1 -0
  1226. package/dist/esm/browser/modules/shared/floating.js.map +1 -1
  1227. package/dist/esm/browser/modules/shared/motion.js +4 -4
  1228. package/dist/esm/browser/modules/shared/motion.js.map +1 -1
  1229. package/dist/esm/browser/modules/shared/parse-date.js +2 -2
  1230. package/dist/esm/browser/modules/shared/parse-date.js.map +1 -1
  1231. package/dist/esm/browser/modules/shared/scoped-portal.js +17 -2
  1232. package/dist/esm/browser/modules/shared/scoped-portal.js.map +1 -1
  1233. package/dist/esm/browser/modules/shared/selection-content.js +164 -0
  1234. package/dist/esm/browser/modules/shared/selection-content.js.map +1 -0
  1235. package/dist/esm/browser/modules/shared/time.js +16 -2
  1236. package/dist/esm/browser/modules/shared/time.js.map +1 -1
  1237. package/dist/esm/browser/modules/shared/use-drag-announcements.js +28 -0
  1238. package/dist/esm/browser/modules/shared/use-drag-announcements.js.map +1 -0
  1239. package/dist/esm/browser/modules/shared/use-formatted-text.js +80 -0
  1240. package/dist/esm/browser/modules/shared/use-formatted-text.js.map +1 -0
  1241. package/dist/esm/browser/modules/shared/use-text.js +3 -3
  1242. package/dist/esm/browser/modules/shared/use-text.js.map +1 -1
  1243. package/dist/esm/browser/modules/skeleton/skeleton.js +11 -3
  1244. package/dist/esm/browser/modules/skeleton/skeleton.js.map +1 -1
  1245. package/dist/esm/browser/modules/slider/slider.js +15 -5
  1246. package/dist/esm/browser/modules/slider/slider.js.map +1 -1
  1247. package/dist/esm/browser/modules/space/space.js +4 -1
  1248. package/dist/esm/browser/modules/space/space.js.map +1 -1
  1249. package/dist/esm/browser/modules/splitter/index.js +1 -1
  1250. package/dist/esm/browser/modules/splitter/splitter.js +10 -3
  1251. package/dist/esm/browser/modules/splitter/splitter.js.map +1 -1
  1252. package/dist/esm/browser/modules/statistic/index.js +1 -1
  1253. package/dist/esm/browser/modules/statistic/statistic.js +14 -5
  1254. package/dist/esm/browser/modules/statistic/statistic.js.map +1 -1
  1255. package/dist/esm/browser/modules/steps/steps.js +4 -1
  1256. package/dist/esm/browser/modules/steps/steps.js.map +1 -1
  1257. package/dist/esm/browser/modules/switch/index.js +1 -1
  1258. package/dist/esm/browser/modules/switch/switch.js +4 -1
  1259. package/dist/esm/browser/modules/switch/switch.js.map +1 -1
  1260. package/dist/esm/browser/modules/table/table.js +114 -31
  1261. package/dist/esm/browser/modules/table/table.js.map +1 -1
  1262. package/dist/esm/browser/modules/tabletanstack/defaults.js +1 -0
  1263. package/dist/esm/browser/modules/tabletanstack/reordering.js +19 -10
  1264. package/dist/esm/browser/modules/tabletanstack/reordering.js.map +1 -1
  1265. package/dist/esm/browser/modules/tabletanstack/tabletanstack.js +108 -70
  1266. package/dist/esm/browser/modules/tabletanstack/tabletanstack.js.map +1 -1
  1267. package/dist/esm/browser/modules/tabs/tabs.js +120 -174
  1268. package/dist/esm/browser/modules/tabs/tabs.js.map +1 -1
  1269. package/dist/esm/browser/modules/tag/group.js +6 -2
  1270. package/dist/esm/browser/modules/tag/group.js.map +1 -1
  1271. package/dist/esm/browser/modules/tag/tag.js +5 -8
  1272. package/dist/esm/browser/modules/tag/tag.js.map +1 -1
  1273. package/dist/esm/browser/modules/tailwind-tokens.js +93 -0
  1274. package/dist/esm/browser/modules/tailwind-tokens.js.map +1 -0
  1275. package/dist/esm/browser/modules/tailwind.js +24 -0
  1276. package/dist/esm/browser/modules/tailwind.js.map +1 -0
  1277. package/dist/esm/browser/modules/textarea/index.js +1 -1
  1278. package/dist/esm/browser/modules/textarea/textarea.js +12 -2
  1279. package/dist/esm/browser/modules/textarea/textarea.js.map +1 -1
  1280. package/dist/esm/browser/modules/timeline/timeline.js +4 -1
  1281. package/dist/esm/browser/modules/timeline/timeline.js.map +1 -1
  1282. package/dist/esm/browser/modules/timepicker/index.js +1 -1
  1283. package/dist/esm/browser/modules/timepicker/time-panel.js +7 -6
  1284. package/dist/esm/browser/modules/timepicker/time-panel.js.map +1 -1
  1285. package/dist/esm/browser/modules/timepicker/timepicker.js +22 -13
  1286. package/dist/esm/browser/modules/timepicker/timepicker.js.map +1 -1
  1287. package/dist/esm/browser/modules/timerangepicker/timerangepicker.js +21 -14
  1288. package/dist/esm/browser/modules/timerangepicker/timerangepicker.js.map +1 -1
  1289. package/dist/esm/browser/modules/tooltip/tooltip.js +10 -2
  1290. package/dist/esm/browser/modules/tooltip/tooltip.js.map +1 -1
  1291. package/dist/esm/browser/modules/tour/index.js +1 -1
  1292. package/dist/esm/browser/modules/tour/tour.js +11 -8
  1293. package/dist/esm/browser/modules/tour/tour.js.map +1 -1
  1294. package/dist/esm/browser/modules/transfer/transfer.js +28 -22
  1295. package/dist/esm/browser/modules/transfer/transfer.js.map +1 -1
  1296. package/dist/esm/browser/modules/tree/drag.js +14 -11
  1297. package/dist/esm/browser/modules/tree/drag.js.map +1 -1
  1298. package/dist/esm/browser/modules/tree/tree.js +29 -12
  1299. package/dist/esm/browser/modules/tree/tree.js.map +1 -1
  1300. package/dist/esm/browser/modules/treeselect/treeselect.js +150 -111
  1301. package/dist/esm/browser/modules/treeselect/treeselect.js.map +1 -1
  1302. package/dist/esm/browser/modules/typography/index.js +1 -1
  1303. package/dist/esm/browser/modules/typography/typography.js +19 -12
  1304. package/dist/esm/browser/modules/typography/typography.js.map +1 -1
  1305. package/dist/esm/browser/modules/upload/upload.js +30 -21
  1306. package/dist/esm/browser/modules/upload/upload.js.map +1 -1
  1307. package/dist/esm/browser/modules/virtuallist/virtuallist.js +16 -5
  1308. package/dist/esm/browser/modules/virtuallist/virtuallist.js.map +1 -1
  1309. package/dist/esm/button/button.d.ts +3 -1
  1310. package/dist/esm/button/button.d.ts.map +1 -1
  1311. package/dist/esm/button/button.js +12 -2
  1312. package/dist/esm/button/button.js.map +1 -1
  1313. package/dist/esm/button/group.d.ts +4 -3
  1314. package/dist/esm/button/group.d.ts.map +1 -1
  1315. package/dist/esm/button/group.js +24 -12
  1316. package/dist/esm/button/group.js.map +1 -1
  1317. package/dist/esm/calendar/calendar.d.ts +1 -1
  1318. package/dist/esm/calendar/calendar.d.ts.map +1 -1
  1319. package/dist/esm/calendar/calendar.js +4 -2
  1320. package/dist/esm/calendar/calendar.js.map +1 -1
  1321. package/dist/esm/card/card.d.ts +9 -3
  1322. package/dist/esm/card/card.d.ts.map +1 -1
  1323. package/dist/esm/card/card.js +41 -6
  1324. package/dist/esm/card/card.js.map +1 -1
  1325. package/dist/esm/card/index.d.ts +1 -1
  1326. package/dist/esm/card/index.d.ts.map +1 -1
  1327. package/dist/esm/carousel/carousel.d.ts.map +1 -1
  1328. package/dist/esm/carousel/carousel.js +12 -6
  1329. package/dist/esm/carousel/carousel.js.map +1 -1
  1330. package/dist/esm/carousel/index.d.ts +2 -1
  1331. package/dist/esm/carousel/index.d.ts.map +1 -1
  1332. package/dist/esm/carousel/index.js +1 -1
  1333. package/dist/esm/cascader/cascader.d.ts +2 -0
  1334. package/dist/esm/cascader/cascader.d.ts.map +1 -1
  1335. package/dist/esm/cascader/cascader.js +40 -20
  1336. package/dist/esm/cascader/cascader.js.map +1 -1
  1337. package/dist/esm/cascader/index.d.ts +2 -1
  1338. package/dist/esm/cascader/index.d.ts.map +1 -1
  1339. package/dist/esm/cascader/index.js +1 -1
  1340. package/dist/esm/checkbox/checkbox.d.ts +1 -0
  1341. package/dist/esm/checkbox/checkbox.d.ts.map +1 -1
  1342. package/dist/esm/checkbox/checkbox.js +11 -2
  1343. package/dist/esm/checkbox/checkbox.js.map +1 -1
  1344. package/dist/esm/checkbox/group.d.ts +1 -1
  1345. package/dist/esm/checkbox/group.d.ts.map +1 -1
  1346. package/dist/esm/checkbox/group.js +5 -3
  1347. package/dist/esm/checkbox/group.js.map +1 -1
  1348. package/dist/esm/checkbox/index.d.ts +2 -1
  1349. package/dist/esm/checkbox/index.d.ts.map +1 -1
  1350. package/dist/esm/checkbox/index.js +1 -1
  1351. package/dist/esm/collapse/collapse.d.ts +1 -1
  1352. package/dist/esm/collapse/collapse.d.ts.map +1 -1
  1353. package/dist/esm/collapse/collapse.js +4 -2
  1354. package/dist/esm/collapse/collapse.js.map +1 -1
  1355. package/dist/esm/color-recipes.d.ts.map +1 -1
  1356. package/dist/esm/color-recipes.js +5 -0
  1357. package/dist/esm/color-recipes.js.map +1 -1
  1358. package/dist/esm/colorpicker/colorpicker.d.ts +1 -1
  1359. package/dist/esm/colorpicker/colorpicker.d.ts.map +1 -1
  1360. package/dist/esm/colorpicker/colorpicker.js +26 -13
  1361. package/dist/esm/colorpicker/colorpicker.js.map +1 -1
  1362. package/dist/esm/colorpicker/gradient.d.ts.map +1 -1
  1363. package/dist/esm/colorpicker/gradient.js +35 -19
  1364. package/dist/esm/colorpicker/gradient.js.map +1 -1
  1365. package/dist/esm/commandpalette/commandpalette.d.ts +1 -1
  1366. package/dist/esm/commandpalette/commandpalette.d.ts.map +1 -1
  1367. package/dist/esm/commandpalette/commandpalette.js +16 -14
  1368. package/dist/esm/commandpalette/commandpalette.js.map +1 -1
  1369. package/dist/esm/commandpalette/index.d.ts +2 -1
  1370. package/dist/esm/commandpalette/index.d.ts.map +1 -1
  1371. package/dist/esm/commandpalette/index.js +1 -1
  1372. package/dist/esm/config-provider/component-defaults.d.ts +365 -0
  1373. package/dist/esm/config-provider/component-defaults.d.ts.map +1 -0
  1374. package/dist/esm/config-provider/component-defaults.js +64 -0
  1375. package/dist/esm/config-provider/component-defaults.js.map +1 -0
  1376. package/dist/esm/config-provider/config-context.d.ts +15 -0
  1377. package/dist/esm/config-provider/config-context.d.ts.map +1 -0
  1378. package/dist/esm/config-provider/config-context.js +6 -0
  1379. package/dist/esm/config-provider/config-context.js.map +1 -0
  1380. package/dist/esm/config-provider/config-provider.d.ts +13 -6
  1381. package/dist/esm/config-provider/config-provider.d.ts.map +1 -1
  1382. package/dist/esm/config-provider/config-provider.js +46 -25
  1383. package/dist/esm/config-provider/config-provider.js.map +1 -1
  1384. package/dist/esm/config-provider/context.d.ts +11 -368
  1385. package/dist/esm/config-provider/context.d.ts.map +1 -1
  1386. package/dist/esm/config-provider/context.js +11 -205
  1387. package/dist/esm/config-provider/context.js.map +1 -1
  1388. package/dist/esm/config-provider/index.d.ts +2 -2
  1389. package/dist/esm/config-provider/index.d.ts.map +1 -1
  1390. package/dist/esm/config-provider/index.js +1 -1
  1391. package/dist/esm/confirm/confirm.d.ts +1 -1
  1392. package/dist/esm/confirm/confirm.d.ts.map +1 -1
  1393. package/dist/esm/confirm/confirm.js +10 -8
  1394. package/dist/esm/confirm/confirm.js.map +1 -1
  1395. package/dist/esm/confirm/provider.d.ts.map +1 -1
  1396. package/dist/esm/confirm/provider.js +26 -18
  1397. package/dist/esm/confirm/provider.js.map +1 -1
  1398. package/dist/esm/confirm/store.d.ts +6 -4
  1399. package/dist/esm/confirm/store.d.ts.map +1 -1
  1400. package/dist/esm/confirm/store.js +6 -4
  1401. package/dist/esm/confirm/store.js.map +1 -1
  1402. package/dist/esm/datepicker/datepicker.d.ts.map +1 -1
  1403. package/dist/esm/datepicker/datepicker.js +7 -5
  1404. package/dist/esm/datepicker/datepicker.js.map +1 -1
  1405. package/dist/esm/datepicker/index.d.ts +2 -1
  1406. package/dist/esm/datepicker/index.d.ts.map +1 -1
  1407. package/dist/esm/datepicker/index.js +1 -1
  1408. package/dist/esm/daterangepicker/daterangepicker.d.ts.map +1 -1
  1409. package/dist/esm/daterangepicker/daterangepicker.js +29 -21
  1410. package/dist/esm/daterangepicker/daterangepicker.js.map +1 -1
  1411. package/dist/esm/datetimepicker/datetimepicker.d.ts.map +1 -1
  1412. package/dist/esm/datetimepicker/datetimepicker.js +24 -16
  1413. package/dist/esm/datetimepicker/datetimepicker.js.map +1 -1
  1414. package/dist/esm/density.d.ts +3 -1
  1415. package/dist/esm/density.d.ts.map +1 -1
  1416. package/dist/esm/density.js +11 -5
  1417. package/dist/esm/density.js.map +1 -1
  1418. package/dist/esm/descriptions/descriptions.d.ts +1 -1
  1419. package/dist/esm/descriptions/descriptions.d.ts.map +1 -1
  1420. package/dist/esm/descriptions/descriptions.js +7 -5
  1421. package/dist/esm/descriptions/descriptions.js.map +1 -1
  1422. package/dist/esm/divider/divider.d.ts +1 -1
  1423. package/dist/esm/divider/divider.d.ts.map +1 -1
  1424. package/dist/esm/divider/divider.js +3 -1
  1425. package/dist/esm/divider/divider.js.map +1 -1
  1426. package/dist/esm/drawer/drawer.d.ts +1 -1
  1427. package/dist/esm/drawer/drawer.d.ts.map +1 -1
  1428. package/dist/esm/drawer/drawer.js +6 -4
  1429. package/dist/esm/drawer/drawer.js.map +1 -1
  1430. package/dist/esm/dropdown/dropdown.d.ts +2 -1
  1431. package/dist/esm/dropdown/dropdown.d.ts.map +1 -1
  1432. package/dist/esm/dropdown/dropdown.js +12 -3
  1433. package/dist/esm/dropdown/dropdown.js.map +1 -1
  1434. package/dist/esm/empty/empty.d.ts +1 -1
  1435. package/dist/esm/empty/empty.d.ts.map +1 -1
  1436. package/dist/esm/empty/empty.js +5 -3
  1437. package/dist/esm/empty/empty.js.map +1 -1
  1438. package/dist/esm/errorboundary/errorboundary.d.ts +8 -2
  1439. package/dist/esm/errorboundary/errorboundary.d.ts.map +1 -1
  1440. package/dist/esm/errorboundary/errorboundary.js +25 -14
  1441. package/dist/esm/errorboundary/errorboundary.js.map +1 -1
  1442. package/dist/esm/filelist/filelist.d.ts +2 -1
  1443. package/dist/esm/filelist/filelist.d.ts.map +1 -1
  1444. package/dist/esm/filelist/filelist.js +285 -193
  1445. package/dist/esm/filelist/filelist.js.map +1 -1
  1446. package/dist/esm/flex/flex.d.ts +13 -0
  1447. package/dist/esm/flex/flex.d.ts.map +1 -0
  1448. package/dist/esm/flex/flex.js +36 -0
  1449. package/dist/esm/flex/flex.js.map +1 -0
  1450. package/dist/esm/flex/index.d.ts +2 -0
  1451. package/dist/esm/flex/index.d.ts.map +1 -0
  1452. package/dist/esm/flex/index.js +2 -0
  1453. package/dist/esm/floatbutton/floatbutton.d.ts +5 -3
  1454. package/dist/esm/floatbutton/floatbutton.d.ts.map +1 -1
  1455. package/dist/esm/floatbutton/floatbutton.js +20 -12
  1456. package/dist/esm/floatbutton/floatbutton.js.map +1 -1
  1457. package/dist/esm/floatbutton/index.d.ts +2 -1
  1458. package/dist/esm/floatbutton/index.d.ts.map +1 -1
  1459. package/dist/esm/floatbutton/index.js +1 -1
  1460. package/dist/esm/form/form.d.ts +3 -3
  1461. package/dist/esm/form/form.d.ts.map +1 -1
  1462. package/dist/esm/form/form.js +14 -9
  1463. package/dist/esm/form/form.js.map +1 -1
  1464. package/dist/esm/form/index.d.ts +2 -1
  1465. package/dist/esm/form/index.d.ts.map +1 -1
  1466. package/dist/esm/form/index.js +1 -1
  1467. package/dist/esm/form/list.d.ts +1 -1
  1468. package/dist/esm/form/list.d.ts.map +1 -1
  1469. package/dist/esm/form/list.js +3 -1
  1470. package/dist/esm/form/list.js.map +1 -1
  1471. package/dist/esm/grid/grid.d.ts +2 -1
  1472. package/dist/esm/grid/grid.d.ts.map +1 -1
  1473. package/dist/esm/grid/grid.js +16 -5
  1474. package/dist/esm/grid/grid.js.map +1 -1
  1475. package/dist/esm/image/image.d.ts +3 -2
  1476. package/dist/esm/image/image.d.ts.map +1 -1
  1477. package/dist/esm/image/image.js +23 -10
  1478. package/dist/esm/image/image.js.map +1 -1
  1479. package/dist/esm/image/viewer.d.ts.map +1 -1
  1480. package/dist/esm/image/viewer.js +34 -25
  1481. package/dist/esm/image/viewer.js.map +1 -1
  1482. package/dist/esm/index.d.ts +6 -7
  1483. package/dist/esm/index.d.ts.map +1 -1
  1484. package/dist/esm/index.js +1 -2
  1485. package/dist/esm/infinitescroll/infinitescroll.d.ts +1 -1
  1486. package/dist/esm/infinitescroll/infinitescroll.d.ts.map +1 -1
  1487. package/dist/esm/infinitescroll/infinitescroll.js +12 -10
  1488. package/dist/esm/infinitescroll/infinitescroll.js.map +1 -1
  1489. package/dist/esm/input/group.d.ts +1 -1
  1490. package/dist/esm/input/group.d.ts.map +1 -1
  1491. package/dist/esm/input/group.js +19 -9
  1492. package/dist/esm/input/group.js.map +1 -1
  1493. package/dist/esm/input/index.d.ts +2 -1
  1494. package/dist/esm/input/index.d.ts.map +1 -1
  1495. package/dist/esm/input/index.js +1 -1
  1496. package/dist/esm/input/input.d.ts +1 -0
  1497. package/dist/esm/input/input.d.ts.map +1 -1
  1498. package/dist/esm/input/input.js +12 -4
  1499. package/dist/esm/input/input.js.map +1 -1
  1500. package/dist/esm/inputmask/inputmask.d.ts +1 -1
  1501. package/dist/esm/inputmask/inputmask.d.ts.map +1 -1
  1502. package/dist/esm/inputmask/inputmask.js +5 -3
  1503. package/dist/esm/inputmask/inputmask.js.map +1 -1
  1504. package/dist/esm/inputnumber/inputnumber.d.ts +1 -0
  1505. package/dist/esm/inputnumber/inputnumber.d.ts.map +1 -1
  1506. package/dist/esm/inputnumber/inputnumber.js +15 -6
  1507. package/dist/esm/inputnumber/inputnumber.js.map +1 -1
  1508. package/dist/esm/inputnumber/string.d.ts.map +1 -1
  1509. package/dist/esm/inputnumber/string.js +3 -3
  1510. package/dist/esm/inputnumber/string.js.map +1 -1
  1511. package/dist/esm/inputotp/inputotp.d.ts.map +1 -1
  1512. package/dist/esm/inputotp/inputotp.js +4 -2
  1513. package/dist/esm/inputotp/inputotp.js.map +1 -1
  1514. package/dist/esm/layout/layout.d.ts.map +1 -1
  1515. package/dist/esm/layout/layout.js +15 -9
  1516. package/dist/esm/layout/layout.js.map +1 -1
  1517. package/dist/esm/loading/loading.d.ts +2 -1
  1518. package/dist/esm/loading/loading.d.ts.map +1 -1
  1519. package/dist/esm/loading/loading.js +10 -3
  1520. package/dist/esm/loading/loading.js.map +1 -1
  1521. package/dist/esm/loadingbar/loadingbar.d.ts +2 -1
  1522. package/dist/esm/loadingbar/loadingbar.d.ts.map +1 -1
  1523. package/dist/esm/loadingbar/loadingbar.js +52 -10
  1524. package/dist/esm/loadingbar/loadingbar.js.map +1 -1
  1525. package/dist/esm/locales/en-US.js +1 -0
  1526. package/dist/esm/locales/ja-JP.js +1 -0
  1527. package/dist/esm/locales/ko-KR.js +1 -0
  1528. package/dist/esm/locales/messages.d.ts +336 -0
  1529. package/dist/esm/locales/messages.d.ts.map +1 -0
  1530. package/dist/esm/locales/messages.js +1 -0
  1531. package/dist/esm/locales/resolve.d.ts +13 -0
  1532. package/dist/esm/locales/resolve.d.ts.map +1 -0
  1533. package/dist/esm/locales/resolve.js +89 -0
  1534. package/dist/esm/locales/resolve.js.map +1 -0
  1535. package/dist/esm/locales/types.d.ts +18 -0
  1536. package/dist/esm/locales/types.d.ts.map +1 -0
  1537. package/dist/esm/locales/types.js +1 -0
  1538. package/dist/esm/locales/zh-CN.js +1 -0
  1539. package/dist/esm/locales/zh-TW.js +1 -0
  1540. package/dist/esm/masonry/masonry.d.ts.map +1 -1
  1541. package/dist/esm/masonry/masonry.js +7 -5
  1542. package/dist/esm/masonry/masonry.js.map +1 -1
  1543. package/dist/esm/mentions/index.d.ts +2 -1
  1544. package/dist/esm/mentions/index.d.ts.map +1 -1
  1545. package/dist/esm/mentions/index.js +1 -1
  1546. package/dist/esm/mentions/mentions.d.ts +1 -1
  1547. package/dist/esm/mentions/mentions.d.ts.map +1 -1
  1548. package/dist/esm/mentions/mentions.js +9 -6
  1549. package/dist/esm/mentions/mentions.js.map +1 -1
  1550. package/dist/esm/menu/menu.d.ts +1 -1
  1551. package/dist/esm/menu/menu.d.ts.map +1 -1
  1552. package/dist/esm/menu/menu.js +6 -4
  1553. package/dist/esm/menu/menu.js.map +1 -1
  1554. package/dist/esm/message/item.js +1 -1
  1555. package/dist/esm/message/item.js.map +1 -1
  1556. package/dist/esm/message/message.d.ts +1 -1
  1557. package/dist/esm/message/message.d.ts.map +1 -1
  1558. package/dist/esm/message/message.js +10 -4
  1559. package/dist/esm/message/message.js.map +1 -1
  1560. package/dist/esm/message/provider.d.ts.map +1 -1
  1561. package/dist/esm/message/provider.js +8 -4
  1562. package/dist/esm/message/provider.js.map +1 -1
  1563. package/dist/esm/message/store.d.ts +6 -4
  1564. package/dist/esm/message/store.d.ts.map +1 -1
  1565. package/dist/esm/message/store.js +12 -6
  1566. package/dist/esm/message/store.js.map +1 -1
  1567. package/dist/esm/modal/modal.d.ts +3 -2
  1568. package/dist/esm/modal/modal.d.ts.map +1 -1
  1569. package/dist/esm/modal/modal.js +21 -12
  1570. package/dist/esm/modal/modal.js.map +1 -1
  1571. package/dist/esm/notification/notification.d.ts +1 -1
  1572. package/dist/esm/notification/notification.d.ts.map +1 -1
  1573. package/dist/esm/notification/notification.js +27 -14
  1574. package/dist/esm/notification/notification.js.map +1 -1
  1575. package/dist/esm/pagination/pagination.d.ts +4 -2
  1576. package/dist/esm/pagination/pagination.d.ts.map +1 -1
  1577. package/dist/esm/pagination/pagination.js +70 -25
  1578. package/dist/esm/pagination/pagination.js.map +1 -1
  1579. package/dist/esm/popconfirm/popconfirm.d.ts +3 -3
  1580. package/dist/esm/popconfirm/popconfirm.d.ts.map +1 -1
  1581. package/dist/esm/popconfirm/popconfirm.js +12 -10
  1582. package/dist/esm/popconfirm/popconfirm.js.map +1 -1
  1583. package/dist/esm/popover/popover.d.ts +2 -1
  1584. package/dist/esm/popover/popover.d.ts.map +1 -1
  1585. package/dist/esm/popover/popover.js +9 -2
  1586. package/dist/esm/popover/popover.js.map +1 -1
  1587. package/dist/esm/progress/progress.d.ts +1 -1
  1588. package/dist/esm/progress/progress.d.ts.map +1 -1
  1589. package/dist/esm/progress/progress.js +5 -3
  1590. package/dist/esm/progress/progress.js.map +1 -1
  1591. package/dist/esm/qrcode/qrcode.d.ts +1 -1
  1592. package/dist/esm/qrcode/qrcode.d.ts.map +1 -1
  1593. package/dist/esm/qrcode/qrcode.js +10 -8
  1594. package/dist/esm/qrcode/qrcode.js.map +1 -1
  1595. package/dist/esm/radio/index.d.ts +2 -1
  1596. package/dist/esm/radio/index.d.ts.map +1 -1
  1597. package/dist/esm/radio/index.js +1 -1
  1598. package/dist/esm/radio/radio.d.ts +2 -1
  1599. package/dist/esm/radio/radio.d.ts.map +1 -1
  1600. package/dist/esm/radio/radio.js +15 -5
  1601. package/dist/esm/radio/radio.js.map +1 -1
  1602. package/dist/esm/rate/rate.d.ts +1 -1
  1603. package/dist/esm/rate/rate.d.ts.map +1 -1
  1604. package/dist/esm/rate/rate.js +8 -6
  1605. package/dist/esm/rate/rate.js.map +1 -1
  1606. package/dist/esm/result/result.d.ts +2 -1
  1607. package/dist/esm/result/result.d.ts.map +1 -1
  1608. package/dist/esm/result/result.js +10 -3
  1609. package/dist/esm/result/result.js.map +1 -1
  1610. package/dist/esm/scrollarea/scrollarea.d.ts +1 -1
  1611. package/dist/esm/scrollarea/scrollarea.d.ts.map +1 -1
  1612. package/dist/esm/scrollarea/scrollarea.js +5 -3
  1613. package/dist/esm/scrollarea/scrollarea.js.map +1 -1
  1614. package/dist/esm/scrollbar/scrollbar.d.ts +1 -0
  1615. package/dist/esm/scrollbar/scrollbar.d.ts.map +1 -1
  1616. package/dist/esm/scrollbar/scrollbar.js +12 -3
  1617. package/dist/esm/scrollbar/scrollbar.js.map +1 -1
  1618. package/dist/esm/segmented/segmented.d.ts.map +1 -1
  1619. package/dist/esm/segmented/segmented.js +3 -1
  1620. package/dist/esm/segmented/segmented.js.map +1 -1
  1621. package/dist/esm/select/index.d.ts +2 -2
  1622. package/dist/esm/select/index.d.ts.map +1 -1
  1623. package/dist/esm/select/index.js +1 -1
  1624. package/dist/esm/select/select.d.ts +3 -0
  1625. package/dist/esm/select/select.d.ts.map +1 -1
  1626. package/dist/esm/select/select.js +176 -209
  1627. package/dist/esm/select/select.js.map +1 -1
  1628. package/dist/esm/shared/calendar.d.ts.map +1 -1
  1629. package/dist/esm/shared/calendar.js +6 -6
  1630. package/dist/esm/shared/calendar.js.map +1 -1
  1631. package/dist/esm/shared/date-input.js +6 -6
  1632. package/dist/esm/shared/date-input.js.map +1 -1
  1633. package/dist/esm/shared/floating-feedback.d.ts +7 -0
  1634. package/dist/esm/shared/floating-feedback.d.ts.map +1 -0
  1635. package/dist/esm/shared/floating-feedback.js +24 -0
  1636. package/dist/esm/shared/floating-feedback.js.map +1 -0
  1637. package/dist/esm/shared/floating.d.ts.map +1 -1
  1638. package/dist/esm/shared/floating.js +1 -0
  1639. package/dist/esm/shared/floating.js.map +1 -1
  1640. package/dist/esm/shared/motion.d.ts.map +1 -1
  1641. package/dist/esm/shared/motion.js +4 -4
  1642. package/dist/esm/shared/motion.js.map +1 -1
  1643. package/dist/esm/shared/parse-date.d.ts +1 -1
  1644. package/dist/esm/shared/parse-date.d.ts.map +1 -1
  1645. package/dist/esm/shared/parse-date.js +2 -2
  1646. package/dist/esm/shared/parse-date.js.map +1 -1
  1647. package/dist/esm/shared/scoped-portal.d.ts.map +1 -1
  1648. package/dist/esm/shared/scoped-portal.js +17 -2
  1649. package/dist/esm/shared/scoped-portal.js.map +1 -1
  1650. package/dist/esm/shared/selection-content.d.ts +22 -0
  1651. package/dist/esm/shared/selection-content.d.ts.map +1 -0
  1652. package/dist/esm/shared/selection-content.js +164 -0
  1653. package/dist/esm/shared/selection-content.js.map +1 -0
  1654. package/dist/esm/shared/time.d.ts +1 -1
  1655. package/dist/esm/shared/time.d.ts.map +1 -1
  1656. package/dist/esm/shared/time.js +16 -2
  1657. package/dist/esm/shared/time.js.map +1 -1
  1658. package/dist/esm/shared/types.d.ts +1 -1
  1659. package/dist/esm/shared/use-drag-announcements.d.ts +8 -0
  1660. package/dist/esm/shared/use-drag-announcements.d.ts.map +1 -0
  1661. package/dist/esm/shared/use-drag-announcements.js +28 -0
  1662. package/dist/esm/shared/use-drag-announcements.js.map +1 -0
  1663. package/dist/esm/shared/use-formatted-text.d.ts +4 -0
  1664. package/dist/esm/shared/use-formatted-text.d.ts.map +1 -0
  1665. package/dist/esm/shared/use-formatted-text.js +80 -0
  1666. package/dist/esm/shared/use-formatted-text.js.map +1 -0
  1667. package/dist/esm/shared/use-text.d.ts +3 -2
  1668. package/dist/esm/shared/use-text.d.ts.map +1 -1
  1669. package/dist/esm/shared/use-text.js +3 -3
  1670. package/dist/esm/shared/use-text.js.map +1 -1
  1671. package/dist/esm/skeleton/skeleton.d.ts +2 -1
  1672. package/dist/esm/skeleton/skeleton.d.ts.map +1 -1
  1673. package/dist/esm/skeleton/skeleton.js +10 -3
  1674. package/dist/esm/skeleton/skeleton.js.map +1 -1
  1675. package/dist/esm/slider/slider.d.ts +1 -0
  1676. package/dist/esm/slider/slider.d.ts.map +1 -1
  1677. package/dist/esm/slider/slider.js +14 -5
  1678. package/dist/esm/slider/slider.js.map +1 -1
  1679. package/dist/esm/space/space.d.ts.map +1 -1
  1680. package/dist/esm/space/space.js +3 -1
  1681. package/dist/esm/space/space.js.map +1 -1
  1682. package/dist/esm/splitter/index.d.ts +2 -1
  1683. package/dist/esm/splitter/index.d.ts.map +1 -1
  1684. package/dist/esm/splitter/index.js +1 -1
  1685. package/dist/esm/splitter/splitter.d.ts +1 -1
  1686. package/dist/esm/splitter/splitter.d.ts.map +1 -1
  1687. package/dist/esm/splitter/splitter.js +9 -3
  1688. package/dist/esm/splitter/splitter.js.map +1 -1
  1689. package/dist/esm/statistic/index.d.ts +2 -1
  1690. package/dist/esm/statistic/index.d.ts.map +1 -1
  1691. package/dist/esm/statistic/index.js +1 -1
  1692. package/dist/esm/statistic/statistic.d.ts +3 -2
  1693. package/dist/esm/statistic/statistic.d.ts.map +1 -1
  1694. package/dist/esm/statistic/statistic.js +13 -5
  1695. package/dist/esm/statistic/statistic.js.map +1 -1
  1696. package/dist/esm/steps/steps.d.ts +1 -1
  1697. package/dist/esm/steps/steps.d.ts.map +1 -1
  1698. package/dist/esm/steps/steps.js +3 -1
  1699. package/dist/esm/steps/steps.js.map +1 -1
  1700. package/dist/esm/styles/alert.css +1 -1
  1701. package/dist/esm/styles/anchor.css +1 -1
  1702. package/dist/esm/styles/appbar.css +1 -1
  1703. package/dist/esm/styles/autocomplete.css +1 -1
  1704. package/dist/esm/styles/avatar.css +1 -1
  1705. package/dist/esm/styles/backtop.css +1 -1
  1706. package/dist/esm/styles/badge.css +1 -1
  1707. package/dist/esm/styles/base.css +1 -2
  1708. package/dist/esm/styles/breadcrumb.css +1 -1
  1709. package/dist/esm/styles/button.css +1 -1
  1710. package/dist/esm/styles/calendar.css +1 -1
  1711. package/dist/esm/styles/card.css +1 -1
  1712. package/dist/esm/styles/carousel.css +1 -1
  1713. package/dist/esm/styles/cascader.css +1 -1
  1714. package/dist/esm/styles/checkbox.css +1 -1
  1715. package/dist/esm/styles/collapse.css +1 -1
  1716. package/dist/esm/styles/colorpicker.css +1 -1
  1717. package/dist/esm/styles/commandpalette.css +1 -1
  1718. package/dist/esm/styles/components/autocomplete.css +1 -1
  1719. package/dist/esm/styles/components/button.css +1 -1
  1720. package/dist/esm/styles/components/card.css +1 -1
  1721. package/dist/esm/styles/components/cascader.css +1 -1
  1722. package/dist/esm/styles/components/checkbox.css +1 -1
  1723. package/dist/esm/styles/components/collapse.css +1 -1
  1724. package/dist/esm/styles/components/colorpicker.css +1 -1
  1725. package/dist/esm/styles/components/commandpalette.css +1 -1
  1726. package/dist/esm/styles/components/datepicker.css +1 -1
  1727. package/dist/esm/styles/components/drawer.css +1 -1
  1728. package/dist/esm/styles/components/dropdown.css +1 -1
  1729. package/dist/esm/styles/components/filelist.css +1 -1
  1730. package/dist/esm/styles/components/flex.css +1 -0
  1731. package/dist/esm/styles/components/floatbutton.css +1 -1
  1732. package/dist/esm/styles/components/form.css +1 -1
  1733. package/dist/esm/styles/components/input.css +1 -1
  1734. package/dist/esm/styles/components/inputnumber.css +1 -1
  1735. package/dist/esm/styles/components/inputotp.css +1 -1
  1736. package/dist/esm/styles/components/mentions.css +1 -1
  1737. package/dist/esm/styles/components/menu.css +1 -1
  1738. package/dist/esm/styles/components/modal.css +1 -1
  1739. package/dist/esm/styles/components/pagination.css +1 -1
  1740. package/dist/esm/styles/components/radio.css +1 -1
  1741. package/dist/esm/styles/components/segmented.css +1 -1
  1742. package/dist/esm/styles/components/select.css +1 -1
  1743. package/dist/esm/styles/components/steps.css +1 -1
  1744. package/dist/esm/styles/components/switch.css +1 -1
  1745. package/dist/esm/styles/components/tabs.css +1 -1
  1746. package/dist/esm/styles/components/tag.css +1 -1
  1747. package/dist/esm/styles/components/textarea.css +1 -1
  1748. package/dist/esm/styles/components/timepicker.css +1 -1
  1749. package/dist/esm/styles/components/tree.css +1 -1
  1750. package/dist/esm/styles/components/treeselect.css +1 -1
  1751. package/dist/esm/styles/config-provider.css +1 -1
  1752. package/dist/esm/styles/confirm.css +1 -1
  1753. package/dist/esm/styles/datepicker.css +1 -1
  1754. package/dist/esm/styles/daterangepicker.css +1 -1
  1755. package/dist/esm/styles/datetimepicker.css +1 -1
  1756. package/dist/esm/styles/descriptions.css +1 -1
  1757. package/dist/esm/styles/divider.css +1 -1
  1758. package/dist/esm/styles/drawer.css +1 -1
  1759. package/dist/esm/styles/dropdown.css +1 -1
  1760. package/dist/esm/styles/empty.css +1 -1
  1761. package/dist/esm/styles/errorboundary.css +1 -1
  1762. package/dist/esm/styles/filelist.css +1 -1
  1763. package/dist/esm/styles/flex.css +1 -0
  1764. package/dist/esm/styles/floatbutton.css +1 -1
  1765. package/dist/esm/styles/form.css +1 -1
  1766. package/dist/esm/styles/foundation.css +1 -0
  1767. package/dist/esm/styles/grid.css +1 -1
  1768. package/dist/esm/styles/image.css +1 -1
  1769. package/dist/esm/styles/index.css +886 -941
  1770. package/dist/esm/styles/index.css.map +1 -1
  1771. package/dist/esm/styles/infinitescroll.css +1 -1
  1772. package/dist/esm/styles/input.css +1 -1
  1773. package/dist/esm/styles/inputmask.css +1 -1
  1774. package/dist/esm/styles/inputnumber.css +1 -1
  1775. package/dist/esm/styles/inputotp.css +1 -1
  1776. package/dist/esm/styles/layout.css +1 -1
  1777. package/dist/esm/styles/loading.css +1 -1
  1778. package/dist/esm/styles/loadingbar.css +1 -1
  1779. package/dist/esm/styles/masonry.css +1 -1
  1780. package/dist/esm/styles/mentions.css +1 -1
  1781. package/dist/esm/styles/menu.css +1 -1
  1782. package/dist/esm/styles/message.css +1 -1
  1783. package/dist/esm/styles/modal.css +1 -1
  1784. package/dist/esm/styles/notification.css +1 -1
  1785. package/dist/esm/styles/pagination.css +1 -1
  1786. package/dist/esm/styles/popconfirm.css +1 -1
  1787. package/dist/esm/styles/popover.css +1 -1
  1788. package/dist/esm/styles/progress.css +1 -1
  1789. package/dist/esm/styles/qrcode.css +1 -1
  1790. package/dist/esm/styles/radio.css +1 -1
  1791. package/dist/esm/styles/rate.css +1 -1
  1792. package/dist/esm/styles/result.css +1 -1
  1793. package/dist/esm/styles/scrollarea.css +1 -1
  1794. package/dist/esm/styles/scrollbar.css +1 -1
  1795. package/dist/esm/styles/segmented.css +1 -1
  1796. package/dist/esm/styles/select.css +1 -1
  1797. package/dist/esm/styles/skeleton.css +1 -1
  1798. package/dist/esm/styles/slider.css +1 -1
  1799. package/dist/esm/styles/space.css +1 -1
  1800. package/dist/esm/styles/splitter.css +1 -1
  1801. package/dist/esm/styles/statistic.css +1 -1
  1802. package/dist/esm/styles/steps.css +1 -1
  1803. package/dist/esm/styles/switch.css +1 -1
  1804. package/dist/esm/styles/table.css +1 -1
  1805. package/dist/esm/styles/tabletanstack.css +1 -1
  1806. package/dist/esm/styles/tabs.css +1 -1
  1807. package/dist/esm/styles/tag.css +1 -1
  1808. package/dist/esm/styles/textarea.css +1 -1
  1809. package/dist/esm/styles/timeline.css +1 -1
  1810. package/dist/esm/styles/timepicker.css +1 -1
  1811. package/dist/esm/styles/timerangepicker.css +1 -1
  1812. package/dist/esm/styles/tooltip.css +1 -1
  1813. package/dist/esm/styles/tour.css +1 -1
  1814. package/dist/esm/styles/transfer.css +1 -1
  1815. package/dist/esm/styles/tree.css +1 -1
  1816. package/dist/esm/styles/treeselect.css +1 -1
  1817. package/dist/esm/styles/typography.css +1 -1
  1818. package/dist/esm/styles/upload.css +1 -1
  1819. package/dist/esm/styles/virtuallist.css +1 -1
  1820. package/dist/esm/switch/index.d.ts +2 -1
  1821. package/dist/esm/switch/index.d.ts.map +1 -1
  1822. package/dist/esm/switch/index.js +1 -1
  1823. package/dist/esm/switch/switch.d.ts.map +1 -1
  1824. package/dist/esm/switch/switch.js +3 -1
  1825. package/dist/esm/switch/switch.js.map +1 -1
  1826. package/dist/esm/table/table.d.ts +28 -5
  1827. package/dist/esm/table/table.d.ts.map +1 -1
  1828. package/dist/esm/table/table.js +113 -31
  1829. package/dist/esm/table/table.js.map +1 -1
  1830. package/dist/esm/tabletanstack/defaults.d.ts +44 -0
  1831. package/dist/esm/tabletanstack/defaults.d.ts.map +1 -0
  1832. package/dist/esm/tabletanstack/defaults.js +1 -0
  1833. package/dist/esm/tabletanstack/index.d.ts +1 -1
  1834. package/dist/esm/tabletanstack/index.d.ts.map +1 -1
  1835. package/dist/esm/tabletanstack/reordering.d.ts +1 -1
  1836. package/dist/esm/tabletanstack/reordering.d.ts.map +1 -1
  1837. package/dist/esm/tabletanstack/reordering.js +18 -10
  1838. package/dist/esm/tabletanstack/reordering.js.map +1 -1
  1839. package/dist/esm/tabletanstack/tabletanstack.d.ts +15 -49
  1840. package/dist/esm/tabletanstack/tabletanstack.d.ts.map +1 -1
  1841. package/dist/esm/tabletanstack/tabletanstack.js +107 -70
  1842. package/dist/esm/tabletanstack/tabletanstack.js.map +1 -1
  1843. package/dist/esm/tabs/tabs.d.ts +2 -1
  1844. package/dist/esm/tabs/tabs.d.ts.map +1 -1
  1845. package/dist/esm/tabs/tabs.js +119 -174
  1846. package/dist/esm/tabs/tabs.js.map +1 -1
  1847. package/dist/esm/tag/group.d.ts +2 -2
  1848. package/dist/esm/tag/group.d.ts.map +1 -1
  1849. package/dist/esm/tag/group.js +5 -2
  1850. package/dist/esm/tag/group.js.map +1 -1
  1851. package/dist/esm/tag/tag.d.ts +2 -2
  1852. package/dist/esm/tag/tag.d.ts.map +1 -1
  1853. package/dist/esm/tag/tag.js +4 -8
  1854. package/dist/esm/tag/tag.js.map +1 -1
  1855. package/dist/esm/tailwind-tokens.d.ts +91 -0
  1856. package/dist/esm/tailwind-tokens.d.ts.map +1 -0
  1857. package/dist/esm/tailwind-tokens.js +93 -0
  1858. package/dist/esm/tailwind-tokens.js.map +1 -0
  1859. package/dist/esm/tailwind.d.ts +136 -0
  1860. package/dist/esm/tailwind.d.ts.map +1 -0
  1861. package/dist/esm/tailwind.js +24 -0
  1862. package/dist/esm/tailwind.js.map +1 -0
  1863. package/dist/esm/textarea/index.d.ts +2 -2
  1864. package/dist/esm/textarea/index.d.ts.map +1 -1
  1865. package/dist/esm/textarea/index.js +1 -1
  1866. package/dist/esm/textarea/textarea.d.ts +1 -0
  1867. package/dist/esm/textarea/textarea.d.ts.map +1 -1
  1868. package/dist/esm/textarea/textarea.js +11 -2
  1869. package/dist/esm/textarea/textarea.js.map +1 -1
  1870. package/dist/esm/timeline/timeline.d.ts +1 -1
  1871. package/dist/esm/timeline/timeline.d.ts.map +1 -1
  1872. package/dist/esm/timeline/timeline.js +3 -1
  1873. package/dist/esm/timeline/timeline.js.map +1 -1
  1874. package/dist/esm/timepicker/index.d.ts +2 -1
  1875. package/dist/esm/timepicker/index.d.ts.map +1 -1
  1876. package/dist/esm/timepicker/index.js +1 -1
  1877. package/dist/esm/timepicker/time-panel.js +6 -6
  1878. package/dist/esm/timepicker/time-panel.js.map +1 -1
  1879. package/dist/esm/timepicker/timepicker.d.ts.map +1 -1
  1880. package/dist/esm/timepicker/timepicker.js +21 -13
  1881. package/dist/esm/timepicker/timepicker.js.map +1 -1
  1882. package/dist/esm/timerangepicker/timerangepicker.d.ts.map +1 -1
  1883. package/dist/esm/timerangepicker/timerangepicker.js +20 -14
  1884. package/dist/esm/timerangepicker/timerangepicker.js.map +1 -1
  1885. package/dist/esm/tooltip/tooltip.d.ts +2 -1
  1886. package/dist/esm/tooltip/tooltip.d.ts.map +1 -1
  1887. package/dist/esm/tooltip/tooltip.js +9 -2
  1888. package/dist/esm/tooltip/tooltip.js.map +1 -1
  1889. package/dist/esm/tour/index.d.ts +2 -1
  1890. package/dist/esm/tour/index.d.ts.map +1 -1
  1891. package/dist/esm/tour/index.js +1 -1
  1892. package/dist/esm/tour/tour.d.ts +1 -1
  1893. package/dist/esm/tour/tour.d.ts.map +1 -1
  1894. package/dist/esm/tour/tour.js +10 -8
  1895. package/dist/esm/tour/tour.js.map +1 -1
  1896. package/dist/esm/transfer/transfer.d.ts +1 -1
  1897. package/dist/esm/transfer/transfer.d.ts.map +1 -1
  1898. package/dist/esm/transfer/transfer.js +27 -22
  1899. package/dist/esm/transfer/transfer.js.map +1 -1
  1900. package/dist/esm/tree/drag.d.ts.map +1 -1
  1901. package/dist/esm/tree/drag.js +13 -11
  1902. package/dist/esm/tree/drag.js.map +1 -1
  1903. package/dist/esm/tree/tree.d.ts +5 -1
  1904. package/dist/esm/tree/tree.d.ts.map +1 -1
  1905. package/dist/esm/tree/tree.js +28 -12
  1906. package/dist/esm/tree/tree.js.map +1 -1
  1907. package/dist/esm/treeselect/treeselect.d.ts +4 -2
  1908. package/dist/esm/treeselect/treeselect.d.ts.map +1 -1
  1909. package/dist/esm/treeselect/treeselect.js +149 -111
  1910. package/dist/esm/treeselect/treeselect.js.map +1 -1
  1911. package/dist/esm/typography/index.d.ts +2 -1
  1912. package/dist/esm/typography/index.d.ts.map +1 -1
  1913. package/dist/esm/typography/index.js +1 -1
  1914. package/dist/esm/typography/typography.d.ts.map +1 -1
  1915. package/dist/esm/typography/typography.js +18 -12
  1916. package/dist/esm/typography/typography.js.map +1 -1
  1917. package/dist/esm/upload/upload.d.ts +1 -1
  1918. package/dist/esm/upload/upload.d.ts.map +1 -1
  1919. package/dist/esm/upload/upload.js +29 -21
  1920. package/dist/esm/upload/upload.js.map +1 -1
  1921. package/dist/esm/virtuallist/virtuallist.d.ts +1 -0
  1922. package/dist/esm/virtuallist/virtuallist.d.ts.map +1 -1
  1923. package/dist/esm/virtuallist/virtuallist.js +15 -5
  1924. package/dist/esm/virtuallist/virtuallist.js.map +1 -1
  1925. package/dist/locales/check-translations.mjs +84 -0
  1926. package/dist/locales/en-US.json +335 -0
  1927. package/dist/locales/ja-JP.json +335 -0
  1928. package/dist/locales/ko-KR.json +335 -0
  1929. package/dist/locales/schema.json +1250 -0
  1930. package/dist/locales/zh-CN.json +335 -0
  1931. package/dist/locales/zh-TW.json +335 -0
  1932. package/dist/tailwind.css +71 -0
  1933. package/package.json +46 -47
  1934. package/dist/cjs/browser/imagecropper.cjs +0 -2
  1935. package/dist/cjs/browser/modules/imagecropper/crop.cjs +0 -75
  1936. package/dist/cjs/browser/modules/imagecropper/crop.cjs.map +0 -1
  1937. package/dist/cjs/browser/modules/imagecropper/editor.cjs +0 -245
  1938. package/dist/cjs/browser/modules/imagecropper/editor.cjs.map +0 -1
  1939. package/dist/cjs/browser/modules/imagecropper/imagecropper.cjs +0 -76
  1940. package/dist/cjs/browser/modules/imagecropper/imagecropper.cjs.map +0 -1
  1941. package/dist/cjs/browser/modules/imagecropper/index.cjs.map +0 -1
  1942. package/dist/cjs/browser/modules/locales/zh-tw.cjs +0 -304
  1943. package/dist/cjs/browser/modules/locales/zh-tw.cjs.map +0 -1
  1944. package/dist/cjs/browser/modules/signaturepad/index.cjs.map +0 -1
  1945. package/dist/cjs/browser/modules/signaturepad/signaturepad.cjs +0 -301
  1946. package/dist/cjs/browser/modules/signaturepad/signaturepad.cjs.map +0 -1
  1947. package/dist/cjs/browser/signaturepad.cjs +0 -2
  1948. package/dist/cjs/imagecropper/crop.cjs +0 -75
  1949. package/dist/cjs/imagecropper/crop.cjs.map +0 -1
  1950. package/dist/cjs/imagecropper/crop.d.cts +0 -3
  1951. package/dist/cjs/imagecropper/crop.d.cts.map +0 -1
  1952. package/dist/cjs/imagecropper/editor.cjs +0 -244
  1953. package/dist/cjs/imagecropper/editor.cjs.map +0 -1
  1954. package/dist/cjs/imagecropper/editor.d.cts +0 -3
  1955. package/dist/cjs/imagecropper/editor.d.cts.map +0 -1
  1956. package/dist/cjs/imagecropper/imagecropper.cjs +0 -75
  1957. package/dist/cjs/imagecropper/imagecropper.cjs.map +0 -1
  1958. package/dist/cjs/imagecropper/imagecropper.d.cts +0 -35
  1959. package/dist/cjs/imagecropper/imagecropper.d.cts.map +0 -1
  1960. package/dist/cjs/imagecropper/index.cjs.map +0 -1
  1961. package/dist/cjs/imagecropper/index.d.cts +0 -3
  1962. package/dist/cjs/imagecropper/index.d.cts.map +0 -1
  1963. package/dist/cjs/locales/zh-tw.cjs +0 -304
  1964. package/dist/cjs/locales/zh-tw.cjs.map +0 -1
  1965. package/dist/cjs/locales/zh-tw.d.cts +0 -90
  1966. package/dist/cjs/locales/zh-tw.d.cts.map +0 -1
  1967. package/dist/cjs/signaturepad/index.cjs.map +0 -1
  1968. package/dist/cjs/signaturepad/index.d.cts +0 -3
  1969. package/dist/cjs/signaturepad/index.d.cts.map +0 -1
  1970. package/dist/cjs/signaturepad/signaturepad.cjs +0 -300
  1971. package/dist/cjs/signaturepad/signaturepad.cjs.map +0 -1
  1972. package/dist/cjs/signaturepad/signaturepad.d.cts +0 -38
  1973. package/dist/cjs/signaturepad/signaturepad.d.cts.map +0 -1
  1974. package/dist/cjs/styles/components/imagecropper.css +0 -1
  1975. package/dist/cjs/styles/components/signaturepad.css +0 -1
  1976. package/dist/cjs/styles/imagecropper.css +0 -1
  1977. package/dist/cjs/styles/signaturepad.css +0 -1
  1978. package/dist/esm/browser/imagecropper.js +0 -2
  1979. package/dist/esm/browser/modules/imagecropper/crop.js +0 -37
  1980. package/dist/esm/browser/modules/imagecropper/crop.js.map +0 -1
  1981. package/dist/esm/browser/modules/imagecropper/editor.js +0 -197
  1982. package/dist/esm/browser/modules/imagecropper/editor.js.map +0 -1
  1983. package/dist/esm/browser/modules/imagecropper/imagecropper.js +0 -38
  1984. package/dist/esm/browser/modules/imagecropper/imagecropper.js.map +0 -1
  1985. package/dist/esm/browser/modules/imagecropper/index.js +0 -2
  1986. package/dist/esm/browser/modules/locales/zh-tw.js +0 -263
  1987. package/dist/esm/browser/modules/locales/zh-tw.js.map +0 -1
  1988. package/dist/esm/browser/modules/signaturepad/index.js +0 -2
  1989. package/dist/esm/browser/modules/signaturepad/signaturepad.js +0 -263
  1990. package/dist/esm/browser/modules/signaturepad/signaturepad.js.map +0 -1
  1991. package/dist/esm/browser/signaturepad.js +0 -2
  1992. package/dist/esm/imagecropper/crop.d.ts +0 -3
  1993. package/dist/esm/imagecropper/crop.d.ts.map +0 -1
  1994. package/dist/esm/imagecropper/crop.js +0 -37
  1995. package/dist/esm/imagecropper/crop.js.map +0 -1
  1996. package/dist/esm/imagecropper/editor.d.ts +0 -3
  1997. package/dist/esm/imagecropper/editor.d.ts.map +0 -1
  1998. package/dist/esm/imagecropper/editor.js +0 -196
  1999. package/dist/esm/imagecropper/editor.js.map +0 -1
  2000. package/dist/esm/imagecropper/imagecropper.d.ts +0 -35
  2001. package/dist/esm/imagecropper/imagecropper.d.ts.map +0 -1
  2002. package/dist/esm/imagecropper/imagecropper.js +0 -37
  2003. package/dist/esm/imagecropper/imagecropper.js.map +0 -1
  2004. package/dist/esm/imagecropper/index.d.ts +0 -3
  2005. package/dist/esm/imagecropper/index.d.ts.map +0 -1
  2006. package/dist/esm/imagecropper/index.js +0 -2
  2007. package/dist/esm/locales/zh-tw.d.ts +0 -90
  2008. package/dist/esm/locales/zh-tw.d.ts.map +0 -1
  2009. package/dist/esm/locales/zh-tw.js +0 -263
  2010. package/dist/esm/locales/zh-tw.js.map +0 -1
  2011. package/dist/esm/signaturepad/index.d.ts +0 -3
  2012. package/dist/esm/signaturepad/index.d.ts.map +0 -1
  2013. package/dist/esm/signaturepad/index.js +0 -2
  2014. package/dist/esm/signaturepad/signaturepad.d.ts +0 -38
  2015. package/dist/esm/signaturepad/signaturepad.d.ts.map +0 -1
  2016. package/dist/esm/signaturepad/signaturepad.js +0 -262
  2017. package/dist/esm/signaturepad/signaturepad.js.map +0 -1
  2018. package/dist/esm/styles/components/imagecropper.css +0 -1
  2019. package/dist/esm/styles/components/signaturepad.css +0 -1
  2020. package/dist/esm/styles/imagecropper.css +0 -1
  2021. package/dist/esm/styles/signaturepad.css +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"select/select.js","sources":["../../../../../src/select/select.tsx"],"sourcesContent":["import { useVirtualizer } from '@tanstack/react-virtual';\nimport { Check, ChevronDown, LoaderCircle, Plus, X } from 'lucide-react';\nimport {\n type CSSProperties,\n forwardRef,\n type InputHTMLAttributes,\n type ReactNode,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { useLeafConfig } from '../config-provider/context';\nimport { useFormField } from '../form/form';\nimport { classes } from '../shared/classes';\nimport { ClearButton } from '../shared/clear-button';\nimport { FormValue, useFieldValue, useMergedRef } from '../shared/field';\nimport {\n FloatingPanel,\n type PopupOptions,\n useActiveOption,\n useFloatingDismiss,\n usePopupState,\n} from '../shared/floating';\nimport { FloatingHighlight, useFloatingHighlight } from '../shared/floating-highlight';\nimport { useListMotion } from '../shared/motion';\nimport type { ControlSize, ControlStatus } from '../shared/types';\nimport { useText } from '../shared/use-text';\n\nexport interface SelectOption {\n value: string;\n label: ReactNode;\n disabled?: boolean;\n searchLabel?: string;\n}\nexport interface SelectOptionGroup {\n label: ReactNode;\n options: readonly SelectOption[];\n}\ninterface SelectBaseProps\n extends Omit<\n InputHTMLAttributes<HTMLInputElement>,\n 'type' | 'size' | 'value' | 'defaultValue' | 'onChange' | 'children' | 'multiple'\n >,\n PopupOptions {\n options: readonly (SelectOption | SelectOptionGroup)[];\n size?: ControlSize;\n status?: ControlStatus;\n allowClear?: boolean;\n showSearch?: boolean;\n filterOption?: boolean | ((query: string, option: SelectOption) => boolean);\n onSearch?: (query: string) => void;\n onOpenChange?: (open: boolean) => void;\n open?: boolean;\n defaultOpen?: boolean;\n inputReadOnly?: boolean;\n labelRender?: (option: SelectOption) => ReactNode;\n tagRender?: (option: SelectOption, remove: () => void) => ReactNode;\n popupRender?: (content: ReactNode) => ReactNode;\n onPopupScroll?: (event: React.UIEvent<HTMLDivElement>) => void;\n popupWidth?: number | string;\n popupMaxWidth?: number | string;\n popupClassName?: string;\n popupStyle?: CSSProperties;\n loading?: boolean;\n notFoundContent?: ReactNode;\n optionRender?: (option: SelectOption) => ReactNode;\n maxCount?: number;\n maxTagCount?: number | 'responsive';\n allowCreate?: boolean;\n onCreate?: (option: SelectOption) => void;\n virtual?: boolean;\n listHeight?: number;\n optionHeight?: number;\n}\nexport type SelectProps = SelectBaseProps &\n (\n | {\n multiple?: false;\n value?: string;\n defaultValue?: string;\n onChange?: (value: string, option?: SelectOption) => void;\n }\n | {\n multiple: true;\n value?: readonly string[];\n defaultValue?: readonly string[];\n onChange?: (value: string[], options: SelectOption[]) => void;\n }\n );\nconst empty: readonly string[] = [];\nconst searchText = (option: SelectOption) =>\n option.searchLabel ??\n (typeof option.label === 'string' || typeof option.label === 'number'\n ? String(option.label)\n : option.value);\nexport const Select = forwardRef<HTMLInputElement, SelectProps>(\n function Select(props, forwardedRef) {\n const {\n options: suppliedOptions,\n size = 'md',\n status: statusProp,\n placeholder,\n value,\n defaultValue,\n name,\n required: requiredProp,\n allowClear = false,\n form,\n className,\n style,\n disabled: disabledProp,\n id: idProp,\n onOpenChange,\n open: controlledOpen,\n defaultOpen,\n inputReadOnly,\n labelRender,\n tagRender,\n popupRender,\n onPopupScroll,\n onClick,\n onKeyDown,\n onBlur,\n multiple = false,\n showSearch: searchProp = false,\n filterOption = true,\n onSearch,\n popupWidth = 'auto',\n popupMaxWidth = 420,\n popupClassName,\n popupStyle,\n popupPlacement,\n getPopupContainer,\n loading = false,\n notFoundContent,\n optionRender,\n maxCount,\n maxTagCount,\n allowCreate = false,\n onCreate,\n virtual: virtualProp,\n listHeight = 248,\n optionHeight = 36,\n onChange: _onChange,\n ...inputProps\n } = props;\n const t = useText();\n const showSearch = searchProp || allowCreate;\n const [created, setCreated] = useState<SelectOption[]>([]);\n const baseOptions = useMemo(\n () => suppliedOptions.flatMap((entry) => ('options' in entry ? [...entry.options] : [entry])),\n [suppliedOptions],\n );\n const options = useMemo(\n () => [\n ...baseOptions,\n ...created.filter((entry) => !baseOptions.some((option) => option.value === entry.value)),\n ],\n [baseOptions, created],\n );\n const optionGroups = useMemo(\n () =>\n new Map(\n suppliedOptions.flatMap((entry) =>\n 'options' in entry\n ? entry.options.map((option) => [option.value, entry.label] as const)\n : [],\n ),\n ),\n [suppliedOptions],\n );\n const virtual = virtualProp ?? options.length > 100;\n const { messages } = useLeafConfig();\n const field = useFormField();\n const disabled = disabledProp || field?.disabled;\n const required = requiredProp ?? field?.required;\n const status = statusProp ?? (field?.error ? 'error' : undefined);\n const root = useRef<HTMLDivElement>(null);\n const input = useRef<HTMLInputElement>(null);\n const panel = useRef<HTMLDivElement>(null);\n const merged = useMergedRef(input, forwardedRef);\n const panelId = `${useId()}-listbox`;\n const [selected, setSelected] = useFieldValue<string | readonly string[]>(\n value,\n defaultValue ?? (multiple ? empty : ''),\n input,\n form,\n );\n const values = typeof selected === 'string' ? (selected ? [selected] : []) : selected;\n const [responsiveCount, setResponsiveCount] = useState(3);\n // biome-ignore lint/correctness/useExhaustiveDependencies: Remeasure tag widths when the selected values change.\n useEffect(() => {\n if (maxTagCount !== 'responsive' || !root.current) return;\n const measure = () => {\n const width = root.current?.clientWidth ?? 0;\n let used = 90;\n let count = 0;\n for (const tag of root.current?.querySelectorAll<HTMLElement>('[data-leaf-tag-measure]') ??\n []) {\n used += tag.getBoundingClientRect().width + 4;\n if (used > width) break;\n count++;\n }\n setResponsiveCount(count);\n };\n const observer =\n typeof ResizeObserver === 'undefined' ? undefined : new ResizeObserver(measure);\n observer?.observe(root.current);\n window.addEventListener('resize', measure);\n measure();\n return () => {\n observer?.disconnect();\n window.removeEventListener('resize', measure);\n };\n }, [maxTagCount, values]);\n const visibleTagCount =\n maxTagCount === 'responsive'\n ? responsiveCount\n : maxTagCount === undefined\n ? values.length\n : Math.max(0, Math.floor(maxTagCount));\n useListMotion(\n root,\n JSON.stringify(values.slice(0, visibleTagCount)),\n '.leaf-select__tag[data-motion-key]',\n );\n useListMotion(root, values[0], multiple ? '' : '.leaf-select__input-wrap[data-motion-key]');\n const atLimit =\n multiple && maxCount !== undefined && values.length >= Math.max(0, Math.floor(maxCount));\n const unavailable = (option: SelectOption) =>\n option.disabled || (atLimit && !values.includes(option.value));\n const selectedCache = useRef(new Map<string, SelectOption>());\n const nextCache = new Map<string, SelectOption>();\n for (const key of values) {\n const record =\n options.find((option) => option.value === key) ?? selectedCache.current.get(key);\n if (record) nextCache.set(key, record);\n }\n selectedCache.current = nextCache;\n const selectedOptions = values.map((key) => nextCache.get(key) ?? { value: key, label: key });\n const [query, setQuery] = useState('');\n const [open, setOpen] = usePopupState(\n disabled || inputProps.readOnly,\n onOpenChange,\n controlledOpen,\n defaultOpen,\n );\n const [highlighted, setHighlighted] = useState(-1);\n const matched =\n !query || !showSearch || filterOption === false\n ? options\n : options.filter((option) =>\n typeof filterOption === 'function'\n ? filterOption(query, option)\n : searchText(option).toLocaleLowerCase().includes(query.toLocaleLowerCase()),\n );\n const newValue = query.trim();\n const createOption =\n allowCreate &&\n newValue &&\n !options.some((option) => option.value === newValue || searchText(option) === newValue)\n ? { value: newValue, label: newValue }\n : null;\n const filtered = createOption ? [...matched, createOption] : matched;\n const rows = useMemo(() => {\n const entries: { key: string; option?: SelectOption; group?: ReactNode; index: number }[] =\n [];\n let previousGroup: ReactNode;\n filtered.forEach((option, index) => {\n const group = optionGroups.get(option.value);\n if (group !== undefined && group !== previousGroup)\n entries.push({ key: `group-${option.value}`, group, index: -1 });\n entries.push({ key: option.value, option, index });\n previousGroup = group;\n });\n return entries;\n }, [filtered, optionGroups]);\n const virtualizer = useVirtualizer({\n count: rows.length,\n getScrollElement: () => panel.current,\n estimateSize: () => Math.max(24, optionHeight),\n overscan: 5,\n getItemKey: (index) => rows[index]?.key ?? index,\n enabled: open && virtual,\n initialRect: { height: listHeight, width: 240 },\n });\n useEffect(() => {\n if (open && virtual && highlighted >= 0) {\n const index = rows.findIndex((row) => row.index === highlighted);\n if (index >= 0) virtualizer.scrollToIndex(index, { align: 'auto' });\n }\n }, [open, virtual, highlighted, rows, virtualizer]);\n const updateQuery = (next: string) => {\n setQuery(next);\n onSearch?.(next);\n };\n const close = () => {\n setOpen(false);\n if (query) updateQuery('');\n };\n useFloatingDismiss(open, close, input, panel, root);\n useActiveOption(open, highlighted >= 0 ? `${panelId}-${highlighted}` : undefined, panel);\n const highlight = useFloatingHighlight(\n open,\n panel,\n highlighted >= 0 ? `${panelId}-${highlighted}` : undefined,\n `${query}:${filtered[highlighted]?.value}:${rows.length}:${virtualizer.range?.startIndex}:${virtualizer.range?.endIndex}`,\n );\n useEffect(() => {\n if (!open) setQuery('');\n }, [open]);\n const change = (next: readonly string[]) => {\n if (disabled || inputProps.readOnly) return;\n setSelected(multiple ? next : (next[0] ?? ''));\n if (props.multiple)\n props.onChange?.(\n [...next],\n [\n ...selectedOptions,\n ...options.filter((option) => !values.includes(option.value)),\n ...(createOption ? [createOption] : []),\n ].filter((option) => next.includes(option.value)),\n );\n else\n props.onChange?.(\n next[0] ?? '',\n [...options, ...(createOption ? [createOption] : [])].find(\n (option) => option.value === next[0],\n ),\n );\n };\n const openMenu = () => {\n if (disabled || inputProps.readOnly) return;\n const active = filtered.findIndex(\n (option) => values.includes(option.value) && !unavailable(option),\n );\n setHighlighted(active >= 0 ? active : filtered.findIndex((option) => !unavailable(option)));\n setOpen(true);\n };\n const selectOption = (option: SelectOption) => {\n if (unavailable(option) || inputProps.readOnly) return;\n if (createOption && option.value === createOption.value) {\n setCreated((previous) => [...previous, option]);\n onCreate?.(option);\n }\n change(\n multiple\n ? values.includes(option.value)\n ? values.filter((value) => value !== option.value)\n : [...values, option.value]\n : [option.value],\n );\n if (multiple) updateQuery('');\n else close();\n input.current?.focus();\n };\n const move = (direction: number) => {\n if (!filtered.length) return;\n let next = highlighted < 0 ? (direction > 0 ? -1 : filtered.length) : highlighted;\n for (let i = 0; i < filtered.length; i++) {\n next = (next + direction + filtered.length) % filtered.length;\n const candidate = filtered[next];\n if (candidate && !unavailable(candidate)) {\n setHighlighted(next);\n break;\n }\n }\n };\n const renderOption = (option: SelectOption, index: number) => (\n <button\n key={option.value}\n id={`${panelId}-${index}`}\n aria-posinset={index + 1}\n aria-setsize={filtered.length}\n type=\"button\"\n role=\"option\"\n aria-selected={values.includes(option.value)}\n aria-disabled={option.disabled || (atLimit && !values.includes(option.value)) || undefined}\n data-highlighted={highlighted === index || undefined}\n className=\"leaf-floating__option\"\n disabled={option.disabled || (atLimit && !values.includes(option.value))}\n tabIndex={-1}\n onMouseEnter={() => {\n if (!unavailable(option)) setHighlighted(index);\n }}\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => selectOption(option)}\n >\n <span className=\"leaf-select__option-label\">\n {createOption?.value === option.value ? (\n <>\n <Plus size={14} aria-hidden=\"true\" /> {t('创建', 'Create')} “{option.label}”\n </>\n ) : optionRender ? (\n optionRender(option)\n ) : (\n option.label\n )}\n </span>\n <Check size={15} aria-hidden=\"true\" className=\"leaf-select__check\" />\n </button>\n );\n const displayLabel = selectedOptions[0]\n ? (labelRender?.(selectedOptions[0]) ?? selectedOptions[0].label)\n : undefined;\n const textLabel =\n typeof displayLabel === 'string' || typeof displayLabel === 'number'\n ? String(displayLabel)\n : '';\n const inputValue = multiple || (showSearch && open) ? query : textLabel;\n const clearable = allowClear && values.length > 0 && !disabled && !inputProps.readOnly;\n return (\n // biome-ignore lint/a11y/noStaticElementInteractions: Pointer events on padding forward to the keyboard-accessible combobox input.\n // biome-ignore lint/a11y/useKeyWithClickEvents: The combobox input owns all keyboard interaction; this wrapper only extends its hit area.\n <div\n ref={root}\n className={classes(\n 'leaf-select',\n `leaf-select--${size}`,\n multiple && 'leaf-select--multiple',\n className,\n )}\n style={style}\n data-status={status}\n data-disabled={disabled ? '' : undefined}\n data-open={open ? '' : undefined}\n data-clearable={clearable ? '' : undefined}\n data-searchable={showSearch ? '' : undefined}\n onMouseDown={(event) => {\n if (\n !disabled &&\n event.target instanceof Element &&\n !event.target.closest('input, button, a')\n )\n event.preventDefault();\n }}\n onClick={(event) => {\n if (\n !disabled &&\n event.target instanceof Element &&\n root.current?.contains(event.target) &&\n !event.target.closest('input, button, a')\n ) {\n input.current?.focus();\n input.current?.click();\n }\n }}\n >\n <div className=\"leaf-select__content\">\n {multiple &&\n values.slice(0, visibleTagCount).map((value) => {\n const option = nextCache.get(value) ?? { value, label: value };\n const remove = () => change(values.filter((item) => item !== value));\n if (tagRender)\n return (\n <span key={value} className=\"leaf-select__tag\" data-motion-key={value}>\n {tagRender(option, remove)}\n </span>\n );\n return (\n <span key={value} className=\"leaf-select__tag\" data-motion-key={value}>\n <span>{option?.label ?? value}</span>\n {!disabled && !inputProps.readOnly && !option?.disabled && (\n <button\n type=\"button\"\n tabIndex={-1}\n aria-label={`${messages.remove} ${option ? searchText(option) : value}`}\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => {\n change(values.filter((item) => item !== value));\n input.current?.focus();\n }}\n >\n <X size={12} aria-hidden=\"true\" />\n </button>\n )}\n </span>\n );\n })}\n {multiple && values.length > visibleTagCount && (\n <span className=\"leaf-select__tag\">+{values.length - visibleTagCount}</span>\n )}\n {multiple && maxTagCount === 'responsive' && (\n <span\n aria-hidden=\"true\"\n style={{\n position: 'absolute',\n visibility: 'hidden',\n pointerEvents: 'none',\n display: 'flex',\n }}\n >\n {selectedOptions.map((option) => (\n <span key={option.value} data-leaf-tag-measure className=\"leaf-select__tag\">\n {option.label}\n <X size={12} />\n </span>\n ))}\n </span>\n )}\n <div className=\"leaf-select__input-wrap\" data-motion-key={values[0] ?? ''}>\n {!multiple &&\n !query &&\n displayLabel != null &&\n (!textLabel || (showSearch && open)) && (\n <span className=\"leaf-select__value\">{displayLabel}</span>\n )}\n <input\n {...inputProps}\n ref={merged}\n id={idProp ?? field?.id}\n form={form}\n type=\"text\"\n className=\"leaf-select__input\"\n disabled={disabled}\n readOnly={!showSearch || inputProps.readOnly || inputReadOnly}\n value={inputValue}\n placeholder={values.length ? '' : (placeholder ?? messages.select)}\n autoComplete=\"off\"\n role=\"combobox\"\n aria-expanded={open}\n aria-haspopup=\"listbox\"\n aria-controls={panelId}\n aria-autocomplete={showSearch ? 'list' : undefined}\n aria-activedescendant={\n open && filtered[highlighted] ? `${panelId}-${highlighted}` : undefined\n }\n aria-required={required || undefined}\n aria-invalid={status === 'error' ? true : inputProps['aria-invalid']}\n aria-describedby={\n [inputProps['aria-describedby'], field?.descriptionId].filter(Boolean).join(' ') ||\n undefined\n }\n onClick={(event) => {\n onClick?.(event);\n if (!event.defaultPrevented) {\n if (open && !showSearch) close();\n else if (!open) openMenu();\n }\n }}\n onBlur={(event) => {\n onBlur?.(event);\n if (\n !event.defaultPrevented &&\n !root.current?.contains(event.relatedTarget) &&\n !panel.current?.contains(event.relatedTarget)\n )\n close();\n }}\n onChange={(event) => {\n if (!open) openMenu();\n updateQuery(event.target.value);\n setHighlighted(-1);\n }}\n onKeyDown={(event) => {\n onKeyDown?.(event);\n if (event.defaultPrevented || event.nativeEvent.isComposing) return;\n if (event.key === 'ArrowDown' || event.key === 'ArrowUp') {\n event.preventDefault();\n if (!open) openMenu();\n else move(event.key === 'ArrowDown' ? 1 : -1);\n } else if ((event.key === 'Home' || event.key === 'End') && open && !showSearch) {\n event.preventDefault();\n const candidates = filtered\n .map((option, index) => ({ option, index }))\n .filter(({ option }) => !unavailable(option));\n setHighlighted(\n (event.key === 'Home' ? candidates[0] : candidates.at(-1))?.index ?? -1,\n );\n } else if (event.key === 'Enter' || (event.key === ' ' && !showSearch)) {\n event.preventDefault();\n if (!open) openMenu();\n else {\n const option =\n filtered[highlighted] ?? filtered.find((option) => !unavailable(option));\n if (option) selectOption(option);\n }\n } else if (event.key === 'Escape' && open) {\n event.preventDefault();\n event.stopPropagation();\n close();\n } else if (event.key === 'Tab' && open) close();\n else if (event.key === 'Backspace' && multiple && !query && !inputProps.readOnly) {\n const last = [...values]\n .reverse()\n .find((value) => !options.find((option) => option.value === value)?.disabled);\n if (last) {\n event.preventDefault();\n change(values.filter((value) => value !== last));\n }\n }\n }}\n />\n </div>\n </div>\n <button\n type=\"button\"\n className=\"leaf-select__arrow\"\n tabIndex={-1}\n disabled={disabled}\n aria-label={messages.select}\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => {\n if (open) close();\n else openMenu();\n input.current?.focus();\n }}\n >\n {loading ? (\n <LoaderCircle className=\"leaf-select__spinner\" size={16} aria-hidden=\"true\" />\n ) : (\n <ChevronDown size={16} aria-hidden=\"true\" />\n )}\n </button>\n {clearable && (\n <ClearButton\n label={messages.clearSelection}\n beforeArrow\n onClear={() => {\n change(empty);\n close();\n input.current?.focus();\n }}\n />\n )}\n <FormValue\n name={multiple ? undefined : name}\n form={form}\n value={multiple ? values.join(',') : (values[0] ?? '')}\n disabled={disabled}\n required={required}\n triggerRef={input}\n />\n {multiple &&\n values.map((value) => (\n <input\n key={value}\n type=\"hidden\"\n name={name}\n form={form}\n value={value}\n disabled={disabled}\n />\n ))}\n <FloatingPanel\n open={open}\n placement={popupPlacement}\n container={getPopupContainer}\n triggerRef={root}\n panelRef={panel}\n matchWidth={popupWidth === 'trigger'}\n width={\n popupWidth === 'trigger'\n ? undefined\n : popupWidth === 'auto'\n ? 'max-content'\n : popupWidth\n }\n minWidth={popupWidth === 'auto' ? 'trigger' : undefined}\n maxWidth={popupMaxWidth}\n id={panelId}\n className={classes('leaf-floating', 'leaf-select__panel', popupClassName)}\n data-hover-motion=\"\"\n style={{ maxHeight: listHeight, ...popupStyle }}\n onScroll={onPopupScroll}\n role=\"listbox\"\n aria-busy={loading || undefined}\n aria-label={inputProps['aria-label'] ?? messages.select}\n aria-multiselectable={multiple || undefined}\n >\n <FloatingHighlight style={highlight} />\n {(popupRender ?? ((content: ReactNode) => content))(\n loading && !filtered.length ? (\n <div className=\"leaf-floating__empty\">{messages.loading}</div>\n ) : filtered.length ? (\n virtual ? (\n <div\n style={{\n height: virtualizer.getTotalSize(),\n position: 'relative',\n minWidth: '100%',\n }}\n >\n {virtualizer.getVirtualItems().map((item) => {\n const row = rows[item.index];\n if (!row) return null;\n return (\n <div\n key={row.key}\n ref={virtualizer.measureElement}\n data-index={item.index}\n style={{\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n transform: `translateY(${item.start}px)`,\n }}\n >\n {row.option ? (\n renderOption(row.option, row.index)\n ) : (\n <div className=\"leaf-select__group\">{row.group}</div>\n )}\n </div>\n );\n })}\n </div>\n ) : (\n rows.map((row) =>\n row.option ? (\n renderOption(row.option, row.index)\n ) : (\n <div key={row.key} className=\"leaf-select__group\">\n {row.group}\n </div>\n ),\n )\n )\n ) : (\n <div className=\"leaf-floating__empty\">{notFoundContent ?? messages.empty}</div>\n ),\n )}\n </FloatingPanel>\n </div>\n );\n },\n);\nSelect.displayName = 'Select';\n"],"names":["empty","searchText","option","String","Select","forwardRef","props","forwardedRef","suppliedOptions","size","statusProp","placeholder","value","defaultValue","name","requiredProp","allowClear","form","className","style","disabledProp","idProp","onOpenChange","controlledOpen","defaultOpen","inputReadOnly","labelRender","tagRender","popupRender","onPopupScroll","onClick","onKeyDown","onBlur","multiple","searchProp","filterOption","onSearch","popupWidth","popupMaxWidth","popupClassName","popupStyle","popupPlacement","getPopupContainer","loading","notFoundContent","optionRender","maxCount","maxTagCount","allowCreate","onCreate","virtualProp","listHeight","optionHeight","_onChange","inputProps","t","useText","showSearch","created","setCreated","useState","baseOptions","useMemo","entry","options","optionGroups","Map","virtual","messages","useLeafConfig","field","useFormField","disabled","required","status","undefined","root","useRef","input","panel","merged","useMergedRef","panelId","useId","selected","setSelected","useFieldValue","values","responsiveCount","setResponsiveCount","useEffect","measure","width","used","count","tag","observer","ResizeObserver","window","visibleTagCount","Math","useListMotion","JSON","atLimit","unavailable","selectedCache","nextCache","key","record","selectedOptions","query","setQuery","open","setOpen","usePopupState","highlighted","setHighlighted","matched","newValue","createOption","filtered","rows","entries","previousGroup","index","group","virtualizer","useVirtualizer","row","updateQuery","next","close","useFloatingDismiss","useActiveOption","highlight","useFloatingHighlight","change","openMenu","active","selectOption","previous","move","direction","i","candidate","renderOption","event","Plus","Check","displayLabel","textLabel","inputValue","clearable","classes","Element","remove","item","X","Boolean","candidates","last","LoaderCircle","ChevronDown","ClearButton","FormValue","FloatingPanel","FloatingHighlight","content"],"mappings":";;;;;;;;;;;;;;;AA2FA,MAAMA,QAA2B,EAAE;AACnC,MAAMC,aAAa,CAACC,SAClBA,OAAO,WAAW,IACjB,CAAwB,YAAxB,OAAOA,OAAO,KAAK,IAAiB,AAAwB,YAAxB,OAAOA,OAAO,KAAK,GACpDC,OAAOD,OAAO,KAAK,IACnBA,OAAO,KAAI;AACV,MAAME,gBAAS,WAAHA,GAAGC,WACpB,SAAgBC,KAAK,EAAEC,YAAY;IACjC,MAAM,EACJ,SAASC,eAAe,EACxBC,OAAO,IAAI,EACX,QAAQC,UAAU,EAClBC,WAAW,EACXC,KAAK,EACLC,YAAY,EACZC,IAAI,EACJ,UAAUC,YAAY,EACtBC,aAAa,KAAK,EAClBC,IAAI,EACJC,SAAS,EACTC,KAAK,EACL,UAAUC,YAAY,EACtB,IAAIC,MAAM,EACVC,YAAY,EACZ,MAAMC,cAAc,EACpBC,WAAW,EACXC,aAAa,EACbC,WAAW,EACXC,SAAS,EACTC,WAAW,EACXC,aAAa,EACbC,OAAO,EACPC,SAAS,EACTC,MAAM,EACNC,WAAW,KAAK,EAChB,YAAYC,aAAa,KAAK,EAC9BC,eAAe,IAAI,EACnBC,QAAQ,EACRC,aAAa,MAAM,EACnBC,gBAAgB,GAAG,EACnBC,cAAc,EACdC,UAAU,EACVC,cAAc,EACdC,iBAAiB,EACjBC,UAAU,KAAK,EACfC,eAAe,EACfC,YAAY,EACZC,QAAQ,EACRC,WAAW,EACXC,cAAc,KAAK,EACnBC,QAAQ,EACR,SAASC,WAAW,EACpBC,aAAa,GAAG,EAChBC,eAAe,EAAE,EACjB,UAAUC,SAAS,EACnB,GAAGC,YACJ,GAAGhD;IACJ,MAAMiD,IAAIC;IACV,MAAMC,aAAavB,cAAcc;IACjC,MAAM,CAACU,SAASC,WAAW,GAAGC,SAAyB,EAAE;IACzD,MAAMC,cAAcC,QAClB,IAAMtD,gBAAgB,OAAO,CAAC,CAACuD,QAAW,aAAaA,QAAQ;mBAAIA,MAAM,OAAO;aAAC,GAAG;gBAACA;aAAM,GAC3F;QAACvD;KAAgB;IAEnB,MAAMwD,UAAUF,QACd,IAAM;eACDD;eACAH,QAAQ,MAAM,CAAC,CAACK,QAAU,CAACF,YAAY,IAAI,CAAC,CAAC3D,SAAWA,OAAO,KAAK,KAAK6D,MAAM,KAAK;SACxF,EACD;QAACF;QAAaH;KAAQ;IAExB,MAAMO,eAAeH,QACnB,IACE,IAAII,IACF1D,gBAAgB,OAAO,CAAC,CAACuD,QACvB,aAAaA,QACTA,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC7D,SAAW;oBAACA,OAAO,KAAK;oBAAE6D,MAAM,KAAK;iBAAC,IACzD,EAAE,IAGZ;QAACvD;KAAgB;IAEnB,MAAM2D,UAAUjB,eAAec,QAAQ,MAAM,GAAG;IAChD,MAAM,EAAEI,QAAQ,EAAE,GAAGC;IACrB,MAAMC,QAAQC;IACd,MAAMC,WAAWpD,gBAAgBkD,OAAO;IACxC,MAAMG,WAAW1D,gBAAgBuD,OAAO;IACxC,MAAMI,SAAShE,cAAe4D,CAAAA,OAAO,QAAQ,UAAUK,MAAQ;IAC/D,MAAMC,OAAOC,OAAuB;IACpC,MAAMC,QAAQD,OAAyB;IACvC,MAAME,QAAQF,OAAuB;IACrC,MAAMG,SAASC,aAAaH,OAAOvE;IACnC,MAAM2E,UAAU,GAAGC,QAAQ,QAAQ,CAAC;IACpC,MAAM,CAACC,UAAUC,YAAY,GAAGC,cAC9B1E,OACAC,gBAAiBoB,CAAAA,WAAWjC,QAAQ,EAAC,GACrC8E,OACA7D;IAEF,MAAMsE,SAAS,AAAoB,YAApB,OAAOH,WAAyBA,WAAW;QAACA;KAAS,GAAG,EAAE,GAAIA;IAC7E,MAAM,CAACI,iBAAiBC,mBAAmB,GAAG7B,SAAS;IAEvD8B,UAAU;QACR,IAAI3C,AAAgB,iBAAhBA,eAAgC,CAAC6B,KAAK,OAAO,EAAE;QACnD,MAAMe,UAAU;YACd,MAAMC,QAAQhB,KAAK,OAAO,EAAE,eAAe;YAC3C,IAAIiB,OAAO;YACX,IAAIC,QAAQ;YACZ,KAAK,MAAMC,OAAOnB,KAAK,OAAO,EAAE,iBAA8B,8BAC5D,EAAE,CAAE;gBACJiB,QAAQE,IAAI,qBAAqB,GAAG,KAAK,GAAG;gBAC5C,IAAIF,OAAOD,OAAO;gBAClBE;YACF;YACAL,mBAAmBK;QACrB;QACA,MAAME,WACJ,AAA0B,MAA1B,OAAOC,iBAAiCtB,SAAY,IAAIsB,eAAeN;QACzEK,UAAU,QAAQpB,KAAK,OAAO;QAC9BsB,OAAO,gBAAgB,CAAC,UAAUP;QAClCA;QACA,OAAO;YACLK,UAAU;YACVE,OAAO,mBAAmB,CAAC,UAAUP;QACvC;IACF,GAAG;QAAC5C;QAAawC;KAAO;IACxB,MAAMY,kBACJpD,AAAgB,iBAAhBA,cACIyC,kBACAzC,AAAgB4B,WAAhB5B,cACEwC,OAAO,MAAM,GACba,KAAK,GAAG,CAAC,GAAGA,KAAK,KAAK,CAACrD;IAC/BsD,cACEzB,MACA0B,KAAK,SAAS,CAACf,OAAO,KAAK,CAAC,GAAGY,mBAC/B;IAEFE,cAAczB,MAAMW,MAAM,CAAC,EAAE,EAAEtD,WAAW,KAAK;IAC/C,MAAMsE,UACJtE,YAAYa,AAAa6B,WAAb7B,YAA0ByC,OAAO,MAAM,IAAIa,KAAK,GAAG,CAAC,GAAGA,KAAK,KAAK,CAACtD;IAChF,MAAM0D,cAAc,CAACtG,SACnBA,OAAO,QAAQ,IAAKqG,WAAW,CAAChB,OAAO,QAAQ,CAACrF,OAAO,KAAK;IAC9D,MAAMuG,gBAAgB5B,OAAO,IAAIX;IACjC,MAAMwC,YAAY,IAAIxC;IACtB,KAAK,MAAMyC,OAAOpB,OAAQ;QACxB,MAAMqB,SACJ5C,QAAQ,IAAI,CAAC,CAAC9D,SAAWA,OAAO,KAAK,KAAKyG,QAAQF,cAAc,OAAO,CAAC,GAAG,CAACE;QAC9E,IAAIC,QAAQF,UAAU,GAAG,CAACC,KAAKC;IACjC;IACAH,cAAc,OAAO,GAAGC;IACxB,MAAMG,kBAAkBtB,OAAO,GAAG,CAAC,CAACoB,MAAQD,UAAU,GAAG,CAACC,QAAQ;YAAE,OAAOA;YAAK,OAAOA;QAAI;IAC3F,MAAM,CAACG,OAAOC,SAAS,GAAGnD,SAAS;IACnC,MAAM,CAACoD,MAAMC,QAAQ,GAAGC,cACtB1C,YAAYlB,WAAW,QAAQ,EAC/BhC,cACAC,gBACAC;IAEF,MAAM,CAAC2F,aAAaC,eAAe,GAAGxD,SAAS;IAC/C,MAAMyD,UACJ,AAACP,SAAUrD,cAActB,AAAiB,UAAjBA,eAErB6B,QAAQ,MAAM,CAAC,CAAC9D,SACd,AAAwB,cAAxB,OAAOiC,eACHA,aAAa2E,OAAO5G,UACpBD,WAAWC,QAAQ,iBAAiB,GAAG,QAAQ,CAAC4G,MAAM,iBAAiB,OAJ7E9C;IAMN,MAAMsD,WAAWR,MAAM,IAAI;IAC3B,MAAMS,eACJvE,eACAsE,YACA,CAACtD,QAAQ,IAAI,CAAC,CAAC9D,SAAWA,OAAO,KAAK,KAAKoH,YAAYrH,WAAWC,YAAYoH,YAC1E;QAAE,OAAOA;QAAU,OAAOA;IAAS,IACnC;IACN,MAAME,WAAWD,eAAe;WAAIF;QAASE;KAAa,GAAGF;IAC7D,MAAMI,OAAO3D,QAAQ;QACnB,MAAM4D,UACJ,EAAE;QACJ,IAAIC;QACJH,SAAS,OAAO,CAAC,CAACtH,QAAQ0H;YACxB,MAAMC,QAAQ5D,aAAa,GAAG,CAAC/D,OAAO,KAAK;YAC3C,IAAI2H,AAAUlD,WAAVkD,SAAuBA,UAAUF,eACnCD,QAAQ,IAAI,CAAC;gBAAE,KAAK,CAAC,MAAM,EAAExH,OAAO,KAAK,EAAE;gBAAE2H;gBAAO,OAAO;YAAG;YAChEH,QAAQ,IAAI,CAAC;gBAAE,KAAKxH,OAAO,KAAK;gBAAEA;gBAAQ0H;YAAM;YAChDD,gBAAgBE;QAClB;QACA,OAAOH;IACT,GAAG;QAACF;QAAUvD;KAAa;IAC3B,MAAM6D,cAAcC,eAAe;QACjC,OAAON,KAAK,MAAM;QAClB,kBAAkB,IAAM1C,MAAM,OAAO;QACrC,cAAc,IAAMqB,KAAK,GAAG,CAAC,IAAIhD;QACjC,UAAU;QACV,YAAY,CAACwE,QAAUH,IAAI,CAACG,MAAM,EAAE,OAAOA;QAC3C,SAASZ,QAAQ7C;QACjB,aAAa;YAAE,QAAQhB;YAAY,OAAO;QAAI;IAChD;IACAuC,UAAU;QACR,IAAIsB,QAAQ7C,WAAWgD,eAAe,GAAG;YACvC,MAAMS,QAAQH,KAAK,SAAS,CAAC,CAACO,MAAQA,IAAI,KAAK,KAAKb;YACpD,IAAIS,SAAS,GAAGE,YAAY,aAAa,CAACF,OAAO;gBAAE,OAAO;YAAO;QACnE;IACF,GAAG;QAACZ;QAAM7C;QAASgD;QAAaM;QAAMK;KAAY;IAClD,MAAMG,cAAc,CAACC;QACnBnB,SAASmB;QACT9F,WAAW8F;IACb;IACA,MAAMC,QAAQ;QACZlB,QAAQ;QACR,IAAIH,OAAOmB,YAAY;IACzB;IACAG,mBAAmBpB,MAAMmB,OAAOrD,OAAOC,OAAOH;IAC9CyD,gBAAgBrB,MAAMG,eAAe,IAAI,GAAGjC,QAAQ,CAAC,EAAEiC,aAAa,GAAGxC,QAAWI;IAClF,MAAMuD,YAAYC,qBAChBvB,MACAjC,OACAoC,eAAe,IAAI,GAAGjC,QAAQ,CAAC,EAAEiC,aAAa,GAAGxC,QACjD,GAAGmC,MAAM,CAAC,EAAEU,QAAQ,CAACL,YAAY,EAAE,MAAM,CAAC,EAAEM,KAAK,MAAM,CAAC,CAAC,EAAEK,YAAY,KAAK,EAAE,WAAW,CAAC,EAAEA,YAAY,KAAK,EAAE,UAAU;IAE3HpC,UAAU;QACR,IAAI,CAACsB,MAAMD,SAAS;IACtB,GAAG;QAACC;KAAK;IACT,MAAMwB,SAAS,CAACN;QACd,IAAI1D,YAAYlB,WAAW,QAAQ,EAAE;QACrC+B,YAAYpD,WAAWiG,OAAQA,IAAI,CAAC,EAAE,IAAI;QAC1C,IAAI5H,MAAM,QAAQ,EAChBA,MAAM,QAAQ,GACZ;eAAI4H;SAAK,EACT;eACKrB;eACA7C,QAAQ,MAAM,CAAC,CAAC9D,SAAW,CAACqF,OAAO,QAAQ,CAACrF,OAAO,KAAK;eACvDqH,eAAe;gBAACA;aAAa,GAAG,EAAE;SACvC,CAAC,MAAM,CAAC,CAACrH,SAAWgI,KAAK,QAAQ,CAAChI,OAAO,KAAK;aAGjDI,MAAM,QAAQ,GACZ4H,IAAI,CAAC,EAAE,IAAI,IACX;eAAIlE;eAAauD,eAAe;gBAACA;aAAa,GAAG,EAAE;SAAE,CAAC,IAAI,CACxD,CAACrH,SAAWA,OAAO,KAAK,KAAKgI,IAAI,CAAC,EAAE;IAG5C;IACA,MAAMO,WAAW;QACf,IAAIjE,YAAYlB,WAAW,QAAQ,EAAE;QACrC,MAAMoF,SAASlB,SAAS,SAAS,CAC/B,CAACtH,SAAWqF,OAAO,QAAQ,CAACrF,OAAO,KAAK,KAAK,CAACsG,YAAYtG;QAE5DkH,eAAesB,UAAU,IAAIA,SAASlB,SAAS,SAAS,CAAC,CAACtH,SAAW,CAACsG,YAAYtG;QAClF+G,QAAQ;IACV;IACA,MAAM0B,eAAe,CAACzI;QACpB,IAAIsG,YAAYtG,WAAWoD,WAAW,QAAQ,EAAE;QAChD,IAAIiE,gBAAgBrH,OAAO,KAAK,KAAKqH,aAAa,KAAK,EAAE;YACvD5D,WAAW,CAACiF,WAAa;uBAAIA;oBAAU1I;iBAAO;YAC9C+C,WAAW/C;QACb;QACAsI,OACEvG,WACIsD,OAAO,QAAQ,CAACrF,OAAO,KAAK,IAC1BqF,OAAO,MAAM,CAAC,CAAC3E,QAAUA,UAAUV,OAAO,KAAK,IAC/C;eAAIqF;YAAQrF,OAAO,KAAK;SAAC,GAC3B;YAACA,OAAO,KAAK;SAAC;QAEpB,IAAI+B,UAAUgG,YAAY;aACrBE;QACLrD,MAAM,OAAO,EAAE;IACjB;IACA,MAAM+D,OAAO,CAACC;QACZ,IAAI,CAACtB,SAAS,MAAM,EAAE;QACtB,IAAIU,OAAOf,cAAc,IAAK2B,YAAY,IAAI,KAAKtB,SAAS,MAAM,GAAIL;QACtE,IAAK,IAAI4B,IAAI,GAAGA,IAAIvB,SAAS,MAAM,EAAEuB,IAAK;YACxCb,OAAQA,AAAAA,CAAAA,OAAOY,YAAYtB,SAAS,MAAK,IAAKA,SAAS,MAAM;YAC7D,MAAMwB,YAAYxB,QAAQ,CAACU,KAAK;YAChC,IAAIc,aAAa,CAACxC,YAAYwC,YAAY;gBACxC5B,eAAec;gBACf;YACF;QACF;IACF;IACA,MAAMe,eAAe,CAAC/I,QAAsB0H,QAAAA,WAAAA,GAC1C,KAAC;YAEC,IAAI,GAAG1C,QAAQ,CAAC,EAAE0C,OAAO;YACzB,iBAAeA,QAAQ;YACvB,gBAAcJ,SAAS,MAAM;YAC7B,MAAK;YACL,MAAK;YACL,iBAAejC,OAAO,QAAQ,CAACrF,OAAO,KAAK;YAC3C,iBAAeA,OAAO,QAAQ,IAAKqG,WAAW,CAAChB,OAAO,QAAQ,CAACrF,OAAO,KAAK,KAAMyE;YACjF,oBAAkBwC,gBAAgBS,SAASjD;YAC3C,WAAU;YACV,UAAUzE,OAAO,QAAQ,IAAKqG,WAAW,CAAChB,OAAO,QAAQ,CAACrF,OAAO,KAAK;YACtE,UAAU;YACV,cAAc;gBACZ,IAAI,CAACsG,YAAYtG,SAASkH,eAAeQ;YAC3C;YACA,aAAa,CAACsB,QAAUA,MAAM,cAAc;YAC5C,SAAS,IAAMP,aAAazI;;8BAE5B,IAAC;oBAAK,WAAU;8BACbqH,cAAc,UAAUrH,OAAO,KAAK,GAAG,WAAH,GACnC;;0CACE,IAACiJ,MAAIA;gCAAC,MAAM;gCAAI,eAAY;;4BAAS;4BAAE5F,EAAE,MAAM;4BAAU;4BAAGrD,OAAO,KAAK;4BAAC;;yBAEzE2C,eACFA,aAAa3C,UAEbA,OAAO,KAAK;;8BAGhB,IAACkJ,OAAKA;oBAAC,MAAM;oBAAI,eAAY;oBAAO,WAAU;;;WA7BzClJ,OAAO,KAAK;IAgCrB,MAAMmJ,eAAexC,eAAe,CAAC,EAAE,GAClCnF,cAAcmF,eAAe,CAAC,EAAE,KAAKA,eAAe,CAAC,EAAE,CAAC,KAAK,GAC9DlC;IACJ,MAAM2E,YACJ,AAAwB,YAAxB,OAAOD,gBAA6B,AAAwB,YAAxB,OAAOA,eACvClJ,OAAOkJ,gBACP;IACN,MAAME,aAAatH,YAAawB,cAAcuD,OAAQF,QAAQwC;IAC9D,MAAME,YAAYxI,cAAcuE,OAAO,MAAM,GAAG,KAAK,CAACf,YAAY,CAAClB,WAAW,QAAQ;IACtF,qBAGE,KAAC;QACC,KAAKsB;QACL,WAAW6E,QACT,eACA,CAAC,aAAa,EAAEhJ,MAAM,EACtBwB,YAAY,yBACZf;QAEF,OAAOC;QACP,eAAauD;QACb,iBAAeF,WAAW,KAAKG;QAC/B,aAAWqC,OAAO,KAAKrC;QACvB,kBAAgB6E,YAAY,KAAK7E;QACjC,mBAAiBlB,aAAa,KAAKkB;QACnC,aAAa,CAACuE;YACZ,IACE,CAAC1E,YACD0E,MAAM,MAAM,YAAYQ,WACxB,CAACR,MAAM,MAAM,CAAC,OAAO,CAAC,qBAEtBA,MAAM,cAAc;QACxB;QACA,SAAS,CAACA;YACR,IACE,CAAC1E,YACD0E,MAAM,MAAM,YAAYQ,WACxB9E,KAAK,OAAO,EAAE,SAASsE,MAAM,MAAM,KACnC,CAACA,MAAM,MAAM,CAAC,OAAO,CAAC,qBACtB;gBACApE,MAAM,OAAO,EAAE;gBACfA,MAAM,OAAO,EAAE;YACjB;QACF;;0BAEA,KAAC;gBAAI,WAAU;;oBACZ7C,YACCsD,OAAO,KAAK,CAAC,GAAGY,iBAAiB,GAAG,CAAC,CAACvF;wBACpC,MAAMV,SAASwG,UAAU,GAAG,CAAC9F,UAAU;4BAAEA;4BAAO,OAAOA;wBAAM;wBAC7D,MAAM+I,SAAS,IAAMnB,OAAOjD,OAAO,MAAM,CAAC,CAACqE,OAASA,SAAShJ;wBAC7D,IAAIe,WACF,OAAO,WAAP,GACE,IAAC;4BAAiB,WAAU;4BAAmB,mBAAiBf;sCAC7De,UAAUzB,QAAQyJ;2BADV/I;wBAIf,OAAO,WAAP,GACE,KAAC;4BAAiB,WAAU;4BAAmB,mBAAiBA;;8CAC9D,IAAC;8CAAMV,QAAQ,SAASU;;gCACvB,CAAC4D,YAAY,CAAClB,WAAW,QAAQ,IAAI,CAACpD,QAAQ,YAAY,WAAZ,GAC7C,IAAC;oCACC,MAAK;oCACL,UAAU;oCACV,cAAY,GAAGkE,SAAS,MAAM,CAAC,CAAC,EAAElE,SAASD,WAAWC,UAAUU,OAAO;oCACvE,aAAa,CAACsI,QAAUA,MAAM,cAAc;oCAC5C,SAAS;wCACPV,OAAOjD,OAAO,MAAM,CAAC,CAACqE,OAASA,SAAShJ;wCACxCkE,MAAM,OAAO,EAAE;oCACjB;8CAEA,kBAAC+E,GAACA;wCAAC,MAAM;wCAAI,eAAY;;;;2BAbpBjJ;oBAkBf;oBACDqB,YAAYsD,OAAO,MAAM,GAAGY,mBAAmB,WAAnBA,GAC3B,KAAC;wBAAK,WAAU;;4BAAmB;4BAAEZ,OAAO,MAAM,GAAGY;;;oBAEtDlE,YAAYc,AAAgB,iBAAhBA,eAAgC,WAAhB,GAC3B,IAAC;wBACC,eAAY;wBACZ,OAAO;4BACL,UAAU;4BACV,YAAY;4BACZ,eAAe;4BACf,SAAS;wBACX;kCAEC8D,gBAAgB,GAAG,CAAC,CAAC3G,SAAAA,WAAAA,GACpB,KAAC;gCAAwB,yBAAqB;gCAAC,WAAU;;oCACtDA,OAAO,KAAK;kDACb,IAAC2J,GAACA;wCAAC,MAAM;;;+BAFA3J,OAAO,KAAK;;kCAO7B,KAAC;wBAAI,WAAU;wBAA0B,mBAAiBqF,MAAM,CAAC,EAAE,IAAI;;4BACpE,CAACtD,YACA,CAAC6E,SACDuC,AAAgB,QAAhBA,gBACC,EAACC,aAAc7F,cAAcuD,IAAG,KAAC,cAChC,IAAC;gCAAK,WAAU;0CAAsBqC;;0CAE1C,IAAC;gCACE,GAAG/F,UAAU;gCACd,KAAK0B;gCACL,IAAI3D,UAAUiD,OAAO;gCACrB,MAAMrD;gCACN,MAAK;gCACL,WAAU;gCACV,UAAUuD;gCACV,UAAU,CAACf,cAAcH,WAAW,QAAQ,IAAI7B;gCAChD,OAAO8H;gCACP,aAAahE,OAAO,MAAM,GAAG,KAAM5E,eAAeyD,SAAS,MAAM;gCACjE,cAAa;gCACb,MAAK;gCACL,iBAAe4C;gCACf,iBAAc;gCACd,iBAAe9B;gCACf,qBAAmBzB,aAAa,SAASkB;gCACzC,yBACEqC,QAAQQ,QAAQ,CAACL,YAAY,GAAG,GAAGjC,QAAQ,CAAC,EAAEiC,aAAa,GAAGxC;gCAEhE,iBAAeF,YAAYE;gCAC3B,gBAAcD,AAAW,YAAXA,SAAqB,OAAOpB,UAAU,CAAC,eAAe;gCACpE,oBACE;oCAACA,UAAU,CAAC,mBAAmB;oCAAEgB,OAAO;iCAAc,CAAC,MAAM,CAACwF,SAAS,IAAI,CAAC,QAC5EnF;gCAEF,SAAS,CAACuE;oCACRpH,UAAUoH;oCACV,IAAI,CAACA,MAAM,gBAAgB,EACzB;wCAAA,IAAIlC,QAAQ,CAACvD,YAAY0E;6CACpB,IAAI,CAACnB,MAAMyB;oCAAU;gCAE9B;gCACA,QAAQ,CAACS;oCACPlH,SAASkH;oCACT,IACE,CAACA,MAAM,gBAAgB,IACvB,CAACtE,KAAK,OAAO,EAAE,SAASsE,MAAM,aAAa,KAC3C,CAACnE,MAAM,OAAO,EAAE,SAASmE,MAAM,aAAa,GAE5Cf;gCACJ;gCACA,UAAU,CAACe;oCACT,IAAI,CAAClC,MAAMyB;oCACXR,YAAYiB,MAAM,MAAM,CAAC,KAAK;oCAC9B9B,eAAe;gCACjB;gCACA,WAAW,CAAC8B;oCACVnH,YAAYmH;oCACZ,IAAIA,MAAM,gBAAgB,IAAIA,MAAM,WAAW,CAAC,WAAW,EAAE;oCAC7D,IAAIA,AAAc,gBAAdA,MAAM,GAAG,IAAoBA,AAAc,cAAdA,MAAM,GAAG,EAAgB;wCACxDA,MAAM,cAAc;wCACpB,IAAKlC,MACA6B,KAAKK,AAAc,gBAAdA,MAAM,GAAG,GAAmB,IAAI;6CAD/BT;oCAEb,OAAO,IAAKS,AAAAA,CAAAA,AAAc,WAAdA,MAAM,GAAG,IAAeA,AAAc,UAAdA,MAAM,GAAG,AAAS,KAAMlC,QAAQ,CAACvD,YAAY;wCAC/EyF,MAAM,cAAc;wCACpB,MAAMa,aAAavC,SAChB,GAAG,CAAC,CAACtH,QAAQ0H,QAAW;gDAAE1H;gDAAQ0H;4CAAM,IACxC,MAAM,CAAC,CAAC,EAAE1H,MAAM,EAAE,GAAK,CAACsG,YAAYtG;wCACvCkH,eACG8B,AAAAA,CAAAA,AAAc,WAAdA,MAAM,GAAG,GAAca,UAAU,CAAC,EAAE,GAAGA,WAAW,EAAE,CAAC,GAAE,GAAI,SAAS;oCAEzE,OAAO,IAAIb,AAAc,YAAdA,MAAM,GAAG,IAAiBA,CAAAA,AAAc,QAAdA,MAAM,GAAG,IAAazF,UAAS,GAQ7D;wCAAA,IAAIyF,AAAc,aAAdA,MAAM,GAAG,IAAiBlC,MAAM;4CACzCkC,MAAM,cAAc;4CACpBA,MAAM,eAAe;4CACrBf;wCACF,OAAO,IAAIe,AAAc,UAAdA,MAAM,GAAG,IAAclC,MAAMmB;6CACnC,IAAIe,AAAc,gBAAdA,MAAM,GAAG,IAAoBjH,YAAY,CAAC6E,SAAS,CAACxD,WAAW,QAAQ,EAAE;4CAChF,MAAM0G,OAAO;mDAAIzE;6CAAO,CACrB,OAAO,GACP,IAAI,CAAC,CAAC3E,QAAU,CAACoD,QAAQ,IAAI,CAAC,CAAC9D,SAAWA,OAAO,KAAK,KAAKU,QAAQ;4CACtE,IAAIoJ,MAAM;gDACRd,MAAM,cAAc;gDACpBV,OAAOjD,OAAO,MAAM,CAAC,CAAC3E,QAAUA,UAAUoJ;4CAC5C;wCACF;oCAAA,OArBwE;wCACtEd,MAAM,cAAc;wCACpB,IAAKlC,MACA;4CACH,MAAM9G,SACJsH,QAAQ,CAACL,YAAY,IAAIK,SAAS,IAAI,CAAC,CAACtH,SAAW,CAACsG,YAAYtG;4CAClE,IAAIA,QAAQyI,aAAazI;wCAC3B,OALWuI;oCAMb;gCAcF;;;;;;0BAIN,IAAC;gBACC,MAAK;gBACL,WAAU;gBACV,UAAU;gBACV,UAAUjE;gBACV,cAAYJ,SAAS,MAAM;gBAC3B,aAAa,CAAC8E,QAAUA,MAAM,cAAc;gBAC5C,SAAS;oBACP,IAAIlC,MAAMmB;yBACLM;oBACL3D,MAAM,OAAO,EAAE;gBACjB;0BAECnC,UAAU,WAAVA,GACC,IAACsH,cAAYA;oBAAC,WAAU;oBAAuB,MAAM;oBAAI,eAAY;mCAErE,IAACC,aAAWA;oBAAC,MAAM;oBAAI,eAAY;;;YAGtCV,aAAa,WAAbA,GACC,IAACW,aAAWA;gBACV,OAAO/F,SAAS,cAAc;gBAC9B,aAAW;gBACX,SAAS;oBACPoE,OAAOxI;oBACPmI;oBACArD,MAAM,OAAO,EAAE;gBACjB;;0BAGJ,IAACsF,WAASA;gBACR,MAAMnI,WAAW0C,SAAY7D;gBAC7B,MAAMG;gBACN,OAAOgB,WAAWsD,OAAO,IAAI,CAAC,OAAQA,MAAM,CAAC,EAAE,IAAI;gBACnD,UAAUf;gBACV,UAAUC;gBACV,YAAYK;;YAEb7C,YACCsD,OAAO,GAAG,CAAC,CAAC3E,QAAAA,WAAAA,GACV,IAAC;oBAEC,MAAK;oBACL,MAAME;oBACN,MAAMG;oBACN,OAAOL;oBACP,UAAU4D;mBALL5D;0BAQX,KAACyJ,eAAaA;gBACZ,MAAMrD;gBACN,WAAWvE;gBACX,WAAWC;gBACX,YAAYkC;gBACZ,UAAUG;gBACV,YAAY1C,AAAe,cAAfA;gBACZ,OACEA,AAAe,cAAfA,aACIsC,SACAtC,AAAe,WAAfA,aACE,gBACAA;gBAER,UAAUA,AAAe,WAAfA,aAAwB,YAAYsC;gBAC9C,UAAUrC;gBACV,IAAI4C;gBACJ,WAAWuE,QAAQ,iBAAiB,sBAAsBlH;gBAC1D,qBAAkB;gBAClB,OAAO;oBAAE,WAAWY;oBAAY,GAAGX,UAAU;gBAAC;gBAC9C,UAAUX;gBACV,MAAK;gBACL,aAAWc,WAAWgC;gBACtB,cAAYrB,UAAU,CAAC,aAAa,IAAIc,SAAS,MAAM;gBACvD,wBAAsBnC,YAAY0C;;kCAElC,IAAC2F,mBAAiBA;wBAAC,OAAOhC;;oBACxB1G,CAAAA,eAAiB,EAAA2I,UAAuBA,OAAM,GAC9C5H,WAAW,CAAC6E,SAAS,MAAM,GAAG,WAAH,GACzB,IAAC;wBAAI,WAAU;kCAAwBpD,SAAS,OAAO;yBACrDoD,SAAS,MAAM,GACjBrD,UAAU,WAAVA,GACE,IAAC;wBACC,OAAO;4BACL,QAAQ2D,YAAY,YAAY;4BAChC,UAAU;4BACV,UAAU;wBACZ;kCAECA,YAAY,eAAe,GAAG,GAAG,CAAC,CAAC8B;4BAClC,MAAM5B,MAAMP,IAAI,CAACmC,KAAK,KAAK,CAAC;4BAC5B,IAAI,CAAC5B,KAAK,OAAO;4BACjB,OAAO,WAAP,GACE,IAAC;gCAEC,KAAKF,YAAY,cAAc;gCAC/B,cAAY8B,KAAK,KAAK;gCACtB,OAAO;oCACL,UAAU;oCACV,KAAK;oCACL,MAAM;oCACN,OAAO;oCACP,WAAW,CAAC,WAAW,EAAEA,KAAK,KAAK,CAAC,GAAG,CAAC;gCAC1C;0CAEC5B,IAAI,MAAM,GACTiB,aAAajB,IAAI,MAAM,EAAEA,IAAI,KAAK,kBAElC,IAAC;oCAAI,WAAU;8CAAsBA,IAAI,KAAK;;+BAd3CA,IAAI,GAAG;wBAkBlB;yBAGFP,KAAK,GAAG,CAAC,CAACO,MACRA,IAAI,MAAM,GACRiB,aAAajB,IAAI,MAAM,EAAEA,IAAI,KAAK,kBAElC,IAAC;4BAAkB,WAAU;sCAC1BA,IAAI,KAAK;2BADFA,IAAI,GAAG,mBAOvB,IAAC;wBAAI,WAAU;kCAAwBpF,mBAAmBwB,SAAS,KAAK;;;;;;AAMpF;AAEFhE,cAAO,WAAW,GAAG"}
1
+ {"version":3,"file":"select/select.js","sources":["../../../../../src/select/select.tsx"],"sourcesContent":["import { useVirtualizer } from '@tanstack/react-virtual';\nimport { Check, ChevronDown, LoaderCircle, Plus } from 'lucide-react';\nimport {\n type CSSProperties,\n forwardRef,\n type InputHTMLAttributes,\n type ReactNode,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { useComponentProps } from '../config-provider/component-defaults';\nimport { useLeafConfig } from '../config-provider/context';\nimport { estimateControlHeight } from '../density';\nimport { useFormField } from '../form/form';\nimport { classes } from '../shared/classes';\nimport { ClearButton } from '../shared/clear-button';\nimport { FormValue, useFieldValue, useMergedRef } from '../shared/field';\nimport {\n FloatingPanel,\n type PopupOptions,\n useActiveOption,\n useFloatingDismiss,\n usePopupState,\n} from '../shared/floating';\nimport { FloatingFeedback } from '../shared/floating-feedback';\nimport { FloatingHighlight, useFloatingHighlight } from '../shared/floating-highlight';\nimport { useListMotion } from '../shared/motion';\nimport { SelectionContent } from '../shared/selection-content';\nimport type { ControlSize, ControlStatus } from '../shared/types';\nimport { useFormattedText } from '../shared/use-formatted-text';\n\nexport interface SelectOption {\n value: string;\n label: ReactNode;\n disabled?: boolean;\n searchLabel?: string;\n}\nexport interface SelectOptionGroup {\n label: ReactNode;\n options: readonly SelectOption[];\n}\ninterface SelectBaseProps\n extends Omit<\n InputHTMLAttributes<HTMLInputElement>,\n 'type' | 'size' | 'value' | 'defaultValue' | 'onChange' | 'children' | 'multiple'\n >,\n PopupOptions {\n options: readonly (SelectOption | SelectOptionGroup)[];\n size?: ControlSize;\n status?: ControlStatus;\n allowClear?: boolean;\n showSearch?: boolean;\n filterOption?: boolean | ((query: string, option: SelectOption) => boolean);\n onSearch?: (query: string) => void;\n onOpenChange?: (open: boolean) => void;\n open?: boolean;\n defaultOpen?: boolean;\n inputReadOnly?: boolean;\n labelRender?: (option: SelectOption) => ReactNode;\n tagRender?: (option: SelectOption, remove: () => void) => ReactNode;\n popupRender?: (content: ReactNode) => ReactNode;\n onPopupScroll?: (event: React.UIEvent<HTMLDivElement>) => void;\n popupWidth?: number | string;\n popupMaxWidth?: number | string;\n popupClassName?: string;\n popupStyle?: CSSProperties;\n loading?: boolean;\n notFoundContent?: ReactNode;\n optionRender?: (option: SelectOption) => ReactNode;\n maxCount?: number;\n maxTagCount?: number | 'responsive';\n tagWrap?: boolean;\n allowCreate?: boolean;\n onCreate?: (option: SelectOption) => void;\n virtual?: boolean;\n listHeight?: number;\n optionHeight?: number;\n}\nexport type SelectProps = SelectBaseProps &\n (\n | {\n multiple?: false;\n value?: string;\n defaultValue?: string;\n onChange?: (value: string, option?: SelectOption) => void;\n }\n | {\n multiple: true;\n value?: readonly string[];\n defaultValue?: readonly string[];\n onChange?: (value: string[], options: SelectOption[]) => void;\n }\n );\nconst empty: readonly string[] = [];\nconst searchText = (option: SelectOption) =>\n option.searchLabel ??\n (typeof option.label === 'string' || typeof option.label === 'number'\n ? String(option.label)\n : option.value);\n/** Internal rendering primitive; public Select defaults are resolved at its boundary. */\nexport const SelectControl = forwardRef<HTMLInputElement, SelectProps>(function SelectControl(\n props: SelectProps,\n forwardedRef,\n) {\n const {\n options: suppliedOptions,\n size = 'md',\n status: statusProp,\n placeholder,\n value,\n defaultValue,\n name,\n required: requiredProp,\n allowClear = false,\n form,\n className,\n style,\n disabled: disabledProp,\n id: idProp,\n onOpenChange,\n open: controlledOpen,\n defaultOpen,\n inputReadOnly,\n labelRender,\n tagRender,\n popupRender,\n onPopupScroll,\n onClick,\n onKeyDown,\n onBeforeInput,\n onCompositionStart,\n onPaste,\n onBlur,\n multiple = false,\n showSearch: searchProp = false,\n filterOption = true,\n onSearch,\n popupWidth = 'auto',\n popupMaxWidth = 420,\n popupClassName,\n popupStyle,\n popupPlacement,\n getPopupContainer,\n loading = false,\n notFoundContent,\n optionRender,\n maxCount,\n maxTagCount,\n tagWrap = true,\n allowCreate = false,\n onCreate,\n virtual: virtualProp,\n listHeight = 248,\n optionHeight: optionHeightProp,\n onChange: _onChange,\n ...inputProps\n } = props;\n const format = useFormattedText();\n const showSearch = searchProp || allowCreate;\n const [created, setCreated] = useState<SelectOption[]>([]);\n const baseOptions = useMemo(\n () => suppliedOptions.flatMap((entry) => ('options' in entry ? [...entry.options] : [entry])),\n [suppliedOptions],\n );\n const options = useMemo(\n () => [\n ...baseOptions,\n ...created.filter((entry) => !baseOptions.some((option) => option.value === entry.value)),\n ],\n [baseOptions, created],\n );\n const optionGroups = useMemo(\n () =>\n new Map(\n suppliedOptions.flatMap((entry) =>\n 'options' in entry\n ? entry.options.map((option) => [option.value, entry.label] as const)\n : [],\n ),\n ),\n [suppliedOptions],\n );\n const virtual = virtualProp ?? options.length > 100;\n const { messages, theme, density } = useLeafConfig();\n const optionHeight = optionHeightProp ?? Math.max(24, estimateControlHeight(theme, density) - 4);\n const field = useFormField();\n const disabled = disabledProp || field?.disabled;\n const required = requiredProp ?? field?.required;\n const status = statusProp ?? (field?.error ? 'error' : undefined);\n const root = useRef<HTMLDivElement>(null);\n const input = useRef<HTMLInputElement>(null);\n const panel = useRef<HTMLDivElement>(null);\n const merged = useMergedRef(input, forwardedRef);\n const panelId = `${useId()}-listbox`;\n const [selected, setSelected] = useFieldValue<string | readonly string[]>(\n value,\n defaultValue ?? (multiple ? empty : ''),\n input,\n form,\n );\n const values = typeof selected === 'string' ? (selected ? [selected] : []) : selected;\n useListMotion(root, values[0], multiple ? '' : '.leaf-select__input-wrap[data-motion-key]');\n const atLimit =\n multiple && maxCount !== undefined && values.length >= Math.max(0, Math.floor(maxCount));\n const unavailable = (option: SelectOption) =>\n option.disabled || (atLimit && !values.includes(option.value));\n const selectedCache = useRef(new Map<string, SelectOption>());\n const nextCache = new Map<string, SelectOption>();\n for (const key of values) {\n const record = options.find((option) => option.value === key) ?? selectedCache.current.get(key);\n if (record) nextCache.set(key, record);\n }\n selectedCache.current = nextCache;\n const selectedOptions = values.map((key) => nextCache.get(key) ?? { value: key, label: key });\n // null keeps the selected label in the native input until a search is edited.\n const [query, setQuery] = useState<string | null>(null);\n const searchQuery = query ?? '';\n const [open, setOpen] = usePopupState(\n disabled || inputProps.readOnly,\n onOpenChange,\n controlledOpen,\n defaultOpen,\n );\n const [highlighted, setHighlighted] = useState(-1);\n const matched =\n !searchQuery || !showSearch || filterOption === false\n ? options\n : options.filter((option) =>\n typeof filterOption === 'function'\n ? filterOption(searchQuery, option)\n : searchText(option).toLocaleLowerCase().includes(searchQuery.toLocaleLowerCase()),\n );\n const newValue = searchQuery.trim();\n const createOption =\n allowCreate &&\n newValue &&\n !options.some((option) => option.value === newValue || searchText(option) === newValue)\n ? { value: newValue, label: newValue }\n : null;\n const filtered = createOption ? [...matched, createOption] : matched;\n const rows = useMemo(() => {\n const entries: { key: string; option?: SelectOption; group?: ReactNode; index: number }[] = [];\n let previousGroup: ReactNode;\n filtered.forEach((option, index) => {\n const group = optionGroups.get(option.value);\n if (group !== undefined && group !== previousGroup)\n entries.push({ key: `group-${option.value}`, group, index: -1 });\n entries.push({ key: option.value, option, index });\n previousGroup = group;\n });\n return entries;\n }, [filtered, optionGroups]);\n const virtualizer = useVirtualizer({\n count: rows.length,\n getScrollElement: () => panel.current,\n estimateSize: () => Math.max(24, optionHeight),\n overscan: 5,\n getItemKey: (index) => rows[index]?.key ?? index,\n enabled: open && virtual,\n initialRect: { height: listHeight, width: 240 },\n });\n useEffect(() => {\n if (open && virtual && highlighted >= 0) {\n const index = rows.findIndex((row) => row.index === highlighted);\n if (index >= 0) virtualizer.scrollToIndex(index, { align: 'auto' });\n }\n }, [open, virtual, highlighted, rows, virtualizer]);\n const updateQuery = (next: string) => {\n setQuery(next);\n onSearch?.(next);\n };\n const close = () => {\n setOpen(false);\n setQuery(null);\n if (searchQuery) onSearch?.('');\n };\n useFloatingDismiss(open, close, input, panel, root);\n useActiveOption(open, highlighted >= 0 ? `${panelId}-${highlighted}` : undefined, panel);\n const highlight = useFloatingHighlight(\n open,\n panel,\n highlighted >= 0 ? `${panelId}-${highlighted}` : undefined,\n `${searchQuery}:${filtered[highlighted]?.value}:${rows.length}:${virtualizer.range?.startIndex}:${virtualizer.range?.endIndex}`,\n );\n useEffect(() => {\n if (!open) setQuery(null);\n }, [open]);\n const change = (next: readonly string[]) => {\n if (disabled || inputProps.readOnly) return;\n setSelected(multiple ? next : (next[0] ?? ''));\n if (props.multiple)\n props.onChange?.(\n [...next],\n [\n ...selectedOptions,\n ...options.filter((option) => !values.includes(option.value)),\n ...(createOption ? [createOption] : []),\n ].filter((option) => next.includes(option.value)),\n );\n else\n props.onChange?.(\n next[0] ?? '',\n [...options, ...(createOption ? [createOption] : [])].find(\n (option) => option.value === next[0],\n ),\n );\n };\n const openMenu = () => {\n if (disabled || inputProps.readOnly) return;\n const active = filtered.findIndex(\n (option) => values.includes(option.value) && !unavailable(option),\n );\n setHighlighted(active >= 0 ? active : filtered.findIndex((option) => !unavailable(option)));\n setOpen(true);\n };\n const beginSearch = () => {\n if (!showSearch || disabled || inputProps.readOnly || inputReadOnly) return;\n if (!multiple && query === null) input.current?.select();\n if (!open) openMenu();\n };\n const selectOption = (option: SelectOption) => {\n if (unavailable(option) || inputProps.readOnly) return;\n if (createOption && option.value === createOption.value) {\n setCreated((previous) => [...previous, option]);\n onCreate?.(option);\n }\n change(\n multiple\n ? values.includes(option.value)\n ? values.filter((value) => value !== option.value)\n : [...values, option.value]\n : [option.value],\n );\n if (multiple) updateQuery('');\n else close();\n input.current?.focus();\n };\n const move = (direction: number) => {\n if (!filtered.length) return;\n let next = highlighted < 0 ? (direction > 0 ? -1 : filtered.length) : highlighted;\n for (let i = 0; i < filtered.length; i++) {\n next = (next + direction + filtered.length) % filtered.length;\n const candidate = filtered[next];\n if (candidate && !unavailable(candidate)) {\n setHighlighted(next);\n break;\n }\n }\n };\n const renderOption = (option: SelectOption, index: number) => (\n <button\n key={option.value}\n id={`${panelId}-${index}`}\n aria-posinset={index + 1}\n aria-setsize={filtered.length}\n type=\"button\"\n role=\"option\"\n aria-selected={values.includes(option.value)}\n aria-disabled={option.disabled || (atLimit && !values.includes(option.value)) || undefined}\n data-highlighted={highlighted === index || undefined}\n className=\"leaf-floating__option\"\n disabled={option.disabled || (atLimit && !values.includes(option.value))}\n tabIndex={-1}\n onMouseEnter={() => {\n if (!unavailable(option)) setHighlighted(index);\n }}\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => selectOption(option)}\n >\n <span className=\"leaf-floating__option-label\">\n {createOption?.value === option.value ? (\n <>\n <Plus size={14} aria-hidden=\"true\" />{' '}\n {format('select.create', {\n label: typeof option.label === 'string' ? option.label : option.value,\n })}\n </>\n ) : optionRender ? (\n optionRender(option)\n ) : (\n option.label\n )}\n </span>\n <Check size={15} aria-hidden=\"true\" className=\"leaf-select__check\" />\n </button>\n );\n const displayLabel = selectedOptions[0]\n ? (labelRender?.(selectedOptions[0]) ?? selectedOptions[0].label)\n : undefined;\n const textLabel =\n typeof displayLabel === 'string' || typeof displayLabel === 'number'\n ? String(displayLabel)\n : '';\n const inputValue = multiple ? searchQuery : showSearch && open ? (query ?? textLabel) : textLabel;\n const clearable = allowClear && values.length > 0 && !disabled && !inputProps.readOnly;\n const listboxProps = {\n id: panelId,\n role: 'listbox' as const,\n 'aria-busy': loading || undefined,\n 'aria-label': inputProps['aria-label'] ?? messages.select.placeholder,\n 'aria-multiselectable': multiple || undefined,\n };\n return (\n // biome-ignore lint/a11y/noStaticElementInteractions: Pointer events on padding forward to the keyboard-accessible combobox input.\n // biome-ignore lint/a11y/useKeyWithClickEvents: The combobox input owns all keyboard interaction; this wrapper only extends its hit area.\n <div\n ref={root}\n className={classes(\n 'leaf-select',\n `leaf-select--${size}`,\n multiple && 'leaf-select--multiple',\n className,\n )}\n style={style}\n data-status={status}\n data-disabled={disabled ? '' : undefined}\n data-open={open ? '' : undefined}\n data-clearable={clearable ? '' : undefined}\n data-searchable={showSearch ? '' : undefined}\n onMouseDown={(event) => {\n if (\n !disabled &&\n event.target instanceof Element &&\n !event.target.closest('input, button, a')\n )\n event.preventDefault();\n }}\n onClick={(event) => {\n if (\n !disabled &&\n event.target instanceof Element &&\n root.current?.contains(event.target) &&\n !event.target.closest('input, button, a')\n ) {\n input.current?.focus();\n input.current?.click();\n }\n }}\n >\n <SelectionContent\n className=\"leaf-select__content\"\n tagClassName=\"leaf-select__tag\"\n tagWrap={tagWrap}\n maxTagCount={maxTagCount}\n searchable={showSearch && !inputProps.readOnly && !inputReadOnly}\n query={searchQuery}\n removeLabel={messages.common.remove}\n items={\n multiple\n ? selectedOptions.map((option) => {\n const remove = () => {\n if (disabled || inputProps.readOnly || option.disabled) return;\n change(values.filter((item) => item !== option.value));\n input.current?.focus();\n };\n return {\n key: option.value,\n label: option.label,\n text: searchText(option),\n remove:\n !disabled && !inputProps.readOnly && !option.disabled ? remove : undefined,\n render: tagRender?.(option, remove),\n };\n })\n : undefined\n }\n >\n <span className=\"leaf-select__input-wrap\" data-motion-key={values[0] ?? ''}>\n {!multiple &&\n !textLabel &&\n displayLabel != null &&\n (!showSearch || !open || query === null) && (\n <span className=\"leaf-select__value\">{displayLabel}</span>\n )}\n <input\n {...inputProps}\n ref={merged}\n id={idProp ?? field?.id}\n form={form}\n type=\"text\"\n className=\"leaf-select__input\"\n disabled={disabled}\n readOnly={!showSearch || inputProps.readOnly || inputReadOnly}\n value={inputValue}\n placeholder={values.length ? '' : (placeholder ?? messages.select.placeholder)}\n autoComplete=\"off\"\n role=\"combobox\"\n aria-expanded={open}\n aria-haspopup=\"listbox\"\n aria-controls={panelId}\n aria-autocomplete={showSearch ? 'list' : undefined}\n aria-activedescendant={\n open && filtered[highlighted] ? `${panelId}-${highlighted}` : undefined\n }\n aria-required={required || undefined}\n aria-invalid={status === 'error' ? true : inputProps['aria-invalid']}\n aria-describedby={\n [inputProps['aria-describedby'], field?.descriptionId].filter(Boolean).join(' ') ||\n undefined\n }\n onClick={(event) => {\n onClick?.(event);\n if (!event.defaultPrevented) {\n if (open && !showSearch) close();\n else if (!open) openMenu();\n }\n }}\n onBlur={(event) => {\n onBlur?.(event);\n if (\n !event.defaultPrevented &&\n !root.current?.contains(event.relatedTarget) &&\n !panel.current?.contains(event.relatedTarget)\n )\n close();\n }}\n onChange={(event) => {\n if (!open) openMenu();\n updateQuery(event.target.value);\n setHighlighted(-1);\n }}\n onBeforeInput={(event) => {\n onBeforeInput?.(event);\n if (!event.defaultPrevented) beginSearch();\n }}\n onCompositionStart={(event) => {\n onCompositionStart?.(event);\n if (!event.defaultPrevented) beginSearch();\n }}\n onPaste={(event) => {\n onPaste?.(event);\n if (!event.defaultPrevented) beginSearch();\n }}\n onKeyDown={(event) => {\n onKeyDown?.(event);\n if (event.defaultPrevented || event.nativeEvent.isComposing) return;\n if (\n !event.ctrlKey &&\n !event.metaKey &&\n !event.altKey &&\n (event.key.length === 1 || event.key === 'Backspace' || event.key === 'Delete')\n )\n beginSearch();\n if (event.key === 'ArrowDown' || event.key === 'ArrowUp') {\n event.preventDefault();\n if (!open) openMenu();\n else move(event.key === 'ArrowDown' ? 1 : -1);\n } else if ((event.key === 'Home' || event.key === 'End') && open && !showSearch) {\n event.preventDefault();\n const candidates = filtered\n .map((option, index) => ({ option, index }))\n .filter(({ option }) => !unavailable(option));\n setHighlighted(\n (event.key === 'Home' ? candidates[0] : candidates.at(-1))?.index ?? -1,\n );\n } else if (event.key === 'Enter' || (event.key === ' ' && !showSearch)) {\n event.preventDefault();\n if (!open) openMenu();\n else {\n const option =\n filtered[highlighted] ?? filtered.find((option) => !unavailable(option));\n if (option) selectOption(option);\n }\n } else if (event.key === 'Escape' && open) {\n event.preventDefault();\n event.stopPropagation();\n close();\n } else if (event.key === 'Tab' && open) close();\n else if (\n event.key === 'Backspace' &&\n multiple &&\n !searchQuery &&\n !inputProps.readOnly\n ) {\n const last = [...values]\n .reverse()\n .find((value) => !options.find((option) => option.value === value)?.disabled);\n if (last) {\n event.preventDefault();\n change(values.filter((value) => value !== last));\n }\n }\n }}\n />\n </span>\n </SelectionContent>\n <button\n type=\"button\"\n className=\"leaf-select__arrow\"\n tabIndex={-1}\n disabled={disabled}\n aria-label={messages.select.placeholder}\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => {\n if (open) close();\n else openMenu();\n input.current?.focus();\n }}\n >\n {loading ? (\n <LoaderCircle className=\"leaf-select__spinner\" size={16} aria-hidden=\"true\" />\n ) : (\n <ChevronDown size={16} aria-hidden=\"true\" />\n )}\n </button>\n {clearable && (\n <ClearButton\n label={messages.select.clear}\n beforeArrow\n onClear={() => {\n change(empty);\n close();\n input.current?.focus();\n }}\n />\n )}\n <FormValue\n name={multiple ? undefined : name}\n form={form}\n value={multiple ? values.join(',') : (values[0] ?? '')}\n disabled={disabled}\n required={required}\n triggerRef={input}\n />\n {multiple &&\n values.map((value) => (\n <input\n key={value}\n type=\"hidden\"\n name={name}\n form={form}\n value={value}\n disabled={disabled}\n />\n ))}\n <FloatingPanel\n open={open}\n placement={popupPlacement}\n container={getPopupContainer}\n triggerRef={root}\n panelRef={panel}\n matchWidth={popupWidth === 'trigger'}\n width={\n popupWidth === 'trigger' ? undefined : popupWidth === 'auto' ? 'max-content' : popupWidth\n }\n minWidth={popupWidth === 'auto' ? 'trigger' : undefined}\n maxWidth={popupMaxWidth}\n {...(filtered.length ? listboxProps : {})}\n className={classes('leaf-floating', 'leaf-select__panel', popupClassName)}\n data-hover-motion=\"\"\n style={{ maxHeight: listHeight, ...popupStyle }}\n onScroll={onPopupScroll}\n >\n {/* Feedback is announced beside an empty listbox, never as a selectable option. */}\n {!filtered.length && <div {...listboxProps} />}\n <FloatingHighlight\n style={highlight}\n selected={values.includes(filtered[highlighted]?.value ?? '')}\n />\n {(popupRender ?? ((content: ReactNode) => content))(\n loading && !filtered.length ? (\n <FloatingFeedback loading>{messages.common.loading}</FloatingFeedback>\n ) : filtered.length ? (\n virtual ? (\n <div\n style={{\n height: virtualizer.getTotalSize(),\n position: 'relative',\n minWidth: '100%',\n }}\n >\n {virtualizer.getVirtualItems().map((item) => {\n const row = rows[item.index];\n if (!row) return null;\n return (\n <div\n key={row.key}\n ref={virtualizer.measureElement}\n data-index={item.index}\n style={{\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n transform: `translateY(${item.start}px)`,\n }}\n >\n {row.option ? (\n renderOption(row.option, row.index)\n ) : (\n <div className=\"leaf-select__group\">{row.group}</div>\n )}\n </div>\n );\n })}\n </div>\n ) : (\n rows.map((row) =>\n row.option ? (\n renderOption(row.option, row.index)\n ) : (\n <div key={row.key} className=\"leaf-select__group\">\n {row.group}\n </div>\n ),\n )\n )\n ) : (\n <FloatingFeedback>{notFoundContent ?? messages.select.empty}</FloatingFeedback>\n ),\n )}\n </FloatingPanel>\n </div>\n );\n});\nSelectControl.displayName = 'SelectControl';\n\nexport const Select = forwardRef<HTMLInputElement, SelectProps>(function Select(rawProps, ref) {\n const props = useComponentProps('Select', rawProps);\n return <SelectControl {...props} ref={ref} />;\n});\nSelect.displayName = 'Select';\n"],"names":["empty","searchText","option","String","SelectControl","forwardRef","props","forwardedRef","suppliedOptions","size","statusProp","placeholder","value","defaultValue","name","requiredProp","allowClear","form","className","style","disabledProp","idProp","onOpenChange","controlledOpen","defaultOpen","inputReadOnly","labelRender","tagRender","popupRender","onPopupScroll","onClick","onKeyDown","onBeforeInput","onCompositionStart","onPaste","onBlur","multiple","searchProp","filterOption","onSearch","popupWidth","popupMaxWidth","popupClassName","popupStyle","popupPlacement","getPopupContainer","loading","notFoundContent","optionRender","maxCount","maxTagCount","tagWrap","allowCreate","onCreate","virtualProp","listHeight","optionHeightProp","_onChange","inputProps","format","useFormattedText","showSearch","created","setCreated","useState","baseOptions","useMemo","entry","options","optionGroups","Map","virtual","messages","theme","density","useLeafConfig","optionHeight","Math","estimateControlHeight","field","useFormField","disabled","required","status","undefined","root","useRef","input","panel","merged","useMergedRef","panelId","useId","selected","setSelected","useFieldValue","values","useListMotion","atLimit","unavailable","selectedCache","nextCache","key","record","selectedOptions","query","setQuery","searchQuery","open","setOpen","usePopupState","highlighted","setHighlighted","matched","newValue","createOption","filtered","rows","entries","previousGroup","index","group","virtualizer","useVirtualizer","useEffect","row","updateQuery","next","close","useFloatingDismiss","useActiveOption","highlight","useFloatingHighlight","change","openMenu","active","beginSearch","selectOption","previous","move","direction","i","candidate","renderOption","event","Plus","Check","displayLabel","textLabel","inputValue","clearable","listboxProps","classes","Element","SelectionContent","remove","item","Boolean","candidates","last","LoaderCircle","ChevronDown","ClearButton","FormValue","FloatingPanel","FloatingHighlight","content","FloatingFeedback","Select","rawProps","ref","useComponentProps"],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  "use client";
2
+ import '../../../styles/foundation.css';
2
3
  import '../../../styles/components/shared-calendar.css';
3
4
  import { jsx, jsxs } from "react/jsx-runtime";
4
5
  import { ChevronLeft, ChevronRight } from "lucide-react";
@@ -196,7 +197,7 @@ function CalendarPanel({ value, values, onChange, picker = 'date', minDate, maxD
196
197
  /*#__PURE__*/ jsx("button", {
197
198
  type: "button",
198
199
  className: "leaf-date-picker__nav",
199
- "aria-label": 'date' === view ? messages.previousMonth : 'month' === view ? messages.previousYear : messages.previousYears,
200
+ "aria-label": 'date' === view ? messages.calendar.previousMonth : 'month' === view ? messages.calendar.previousYear : messages.calendar.previousYears,
200
201
  onClick: ()=>navigate(-1),
201
202
  children: /*#__PURE__*/ jsx(ChevronLeft, {
202
203
  size: 16,
@@ -210,7 +211,7 @@ function CalendarPanel({ value, values, onChange, picker = 'date', minDate, maxD
210
211
  'date' === view && /*#__PURE__*/ jsx("button", {
211
212
  type: "button",
212
213
  className: "leaf-calendar__heading",
213
- "aria-label": messages.month,
214
+ "aria-label": messages.calendar.month,
214
215
  onClick: ()=>setView('month'),
215
216
  children: new Intl.DateTimeFormat(locale, {
216
217
  month: 'short'
@@ -219,7 +220,7 @@ function CalendarPanel({ value, values, onChange, picker = 'date', minDate, maxD
219
220
  /*#__PURE__*/ jsx("button", {
220
221
  type: "button",
221
222
  className: "leaf-calendar__heading",
222
- "aria-label": 'year' === view ? void 0 : messages.year,
223
+ "aria-label": 'year' === view ? void 0 : messages.calendar.year,
223
224
  disabled: 'year' === view,
224
225
  onClick: ()=>setView('year'),
225
226
  children: 'year' === view ? `${decade} – ${decade + 11}` : visible.getFullYear()
@@ -229,7 +230,7 @@ function CalendarPanel({ value, values, onChange, picker = 'date', minDate, maxD
229
230
  /*#__PURE__*/ jsx("button", {
230
231
  type: "button",
231
232
  className: "leaf-date-picker__nav",
232
- "aria-label": 'date' === view ? messages.nextMonth : 'month' === view ? messages.nextYear : messages.nextYears,
233
+ "aria-label": 'date' === view ? messages.calendar.nextMonth : 'month' === view ? messages.calendar.nextYear : messages.calendar.nextYears,
233
234
  onClick: ()=>navigate(1),
234
235
  children: /*#__PURE__*/ jsx(ChevronRight, {
235
236
  size: 16,
@@ -244,7 +245,7 @@ function CalendarPanel({ value, values, onChange, picker = 'date', minDate, maxD
244
245
  setVisible(today);
245
246
  setActive(today);
246
247
  },
247
- children: messages.today
248
+ children: messages.calendar.today
248
249
  }),
249
250
  null != headerExtra && /*#__PURE__*/ jsx("span", {
250
251
  className: "leaf-calendar__extra",
@@ -256,7 +257,7 @@ function CalendarPanel({ value, values, onChange, picker = 'date', minDate, maxD
256
257
  className: "leaf-calendar__weekdays",
257
258
  children: Array.from({
258
259
  length: 7
259
- }, (_, index)=>messages.weekdays[(index + weekStartsOn + 6) % 7] ?? String(index)).map((day)=>/*#__PURE__*/ jsx("span", {
260
+ }, (_, index)=>messages.calendar.weekdays[(index + weekStartsOn + 6) % 7] ?? String(index)).map((day)=>/*#__PURE__*/ jsx("span", {
260
261
  children: day
261
262
  }, day))
262
263
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"shared/calendar.js","sources":["../../../../../src/shared/calendar.tsx"],"sourcesContent":["import { ChevronLeft, ChevronRight } from 'lucide-react';\nimport { type KeyboardEvent, type ReactNode, useEffect, useRef, useState } from 'react';\nimport { useLeafConfig } from '../config-provider/context';\nimport { classes } from './classes';\nimport { calendarDays, dateKey, formatMonthLabel, sameDate, shiftMonth } from './date';\nimport { useContentTransition } from './presence';\n\nexport type CalendarMode = 'year' | 'quarter' | 'month' | 'week' | 'date' | 'datetime';\nexport function startOfPeriod(date: Date, mode: CalendarMode) {\n const next = new Date(date);\n next.setMilliseconds(0);\n if (mode !== 'datetime') next.setHours(0, 0, 0, 0);\n if (mode === 'year') next.setMonth(0, 1);\n if (mode === 'month') next.setDate(1);\n if (mode === 'quarter') next.setMonth(Math.floor(next.getMonth() / 3) * 3, 1);\n if (mode === 'week') next.setDate(next.getDate() - ((next.getDay() + 6) % 7));\n return next;\n}\nexport function dateTimeKey(date: Date, showSeconds = true) {\n return (\n dateKey(date) +\n ' ' +\n [date.getHours(), date.getMinutes(), ...(showSeconds ? [date.getSeconds()] : [])]\n .map((n) => String(n).padStart(2, '0'))\n .join(':')\n );\n}\nexport function periodKey(date: Date, mode: CalendarMode) {\n if (mode === 'year') return String(date.getFullYear());\n if (mode === 'month') return dateKey(date).slice(0, 7);\n if (mode === 'quarter') return `${date.getFullYear()}-Q${Math.floor(date.getMonth() / 3) + 1}`;\n if (mode === 'datetime') return dateTimeKey(date);\n if (mode === 'week') {\n const monday = startOfPeriod(date, 'week');\n const thursday = new Date(monday);\n thursday.setDate(monday.getDate() + 3);\n const first = startOfPeriod(new Date(thursday.getFullYear(), 0, 4), 'week');\n const weeks = Math.round(\n (Date.UTC(monday.getFullYear(), monday.getMonth(), monday.getDate()) -\n Date.UTC(first.getFullYear(), first.getMonth(), first.getDate())) /\n 604800000,\n );\n return `${thursday.getFullYear()}-W${String(weeks + 1).padStart(2, '0')}`;\n }\n return dateKey(date);\n}\nexport function withinPeriod(date: Date, mode: CalendarMode, min?: Date, max?: Date) {\n const time = startOfPeriod(date, mode).getTime();\n return (\n Number.isFinite(time) &&\n (!min || time >= startOfPeriod(min, mode).getTime()) &&\n (!max || time <= startOfPeriod(max, mode).getTime())\n );\n}\nexport function shiftCalendar(date: Date, mode: CalendarMode, amount: number) {\n if (mode === 'year') return new Date(date.getFullYear() + amount * 12, 0, 1);\n if (mode === 'month' || mode === 'quarter') return new Date(date.getFullYear() + amount, 0, 1);\n return shiftMonth(date, amount);\n}\ninterface CalendarPanelProps {\n value?: Date | null;\n values?: readonly Date[];\n onChange: (date: Date) => void;\n picker?: CalendarMode;\n minDate?: Date;\n maxDate?: Date;\n visibleDate?: Date;\n onVisibleChange?: (date: Date) => void;\n autoFocus?: boolean;\n range?: readonly [Date | null, Date | null];\n hoverDate?: Date | null;\n onHover?: (date: Date) => void;\n headerExtra?: ReactNode;\n showOutsideDays?: boolean;\n disabledDate?: (date: Date) => boolean;\n cellRender?: (date: Date) => ReactNode;\n showToday?: boolean;\n}\nexport function CalendarPanel({\n value,\n values,\n onChange,\n picker = 'date',\n minDate,\n maxDate,\n visibleDate,\n onVisibleChange,\n autoFocus,\n range,\n hoverDate,\n onHover,\n headerExtra,\n showOutsideDays = true,\n disabledDate,\n cellRender,\n showToday = false,\n}: CalendarPanelProps) {\n const { locale, messages, weekStartsOn, direction } = useLeafConfig();\n const initial = value ?? minDate ?? new Date();\n const [view, setView] = useState<'year' | 'quarter' | 'month' | 'date'>(\n picker === 'year' || picker === 'month' || picker === 'quarter' ? picker : 'date',\n );\n useEffect(() => {\n setView(picker === 'year' || picker === 'month' || picker === 'quarter' ? picker : 'date');\n }, [picker]);\n const [internalVisible, setInternalVisible] = useState(initial);\n const visible = visibleDate ?? internalVisible;\n const [active, setActive] = useState(initial);\n const root = useRef<HTMLDivElement>(null);\n const grid = useRef<HTMLFieldSetElement>(null);\n const previousVisible = useRef(visible.getTime());\n const transitionDirection =\n Math.sign(visible.getTime() - previousVisible.current) * (direction === 'rtl' ? -1 : 1);\n const period =\n view === 'year'\n ? Math.floor(visible.getFullYear() / 12)\n : view === 'date'\n ? `${visible.getFullYear()}-${visible.getMonth()}`\n : visible.getFullYear();\n useContentTransition(root, view, 0, true);\n useContentTransition(grid, `${view}:${period}`, transitionDirection);\n useEffect(() => {\n previousVisible.current = visible.getTime();\n }, [visible]);\n const focusRequested = useRef(false);\n const valueTime = value?.getTime();\n const controlledVisible = visibleDate !== undefined;\n useEffect(() => {\n if (valueTime !== undefined) {\n const next = new Date(valueTime);\n setActive(next);\n if (!controlledVisible) setInternalVisible(next);\n }\n }, [valueTime, controlledVisible]);\n useEffect(() => {\n if (autoFocus) focusRequested.current = true;\n }, [autoFocus]);\n // biome-ignore lint/correctness/useExhaustiveDependencies: Only keyboard navigation requests focus, not hover or selection changes.\n useEffect(() => {\n if (focusRequested.current) {\n root.current\n ?.querySelector<HTMLButtonElement>('[data-active=\"true\"]:not(:disabled)')\n ?.focus();\n focusRequested.current = false;\n }\n }, [active, view, visible, autoFocus]);\n const setVisible = (date: Date) => {\n if (onVisibleChange) onVisibleChange(date);\n else setInternalVisible(date);\n };\n const decade = Math.floor(visible.getFullYear() / 12) * 12;\n const cells =\n view === 'year'\n ? Array.from({ length: 12 }, (_, i) => new Date(decade + i, 0, 1))\n : view === 'quarter'\n ? Array.from({ length: 4 }, (_, i) => new Date(visible.getFullYear(), i * 3, 1))\n : view === 'month'\n ? Array.from({ length: 12 }, (_, i) => new Date(visible.getFullYear(), i, 1))\n : calendarDays(visible, weekStartsOn);\n const cellMode = view === 'date' ? (picker === 'datetime' ? 'date' : picker) : view;\n const selecting =\n view === picker || (view === 'date' && (picker === 'week' || picker === 'datetime'));\n const focusableCells = cells.filter(\n (date) =>\n (showOutsideDays || view !== 'date' || date.getMonth() === visible.getMonth()) &&\n withinPeriod(date, cellMode, minDate, maxDate) &&\n !(selecting && disabledDate?.(date)),\n );\n const activeCell =\n focusableCells.find((date) =>\n view === 'date'\n ? sameDate(date, active)\n : startOfPeriod(date, cellMode).getTime() === startOfPeriod(active, cellMode).getTime(),\n ) ?? focusableCells[0];\n const samePeriod = (date: Date, candidate?: Date | null) =>\n Boolean(\n candidate &&\n startOfPeriod(date, cellMode).getTime() === startOfPeriod(candidate, cellMode).getTime(),\n );\n const choose = (date: Date) => {\n if (view === 'year' && picker !== 'year') {\n setVisible(date);\n setActive(date);\n setView(picker === 'quarter' ? 'quarter' : 'month');\n focusRequested.current = true;\n } else if (view === 'month' && picker !== 'month') {\n setVisible(date);\n setActive(date);\n setView('date');\n focusRequested.current = true;\n } else onChange(startOfPeriod(date, picker === 'datetime' ? 'date' : picker));\n };\n const move = (date: Date, event: KeyboardEvent<HTMLButtonElement>) => {\n const next = new Date(date);\n const delta =\n event.key === (direction === 'rtl' ? 'ArrowRight' : 'ArrowLeft')\n ? -1\n : event.key === (direction === 'rtl' ? 'ArrowLeft' : 'ArrowRight')\n ? 1\n : event.key === 'ArrowUp'\n ? view === 'date'\n ? -7\n : -3\n : event.key === 'ArrowDown'\n ? view === 'date'\n ? 7\n : 3\n : 0;\n if (delta) {\n if (view === 'date') next.setDate(next.getDate() + delta);\n else if (view === 'month') next.setMonth(next.getMonth() + delta);\n else if (view === 'quarter') next.setMonth(next.getMonth() + delta * 3);\n else next.setFullYear(next.getFullYear() + delta);\n } else if (event.key === 'Home' || event.key === 'End') {\n if (view === 'date')\n next.setDate(\n next.getDate() +\n (event.key === 'Home'\n ? -((next.getDay() - weekStartsOn + 7) % 7)\n : 6 - ((next.getDay() - weekStartsOn + 7) % 7)),\n );\n else\n next.setTime((event.key === 'Home' ? cells[0] : cells.at(-1))?.getTime() ?? next.getTime());\n } else if (event.key === 'PageUp' || event.key === 'PageDown') {\n const sign = event.key === 'PageUp' ? -1 : 1;\n if (view === 'date') {\n const month = shiftMonth(next, sign);\n next.setTime(\n new Date(\n month.getFullYear(),\n month.getMonth(),\n Math.min(\n next.getDate(),\n new Date(month.getFullYear(), month.getMonth() + 1, 0).getDate(),\n ),\n ).getTime(),\n );\n } else next.setFullYear(next.getFullYear() + sign * (view === 'year' ? 12 : 1));\n } else return;\n event.preventDefault();\n if (minDate && next < startOfPeriod(minDate, cellMode))\n next.setTime(startOfPeriod(minDate, cellMode).getTime());\n if (maxDate && next > startOfPeriod(maxDate, cellMode))\n next.setTime(startOfPeriod(maxDate, cellMode).getTime());\n if (selecting && disabledDate?.(next)) {\n const step = delta || (event.key === 'End' || event.key === 'PageDown' ? 1 : -1);\n let attempts = 0;\n while (disabledDate(next) && attempts < 366) {\n if (view === 'date') next.setDate(next.getDate() + step);\n else if (view === 'month') next.setMonth(next.getMonth() + step);\n else if (view === 'quarter') next.setMonth(next.getMonth() + step * 3);\n else next.setFullYear(next.getFullYear() + step);\n if (!withinPeriod(next, cellMode, minDate, maxDate)) return;\n attempts += 1;\n }\n if (disabledDate(next)) return;\n }\n setVisible(next);\n setActive(next);\n focusRequested.current = true;\n onHover?.(next);\n };\n const navigate = (direction: number) => {\n const next =\n view === 'date'\n ? shiftMonth(visible, direction)\n : new Date(\n visible.getFullYear() + direction * (view === 'year' ? 12 : 1),\n visible.getMonth(),\n 1,\n );\n const nextActive = new Date(next);\n if (view === 'date')\n nextActive.setDate(\n Math.min(active.getDate(), new Date(next.getFullYear(), next.getMonth() + 1, 0).getDate()),\n );\n setVisible(next);\n setActive(nextActive);\n };\n const periodNames = [range?.[0], range?.[1] ?? (range?.[0] ? hoverDate : null)] as const;\n const times = periodNames\n .filter((date): date is Date => Boolean(date))\n .map((date) => startOfPeriod(date, cellMode).getTime());\n const start = times.length === 2 ? Math.min(...times) : undefined;\n const end = times.length === 2 ? Math.max(...times) : undefined;\n return (\n <div\n ref={root}\n data-view={view}\n className={classes('leaf-calendar', range && 'leaf-calendar--range')}\n >\n <div className=\"leaf-date-picker__header\">\n <button\n type=\"button\"\n className=\"leaf-date-picker__nav\"\n aria-label={\n view === 'date'\n ? messages.previousMonth\n : view === 'month'\n ? messages.previousYear\n : messages.previousYears\n }\n onClick={() => navigate(-1)}\n >\n <ChevronLeft size={16} aria-hidden=\"true\" />\n </button>\n <div className=\"leaf-calendar__headings\" aria-live=\"polite\">\n {view === 'date' && (\n <button\n type=\"button\"\n className=\"leaf-calendar__heading\"\n aria-label={messages.month}\n onClick={() => setView('month')}\n >\n {new Intl.DateTimeFormat(locale, { month: 'short' }).format(visible)}\n </button>\n )}\n <button\n type=\"button\"\n className=\"leaf-calendar__heading\"\n aria-label={view === 'year' ? undefined : messages.year}\n disabled={view === 'year'}\n onClick={() => setView('year')}\n >\n {view === 'year' ? `${decade} – ${decade + 11}` : visible.getFullYear()}\n </button>\n </div>\n <button\n type=\"button\"\n className=\"leaf-date-picker__nav\"\n aria-label={\n view === 'date'\n ? messages.nextMonth\n : view === 'month'\n ? messages.nextYear\n : messages.nextYears\n }\n onClick={() => navigate(1)}\n >\n <ChevronRight size={16} aria-hidden=\"true\" />\n </button>\n {showToday && (\n <button\n type=\"button\"\n className=\"leaf-calendar__today\"\n onClick={() => {\n const today = new Date();\n setVisible(today);\n setActive(today);\n }}\n >\n {messages.today}\n </button>\n )}\n {headerExtra != null && <span className=\"leaf-calendar__extra\">{headerExtra}</span>}\n </div>\n {view === 'date' && (\n <div className=\"leaf-calendar__weekdays\">\n {Array.from(\n { length: 7 },\n (_, index) => messages.weekdays[(index + weekStartsOn + 6) % 7] ?? String(index),\n ).map((day) => (\n <span key={day}>{day}</span>\n ))}\n </div>\n )}\n <fieldset\n ref={grid}\n className={classes(\n 'leaf-calendar__cells',\n view !== 'date' && 'leaf-calendar__cells--coarse',\n )}\n aria-label={\n view === 'date' ? formatMonthLabel(visible, locale) : String(visible.getFullYear())\n }\n >\n {cells.map((date) => {\n const outside = view === 'date' && date.getMonth() !== visible.getMonth();\n if (outside && !showOutsideDays)\n return <span key={dateKey(date)} className=\"leaf-calendar__cell\" />;\n const time = startOfPeriod(date, cellMode).getTime();\n const checked = range\n ? range.some((endpoint) => samePeriod(date, endpoint))\n : values\n ? values.some((value) => samePeriod(date, value))\n : samePeriod(date, value);\n const hovered = Boolean(range?.[0] && !range[1] && samePeriod(date, hoverDate));\n const isActive = Boolean(\n activeCell &&\n (view === 'date' ? sameDate(date, activeCell) : samePeriod(date, activeCell)),\n );\n const between = start !== undefined && end !== undefined && time >= start && time <= end;\n return (\n <span\n key={dateKey(date)}\n className={classes(\n 'leaf-calendar__cell',\n between && start !== end && 'leaf-calendar__cell--range',\n between && time === start && 'leaf-calendar__cell--start',\n between && time === end && 'leaf-calendar__cell--end',\n )}\n >\n <button\n type=\"button\"\n data-active={isActive}\n data-day={dateKey(date)}\n data-range-hover={hovered || undefined}\n tabIndex={isActive ? 0 : -1}\n aria-label={\n view === 'date'\n ? dateKey(date)\n : view === 'month'\n ? dateKey(date).slice(0, 7)\n : view === 'quarter'\n ? periodKey(date, 'quarter')\n : String(date.getFullYear())\n }\n aria-pressed={checked}\n aria-current={sameDate(date, new Date()) ? 'date' : undefined}\n disabled={\n !withinPeriod(date, cellMode, minDate, maxDate) ||\n Boolean(selecting && disabledDate?.(date))\n }\n className={classes(\n 'leaf-date-picker__day',\n outside && 'leaf-date-picker__day--outside',\n (checked || hovered) && 'leaf-date-picker__day--selected',\n )}\n onMouseEnter={() => {\n if (\n withinPeriod(date, cellMode, minDate, maxDate) &&\n !(selecting && disabledDate?.(date))\n )\n onHover?.(date);\n }}\n onClick={() => choose(date)}\n onKeyDown={(event) => move(date, event)}\n >\n <span className=\"leaf-calendar__cell-label\">\n {view === 'date'\n ? date.getDate()\n : view === 'month'\n ? new Intl.DateTimeFormat(locale, { month: 'short' }).format(date)\n : view === 'quarter'\n ? `Q${Math.floor(date.getMonth() / 3) + 1}`\n : date.getFullYear()}\n </span>\n {cellRender && selecting && (\n <span className=\"leaf-calendar__cell-content\">{cellRender(date)}</span>\n )}\n </button>\n </span>\n );\n })}\n </fieldset>\n </div>\n );\n}\n"],"names":["startOfPeriod","date","mode","next","Date","Math","dateTimeKey","showSeconds","dateKey","n","String","periodKey","monday","thursday","first","weeks","withinPeriod","min","max","time","Number","shiftCalendar","amount","shiftMonth","CalendarPanel","value","values","onChange","picker","minDate","maxDate","visibleDate","onVisibleChange","autoFocus","range","hoverDate","onHover","headerExtra","showOutsideDays","disabledDate","cellRender","showToday","locale","messages","weekStartsOn","direction","useLeafConfig","initial","view","setView","useState","useEffect","internalVisible","setInternalVisible","visible","active","setActive","root","useRef","grid","previousVisible","transitionDirection","period","useContentTransition","focusRequested","valueTime","controlledVisible","undefined","setVisible","decade","cells","Array","_","i","calendarDays","cellMode","selecting","focusableCells","activeCell","sameDate","samePeriod","candidate","Boolean","choose","move","event","delta","sign","month","step","attempts","navigate","nextActive","periodNames","times","start","end","classes","ChevronLeft","Intl","ChevronRight","today","index","day","formatMonthLabel","outside","checked","endpoint","hovered","isActive","between"],"mappings":"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"}
1
+ {"version":3,"file":"shared/calendar.js","sources":["../../../../../src/shared/calendar.tsx"],"sourcesContent":["import { ChevronLeft, ChevronRight } from 'lucide-react';\nimport { type KeyboardEvent, type ReactNode, useEffect, useRef, useState } from 'react';\nimport { useLeafConfig } from '../config-provider/context';\nimport { classes } from './classes';\nimport { calendarDays, dateKey, formatMonthLabel, sameDate, shiftMonth } from './date';\nimport { useContentTransition } from './presence';\n\nexport type CalendarMode = 'year' | 'quarter' | 'month' | 'week' | 'date' | 'datetime';\nexport function startOfPeriod(date: Date, mode: CalendarMode) {\n const next = new Date(date);\n next.setMilliseconds(0);\n if (mode !== 'datetime') next.setHours(0, 0, 0, 0);\n if (mode === 'year') next.setMonth(0, 1);\n if (mode === 'month') next.setDate(1);\n if (mode === 'quarter') next.setMonth(Math.floor(next.getMonth() / 3) * 3, 1);\n if (mode === 'week') next.setDate(next.getDate() - ((next.getDay() + 6) % 7));\n return next;\n}\nexport function dateTimeKey(date: Date, showSeconds = true) {\n return (\n dateKey(date) +\n ' ' +\n [date.getHours(), date.getMinutes(), ...(showSeconds ? [date.getSeconds()] : [])]\n .map((n) => String(n).padStart(2, '0'))\n .join(':')\n );\n}\nexport function periodKey(date: Date, mode: CalendarMode) {\n if (mode === 'year') return String(date.getFullYear());\n if (mode === 'month') return dateKey(date).slice(0, 7);\n if (mode === 'quarter') return `${date.getFullYear()}-Q${Math.floor(date.getMonth() / 3) + 1}`;\n if (mode === 'datetime') return dateTimeKey(date);\n if (mode === 'week') {\n const monday = startOfPeriod(date, 'week');\n const thursday = new Date(monday);\n thursday.setDate(monday.getDate() + 3);\n const first = startOfPeriod(new Date(thursday.getFullYear(), 0, 4), 'week');\n const weeks = Math.round(\n (Date.UTC(monday.getFullYear(), monday.getMonth(), monday.getDate()) -\n Date.UTC(first.getFullYear(), first.getMonth(), first.getDate())) /\n 604800000,\n );\n return `${thursday.getFullYear()}-W${String(weeks + 1).padStart(2, '0')}`;\n }\n return dateKey(date);\n}\nexport function withinPeriod(date: Date, mode: CalendarMode, min?: Date, max?: Date) {\n const time = startOfPeriod(date, mode).getTime();\n return (\n Number.isFinite(time) &&\n (!min || time >= startOfPeriod(min, mode).getTime()) &&\n (!max || time <= startOfPeriod(max, mode).getTime())\n );\n}\nexport function shiftCalendar(date: Date, mode: CalendarMode, amount: number) {\n if (mode === 'year') return new Date(date.getFullYear() + amount * 12, 0, 1);\n if (mode === 'month' || mode === 'quarter') return new Date(date.getFullYear() + amount, 0, 1);\n return shiftMonth(date, amount);\n}\ninterface CalendarPanelProps {\n value?: Date | null;\n values?: readonly Date[];\n onChange: (date: Date) => void;\n picker?: CalendarMode;\n minDate?: Date;\n maxDate?: Date;\n visibleDate?: Date;\n onVisibleChange?: (date: Date) => void;\n autoFocus?: boolean;\n range?: readonly [Date | null, Date | null];\n hoverDate?: Date | null;\n onHover?: (date: Date) => void;\n headerExtra?: ReactNode;\n showOutsideDays?: boolean;\n disabledDate?: (date: Date) => boolean;\n cellRender?: (date: Date) => ReactNode;\n showToday?: boolean;\n}\nexport function CalendarPanel({\n value,\n values,\n onChange,\n picker = 'date',\n minDate,\n maxDate,\n visibleDate,\n onVisibleChange,\n autoFocus,\n range,\n hoverDate,\n onHover,\n headerExtra,\n showOutsideDays = true,\n disabledDate,\n cellRender,\n showToday = false,\n}: CalendarPanelProps) {\n const { locale, messages, weekStartsOn, direction } = useLeafConfig();\n const initial = value ?? minDate ?? new Date();\n const [view, setView] = useState<'year' | 'quarter' | 'month' | 'date'>(\n picker === 'year' || picker === 'month' || picker === 'quarter' ? picker : 'date',\n );\n useEffect(() => {\n setView(picker === 'year' || picker === 'month' || picker === 'quarter' ? picker : 'date');\n }, [picker]);\n const [internalVisible, setInternalVisible] = useState(initial);\n const visible = visibleDate ?? internalVisible;\n const [active, setActive] = useState(initial);\n const root = useRef<HTMLDivElement>(null);\n const grid = useRef<HTMLFieldSetElement>(null);\n const previousVisible = useRef(visible.getTime());\n const transitionDirection =\n Math.sign(visible.getTime() - previousVisible.current) * (direction === 'rtl' ? -1 : 1);\n const period =\n view === 'year'\n ? Math.floor(visible.getFullYear() / 12)\n : view === 'date'\n ? `${visible.getFullYear()}-${visible.getMonth()}`\n : visible.getFullYear();\n useContentTransition(root, view, 0, true);\n useContentTransition(grid, `${view}:${period}`, transitionDirection);\n useEffect(() => {\n previousVisible.current = visible.getTime();\n }, [visible]);\n const focusRequested = useRef(false);\n const valueTime = value?.getTime();\n const controlledVisible = visibleDate !== undefined;\n useEffect(() => {\n if (valueTime !== undefined) {\n const next = new Date(valueTime);\n setActive(next);\n if (!controlledVisible) setInternalVisible(next);\n }\n }, [valueTime, controlledVisible]);\n useEffect(() => {\n if (autoFocus) focusRequested.current = true;\n }, [autoFocus]);\n // biome-ignore lint/correctness/useExhaustiveDependencies: Only keyboard navigation requests focus, not hover or selection changes.\n useEffect(() => {\n if (focusRequested.current) {\n root.current\n ?.querySelector<HTMLButtonElement>('[data-active=\"true\"]:not(:disabled)')\n ?.focus();\n focusRequested.current = false;\n }\n }, [active, view, visible, autoFocus]);\n const setVisible = (date: Date) => {\n if (onVisibleChange) onVisibleChange(date);\n else setInternalVisible(date);\n };\n const decade = Math.floor(visible.getFullYear() / 12) * 12;\n const cells =\n view === 'year'\n ? Array.from({ length: 12 }, (_, i) => new Date(decade + i, 0, 1))\n : view === 'quarter'\n ? Array.from({ length: 4 }, (_, i) => new Date(visible.getFullYear(), i * 3, 1))\n : view === 'month'\n ? Array.from({ length: 12 }, (_, i) => new Date(visible.getFullYear(), i, 1))\n : calendarDays(visible, weekStartsOn);\n const cellMode = view === 'date' ? (picker === 'datetime' ? 'date' : picker) : view;\n const selecting =\n view === picker || (view === 'date' && (picker === 'week' || picker === 'datetime'));\n const focusableCells = cells.filter(\n (date) =>\n (showOutsideDays || view !== 'date' || date.getMonth() === visible.getMonth()) &&\n withinPeriod(date, cellMode, minDate, maxDate) &&\n !(selecting && disabledDate?.(date)),\n );\n const activeCell =\n focusableCells.find((date) =>\n view === 'date'\n ? sameDate(date, active)\n : startOfPeriod(date, cellMode).getTime() === startOfPeriod(active, cellMode).getTime(),\n ) ?? focusableCells[0];\n const samePeriod = (date: Date, candidate?: Date | null) =>\n Boolean(\n candidate &&\n startOfPeriod(date, cellMode).getTime() === startOfPeriod(candidate, cellMode).getTime(),\n );\n const choose = (date: Date) => {\n if (view === 'year' && picker !== 'year') {\n setVisible(date);\n setActive(date);\n setView(picker === 'quarter' ? 'quarter' : 'month');\n focusRequested.current = true;\n } else if (view === 'month' && picker !== 'month') {\n setVisible(date);\n setActive(date);\n setView('date');\n focusRequested.current = true;\n } else onChange(startOfPeriod(date, picker === 'datetime' ? 'date' : picker));\n };\n const move = (date: Date, event: KeyboardEvent<HTMLButtonElement>) => {\n const next = new Date(date);\n const delta =\n event.key === (direction === 'rtl' ? 'ArrowRight' : 'ArrowLeft')\n ? -1\n : event.key === (direction === 'rtl' ? 'ArrowLeft' : 'ArrowRight')\n ? 1\n : event.key === 'ArrowUp'\n ? view === 'date'\n ? -7\n : -3\n : event.key === 'ArrowDown'\n ? view === 'date'\n ? 7\n : 3\n : 0;\n if (delta) {\n if (view === 'date') next.setDate(next.getDate() + delta);\n else if (view === 'month') next.setMonth(next.getMonth() + delta);\n else if (view === 'quarter') next.setMonth(next.getMonth() + delta * 3);\n else next.setFullYear(next.getFullYear() + delta);\n } else if (event.key === 'Home' || event.key === 'End') {\n if (view === 'date')\n next.setDate(\n next.getDate() +\n (event.key === 'Home'\n ? -((next.getDay() - weekStartsOn + 7) % 7)\n : 6 - ((next.getDay() - weekStartsOn + 7) % 7)),\n );\n else\n next.setTime((event.key === 'Home' ? cells[0] : cells.at(-1))?.getTime() ?? next.getTime());\n } else if (event.key === 'PageUp' || event.key === 'PageDown') {\n const sign = event.key === 'PageUp' ? -1 : 1;\n if (view === 'date') {\n const month = shiftMonth(next, sign);\n next.setTime(\n new Date(\n month.getFullYear(),\n month.getMonth(),\n Math.min(\n next.getDate(),\n new Date(month.getFullYear(), month.getMonth() + 1, 0).getDate(),\n ),\n ).getTime(),\n );\n } else next.setFullYear(next.getFullYear() + sign * (view === 'year' ? 12 : 1));\n } else return;\n event.preventDefault();\n if (minDate && next < startOfPeriod(minDate, cellMode))\n next.setTime(startOfPeriod(minDate, cellMode).getTime());\n if (maxDate && next > startOfPeriod(maxDate, cellMode))\n next.setTime(startOfPeriod(maxDate, cellMode).getTime());\n if (selecting && disabledDate?.(next)) {\n const step = delta || (event.key === 'End' || event.key === 'PageDown' ? 1 : -1);\n let attempts = 0;\n while (disabledDate(next) && attempts < 366) {\n if (view === 'date') next.setDate(next.getDate() + step);\n else if (view === 'month') next.setMonth(next.getMonth() + step);\n else if (view === 'quarter') next.setMonth(next.getMonth() + step * 3);\n else next.setFullYear(next.getFullYear() + step);\n if (!withinPeriod(next, cellMode, minDate, maxDate)) return;\n attempts += 1;\n }\n if (disabledDate(next)) return;\n }\n setVisible(next);\n setActive(next);\n focusRequested.current = true;\n onHover?.(next);\n };\n const navigate = (direction: number) => {\n const next =\n view === 'date'\n ? shiftMonth(visible, direction)\n : new Date(\n visible.getFullYear() + direction * (view === 'year' ? 12 : 1),\n visible.getMonth(),\n 1,\n );\n const nextActive = new Date(next);\n if (view === 'date')\n nextActive.setDate(\n Math.min(active.getDate(), new Date(next.getFullYear(), next.getMonth() + 1, 0).getDate()),\n );\n setVisible(next);\n setActive(nextActive);\n };\n const periodNames = [range?.[0], range?.[1] ?? (range?.[0] ? hoverDate : null)] as const;\n const times = periodNames\n .filter((date): date is Date => Boolean(date))\n .map((date) => startOfPeriod(date, cellMode).getTime());\n const start = times.length === 2 ? Math.min(...times) : undefined;\n const end = times.length === 2 ? Math.max(...times) : undefined;\n return (\n <div\n ref={root}\n data-view={view}\n className={classes('leaf-calendar', range && 'leaf-calendar--range')}\n >\n <div className=\"leaf-date-picker__header\">\n <button\n type=\"button\"\n className=\"leaf-date-picker__nav\"\n aria-label={\n view === 'date'\n ? messages.calendar.previousMonth\n : view === 'month'\n ? messages.calendar.previousYear\n : messages.calendar.previousYears\n }\n onClick={() => navigate(-1)}\n >\n <ChevronLeft size={16} aria-hidden=\"true\" />\n </button>\n <div className=\"leaf-calendar__headings\" aria-live=\"polite\">\n {view === 'date' && (\n <button\n type=\"button\"\n className=\"leaf-calendar__heading\"\n aria-label={messages.calendar.month}\n onClick={() => setView('month')}\n >\n {new Intl.DateTimeFormat(locale, { month: 'short' }).format(visible)}\n </button>\n )}\n <button\n type=\"button\"\n className=\"leaf-calendar__heading\"\n aria-label={view === 'year' ? undefined : messages.calendar.year}\n disabled={view === 'year'}\n onClick={() => setView('year')}\n >\n {view === 'year' ? `${decade} – ${decade + 11}` : visible.getFullYear()}\n </button>\n </div>\n <button\n type=\"button\"\n className=\"leaf-date-picker__nav\"\n aria-label={\n view === 'date'\n ? messages.calendar.nextMonth\n : view === 'month'\n ? messages.calendar.nextYear\n : messages.calendar.nextYears\n }\n onClick={() => navigate(1)}\n >\n <ChevronRight size={16} aria-hidden=\"true\" />\n </button>\n {showToday && (\n <button\n type=\"button\"\n className=\"leaf-calendar__today\"\n onClick={() => {\n const today = new Date();\n setVisible(today);\n setActive(today);\n }}\n >\n {messages.calendar.today}\n </button>\n )}\n {headerExtra != null && <span className=\"leaf-calendar__extra\">{headerExtra}</span>}\n </div>\n {view === 'date' && (\n <div className=\"leaf-calendar__weekdays\">\n {Array.from(\n { length: 7 },\n (_, index) =>\n messages.calendar.weekdays[(index + weekStartsOn + 6) % 7] ?? String(index),\n ).map((day) => (\n <span key={day}>{day}</span>\n ))}\n </div>\n )}\n <fieldset\n ref={grid}\n className={classes(\n 'leaf-calendar__cells',\n view !== 'date' && 'leaf-calendar__cells--coarse',\n )}\n aria-label={\n view === 'date' ? formatMonthLabel(visible, locale) : String(visible.getFullYear())\n }\n >\n {cells.map((date) => {\n const outside = view === 'date' && date.getMonth() !== visible.getMonth();\n if (outside && !showOutsideDays)\n return <span key={dateKey(date)} className=\"leaf-calendar__cell\" />;\n const time = startOfPeriod(date, cellMode).getTime();\n const checked = range\n ? range.some((endpoint) => samePeriod(date, endpoint))\n : values\n ? values.some((value) => samePeriod(date, value))\n : samePeriod(date, value);\n const hovered = Boolean(range?.[0] && !range[1] && samePeriod(date, hoverDate));\n const isActive = Boolean(\n activeCell &&\n (view === 'date' ? sameDate(date, activeCell) : samePeriod(date, activeCell)),\n );\n const between = start !== undefined && end !== undefined && time >= start && time <= end;\n return (\n <span\n key={dateKey(date)}\n className={classes(\n 'leaf-calendar__cell',\n between && start !== end && 'leaf-calendar__cell--range',\n between && time === start && 'leaf-calendar__cell--start',\n between && time === end && 'leaf-calendar__cell--end',\n )}\n >\n <button\n type=\"button\"\n data-active={isActive}\n data-day={dateKey(date)}\n data-range-hover={hovered || undefined}\n tabIndex={isActive ? 0 : -1}\n aria-label={\n view === 'date'\n ? dateKey(date)\n : view === 'month'\n ? dateKey(date).slice(0, 7)\n : view === 'quarter'\n ? periodKey(date, 'quarter')\n : String(date.getFullYear())\n }\n aria-pressed={checked}\n aria-current={sameDate(date, new Date()) ? 'date' : undefined}\n disabled={\n !withinPeriod(date, cellMode, minDate, maxDate) ||\n Boolean(selecting && disabledDate?.(date))\n }\n className={classes(\n 'leaf-date-picker__day',\n outside && 'leaf-date-picker__day--outside',\n (checked || hovered) && 'leaf-date-picker__day--selected',\n )}\n onMouseEnter={() => {\n if (\n withinPeriod(date, cellMode, minDate, maxDate) &&\n !(selecting && disabledDate?.(date))\n )\n onHover?.(date);\n }}\n onClick={() => choose(date)}\n onKeyDown={(event) => move(date, event)}\n >\n <span className=\"leaf-calendar__cell-label\">\n {view === 'date'\n ? date.getDate()\n : view === 'month'\n ? new Intl.DateTimeFormat(locale, { month: 'short' }).format(date)\n : view === 'quarter'\n ? `Q${Math.floor(date.getMonth() / 3) + 1}`\n : date.getFullYear()}\n </span>\n {cellRender && selecting && (\n <span className=\"leaf-calendar__cell-content\">{cellRender(date)}</span>\n )}\n </button>\n </span>\n );\n })}\n </fieldset>\n </div>\n );\n}\n"],"names":["startOfPeriod","date","mode","next","Date","Math","dateTimeKey","showSeconds","dateKey","n","String","periodKey","monday","thursday","first","weeks","withinPeriod","min","max","time","Number","shiftCalendar","amount","shiftMonth","CalendarPanel","value","values","onChange","picker","minDate","maxDate","visibleDate","onVisibleChange","autoFocus","range","hoverDate","onHover","headerExtra","showOutsideDays","disabledDate","cellRender","showToday","locale","messages","weekStartsOn","direction","useLeafConfig","initial","view","setView","useState","useEffect","internalVisible","setInternalVisible","visible","active","setActive","root","useRef","grid","previousVisible","transitionDirection","period","useContentTransition","focusRequested","valueTime","controlledVisible","undefined","setVisible","decade","cells","Array","_","i","calendarDays","cellMode","selecting","focusableCells","activeCell","sameDate","samePeriod","candidate","Boolean","choose","move","event","delta","sign","month","step","attempts","navigate","nextActive","periodNames","times","start","end","classes","ChevronLeft","Intl","ChevronRight","today","index","day","formatMonthLabel","outside","checked","endpoint","hovered","isActive","between"],"mappings":"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"}
@@ -59,10 +59,10 @@ const date_input_DateInput = /*#__PURE__*/ forwardRef(function({ size = 'md', st
59
59
  displayValue
60
60
  ]);
61
61
  useEffect(()=>{
62
- input.current?.setCustomValidity(invalid ? messages.invalid : '');
62
+ input.current?.setCustomValidity(invalid ? messages.form.invalid : '');
63
63
  }, [
64
64
  invalid,
65
- messages.invalid
65
+ messages.form.invalid
66
66
  ]);
67
67
  useEffect(()=>{
68
68
  if (open && focusPanel) {
@@ -118,7 +118,7 @@ const date_input_DateInput = /*#__PURE__*/ forwardRef(function({ size = 'md', st
118
118
  disabled: disabled,
119
119
  readOnly: props.readOnly || inputReadOnly,
120
120
  value: dirty ? text : displayValue,
121
- placeholder: placeholder ?? messages.date,
121
+ placeholder: placeholder ?? messages.datePicker.placeholder,
122
122
  role: "combobox",
123
123
  "aria-haspopup": "dialog",
124
124
  "aria-expanded": open,
@@ -170,7 +170,7 @@ const date_input_DateInput = /*#__PURE__*/ forwardRef(function({ size = 'md', st
170
170
  }
171
171
  }),
172
172
  allowClear && (formValue || text) && !disabled && !props.readOnly && /*#__PURE__*/ jsx(ClearButton, {
173
- label: clearLabel ?? messages.clearDate,
173
+ label: clearLabel ?? messages.datePicker.clear,
174
174
  onClear: ()=>{
175
175
  onClear();
176
176
  setText('');
@@ -184,7 +184,7 @@ const date_input_DateInput = /*#__PURE__*/ forwardRef(function({ size = 'md', st
184
184
  className: "leaf-date-picker__icon",
185
185
  tabIndex: -1,
186
186
  disabled: disabled,
187
- "aria-label": panelLabel ?? messages.chooseDate,
187
+ "aria-label": panelLabel ?? messages.datePicker.label,
188
188
  onMouseDown: (event)=>event.preventDefault(),
189
189
  onClick: ()=>{
190
190
  if (open) close();
@@ -217,7 +217,7 @@ const date_input_DateInput = /*#__PURE__*/ forwardRef(function({ size = 'md', st
217
217
  render: popupRender,
218
218
  container: getPopupContainer,
219
219
  role: "dialog",
220
- "aria-label": panelLabel ?? messages.chooseDate,
220
+ "aria-label": panelLabel ?? messages.datePicker.label,
221
221
  children: renderPanel(finish)
222
222
  })
223
223
  ]
@@ -1 +1 @@
1
- {"version":3,"file":"shared/date-input.js","sources":["../../../../../src/shared/date-input.tsx"],"sourcesContent":["import { CalendarDays } from 'lucide-react';\nimport {\n forwardRef,\n type InputHTMLAttributes,\n type ReactNode,\n useEffect,\n useId,\n useRef,\n useState,\n} from 'react';\nimport { useLeafConfig } from '../config-provider/context';\nimport { useFormField } from '../form/form';\nimport { classes } from './classes';\nimport { ClearButton } from './clear-button';\nimport { FormValue, useMergedRef } from './field';\nimport { FloatingPanel, type PopupOptions, useFloatingDismiss } from './floating';\nimport type { ControlSize, ControlStatus } from './types';\n\nexport interface PickerFieldProps\n extends Omit<\n InputHTMLAttributes<HTMLInputElement>,\n 'type' | 'size' | 'value' | 'defaultValue' | 'onChange' | 'children'\n >,\n PopupOptions {\n size?: ControlSize;\n status?: ControlStatus;\n allowClear?: boolean;\n inputReadOnly?: boolean;\n open?: boolean;\n defaultOpen?: boolean;\n}\nexport interface DateInputProps extends PickerFieldProps {\n displayValue: string;\n formValue: string;\n open: boolean;\n onOpenChange: (open: boolean) => void;\n onOpening: () => void;\n onClear: () => void;\n onTextCommit: (text: string) => boolean;\n onTextChange?: (text: string) => void;\n commitOnBlur?: boolean;\n renderPanel: (close: () => void) => ReactNode;\n panelClassName?: string;\n clearLabel?: string;\n panelLabel?: string;\n icon?: ReactNode;\n}\n/** Editable text field with a custom calendar/time popup and canonical FormData value. */\nexport const DateInput = forwardRef<HTMLInputElement, DateInputProps>(function DateInput(\n {\n size = 'md',\n status: statusProp,\n placeholder,\n name,\n required: requiredProp,\n allowClear = true,\n inputReadOnly,\n defaultOpen: _defaultOpen,\n popupPlacement,\n popupClassName,\n popupStyle,\n popupRender,\n getPopupContainer,\n displayValue,\n formValue,\n open,\n onOpenChange,\n onOpening,\n onClear,\n onTextCommit,\n onTextChange,\n commitOnBlur = true,\n renderPanel,\n panelClassName,\n clearLabel,\n panelLabel,\n icon,\n className,\n style,\n disabled: disabledProp,\n id: idProp,\n onClick,\n onKeyDown,\n onBlur,\n form,\n ...props\n },\n forwardedRef,\n) {\n const field = useFormField();\n const { messages } = useLeafConfig();\n const disabled = disabledProp || field?.disabled;\n const required = requiredProp ?? field?.required;\n const input = useRef<HTMLInputElement>(null);\n const root = useRef<HTMLDivElement>(null);\n const panel = useRef<HTMLDivElement>(null);\n const panelId = `${useId()}-picker-panel`;\n const ref = useMergedRef(input, forwardedRef);\n const [text, setText] = useState(displayValue);\n const [dirty, setDirty] = useState(false);\n const [invalid, setInvalid] = useState(false);\n const [focusPanel, setFocusPanel] = useState(false);\n const status = statusProp ?? (invalid || field?.error ? 'error' : undefined);\n const restore = () => {\n setText(displayValue);\n setDirty(false);\n setInvalid(false);\n };\n const close = () => {\n onOpenChange(false);\n restore();\n };\n const finish = () => {\n onOpenChange(false);\n restore();\n input.current?.focus();\n };\n const opening = () => {\n if (!open && !disabled && !props.readOnly) {\n onOpening();\n onOpenChange(true);\n }\n };\n useFloatingDismiss(\n open,\n (reason) => {\n if (reason === 'escape' || !dirty || !commitOnBlur) close();\n else {\n const valid = onTextCommit(text.trim());\n setInvalid(!valid);\n if (valid) restore();\n onOpenChange(false);\n }\n },\n input,\n panel,\n root,\n );\n useEffect(() => {\n setText(displayValue);\n setDirty(false);\n setInvalid(false);\n }, [displayValue]);\n useEffect(() => {\n input.current?.setCustomValidity(invalid ? messages.invalid : '');\n }, [invalid, messages.invalid]);\n useEffect(() => {\n if (open && focusPanel) {\n (\n panel.current?.querySelector<HTMLElement>('[tabindex=\"0\"]:not(:disabled)') ??\n panel.current?.querySelector<HTMLElement>('button:not(:disabled)')\n )?.focus();\n setFocusPanel(false);\n }\n }, [open, focusPanel]);\n useEffect(() => {\n const owner = input.current?.form;\n const reset = (event: Event) =>\n queueMicrotask(() => {\n if (!event.defaultPrevented) {\n setText(displayValue);\n setDirty(false);\n setInvalid(false);\n onOpenChange(false);\n }\n });\n owner?.addEventListener('reset', reset);\n return () => owner?.removeEventListener('reset', reset);\n }, [displayValue, onOpenChange]);\n const commitText = (focus = true) => {\n const valid = onTextCommit(text.trim());\n setInvalid(!valid);\n if (valid) {\n restore();\n onOpenChange(false);\n if (focus) input.current?.focus();\n }\n return valid;\n };\n return (\n <div\n ref={root}\n className={classes('leaf-date-picker', `leaf-date-picker--${size}`, className)}\n style={style}\n data-status={status}\n data-disabled={disabled ? '' : undefined}\n data-open={open ? '' : undefined}\n data-clearable={\n allowClear && (formValue || text) && !disabled && !props.readOnly ? '' : undefined\n }\n >\n <input\n {...props}\n ref={ref}\n id={idProp ?? field?.id}\n type=\"text\"\n form={form}\n className=\"leaf-date-picker__input\"\n disabled={disabled}\n readOnly={props.readOnly || inputReadOnly}\n value={dirty ? text : displayValue}\n placeholder={placeholder ?? messages.date}\n role=\"combobox\"\n aria-haspopup=\"dialog\"\n aria-expanded={open}\n aria-controls={panelId}\n aria-required={required || undefined}\n aria-invalid={status === 'error' ? true : props['aria-invalid']}\n aria-describedby={\n [props['aria-describedby'], field?.descriptionId].filter(Boolean).join(' ') || undefined\n }\n onClick={(event) => {\n onClick?.(event);\n if (!event.defaultPrevented) opening();\n }}\n onChange={(event) => {\n opening();\n setText(event.target.value);\n setDirty(true);\n setInvalid(false);\n onTextChange?.(event.target.value);\n }}\n onBlur={(event) => {\n onBlur?.(event);\n if (\n event.defaultPrevented ||\n root.current?.contains(event.relatedTarget) ||\n panel.current?.contains(event.relatedTarget)\n )\n return;\n if (dirty) {\n if (commitOnBlur) commitText(false);\n else restore();\n }\n }}\n onInvalid={(event) => {\n props.onInvalid?.(event);\n event.preventDefault();\n input.current?.focus();\n }}\n onKeyDown={(event) => {\n onKeyDown?.(event);\n if (event.defaultPrevented || event.nativeEvent.isComposing) return;\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n opening();\n setFocusPanel(true);\n } else if (event.key === 'Enter') {\n event.preventDefault();\n if (dirty) commitText();\n else opening();\n } else if (event.key === 'Escape') {\n event.preventDefault();\n event.stopPropagation();\n close();\n }\n }}\n />\n {allowClear && (formValue || text) && !disabled && !props.readOnly && (\n <ClearButton\n label={clearLabel ?? messages.clearDate}\n onClear={() => {\n onClear();\n setText('');\n setDirty(false);\n setInvalid(false);\n finish();\n }}\n />\n )}\n <button\n type=\"button\"\n className=\"leaf-date-picker__icon\"\n tabIndex={-1}\n disabled={disabled}\n aria-label={panelLabel ?? messages.chooseDate}\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => {\n if (open) close();\n else {\n opening();\n setFocusPanel(true);\n }\n }}\n >\n {icon ?? <CalendarDays size={16} aria-hidden=\"true\" />}\n </button>\n <FormValue\n name={name}\n form={form}\n value={formValue}\n disabled={disabled}\n required={required}\n triggerRef={input}\n />\n <FloatingPanel\n open={open}\n triggerRef={root}\n panelRef={panel}\n id={panelId}\n className={classes('leaf-floating', panelClassName, popupClassName)}\n placement={popupPlacement}\n style={popupStyle}\n render={popupRender}\n container={getPopupContainer}\n role=\"dialog\"\n aria-label={panelLabel ?? messages.chooseDate}\n >\n {renderPanel(finish)}\n </FloatingPanel>\n </div>\n );\n});\n"],"names":["DateInput","forwardRef","size","statusProp","placeholder","name","requiredProp","allowClear","inputReadOnly","_defaultOpen","popupPlacement","popupClassName","popupStyle","popupRender","getPopupContainer","displayValue","formValue","open","onOpenChange","onOpening","onClear","onTextCommit","onTextChange","commitOnBlur","renderPanel","panelClassName","clearLabel","panelLabel","icon","className","style","disabledProp","idProp","onClick","onKeyDown","onBlur","form","props","forwardedRef","field","useFormField","messages","useLeafConfig","disabled","required","input","useRef","root","panel","panelId","useId","ref","useMergedRef","text","setText","useState","dirty","setDirty","invalid","setInvalid","focusPanel","setFocusPanel","status","undefined","restore","close","finish","opening","useFloatingDismiss","reason","valid","useEffect","owner","reset","event","queueMicrotask","commitText","focus","classes","Boolean","ClearButton","CalendarDays","FormValue","FloatingPanel"],"mappings":"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"}
1
+ {"version":3,"file":"shared/date-input.js","sources":["../../../../../src/shared/date-input.tsx"],"sourcesContent":["import { CalendarDays } from 'lucide-react';\nimport {\n forwardRef,\n type InputHTMLAttributes,\n type ReactNode,\n useEffect,\n useId,\n useRef,\n useState,\n} from 'react';\nimport { useLeafConfig } from '../config-provider/context';\nimport { useFormField } from '../form/form';\nimport { classes } from './classes';\nimport { ClearButton } from './clear-button';\nimport { FormValue, useMergedRef } from './field';\nimport { FloatingPanel, type PopupOptions, useFloatingDismiss } from './floating';\nimport type { ControlSize, ControlStatus } from './types';\n\nexport interface PickerFieldProps\n extends Omit<\n InputHTMLAttributes<HTMLInputElement>,\n 'type' | 'size' | 'value' | 'defaultValue' | 'onChange' | 'children'\n >,\n PopupOptions {\n size?: ControlSize;\n status?: ControlStatus;\n allowClear?: boolean;\n inputReadOnly?: boolean;\n open?: boolean;\n defaultOpen?: boolean;\n}\nexport interface DateInputProps extends PickerFieldProps {\n displayValue: string;\n formValue: string;\n open: boolean;\n onOpenChange: (open: boolean) => void;\n onOpening: () => void;\n onClear: () => void;\n onTextCommit: (text: string) => boolean;\n onTextChange?: (text: string) => void;\n commitOnBlur?: boolean;\n renderPanel: (close: () => void) => ReactNode;\n panelClassName?: string;\n clearLabel?: string;\n panelLabel?: string;\n icon?: ReactNode;\n}\n/** Editable text field with a custom calendar/time popup and canonical FormData value. */\nexport const DateInput = forwardRef<HTMLInputElement, DateInputProps>(function DateInput(\n {\n size = 'md',\n status: statusProp,\n placeholder,\n name,\n required: requiredProp,\n allowClear = true,\n inputReadOnly,\n defaultOpen: _defaultOpen,\n popupPlacement,\n popupClassName,\n popupStyle,\n popupRender,\n getPopupContainer,\n displayValue,\n formValue,\n open,\n onOpenChange,\n onOpening,\n onClear,\n onTextCommit,\n onTextChange,\n commitOnBlur = true,\n renderPanel,\n panelClassName,\n clearLabel,\n panelLabel,\n icon,\n className,\n style,\n disabled: disabledProp,\n id: idProp,\n onClick,\n onKeyDown,\n onBlur,\n form,\n ...props\n },\n forwardedRef,\n) {\n const field = useFormField();\n const { messages } = useLeafConfig();\n const disabled = disabledProp || field?.disabled;\n const required = requiredProp ?? field?.required;\n const input = useRef<HTMLInputElement>(null);\n const root = useRef<HTMLDivElement>(null);\n const panel = useRef<HTMLDivElement>(null);\n const panelId = `${useId()}-picker-panel`;\n const ref = useMergedRef(input, forwardedRef);\n const [text, setText] = useState(displayValue);\n const [dirty, setDirty] = useState(false);\n const [invalid, setInvalid] = useState(false);\n const [focusPanel, setFocusPanel] = useState(false);\n const status = statusProp ?? (invalid || field?.error ? 'error' : undefined);\n const restore = () => {\n setText(displayValue);\n setDirty(false);\n setInvalid(false);\n };\n const close = () => {\n onOpenChange(false);\n restore();\n };\n const finish = () => {\n onOpenChange(false);\n restore();\n input.current?.focus();\n };\n const opening = () => {\n if (!open && !disabled && !props.readOnly) {\n onOpening();\n onOpenChange(true);\n }\n };\n useFloatingDismiss(\n open,\n (reason) => {\n if (reason === 'escape' || !dirty || !commitOnBlur) close();\n else {\n const valid = onTextCommit(text.trim());\n setInvalid(!valid);\n if (valid) restore();\n onOpenChange(false);\n }\n },\n input,\n panel,\n root,\n );\n useEffect(() => {\n setText(displayValue);\n setDirty(false);\n setInvalid(false);\n }, [displayValue]);\n useEffect(() => {\n input.current?.setCustomValidity(invalid ? messages.form.invalid : '');\n }, [invalid, messages.form.invalid]);\n useEffect(() => {\n if (open && focusPanel) {\n (\n panel.current?.querySelector<HTMLElement>('[tabindex=\"0\"]:not(:disabled)') ??\n panel.current?.querySelector<HTMLElement>('button:not(:disabled)')\n )?.focus();\n setFocusPanel(false);\n }\n }, [open, focusPanel]);\n useEffect(() => {\n const owner = input.current?.form;\n const reset = (event: Event) =>\n queueMicrotask(() => {\n if (!event.defaultPrevented) {\n setText(displayValue);\n setDirty(false);\n setInvalid(false);\n onOpenChange(false);\n }\n });\n owner?.addEventListener('reset', reset);\n return () => owner?.removeEventListener('reset', reset);\n }, [displayValue, onOpenChange]);\n const commitText = (focus = true) => {\n const valid = onTextCommit(text.trim());\n setInvalid(!valid);\n if (valid) {\n restore();\n onOpenChange(false);\n if (focus) input.current?.focus();\n }\n return valid;\n };\n return (\n <div\n ref={root}\n className={classes('leaf-date-picker', `leaf-date-picker--${size}`, className)}\n style={style}\n data-status={status}\n data-disabled={disabled ? '' : undefined}\n data-open={open ? '' : undefined}\n data-clearable={\n allowClear && (formValue || text) && !disabled && !props.readOnly ? '' : undefined\n }\n >\n <input\n {...props}\n ref={ref}\n id={idProp ?? field?.id}\n type=\"text\"\n form={form}\n className=\"leaf-date-picker__input\"\n disabled={disabled}\n readOnly={props.readOnly || inputReadOnly}\n value={dirty ? text : displayValue}\n placeholder={placeholder ?? messages.datePicker.placeholder}\n role=\"combobox\"\n aria-haspopup=\"dialog\"\n aria-expanded={open}\n aria-controls={panelId}\n aria-required={required || undefined}\n aria-invalid={status === 'error' ? true : props['aria-invalid']}\n aria-describedby={\n [props['aria-describedby'], field?.descriptionId].filter(Boolean).join(' ') || undefined\n }\n onClick={(event) => {\n onClick?.(event);\n if (!event.defaultPrevented) opening();\n }}\n onChange={(event) => {\n opening();\n setText(event.target.value);\n setDirty(true);\n setInvalid(false);\n onTextChange?.(event.target.value);\n }}\n onBlur={(event) => {\n onBlur?.(event);\n if (\n event.defaultPrevented ||\n root.current?.contains(event.relatedTarget) ||\n panel.current?.contains(event.relatedTarget)\n )\n return;\n if (dirty) {\n if (commitOnBlur) commitText(false);\n else restore();\n }\n }}\n onInvalid={(event) => {\n props.onInvalid?.(event);\n event.preventDefault();\n input.current?.focus();\n }}\n onKeyDown={(event) => {\n onKeyDown?.(event);\n if (event.defaultPrevented || event.nativeEvent.isComposing) return;\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n opening();\n setFocusPanel(true);\n } else if (event.key === 'Enter') {\n event.preventDefault();\n if (dirty) commitText();\n else opening();\n } else if (event.key === 'Escape') {\n event.preventDefault();\n event.stopPropagation();\n close();\n }\n }}\n />\n {allowClear && (formValue || text) && !disabled && !props.readOnly && (\n <ClearButton\n label={clearLabel ?? messages.datePicker.clear}\n onClear={() => {\n onClear();\n setText('');\n setDirty(false);\n setInvalid(false);\n finish();\n }}\n />\n )}\n <button\n type=\"button\"\n className=\"leaf-date-picker__icon\"\n tabIndex={-1}\n disabled={disabled}\n aria-label={panelLabel ?? messages.datePicker.label}\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => {\n if (open) close();\n else {\n opening();\n setFocusPanel(true);\n }\n }}\n >\n {icon ?? <CalendarDays size={16} aria-hidden=\"true\" />}\n </button>\n <FormValue\n name={name}\n form={form}\n value={formValue}\n disabled={disabled}\n required={required}\n triggerRef={input}\n />\n <FloatingPanel\n open={open}\n triggerRef={root}\n panelRef={panel}\n id={panelId}\n className={classes('leaf-floating', panelClassName, popupClassName)}\n placement={popupPlacement}\n style={popupStyle}\n render={popupRender}\n container={getPopupContainer}\n role=\"dialog\"\n aria-label={panelLabel ?? messages.datePicker.label}\n >\n {renderPanel(finish)}\n </FloatingPanel>\n </div>\n );\n});\n"],"names":["DateInput","forwardRef","size","statusProp","placeholder","name","requiredProp","allowClear","inputReadOnly","_defaultOpen","popupPlacement","popupClassName","popupStyle","popupRender","getPopupContainer","displayValue","formValue","open","onOpenChange","onOpening","onClear","onTextCommit","onTextChange","commitOnBlur","renderPanel","panelClassName","clearLabel","panelLabel","icon","className","style","disabledProp","idProp","onClick","onKeyDown","onBlur","form","props","forwardedRef","field","useFormField","messages","useLeafConfig","disabled","required","input","useRef","root","panel","panelId","useId","ref","useMergedRef","text","setText","useState","dirty","setDirty","invalid","setInvalid","focusPanel","setFocusPanel","status","undefined","restore","close","finish","opening","useFloatingDismiss","reason","valid","useEffect","owner","reset","event","queueMicrotask","commitText","focus","classes","Boolean","ClearButton","CalendarDays","FormValue","FloatingPanel"],"mappings":";;;;;;;;;;AAgDO,MAAMA,uBAAY,WAAHA,GAAGC,WAA6C,SACpE,EACEC,OAAO,IAAI,EACX,QAAQC,UAAU,EAClBC,WAAW,EACXC,IAAI,EACJ,UAAUC,YAAY,EACtBC,aAAa,IAAI,EACjBC,aAAa,EACb,aAAaC,YAAY,EACzBC,cAAc,EACdC,cAAc,EACdC,UAAU,EACVC,WAAW,EACXC,iBAAiB,EACjBC,YAAY,EACZC,SAAS,EACTC,IAAI,EACJC,YAAY,EACZC,SAAS,EACTC,OAAO,EACPC,YAAY,EACZC,YAAY,EACZC,eAAe,IAAI,EACnBC,WAAW,EACXC,cAAc,EACdC,UAAU,EACVC,UAAU,EACVC,IAAI,EACJC,SAAS,EACTC,KAAK,EACL,UAAUC,YAAY,EACtB,IAAIC,MAAM,EACVC,OAAO,EACPC,SAAS,EACTC,MAAM,EACNC,IAAI,EACJ,GAAGC,OACJ,EACDC,YAAY;IAEZ,MAAMC,QAAQC;IACd,MAAM,EAAEC,QAAQ,EAAE,GAAGC;IACrB,MAAMC,WAAWZ,gBAAgBQ,OAAO;IACxC,MAAMK,WAAWtC,gBAAgBiC,OAAO;IACxC,MAAMM,QAAQC,OAAyB;IACvC,MAAMC,OAAOD,OAAuB;IACpC,MAAME,QAAQF,OAAuB;IACrC,MAAMG,UAAU,GAAGC,QAAQ,aAAa,CAAC;IACzC,MAAMC,MAAMC,aAAaP,OAAOP;IAChC,MAAM,CAACe,MAAMC,QAAQ,GAAGC,SAASxC;IACjC,MAAM,CAACyC,OAAOC,SAAS,GAAGF,SAAS;IACnC,MAAM,CAACG,SAASC,WAAW,GAAGJ,SAAS;IACvC,MAAM,CAACK,YAAYC,cAAc,GAAGN,SAAS;IAC7C,MAAMO,SAAS3D,cAAeuD,CAAAA,WAAWnB,OAAO,QAAQ,UAAUwB,MAAQ;IAC1E,MAAMC,UAAU;QACdV,QAAQvC;QACR0C,SAAS;QACTE,WAAW;IACb;IACA,MAAMM,QAAQ;QACZ/C,aAAa;QACb8C;IACF;IACA,MAAME,SAAS;QACbhD,aAAa;QACb8C;QACAnB,MAAM,OAAO,EAAE;IACjB;IACA,MAAMsB,UAAU;QACd,IAAI,CAAClD,QAAQ,CAAC0B,YAAY,CAACN,MAAM,QAAQ,EAAE;YACzClB;YACAD,aAAa;QACf;IACF;IACAkD,mBACEnD,MACA,CAACoD;QACC,IAAIA,AAAW,aAAXA,UAAwBb,SAAUjC,cACjC;YACH,MAAM+C,QAAQjD,aAAagC,KAAK,IAAI;YACpCM,WAAW,CAACW;YACZ,IAAIA,OAAON;YACX9C,aAAa;QACf,OANoD+C;IAOtD,GACApB,OACAG,OACAD;IAEFwB,UAAU;QACRjB,QAAQvC;QACR0C,SAAS;QACTE,WAAW;IACb,GAAG;QAAC5C;KAAa;IACjBwD,UAAU;QACR1B,MAAM,OAAO,EAAE,kBAAkBa,UAAUjB,SAAS,IAAI,CAAC,OAAO,GAAG;IACrE,GAAG;QAACiB;QAASjB,SAAS,IAAI,CAAC,OAAO;KAAC;IACnC8B,UAAU;QACR,IAAItD,QAAQ2C,YAAY;YAEpBZ,CAAAA,MAAM,OAAO,EAAE,cAA2B,oCAC1CA,MAAM,OAAO,EAAE,cAA2B,wBAAuB,GAChE;YACHa,cAAc;QAChB;IACF,GAAG;QAAC5C;QAAM2C;KAAW;IACrBW,UAAU;QACR,MAAMC,QAAQ3B,MAAM,OAAO,EAAE;QAC7B,MAAM4B,QAAQ,CAACC,QACbC,eAAe;gBACb,IAAI,CAACD,MAAM,gBAAgB,EAAE;oBAC3BpB,QAAQvC;oBACR0C,SAAS;oBACTE,WAAW;oBACXzC,aAAa;gBACf;YACF;QACFsD,OAAO,iBAAiB,SAASC;QACjC,OAAO,IAAMD,OAAO,oBAAoB,SAASC;IACnD,GAAG;QAAC1D;QAAcG;KAAa;IAC/B,MAAM0D,aAAa,CAACC,QAAQ,IAAI;QAC9B,MAAMP,QAAQjD,aAAagC,KAAK,IAAI;QACpCM,WAAW,CAACW;QACZ,IAAIA,OAAO;YACTN;YACA9C,aAAa;YACb,IAAI2D,OAAOhC,MAAM,OAAO,EAAE;QAC5B;QACA,OAAOyB;IACT;IACA,OAAO,WAAP,GACE,KAAC;QACC,KAAKvB;QACL,WAAW+B,QAAQ,oBAAoB,CAAC,kBAAkB,EAAE5E,MAAM,EAAE2B;QACpE,OAAOC;QACP,eAAagC;QACb,iBAAenB,WAAW,KAAKoB;QAC/B,aAAW9C,OAAO,KAAK8C;QACvB,kBACExD,cAAeS,CAAAA,aAAaqC,IAAG,KAAM,CAACV,YAAY,CAACN,MAAM,QAAQ,GAAG,KAAK0B;;0BAG3E,IAAC;gBACE,GAAG1B,KAAK;gBACT,KAAKc;gBACL,IAAInB,UAAUO,OAAO;gBACrB,MAAK;gBACL,MAAMH;gBACN,WAAU;gBACV,UAAUO;gBACV,UAAUN,MAAM,QAAQ,IAAI7B;gBAC5B,OAAOgD,QAAQH,OAAOtC;gBACtB,aAAaX,eAAeqC,SAAS,UAAU,CAAC,WAAW;gBAC3D,MAAK;gBACL,iBAAc;gBACd,iBAAexB;gBACf,iBAAegC;gBACf,iBAAeL,YAAYmB;gBAC3B,gBAAcD,AAAW,YAAXA,SAAqB,OAAOzB,KAAK,CAAC,eAAe;gBAC/D,oBACE;oBAACA,KAAK,CAAC,mBAAmB;oBAAEE,OAAO;iBAAc,CAAC,MAAM,CAACwC,SAAS,IAAI,CAAC,QAAQhB;gBAEjF,SAAS,CAACW;oBACRzC,UAAUyC;oBACV,IAAI,CAACA,MAAM,gBAAgB,EAAEP;gBAC/B;gBACA,UAAU,CAACO;oBACTP;oBACAb,QAAQoB,MAAM,MAAM,CAAC,KAAK;oBAC1BjB,SAAS;oBACTE,WAAW;oBACXrC,eAAeoD,MAAM,MAAM,CAAC,KAAK;gBACnC;gBACA,QAAQ,CAACA;oBACPvC,SAASuC;oBACT,IACEA,MAAM,gBAAgB,IACtB3B,KAAK,OAAO,EAAE,SAAS2B,MAAM,aAAa,KAC1C1B,MAAM,OAAO,EAAE,SAAS0B,MAAM,aAAa,GAE3C;oBACF,IAAIlB,OACF,IAAIjC,cAAcqD,WAAW;yBACxBZ;gBAET;gBACA,WAAW,CAACU;oBACVrC,MAAM,SAAS,GAAGqC;oBAClBA,MAAM,cAAc;oBACpB7B,MAAM,OAAO,EAAE;gBACjB;gBACA,WAAW,CAAC6B;oBACVxC,YAAYwC;oBACZ,IAAIA,MAAM,gBAAgB,IAAIA,MAAM,WAAW,CAAC,WAAW,EAAE;oBAC7D,IAAIA,AAAc,gBAAdA,MAAM,GAAG,EAAkB;wBAC7BA,MAAM,cAAc;wBACpBP;wBACAN,cAAc;oBAChB,OAAO,IAAIa,AAAc,YAAdA,MAAM,GAAG,EAAc;wBAChCA,MAAM,cAAc;wBACpB,IAAIlB,OAAOoB;6BACNT;oBACP,OAAO,IAAIO,AAAc,aAAdA,MAAM,GAAG,EAAe;wBACjCA,MAAM,cAAc;wBACpBA,MAAM,eAAe;wBACrBT;oBACF;gBACF;;YAED1D,cAAeS,CAAAA,aAAaqC,IAAG,KAAM,CAACV,YAAY,CAACN,MAAM,QAAQ,IAAI,WAAJ,GAChE,IAAC2C,aAAWA;gBACV,OAAOtD,cAAce,SAAS,UAAU,CAAC,KAAK;gBAC9C,SAAS;oBACPrB;oBACAkC,QAAQ;oBACRG,SAAS;oBACTE,WAAW;oBACXO;gBACF;;0BAGJ,IAAC;gBACC,MAAK;gBACL,WAAU;gBACV,UAAU;gBACV,UAAUvB;gBACV,cAAYhB,cAAcc,SAAS,UAAU,CAAC,KAAK;gBACnD,aAAa,CAACiC,QAAUA,MAAM,cAAc;gBAC5C,SAAS;oBACP,IAAIzD,MAAMgD;yBACL;wBACHE;wBACAN,cAAc;oBAChB;gBACF;0BAECjC,QAAQ,WAARA,GAAQ,IAACqD,cAAYA;oBAAC,MAAM;oBAAI,eAAY;;;0BAE/C,IAACC,WAASA;gBACR,MAAM7E;gBACN,MAAM+B;gBACN,OAAOpB;gBACP,UAAU2B;gBACV,UAAUC;gBACV,YAAYC;;0BAEd,IAACsC,eAAaA;gBACZ,MAAMlE;gBACN,YAAY8B;gBACZ,UAAUC;gBACV,IAAIC;gBACJ,WAAW6B,QAAQ,iBAAiBrD,gBAAgBd;gBACpD,WAAWD;gBACX,OAAOE;gBACP,QAAQC;gBACR,WAAWC;gBACX,MAAK;gBACL,cAAYa,cAAcc,SAAS,UAAU,CAAC,KAAK;0BAElDjB,YAAY0C;;;;AAIrB"}
@@ -0,0 +1,24 @@
1
+ "use client";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import { Inbox, LoaderCircle } from "lucide-react";
4
+ function FloatingFeedback({ loading = false, children }) {
5
+ const Icon = loading ? LoaderCircle : Inbox;
6
+ return /*#__PURE__*/ jsxs("div", {
7
+ className: "leaf-floating__empty leaf-floating__empty--feedback",
8
+ role: "status",
9
+ children: [
10
+ /*#__PURE__*/ jsx(Icon, {
11
+ size: 24,
12
+ strokeWidth: 1.5,
13
+ "aria-hidden": "true",
14
+ className: loading ? 'leaf-floating__loading-icon' : void 0
15
+ }),
16
+ /*#__PURE__*/ jsx("div", {
17
+ children: children
18
+ })
19
+ ]
20
+ });
21
+ }
22
+ export { FloatingFeedback };
23
+
24
+ //# sourceMappingURL=floating-feedback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared/floating-feedback.js","sources":["../../../../../src/shared/floating-feedback.tsx"],"sourcesContent":["import { Inbox, LoaderCircle } from 'lucide-react';\nimport type { ReactNode } from 'react';\n\n/** Shared loading and empty presentation for suggestion and selection panels. */\nexport function FloatingFeedback({\n loading = false,\n children,\n}: {\n loading?: boolean;\n children: ReactNode;\n}) {\n const Icon = loading ? LoaderCircle : Inbox;\n return (\n <div className=\"leaf-floating__empty leaf-floating__empty--feedback\" role=\"status\">\n <Icon\n size={24}\n strokeWidth={1.5}\n aria-hidden=\"true\"\n className={loading ? 'leaf-floating__loading-icon' : undefined}\n />\n <div>{children}</div>\n </div>\n );\n}\n"],"names":["FloatingFeedback","loading","children","Icon","LoaderCircle","Inbox","undefined"],"mappings":";;;AAIO,SAASA,iBAAiB,EAC/BC,UAAU,KAAK,EACfC,QAAQ,EAIT;IACC,MAAMC,OAAOF,UAAUG,eAAeC;IACtC,OAAO,WAAP,GACE,KAAC;QAAI,WAAU;QAAsD,MAAK;;0BACxE,IAACF,MAAAA;gBACC,MAAM;gBACN,aAAa;gBACb,eAAY;gBACZ,WAAWF,UAAU,gCAAgCK;;0BAEvD,IAAC;0BAAKJ;;;;AAGZ"}