@hina-ui/vue 1.7.5 → 1.7.7

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 (1186) hide show
  1. package/README.md +37 -0
  2. package/dist/index.js +8844 -1084
  3. package/dist/index.js.map +1 -1
  4. package/dist/shared/behavior/anchor-follow.ts +95 -0
  5. package/dist/shared/behavior/form.ts +187 -0
  6. package/dist/shared/behavior/ripple.ts +222 -0
  7. package/dist/shared/behavior/spoiler/painter.ts +197 -0
  8. package/dist/shared/behavior/spoiler/worklet.ts +199 -0
  9. package/dist/shared/behavior/toast.ts +243 -0
  10. package/dist/shared/lib/anchor.ts +83 -0
  11. package/dist/shared/lib/banner.ts +10 -0
  12. package/dist/shared/lib/calendar/format.ts +23 -0
  13. package/dist/shared/lib/caret.ts +48 -0
  14. package/dist/shared/lib/collapse.ts +29 -0
  15. package/dist/shared/lib/command-palette/hotkey.ts +27 -0
  16. package/dist/shared/lib/command-palette/match.ts +92 -0
  17. package/dist/shared/lib/data-list.ts +40 -0
  18. package/dist/shared/lib/data-table/column-sizing-styles.ts +41 -0
  19. package/dist/shared/lib/data-table/column-sizing.ts +101 -0
  20. package/dist/shared/lib/data-table/csv.ts +51 -0
  21. package/dist/shared/lib/data-table/layout.ts +199 -0
  22. package/dist/shared/lib/data-table/resize.ts +66 -0
  23. package/dist/shared/lib/data-table/state.ts +226 -0
  24. package/dist/shared/lib/data-table/utils.ts +80 -0
  25. package/dist/shared/lib/date-range-field/validity.ts +21 -0
  26. package/dist/shared/lib/date.ts +111 -0
  27. package/dist/shared/lib/field-focus.ts +36 -0
  28. package/dist/shared/lib/file-upload/select.ts +58 -0
  29. package/dist/shared/lib/file-upload/size.ts +16 -0
  30. package/dist/shared/lib/float-button.ts +14 -0
  31. package/dist/shared/lib/form/errors.ts +48 -0
  32. package/dist/shared/lib/form/focus.ts +10 -0
  33. package/dist/shared/lib/form/standard-schema.ts +26 -0
  34. package/dist/shared/lib/form/values.ts +23 -0
  35. package/dist/shared/lib/highlighter.ts +98 -0
  36. package/dist/shared/lib/iris-origin.ts +40 -0
  37. package/dist/shared/lib/lightbox/clip.ts +117 -0
  38. package/dist/shared/lib/lightbox/download.ts +29 -0
  39. package/dist/shared/lib/lightbox/gesture.ts +54 -0
  40. package/dist/shared/lib/lightbox/paging.ts +33 -0
  41. package/dist/shared/lib/lightbox/pose.ts +142 -0
  42. package/dist/shared/lib/lightbox/source.ts +17 -0
  43. package/dist/shared/lib/lightbox/types.ts +14 -0
  44. package/dist/shared/lib/lightbox/zoom.ts +127 -0
  45. package/dist/shared/lib/meter-group.ts +16 -0
  46. package/dist/shared/lib/overlay-anchor.ts +42 -0
  47. package/dist/shared/lib/pagination.ts +16 -0
  48. package/dist/shared/lib/pointer-corridor.ts +26 -0
  49. package/dist/shared/lib/qr-code-export.ts +68 -0
  50. package/dist/shared/lib/range-calendar/limit.ts +11 -0
  51. package/dist/shared/lib/rating.ts +4 -0
  52. package/dist/shared/lib/relative-time.ts +20 -0
  53. package/dist/shared/lib/scroll-area.ts +77 -0
  54. package/dist/shared/lib/scroll-restore.ts +148 -0
  55. package/dist/shared/lib/toast-layout.ts +42 -0
  56. package/dist/shared/lib/tree/selection.ts +131 -0
  57. package/dist/shared/lib/tree-select/filter.ts +19 -0
  58. package/dist/shared/lib/virtual/choices.ts +193 -0
  59. package/dist/shared/lib/virtual/collection.ts +71 -0
  60. package/dist/shared/lib/virtual/filter.ts +26 -0
  61. package/dist/shared/lib/virtual/flow.ts +32 -0
  62. package/dist/shared/lib/virtual/list.ts +63 -0
  63. package/dist/shared/lib/virtual/navigation.ts +26 -0
  64. package/dist/shared/lib/virtual/tree.ts +98 -0
  65. package/dist/shared/locale/en-US.ts +220 -0
  66. package/dist/shared/locale/index.ts +52 -0
  67. package/dist/shared/locale/types.ts +225 -0
  68. package/dist/shared/locale/zh-CN.ts +215 -0
  69. package/dist/shared/primitives/accordion/LICENSE +21 -0
  70. package/dist/shared/primitives/accordion/index.ts +34 -0
  71. package/dist/shared/primitives/arrow-navigation/LICENSE +21 -0
  72. package/dist/shared/primitives/arrow-navigation/index.ts +90 -0
  73. package/dist/shared/primitives/body-scroll-lock/LICENSE +21 -0
  74. package/dist/shared/primitives/body-scroll-lock/index.ts +115 -0
  75. package/dist/shared/primitives/checkbox/LICENSE +21 -0
  76. package/dist/shared/primitives/checkbox/index.ts +23 -0
  77. package/dist/shared/primitives/collapsible/LICENSE +21 -0
  78. package/dist/shared/primitives/collapsible/index.ts +31 -0
  79. package/dist/shared/primitives/collection/LICENSE +21 -0
  80. package/dist/shared/primitives/collection/index.ts +19 -0
  81. package/dist/shared/primitives/dismissable-layer/LICENSE +21 -0
  82. package/dist/shared/primitives/dismissable-layer/index.ts +203 -0
  83. package/dist/shared/primitives/focus-guards/LICENSE +21 -0
  84. package/dist/shared/primitives/focus-guards/index.ts +24 -0
  85. package/dist/shared/primitives/focus-scope/LICENSE +21 -0
  86. package/dist/shared/primitives/focus-scope/index.ts +216 -0
  87. package/dist/shared/primitives/label/LICENSE +21 -0
  88. package/dist/shared/primitives/label/index.ts +4 -0
  89. package/dist/shared/primitives/number-field/LICENSE +21 -0
  90. package/dist/shared/primitives/number-field/index.ts +407 -0
  91. package/dist/shared/primitives/pagination/LICENSE +21 -0
  92. package/dist/shared/primitives/pagination/index.ts +99 -0
  93. package/dist/shared/primitives/pin-input/LICENSE +21 -0
  94. package/dist/shared/primitives/pin-input/index.ts +126 -0
  95. package/dist/shared/primitives/presence/LICENSE +21 -0
  96. package/dist/shared/primitives/presence/index.ts +135 -0
  97. package/dist/shared/primitives/progress/LICENSE +21 -0
  98. package/dist/shared/primitives/progress/index.ts +41 -0
  99. package/dist/shared/primitives/radio-group/LICENSE +21 -0
  100. package/dist/shared/primitives/radio-group/index.ts +46 -0
  101. package/dist/shared/primitives/rating/LICENSE +21 -0
  102. package/dist/shared/primitives/rating/index.ts +37 -0
  103. package/dist/shared/primitives/roving-focus/LICENSE +21 -0
  104. package/dist/shared/primitives/roving-focus/index.ts +44 -0
  105. package/dist/shared/primitives/separator/LICENSE +21 -0
  106. package/dist/shared/primitives/separator/index.ts +14 -0
  107. package/dist/shared/primitives/size/LICENSE +21 -0
  108. package/dist/shared/primitives/size/index.ts +19 -0
  109. package/dist/shared/primitives/slider/LICENSE +21 -0
  110. package/dist/shared/primitives/slider/index.ts +183 -0
  111. package/dist/shared/primitives/splitter/LICENSE +21 -0
  112. package/dist/shared/primitives/splitter/arrays.ts +6 -0
  113. package/dist/shared/primitives/splitter/assert.ts +9 -0
  114. package/dist/shared/primitives/splitter/calculate.ts +139 -0
  115. package/dist/shared/primitives/splitter/callPanelCallbacks.ts +40 -0
  116. package/dist/shared/primitives/splitter/compare.ts +13 -0
  117. package/dist/shared/primitives/splitter/constants.ts +1 -0
  118. package/dist/shared/primitives/splitter/debounce.ts +10 -0
  119. package/dist/shared/primitives/splitter/dom.ts +64 -0
  120. package/dist/shared/primitives/splitter/events.ts +29 -0
  121. package/dist/shared/primitives/splitter/flags.ts +4 -0
  122. package/dist/shared/primitives/splitter/layout.ts +153 -0
  123. package/dist/shared/primitives/splitter/pivot.ts +10 -0
  124. package/dist/shared/primitives/splitter/rects.ts +24 -0
  125. package/dist/shared/primitives/splitter/registry.ts +231 -0
  126. package/dist/shared/primitives/splitter/resizePanel.ts +30 -0
  127. package/dist/shared/primitives/splitter/stackingOrder.ts +88 -0
  128. package/dist/shared/primitives/splitter/storage.ts +95 -0
  129. package/dist/shared/primitives/splitter/style.ts +95 -0
  130. package/dist/shared/primitives/splitter/types.ts +48 -0
  131. package/dist/shared/primitives/splitter/units.ts +123 -0
  132. package/dist/shared/primitives/splitter/validation.ts +55 -0
  133. package/dist/shared/primitives/stepper/LICENSE +21 -0
  134. package/dist/shared/primitives/stepper/index.ts +58 -0
  135. package/dist/shared/primitives/tabs/LICENSE +21 -0
  136. package/dist/shared/primitives/tabs/index.ts +18 -0
  137. package/dist/shared/primitives/toggle/LICENSE +21 -0
  138. package/dist/shared/primitives/toggle/index.ts +5 -0
  139. package/dist/shared/primitives/value/LICENSE +21 -0
  140. package/dist/shared/primitives/value/index.ts +80 -0
  141. package/dist/shared/primitives/visually-hidden/LICENSE +21 -0
  142. package/dist/shared/primitives/visually-hidden/index.ts +25 -0
  143. package/dist/shared/styles/float-button.css +20 -6
  144. package/dist/shared/styles/semantic.css +10 -2
  145. package/dist/shared/types/autocomplete.ts +16 -0
  146. package/dist/shared/types/data-table.ts +170 -0
  147. package/dist/shared/types/pagination.ts +19 -0
  148. package/dist/shared/types/select.ts +23 -0
  149. package/dist/shared/types/tree-select.ts +34 -0
  150. package/dist/shared/types/tree.ts +20 -0
  151. package/dist/shared/variants/panel.ts +5 -0
  152. package/dist/types/shared/src/behavior/anchor-follow.d.ts +13 -0
  153. package/dist/types/shared/src/behavior/anchor-follow.d.ts.map +1 -0
  154. package/dist/types/shared/src/behavior/form.d.ts +24 -0
  155. package/dist/types/shared/src/behavior/form.d.ts.map +1 -0
  156. package/dist/types/shared/src/behavior/ripple.d.ts +11 -0
  157. package/dist/types/shared/src/behavior/ripple.d.ts.map +1 -0
  158. package/dist/types/shared/src/behavior/spoiler/painter.d.ts +35 -0
  159. package/dist/types/shared/src/behavior/spoiler/painter.d.ts.map +1 -0
  160. package/dist/types/shared/src/behavior/spoiler/worklet.d.ts +2 -0
  161. package/dist/types/shared/src/behavior/spoiler/worklet.d.ts.map +1 -0
  162. package/dist/types/shared/src/behavior/toast.d.ts +72 -0
  163. package/dist/types/shared/src/behavior/toast.d.ts.map +1 -0
  164. package/dist/types/shared/src/lib/anchor.d.ts +31 -0
  165. package/dist/types/shared/src/lib/anchor.d.ts.map +1 -0
  166. package/dist/types/shared/src/lib/banner.d.ts +3 -0
  167. package/dist/types/shared/src/lib/banner.d.ts.map +1 -0
  168. package/dist/types/shared/src/lib/calendar/format.d.ts +7 -0
  169. package/dist/types/shared/src/lib/calendar/format.d.ts.map +1 -0
  170. package/dist/types/shared/src/lib/caret.d.ts +2 -0
  171. package/dist/types/shared/src/lib/caret.d.ts.map +1 -0
  172. package/dist/types/shared/src/lib/collapse.d.ts +9 -0
  173. package/dist/types/shared/src/lib/collapse.d.ts.map +1 -0
  174. package/dist/types/shared/src/lib/command-palette/hotkey.d.ts +9 -0
  175. package/dist/types/shared/src/lib/command-palette/hotkey.d.ts.map +1 -0
  176. package/dist/types/shared/src/lib/command-palette/match.d.ts +21 -0
  177. package/dist/types/shared/src/lib/command-palette/match.d.ts.map +1 -0
  178. package/dist/types/shared/src/lib/data-list.d.ts +7 -0
  179. package/dist/types/shared/src/lib/data-list.d.ts.map +1 -0
  180. package/dist/types/shared/src/lib/data-table/column-sizing-styles.d.ts +8 -0
  181. package/dist/types/shared/src/lib/data-table/column-sizing-styles.d.ts.map +1 -0
  182. package/dist/types/shared/src/lib/data-table/column-sizing.d.ts +22 -0
  183. package/dist/types/shared/src/lib/data-table/column-sizing.d.ts.map +1 -0
  184. package/dist/types/shared/src/lib/data-table/csv.d.ts +5 -0
  185. package/dist/types/shared/src/lib/data-table/csv.d.ts.map +1 -0
  186. package/dist/types/shared/src/lib/data-table/layout.d.ts +28 -0
  187. package/dist/types/shared/src/lib/data-table/layout.d.ts.map +1 -0
  188. package/dist/types/shared/src/lib/data-table/resize.d.ts +15 -0
  189. package/dist/types/shared/src/lib/data-table/resize.d.ts.map +1 -0
  190. package/dist/types/shared/src/lib/data-table/state.d.ts +103 -0
  191. package/dist/types/shared/src/lib/data-table/state.d.ts.map +1 -0
  192. package/dist/types/shared/src/lib/data-table/utils.d.ts +11 -0
  193. package/dist/types/shared/src/lib/data-table/utils.d.ts.map +1 -0
  194. package/dist/types/shared/src/lib/date-range-field/validity.d.ts +12 -0
  195. package/dist/types/shared/src/lib/date-range-field/validity.d.ts.map +1 -0
  196. package/dist/types/shared/src/lib/date.d.ts +28 -0
  197. package/dist/types/shared/src/lib/date.d.ts.map +1 -0
  198. package/dist/types/shared/src/lib/field-focus.d.ts +2 -0
  199. package/dist/types/shared/src/lib/field-focus.d.ts.map +1 -0
  200. package/dist/types/shared/src/lib/file-upload/select.d.ts +17 -0
  201. package/dist/types/shared/src/lib/file-upload/select.d.ts.map +1 -0
  202. package/dist/types/shared/src/lib/file-upload/size.d.ts +2 -0
  203. package/dist/types/shared/src/lib/file-upload/size.d.ts.map +1 -0
  204. package/dist/types/shared/src/lib/float-button.d.ts +15 -0
  205. package/dist/types/shared/src/lib/float-button.d.ts.map +1 -0
  206. package/dist/types/shared/src/lib/form/errors.d.ts +7 -0
  207. package/dist/types/shared/src/lib/form/errors.d.ts.map +1 -0
  208. package/dist/types/shared/src/lib/form/focus.d.ts +2 -0
  209. package/dist/types/shared/src/lib/form/focus.d.ts.map +1 -0
  210. package/dist/types/shared/src/lib/form/standard-schema.d.ts +23 -0
  211. package/dist/types/shared/src/lib/form/standard-schema.d.ts.map +1 -0
  212. package/dist/types/shared/src/lib/form/values.d.ts +3 -0
  213. package/dist/types/shared/src/lib/form/values.d.ts.map +1 -0
  214. package/dist/types/shared/src/lib/highlighter.d.ts +4 -0
  215. package/dist/types/shared/src/lib/highlighter.d.ts.map +1 -0
  216. package/dist/types/shared/src/lib/iris-origin.d.ts +6 -0
  217. package/dist/types/shared/src/lib/iris-origin.d.ts.map +1 -0
  218. package/dist/types/shared/src/lib/lightbox/clip.d.ts +16 -0
  219. package/dist/types/shared/src/lib/lightbox/clip.d.ts.map +1 -0
  220. package/dist/types/shared/src/lib/lightbox/download.d.ts +3 -0
  221. package/dist/types/shared/src/lib/lightbox/download.d.ts.map +1 -0
  222. package/dist/types/shared/src/lib/lightbox/gesture.d.ts +26 -0
  223. package/dist/types/shared/src/lib/lightbox/gesture.d.ts.map +1 -0
  224. package/dist/types/shared/src/lib/lightbox/paging.d.ts +9 -0
  225. package/dist/types/shared/src/lib/lightbox/paging.d.ts.map +1 -0
  226. package/dist/types/shared/src/lib/lightbox/pose.d.ts +38 -0
  227. package/dist/types/shared/src/lib/lightbox/pose.d.ts.map +1 -0
  228. package/dist/types/shared/src/lib/lightbox/source.d.ts +4 -0
  229. package/dist/types/shared/src/lib/lightbox/source.d.ts.map +1 -0
  230. package/dist/types/shared/src/lib/lightbox/types.d.ts +16 -0
  231. package/dist/types/shared/src/lib/lightbox/types.d.ts.map +1 -0
  232. package/dist/types/shared/src/lib/lightbox/zoom.d.ts +40 -0
  233. package/dist/types/shared/src/lib/lightbox/zoom.d.ts.map +1 -0
  234. package/dist/types/shared/src/lib/meter-group.d.ts +5 -0
  235. package/dist/types/shared/src/lib/meter-group.d.ts.map +1 -0
  236. package/dist/types/shared/src/lib/overlay-anchor.d.ts +10 -0
  237. package/dist/types/shared/src/lib/overlay-anchor.d.ts.map +1 -0
  238. package/dist/types/shared/src/lib/pagination.d.ts +4 -0
  239. package/dist/types/shared/src/lib/pagination.d.ts.map +1 -0
  240. package/dist/types/shared/src/lib/pointer-corridor.d.ts +7 -0
  241. package/dist/types/shared/src/lib/pointer-corridor.d.ts.map +1 -0
  242. package/dist/types/shared/src/lib/qr-code-export.d.ts +6 -0
  243. package/dist/types/shared/src/lib/qr-code-export.d.ts.map +1 -0
  244. package/dist/types/shared/src/lib/range-calendar/limit.d.ts +3 -0
  245. package/dist/types/shared/src/lib/range-calendar/limit.d.ts.map +1 -0
  246. package/dist/types/shared/src/lib/rating.d.ts +2 -0
  247. package/dist/types/shared/src/lib/rating.d.ts.map +1 -0
  248. package/dist/types/shared/src/lib/relative-time.d.ts +2 -0
  249. package/dist/types/shared/src/lib/relative-time.d.ts.map +1 -0
  250. package/dist/types/shared/src/lib/scroll-area.d.ts +50 -0
  251. package/dist/types/shared/src/lib/scroll-area.d.ts.map +1 -0
  252. package/dist/types/shared/src/lib/scroll-restore.d.ts +34 -0
  253. package/dist/types/shared/src/lib/scroll-restore.d.ts.map +1 -0
  254. package/dist/types/shared/src/lib/toast-layout.d.ts +13 -0
  255. package/dist/types/shared/src/lib/toast-layout.d.ts.map +1 -0
  256. package/dist/types/shared/src/lib/tree/selection.d.ts +23 -0
  257. package/dist/types/shared/src/lib/tree/selection.d.ts.map +1 -0
  258. package/dist/types/shared/src/lib/tree-select/filter.d.ts +7 -0
  259. package/dist/types/shared/src/lib/tree-select/filter.d.ts.map +1 -0
  260. package/dist/types/shared/src/lib/virtual/choices.d.ts +59 -0
  261. package/dist/types/shared/src/lib/virtual/choices.d.ts.map +1 -0
  262. package/dist/types/shared/src/lib/virtual/collection.d.ts +25 -0
  263. package/dist/types/shared/src/lib/virtual/collection.d.ts.map +1 -0
  264. package/dist/types/shared/src/lib/virtual/flow.d.ts +18 -0
  265. package/dist/types/shared/src/lib/virtual/flow.d.ts.map +1 -0
  266. package/dist/types/shared/src/lib/virtual/list.d.ts +46 -0
  267. package/dist/types/shared/src/lib/virtual/list.d.ts.map +1 -0
  268. package/dist/types/shared/src/lib/virtual/navigation.d.ts +3 -0
  269. package/dist/types/shared/src/lib/virtual/navigation.d.ts.map +1 -0
  270. package/dist/types/shared/src/lib/virtual/tree.d.ts +31 -0
  271. package/dist/types/shared/src/lib/virtual/tree.d.ts.map +1 -0
  272. package/dist/types/shared/src/locale/en-US.d.ts +3 -0
  273. package/dist/types/shared/src/locale/en-US.d.ts.map +1 -0
  274. package/dist/types/shared/src/locale/index.d.ts +6 -0
  275. package/dist/types/shared/src/locale/index.d.ts.map +1 -0
  276. package/dist/types/shared/src/locale/types.d.ts +235 -0
  277. package/dist/types/shared/src/locale/types.d.ts.map +1 -0
  278. package/dist/types/shared/src/locale/zh-CN.d.ts +3 -0
  279. package/dist/types/shared/src/locale/zh-CN.d.ts.map +1 -0
  280. package/dist/types/shared/src/primitives/accordion/index.d.ts +9 -0
  281. package/dist/types/shared/src/primitives/accordion/index.d.ts.map +1 -0
  282. package/dist/types/shared/src/primitives/arrow-navigation/index.d.ts +12 -0
  283. package/dist/types/shared/src/primitives/arrow-navigation/index.d.ts.map +1 -0
  284. package/dist/types/shared/src/primitives/checkbox/index.d.ts +6 -0
  285. package/dist/types/shared/src/primitives/checkbox/index.d.ts.map +1 -0
  286. package/dist/types/shared/src/primitives/collapsible/index.d.ts +12 -0
  287. package/dist/types/shared/src/primitives/collapsible/index.d.ts.map +1 -0
  288. package/dist/types/shared/src/primitives/collection/index.d.ts +6 -0
  289. package/dist/types/shared/src/primitives/collection/index.d.ts.map +1 -0
  290. package/dist/types/shared/src/primitives/dismissable-layer/index.d.ts +41 -0
  291. package/dist/types/shared/src/primitives/dismissable-layer/index.d.ts.map +1 -0
  292. package/dist/types/shared/src/primitives/focus-scope/index.d.ts +51 -0
  293. package/dist/types/shared/src/primitives/focus-scope/index.d.ts.map +1 -0
  294. package/dist/types/shared/src/primitives/label/index.d.ts +2 -0
  295. package/dist/types/shared/src/primitives/label/index.d.ts.map +1 -0
  296. package/dist/types/shared/src/primitives/number-field/index.d.ts +155 -0
  297. package/dist/types/shared/src/primitives/number-field/index.d.ts.map +1 -0
  298. package/dist/types/shared/src/primitives/pagination/index.d.ts +17 -0
  299. package/dist/types/shared/src/primitives/pagination/index.d.ts.map +1 -0
  300. package/dist/types/shared/src/primitives/pin-input/index.d.ts +31 -0
  301. package/dist/types/shared/src/primitives/pin-input/index.d.ts.map +1 -0
  302. package/dist/types/shared/src/primitives/presence/index.d.ts +14 -0
  303. package/dist/types/shared/src/primitives/presence/index.d.ts.map +1 -0
  304. package/dist/types/shared/src/primitives/progress/index.d.ts +10 -0
  305. package/dist/types/shared/src/primitives/progress/index.d.ts.map +1 -0
  306. package/dist/types/shared/src/primitives/radio-group/index.d.ts +12 -0
  307. package/dist/types/shared/src/primitives/radio-group/index.d.ts.map +1 -0
  308. package/dist/types/shared/src/primitives/rating/index.d.ts +8 -0
  309. package/dist/types/shared/src/primitives/rating/index.d.ts.map +1 -0
  310. package/dist/types/shared/src/primitives/roving-focus/index.d.ts +13 -0
  311. package/dist/types/shared/src/primitives/roving-focus/index.d.ts.map +1 -0
  312. package/dist/types/shared/src/primitives/separator/index.d.ts +10 -0
  313. package/dist/types/shared/src/primitives/separator/index.d.ts.map +1 -0
  314. package/dist/types/shared/src/primitives/size/index.d.ts +7 -0
  315. package/dist/types/shared/src/primitives/size/index.d.ts.map +1 -0
  316. package/dist/types/shared/src/primitives/slider/index.d.ts +60 -0
  317. package/dist/types/shared/src/primitives/slider/index.d.ts.map +1 -0
  318. package/dist/types/shared/src/primitives/splitter/arrays.d.ts +2 -0
  319. package/dist/types/shared/src/primitives/splitter/arrays.d.ts.map +1 -0
  320. package/dist/types/shared/src/primitives/splitter/assert.d.ts +2 -0
  321. package/dist/types/shared/src/primitives/splitter/assert.d.ts.map +1 -0
  322. package/dist/types/shared/src/primitives/splitter/calculate.d.ts +15 -0
  323. package/dist/types/shared/src/primitives/splitter/calculate.d.ts.map +1 -0
  324. package/dist/types/shared/src/primitives/splitter/callPanelCallbacks.d.ts +3 -0
  325. package/dist/types/shared/src/primitives/splitter/callPanelCallbacks.d.ts.map +1 -0
  326. package/dist/types/shared/src/primitives/splitter/compare.d.ts +3 -0
  327. package/dist/types/shared/src/primitives/splitter/compare.d.ts.map +1 -0
  328. package/dist/types/shared/src/primitives/splitter/constants.d.ts +2 -0
  329. package/dist/types/shared/src/primitives/splitter/constants.d.ts.map +1 -0
  330. package/dist/types/shared/src/primitives/splitter/debounce.d.ts +2 -0
  331. package/dist/types/shared/src/primitives/splitter/debounce.d.ts.map +1 -0
  332. package/dist/types/shared/src/primitives/splitter/dom.d.ts +8 -0
  333. package/dist/types/shared/src/primitives/splitter/dom.d.ts.map +1 -0
  334. package/dist/types/shared/src/primitives/splitter/events.d.ts +10 -0
  335. package/dist/types/shared/src/primitives/splitter/events.d.ts.map +1 -0
  336. package/dist/types/shared/src/primitives/splitter/flags.d.ts +5 -0
  337. package/dist/types/shared/src/primitives/splitter/flags.d.ts.map +1 -0
  338. package/dist/types/shared/src/primitives/splitter/layout.d.ts +10 -0
  339. package/dist/types/shared/src/primitives/splitter/layout.d.ts.map +1 -0
  340. package/dist/types/shared/src/primitives/splitter/pivot.d.ts +2 -0
  341. package/dist/types/shared/src/primitives/splitter/pivot.d.ts.map +1 -0
  342. package/dist/types/shared/src/primitives/splitter/rects.d.ts +8 -0
  343. package/dist/types/shared/src/primitives/splitter/rects.d.ts.map +1 -0
  344. package/dist/types/shared/src/primitives/splitter/registry.d.ts +5 -0
  345. package/dist/types/shared/src/primitives/splitter/registry.d.ts.map +1 -0
  346. package/dist/types/shared/src/primitives/splitter/resizePanel.d.ts +7 -0
  347. package/dist/types/shared/src/primitives/splitter/resizePanel.d.ts.map +1 -0
  348. package/dist/types/shared/src/primitives/splitter/stackingOrder.d.ts +2 -0
  349. package/dist/types/shared/src/primitives/splitter/stackingOrder.d.ts.map +1 -0
  350. package/dist/types/shared/src/primitives/splitter/storage.d.ts +9 -0
  351. package/dist/types/shared/src/primitives/splitter/storage.d.ts.map +1 -0
  352. package/dist/types/shared/src/primitives/splitter/style.d.ts +21 -0
  353. package/dist/types/shared/src/primitives/splitter/style.d.ts.map +1 -0
  354. package/dist/types/shared/src/primitives/splitter/types.d.ts +42 -0
  355. package/dist/types/shared/src/primitives/splitter/types.d.ts.map +1 -0
  356. package/dist/types/shared/src/primitives/splitter/units.d.ts +13 -0
  357. package/dist/types/shared/src/primitives/splitter/units.d.ts.map +1 -0
  358. package/dist/types/shared/src/primitives/splitter/validation.d.ts +6 -0
  359. package/dist/types/shared/src/primitives/splitter/validation.d.ts.map +1 -0
  360. package/dist/types/shared/src/primitives/stepper/index.d.ts +21 -0
  361. package/dist/types/shared/src/primitives/stepper/index.d.ts.map +1 -0
  362. package/dist/types/shared/src/primitives/tabs/index.d.ts +7 -0
  363. package/dist/types/shared/src/primitives/tabs/index.d.ts.map +1 -0
  364. package/dist/types/shared/src/primitives/toggle/index.d.ts +3 -0
  365. package/dist/types/shared/src/primitives/toggle/index.d.ts.map +1 -0
  366. package/dist/types/shared/src/primitives/value/index.d.ts +15 -0
  367. package/dist/types/shared/src/primitives/value/index.d.ts.map +1 -0
  368. package/dist/types/shared/src/primitives/visually-hidden/index.d.ts +19 -0
  369. package/dist/types/shared/src/primitives/visually-hidden/index.d.ts.map +1 -0
  370. package/dist/types/shared/src/types/autocomplete.d.ts +14 -0
  371. package/dist/types/shared/src/types/autocomplete.d.ts.map +1 -0
  372. package/dist/types/shared/src/types/data-table.d.ts +169 -0
  373. package/dist/types/shared/src/types/data-table.d.ts.map +1 -0
  374. package/dist/types/shared/src/types/pagination.d.ts +23 -0
  375. package/dist/types/shared/src/types/pagination.d.ts.map +1 -0
  376. package/dist/types/shared/src/types/select.d.ts +14 -0
  377. package/dist/types/shared/src/types/select.d.ts.map +1 -0
  378. package/dist/types/shared/src/types/tree-select.d.ts +10 -0
  379. package/dist/types/shared/src/types/tree-select.d.ts.map +1 -0
  380. package/dist/types/shared/src/types/tree.d.ts +18 -0
  381. package/dist/types/shared/src/types/tree.d.ts.map +1 -0
  382. package/dist/types/shared/src/variants/autocomplete.d.ts +3 -0
  383. package/dist/types/shared/src/variants/autocomplete.d.ts.map +1 -0
  384. package/dist/types/shared/src/variants/editable.d.ts +52 -0
  385. package/dist/types/shared/src/variants/editable.d.ts.map +1 -0
  386. package/dist/types/shared/src/variants/float-button.d.ts +74 -0
  387. package/dist/types/shared/src/variants/float-button.d.ts.map +1 -0
  388. package/dist/types/shared/src/variants/panel.d.ts +13 -1
  389. package/dist/types/shared/src/variants/panel.d.ts.map +1 -1
  390. package/dist/types/shared/src/variants/split-button.d.ts +18 -0
  391. package/dist/types/shared/src/variants/split-button.d.ts.map +1 -0
  392. package/dist/types/vue/src/components/accordion/Accordion.vue.d.ts.map +1 -1
  393. package/dist/types/vue/src/components/accordion/AccordionTrigger.vue.d.ts.map +1 -1
  394. package/dist/types/vue/src/components/anchor/composables/useAnchor.d.ts +2 -7
  395. package/dist/types/vue/src/components/anchor/composables/useAnchor.d.ts.map +1 -1
  396. package/dist/types/vue/src/components/anchor/composables/useAnchorFollow.d.ts.map +1 -1
  397. package/dist/types/vue/src/components/anchor/composables/useScrollSpy.d.ts +2 -5
  398. package/dist/types/vue/src/components/anchor/composables/useScrollSpy.d.ts.map +1 -1
  399. package/dist/types/vue/src/components/anchor/types.d.ts +1 -8
  400. package/dist/types/vue/src/components/anchor/types.d.ts.map +1 -1
  401. package/dist/types/vue/src/components/autocomplete/autocomplete.variants.d.ts +1 -1
  402. package/dist/types/vue/src/components/autocomplete/autocomplete.variants.d.ts.map +1 -1
  403. package/dist/types/vue/src/components/autocomplete/types.d.ts +1 -13
  404. package/dist/types/vue/src/components/autocomplete/types.d.ts.map +1 -1
  405. package/dist/types/vue/src/components/banner/utils/direction.d.ts +1 -2
  406. package/dist/types/vue/src/components/banner/utils/direction.d.ts.map +1 -1
  407. package/dist/types/vue/src/components/breadcrumb/BreadcrumbItem.vue.d.ts +2 -2
  408. package/dist/types/vue/src/components/breadcrumb/BreadcrumbItem.vue.d.ts.map +1 -1
  409. package/dist/types/vue/src/components/button/Button.vue.d.ts +2 -2
  410. package/dist/types/vue/src/components/button/Button.vue.d.ts.map +1 -1
  411. package/dist/types/vue/src/components/calendar/utils/format.d.ts +1 -6
  412. package/dist/types/vue/src/components/calendar/utils/format.d.ts.map +1 -1
  413. package/dist/types/vue/src/components/card/Card.vue.d.ts +2 -2
  414. package/dist/types/vue/src/components/card/Card.vue.d.ts.map +1 -1
  415. package/dist/types/vue/src/components/carousel/composables/useCarousel.d.ts +1 -1
  416. package/dist/types/vue/src/components/chip/Chip.vue.d.ts +1 -1
  417. package/dist/types/vue/src/components/chip/Chip.vue.d.ts.map +1 -1
  418. package/dist/types/vue/src/components/chip/composables/useChipRoot.d.ts +2 -2
  419. package/dist/types/vue/src/components/chip/composables/useChipRoot.d.ts.map +1 -1
  420. package/dist/types/vue/src/components/code-block/highlighter.d.ts +1 -3
  421. package/dist/types/vue/src/components/code-block/highlighter.d.ts.map +1 -1
  422. package/dist/types/vue/src/components/collapsible/Collapsible.vue.d.ts.map +1 -1
  423. package/dist/types/vue/src/components/collapsible/CollapsibleTrigger.vue.d.ts.map +1 -1
  424. package/dist/types/vue/src/components/command-palette/composables/useCommandItems.d.ts +1 -1
  425. package/dist/types/vue/src/components/command-palette/utils/hotkey.d.ts +1 -8
  426. package/dist/types/vue/src/components/command-palette/utils/hotkey.d.ts.map +1 -1
  427. package/dist/types/vue/src/components/command-palette/utils/match.d.ts +5 -12
  428. package/dist/types/vue/src/components/command-palette/utils/match.d.ts.map +1 -1
  429. package/dist/types/vue/src/components/data-list/DataList.vue.d.ts +2 -2
  430. package/dist/types/vue/src/components/data-list/composables/useDataList.d.ts.map +1 -1
  431. package/dist/types/vue/src/components/data-list/utils/scroll.d.ts +1 -2
  432. package/dist/types/vue/src/components/data-list/utils/scroll.d.ts.map +1 -1
  433. package/dist/types/vue/src/components/data-table/DataTable.vue.d.ts +2 -2
  434. package/dist/types/vue/src/components/data-table/column-sizing-styles.d.ts +1 -3
  435. package/dist/types/vue/src/components/data-table/column-sizing-styles.d.ts.map +1 -1
  436. package/dist/types/vue/src/components/data-table/column-sizing.d.ts +1 -21
  437. package/dist/types/vue/src/components/data-table/column-sizing.d.ts.map +1 -1
  438. package/dist/types/vue/src/components/data-table/composables/useDataTable.d.ts.map +1 -1
  439. package/dist/types/vue/src/components/data-table/composables/useTableColumns.d.ts.map +1 -1
  440. package/dist/types/vue/src/components/data-table/composables/useTableDrag.d.ts.map +1 -1
  441. package/dist/types/vue/src/components/data-table/composables/useTableExport.d.ts.map +1 -1
  442. package/dist/types/vue/src/components/data-table/composables/useTableResize.d.ts.map +1 -1
  443. package/dist/types/vue/src/components/data-table/composables/useTableResizeHandles.d.ts.map +1 -1
  444. package/dist/types/vue/src/components/data-table/composables/useTableVirtual.d.ts.map +1 -1
  445. package/dist/types/vue/src/components/data-table/types.d.ts +3 -153
  446. package/dist/types/vue/src/components/data-table/types.d.ts.map +1 -1
  447. package/dist/types/vue/src/components/data-table/utils.d.ts +1 -9
  448. package/dist/types/vue/src/components/data-table/utils.d.ts.map +1 -1
  449. package/dist/types/vue/src/components/date-range-field/utils/validity.d.ts +1 -11
  450. package/dist/types/vue/src/components/date-range-field/utils/validity.d.ts.map +1 -1
  451. package/dist/types/vue/src/components/editable/editable.variants.d.ts +1 -1
  452. package/dist/types/vue/src/components/editable/editable.variants.d.ts.map +1 -1
  453. package/dist/types/vue/src/components/file-upload/utils/select.d.ts +1 -16
  454. package/dist/types/vue/src/components/file-upload/utils/select.d.ts.map +1 -1
  455. package/dist/types/vue/src/components/file-upload/utils/size.d.ts +1 -1
  456. package/dist/types/vue/src/components/file-upload/utils/size.d.ts.map +1 -1
  457. package/dist/types/vue/src/components/float-button/FloatButton.vue.d.ts +1 -1
  458. package/dist/types/vue/src/components/float-button/FloatButton.vue.d.ts.map +1 -1
  459. package/dist/types/vue/src/components/float-button/float-button.variants.d.ts +1 -1
  460. package/dist/types/vue/src/components/float-button/float-button.variants.d.ts.map +1 -1
  461. package/dist/types/vue/src/components/float-button/types.d.ts +3 -2
  462. package/dist/types/vue/src/components/float-button/types.d.ts.map +1 -1
  463. package/dist/types/vue/src/components/form/Form.vue.d.ts +1 -1
  464. package/dist/types/vue/src/components/form/composables/useForm.d.ts +9 -15
  465. package/dist/types/vue/src/components/form/composables/useForm.d.ts.map +1 -1
  466. package/dist/types/vue/src/components/form/standard-schema.d.ts +1 -22
  467. package/dist/types/vue/src/components/form/standard-schema.d.ts.map +1 -1
  468. package/dist/types/vue/src/components/form/utils/errors.d.ts +1 -6
  469. package/dist/types/vue/src/components/form/utils/errors.d.ts.map +1 -1
  470. package/dist/types/vue/src/components/form/utils/focus.d.ts +1 -1
  471. package/dist/types/vue/src/components/form/utils/focus.d.ts.map +1 -1
  472. package/dist/types/vue/src/components/form/utils/values.d.ts +1 -2
  473. package/dist/types/vue/src/components/form/utils/values.d.ts.map +1 -1
  474. package/dist/types/vue/src/components/form-field/FormField.vue.d.ts.map +1 -1
  475. package/dist/types/vue/src/components/heading/Heading.vue.d.ts.map +1 -1
  476. package/dist/types/vue/src/components/icon-button/IconButton.vue.d.ts +2 -2
  477. package/dist/types/vue/src/components/icon-button/IconButton.vue.d.ts.map +1 -1
  478. package/dist/types/vue/src/components/image/Image.vue.d.ts.map +1 -1
  479. package/dist/types/vue/src/components/indicator/Indicator.vue.d.ts +2 -2
  480. package/dist/types/vue/src/components/indicator/Indicator.vue.d.ts.map +1 -1
  481. package/dist/types/vue/src/components/lightbox/types.d.ts +1 -15
  482. package/dist/types/vue/src/components/lightbox/types.d.ts.map +1 -1
  483. package/dist/types/vue/src/components/lightbox/utils/clip.d.ts +1 -15
  484. package/dist/types/vue/src/components/lightbox/utils/clip.d.ts.map +1 -1
  485. package/dist/types/vue/src/components/lightbox/utils/download.d.ts +1 -2
  486. package/dist/types/vue/src/components/lightbox/utils/download.d.ts.map +1 -1
  487. package/dist/types/vue/src/components/lightbox/utils/gesture.d.ts +1 -25
  488. package/dist/types/vue/src/components/lightbox/utils/gesture.d.ts.map +1 -1
  489. package/dist/types/vue/src/components/lightbox/utils/paging.d.ts +1 -8
  490. package/dist/types/vue/src/components/lightbox/utils/paging.d.ts.map +1 -1
  491. package/dist/types/vue/src/components/lightbox/utils/pose.d.ts +1 -37
  492. package/dist/types/vue/src/components/lightbox/utils/pose.d.ts.map +1 -1
  493. package/dist/types/vue/src/components/lightbox/utils/source.d.ts +1 -3
  494. package/dist/types/vue/src/components/lightbox/utils/source.d.ts.map +1 -1
  495. package/dist/types/vue/src/components/lightbox/utils/zoom.d.ts +1 -39
  496. package/dist/types/vue/src/components/lightbox/utils/zoom.d.ts.map +1 -1
  497. package/dist/types/vue/src/components/link/Link.vue.d.ts +2 -2
  498. package/dist/types/vue/src/components/link/Link.vue.d.ts.map +1 -1
  499. package/dist/types/vue/src/components/meter-group/utils/tones.d.ts +1 -3
  500. package/dist/types/vue/src/components/meter-group/utils/tones.d.ts.map +1 -1
  501. package/dist/types/vue/src/components/month-grid/MonthGrid.vue.d.ts +1 -1
  502. package/dist/types/vue/src/components/multi-select/MultiSelect.vue.d.ts.map +1 -1
  503. package/dist/types/vue/src/components/nav-link/NavLink.vue.d.ts +9 -5
  504. package/dist/types/vue/src/components/nav-link/NavLink.vue.d.ts.map +1 -1
  505. package/dist/types/vue/src/components/nav-link/NavLinkChild.d.ts +27 -0
  506. package/dist/types/vue/src/components/nav-link/NavLinkChild.d.ts.map +1 -0
  507. package/dist/types/vue/src/components/navigation-menu/NavigationMenuLink.vue.d.ts +2 -2
  508. package/dist/types/vue/src/components/navigation-menu/NavigationMenuLink.vue.d.ts.map +1 -1
  509. package/dist/types/vue/src/components/pagination/PaginationControl.vue.d.ts.map +1 -1
  510. package/dist/types/vue/src/components/pagination/composables/usePagination.d.ts +2 -2
  511. package/dist/types/vue/src/components/pagination/composables/usePagination.d.ts.map +1 -1
  512. package/dist/types/vue/src/components/pagination/types.d.ts +1 -22
  513. package/dist/types/vue/src/components/pagination/types.d.ts.map +1 -1
  514. package/dist/types/vue/src/components/pagination/utils/ranges.d.ts +1 -2
  515. package/dist/types/vue/src/components/pagination/utils/ranges.d.ts.map +1 -1
  516. package/dist/types/vue/src/components/password-input/PasswordInput.vue.d.ts +4 -1
  517. package/dist/types/vue/src/components/password-input/PasswordInput.vue.d.ts.map +1 -1
  518. package/dist/types/vue/src/components/prev-next/PrevNextLink.vue.d.ts +2 -2
  519. package/dist/types/vue/src/components/prev-next/PrevNextLink.vue.d.ts.map +1 -1
  520. package/dist/types/vue/src/components/prose/Prose.vue.d.ts +2 -2
  521. package/dist/types/vue/src/components/prose/Prose.vue.d.ts.map +1 -1
  522. package/dist/types/vue/src/components/qr-code/export.d.ts +1 -2
  523. package/dist/types/vue/src/components/qr-code/export.d.ts.map +1 -1
  524. package/dist/types/vue/src/components/range-calendar/utils/limit.d.ts +1 -2
  525. package/dist/types/vue/src/components/range-calendar/utils/limit.d.ts.map +1 -1
  526. package/dist/types/vue/src/components/range-slider/RangeSlider.vue.d.ts +2 -2
  527. package/dist/types/vue/src/components/rating/utils/fill.d.ts +1 -1
  528. package/dist/types/vue/src/components/rating/utils/fill.d.ts.map +1 -1
  529. package/dist/types/vue/src/components/ripple/useRipple.d.ts.map +1 -1
  530. package/dist/types/vue/src/components/scroll-area/ScrollArea.vue.d.ts.map +1 -1
  531. package/dist/types/vue/src/components/scroll-area/composables/useEdgeShadow.d.ts +2 -1
  532. package/dist/types/vue/src/components/scroll-area/composables/useEdgeShadow.d.ts.map +1 -1
  533. package/dist/types/vue/src/components/scroll-area/composables/useLayerLock.d.ts.map +1 -1
  534. package/dist/types/vue/src/components/scroll-area/composables/useWheelRedirect.d.ts.map +1 -1
  535. package/dist/types/vue/src/components/scroll-area/scroll-restore.d.ts +1 -33
  536. package/dist/types/vue/src/components/scroll-area/scroll-restore.d.ts.map +1 -1
  537. package/dist/types/vue/src/components/search-input/SearchInput.vue.d.ts +4 -1
  538. package/dist/types/vue/src/components/search-input/SearchInput.vue.d.ts.map +1 -1
  539. package/dist/types/vue/src/components/section/Section.vue.d.ts.map +1 -1
  540. package/dist/types/vue/src/components/segmented-control/SegmentedControl.vue.d.ts.map +1 -1
  541. package/dist/types/vue/src/components/select/types.d.ts +1 -13
  542. package/dist/types/vue/src/components/select/types.d.ts.map +1 -1
  543. package/dist/types/vue/src/components/sidebar/Sidebar.vue.d.ts.map +1 -1
  544. package/dist/types/vue/src/components/sidebar/context.d.ts +2 -0
  545. package/dist/types/vue/src/components/sidebar/context.d.ts.map +1 -1
  546. package/dist/types/vue/src/components/slider/Slider.vue.d.ts +2 -2
  547. package/dist/types/vue/src/components/slider/SliderHandle.vue.d.ts.map +1 -1
  548. package/dist/types/vue/src/components/split-button/SplitButton.vue.d.ts +1 -1
  549. package/dist/types/vue/src/components/split-button/split-button.variants.d.ts +1 -1
  550. package/dist/types/vue/src/components/split-button/split-button.variants.d.ts.map +1 -1
  551. package/dist/types/vue/src/components/split-button/types.d.ts +1 -1
  552. package/dist/types/vue/src/components/split-button/types.d.ts.map +1 -1
  553. package/dist/types/vue/src/components/spoiler/SpoilerPainter.d.ts +1 -34
  554. package/dist/types/vue/src/components/spoiler/SpoilerPainter.d.ts.map +1 -1
  555. package/dist/types/vue/src/components/spoiler/utils/irisOrigin.d.ts +1 -5
  556. package/dist/types/vue/src/components/spoiler/utils/irisOrigin.d.ts.map +1 -1
  557. package/dist/types/vue/src/components/spoiler/worklet.d.ts +1 -1
  558. package/dist/types/vue/src/components/spoiler/worklet.d.ts.map +1 -1
  559. package/dist/types/vue/src/components/table/Table.vue.d.ts +6 -3
  560. package/dist/types/vue/src/components/table/Table.vue.d.ts.map +1 -1
  561. package/dist/types/vue/src/components/tabs/TabsList.vue.d.ts +6 -3
  562. package/dist/types/vue/src/components/tabs/TabsList.vue.d.ts.map +1 -1
  563. package/dist/types/vue/src/components/tag/Tag.vue.d.ts +2 -2
  564. package/dist/types/vue/src/components/tag/Tag.vue.d.ts.map +1 -1
  565. package/dist/types/vue/src/components/text/Text.vue.d.ts +2 -2
  566. package/dist/types/vue/src/components/text/Text.vue.d.ts.map +1 -1
  567. package/dist/types/vue/src/components/time/Time.vue.d.ts +2 -0
  568. package/dist/types/vue/src/components/time/Time.vue.d.ts.map +1 -1
  569. package/dist/types/vue/src/components/time/utils/relativeTime.d.ts +1 -1
  570. package/dist/types/vue/src/components/time/utils/relativeTime.d.ts.map +1 -1
  571. package/dist/types/vue/src/components/toast/Toaster.vue.d.ts.map +1 -1
  572. package/dist/types/vue/src/components/toast/composables/useToastLayout.d.ts +4 -11
  573. package/dist/types/vue/src/components/toast/composables/useToastLayout.d.ts.map +1 -1
  574. package/dist/types/vue/src/components/toast/store.d.ts +14 -62
  575. package/dist/types/vue/src/components/toast/store.d.ts.map +1 -1
  576. package/dist/types/vue/src/components/toggle/Toggle.vue.d.ts.map +1 -1
  577. package/dist/types/vue/src/components/toolbar/ToolbarControl.vue.d.ts +1 -1
  578. package/dist/types/vue/src/components/toolbar/ToolbarLink.vue.d.ts +1 -1
  579. package/dist/types/vue/src/components/toolbar/ToolbarToggleGroup.vue.d.ts.map +1 -1
  580. package/dist/types/vue/src/components/toolbar/types.d.ts +1 -1
  581. package/dist/types/vue/src/components/toolbar/types.d.ts.map +1 -1
  582. package/dist/types/vue/src/components/tree/composables/useTree.d.ts.map +1 -1
  583. package/dist/types/vue/src/components/tree/types.d.ts +1 -17
  584. package/dist/types/vue/src/components/tree/types.d.ts.map +1 -1
  585. package/dist/types/vue/src/components/tree/utils/selection.d.ts +1 -15
  586. package/dist/types/vue/src/components/tree/utils/selection.d.ts.map +1 -1
  587. package/dist/types/vue/src/components/tree-select/types.d.ts +1 -9
  588. package/dist/types/vue/src/components/tree-select/types.d.ts.map +1 -1
  589. package/dist/types/vue/src/components/tree-select/utils/filterTree.d.ts +1 -6
  590. package/dist/types/vue/src/components/tree-select/utils/filterTree.d.ts.map +1 -1
  591. package/dist/types/vue/src/components/virtual-list/composables/useVirtualList.d.ts +2 -2
  592. package/dist/types/vue/src/components/virtual-list/composables/useVirtualList.d.ts.map +1 -1
  593. package/dist/types/vue/src/components/visually-hidden/VisuallyHidden.vue.d.ts +4 -1
  594. package/dist/types/vue/src/components/visually-hidden/VisuallyHidden.vue.d.ts.map +1 -1
  595. package/dist/types/vue/src/lib/caret.d.ts +1 -1
  596. package/dist/types/vue/src/lib/caret.d.ts.map +1 -1
  597. package/dist/types/vue/src/lib/collapse.d.ts +2 -8
  598. package/dist/types/vue/src/lib/collapse.d.ts.map +1 -1
  599. package/dist/types/vue/src/lib/date.d.ts +1 -27
  600. package/dist/types/vue/src/lib/date.d.ts.map +1 -1
  601. package/dist/types/vue/src/lib/field-focus.d.ts +1 -1
  602. package/dist/types/vue/src/lib/field-focus.d.ts.map +1 -1
  603. package/dist/types/vue/src/lib/overlay-anchor.d.ts +2 -7
  604. package/dist/types/vue/src/lib/overlay-anchor.d.ts.map +1 -1
  605. package/dist/types/vue/src/lib/pointer-corridor.d.ts +1 -6
  606. package/dist/types/vue/src/lib/pointer-corridor.d.ts.map +1 -1
  607. package/dist/types/vue/src/lib/reka/useVirtualChoices.d.ts +3 -11
  608. package/dist/types/vue/src/lib/reka/useVirtualChoices.d.ts.map +1 -1
  609. package/dist/types/vue/src/lib/reka/useVirtualTree.d.ts +1 -1
  610. package/dist/types/vue/src/lib/reka/useVirtualTree.d.ts.map +1 -1
  611. package/dist/types/vue/src/lib/useDirection.d.ts +2 -2
  612. package/dist/types/vue/src/lib/useDirection.d.ts.map +1 -1
  613. package/dist/types/vue/src/lib/virtual/navigation.d.ts +1 -2
  614. package/dist/types/vue/src/lib/virtual/navigation.d.ts.map +1 -1
  615. package/dist/types/vue/src/lib/virtual/useVirtualCollection.d.ts +1 -1
  616. package/dist/types/vue/src/lib/virtual/useVirtualCollection.d.ts.map +1 -1
  617. package/dist/types/vue/src/lib/virtual/useVirtualWindow.d.ts +2 -15
  618. package/dist/types/vue/src/lib/virtual/useVirtualWindow.d.ts.map +1 -1
  619. package/dist/types/vue/src/locale/en-US.d.ts +1 -2
  620. package/dist/types/vue/src/locale/en-US.d.ts.map +1 -1
  621. package/dist/types/vue/src/locale/index.d.ts +3 -4
  622. package/dist/types/vue/src/locale/index.d.ts.map +1 -1
  623. package/dist/types/vue/src/locale/types.d.ts +1 -234
  624. package/dist/types/vue/src/locale/types.d.ts.map +1 -1
  625. package/dist/types/vue/src/locale/zh-CN.d.ts +1 -2
  626. package/dist/types/vue/src/locale/zh-CN.d.ts.map +1 -1
  627. package/dist/types/vue/src/primitives/accordion/AccordionContent.d.ts +40 -0
  628. package/dist/types/vue/src/primitives/accordion/AccordionContent.d.ts.map +1 -0
  629. package/dist/types/vue/src/primitives/accordion/AccordionHeader.d.ts +33 -0
  630. package/dist/types/vue/src/primitives/accordion/AccordionHeader.d.ts.map +1 -0
  631. package/dist/types/vue/src/primitives/accordion/AccordionItem.d.ts +61 -0
  632. package/dist/types/vue/src/primitives/accordion/AccordionItem.d.ts.map +1 -0
  633. package/dist/types/vue/src/primitives/accordion/AccordionRoot.d.ts +122 -0
  634. package/dist/types/vue/src/primitives/accordion/AccordionRoot.d.ts.map +1 -0
  635. package/dist/types/vue/src/primitives/accordion/AccordionTrigger.d.ts +30 -0
  636. package/dist/types/vue/src/primitives/accordion/AccordionTrigger.d.ts.map +1 -0
  637. package/dist/types/vue/src/primitives/accordion/context.d.ts +27 -0
  638. package/dist/types/vue/src/primitives/accordion/context.d.ts.map +1 -0
  639. package/dist/types/vue/src/primitives/accordion/index.d.ts +7 -0
  640. package/dist/types/vue/src/primitives/accordion/index.d.ts.map +1 -0
  641. package/dist/types/vue/src/primitives/aspect-ratio/AspectRatio.d.ts +42 -0
  642. package/dist/types/vue/src/primitives/aspect-ratio/AspectRatio.d.ts.map +1 -0
  643. package/dist/types/vue/src/primitives/aspect-ratio/index.d.ts +2 -0
  644. package/dist/types/vue/src/primitives/aspect-ratio/index.d.ts.map +1 -0
  645. package/dist/types/vue/src/primitives/checkbox/CheckboxGroupRoot.d.ts +121 -0
  646. package/dist/types/vue/src/primitives/checkbox/CheckboxGroupRoot.d.ts.map +1 -0
  647. package/dist/types/vue/src/primitives/checkbox/CheckboxRoot.d.ts +127 -0
  648. package/dist/types/vue/src/primitives/checkbox/CheckboxRoot.d.ts.map +1 -0
  649. package/dist/types/vue/src/primitives/checkbox/context.d.ts +14 -0
  650. package/dist/types/vue/src/primitives/checkbox/context.d.ts.map +1 -0
  651. package/dist/types/vue/src/primitives/checkbox/index.d.ts +4 -0
  652. package/dist/types/vue/src/primitives/checkbox/index.d.ts.map +1 -0
  653. package/dist/types/vue/src/primitives/collapsible/CollapsibleContent.d.ts +45 -0
  654. package/dist/types/vue/src/primitives/collapsible/CollapsibleContent.d.ts.map +1 -0
  655. package/dist/types/vue/src/primitives/collapsible/CollapsibleRoot.d.ts +81 -0
  656. package/dist/types/vue/src/primitives/collapsible/CollapsibleRoot.d.ts.map +1 -0
  657. package/dist/types/vue/src/primitives/collapsible/CollapsibleTrigger.d.ts +33 -0
  658. package/dist/types/vue/src/primitives/collapsible/CollapsibleTrigger.d.ts.map +1 -0
  659. package/dist/types/vue/src/primitives/collapsible/context.d.ts +10 -0
  660. package/dist/types/vue/src/primitives/collapsible/context.d.ts.map +1 -0
  661. package/dist/types/vue/src/primitives/collapsible/index.d.ts +5 -0
  662. package/dist/types/vue/src/primitives/collapsible/index.d.ts.map +1 -0
  663. package/dist/types/vue/src/primitives/collection/index.d.ts +28 -0
  664. package/dist/types/vue/src/primitives/collection/index.d.ts.map +1 -0
  665. package/dist/types/vue/src/primitives/number-field/NumberFieldDecrement.vue.d.ts +17 -0
  666. package/dist/types/vue/src/primitives/number-field/NumberFieldDecrement.vue.d.ts.map +1 -0
  667. package/dist/types/vue/src/primitives/number-field/NumberFieldIncrement.vue.d.ts +17 -0
  668. package/dist/types/vue/src/primitives/number-field/NumberFieldIncrement.vue.d.ts.map +1 -0
  669. package/dist/types/vue/src/primitives/number-field/NumberFieldInput.vue.d.ts +16 -0
  670. package/dist/types/vue/src/primitives/number-field/NumberFieldInput.vue.d.ts.map +1 -0
  671. package/dist/types/vue/src/primitives/number-field/NumberFieldRoot.vue.d.ts +47 -0
  672. package/dist/types/vue/src/primitives/number-field/NumberFieldRoot.vue.d.ts.map +1 -0
  673. package/dist/types/vue/src/primitives/number-field/context.d.ts +41 -0
  674. package/dist/types/vue/src/primitives/number-field/context.d.ts.map +1 -0
  675. package/dist/types/vue/src/primitives/number-field/index.d.ts +5 -0
  676. package/dist/types/vue/src/primitives/number-field/index.d.ts.map +1 -0
  677. package/dist/types/vue/src/primitives/pagination/PaginationEdge.d.ts +111 -0
  678. package/dist/types/vue/src/primitives/pagination/PaginationEdge.d.ts.map +1 -0
  679. package/dist/types/vue/src/primitives/pagination/PaginationList.d.ts +30 -0
  680. package/dist/types/vue/src/primitives/pagination/PaginationList.d.ts.map +1 -0
  681. package/dist/types/vue/src/primitives/pagination/PaginationListItem.d.ts +42 -0
  682. package/dist/types/vue/src/primitives/pagination/PaginationListItem.d.ts.map +1 -0
  683. package/dist/types/vue/src/primitives/pagination/PaginationRoot.d.ts +114 -0
  684. package/dist/types/vue/src/primitives/pagination/PaginationRoot.d.ts.map +1 -0
  685. package/dist/types/vue/src/primitives/pagination/context.d.ts +11 -0
  686. package/dist/types/vue/src/primitives/pagination/context.d.ts.map +1 -0
  687. package/dist/types/vue/src/primitives/pagination/index.d.ts +6 -0
  688. package/dist/types/vue/src/primitives/pagination/index.d.ts.map +1 -0
  689. package/dist/types/vue/src/primitives/pin-input/PinInputInput.d.ts +52 -0
  690. package/dist/types/vue/src/primitives/pin-input/PinInputInput.d.ts.map +1 -0
  691. package/dist/types/vue/src/primitives/pin-input/PinInputRoot.d.ts +149 -0
  692. package/dist/types/vue/src/primitives/pin-input/PinInputRoot.d.ts.map +1 -0
  693. package/dist/types/vue/src/primitives/pin-input/context.d.ts +20 -0
  694. package/dist/types/vue/src/primitives/pin-input/context.d.ts.map +1 -0
  695. package/dist/types/vue/src/primitives/pin-input/index.d.ts +4 -0
  696. package/dist/types/vue/src/primitives/pin-input/index.d.ts.map +1 -0
  697. package/dist/types/vue/src/primitives/presence/Presence.d.ts +31 -0
  698. package/dist/types/vue/src/primitives/presence/Presence.d.ts.map +1 -0
  699. package/dist/types/vue/src/primitives/presence/index.d.ts +3 -0
  700. package/dist/types/vue/src/primitives/presence/index.d.ts.map +1 -0
  701. package/dist/types/vue/src/primitives/presence/usePresence.d.ts +5 -0
  702. package/dist/types/vue/src/primitives/presence/usePresence.d.ts.map +1 -0
  703. package/dist/types/vue/src/primitives/primitive/Primitive.d.ts +31 -0
  704. package/dist/types/vue/src/primitives/primitive/Primitive.d.ts.map +1 -0
  705. package/dist/types/vue/src/primitives/primitive/Slot.d.ts +6 -0
  706. package/dist/types/vue/src/primitives/primitive/Slot.d.ts.map +1 -0
  707. package/dist/types/vue/src/primitives/primitive/index.d.ts +3 -0
  708. package/dist/types/vue/src/primitives/primitive/index.d.ts.map +1 -0
  709. package/dist/types/vue/src/primitives/progress/ProgressIndicator.vue.d.ts +14 -0
  710. package/dist/types/vue/src/primitives/progress/ProgressIndicator.vue.d.ts.map +1 -0
  711. package/dist/types/vue/src/primitives/progress/ProgressRoot.vue.d.ts +33 -0
  712. package/dist/types/vue/src/primitives/progress/ProgressRoot.vue.d.ts.map +1 -0
  713. package/dist/types/vue/src/primitives/progress/context.d.ts +9 -0
  714. package/dist/types/vue/src/primitives/progress/context.d.ts.map +1 -0
  715. package/dist/types/vue/src/primitives/progress/index.d.ts +4 -0
  716. package/dist/types/vue/src/primitives/progress/index.d.ts.map +1 -0
  717. package/dist/types/vue/src/primitives/radio-group/Radio.d.ts +88 -0
  718. package/dist/types/vue/src/primitives/radio-group/Radio.d.ts.map +1 -0
  719. package/dist/types/vue/src/primitives/radio-group/RadioGroupIndicator.d.ts +43 -0
  720. package/dist/types/vue/src/primitives/radio-group/RadioGroupIndicator.d.ts.map +1 -0
  721. package/dist/types/vue/src/primitives/radio-group/RadioGroupItem.d.ts +85 -0
  722. package/dist/types/vue/src/primitives/radio-group/RadioGroupItem.d.ts.map +1 -0
  723. package/dist/types/vue/src/primitives/radio-group/RadioGroupRoot.d.ts +119 -0
  724. package/dist/types/vue/src/primitives/radio-group/RadioGroupRoot.d.ts.map +1 -0
  725. package/dist/types/vue/src/primitives/radio-group/context.d.ts +19 -0
  726. package/dist/types/vue/src/primitives/radio-group/context.d.ts.map +1 -0
  727. package/dist/types/vue/src/primitives/radio-group/index.d.ts +5 -0
  728. package/dist/types/vue/src/primitives/radio-group/index.d.ts.map +1 -0
  729. package/dist/types/vue/src/primitives/rating/RatingItem.d.ts +42 -0
  730. package/dist/types/vue/src/primitives/rating/RatingItem.d.ts.map +1 -0
  731. package/dist/types/vue/src/primitives/rating/RatingItemIndicator.d.ts +39 -0
  732. package/dist/types/vue/src/primitives/rating/RatingItemIndicator.d.ts.map +1 -0
  733. package/dist/types/vue/src/primitives/rating/RatingRoot.d.ts +159 -0
  734. package/dist/types/vue/src/primitives/rating/RatingRoot.d.ts.map +1 -0
  735. package/dist/types/vue/src/primitives/rating/context.d.ts +16 -0
  736. package/dist/types/vue/src/primitives/rating/context.d.ts.map +1 -0
  737. package/dist/types/vue/src/primitives/rating/index.d.ts +5 -0
  738. package/dist/types/vue/src/primitives/rating/index.d.ts.map +1 -0
  739. package/dist/types/vue/src/primitives/roving-focus/RovingFocusGroup.vue.d.ts +38 -0
  740. package/dist/types/vue/src/primitives/roving-focus/RovingFocusGroup.vue.d.ts.map +1 -0
  741. package/dist/types/vue/src/primitives/roving-focus/RovingFocusItem.vue.d.ts +21 -0
  742. package/dist/types/vue/src/primitives/roving-focus/RovingFocusItem.vue.d.ts.map +1 -0
  743. package/dist/types/vue/src/primitives/roving-focus/context.d.ts +15 -0
  744. package/dist/types/vue/src/primitives/roving-focus/context.d.ts.map +1 -0
  745. package/dist/types/vue/src/primitives/roving-focus/index.d.ts +4 -0
  746. package/dist/types/vue/src/primitives/roving-focus/index.d.ts.map +1 -0
  747. package/dist/types/vue/src/primitives/separator/Separator.vue.d.ts +19 -0
  748. package/dist/types/vue/src/primitives/separator/Separator.vue.d.ts.map +1 -0
  749. package/dist/types/vue/src/primitives/separator/index.d.ts +2 -0
  750. package/dist/types/vue/src/primitives/separator/index.d.ts.map +1 -0
  751. package/dist/types/vue/src/primitives/slider/SliderImpl.d.ts +36 -0
  752. package/dist/types/vue/src/primitives/slider/SliderImpl.d.ts.map +1 -0
  753. package/dist/types/vue/src/primitives/slider/SliderOrientation.d.ts +91 -0
  754. package/dist/types/vue/src/primitives/slider/SliderOrientation.d.ts.map +1 -0
  755. package/dist/types/vue/src/primitives/slider/SliderRoot.d.ts +187 -0
  756. package/dist/types/vue/src/primitives/slider/SliderRoot.d.ts.map +1 -0
  757. package/dist/types/vue/src/primitives/slider/SliderThumb.d.ts +33 -0
  758. package/dist/types/vue/src/primitives/slider/SliderThumb.d.ts.map +1 -0
  759. package/dist/types/vue/src/primitives/slider/SliderTrack.d.ts +33 -0
  760. package/dist/types/vue/src/primitives/slider/SliderTrack.d.ts.map +1 -0
  761. package/dist/types/vue/src/primitives/slider/context.d.ts +22 -0
  762. package/dist/types/vue/src/primitives/slider/context.d.ts.map +1 -0
  763. package/dist/types/vue/src/primitives/slider/index.d.ts +5 -0
  764. package/dist/types/vue/src/primitives/slider/index.d.ts.map +1 -0
  765. package/dist/types/vue/src/primitives/splitter/SplitterGroup.d.ts +90 -0
  766. package/dist/types/vue/src/primitives/splitter/SplitterGroup.d.ts.map +1 -0
  767. package/dist/types/vue/src/primitives/splitter/SplitterPanel.d.ts +113 -0
  768. package/dist/types/vue/src/primitives/splitter/SplitterPanel.d.ts.map +1 -0
  769. package/dist/types/vue/src/primitives/splitter/SplitterResizeHandle.d.ts +85 -0
  770. package/dist/types/vue/src/primitives/splitter/SplitterResizeHandle.d.ts.map +1 -0
  771. package/dist/types/vue/src/primitives/splitter/behaviors.d.ts +22 -0
  772. package/dist/types/vue/src/primitives/splitter/behaviors.d.ts.map +1 -0
  773. package/dist/types/vue/src/primitives/splitter/context.d.ts +23 -0
  774. package/dist/types/vue/src/primitives/splitter/context.d.ts.map +1 -0
  775. package/dist/types/vue/src/primitives/splitter/index.d.ts +6 -0
  776. package/dist/types/vue/src/primitives/splitter/index.d.ts.map +1 -0
  777. package/dist/types/vue/src/primitives/stepper/StepperItem.d.ts +63 -0
  778. package/dist/types/vue/src/primitives/stepper/StepperItem.d.ts.map +1 -0
  779. package/dist/types/vue/src/primitives/stepper/StepperParts.d.ts +130 -0
  780. package/dist/types/vue/src/primitives/stepper/StepperParts.d.ts.map +1 -0
  781. package/dist/types/vue/src/primitives/stepper/StepperRoot.d.ts +91 -0
  782. package/dist/types/vue/src/primitives/stepper/StepperRoot.d.ts.map +1 -0
  783. package/dist/types/vue/src/primitives/stepper/StepperTrigger.d.ts +33 -0
  784. package/dist/types/vue/src/primitives/stepper/StepperTrigger.d.ts.map +1 -0
  785. package/dist/types/vue/src/primitives/stepper/context.d.ts +23 -0
  786. package/dist/types/vue/src/primitives/stepper/context.d.ts.map +1 -0
  787. package/dist/types/vue/src/primitives/stepper/index.d.ts +6 -0
  788. package/dist/types/vue/src/primitives/stepper/index.d.ts.map +1 -0
  789. package/dist/types/vue/src/primitives/switch/SwitchRoot.d.ts +133 -0
  790. package/dist/types/vue/src/primitives/switch/SwitchRoot.d.ts.map +1 -0
  791. package/dist/types/vue/src/primitives/switch/index.d.ts +2 -0
  792. package/dist/types/vue/src/primitives/switch/index.d.ts.map +1 -0
  793. package/dist/types/vue/src/primitives/tabs/TabsContent.d.ts +50 -0
  794. package/dist/types/vue/src/primitives/tabs/TabsContent.d.ts.map +1 -0
  795. package/dist/types/vue/src/primitives/tabs/TabsList.d.ts +42 -0
  796. package/dist/types/vue/src/primitives/tabs/TabsList.d.ts.map +1 -0
  797. package/dist/types/vue/src/primitives/tabs/TabsRoot.d.ts +101 -0
  798. package/dist/types/vue/src/primitives/tabs/TabsRoot.d.ts.map +1 -0
  799. package/dist/types/vue/src/primitives/tabs/TabsTrigger.d.ts +55 -0
  800. package/dist/types/vue/src/primitives/tabs/TabsTrigger.d.ts.map +1 -0
  801. package/dist/types/vue/src/primitives/tabs/context.d.ts +19 -0
  802. package/dist/types/vue/src/primitives/tabs/context.d.ts.map +1 -0
  803. package/dist/types/vue/src/primitives/tabs/index.d.ts +6 -0
  804. package/dist/types/vue/src/primitives/tabs/index.d.ts.map +1 -0
  805. package/dist/types/vue/src/primitives/toggle/Toggle.d.ts +91 -0
  806. package/dist/types/vue/src/primitives/toggle/Toggle.d.ts.map +1 -0
  807. package/dist/types/vue/src/primitives/toggle/index.d.ts +2 -0
  808. package/dist/types/vue/src/primitives/toggle/index.d.ts.map +1 -0
  809. package/dist/types/vue/src/primitives/toggle-group/ToggleGroupItem.d.ts +53 -0
  810. package/dist/types/vue/src/primitives/toggle-group/ToggleGroupItem.d.ts.map +1 -0
  811. package/dist/types/vue/src/primitives/toggle-group/ToggleGroupRoot.d.ts +141 -0
  812. package/dist/types/vue/src/primitives/toggle-group/ToggleGroupRoot.d.ts.map +1 -0
  813. package/dist/types/vue/src/primitives/toggle-group/context.d.ts +16 -0
  814. package/dist/types/vue/src/primitives/toggle-group/context.d.ts.map +1 -0
  815. package/dist/types/vue/src/primitives/toggle-group/index.d.ts +4 -0
  816. package/dist/types/vue/src/primitives/toggle-group/index.d.ts.map +1 -0
  817. package/dist/types/vue/src/primitives/toolbar/ToolbarButton.d.ts +43 -0
  818. package/dist/types/vue/src/primitives/toolbar/ToolbarButton.d.ts.map +1 -0
  819. package/dist/types/vue/src/primitives/toolbar/ToolbarRoot.d.ts +63 -0
  820. package/dist/types/vue/src/primitives/toolbar/ToolbarRoot.d.ts.map +1 -0
  821. package/dist/types/vue/src/primitives/toolbar/ToolbarToggleGroup.d.ts +135 -0
  822. package/dist/types/vue/src/primitives/toolbar/ToolbarToggleGroup.d.ts.map +1 -0
  823. package/dist/types/vue/src/primitives/toolbar/ToolbarToggleItem.d.ts +50 -0
  824. package/dist/types/vue/src/primitives/toolbar/ToolbarToggleItem.d.ts.map +1 -0
  825. package/dist/types/vue/src/primitives/toolbar/context.d.ts +9 -0
  826. package/dist/types/vue/src/primitives/toolbar/context.d.ts.map +1 -0
  827. package/dist/types/vue/src/primitives/toolbar/index.d.ts +6 -0
  828. package/dist/types/vue/src/primitives/toolbar/index.d.ts.map +1 -0
  829. package/dist/types/vue/src/primitives/utils/config.d.ts +2 -0
  830. package/dist/types/vue/src/primitives/utils/config.d.ts.map +1 -0
  831. package/dist/types/vue/src/primitives/utils/createContext.d.ts +2 -0
  832. package/dist/types/vue/src/primitives/utils/createContext.d.ts.map +1 -0
  833. package/dist/types/vue/src/primitives/utils/renderSlotFragments.d.ts +3 -0
  834. package/dist/types/vue/src/primitives/utils/renderSlotFragments.d.ts.map +1 -0
  835. package/dist/types/vue/src/primitives/utils/timers.d.ts +6 -0
  836. package/dist/types/vue/src/primitives/utils/timers.d.ts.map +1 -0
  837. package/dist/types/vue/src/primitives/utils/types.d.ts +2 -0
  838. package/dist/types/vue/src/primitives/utils/types.d.ts.map +1 -0
  839. package/dist/types/vue/src/primitives/utils/useComposing.d.ts +8 -0
  840. package/dist/types/vue/src/primitives/utils/useComposing.d.ts.map +1 -0
  841. package/dist/types/vue/src/primitives/utils/useDirection.d.ts +4 -0
  842. package/dist/types/vue/src/primitives/utils/useDirection.d.ts.map +1 -0
  843. package/dist/types/vue/src/primitives/utils/useEmitAsProps.d.ts +2 -0
  844. package/dist/types/vue/src/primitives/utils/useEmitAsProps.d.ts.map +1 -0
  845. package/dist/types/vue/src/primitives/utils/useFormControl.d.ts +4 -0
  846. package/dist/types/vue/src/primitives/utils/useFormControl.d.ts.map +1 -0
  847. package/dist/types/vue/src/primitives/utils/useForwardExpose.d.ts +7 -0
  848. package/dist/types/vue/src/primitives/utils/useForwardExpose.d.ts.map +1 -0
  849. package/dist/types/vue/src/primitives/utils/useForwardProps.d.ts +3 -0
  850. package/dist/types/vue/src/primitives/utils/useForwardProps.d.ts.map +1 -0
  851. package/dist/types/vue/src/primitives/utils/useForwardPropsEmits.d.ts +3 -0
  852. package/dist/types/vue/src/primitives/utils/useForwardPropsEmits.d.ts.map +1 -0
  853. package/dist/types/vue/src/primitives/utils/useForwardScopeId.d.ts +2 -0
  854. package/dist/types/vue/src/primitives/utils/useForwardScopeId.d.ts.map +1 -0
  855. package/dist/types/vue/src/primitives/utils/useId.d.ts +2 -0
  856. package/dist/types/vue/src/primitives/utils/useId.d.ts.map +1 -0
  857. package/dist/types/vue/src/primitives/utils/useNonce.d.ts +3 -0
  858. package/dist/types/vue/src/primitives/utils/useNonce.d.ts.map +1 -0
  859. package/dist/types/vue/src/primitives/utils/usePrimitiveElement.d.ts +6 -0
  860. package/dist/types/vue/src/primitives/utils/usePrimitiveElement.d.ts.map +1 -0
  861. package/dist/types/vue/src/primitives/utils/useSingleOrMultipleValue.d.ts +12 -0
  862. package/dist/types/vue/src/primitives/utils/useSingleOrMultipleValue.d.ts.map +1 -0
  863. package/dist/types/vue/src/primitives/utils/useSize.d.ts +7 -0
  864. package/dist/types/vue/src/primitives/utils/useSize.d.ts.map +1 -0
  865. package/dist/types/vue/src/primitives/utils/useVModel.d.ts +7 -0
  866. package/dist/types/vue/src/primitives/utils/useVModel.d.ts.map +1 -0
  867. package/dist/types/vue/src/primitives/visually-hidden/VisuallyHidden.vue.d.ts +19 -0
  868. package/dist/types/vue/src/primitives/visually-hidden/VisuallyHidden.vue.d.ts.map +1 -0
  869. package/dist/types/vue/src/primitives/visually-hidden/VisuallyHiddenInput.d.ts +66 -0
  870. package/dist/types/vue/src/primitives/visually-hidden/VisuallyHiddenInput.d.ts.map +1 -0
  871. package/dist/types/vue/src/primitives/visually-hidden/VisuallyHiddenInputBubble.vue.d.ts +28 -0
  872. package/dist/types/vue/src/primitives/visually-hidden/VisuallyHiddenInputBubble.vue.d.ts.map +1 -0
  873. package/dist/types/vue/src/primitives/visually-hidden/index.d.ts +3 -0
  874. package/dist/types/vue/src/primitives/visually-hidden/index.d.ts.map +1 -0
  875. package/package.json +3 -2
  876. package/src/components/accordion/Accordion.vue +2 -1
  877. package/src/components/accordion/AccordionContent.vue +1 -1
  878. package/src/components/accordion/AccordionItem.vue +1 -1
  879. package/src/components/accordion/AccordionTrigger.vue +9 -1
  880. package/src/components/anchor/composables/useAnchor.ts +3 -12
  881. package/src/components/anchor/composables/useAnchorFollow.ts +8 -76
  882. package/src/components/anchor/composables/useScrollSpy.ts +22 -38
  883. package/src/components/anchor/types.ts +1 -8
  884. package/src/components/aspect-ratio/AspectRatio.vue +1 -1
  885. package/src/components/autocomplete/autocomplete.variants.ts +1 -1
  886. package/src/components/autocomplete/composables/useAutocomplete.ts +1 -1
  887. package/src/components/autocomplete/types.ts +1 -16
  888. package/src/components/banner/utils/direction.ts +1 -10
  889. package/src/components/breadcrumb/BreadcrumbItem.vue +2 -1
  890. package/src/components/button/Button.vue +2 -1
  891. package/src/components/calendar/utils/format.ts +1 -23
  892. package/src/components/card/Card.vue +2 -1
  893. package/src/components/checkbox/Checkbox.vue +1 -1
  894. package/src/components/checkbox-group/CheckboxGroup.vue +1 -1
  895. package/src/components/chip/Chip.vue +2 -1
  896. package/src/components/chip/composables/useChipRoot.ts +1 -1
  897. package/src/components/code-block/highlighter.ts +1 -98
  898. package/src/components/collapsible/Collapsible.vue +2 -1
  899. package/src/components/collapsible/CollapsibleContent.vue +1 -1
  900. package/src/components/collapsible/CollapsibleTrigger.vue +8 -1
  901. package/src/components/command-palette/utils/hotkey.ts +1 -27
  902. package/src/components/command-palette/utils/match.ts +5 -75
  903. package/src/components/data-list/composables/useDataList.ts +2 -4
  904. package/src/components/data-list/utils/scroll.ts +1 -26
  905. package/src/components/data-table/column-sizing-styles.ts +1 -40
  906. package/src/components/data-table/column-sizing.ts +1 -101
  907. package/src/components/data-table/composables/useDataTable.ts +103 -123
  908. package/src/components/data-table/composables/useTableColumns.ts +38 -113
  909. package/src/components/data-table/composables/useTableDrag.ts +21 -11
  910. package/src/components/data-table/composables/useTableExport.ts +8 -32
  911. package/src/components/data-table/composables/useTableResize.ts +13 -17
  912. package/src/components/data-table/composables/useTableResizeHandles.ts +6 -21
  913. package/src/components/data-table/types.ts +15 -155
  914. package/src/components/data-table/utils.ts +1 -75
  915. package/src/components/date-range-field/utils/validity.ts +1 -21
  916. package/src/components/divider/Divider.vue +1 -1
  917. package/src/components/editable/editable.variants.ts +1 -1
  918. package/src/components/file-upload/utils/select.ts +1 -58
  919. package/src/components/file-upload/utils/size.ts +1 -16
  920. package/src/components/float-button/FloatButton.vue +4 -11
  921. package/src/components/float-button/float-button.variants.ts +1 -1
  922. package/src/components/float-button/types.ts +3 -2
  923. package/src/components/form/composables/useForm.ts +24 -135
  924. package/src/components/form/standard-schema.ts +1 -26
  925. package/src/components/form/utils/errors.ts +1 -48
  926. package/src/components/form/utils/focus.ts +1 -10
  927. package/src/components/form/utils/values.ts +1 -23
  928. package/src/components/form-field/FormField.vue +3 -2
  929. package/src/components/heading/Heading.vue +1 -1
  930. package/src/components/icon-button/IconButton.vue +2 -1
  931. package/src/components/image/Image.vue +1 -1
  932. package/src/components/indicator/Indicator.vue +2 -1
  933. package/src/components/input/InputAction.vue +1 -1
  934. package/src/components/lightbox/types.ts +1 -14
  935. package/src/components/lightbox/utils/clip.ts +1 -117
  936. package/src/components/lightbox/utils/download.ts +1 -29
  937. package/src/components/lightbox/utils/gesture.ts +1 -54
  938. package/src/components/lightbox/utils/paging.ts +1 -33
  939. package/src/components/lightbox/utils/pose.ts +1 -142
  940. package/src/components/lightbox/utils/source.ts +1 -17
  941. package/src/components/lightbox/utils/zoom.ts +1 -127
  942. package/src/components/link/Link.vue +2 -1
  943. package/src/components/meter-group/utils/tones.ts +1 -14
  944. package/src/components/multi-select/MultiSelect.vue +3 -1
  945. package/src/components/nav-link/NavLink.vue +33 -4
  946. package/src/components/nav-link/NavLinkChild.ts +57 -0
  947. package/src/components/navigation-menu/NavigationMenuLink.vue +1 -1
  948. package/src/components/number-input/NumberInput.vue +2 -2
  949. package/src/components/pagination/Pagination.vue +1 -1
  950. package/src/components/pagination/PaginationContent.vue +1 -1
  951. package/src/components/pagination/PaginationControl.vue +6 -1
  952. package/src/components/pagination/PaginationPage.vue +1 -1
  953. package/src/components/pagination/composables/usePagination.ts +2 -3
  954. package/src/components/pagination/types.ts +1 -19
  955. package/src/components/pagination/utils/ranges.ts +1 -12
  956. package/src/components/panel/Panel.vue +1 -1
  957. package/src/components/password-input/PasswordInput.vue +6 -0
  958. package/src/components/pin-input/PinInput.vue +1 -1
  959. package/src/components/prev-next/PrevNextLink.vue +2 -1
  960. package/src/components/progress/Progress.vue +1 -1
  961. package/src/components/prose/Prose.vue +2 -1
  962. package/src/components/qr-code/export.ts +1 -65
  963. package/src/components/radio-group/RadioGroup.vue +1 -1
  964. package/src/components/range-calendar/utils/limit.ts +1 -11
  965. package/src/components/range-slider/RangeSlider.vue +1 -1
  966. package/src/components/rating/Rating.vue +1 -1
  967. package/src/components/rating/utils/fill.ts +1 -4
  968. package/src/components/ring-progress/RingProgress.vue +1 -1
  969. package/src/components/ripple/useRipple.ts +10 -198
  970. package/src/components/scroll-area/ScrollArea.vue +6 -18
  971. package/src/components/scroll-area/composables/useEdgeShadow.ts +7 -16
  972. package/src/components/scroll-area/composables/useLayerLock.ts +2 -9
  973. package/src/components/scroll-area/composables/useWheelRedirect.ts +2 -10
  974. package/src/components/scroll-area/scroll-restore.ts +1 -148
  975. package/src/components/search-input/SearchInput.vue +6 -0
  976. package/src/components/section/Section.vue +13 -2
  977. package/src/components/segmented-control/SegmentedControl.vue +2 -1
  978. package/src/components/select/types.ts +1 -23
  979. package/src/components/sidebar/Sidebar.vue +2 -1
  980. package/src/components/sidebar/context.ts +9 -0
  981. package/src/components/slider/Slider.vue +1 -1
  982. package/src/components/slider/SliderHandle.vue +2 -1
  983. package/src/components/split-button/split-button.variants.ts +1 -1
  984. package/src/components/split-button/types.ts +1 -1
  985. package/src/components/splitter/Splitter.vue +1 -1
  986. package/src/components/splitter/SplitterHandle.vue +1 -1
  987. package/src/components/splitter/SplitterPanel.vue +1 -1
  988. package/src/components/spoiler/SpoilerPainter.ts +1 -197
  989. package/src/components/spoiler/utils/irisOrigin.ts +1 -40
  990. package/src/components/spoiler/worklet.ts +1 -199
  991. package/src/components/statistic/Statistic.vue +2 -2
  992. package/src/components/stepper/Stepper.vue +1 -1
  993. package/src/components/stepper/StepperStep.vue +1 -1
  994. package/src/components/switch/Switch.vue +1 -1
  995. package/src/components/table/Table.vue +9 -0
  996. package/src/components/tabs/Tabs.vue +1 -1
  997. package/src/components/tabs/TabsContent.vue +1 -1
  998. package/src/components/tabs/TabsList.vue +10 -1
  999. package/src/components/tabs/TabsTrigger.vue +1 -1
  1000. package/src/components/tag/Tag.vue +2 -1
  1001. package/src/components/text/Text.vue +2 -1
  1002. package/src/components/time/Time.vue +22 -5
  1003. package/src/components/time/utils/relativeTime.ts +1 -20
  1004. package/src/components/toast/Toaster.vue +1 -0
  1005. package/src/components/toast/composables/useToastLayout.ts +12 -24
  1006. package/src/components/toast/store.ts +16 -228
  1007. package/src/components/toggle/Toggle.vue +2 -1
  1008. package/src/components/toolbar/Toolbar.vue +1 -1
  1009. package/src/components/toolbar/ToolbarButton.vue +1 -1
  1010. package/src/components/toolbar/ToolbarLink.vue +1 -1
  1011. package/src/components/toolbar/ToolbarSeparator.vue +1 -1
  1012. package/src/components/toolbar/ToolbarToggleGroup.vue +2 -1
  1013. package/src/components/toolbar/ToolbarToggleItem.vue +1 -1
  1014. package/src/components/toolbar/types.ts +1 -1
  1015. package/src/components/tree/composables/useTree.ts +17 -33
  1016. package/src/components/tree/types.ts +1 -20
  1017. package/src/components/tree/utils/selection.ts +1 -78
  1018. package/src/components/tree-select/types.ts +1 -34
  1019. package/src/components/tree-select/utils/filterTree.ts +1 -19
  1020. package/src/components/virtual-list/composables/useVirtualList.ts +16 -42
  1021. package/src/components/visually-hidden/VisuallyHidden.vue +7 -3
  1022. package/src/lib/caret.ts +1 -48
  1023. package/src/lib/collapse.ts +6 -29
  1024. package/src/lib/date.ts +1 -111
  1025. package/src/lib/field-focus.ts +1 -36
  1026. package/src/lib/overlay-anchor.ts +11 -37
  1027. package/src/lib/pointer-corridor.ts +1 -26
  1028. package/src/lib/reka/useVirtualChoices.ts +55 -133
  1029. package/src/lib/reka/useVirtualTree.ts +22 -65
  1030. package/src/lib/useDirection.ts +2 -1
  1031. package/src/lib/virtual/navigation.ts +1 -26
  1032. package/src/lib/virtual/useVirtualCollection.ts +28 -47
  1033. package/src/lib/virtual/useVirtualWindow.ts +15 -25
  1034. package/src/locale/en-US.ts +1 -220
  1035. package/src/locale/index.ts +9 -53
  1036. package/src/locale/types.ts +1 -225
  1037. package/src/locale/zh-CN.ts +1 -215
  1038. package/src/primitives/accordion/AccordionContent.ts +47 -0
  1039. package/src/primitives/accordion/AccordionHeader.ts +35 -0
  1040. package/src/primitives/accordion/AccordionItem.ts +83 -0
  1041. package/src/primitives/accordion/AccordionRoot.ts +75 -0
  1042. package/src/primitives/accordion/AccordionTrigger.ts +55 -0
  1043. package/src/primitives/accordion/LICENSE +44 -0
  1044. package/src/primitives/accordion/context.ts +34 -0
  1045. package/src/primitives/accordion/index.ts +11 -0
  1046. package/src/primitives/aspect-ratio/AspectRatio.ts +47 -0
  1047. package/src/primitives/aspect-ratio/LICENSE +44 -0
  1048. package/src/primitives/aspect-ratio/index.ts +1 -0
  1049. package/src/primitives/checkbox/CheckboxGroupRoot.ts +93 -0
  1050. package/src/primitives/checkbox/CheckboxRoot.ts +170 -0
  1051. package/src/primitives/checkbox/LICENSE +44 -0
  1052. package/src/primitives/checkbox/context.ts +20 -0
  1053. package/src/primitives/checkbox/index.ts +8 -0
  1054. package/src/primitives/collapsible/CollapsibleContent.ts +124 -0
  1055. package/src/primitives/collapsible/CollapsibleRoot.ts +63 -0
  1056. package/src/primitives/collapsible/CollapsibleTrigger.ts +43 -0
  1057. package/src/primitives/collapsible/LICENSE +44 -0
  1058. package/src/primitives/collapsible/context.ts +13 -0
  1059. package/src/primitives/collapsible/index.ts +12 -0
  1060. package/src/primitives/collection/LICENSE +44 -0
  1061. package/src/primitives/collection/index.ts +82 -0
  1062. package/src/primitives/number-field/LICENSE +21 -0
  1063. package/src/primitives/number-field/NumberFieldDecrement.vue +20 -0
  1064. package/src/primitives/number-field/NumberFieldIncrement.vue +20 -0
  1065. package/src/primitives/number-field/NumberFieldInput.vue +113 -0
  1066. package/src/primitives/number-field/NumberFieldRoot.vue +169 -0
  1067. package/src/primitives/number-field/context.ts +111 -0
  1068. package/src/primitives/number-field/index.ts +14 -0
  1069. package/src/primitives/pagination/LICENSE +44 -0
  1070. package/src/primitives/pagination/PaginationEdge.ts +77 -0
  1071. package/src/primitives/pagination/PaginationList.ts +46 -0
  1072. package/src/primitives/pagination/PaginationListItem.ts +61 -0
  1073. package/src/primitives/pagination/PaginationRoot.ts +73 -0
  1074. package/src/primitives/pagination/context.ts +14 -0
  1075. package/src/primitives/pagination/index.ts +15 -0
  1076. package/src/primitives/pin-input/LICENSE +44 -0
  1077. package/src/primitives/pin-input/PinInputInput.ts +218 -0
  1078. package/src/primitives/pin-input/PinInputRoot.ts +136 -0
  1079. package/src/primitives/pin-input/context.ts +24 -0
  1080. package/src/primitives/pin-input/index.ts +3 -0
  1081. package/src/primitives/presence/LICENSE +44 -0
  1082. package/src/primitives/presence/Presence.ts +70 -0
  1083. package/src/primitives/presence/index.ts +2 -0
  1084. package/src/primitives/presence/usePresence.ts +28 -0
  1085. package/src/primitives/primitive/LICENSE +44 -0
  1086. package/src/primitives/primitive/Primitive.ts +45 -0
  1087. package/src/primitives/primitive/Slot.ts +22 -0
  1088. package/src/primitives/primitive/index.ts +2 -0
  1089. package/src/primitives/progress/LICENSE +44 -0
  1090. package/src/primitives/progress/ProgressIndicator.vue +24 -0
  1091. package/src/primitives/progress/ProgressRoot.vue +95 -0
  1092. package/src/primitives/progress/context.ts +12 -0
  1093. package/src/primitives/progress/index.ts +7 -0
  1094. package/src/primitives/radio-group/LICENSE +44 -0
  1095. package/src/primitives/radio-group/Radio.ts +110 -0
  1096. package/src/primitives/radio-group/RadioGroupIndicator.ts +54 -0
  1097. package/src/primitives/radio-group/RadioGroupItem.ts +116 -0
  1098. package/src/primitives/radio-group/RadioGroupRoot.ts +108 -0
  1099. package/src/primitives/radio-group/context.ts +25 -0
  1100. package/src/primitives/radio-group/index.ts +9 -0
  1101. package/src/primitives/rating/LICENSE +44 -0
  1102. package/src/primitives/rating/RatingItem.ts +35 -0
  1103. package/src/primitives/rating/RatingItemIndicator.ts +87 -0
  1104. package/src/primitives/rating/RatingRoot.ts +111 -0
  1105. package/src/primitives/rating/context.ts +22 -0
  1106. package/src/primitives/rating/index.ts +9 -0
  1107. package/src/primitives/roving-focus/LICENSE +44 -0
  1108. package/src/primitives/roving-focus/RovingFocusGroup.vue +125 -0
  1109. package/src/primitives/roving-focus/RovingFocusItem.vue +99 -0
  1110. package/src/primitives/roving-focus/context.ts +18 -0
  1111. package/src/primitives/roving-focus/index.ts +7 -0
  1112. package/src/primitives/separator/LICENSE +44 -0
  1113. package/src/primitives/separator/Separator.vue +26 -0
  1114. package/src/primitives/separator/index.ts +1 -0
  1115. package/src/primitives/slider/LICENSE +44 -0
  1116. package/src/primitives/slider/SliderImpl.ts +66 -0
  1117. package/src/primitives/slider/SliderOrientation.ts +100 -0
  1118. package/src/primitives/slider/SliderRoot.ts +214 -0
  1119. package/src/primitives/slider/SliderThumb.ts +139 -0
  1120. package/src/primitives/slider/SliderTrack.ts +37 -0
  1121. package/src/primitives/slider/context.ts +31 -0
  1122. package/src/primitives/slider/index.ts +8 -0
  1123. package/src/primitives/splitter/LICENSE +44 -0
  1124. package/src/primitives/splitter/SplitterGroup.ts +642 -0
  1125. package/src/primitives/splitter/SplitterPanel.ts +170 -0
  1126. package/src/primitives/splitter/SplitterResizeHandle.ts +170 -0
  1127. package/src/primitives/splitter/behaviors.ts +173 -0
  1128. package/src/primitives/splitter/context.ts +33 -0
  1129. package/src/primitives/splitter/index.ts +13 -0
  1130. package/src/primitives/stepper/LICENSE +44 -0
  1131. package/src/primitives/stepper/StepperItem.ts +68 -0
  1132. package/src/primitives/stepper/StepperParts.ts +103 -0
  1133. package/src/primitives/stepper/StepperRoot.ts +171 -0
  1134. package/src/primitives/stepper/StepperTrigger.ts +119 -0
  1135. package/src/primitives/stepper/context.ts +29 -0
  1136. package/src/primitives/stepper/index.ts +17 -0
  1137. package/src/primitives/switch/LICENSE +44 -0
  1138. package/src/primitives/switch/SwitchRoot.ts +151 -0
  1139. package/src/primitives/switch/index.ts +6 -0
  1140. package/src/primitives/tabs/LICENSE +44 -0
  1141. package/src/primitives/tabs/TabsContent.ts +94 -0
  1142. package/src/primitives/tabs/TabsList.ts +52 -0
  1143. package/src/primitives/tabs/TabsRoot.ts +99 -0
  1144. package/src/primitives/tabs/TabsTrigger.ts +97 -0
  1145. package/src/primitives/tabs/context.ts +22 -0
  1146. package/src/primitives/tabs/index.ts +5 -0
  1147. package/src/primitives/toggle/LICENSE +44 -0
  1148. package/src/primitives/toggle/Toggle.ts +116 -0
  1149. package/src/primitives/toggle/index.ts +1 -0
  1150. package/src/primitives/toggle-group/LICENSE +44 -0
  1151. package/src/primitives/toggle-group/ToggleGroupItem.ts +80 -0
  1152. package/src/primitives/toggle-group/ToggleGroupRoot.ts +113 -0
  1153. package/src/primitives/toggle-group/context.ts +19 -0
  1154. package/src/primitives/toggle-group/index.ts +7 -0
  1155. package/src/primitives/toolbar/LICENSE +44 -0
  1156. package/src/primitives/toolbar/ToolbarButton.ts +44 -0
  1157. package/src/primitives/toolbar/ToolbarRoot.ts +53 -0
  1158. package/src/primitives/toolbar/ToolbarToggleGroup.ts +69 -0
  1159. package/src/primitives/toolbar/ToolbarToggleItem.ts +43 -0
  1160. package/src/primitives/toolbar/context.ts +12 -0
  1161. package/src/primitives/toolbar/index.ts +9 -0
  1162. package/src/primitives/utils/LICENSE +44 -0
  1163. package/src/primitives/utils/config.ts +1 -0
  1164. package/src/primitives/utils/createContext.ts +34 -0
  1165. package/src/primitives/utils/renderSlotFragments.ts +8 -0
  1166. package/src/primitives/utils/timers.ts +6 -0
  1167. package/src/primitives/utils/types.ts +1 -0
  1168. package/src/primitives/utils/useComposing.ts +44 -0
  1169. package/src/primitives/utils/useDirection.ts +9 -0
  1170. package/src/primitives/utils/useEmitAsProps.ts +13 -0
  1171. package/src/primitives/utils/useFormControl.ts +6 -0
  1172. package/src/primitives/utils/useForwardExpose.ts +78 -0
  1173. package/src/primitives/utils/useForwardProps.ts +29 -0
  1174. package/src/primitives/utils/useForwardPropsEmits.ts +12 -0
  1175. package/src/primitives/utils/useForwardScopeId.ts +6 -0
  1176. package/src/primitives/utils/useId.ts +9 -0
  1177. package/src/primitives/utils/useNonce.ts +7 -0
  1178. package/src/primitives/utils/usePrimitiveElement.ts +12 -0
  1179. package/src/primitives/utils/useSingleOrMultipleValue.ts +36 -0
  1180. package/src/primitives/utils/useSize.ts +25 -0
  1181. package/src/primitives/utils/useVModel.ts +37 -0
  1182. package/src/primitives/visually-hidden/LICENSE +21 -0
  1183. package/src/primitives/visually-hidden/VisuallyHidden.vue +30 -0
  1184. package/src/primitives/visually-hidden/VisuallyHiddenInput.ts +97 -0
  1185. package/src/primitives/visually-hidden/VisuallyHiddenInputBubble.vue +49 -0
  1186. package/src/primitives/visually-hidden/index.ts +2 -0
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023 UnoVue <https://github.com/unovue>
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,34 @@
1
+ import { arrowNavigation } from '../arrow-navigation'
2
+
3
+ export const ACCORDION_NAVIGATION_KEYS = [
4
+ 'ArrowUp',
5
+ 'ArrowDown',
6
+ 'ArrowLeft',
7
+ 'ArrowRight',
8
+ 'Home',
9
+ 'End',
10
+ ]
11
+
12
+ export function isAccordionItemOpen(isSingle: boolean, modelValue: unknown, value: string) {
13
+ return isSingle ? value === modelValue : Array.isArray(modelValue) && modelValue.includes(value)
14
+ }
15
+
16
+ export function isAccordionTriggerLocked(isSingle: boolean, open: boolean, collapsible: boolean) {
17
+ return isSingle && open && !collapsible
18
+ }
19
+
20
+ export function navigateAccordion(
21
+ event: KeyboardEvent,
22
+ parent: HTMLElement | null | undefined,
23
+ options: { orientation: 'vertical' | 'horizontal'; dir: 'ltr' | 'rtl'; attributeName: string },
24
+ ) {
25
+ const target = event.target as HTMLElement
26
+ const items = Array.from(parent?.querySelectorAll(options.attributeName) ?? [])
27
+ if (!items.includes(target)) return
28
+ arrowNavigation(event, target, parent ?? undefined, {
29
+ arrowKeyOptions: options.orientation,
30
+ dir: options.dir,
31
+ focus: true,
32
+ attributeName: options.attributeName,
33
+ })
34
+ }
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023 UnoVue <https://github.com/unovue>
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,90 @@
1
+ import { COLLECTION_ITEM } from '../collection'
2
+
3
+ const IGNORED = ['INPUT', 'TEXTAREA']
4
+
5
+ export interface ArrowNavigationOptions {
6
+ arrowKeyOptions?: 'horizontal' | 'vertical' | 'both'
7
+ attributeName?: string
8
+ itemsArray?: HTMLElement[]
9
+ loop?: boolean
10
+ dir?: 'ltr' | 'rtl'
11
+ preventScroll?: boolean
12
+ enableIgnoredElement?: boolean
13
+ focus?: boolean
14
+ }
15
+
16
+ export function arrowNavigation(
17
+ event: KeyboardEvent,
18
+ currentElement: HTMLElement | null | undefined,
19
+ parentElement: HTMLElement | null | undefined,
20
+ options: ArrowNavigationOptions = {},
21
+ ): HTMLElement | null {
22
+ if (
23
+ !currentElement ||
24
+ (options.enableIgnoredElement && IGNORED.includes(currentElement.nodeName))
25
+ )
26
+ return null
27
+ const {
28
+ arrowKeyOptions = 'both',
29
+ attributeName = `[${COLLECTION_ITEM}]`,
30
+ itemsArray = [],
31
+ loop = true,
32
+ dir = 'ltr',
33
+ preventScroll = true,
34
+ focus = false,
35
+ } = options
36
+ const right = event.key === 'ArrowRight'
37
+ const left = event.key === 'ArrowLeft'
38
+ const up = event.key === 'ArrowUp'
39
+ const down = event.key === 'ArrowDown'
40
+ const home = event.key === 'Home'
41
+ const end = event.key === 'End'
42
+ const goingVertical = up || down
43
+ const goingHorizontal = right || left
44
+ if (
45
+ !home &&
46
+ !end &&
47
+ ((!goingVertical && !goingHorizontal) ||
48
+ (arrowKeyOptions === 'vertical' && goingHorizontal) ||
49
+ (arrowKeyOptions === 'horizontal' && goingVertical))
50
+ )
51
+ return null
52
+ const items = parentElement
53
+ ? Array.from(parentElement.querySelectorAll<HTMLElement>(attributeName))
54
+ : itemsArray
55
+ if (!items.length) return null
56
+ if (preventScroll) event.preventDefault()
57
+ let item: HTMLElement | null = null
58
+ if (goingHorizontal || goingVertical) {
59
+ const goForward = goingVertical ? down : dir === 'ltr' ? right : left
60
+ item = findNextFocusableElement(items, currentElement, { goForward, loop })
61
+ } else if (home) item = items.at(0) || null
62
+ else if (end) item = items.at(-1) || null
63
+ if (focus) item?.focus()
64
+ return item
65
+ }
66
+
67
+ function findNextFocusableElement(
68
+ elements: HTMLElement[],
69
+ currentElement: HTMLElement,
70
+ options: { goForward: boolean; loop: boolean },
71
+ iterations = elements.includes(currentElement) ? elements.length : elements.length + 1,
72
+ ): HTMLElement | null {
73
+ if (--iterations === 0) return null
74
+ const index = elements.indexOf(currentElement)
75
+ const newIndex =
76
+ index === -1
77
+ ? options.goForward
78
+ ? 0
79
+ : elements.length - 1
80
+ : options.goForward
81
+ ? index + 1
82
+ : index - 1
83
+ if (!options.loop && (newIndex < 0 || newIndex >= elements.length)) return null
84
+ const candidate = elements[(newIndex + elements.length) % elements.length]
85
+ if (!candidate) return null
86
+ const disabled =
87
+ candidate.hasAttribute('disabled') && candidate.getAttribute('disabled') !== 'false'
88
+ if (disabled) return findNextFocusableElement(elements, candidate, options, iterations)
89
+ return candidate
90
+ }
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023 UnoVue <https://github.com/unovue>
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,115 @@
1
+ import { blockingLayerCount } from '../dismissable-layer'
2
+
3
+ export interface ScrollBodyOption {
4
+ padding?: boolean | number | string
5
+ margin?: boolean | number | string
6
+ }
7
+
8
+ export type ScrollBody = boolean | ScrollBodyOption
9
+
10
+ const locks = new Map<symbol, boolean>()
11
+ let initialOverflow: string | undefined
12
+ let releaseTouchMove: (() => void) | undefined
13
+ let active = false
14
+
15
+ const isIOS =
16
+ typeof navigator !== 'undefined' &&
17
+ (/iP(?:ad|hone|od)/.test(navigator.userAgent) ||
18
+ (navigator.maxTouchPoints > 2 && /iPad|Macintosh/.test(navigator.userAgent)))
19
+
20
+ function scrollable(element: Element): boolean {
21
+ const style = getComputedStyle(element)
22
+ if (
23
+ style.overflowX === 'scroll' ||
24
+ style.overflowY === 'scroll' ||
25
+ (style.overflowX === 'auto' && element.clientWidth < element.scrollWidth) ||
26
+ (style.overflowY === 'auto' && element.clientHeight < element.scrollHeight)
27
+ )
28
+ return true
29
+ const parent = element.parentNode
30
+ if (!(parent instanceof Element) || parent.tagName === 'BODY') return false
31
+ return scrollable(parent)
32
+ }
33
+
34
+ function preventTouchMove(event: TouchEvent) {
35
+ const target = event.target
36
+ if (target instanceof Element && scrollable(target)) return
37
+ if (event.touches.length > 1) return
38
+ if (event.cancelable) event.preventDefault()
39
+ }
40
+
41
+ function locked() {
42
+ for (const value of locks.values()) if (value) return true
43
+ return false
44
+ }
45
+
46
+ function size(value: boolean | number | string) {
47
+ return typeof value === 'number' ? `${value}px` : String(value)
48
+ }
49
+
50
+ function offsets(scrollBody: ScrollBody, scrollbar: number) {
51
+ if (!scrollBody) return { padding: 0, margin: 0 }
52
+ if (typeof scrollBody !== 'object') return { padding: scrollbar, margin: 0 }
53
+ const pick = (value: boolean | number | string | undefined, fallback: number) =>
54
+ value === true ? scrollbar : (value ?? fallback)
55
+ return { padding: pick(scrollBody.padding, scrollbar), margin: pick(scrollBody.margin, 0) }
56
+ }
57
+
58
+ function reset() {
59
+ const body = document.body
60
+ body.style.paddingRight = ''
61
+ body.style.marginRight = ''
62
+ if (blockingLayerCount() === 0) body.style.pointerEvents = ''
63
+ document.documentElement.style.removeProperty('--scrollbar-width')
64
+ body.style.overflow = initialOverflow ?? ''
65
+ releaseTouchMove?.()
66
+ releaseTouchMove = undefined
67
+ initialOverflow = undefined
68
+ }
69
+
70
+ function apply(scrollBody: ScrollBody, defer: (callback: () => void) => void) {
71
+ const body = document.body
72
+ if (initialOverflow === undefined) initialOverflow = body.style.overflow
73
+ const scrollbar = window.innerWidth - document.documentElement.clientWidth
74
+ const { padding, margin } = offsets(scrollBody, scrollbar)
75
+ if (scrollbar > 0) {
76
+ body.style.paddingRight = size(padding)
77
+ body.style.marginRight = size(margin)
78
+ document.documentElement.style.setProperty('--scrollbar-width', `${scrollbar}px`)
79
+ body.style.overflow = 'hidden'
80
+ }
81
+ if (isIOS) {
82
+ document.addEventListener('touchmove', preventTouchMove, { passive: false })
83
+ releaseTouchMove = () => document.removeEventListener('touchmove', preventTouchMove)
84
+ }
85
+ defer(() => {
86
+ if (!locked()) return
87
+ body.style.pointerEvents = 'none'
88
+ body.style.overflow = 'hidden'
89
+ })
90
+ }
91
+
92
+ function sync(scrollBody: ScrollBody, defer: (callback: () => void) => void) {
93
+ const next = locked()
94
+ if (next === active) return
95
+ active = next
96
+ if (next) apply(scrollBody, defer)
97
+ else reset()
98
+ }
99
+
100
+ export function createScrollLock(
101
+ scrollBody: () => ScrollBody,
102
+ defer: (callback: () => void) => void = queueMicrotask,
103
+ ) {
104
+ const id = Symbol('scroll-lock')
105
+ return {
106
+ set(value: boolean) {
107
+ locks.set(id, value)
108
+ sync(scrollBody(), defer)
109
+ },
110
+ release() {
111
+ locks.delete(id)
112
+ sync(scrollBody(), defer)
113
+ },
114
+ }
115
+ }
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023 UnoVue <https://github.com/unovue>
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,23 @@
1
+ export type CheckedState = boolean | 'indeterminate'
2
+
3
+ export function isIndeterminate(checked: unknown): checked is 'indeterminate' {
4
+ return checked === 'indeterminate'
5
+ }
6
+
7
+ export function getCheckedState(checked: unknown) {
8
+ return isIndeterminate(checked) ? 'indeterminate' : checked ? 'checked' : 'unchecked'
9
+ }
10
+
11
+ export function ariaChecked(state: CheckedState) {
12
+ return isIndeterminate(state) ? 'mixed' : state
13
+ }
14
+
15
+ export function nextCheckedValue<T>(
16
+ current: unknown,
17
+ checked: boolean,
18
+ trueValue: T,
19
+ falseValue: T,
20
+ ) {
21
+ if (isIndeterminate(current)) return trueValue
22
+ return checked ? falseValue : trueValue
23
+ }
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023 UnoVue <https://github.com/unovue>
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,31 @@
1
+ export interface CollapsibleMotion {
2
+ transitionDuration: string
3
+ animationName: string
4
+ }
5
+
6
+ export function openState(open: unknown) {
7
+ return open ? 'open' : 'closed'
8
+ }
9
+
10
+ export function measureCollapsibleContent(
11
+ node: HTMLElement,
12
+ saved: CollapsibleMotion | undefined,
13
+ suppressed: boolean,
14
+ ) {
15
+ const motion = saved || {
16
+ transitionDuration: node.style.transitionDuration,
17
+ animationName: node.style.animationName,
18
+ }
19
+ node.style.transitionDuration = '0s'
20
+ node.style.animationName = 'none'
21
+ const rect = node.getBoundingClientRect()
22
+ if (!suppressed) {
23
+ node.style.transitionDuration = motion.transitionDuration
24
+ node.style.animationName = motion.animationName
25
+ }
26
+ return { motion, width: rect.width, height: rect.height }
27
+ }
28
+
29
+ export function isCollapsibleContentRendered(present: boolean, unmountOnHide: boolean) {
30
+ return unmountOnHide ? present : true
31
+ }
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023 UnoVue <https://github.com/unovue>
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,19 @@
1
+ export const COLLECTION_ITEM = 'data-reka-collection-item'
2
+
3
+ export interface CollectionEntry {
4
+ ref: HTMLElement
5
+ }
6
+
7
+ export function orderCollectionItems<T extends CollectionEntry>(
8
+ root: HTMLElement | null | undefined,
9
+ items: Iterable<T>,
10
+ includeDisabled = false,
11
+ ) {
12
+ if (!root) return []
13
+ const nodes = Array.from(root.querySelectorAll(`[${COLLECTION_ITEM}]`))
14
+ const order = new Map(nodes.map((node, index) => [node, index]))
15
+ const ordered = Array.from(items).sort(
16
+ (a, b) => (order.get(a.ref) ?? -1) - (order.get(b.ref) ?? -1),
17
+ )
18
+ return includeDisabled ? ordered : ordered.filter(item => item.ref.dataset.disabled !== '')
19
+ }
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023 UnoVue <https://github.com/unovue>
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,203 @@
1
+ export type PointerDownOutsideEvent = CustomEvent<{ originalEvent: PointerEvent }>
2
+ export type FocusOutsideEvent = CustomEvent<{ originalEvent: FocusEvent }>
3
+
4
+ export const POINTER_DOWN_OUTSIDE = 'dismissableLayer.pointerDownOutside'
5
+ export const FOCUS_OUTSIDE = 'dismissableLayer.focusOutside'
6
+
7
+ const layers = new Set<HTMLElement>()
8
+ const blocking = new Set<HTMLElement>()
9
+ const branches = new Set<HTMLElement>()
10
+ const listeners = new Set<() => void>()
11
+ let originalBodyPointerEvents: string | undefined
12
+ let version = 0
13
+
14
+ function changed() {
15
+ version += 1
16
+ for (const listener of listeners) listener()
17
+ }
18
+
19
+ export function subscribeLayers(listener: () => void) {
20
+ listeners.add(listener)
21
+ return () => {
22
+ listeners.delete(listener)
23
+ }
24
+ }
25
+
26
+ export function layersVersion() {
27
+ return version
28
+ }
29
+
30
+ export function addLayer(element: HTMLElement) {
31
+ layers.add(element)
32
+ changed()
33
+ return () => {
34
+ if (layers.delete(element)) changed()
35
+ }
36
+ }
37
+
38
+ export function addBranch(element: HTMLElement) {
39
+ branches.add(element)
40
+ changed()
41
+ return () => {
42
+ if (branches.delete(element)) changed()
43
+ }
44
+ }
45
+
46
+ export function blockOutsidePointerEvents(element: HTMLElement) {
47
+ const body = element.ownerDocument.body
48
+ if (blocking.size === 0) {
49
+ originalBodyPointerEvents = body.style.pointerEvents
50
+ body.style.pointerEvents = 'none'
51
+ }
52
+ blocking.add(element)
53
+ changed()
54
+ return () => {
55
+ if (!blocking.delete(element)) return
56
+ if (blocking.size === 0 && originalBodyPointerEvents != null)
57
+ body.style.pointerEvents = originalBodyPointerEvents
58
+ changed()
59
+ }
60
+ }
61
+
62
+ export function releaseLayer(element: HTMLElement) {
63
+ const removed = layers.delete(element)
64
+ const unblocked = blocking.delete(element)
65
+ if (removed || unblocked) changed()
66
+ }
67
+
68
+ export function blockingLayerCount() {
69
+ return blocking.size
70
+ }
71
+
72
+ export function layerIndex(element: HTMLElement | null | undefined) {
73
+ return element ? [...layers].indexOf(element) : -1
74
+ }
75
+
76
+ export function isHighestLayer(element: HTMLElement | null | undefined) {
77
+ return layerIndex(element) === layers.size - 1
78
+ }
79
+
80
+ export function bodyPointerEventsDisabled() {
81
+ return blocking.size > 0
82
+ }
83
+
84
+ export function pointerEventsEnabled(element: HTMLElement | null | undefined) {
85
+ const highest = [...blocking].at(-1)
86
+ return layerIndex(element) >= (highest ? [...layers].indexOf(highest) : -1)
87
+ }
88
+
89
+ export function layerPointerEvents(element: HTMLElement | null | undefined) {
90
+ if (!bodyPointerEventsDisabled()) return undefined
91
+ return pointerEventsEnabled(element) ? 'auto' : 'none'
92
+ }
93
+
94
+ export function inBranch(target: EventTarget | null) {
95
+ return [...branches].some(branch => branch.contains(target as Node | null))
96
+ }
97
+
98
+ export function isLayerExist(layer: HTMLElement, target: EventTarget | null) {
99
+ if (!(target instanceof Element)) return false
100
+ const targetLayer = target.closest('[data-dismissable-layer]')
101
+ const mainLayer =
102
+ layer.dataset.dismissableLayer === ''
103
+ ? layer
104
+ : layer.querySelector<HTMLElement>('[data-dismissable-layer]')
105
+ const all = Array.from(layer.ownerDocument.querySelectorAll('[data-dismissable-layer]'))
106
+ return (
107
+ !!targetLayer &&
108
+ !!mainLayer &&
109
+ (mainLayer === targetLayer || all.indexOf(mainLayer) < all.indexOf(targetLayer))
110
+ )
111
+ }
112
+
113
+ export function handleAndDispatchCustomEvent<E extends CustomEvent<{ originalEvent: Event }>>(
114
+ name: string,
115
+ handler: ((event: E) => void) | undefined,
116
+ detail: E['detail'],
117
+ ) {
118
+ const target = detail.originalEvent.target as EventTarget
119
+ const event = new CustomEvent(name, { bubbles: false, cancelable: true, detail })
120
+ if (handler) target.addEventListener(name, handler as EventListener, { once: true })
121
+ target.dispatchEvent(event)
122
+ }
123
+
124
+ export interface OutsideWatcher<E> {
125
+ element: () => HTMLElement | null | undefined
126
+ onOutside: (event: E) => void
127
+ }
128
+
129
+ export function watchPointerDownOutside({
130
+ element,
131
+ onOutside,
132
+ }: OutsideWatcher<PointerDownOutsideEvent>) {
133
+ const ownerDocument = element()?.ownerDocument ?? globalThis.document
134
+ let inside = false
135
+ let pendingClick: () => void = () => {}
136
+
137
+ const handlePointerDown = (event: PointerEvent) => {
138
+ const layer = element()
139
+ const target = event.target as HTMLElement | null
140
+ if (!layer || !target) return
141
+ if (isLayerExist(layer, target)) {
142
+ inside = false
143
+ return
144
+ }
145
+ if (!inside) {
146
+ const dispatch = () =>
147
+ handleAndDispatchCustomEvent(POINTER_DOWN_OUTSIDE, onOutside, { originalEvent: event })
148
+ if (event.pointerType === 'touch') {
149
+ ownerDocument.removeEventListener('click', pendingClick)
150
+ pendingClick = dispatch
151
+ ownerDocument.addEventListener('click', pendingClick, { once: true })
152
+ } else dispatch()
153
+ } else ownerDocument.removeEventListener('click', pendingClick)
154
+ inside = false
155
+ }
156
+
157
+ const timer = window.setTimeout(() => {
158
+ ownerDocument.addEventListener('pointerdown', handlePointerDown)
159
+ }, 0)
160
+
161
+ return {
162
+ onPointerDownCapture() {
163
+ inside = true
164
+ },
165
+ stop() {
166
+ window.clearTimeout(timer)
167
+ ownerDocument.removeEventListener('pointerdown', handlePointerDown)
168
+ ownerDocument.removeEventListener('click', pendingClick)
169
+ },
170
+ }
171
+ }
172
+
173
+ export function watchFocusOutside({
174
+ element,
175
+ onOutside,
176
+ settle,
177
+ }: OutsideWatcher<FocusOutsideEvent> & { settle?: () => Promise<void> }) {
178
+ const ownerDocument = element()?.ownerDocument ?? globalThis.document
179
+ let inside = false
180
+
181
+ const handleFocus = async (event: FocusEvent) => {
182
+ if (!element()) return
183
+ if (settle) await settle()
184
+ const layer = element()
185
+ const target = event.target as HTMLElement | null
186
+ if (!layer || !target || isLayerExist(layer, target)) return
187
+ if (!inside) handleAndDispatchCustomEvent(FOCUS_OUTSIDE, onOutside, { originalEvent: event })
188
+ }
189
+
190
+ ownerDocument.addEventListener('focusin', handleFocus)
191
+
192
+ return {
193
+ onFocusCapture() {
194
+ inside = true
195
+ },
196
+ onBlurCapture() {
197
+ inside = false
198
+ },
199
+ stop() {
200
+ ownerDocument.removeEventListener('focusin', handleFocus)
201
+ },
202
+ }
203
+ }