@rivetjs/cdk 0.0.0-stage → 0.1.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1298) hide show
  1. package/LICENSE +21 -0
  2. package/NOTICE +483 -0
  3. package/README.md +10 -2
  4. package/_adapters/collection.d.ts +160 -0
  5. package/_adapters/collection.js +235 -0
  6. package/_adapters/collections.d.ts +325 -0
  7. package/_adapters/collections.js +934 -0
  8. package/_adapters/dom-collection.d.ts +42 -0
  9. package/_adapters/dom-collection.js +228 -0
  10. package/_adapters/grid-selection.d.ts +115 -0
  11. package/_adapters/grid-selection.js +436 -0
  12. package/_adapters/interactions.d.ts +19 -0
  13. package/_adapters/interactions.js +45 -0
  14. package/_adapters/intl.d.ts +8 -0
  15. package/_adapters/intl.js +106 -0
  16. package/_adapters/press.d.ts +22 -0
  17. package/_adapters/press.js +34 -0
  18. package/_adapters/selectable.d.ts +132 -0
  19. package/_adapters/selectable.js +599 -0
  20. package/_adapters/selection.d.ts +120 -0
  21. package/_adapters/selection.js +709 -0
  22. package/_adapters/type-select.d.ts +8 -0
  23. package/_adapters/type-select.js +59 -0
  24. package/a11y/aria-describer.d.ts +46 -0
  25. package/a11y/aria-describer.js +169 -0
  26. package/a11y/focus-monitor.d.ts +98 -0
  27. package/a11y/focus-monitor.js +321 -0
  28. package/a11y/focus-trap.d.ts +137 -0
  29. package/a11y/focus-trap.js +378 -0
  30. package/a11y/high-contrast.d.ts +26 -0
  31. package/a11y/high-contrast.js +84 -0
  32. package/a11y/index.d.ts +37 -0
  33. package/a11y/index.js +97 -0
  34. package/a11y/interactivity-checker.d.ts +18 -0
  35. package/a11y/interactivity-checker.js +126 -0
  36. package/a11y/key-manager.d.ts +152 -0
  37. package/a11y/key-manager.js +397 -0
  38. package/a11y/live-announcer.d.ts +53 -0
  39. package/a11y/live-announcer.js +143 -0
  40. package/accordion/index.d.ts +2 -0
  41. package/accordion/index.jsx +10 -0
  42. package/announcer/index.d.ts +8 -0
  43. package/announcer/index.jsx +22 -0
  44. package/announcer/live-announcer.d.ts +15 -0
  45. package/announcer/live-announcer.js +123 -0
  46. package/autocomplete/behaviour.d.ts +94 -0
  47. package/autocomplete/behaviour.jsx +423 -0
  48. package/autocomplete/contexts.d.ts +54 -0
  49. package/autocomplete/contexts.js +28 -0
  50. package/autocomplete/index.d.ts +12 -0
  51. package/autocomplete/index.jsx +31 -0
  52. package/autocomplete/intl.d.ts +2 -0
  53. package/autocomplete/intl.js +36 -0
  54. package/bidi/bidi-dir.d.ts +23 -0
  55. package/bidi/bidi-dir.jsx +36 -0
  56. package/bidi/index.d.ts +58 -0
  57. package/bidi/index.js +84 -0
  58. package/breadcrumbs/behaviour.d.ts +6 -0
  59. package/breadcrumbs/behaviour.js +17 -0
  60. package/breadcrumbs/index.d.ts +68 -0
  61. package/breadcrumbs/index.jsx +224 -0
  62. package/breadcrumbs/intl.d.ts +3 -0
  63. package/breadcrumbs/intl.js +104 -0
  64. package/button/behaviour.d.ts +61 -0
  65. package/button/behaviour.js +90 -0
  66. package/button/index.d.ts +38 -0
  67. package/button/index.jsx +376 -0
  68. package/button/press.d.ts +25 -0
  69. package/button/press.js +54 -0
  70. package/calendar/behaviour.d.ts +250 -0
  71. package/calendar/behaviour.jsx +939 -0
  72. package/calendar/index.d.ts +157 -0
  73. package/calendar/index.jsx +484 -0
  74. package/calendar/intl.d.ts +3 -0
  75. package/calendar/intl.js +36 -0
  76. package/carousel/behaviour.d.ts +50 -0
  77. package/carousel/behaviour.jsx +365 -0
  78. package/carousel/engine/Alignment.d.ts +5 -0
  79. package/carousel/engine/Alignment.js +24 -0
  80. package/carousel/engine/Animations.d.ts +13 -0
  81. package/carousel/engine/Animations.js +28 -0
  82. package/carousel/engine/Axis.d.ts +14 -0
  83. package/carousel/engine/Axis.js +35 -0
  84. package/carousel/engine/Counter.d.ts +7 -0
  85. package/carousel/engine/Counter.js +32 -0
  86. package/carousel/engine/DragHandler.d.ts +22 -0
  87. package/carousel/engine/DragHandler.js +141 -0
  88. package/carousel/engine/DragTracker.d.ts +10 -0
  89. package/carousel/engine/DragTracker.js +29 -0
  90. package/carousel/engine/EmblaCarousel.d.ts +32 -0
  91. package/carousel/engine/EmblaCarousel.js +177 -0
  92. package/carousel/engine/Engine.d.ts +64 -0
  93. package/carousel/engine/Engine.js +137 -0
  94. package/carousel/engine/EventHandler.d.ts +27 -0
  95. package/carousel/engine/EventHandler.js +33 -0
  96. package/carousel/engine/EventStore.d.ts +9 -0
  97. package/carousel/engine/EventStore.js +25 -0
  98. package/carousel/engine/NodeRects.d.ts +12 -0
  99. package/carousel/engine/NodeRects.js +18 -0
  100. package/carousel/engine/Options.d.ts +40 -0
  101. package/carousel/engine/Options.js +22 -0
  102. package/carousel/engine/OptionsHandler.d.ts +10 -0
  103. package/carousel/engine/OptionsHandler.js +26 -0
  104. package/carousel/engine/PercentOfView.d.ts +4 -0
  105. package/carousel/engine/PercentOfView.js +9 -0
  106. package/carousel/engine/Plugins.d.ts +16 -0
  107. package/carousel/engine/Plugins.js +1 -0
  108. package/carousel/engine/PluginsHandler.d.ts +8 -0
  109. package/carousel/engine/PluginsHandler.js +16 -0
  110. package/carousel/engine/ResizeHandler.d.ts +13 -0
  111. package/carousel/engine/ResizeHandler.js +51 -0
  112. package/carousel/engine/ScrollBounds.d.ts +10 -0
  113. package/carousel/engine/ScrollBounds.js +41 -0
  114. package/carousel/engine/ScrollContain.d.ts +7 -0
  115. package/carousel/engine/ScrollContain.js +52 -0
  116. package/carousel/engine/ScrollLimit.d.ts +5 -0
  117. package/carousel/engine/ScrollLimit.js +13 -0
  118. package/carousel/engine/ScrollLooper.d.ts +6 -0
  119. package/carousel/engine/ScrollLooper.js +26 -0
  120. package/carousel/engine/ScrollProgress.d.ts +5 -0
  121. package/carousel/engine/ScrollProgress.js +11 -0
  122. package/carousel/engine/ScrollSnaps.d.ts +9 -0
  123. package/carousel/engine/ScrollSnaps.js +26 -0
  124. package/carousel/engine/ScrollTarget.d.ts +12 -0
  125. package/carousel/engine/ScrollTarget.js +47 -0
  126. package/carousel/engine/ScrollTo.d.ts +11 -0
  127. package/carousel/engine/ScrollTo.js +36 -0
  128. package/carousel/engine/SlideFocus.d.ts +13 -0
  129. package/carousel/engine/SlideFocus.js +39 -0
  130. package/carousel/engine/SlideLooper.d.ts +18 -0
  131. package/carousel/engine/SlideLooper.js +78 -0
  132. package/carousel/engine/SlideRegistry.d.ts +7 -0
  133. package/carousel/engine/SlideRegistry.js +31 -0
  134. package/carousel/engine/SlideSizes.d.ts +10 -0
  135. package/carousel/engine/SlideSizes.js +41 -0
  136. package/carousel/engine/SlidesHandler.d.ts +10 -0
  137. package/carousel/engine/SlidesHandler.js +36 -0
  138. package/carousel/engine/SlidesInView.d.ts +8 -0
  139. package/carousel/engine/SlidesInView.js +59 -0
  140. package/carousel/engine/SlidesToScroll.d.ts +7 -0
  141. package/carousel/engine/SlidesToScroll.js +41 -0
  142. package/carousel/engine/Translate.d.ts +7 -0
  143. package/carousel/engine/Translate.js +38 -0
  144. package/carousel/engine/index.d.ts +11 -0
  145. package/carousel/engine/index.js +1 -0
  146. package/carousel/engine/utils.d.ts +15 -0
  147. package/carousel/engine/utils.js +45 -0
  148. package/carousel/index.d.ts +202 -0
  149. package/carousel/index.jsx +469 -0
  150. package/carousel/plugins/auto-height/AutoHeight.d.ts +14 -0
  151. package/carousel/plugins/auto-height/AutoHeight.js +43 -0
  152. package/carousel/plugins/auto-height/Options.d.ts +2 -0
  153. package/carousel/plugins/auto-height/Options.js +1 -0
  154. package/carousel/plugins/auto-height/index.d.ts +2 -0
  155. package/carousel/plugins/auto-height/index.js +1 -0
  156. package/carousel/plugins/auto-scroll/AutoScroll.d.ts +25 -0
  157. package/carousel/plugins/auto-scroll/AutoScroll.js +185 -0
  158. package/carousel/plugins/auto-scroll/Options.d.ts +13 -0
  159. package/carousel/plugins/auto-scroll/Options.js +12 -0
  160. package/carousel/plugins/auto-scroll/index.d.ts +2 -0
  161. package/carousel/plugins/auto-scroll/index.js +1 -0
  162. package/carousel/plugins/auto-scroll/utils.d.ts +3 -0
  163. package/carousel/plugins/auto-scroll/utils.js +4 -0
  164. package/carousel/plugins/autoplay/Autoplay.d.ts +29 -0
  165. package/carousel/plugins/autoplay/Autoplay.js +173 -0
  166. package/carousel/plugins/autoplay/Options.d.ts +14 -0
  167. package/carousel/plugins/autoplay/Options.js +12 -0
  168. package/carousel/plugins/autoplay/index.d.ts +2 -0
  169. package/carousel/plugins/autoplay/index.js +1 -0
  170. package/carousel/plugins/autoplay/utils.d.ts +4 -0
  171. package/carousel/plugins/autoplay/utils.js +11 -0
  172. package/carousel/plugins/class-names/ClassNames.d.ts +14 -0
  173. package/carousel/plugins/class-names/ClassNames.js +98 -0
  174. package/carousel/plugins/class-names/Options.d.ts +13 -0
  175. package/carousel/plugins/class-names/Options.js +9 -0
  176. package/carousel/plugins/class-names/index.d.ts +2 -0
  177. package/carousel/plugins/class-names/index.js +1 -0
  178. package/carousel/plugins/class-names/utils.d.ts +4 -0
  179. package/carousel/plugins/class-names/utils.js +14 -0
  180. package/carousel/plugins/fade/Fade.d.ts +14 -0
  181. package/carousel/plugins/fade/Fade.js +199 -0
  182. package/carousel/plugins/fade/Options.d.ts +2 -0
  183. package/carousel/plugins/fade/Options.js +1 -0
  184. package/carousel/plugins/fade/index.d.ts +2 -0
  185. package/carousel/plugins/fade/index.js +1 -0
  186. package/carousel/plugins/fade/utils.d.ts +2 -0
  187. package/carousel/plugins/fade/utils.js +8 -0
  188. package/carousel/state.d.ts +81 -0
  189. package/carousel/state.js +71 -0
  190. package/chat/index.d.ts +83 -0
  191. package/chat/index.jsx +287 -0
  192. package/checkbox/behaviour.d.ts +172 -0
  193. package/checkbox/behaviour.jsx +412 -0
  194. package/checkbox/index.d.ts +168 -0
  195. package/checkbox/index.jsx +310 -0
  196. package/clipboard/index.d.ts +49 -0
  197. package/clipboard/index.js +136 -0
  198. package/coercion/index.d.ts +36 -0
  199. package/coercion/index.js +58 -0
  200. package/collections/base.d.ts +115 -0
  201. package/collections/base.js +346 -0
  202. package/collections/builder.d.ts +44 -0
  203. package/collections/builder.js +283 -0
  204. package/collections/components.d.ts +252 -0
  205. package/collections/components.jsx +745 -0
  206. package/collections/data-source.d.ts +26 -0
  207. package/collections/data-source.js +27 -0
  208. package/collections/dom.d.ts +34 -0
  209. package/collections/dom.js +127 -0
  210. package/collections/grid.d.ts +45 -0
  211. package/collections/grid.js +125 -0
  212. package/collections/hidden.d.ts +4 -0
  213. package/collections/hidden.js +12 -0
  214. package/collections/index.d.ts +45 -0
  215. package/collections/index.js +105 -0
  216. package/collections/list-state.d.ts +99 -0
  217. package/collections/list-state.js +156 -0
  218. package/collections/list.d.ts +20 -0
  219. package/collections/list.js +77 -0
  220. package/collections/nodes.d.ts +17 -0
  221. package/collections/nodes.js +107 -0
  222. package/collections/row-stamps.d.ts +17 -0
  223. package/collections/row-stamps.js +108 -0
  224. package/collections/selection-model.d.ts +93 -0
  225. package/collections/selection-model.js +192 -0
  226. package/collections/server-dev.d.ts +6 -0
  227. package/collections/server-dev.js +18 -0
  228. package/collections/server-off.d.ts +6 -0
  229. package/collections/server-off.js +9 -0
  230. package/collections/server-on.d.ts +29 -0
  231. package/collections/server-on.jsx +86 -0
  232. package/collections/table.d.ts +114 -0
  233. package/collections/table.js +439 -0
  234. package/collections/tree-state.d.ts +47 -0
  235. package/collections/tree-state.js +73 -0
  236. package/collections/tree.d.ts +20 -0
  237. package/collections/tree.js +66 -0
  238. package/collections/types.d.ts +229 -0
  239. package/collections/types.js +4 -0
  240. package/collections/unique-selection-dispatcher.d.ts +10 -0
  241. package/collections/unique-selection-dispatcher.js +25 -0
  242. package/color/area-state.d.ts +99 -0
  243. package/color/area-state.js +160 -0
  244. package/color/aria-intl.d.ts +3 -0
  245. package/color/aria-intl.js +274 -0
  246. package/color/channel-field-state.d.ts +50 -0
  247. package/color/channel-field-state.jsx +87 -0
  248. package/color/color.d.ts +78 -0
  249. package/color/color.js +738 -0
  250. package/color/field-state.d.ts +66 -0
  251. package/color/field-state.jsx +159 -0
  252. package/color/index.d.ts +58 -0
  253. package/color/index.js +88 -0
  254. package/color/intl.d.ts +3 -0
  255. package/color/intl.js +1328 -0
  256. package/color/picker-state.d.ts +20 -0
  257. package/color/picker-state.js +19 -0
  258. package/color/slider-state.d.ts +78 -0
  259. package/color/slider-state.jsx +98 -0
  260. package/color/value.d.ts +27 -0
  261. package/color/value.js +36 -0
  262. package/color/wheel-state.d.ts +77 -0
  263. package/color/wheel-state.js +152 -0
  264. package/color-area/behaviour.d.ts +161 -0
  265. package/color-area/behaviour.jsx +454 -0
  266. package/color-area/index.d.ts +34 -0
  267. package/color-area/index.jsx +187 -0
  268. package/color-field/behaviour.d.ts +112 -0
  269. package/color-field/behaviour.jsx +262 -0
  270. package/color-field/index.d.ts +72 -0
  271. package/color-field/index.jsx +309 -0
  272. package/color-picker/index.d.ts +19 -0
  273. package/color-picker/index.jsx +49 -0
  274. package/color-slider/behaviour.d.ts +103 -0
  275. package/color-slider/behaviour.jsx +234 -0
  276. package/color-slider/index.d.ts +40 -0
  277. package/color-slider/index.jsx +162 -0
  278. package/color-swatch/behaviour.d.ts +40 -0
  279. package/color-swatch/behaviour.js +36 -0
  280. package/color-swatch/index.d.ts +29 -0
  281. package/color-swatch/index.jsx +82 -0
  282. package/color-swatch-picker/index.d.ts +62 -0
  283. package/color-swatch-picker/index.jsx +95 -0
  284. package/color-swatch-picker/intl.d.ts +3 -0
  285. package/color-swatch-picker/intl.js +104 -0
  286. package/color-thumb/index.d.ts +85 -0
  287. package/color-thumb/index.jsx +93 -0
  288. package/color-wheel/behaviour.d.ts +123 -0
  289. package/color-wheel/behaviour.jsx +301 -0
  290. package/color-wheel/index.d.ts +50 -0
  291. package/color-wheel/index.jsx +166 -0
  292. package/combobox/behaviour.d.ts +120 -0
  293. package/combobox/behaviour.jsx +588 -0
  294. package/combobox/index.d.ts +101 -0
  295. package/combobox/index.jsx +365 -0
  296. package/combobox/intl.d.ts +2 -0
  297. package/combobox/intl.js +240 -0
  298. package/compare/behaviour.d.ts +101 -0
  299. package/compare/behaviour.js +288 -0
  300. package/compare/index.d.ts +58 -0
  301. package/compare/index.jsx +129 -0
  302. package/data/async-list.d.ts +78 -0
  303. package/data/async-list.jsx +257 -0
  304. package/data/index.d.ts +3 -0
  305. package/data/index.jsx +6 -0
  306. package/data/list-data.d.ts +88 -0
  307. package/data/list-data.jsx +210 -0
  308. package/data/tree-data.d.ts +59 -0
  309. package/data/tree-data.jsx +278 -0
  310. package/data-grid/behaviour.d.ts +95 -0
  311. package/data-grid/behaviour.js +725 -0
  312. package/data-grid/index.d.ts +138 -0
  313. package/data-grid/index.jsx +452 -0
  314. package/data-grid/state.d.ts +131 -0
  315. package/data-grid/state.js +288 -0
  316. package/date/CalendarDate.d.ts +207 -0
  317. package/date/CalendarDate.js +374 -0
  318. package/date/DateFormatter.d.ts +24 -0
  319. package/date/DateFormatter.js +175 -0
  320. package/date/calendars/BuddhistCalendar.d.ts +16 -0
  321. package/date/calendars/BuddhistCalendar.js +46 -0
  322. package/date/calendars/EthiopicCalendar.d.ts +45 -0
  323. package/date/calendars/EthiopicCalendar.js +178 -0
  324. package/date/calendars/GregorianCalendar.d.ts +26 -0
  325. package/date/calendars/GregorianCalendar.js +122 -0
  326. package/date/calendars/HebrewCalendar.d.ts +21 -0
  327. package/date/calendars/HebrewCalendar.js +174 -0
  328. package/date/calendars/IndianCalendar.d.ts +17 -0
  329. package/date/calendars/IndianCalendar.js +111 -0
  330. package/date/calendars/IslamicCalendar.d.ts +51 -0
  331. package/date/calendars/IslamicCalendar.js +205 -0
  332. package/date/calendars/JapaneseCalendar.d.ts +22 -0
  333. package/date/calendars/JapaneseCalendar.js +148 -0
  334. package/date/calendars/PersianCalendar.d.ts +19 -0
  335. package/date/calendars/PersianCalendar.js +85 -0
  336. package/date/calendars/TaiwanCalendar.d.ts +19 -0
  337. package/date/calendars/TaiwanCalendar.js +70 -0
  338. package/date/conversion.d.ts +45 -0
  339. package/date/conversion.js +269 -0
  340. package/date/createCalendar.d.ts +3 -0
  341. package/date/createCalendar.js +55 -0
  342. package/date/index.d.ts +20 -0
  343. package/date/index.js +30 -0
  344. package/date/manipulation.d.ts +25 -0
  345. package/date/manipulation.js +399 -0
  346. package/date/queries.d.ts +93 -0
  347. package/date/queries.js +303 -0
  348. package/date/serialize.d.ts +18 -0
  349. package/date/serialize.js +55 -0
  350. package/date/string.d.ts +36 -0
  351. package/date/string.js +223 -0
  352. package/date/types.d.ts +136 -0
  353. package/date/types.js +14 -0
  354. package/date/utils.d.ts +4 -0
  355. package/date/utils.js +16 -0
  356. package/date/weekStartData.d.ts +1 -0
  357. package/date/weekStartData.js +112 -0
  358. package/date-field/behaviour.d.ts +188 -0
  359. package/date-field/behaviour.jsx +1025 -0
  360. package/date-field/index.d.ts +150 -0
  361. package/date-field/index.jsx +354 -0
  362. package/date-field/intl.d.ts +3 -0
  363. package/date-field/intl.js +36 -0
  364. package/date-field/live-value.d.ts +22 -0
  365. package/date-field/live-value.jsx +44 -0
  366. package/date-picker/behaviour.d.ts +95 -0
  367. package/date-picker/behaviour.jsx +343 -0
  368. package/date-picker/index.d.ts +66 -0
  369. package/date-picker/index.jsx +243 -0
  370. package/dialog/behaviour.d.ts +63 -0
  371. package/dialog/behaviour.jsx +90 -0
  372. package/dialog/contexts.d.ts +12 -0
  373. package/dialog/contexts.js +8 -0
  374. package/dialog/index.d.ts +48 -0
  375. package/dialog/index.jsx +301 -0
  376. package/disclosure/behaviour.d.ts +50 -0
  377. package/disclosure/behaviour.jsx +128 -0
  378. package/disclosure/details.d.ts +21 -0
  379. package/disclosure/details.jsx +14 -0
  380. package/disclosure/index.d.ts +92 -0
  381. package/disclosure/index.jsx +300 -0
  382. package/drag-drop/cdk-index.d.ts +22 -0
  383. package/drag-drop/cdk-index.jsx +25 -0
  384. package/drag-drop/directives/assertions.d.ts +6 -0
  385. package/drag-drop/directives/assertions.js +13 -0
  386. package/drag-drop/directives/config.d.ts +30 -0
  387. package/drag-drop/directives/config.js +7 -0
  388. package/drag-drop/directives/drag-handle.d.ts +10 -0
  389. package/drag-drop/directives/drag-handle.js +29 -0
  390. package/drag-drop/directives/drag.d.ts +210 -0
  391. package/drag-drop/directives/drag.js +550 -0
  392. package/drag-drop/directives/drop-list-group.d.ts +25 -0
  393. package/drag-drop/directives/drop-list-group.js +55 -0
  394. package/drag-drop/directives/drop-list.d.ts +163 -0
  395. package/drag-drop/directives/drop-list.js +396 -0
  396. package/drag-drop/directives/registry.d.ts +32 -0
  397. package/drag-drop/directives/registry.js +61 -0
  398. package/drag-drop/dom/clone-node.d.ts +2 -0
  399. package/drag-drop/dom/clone-node.js +58 -0
  400. package/drag-drop/dom/coerce.d.ts +6 -0
  401. package/drag-drop/dom/coerce.js +8 -0
  402. package/drag-drop/dom/dom-rect.d.ts +37 -0
  403. package/drag-drop/dom/dom-rect.js +71 -0
  404. package/drag-drop/dom/fake-event.d.ts +4 -0
  405. package/drag-drop/dom/fake-event.js +22 -0
  406. package/drag-drop/dom/inherited-text.d.ts +4 -0
  407. package/drag-drop/dom/inherited-text.js +44 -0
  408. package/drag-drop/dom/layout-shift.d.ts +8 -0
  409. package/drag-drop/dom/layout-shift.js +87 -0
  410. package/drag-drop/dom/mount-content.d.ts +2 -0
  411. package/drag-drop/dom/mount-content.js +7 -0
  412. package/drag-drop/dom/parent-position-tracker.d.ts +32 -0
  413. package/drag-drop/dom/parent-position-tracker.js +71 -0
  414. package/drag-drop/dom/root-node.d.ts +21 -0
  415. package/drag-drop/dom/root-node.js +41 -0
  416. package/drag-drop/dom/shadow-dom.d.ts +4 -0
  417. package/drag-drop/dom/shadow-dom.js +18 -0
  418. package/drag-drop/dom/styling.d.ts +52 -0
  419. package/drag-drop/dom/styling.js +86 -0
  420. package/drag-drop/dom/transition-duration.d.ts +2 -0
  421. package/drag-drop/dom/transition-duration.js +29 -0
  422. package/drag-drop/drag-drop-registry.d.ts +69 -0
  423. package/drag-drop/drag-drop-registry.js +224 -0
  424. package/drag-drop/drag-drop.d.ts +19 -0
  425. package/drag-drop/drag-drop.js +10 -0
  426. package/drag-drop/drag-events.d.ts +117 -0
  427. package/drag-drop/drag-events.js +1 -0
  428. package/drag-drop/drag-handle.d.ts +18 -0
  429. package/drag-drop/drag-handle.jsx +53 -0
  430. package/drag-drop/drag-placeholder.d.ts +8 -0
  431. package/drag-drop/drag-placeholder.jsx +25 -0
  432. package/drag-drop/drag-preview.d.ts +10 -0
  433. package/drag-drop/drag-preview.jsx +31 -0
  434. package/drag-drop/drag-ref.d.ts +476 -0
  435. package/drag-drop/drag-ref.js +1306 -0
  436. package/drag-drop/drag-utils.d.ts +25 -0
  437. package/drag-drop/drag-utils.js +53 -0
  438. package/drag-drop/drag.d.ts +23 -0
  439. package/drag-drop/drag.jsx +128 -0
  440. package/drag-drop/drop-list-group.d.ts +22 -0
  441. package/drag-drop/drop-list-group.jsx +19 -0
  442. package/drag-drop/drop-list-ref.d.ts +295 -0
  443. package/drag-drop/drop-list-ref.js +707 -0
  444. package/drag-drop/drop-list.d.ts +19 -0
  445. package/drag-drop/drop-list.jsx +87 -0
  446. package/drag-drop/index.d.ts +1 -0
  447. package/drag-drop/index.jsx +4 -0
  448. package/drag-drop/lazy-refs.d.ts +28 -0
  449. package/drag-drop/lazy-refs.js +144 -0
  450. package/drag-drop/preview-ref.d.ts +38 -0
  451. package/drag-drop/preview-ref.js +132 -0
  452. package/drag-drop/sorting/drop-list-sort-strategy.d.ts +29 -0
  453. package/drag-drop/sorting/drop-list-sort-strategy.js +1 -0
  454. package/drag-drop/sorting/mixed-sort-strategy.d.ts +99 -0
  455. package/drag-drop/sorting/mixed-sort-strategy.js +259 -0
  456. package/drag-drop/sorting/single-axis-sort-strategy.d.ts +112 -0
  457. package/drag-drop/sorting/single-axis-sort-strategy.js +343 -0
  458. package/file-trigger/index.d.ts +24 -0
  459. package/file-trigger/index.jsx +41 -0
  460. package/flip/index.d.ts +59 -0
  461. package/flip/index.js +124 -0
  462. package/focus/focus-ring.d.ts +42 -0
  463. package/focus/focus-ring.jsx +77 -0
  464. package/focus/focus-scope.d.ts +51 -0
  465. package/focus/focus-scope.jsx +431 -0
  466. package/focus/focusable.d.ts +33 -0
  467. package/focus/focusable.jsx +93 -0
  468. package/focus/index.d.ts +74 -0
  469. package/focus/index.js +274 -0
  470. package/form/behaviour.d.ts +29 -0
  471. package/form/behaviour.js +145 -0
  472. package/form/field-error.d.ts +38 -0
  473. package/form/field-error.jsx +67 -0
  474. package/form/index.d.ts +77 -0
  475. package/form/index.jsx +116 -0
  476. package/grid/behaviour.d.ts +290 -0
  477. package/grid/behaviour.js +683 -0
  478. package/grid/intl.d.ts +2 -0
  479. package/grid/intl.js +36 -0
  480. package/grid/keyboard-delegate.d.ts +56 -0
  481. package/grid/keyboard-delegate.js +316 -0
  482. package/grid-list/behaviour.d.ts +248 -0
  483. package/grid-list/behaviour.js +616 -0
  484. package/grid-list/index.d.ts +204 -0
  485. package/grid-list/index.jsx +721 -0
  486. package/grid-list/row.d.ts +24 -0
  487. package/grid-list/row.js +57 -0
  488. package/group/index.d.ts +48 -0
  489. package/group/index.jsx +126 -0
  490. package/header/index.d.ts +13 -0
  491. package/header/index.jsx +34 -0
  492. package/heading/index.d.ts +19 -0
  493. package/heading/index.jsx +55 -0
  494. package/highlight/index.d.ts +12 -0
  495. package/highlight/index.jsx +357 -0
  496. package/i18n/filter.d.ts +16 -0
  497. package/i18n/filter.js +66 -0
  498. package/i18n/i18n-provider.d.ts +10 -0
  499. package/i18n/i18n-provider.jsx +15 -0
  500. package/i18n/index.d.ts +27 -0
  501. package/i18n/index.js +115 -0
  502. package/i18n/intl-cache.d.ts +4 -0
  503. package/i18n/intl-cache.js +40 -0
  504. package/i18n/list-formatter.d.ts +2 -0
  505. package/i18n/list-formatter.js +11 -0
  506. package/input/index.d.ts +51 -0
  507. package/input/index.jsx +95 -0
  508. package/interactions/controllable.d.ts +42 -0
  509. package/interactions/controllable.js +67 -0
  510. package/interactions/focus-visible.d.ts +68 -0
  511. package/interactions/focus-visible.jsx +291 -0
  512. package/interactions/focus.d.ts +58 -0
  513. package/interactions/focus.jsx +152 -0
  514. package/interactions/hover.d.ts +54 -0
  515. package/interactions/hover.jsx +139 -0
  516. package/interactions/index.d.ts +1 -0
  517. package/interactions/index.js +3 -0
  518. package/interactions/interact-outside.d.ts +24 -0
  519. package/interactions/interact-outside.jsx +57 -0
  520. package/interactions/keyboard.d.ts +28 -0
  521. package/interactions/keyboard.jsx +51 -0
  522. package/interactions/long-press.d.ts +41 -0
  523. package/interactions/long-press.jsx +79 -0
  524. package/interactions/merge-props.d.ts +54 -0
  525. package/interactions/merge-props.jsx +257 -0
  526. package/interactions/move.d.ts +48 -0
  527. package/interactions/move.jsx +96 -0
  528. package/interactions/press.d.ts +129 -0
  529. package/interactions/press.jsx +539 -0
  530. package/interactions/pressable.d.ts +22 -0
  531. package/interactions/pressable.jsx +93 -0
  532. package/interactions/scroll-wheel.d.ts +20 -0
  533. package/interactions/scroll-wheel.jsx +40 -0
  534. package/interactions/utils.d.ts +52 -0
  535. package/interactions/utils.js +253 -0
  536. package/keyboard/index.d.ts +12 -0
  537. package/keyboard/index.jsx +34 -0
  538. package/keys/index.d.ts +68 -0
  539. package/keys/index.js +199 -0
  540. package/label/behaviour.d.ts +54 -0
  541. package/label/behaviour.js +60 -0
  542. package/label/index.d.ts +35 -0
  543. package/label/index.jsx +85 -0
  544. package/landmark/index.d.ts +10 -0
  545. package/landmark/index.jsx +35 -0
  546. package/landmark/manager.d.ts +50 -0
  547. package/landmark/manager.js +364 -0
  548. package/layout/index.d.ts +90 -0
  549. package/layout/index.js +207 -0
  550. package/lightbox/behaviour.d.ts +82 -0
  551. package/lightbox/behaviour.js +490 -0
  552. package/lightbox/captions/index.d.ts +39 -0
  553. package/lightbox/captions/index.jsx +44 -0
  554. package/lightbox/counter/index.d.ts +10 -0
  555. package/lightbox/counter/index.jsx +10 -0
  556. package/lightbox/download/index.d.ts +32 -0
  557. package/lightbox/download/index.jsx +89 -0
  558. package/lightbox/embed/index.d.ts +15 -0
  559. package/lightbox/embed/index.jsx +58 -0
  560. package/lightbox/fullscreen/index.d.ts +24 -0
  561. package/lightbox/fullscreen/index.jsx +80 -0
  562. package/lightbox/index.d.ts +129 -0
  563. package/lightbox/index.jsx +284 -0
  564. package/lightbox/inline/index.d.ts +18 -0
  565. package/lightbox/inline/index.jsx +15 -0
  566. package/lightbox/pdf/index.d.ts +18 -0
  567. package/lightbox/pdf/index.jsx +31 -0
  568. package/lightbox/share/index.d.ts +29 -0
  569. package/lightbox/share/index.jsx +43 -0
  570. package/lightbox/slideshow/index.d.ts +24 -0
  571. package/lightbox/slideshow/index.jsx +118 -0
  572. package/lightbox/state.d.ts +334 -0
  573. package/lightbox/state.js +192 -0
  574. package/lightbox/thumbnails/index.d.ts +54 -0
  575. package/lightbox/thumbnails/index.jsx +96 -0
  576. package/lightbox/video/index.d.ts +13 -0
  577. package/lightbox/video/index.jsx +42 -0
  578. package/lightbox/zoom/index.d.ts +67 -0
  579. package/lightbox/zoom/index.jsx +456 -0
  580. package/link/behaviour.d.ts +41 -0
  581. package/link/behaviour.js +58 -0
  582. package/link/index.d.ts +30 -0
  583. package/link/index.jsx +179 -0
  584. package/link/router.d.ts +1 -0
  585. package/link/router.js +5 -0
  586. package/listbox/behaviour.d.ts +175 -0
  587. package/listbox/behaviour.jsx +515 -0
  588. package/listbox/index.d.ts +129 -0
  589. package/listbox/index.jsx +632 -0
  590. package/markdown/index.d.ts +82 -0
  591. package/markdown/index.jsx +654 -0
  592. package/masonry/behaviour.d.ts +121 -0
  593. package/masonry/behaviour.js +676 -0
  594. package/masonry/flip.d.ts +27 -0
  595. package/masonry/flip.js +61 -0
  596. package/masonry/geometry.d.ts +44 -0
  597. package/masonry/geometry.js +184 -0
  598. package/masonry/index.d.ts +153 -0
  599. package/masonry/index.jsx +833 -0
  600. package/masonry/justified.d.ts +49 -0
  601. package/masonry/justified.js +250 -0
  602. package/masonry/layout.d.ts +200 -0
  603. package/masonry/layout.js +668 -0
  604. package/masonry/masonry-layout.d.ts +57 -0
  605. package/masonry/masonry-layout.js +159 -0
  606. package/masonry/masonry.css +29 -0
  607. package/menu/behaviour.d.ts +205 -0
  608. package/menu/behaviour.jsx +847 -0
  609. package/menu/index.d.ts +171 -0
  610. package/menu/index.jsx +702 -0
  611. package/menu/intl.d.ts +2 -0
  612. package/menu/intl.js +36 -0
  613. package/menu/safely-mouse-to-submenu.d.ts +12 -0
  614. package/menu/safely-mouse-to-submenu.js +128 -0
  615. package/meter/behaviour.d.ts +18 -0
  616. package/meter/behaviour.jsx +17 -0
  617. package/meter/index.d.ts +30 -0
  618. package/meter/index.jsx +85 -0
  619. package/modal/index.d.ts +79 -0
  620. package/modal/index.jsx +359 -0
  621. package/modal/provider.d.ts +47 -0
  622. package/modal/provider.jsx +105 -0
  623. package/morph/index.d.ts +91 -0
  624. package/morph/index.jsx +372 -0
  625. package/morph/item.d.ts +89 -0
  626. package/morph/item.jsx +546 -0
  627. package/motion/Animations.d.ts +17 -0
  628. package/motion/Animations.js +56 -0
  629. package/motion/DragRelease.d.ts +22 -0
  630. package/motion/DragRelease.js +26 -0
  631. package/motion/DragTracker.d.ts +7 -0
  632. package/motion/DragTracker.js +43 -0
  633. package/motion/Limit.d.ts +12 -0
  634. package/motion/Limit.js +37 -0
  635. package/motion/Motion1D.d.ts +38 -0
  636. package/motion/Motion1D.js +72 -0
  637. package/motion/ScrollBody.d.ts +13 -0
  638. package/motion/ScrollBody.js +75 -0
  639. package/motion/Vector1d.d.ts +8 -0
  640. package/motion/Vector1d.js +29 -0
  641. package/motion/index.d.ts +8 -0
  642. package/motion/index.js +12 -0
  643. package/motion/utils.d.ts +5 -0
  644. package/motion/utils.js +23 -0
  645. package/native-select/index.d.ts +46 -0
  646. package/native-select/index.jsx +99 -0
  647. package/navigation-tree/index.d.ts +43 -0
  648. package/navigation-tree/index.jsx +110 -0
  649. package/number/NumberFormatter.d.ts +28 -0
  650. package/number/NumberFormatter.js +144 -0
  651. package/number/NumberParser.d.ts +27 -0
  652. package/number/NumberParser.js +316 -0
  653. package/number/index.d.ts +5 -0
  654. package/number/index.jsx +17 -0
  655. package/number/number-field-state.d.ts +132 -0
  656. package/number/number-field-state.jsx +364 -0
  657. package/number-field/behaviour.d.ts +165 -0
  658. package/number-field/behaviour.jsx +512 -0
  659. package/number-field/index.d.ts +52 -0
  660. package/number-field/index.jsx +207 -0
  661. package/number-field/intl.d.ts +2 -0
  662. package/number-field/intl.js +36 -0
  663. package/observers/index.d.ts +70 -0
  664. package/observers/index.js +279 -0
  665. package/overflow/index.d.ts +93 -0
  666. package/overflow/index.jsx +267 -0
  667. package/overlay/aria-hide-outside.d.ts +12 -0
  668. package/overlay/aria-hide-outside.js +141 -0
  669. package/overlay/close-on-scroll.d.ts +1 -0
  670. package/overlay/close-on-scroll.js +6 -0
  671. package/overlay/contexts.d.ts +34 -0
  672. package/overlay/contexts.js +21 -0
  673. package/overlay/dismiss-button.d.ts +10 -0
  674. package/overlay/dismiss-button.jsx +18 -0
  675. package/overlay/hover-trigger.d.ts +54 -0
  676. package/overlay/hover-trigger.jsx +221 -0
  677. package/overlay/index.d.ts +40 -0
  678. package/overlay/index.js +139 -0
  679. package/overlay/modal-overlay.d.ts +16 -0
  680. package/overlay/modal-overlay.js +38 -0
  681. package/overlay/overlay-strings.d.ts +4 -0
  682. package/overlay/overlay-strings.js +52 -0
  683. package/overlay/overlay-trigger-state.d.ts +1 -0
  684. package/overlay/overlay-trigger-state.js +3 -0
  685. package/overlay/overlay-trigger.d.ts +27 -0
  686. package/overlay/overlay-trigger.jsx +50 -0
  687. package/overlay/position.d.ts +160 -0
  688. package/overlay/position.js +559 -0
  689. package/overlay/prevent-scroll-ios.d.ts +17 -0
  690. package/overlay/prevent-scroll-ios.js +331 -0
  691. package/overlay/prevent-scroll.d.ts +18 -0
  692. package/overlay/prevent-scroll.js +122 -0
  693. package/overlay/safe-area.d.ts +28 -0
  694. package/overlay/safe-area.js +108 -0
  695. package/overlay-arrow/index.d.ts +23 -0
  696. package/overlay-arrow/index.jsx +59 -0
  697. package/overlay-service/connected-position.d.ts +163 -0
  698. package/overlay-service/connected-position.js +661 -0
  699. package/overlay-service/global-position.d.ts +34 -0
  700. package/overlay-service/global-position.js +154 -0
  701. package/overlay-service/index.d.ts +15 -0
  702. package/overlay-service/index.js +27 -0
  703. package/overlay-service/overlay-container.d.ts +27 -0
  704. package/overlay-service/overlay-container.js +93 -0
  705. package/overlay-service/overlay-dispatchers.d.ts +44 -0
  706. package/overlay-service/overlay-dispatchers.js +149 -0
  707. package/overlay-service/overlay-position-builder.d.ts +8 -0
  708. package/overlay-service/overlay-position-builder.js +15 -0
  709. package/overlay-service/overlay-ref.d.ts +155 -0
  710. package/overlay-service/overlay-ref.js +436 -0
  711. package/overlay-service/overlay-strategy.d.ts +48 -0
  712. package/overlay-service/overlay-strategy.js +3 -0
  713. package/overlay-service/overlay-viewport.d.ts +85 -0
  714. package/overlay-service/overlay-viewport.js +192 -0
  715. package/overlay-service/overlay.css +94 -0
  716. package/overlay-service/scroll-strategies.d.ts +71 -0
  717. package/overlay-service/scroll-strategies.js +185 -0
  718. package/package.json +754 -4
  719. package/platform/index.d.ts +100 -0
  720. package/platform/index.js +304 -0
  721. package/popover/behaviour.d.ts +23 -0
  722. package/popover/behaviour.js +39 -0
  723. package/popover/index.d.ts +60 -0
  724. package/popover/index.jsx +285 -0
  725. package/popover/popover-overlay.d.ts +27 -0
  726. package/popover/popover-overlay.jsx +60 -0
  727. package/popover/use-popover.d.ts +57 -0
  728. package/popover/use-popover.js +92 -0
  729. package/portal/index.d.ts +55 -0
  730. package/portal/index.jsx +83 -0
  731. package/portal/portal-mount.d.ts +8 -0
  732. package/portal/portal-mount.js +7 -0
  733. package/portal/portal-outlet.d.ts +88 -0
  734. package/portal/portal-outlet.js +222 -0
  735. package/preview-trigger/behaviour.d.ts +70 -0
  736. package/preview-trigger/behaviour.jsx +258 -0
  737. package/preview-trigger/index.d.ts +12 -0
  738. package/preview-trigger/index.jsx +82 -0
  739. package/progress-bar/behaviour.d.ts +77 -0
  740. package/progress-bar/behaviour.jsx +75 -0
  741. package/progress-bar/context.d.ts +4 -0
  742. package/progress-bar/context.js +7 -0
  743. package/progress-bar/index.d.ts +38 -0
  744. package/progress-bar/index.jsx +90 -0
  745. package/radio-group/behaviour.d.ts +11 -0
  746. package/radio-group/behaviour.js +85 -0
  747. package/radio-group/index.d.ts +82 -0
  748. package/radio-group/index.jsx +142 -0
  749. package/radio-group/parts.d.ts +223 -0
  750. package/radio-group/parts.jsx +425 -0
  751. package/range-calendar/behaviour.d.ts +2 -0
  752. package/range-calendar/behaviour.jsx +5 -0
  753. package/range-calendar/index.d.ts +2 -0
  754. package/range-calendar/index.jsx +4 -0
  755. package/resizable/engine/components/group/auto-save/getStorageKey.d.ts +1 -0
  756. package/resizable/engine/components/group/auto-save/getStorageKey.js +5 -0
  757. package/resizable/engine/components/group/compareDocumentPosition.d.ts +5 -0
  758. package/resizable/engine/components/group/compareDocumentPosition.js +19 -0
  759. package/resizable/engine/components/group/readLegacyLayout.d.ts +16 -0
  760. package/resizable/engine/components/group/readLegacyLayout.js +48 -0
  761. package/resizable/engine/components/group/sortByElementOffset.d.ts +4 -0
  762. package/resizable/engine/components/group/sortByElementOffset.js +28 -0
  763. package/resizable/engine/components/group/types.d.ts +50 -0
  764. package/resizable/engine/components/group/types.js +1 -0
  765. package/resizable/engine/components/panel/types.d.ts +90 -0
  766. package/resizable/engine/components/panel/types.js +4 -0
  767. package/resizable/engine/constants.d.ts +15 -0
  768. package/resizable/engine/constants.js +27 -0
  769. package/resizable/engine/global/cursor/getCursorStyle.d.ts +7 -0
  770. package/resizable/engine/global/cursor/getCursorStyle.js +94 -0
  771. package/resizable/engine/global/cursor/supportsAdvancedCursorStyles.d.ts +5 -0
  772. package/resizable/engine/global/cursor/supportsAdvancedCursorStyles.js +20 -0
  773. package/resizable/engine/global/cursor/updateCursorStyle.d.ts +1 -0
  774. package/resizable/engine/global/cursor/updateCursorStyle.js +64 -0
  775. package/resizable/engine/global/dom/calculateAvailableAxisSize.d.ts +4 -0
  776. package/resizable/engine/global/dom/calculateAvailableAxisSize.js +10 -0
  777. package/resizable/engine/global/dom/calculateHitRegions.d.ts +13 -0
  778. package/resizable/engine/global/dom/calculateHitRegions.js +153 -0
  779. package/resizable/engine/global/dom/calculateItemConstraints.d.ts +2 -0
  780. package/resizable/engine/global/dom/calculateItemConstraints.js +82 -0
  781. package/resizable/engine/global/event-handlers/onDocumentContextMenu.d.ts +1 -0
  782. package/resizable/engine/global/event-handlers/onDocumentContextMenu.js +9 -0
  783. package/resizable/engine/global/event-handlers/onDocumentDoubleClick.d.ts +1 -0
  784. package/resizable/engine/global/event-handlers/onDocumentDoubleClick.js +28 -0
  785. package/resizable/engine/global/event-handlers/onDocumentKeyDown.d.ts +1 -0
  786. package/resizable/engine/global/event-handlers/onDocumentKeyDown.js +97 -0
  787. package/resizable/engine/global/event-handlers/onDocumentLostPointerCapture.d.ts +1 -0
  788. package/resizable/engine/global/event-handlers/onDocumentLostPointerCapture.js +18 -0
  789. package/resizable/engine/global/event-handlers/onDocumentPointerCancel.d.ts +1 -0
  790. package/resizable/engine/global/event-handlers/onDocumentPointerCancel.js +8 -0
  791. package/resizable/engine/global/event-handlers/onDocumentPointerDown.d.ts +1 -0
  792. package/resizable/engine/global/event-handlers/onDocumentPointerDown.js +54 -0
  793. package/resizable/engine/global/event-handlers/onDocumentPointerLeave.d.ts +1 -0
  794. package/resizable/engine/global/event-handlers/onDocumentPointerLeave.js +22 -0
  795. package/resizable/engine/global/event-handlers/onDocumentPointerMove.d.ts +1 -0
  796. package/resizable/engine/global/event-handlers/onDocumentPointerMove.js +69 -0
  797. package/resizable/engine/global/event-handlers/onDocumentPointerOut.d.ts +1 -0
  798. package/resizable/engine/global/event-handlers/onDocumentPointerOut.js +20 -0
  799. package/resizable/engine/global/event-handlers/onDocumentPointerUp.d.ts +1 -0
  800. package/resizable/engine/global/event-handlers/onDocumentPointerUp.js +15 -0
  801. package/resizable/engine/global/event-handlers/onWindowBlur.d.ts +1 -0
  802. package/resizable/engine/global/event-handlers/onWindowBlur.js +11 -0
  803. package/resizable/engine/global/mountAxis.d.ts +2 -0
  804. package/resizable/engine/global/mountAxis.js +187 -0
  805. package/resizable/engine/global/mutable-state/axes.d.ts +37 -0
  806. package/resizable/engine/global/mutable-state/axes.js +52 -0
  807. package/resizable/engine/global/mutable-state/interactions.d.ts +17 -0
  808. package/resizable/engine/global/mutable-state/interactions.js +92 -0
  809. package/resizable/engine/global/mutable-state/types.d.ts +32 -0
  810. package/resizable/engine/global/mutable-state/types.js +1 -0
  811. package/resizable/engine/global/styles/convertEmToPixels.d.ts +1 -0
  812. package/resizable/engine/global/styles/convertEmToPixels.js +7 -0
  813. package/resizable/engine/global/styles/convertRemToPixels.d.ts +1 -0
  814. package/resizable/engine/global/styles/convertRemToPixels.js +7 -0
  815. package/resizable/engine/global/styles/convertVhToPixels.d.ts +1 -0
  816. package/resizable/engine/global/styles/convertVhToPixels.js +5 -0
  817. package/resizable/engine/global/styles/convertVwToPixels.d.ts +1 -0
  818. package/resizable/engine/global/styles/convertVwToPixels.js +5 -0
  819. package/resizable/engine/global/styles/parseSizeAndUnit.d.ts +2 -0
  820. package/resizable/engine/global/styles/parseSizeAndUnit.js +29 -0
  821. package/resizable/engine/global/styles/sizeStyleToPixels.d.ts +5 -0
  822. package/resizable/engine/global/styles/sizeStyleToPixels.js +38 -0
  823. package/resizable/engine/global/types.d.ts +120 -0
  824. package/resizable/engine/global/types.js +1 -0
  825. package/resizable/engine/global/utils/abortActivePointerResize.d.ts +9 -0
  826. package/resizable/engine/global/utils/abortActivePointerResize.js +52 -0
  827. package/resizable/engine/global/utils/adjustLayoutByDelta.d.ts +9 -0
  828. package/resizable/engine/global/utils/adjustLayoutByDelta.js +219 -0
  829. package/resizable/engine/global/utils/adjustLayoutForSeparator.d.ts +1 -0
  830. package/resizable/engine/global/utils/adjustLayoutForSeparator.js +48 -0
  831. package/resizable/engine/global/utils/calculateDefaultLayout.d.ts +2 -0
  832. package/resizable/engine/global/utils/calculateDefaultLayout.js +30 -0
  833. package/resizable/engine/global/utils/calculateResizePreviews.d.ts +3 -0
  834. package/resizable/engine/global/utils/calculateResizePreviews.js +39 -0
  835. package/resizable/engine/global/utils/calculateSeparatorAriaValues.d.ts +12 -0
  836. package/resizable/engine/global/utils/calculateSeparatorAriaValues.js +43 -0
  837. package/resizable/engine/global/utils/compareLayoutNumbers.d.ts +1 -0
  838. package/resizable/engine/global/utils/compareLayoutNumbers.js +11 -0
  839. package/resizable/engine/global/utils/completeActivePointerResize.d.ts +6 -0
  840. package/resizable/engine/global/utils/completeActivePointerResize.js +49 -0
  841. package/resizable/engine/global/utils/doRectsIntersect.d.ts +2 -0
  842. package/resizable/engine/global/utils/doRectsIntersect.js +3 -0
  843. package/resizable/engine/global/utils/expandHitTarget.d.ts +10 -0
  844. package/resizable/engine/global/utils/expandHitTarget.js +19 -0
  845. package/resizable/engine/global/utils/findClosestHitRegion.d.ts +9 -0
  846. package/resizable/engine/global/utils/findClosestHitRegion.js +35 -0
  847. package/resizable/engine/global/utils/findClosestRect.d.ts +6 -0
  848. package/resizable/engine/global/utils/findClosestRect.js +22 -0
  849. package/resizable/engine/global/utils/findMatchingHitRegions.d.ts +7 -0
  850. package/resizable/engine/global/utils/findMatchingHitRegions.js +29 -0
  851. package/resizable/engine/global/utils/findSeparatorAxis.d.ts +21 -0
  852. package/resizable/engine/global/utils/findSeparatorAxis.js +12 -0
  853. package/resizable/engine/global/utils/formatLayoutNumber.d.ts +1 -0
  854. package/resizable/engine/global/utils/formatLayoutNumber.js +5 -0
  855. package/resizable/engine/global/utils/getDefaultLayout.d.ts +5 -0
  856. package/resizable/engine/global/utils/getDefaultLayout.js +11 -0
  857. package/resizable/engine/global/utils/getDistanceBetweenPointAndRect.d.ts +5 -0
  858. package/resizable/engine/global/utils/getDistanceBetweenPointAndRect.js +6 -0
  859. package/resizable/engine/global/utils/getImperativeAxisMethods.d.ts +4 -0
  860. package/resizable/engine/global/utils/getImperativeAxisMethods.js +53 -0
  861. package/resizable/engine/global/utils/getImperativeItemMethods.d.ts +5 -0
  862. package/resizable/engine/global/utils/getImperativeItemMethods.js +169 -0
  863. package/resizable/engine/global/utils/isCoarsePointer.d.ts +4 -0
  864. package/resizable/engine/global/utils/isCoarsePointer.js +17 -0
  865. package/resizable/engine/global/utils/isModal.d.ts +1 -0
  866. package/resizable/engine/global/utils/isModal.js +11 -0
  867. package/resizable/engine/global/utils/isViableHitTarget.d.ts +5 -0
  868. package/resizable/engine/global/utils/isViableHitTarget.js +50 -0
  869. package/resizable/engine/global/utils/itemConstraintsEqual.d.ts +2 -0
  870. package/resizable/engine/global/utils/itemConstraintsEqual.js +9 -0
  871. package/resizable/engine/global/utils/layoutNumbersEqual.d.ts +1 -0
  872. package/resizable/engine/global/utils/layoutNumbersEqual.js +6 -0
  873. package/resizable/engine/global/utils/layoutsEqual.d.ts +2 -0
  874. package/resizable/engine/global/utils/layoutsEqual.js +15 -0
  875. package/resizable/engine/global/utils/normalizeLayout.d.ts +11 -0
  876. package/resizable/engine/global/utils/normalizeLayout.js +21 -0
  877. package/resizable/engine/global/utils/notifyItemOnResize.d.ts +2 -0
  878. package/resizable/engine/global/utils/notifyItemOnResize.js +23 -0
  879. package/resizable/engine/global/utils/objectsEqual.d.ts +1 -0
  880. package/resizable/engine/global/utils/objectsEqual.js +14 -0
  881. package/resizable/engine/global/utils/preserveFixedItemSizes.d.ts +7 -0
  882. package/resizable/engine/global/utils/preserveFixedItemSizes.js +53 -0
  883. package/resizable/engine/global/utils/recordAxisLayoutChange.d.ts +15 -0
  884. package/resizable/engine/global/utils/recordAxisLayoutChange.js +25 -0
  885. package/resizable/engine/global/utils/updateActiveHitRegion.d.ts +18 -0
  886. package/resizable/engine/global/utils/updateActiveHitRegion.js +119 -0
  887. package/resizable/engine/global/utils/validateAxisLayout.d.ts +5 -0
  888. package/resizable/engine/global/utils/validateAxisLayout.js +70 -0
  889. package/resizable/engine/global/utils/validateItemSize.d.ts +7 -0
  890. package/resizable/engine/global/utils/validateItemSize.js +31 -0
  891. package/resizable/engine/global/utils/validateLayoutKeys.d.ts +2 -0
  892. package/resizable/engine/global/utils/validateLayoutKeys.js +13 -0
  893. package/resizable/engine/types.d.ts +13 -0
  894. package/resizable/engine/types.js +1 -0
  895. package/resizable/engine/utils/EventEmitter.d.ts +11 -0
  896. package/resizable/engine/utils/EventEmitter.js +60 -0
  897. package/resizable/engine/utils/assert.d.ts +1 -0
  898. package/resizable/engine/utils/assert.js +7 -0
  899. package/resizable/engine/utils/isArrayEqual.d.ts +1 -0
  900. package/resizable/engine/utils/isArrayEqual.js +15 -0
  901. package/resizable/engine/utils/isHTMLElement.d.ts +1 -0
  902. package/resizable/engine/utils/isHTMLElement.js +6 -0
  903. package/resizable/engine/utils/isShadowRoot.d.ts +1 -0
  904. package/resizable/engine/utils/isShadowRoot.js +6 -0
  905. package/resizable/engine/vendor/stacking-order.d.ts +7 -0
  906. package/resizable/engine/vendor/stacking-order.js +122 -0
  907. package/resizable/index.d.ts +263 -0
  908. package/resizable/index.jsx +537 -0
  909. package/resizable/mount.d.ts +115 -0
  910. package/resizable/mount.js +540 -0
  911. package/scheduler/behaviour.d.ts +71 -0
  912. package/scheduler/behaviour.js +243 -0
  913. package/scheduler/context.d.ts +100 -0
  914. package/scheduler/context.jsx +7 -0
  915. package/scheduler/dates.d.ts +53 -0
  916. package/scheduler/dates.js +183 -0
  917. package/scheduler/drag.d.ts +20 -0
  918. package/scheduler/drag.js +361 -0
  919. package/scheduler/event.d.ts +26 -0
  920. package/scheduler/event.jsx +93 -0
  921. package/scheduler/index.d.ts +57 -0
  922. package/scheduler/index.jsx +303 -0
  923. package/scheduler/intl.d.ts +16 -0
  924. package/scheduler/intl.js +529 -0
  925. package/scheduler/keys-month.d.ts +7 -0
  926. package/scheduler/keys-month.js +110 -0
  927. package/scheduler/keys-time-grid.d.ts +9 -0
  928. package/scheduler/keys-time-grid.js +115 -0
  929. package/scheduler/keys.d.ts +103 -0
  930. package/scheduler/keys.js +527 -0
  931. package/scheduler/layout-index.d.ts +3 -0
  932. package/scheduler/layout-index.js +6 -0
  933. package/scheduler/layout.d.ts +285 -0
  934. package/scheduler/layout.js +378 -0
  935. package/scheduler/menus.d.ts +66 -0
  936. package/scheduler/menus.jsx +88 -0
  937. package/scheduler/month.d.ts +26 -0
  938. package/scheduler/month.jsx +215 -0
  939. package/scheduler/pointer.d.ts +64 -0
  940. package/scheduler/pointer.js +203 -0
  941. package/scheduler/select.d.ts +11 -0
  942. package/scheduler/select.js +64 -0
  943. package/scheduler/selection.d.ts +34 -0
  944. package/scheduler/selection.js +39 -0
  945. package/scheduler/state.d.ts +296 -0
  946. package/scheduler/state.js +496 -0
  947. package/scheduler/time-grid-client.d.ts +32 -0
  948. package/scheduler/time-grid-client.jsx +133 -0
  949. package/scheduler/time-grid.d.ts +26 -0
  950. package/scheduler/time-grid.jsx +266 -0
  951. package/scheduler/time.d.ts +35 -0
  952. package/scheduler/time.js +56 -0
  953. package/scheduler/toolbar.d.ts +43 -0
  954. package/scheduler/toolbar.jsx +38 -0
  955. package/scroll-area/dom.d.ts +11 -0
  956. package/scroll-area/dom.js +55 -0
  957. package/scroll-area/index.d.ts +96 -0
  958. package/scroll-area/index.jsx +884 -0
  959. package/scroll-area/presence.d.ts +12 -0
  960. package/scroll-area/presence.jsx +131 -0
  961. package/scrolling/auto-size-virtual-scroll.d.ts +53 -0
  962. package/scrolling/auto-size-virtual-scroll.js +213 -0
  963. package/scrolling/behaviour.d.ts +3 -0
  964. package/scrolling/behaviour.js +5 -0
  965. package/scrolling/emitter.d.ts +34 -0
  966. package/scrolling/emitter.js +144 -0
  967. package/scrolling/fixed-size-virtual-scroll.d.ts +28 -0
  968. package/scrolling/fixed-size-virtual-scroll.js +107 -0
  969. package/scrolling/index.d.ts +11 -0
  970. package/scrolling/index.jsx +13 -0
  971. package/scrolling/rtl.d.ts +16 -0
  972. package/scrolling/rtl.js +64 -0
  973. package/scrolling/scroll-dispatcher.d.ts +49 -0
  974. package/scrolling/scroll-dispatcher.js +107 -0
  975. package/scrolling/scrollable.d.ts +75 -0
  976. package/scrolling/scrollable.js +149 -0
  977. package/scrolling/scrolling.css +11 -0
  978. package/scrolling/state.d.ts +92 -0
  979. package/scrolling/state.js +94 -0
  980. package/scrolling/viewport-ruler.d.ts +47 -0
  981. package/scrolling/viewport-ruler.js +100 -0
  982. package/scrolling/viewport.d.ts +54 -0
  983. package/scrolling/viewport.jsx +105 -0
  984. package/scrolling/virtual-scroll-strategy.d.ts +41 -0
  985. package/scrolling/virtual-scroll-strategy.js +2 -0
  986. package/scrolling/virtual-scroll-viewport.d.ts +95 -0
  987. package/scrolling/virtual-scroll-viewport.js +370 -0
  988. package/search-field/behaviour.d.ts +62 -0
  989. package/search-field/behaviour.jsx +116 -0
  990. package/search-field/index.d.ts +57 -0
  991. package/search-field/index.jsx +158 -0
  992. package/search-field/intl.d.ts +2 -0
  993. package/search-field/intl.js +36 -0
  994. package/select/behaviour.d.ts +188 -0
  995. package/select/behaviour.jsx +445 -0
  996. package/select/hidden-select.d.ts +44 -0
  997. package/select/hidden-select.jsx +68 -0
  998. package/select/index.d.ts +123 -0
  999. package/select/index.jsx +255 -0
  1000. package/select/intl.d.ts +2 -0
  1001. package/select/intl.js +36 -0
  1002. package/select/parts.d.ts +11 -0
  1003. package/select/parts.jsx +12 -0
  1004. package/select/select-parts.d.ts +73 -0
  1005. package/select/select-parts.jsx +293 -0
  1006. package/select/select-value.d.ts +58 -0
  1007. package/select/select-value.jsx +142 -0
  1008. package/selection/dom-utils.d.ts +25 -0
  1009. package/selection/dom-utils.js +77 -0
  1010. package/selection/keyed.d.ts +19 -0
  1011. package/selection/keyed.js +66 -0
  1012. package/selection/list-keyboard-delegate.d.ts +67 -0
  1013. package/selection/list-keyboard-delegate.js +274 -0
  1014. package/selection/manager.d.ts +112 -0
  1015. package/selection/manager.js +340 -0
  1016. package/selection/selectable-collection.d.ts +123 -0
  1017. package/selection/selectable-collection.js +560 -0
  1018. package/selection/selectable-item.d.ts +128 -0
  1019. package/selection/selectable-item.js +486 -0
  1020. package/selection/selectable-list.d.ts +42 -0
  1021. package/selection/selectable-list.js +34 -0
  1022. package/selection/state.d.ts +96 -0
  1023. package/selection/state.js +131 -0
  1024. package/selection/type-select.d.ts +37 -0
  1025. package/selection/type-select.js +114 -0
  1026. package/selection/utils.d.ts +23 -0
  1027. package/selection/utils.js +38 -0
  1028. package/selection-indicator/context.d.ts +10 -0
  1029. package/selection-indicator/context.js +7 -0
  1030. package/selection-indicator/index.d.ts +20 -0
  1031. package/selection-indicator/index.jsx +25 -0
  1032. package/separator/behaviour.d.ts +17 -0
  1033. package/separator/behaviour.js +17 -0
  1034. package/separator/index.d.ts +23 -0
  1035. package/separator/index.jsx +64 -0
  1036. package/shared-element-transition/index.d.ts +36 -0
  1037. package/shared-element-transition/index.jsx +182 -0
  1038. package/shared-element-transition/transition.d.ts +19 -0
  1039. package/shared-element-transition/transition.jsx +20 -0
  1040. package/sheet-motion/index.d.ts +82 -0
  1041. package/sheet-motion/index.js +386 -0
  1042. package/sidebar/index.d.ts +257 -0
  1043. package/sidebar/index.jsx +625 -0
  1044. package/sidebar/pages.d.ts +71 -0
  1045. package/sidebar/pages.jsx +177 -0
  1046. package/sidebar/resize.d.ts +69 -0
  1047. package/sidebar/resize.js +237 -0
  1048. package/sidebar/sheet-motion.d.ts +15 -0
  1049. package/sidebar/sheet-motion.js +170 -0
  1050. package/sidebar/state.d.ts +126 -0
  1051. package/sidebar/state.js +204 -0
  1052. package/slider/behaviour.d.ts +141 -0
  1053. package/slider/behaviour.jsx +492 -0
  1054. package/slider/index.d.ts +171 -0
  1055. package/slider/index.jsx +392 -0
  1056. package/slider/state.d.ts +203 -0
  1057. package/slider/state.js +377 -0
  1058. package/slots/index.d.ts +248 -0
  1059. package/slots/index.jsx +473 -0
  1060. package/spinbutton/behaviour.d.ts +66 -0
  1061. package/spinbutton/behaviour.jsx +312 -0
  1062. package/spinbutton/intl.d.ts +2 -0
  1063. package/spinbutton/intl.js +36 -0
  1064. package/state/autocomplete.d.ts +26 -0
  1065. package/state/autocomplete.js +32 -0
  1066. package/state/calendar.d.ts +284 -0
  1067. package/state/calendar.js +755 -0
  1068. package/state/checkbox-group.d.ts +67 -0
  1069. package/state/checkbox-group.js +76 -0
  1070. package/state/combobox.d.ts +238 -0
  1071. package/state/combobox.js +708 -0
  1072. package/state/date-field.d.ts +407 -0
  1073. package/state/date-field.js +1117 -0
  1074. package/state/date-intl.d.ts +3 -0
  1075. package/state/date-intl.js +36 -0
  1076. package/state/date-picker.d.ts +144 -0
  1077. package/state/date-picker.js +387 -0
  1078. package/state/disclosure.d.ts +90 -0
  1079. package/state/disclosure.js +148 -0
  1080. package/state/form-validation.d.ts +89 -0
  1081. package/state/form-validation.js +158 -0
  1082. package/state/grid.d.ts +62 -0
  1083. package/state/grid.js +127 -0
  1084. package/state/list.d.ts +58 -0
  1085. package/state/list.js +124 -0
  1086. package/state/menu.d.ts +162 -0
  1087. package/state/menu.js +185 -0
  1088. package/state/overlays.d.ts +35 -0
  1089. package/state/overlays.js +29 -0
  1090. package/state/radio-group.d.ts +58 -0
  1091. package/state/radio-group.js +68 -0
  1092. package/state/search-field.d.ts +20 -0
  1093. package/state/search-field.js +21 -0
  1094. package/state/select.d.ts +150 -0
  1095. package/state/select.js +187 -0
  1096. package/state/selection.d.ts +3 -0
  1097. package/state/selection.js +5 -0
  1098. package/state/table-column-resize.d.ts +58 -0
  1099. package/state/table-column-resize.js +76 -0
  1100. package/state/table.d.ts +81 -0
  1101. package/state/table.js +114 -0
  1102. package/state/tabs.d.ts +85 -0
  1103. package/state/tabs.js +161 -0
  1104. package/state/time-field.d.ts +32 -0
  1105. package/state/time-field.js +34 -0
  1106. package/state/toast.d.ts +80 -0
  1107. package/state/toast.js +146 -0
  1108. package/state/toggle-group.d.ts +70 -0
  1109. package/state/toggle-group.js +110 -0
  1110. package/state/toggle.d.ts +40 -0
  1111. package/state/toggle.js +39 -0
  1112. package/state/tooltip.d.ts +53 -0
  1113. package/state/tooltip.js +153 -0
  1114. package/stepper/index.d.ts +117 -0
  1115. package/stepper/index.jsx +405 -0
  1116. package/stepper/state.d.ts +200 -0
  1117. package/stepper/state.js +325 -0
  1118. package/switch/behaviour.d.ts +12 -0
  1119. package/switch/behaviour.jsx +9 -0
  1120. package/switch/index.d.ts +150 -0
  1121. package/switch/index.jsx +186 -0
  1122. package/table/behaviour.d.ts +181 -0
  1123. package/table/behaviour.js +334 -0
  1124. package/table/collection.d.ts +49 -0
  1125. package/table/collection.js +259 -0
  1126. package/table/column-resize.d.ts +48 -0
  1127. package/table/column-resize.jsx +247 -0
  1128. package/table/index.d.ts +339 -0
  1129. package/table/index.jsx +1326 -0
  1130. package/table/intl.d.ts +2 -0
  1131. package/table/intl.js +36 -0
  1132. package/table/keyboard-delegate.d.ts +21 -0
  1133. package/table/keyboard-delegate.js +166 -0
  1134. package/table/rac-intl.d.ts +2 -0
  1135. package/table/rac-intl.js +36 -0
  1136. package/tabs/behaviour.d.ts +49 -0
  1137. package/tabs/behaviour.js +173 -0
  1138. package/tabs/index.d.ts +248 -0
  1139. package/tabs/index.jsx +577 -0
  1140. package/tabs/keyboard-delegate.d.ts +17 -0
  1141. package/tabs/keyboard-delegate.js +64 -0
  1142. package/tag-group/behaviour.d.ts +59 -0
  1143. package/tag-group/behaviour.js +112 -0
  1144. package/tag-group/index.d.ts +138 -0
  1145. package/tag-group/index.jsx +565 -0
  1146. package/tag-group/intl.d.ts +2 -0
  1147. package/tag-group/intl.js +36 -0
  1148. package/tailwind.css +12 -0
  1149. package/tests-components/app/src/routes/index.d.ts +4 -0
  1150. package/tests-components/app/src/routes/index.jsx +7 -0
  1151. package/text/index.d.ts +15 -0
  1152. package/text/index.jsx +61 -0
  1153. package/text-area/index.d.ts +19 -0
  1154. package/text-area/index.jsx +76 -0
  1155. package/text-field/autosize.d.ts +70 -0
  1156. package/text-field/autosize.js +355 -0
  1157. package/text-field/behaviour.d.ts +140 -0
  1158. package/text-field/behaviour.jsx +260 -0
  1159. package/text-field/fields.d.ts +12 -0
  1160. package/text-field/fields.js +20 -0
  1161. package/text-field/index.d.ts +50 -0
  1162. package/text-field/index.jsx +174 -0
  1163. package/text-field/text-field.css +45 -0
  1164. package/theme.css +1006 -0
  1165. package/time-wheels/behaviour.d.ts +29 -0
  1166. package/time-wheels/behaviour.js +156 -0
  1167. package/time-wheels/index.d.ts +27 -0
  1168. package/time-wheels/index.jsx +91 -0
  1169. package/toast/behaviour.d.ts +51 -0
  1170. package/toast/behaviour.jsx +273 -0
  1171. package/toast/index.d.ts +94 -0
  1172. package/toast/index.jsx +256 -0
  1173. package/toast/intl.d.ts +2 -0
  1174. package/toast/intl.js +36 -0
  1175. package/toggle-button/behaviour.d.ts +15 -0
  1176. package/toggle-button/behaviour.js +37 -0
  1177. package/toggle-button/index.d.ts +59 -0
  1178. package/toggle-button/index.jsx +206 -0
  1179. package/toggle-button-group/behaviour.d.ts +19 -0
  1180. package/toggle-button-group/behaviour.jsx +13 -0
  1181. package/toggle-button-group/context.d.ts +7 -0
  1182. package/toggle-button-group/context.js +9 -0
  1183. package/toggle-button-group/index.d.ts +39 -0
  1184. package/toggle-button-group/index.jsx +85 -0
  1185. package/toggle-button-group/item.d.ts +30 -0
  1186. package/toggle-button-group/item.jsx +37 -0
  1187. package/toolbar/behaviour.d.ts +22 -0
  1188. package/toolbar/behaviour.js +89 -0
  1189. package/toolbar/index.d.ts +16 -0
  1190. package/toolbar/index.jsx +67 -0
  1191. package/tooltip/behaviour.d.ts +93 -0
  1192. package/tooltip/behaviour.jsx +299 -0
  1193. package/tooltip/index.d.ts +59 -0
  1194. package/tooltip/index.jsx +193 -0
  1195. package/tree/behaviour.d.ts +51 -0
  1196. package/tree/behaviour.jsx +51 -0
  1197. package/tree/cdk-index.d.ts +2 -0
  1198. package/tree/cdk-index.js +6 -0
  1199. package/tree/collection.d.ts +16 -0
  1200. package/tree/collection.js +138 -0
  1201. package/tree/control.d.ts +125 -0
  1202. package/tree/control.js +166 -0
  1203. package/tree/index.d.ts +154 -0
  1204. package/tree/index.jsx +837 -0
  1205. package/tree/intl.d.ts +2 -0
  1206. package/tree/intl.js +36 -0
  1207. package/tree/navigation-context.d.ts +44 -0
  1208. package/tree/navigation-context.jsx +63 -0
  1209. package/tree/tree-key-manager.d.ts +149 -0
  1210. package/tree/tree-key-manager.js +336 -0
  1211. package/utils/animation.d.ts +32 -0
  1212. package/utils/animation.jsx +236 -0
  1213. package/utils/data-attrs.d.ts +73 -0
  1214. package/utils/data-attrs.jsx +217 -0
  1215. package/utils/dev-off.d.ts +3 -0
  1216. package/utils/dev-off.js +7 -0
  1217. package/utils/dev-on.d.ts +3 -0
  1218. package/utils/dev-on.js +17 -0
  1219. package/utils/dom-props.d.ts +44 -0
  1220. package/utils/dom-props.js +73 -0
  1221. package/utils/dom.d.ts +85 -0
  1222. package/utils/dom.js +402 -0
  1223. package/utils/id.d.ts +23 -0
  1224. package/utils/id.js +100 -0
  1225. package/utils/index.d.ts +43 -0
  1226. package/utils/index.js +160 -0
  1227. package/utils/link-state.d.ts +6 -0
  1228. package/utils/link-state.js +6 -0
  1229. package/utils/links.d.ts +82 -0
  1230. package/utils/links.jsx +150 -0
  1231. package/utils/live-element.d.ts +8 -0
  1232. package/utils/live-element.jsx +76 -0
  1233. package/utils/live.d.ts +53 -0
  1234. package/utils/live.jsx +169 -0
  1235. package/utils/load-more-sentinel.d.ts +28 -0
  1236. package/utils/load-more-sentinel.jsx +52 -0
  1237. package/utils/motion-token.d.ts +4 -0
  1238. package/utils/motion-token.js +48 -0
  1239. package/utils/render.d.ts +19 -0
  1240. package/utils/render.js +18 -0
  1241. package/utils/transitions.d.ts +15 -0
  1242. package/utils/transitions.js +104 -0
  1243. package/utils/types.d.ts +111 -0
  1244. package/utils/types.js +1 -0
  1245. package/virtualizer/behaviour.d.ts +129 -0
  1246. package/virtualizer/behaviour.js +437 -0
  1247. package/virtualizer/collection-renderer.d.ts +62 -0
  1248. package/virtualizer/collection-renderer.jsx +190 -0
  1249. package/virtualizer/collection.d.ts +103 -0
  1250. package/virtualizer/collection.js +155 -0
  1251. package/virtualizer/dom.d.ts +50 -0
  1252. package/virtualizer/dom.js +233 -0
  1253. package/virtualizer/engine.d.ts +21 -0
  1254. package/virtualizer/engine.js +21 -0
  1255. package/virtualizer/grid-layout.d.ts +50 -0
  1256. package/virtualizer/grid-layout.js +247 -0
  1257. package/virtualizer/index.d.ts +3 -0
  1258. package/virtualizer/index.jsx +5 -0
  1259. package/virtualizer/layout-info.d.ts +33 -0
  1260. package/virtualizer/layout-info.js +54 -0
  1261. package/virtualizer/layout.d.ts +44 -0
  1262. package/virtualizer/layout.js +30 -0
  1263. package/virtualizer/list-layout.d.ts +103 -0
  1264. package/virtualizer/list-layout.js +510 -0
  1265. package/virtualizer/overscan-manager.d.ts +9 -0
  1266. package/virtualizer/overscan-manager.js +32 -0
  1267. package/virtualizer/point.d.ts +13 -0
  1268. package/virtualizer/point.js +23 -0
  1269. package/virtualizer/rect.d.ts +49 -0
  1270. package/virtualizer/rect.js +105 -0
  1271. package/virtualizer/reusable-view.d.ts +29 -0
  1272. package/virtualizer/reusable-view.js +56 -0
  1273. package/virtualizer/scroll-anchor.d.ts +62 -0
  1274. package/virtualizer/scroll-anchor.js +130 -0
  1275. package/virtualizer/size.d.ts +11 -0
  1276. package/virtualizer/size.js +21 -0
  1277. package/virtualizer/state.d.ts +35 -0
  1278. package/virtualizer/state.js +89 -0
  1279. package/virtualizer/table-collection.d.ts +45 -0
  1280. package/virtualizer/table-collection.js +80 -0
  1281. package/virtualizer/table-column-layout.d.ts +44 -0
  1282. package/virtualizer/table-column-layout.js +210 -0
  1283. package/virtualizer/table-layout.d.ts +55 -0
  1284. package/virtualizer/table-layout.js +482 -0
  1285. package/virtualizer/types.d.ts +63 -0
  1286. package/virtualizer/types.js +1 -0
  1287. package/virtualizer/utils.d.ts +2 -0
  1288. package/virtualizer/utils.js +12 -0
  1289. package/virtualizer/virtualizer-core.d.ts +61 -0
  1290. package/virtualizer/virtualizer-core.js +304 -0
  1291. package/virtualizer/virtualizer.d.ts +64 -0
  1292. package/virtualizer/virtualizer.jsx +91 -0
  1293. package/virtualizer/waterfall-layout.d.ts +41 -0
  1294. package/virtualizer/waterfall-layout.js +227 -0
  1295. package/wheel-picker/behaviour.d.ts +94 -0
  1296. package/wheel-picker/behaviour.js +482 -0
  1297. package/wheel-picker/index.d.ts +33 -0
  1298. package/wheel-picker/index.jsx +66 -0
@@ -0,0 +1,258 @@
1
+ // Ported from @react-aria/tooltip (usePreviewTrigger.ts; react-aria/src/tooltip/usePreviewTrigger.ts), Apache-2.0, © Adobe.
2
+ // A preview trigger displays a popover on hover, focus, or long press. Unlike a tooltip, the popover
3
+ // may contain interactive content (React Aria `usePreviewTrigger` → `previewTriggerProps`).
4
+ // Rivet:
5
+ // - the hook's handlers are free functions over the serializable `TooltipTriggerState` (resumable:
6
+ // call them from inline arrows); the hook's refs (`ignoreFocus`, `shouldFocusOnOpen`,
7
+ // `pointerInSafeArea`) live in a browser-side WeakMap keyed by the state; `isFocusVisible` is read
8
+ // from the global modality at event time (RA keeps it in sync with `useFocusVisibleListener`).
9
+ // - RA's effects become `attachPreviewTrigger(state, options)`: call while open (from the popover's
10
+ // client effect) — the safe area (`../overlay/safe-area.ts`) and the focus move after a long press.
11
+ // - RA's `useEvent(triggerRef, 'react-aria-focus-scope-restore')` → `previewTriggerFocusScopeRestore`,
12
+ // the trigger's `on:rv-focus-scope-restore` handler (cdk FocusScope's restore event).
13
+ // - `useHover` → `previewTriggerPointerEnter` / `Leave` (useHover semantics: mouse / pen only,
14
+ // emulated mouse after touch ignored); the touch long press is `previewTriggerTouchStart` (delegated
15
+ // RA useLongPress `{ pointerType: "touch" }`, threshold 500 ms) calling `previewTriggerLongPress`.
16
+ // - `aria-expanded` / `aria-controls` / `aria-describedby` are accessors.
17
+ // Deviation: `isDisabled` also stops keyboard focus from opening (upstream gates only hover / long press).
18
+ import { untrack } from "@rivetjs/reactivity";
19
+ import { focusWithoutScrolling, getActiveElement, getOwnerDocument, nodeContains, read as readValue } from "../interactions/utils.js";
20
+ import { getInteractionModality, isFocusVisible, setInteractionModality, setupGlobalFocusEvents } from "../interactions/focus-visible.jsx";
21
+ import { hoverPointerEnter, hoverPointerLeave } from "../interactions/hover.jsx";
22
+ import { getFocusableTreeWalker } from "../focus/index.js";
23
+ import { safeArea } from "../overlay/safe-area.js";
24
+ import { closeTooltip, openTooltip } from "../state/tooltip.js";
25
+ const refsByState = new WeakMap();
26
+ const refsOf = (state) => {
27
+ let r = refsByState.get(state);
28
+ if (!r)
29
+ refsByState.set(state, (r = { ignoreFocus: false, shouldFocusOnOpen: false, longPress: null, pointerInSafeArea: false, hover: null }));
30
+ return r;
31
+ };
32
+ const read = (source) => (typeof source === "function" ? untrack(source) : source) ?? null;
33
+ /** Cancel a pending close and keep the preview open. */
34
+ export function previewTriggerKeepOpen(state) {
35
+ openTooltip(state, true);
36
+ }
37
+ /**
38
+ * Close the preview unless something is still keeping it open: the pointer is within the safe area, or
39
+ * focus is within the trigger or popover. During focus transitions the active element may briefly be
40
+ * the body; the popover's focusin handler re-opens in that case (focus moving in).
41
+ */
42
+ export function previewTriggerCheckClose(state, options) {
43
+ const r = refsOf(state);
44
+ if (r.pointerInSafeArea)
45
+ return;
46
+ const trigger = read(options.triggerRef), popover = read(options.popoverRef);
47
+ const active = trigger ? getActiveElement(getOwnerDocument(trigger)) : null;
48
+ if (isFocusVisible() && ((trigger && nodeContains(trigger, active)) || (popover && nodeContains(popover, active))))
49
+ return;
50
+ closeTooltip(state);
51
+ }
52
+ /** useHover `onHoverStart`. */
53
+ export function previewTriggerHoverStart(state) {
54
+ // Match useTooltipTrigger: only treat as hovered when the modality is actually a pointer.
55
+ if (getInteractionModality() === "pointer") {
56
+ refsOf(state).pointerInSafeArea = true;
57
+ openTooltip(state);
58
+ }
59
+ }
60
+ /** useHover `onHoverEnd`. */
61
+ export function previewTriggerHoverEnd(state) {
62
+ // Before the preview opens, cancel a pending warmup if the pointer leaves the trigger. Once
63
+ // open, the safe-area polygon governs closing as the pointer moves to the popover.
64
+ if (!untrack(state.isOpen)) {
65
+ refsOf(state).pointerInSafeArea = false;
66
+ closeTooltip(state);
67
+ }
68
+ }
69
+ function hoverOf(state, isDisabled) {
70
+ const r = refsOf(state);
71
+ if (!r.hover)
72
+ r.hover = {
73
+ props: { isDisabled, onHoverStart: () => previewTriggerHoverStart(state), onHoverEnd: () => previewTriggerHoverEnd(state) },
74
+ state: { isHovered: false, pointerType: "", target: null, globals: [] },
75
+ hovered: { set: () => undefined },
76
+ };
77
+ return r.hover;
78
+ }
79
+ /** The trigger's `onPointerEnter` (useHover). */
80
+ export function previewTriggerPointerEnter(e, props, state) {
81
+ // Resumed page: modality tracking installs on first use; the hover's own pointer event is the evidence.
82
+ setupGlobalFocusEvents(e.currentTarget);
83
+ if (getInteractionModality() === null && e.pointerType !== "touch")
84
+ setInteractionModality("pointer");
85
+ installTriggerListeners(e.currentTarget, props, state);
86
+ hoverPointerEnter(hoverOf(state, readValue(props.isDisabled)), e);
87
+ }
88
+ /** The trigger's `onPointerLeave` (useHover). */
89
+ export function previewTriggerPointerLeave(e, props, state) {
90
+ hoverPointerLeave(hoverOf(state, readValue(props.isDisabled)), e);
91
+ }
92
+ /** The trigger's `onFocus`. */
93
+ export function previewTriggerFocus(e, options, state) {
94
+ installTriggerListeners(e.currentTarget, options, state);
95
+ // Rivet: a disabled preview trigger never opens on focus either (RA usePreviewTrigger passes
96
+ // `isDisabled` only to useHover / useLongPress; useTooltipTrigger gates focus through useFocusable).
97
+ if (readValue(options.isDisabled))
98
+ return;
99
+ const r = refsOf(state);
100
+ if (r.ignoreFocus) {
101
+ r.ignoreFocus = false;
102
+ return;
103
+ }
104
+ const popover = read(options.popoverRef);
105
+ // Prevent browser focusing the link on long press when focus is already in the popover.
106
+ if (untrack(state.isOpen) && popover && e.relatedTarget === popover) {
107
+ focusWithoutScrolling(popover);
108
+ return;
109
+ }
110
+ if (isFocusVisible()) {
111
+ // Open after the warmup delay on keyboard focus, not immediately like a tooltip. This way
112
+ // tabbing quickly through the page doesn't open previews (and add their tab stops); the
113
+ // delay ensures the user is actually interested in the link's details.
114
+ openTooltip(state);
115
+ }
116
+ }
117
+ /** The trigger's `onBlur`. */
118
+ export function previewTriggerBlur(_e, options, state) {
119
+ previewTriggerCheckClose(state, options);
120
+ }
121
+ /** The trigger's `on:rv-focus-scope-restore` (RA `react-aria-focus-scope-restore`): restore focus without reopening. */
122
+ export function previewTriggerFocusScopeRestore(e, state) {
123
+ e.preventDefault();
124
+ refsOf(state).ignoreFocus = true;
125
+ e.currentTarget?.focus();
126
+ }
127
+ /**
128
+ * The trigger's `onKeyDown`: move focus from the link into the preview when the user presses Tab while
129
+ * it is open (tabbing back out of the popover is handled by the popover's own FocusScope); Escape closes.
130
+ */
131
+ export function previewTriggerKeyDown(e, options, state) {
132
+ const popover = read(options.popoverRef);
133
+ if (e.key === "Tab" && !e.shiftKey && untrack(state.isOpen) && popover) {
134
+ const walker = getFocusableTreeWalker(popover, { tabbable: true });
135
+ const first = walker.nextNode();
136
+ if (first) {
137
+ e.preventDefault();
138
+ first.focus();
139
+ }
140
+ }
141
+ else if (e.key === "Escape") {
142
+ e.preventDefault();
143
+ closeTooltip(state, true);
144
+ }
145
+ }
146
+ /** useLongPress `onLongPress` (touch): open the preview and move focus into it once it opens. */
147
+ export function previewTriggerLongPress(state) {
148
+ refsOf(state).shouldFocusOnOpen = true;
149
+ openTooltip(state, true);
150
+ }
151
+ const LONG_PRESS_THRESHOLD = 500;
152
+ /**
153
+ * Rivet (delegated useLongPress `{ pointerType: "touch" }`): the wrapper's `onPointerDown` — a touch held
154
+ * for 500 ms opens the preview (no click / context menu after it), released earlier it does nothing.
155
+ */
156
+ export function previewTriggerTouchStart(e, props, state) {
157
+ if (e.pointerType !== "touch" || readValue(props.isDisabled))
158
+ return;
159
+ const r = refsOf(state);
160
+ const target = e.target;
161
+ const win = target.ownerDocument;
162
+ const cancel = () => {
163
+ if (r.longPress)
164
+ clearTimeout(r.longPress);
165
+ r.longPress = null;
166
+ win.removeEventListener("pointerup", cancel, true);
167
+ win.removeEventListener("pointercancel", cancel, true);
168
+ };
169
+ cancel();
170
+ win.addEventListener("pointerup", cancel, true);
171
+ win.addEventListener("pointercancel", cancel, true);
172
+ r.longPress = setTimeout(() => {
173
+ cancel();
174
+ // No default click action (e.g. following a link) and no context menu after a long press.
175
+ const prevent = (event) => event.preventDefault();
176
+ target.addEventListener("click", prevent, { once: true });
177
+ target.addEventListener("contextmenu", prevent, { once: true });
178
+ setTimeout(() => {
179
+ target.removeEventListener("click", prevent);
180
+ target.removeEventListener("contextmenu", prevent);
181
+ }, 600);
182
+ previewTriggerLongPress(state);
183
+ }, LONG_PRESS_THRESHOLD);
184
+ }
185
+ const installed = new WeakSet();
186
+ /**
187
+ * Rivet: listeners RA puts on the trigger element (`useEvent(triggerRef, 'react-aria-focus-scope-restore')`,
188
+ * useLongPress's pointerdown), installed once at its first pointerenter (touch fires it before
189
+ * pointerdown) or focus — nothing at load on a resumed page.
190
+ */
191
+ function installTriggerListeners(trigger, props, state) {
192
+ if (!trigger || installed.has(trigger))
193
+ return;
194
+ installed.add(trigger);
195
+ trigger.addEventListener("rv-focus-scope-restore", (e) => previewTriggerFocusScopeRestore(e, state));
196
+ trigger.addEventListener("pointerdown", (e) => previewTriggerTouchStart(e, props, state));
197
+ }
198
+ /**
199
+ * RA's effects while open (call from the popover's client effect; returns the release): the safe area
200
+ * connecting the link and the popover keeps the preview open while the pointer moves between them (even
201
+ * diagonally, any placement, even with closeDelay 0); after a long press, focus moves to the popover.
202
+ */
203
+ export function attachPreviewTrigger(state, options) {
204
+ const r = refsOf(state);
205
+ const popover = read(options.popoverRef);
206
+ if (popover && r.shouldFocusOnOpen) {
207
+ // When opened via long press, move focus to the popover itself so touch screen readers move
208
+ // their virtual cursor into the preview.
209
+ r.shouldFocusOnOpen = false;
210
+ focusWithoutScrolling(popover);
211
+ }
212
+ const release = safeArea({
213
+ triggerRef: options.triggerRef,
214
+ overlayRef: options.popoverRef,
215
+ isDisabled: readValue(options.isDisabled),
216
+ onSafeAreaChange: (isInSafeArea) => {
217
+ if (isInSafeArea === r.pointerInSafeArea)
218
+ return;
219
+ r.pointerInSafeArea = isInSafeArea;
220
+ if (isInSafeArea)
221
+ previewTriggerKeepOpen(state);
222
+ else
223
+ previewTriggerCheckClose(state, options);
224
+ },
225
+ });
226
+ return () => {
227
+ release();
228
+ };
229
+ }
230
+ /**
231
+ * Provides the behavior and accessibility implementation for a preview trigger (React Aria
232
+ * `usePreviewTrigger`). The bag's closures are created in this `.tsx` module, so resumed bindings may
233
+ * capture them. Long press: wire
234
+ * `previewTriggerTouchStart` on the trigger's `onPointerDown`.
235
+ */
236
+ export function previewTriggerProps(options, state) {
237
+ const popoverId = options.popoverId;
238
+ return {
239
+ triggerProps: {
240
+ onFocus: (e) => previewTriggerFocus(e, options, state),
241
+ onBlur: (e) => previewTriggerBlur(e, options, state),
242
+ onKeyDown: (e) => previewTriggerKeyDown(e, options, state),
243
+ onPointerEnter: (e) => previewTriggerPointerEnter(e, options, state),
244
+ onPointerLeave: (e) => previewTriggerPointerLeave(e, options, state),
245
+ "on:rv-focus-scope-restore": (e) => previewTriggerFocusScopeRestore(e, state),
246
+ "aria-haspopup": "dialog",
247
+ "aria-expanded": () => state.isOpen(),
248
+ "aria-controls": () => (state.isOpen() ? popoverId : undefined),
249
+ "aria-describedby": () => (state.isOpen() ? popoverId : undefined),
250
+ style: { WebkitTouchCallout: "none", WebkitUserDrag: "none" },
251
+ },
252
+ popoverProps: {
253
+ id: popoverId,
254
+ onFocusWithin: () => previewTriggerKeepOpen(state),
255
+ onBlurWithin: () => previewTriggerCheckClose(state, options),
256
+ },
257
+ };
258
+ }
@@ -0,0 +1,12 @@
1
+ import type { Content } from "@rivetjs/runtime/jsx-runtime";
2
+ import { type TooltipTriggerProps } from "../state/tooltip.js";
3
+ export interface PreviewTriggerProps extends Omit<TooltipTriggerProps, "trigger" | "shouldCloseOnPress"> {
4
+ /** The delay time for the preview to show up (ms). @default 600 */
5
+ delay?: number;
6
+ /** The delay time for the preview to close (ms). @default 200 */
7
+ closeDelay?: number;
8
+ /** The trigger (e.g. a Link) and its `<Popover>`. */
9
+ children?: Content;
10
+ }
11
+ /** A PreviewTrigger displays a popover preview on hover, focus or long press of its trigger. */
12
+ export declare function PreviewTrigger(props: PreviewTriggerProps): import("@rivetjs/runtime/jsx-runtime").CompiledElement;
@@ -0,0 +1,82 @@
1
+ // Ported from React Aria Components (PreviewTrigger.tsx), Apache-2.0, © Adobe.
2
+ // A PreviewTrigger displays a popover with a preview of a link's destination (or any rich content) on
3
+ // hover, keyboard focus, or touch long press: `<PreviewTrigger><Link/><Popover>…</Popover></PreviewTrigger>`.
4
+ // Unlike a tooltip, the popover may contain interactive content (Tab from the trigger moves into it).
5
+ // Rivet:
6
+ // - state: `createTooltipTriggerState({ delay: 600, closeDelay: 200 })` (shared warmup with tooltips),
7
+ // provided as `OverlayTriggerStateContext`; the Popover gets `PopoverContext` `{ trigger:
8
+ // "PreviewTrigger", triggerRef, ref, isNonModal: true, shouldSkipAnimation, id, onFocusWithin,
9
+ // onBlurWithin }` (RAC).
10
+ // - the trigger props reach the child (a cdk Link / Button, or a custom element in `<Focusable>`) through
11
+ // FocusableProvider (RAC); `aria-haspopup="dialog"` is server-rendered, `aria-expanded` /
12
+ // `aria-controls` / `aria-describedby` are set on the trigger while the preview is open; the touch long
13
+ // press and the FocusScope restore listener are installed on the trigger at its first pointerenter /
14
+ // focus (delegated useLongPress / RA `useEvent(triggerRef, …)`).
15
+ // - RA's effects (safe area, focus after long press, ARIA) run from a client effect in an own binding
16
+ // site (`span[data-rv-overlay-anchor]`) only while open — nothing at load.
17
+ // Not yet supported: the long press accessibility description ("Long press to open preview").
18
+ import { untrack } from "@rivetjs/reactivity";
19
+ import { Show, clientEffect, ref as createRef } from "@rivetjs/runtime/dom";
20
+ import { FocusableProvider } from "../focus/focusable.jsx";
21
+ import { Provider } from "../slots/index.jsx";
22
+ import { idSignal } from "../utils/id.js";
23
+ import { OverlayTriggerStateContext, PopoverContext } from "../overlay/contexts.js";
24
+ import { createTooltipTriggerState } from "../state/tooltip.js";
25
+ import { attachPreviewTrigger, previewTriggerBlur, previewTriggerCheckClose, previewTriggerFocus, previewTriggerKeepOpen, previewTriggerKeyDown, previewTriggerPointerEnter, previewTriggerPointerLeave, } from "./behaviour.jsx";
26
+ import { liveOptions } from "../utils/live.jsx";
27
+ /** A PreviewTrigger displays a popover preview on hover, focus or long press of its trigger. */
28
+ export function PreviewTrigger(props) {
29
+ const state = createTooltipTriggerState({
30
+ ...liveOptions(props, [], ["isOpen"]),
31
+ delay: props.delay ?? 600,
32
+ closeDelay: props.closeDelay ?? 200,
33
+ });
34
+ const triggerRef = createRef();
35
+ const popoverRef = createRef();
36
+ // RA mergeIds: a user `id` on the Popover replaces the generated one (the signal travels as `idRef`).
37
+ const popoverIdRef = idSignal();
38
+ const popoverId = untrack(popoverIdRef);
39
+ const isDisabled = props.isDisabled;
40
+ const options = {
41
+ isDisabled,
42
+ triggerRef: () => triggerRef(),
43
+ popoverRef: () => popoverRef(),
44
+ popoverId,
45
+ };
46
+ const children = props.children;
47
+ const popover = {
48
+ trigger: "PreviewTrigger",
49
+ triggerRef,
50
+ ref: popoverRef,
51
+ isNonModal: true,
52
+ shouldSkipAnimation: () => state.shouldSkipAnimation(),
53
+ id: popoverId,
54
+ idRef: popoverIdRef,
55
+ onFocusWithin: () => previewTriggerKeepOpen(state),
56
+ onBlurWithin: () => previewTriggerCheckClose(state, options),
57
+ };
58
+ return (<>
59
+ <Provider values={[
60
+ [OverlayTriggerStateContext, state],
61
+ [PopoverContext, popover],
62
+ ]}>
63
+ {() => (<FocusableProvider ref={triggerRef} aria-haspopup="dialog" aria-expanded={() => state.isOpen()} aria-controls={() => (state.isOpen() ? popoverIdRef() : undefined)} aria-describedby={() => (state.isOpen() ? popoverIdRef() : undefined)} onPointerEnter={(event) => previewTriggerPointerEnter(event, options, state)} onPointerLeave={(event) => previewTriggerPointerLeave(event, options, state)} onFocus={(event) => previewTriggerFocus(event, options, state)} onBlur={(event) => previewTriggerBlur(event, options, state)} onKeyDown={(event) => previewTriggerKeyDown(event, options, state)}>
64
+ {children}
65
+ </FocusableProvider>)}
66
+ </Provider>
67
+ <span data-rv-overlay-anchor="" style={{ display: "contents" }}>
68
+ <Show when={() => state.isOpen()}>{() => <PreviewEffects state={state} options={options}/>}</Show>
69
+ </span>
70
+ </>);
71
+ }
72
+ /** RA usePreviewTrigger's effects while open (safe area, focus after long press, the trigger's ARIA). */
73
+ function PreviewEffects(props) {
74
+ const { state, options } = props;
75
+ clientEffect(() => {
76
+ // Wait for the popover (RA: effects after the popover rendered).
77
+ if (!options.popoverRef || !(typeof options.popoverRef === "function" ? options.popoverRef() : options.popoverRef))
78
+ return;
79
+ return attachPreviewTrigger(state, options);
80
+ });
81
+ return null;
82
+ }
@@ -0,0 +1,77 @@
1
+ import { type NumberFormatOptions } from "../number/NumberFormatter.js";
2
+ import { type MaybeAccessor } from "../interactions/utils.js";
3
+ export interface ProgressBarBaseProps {
4
+ /**
5
+ * The current value (controlled; a number or an accessor).
6
+ *
7
+ * @default 0
8
+ */
9
+ value?: MaybeAccessor<number | undefined>;
10
+ /**
11
+ * The smallest value allowed for the input.
12
+ *
13
+ * @default 0
14
+ */
15
+ minValue?: MaybeAccessor<number | undefined>;
16
+ /**
17
+ * The largest value allowed for the input.
18
+ *
19
+ * @default 100
20
+ */
21
+ maxValue?: MaybeAccessor<number | undefined>;
22
+ /** The content to display as the label (here: whether a visible label renders). */
23
+ label?: unknown;
24
+ /**
25
+ * The display format of the value label (live: a value or an accessor, read inside `aria-valuetext`).
26
+ *
27
+ * @default { style: 'percent' }
28
+ */
29
+ formatOptions?: MaybeAccessor<NumberFormatOptions | undefined>;
30
+ /** The content to display as the value's label (e.g. 1 of 4). */
31
+ valueLabel?: MaybeAccessor<string | undefined>;
32
+ }
33
+ export interface AriaProgressBarBaseProps extends ProgressBarBaseProps {
34
+ id?: string;
35
+ "aria-label"?: string;
36
+ "aria-labelledby"?: string;
37
+ "aria-describedby"?: string;
38
+ "aria-details"?: string;
39
+ }
40
+ export interface ProgressBarProps extends ProgressBarBaseProps {
41
+ /** Whether presentation is indeterminate when progress isn't known. */
42
+ isIndeterminate?: MaybeAccessor<boolean | undefined>;
43
+ }
44
+ export interface AriaProgressBarProps extends ProgressBarProps, AriaProgressBarBaseProps {
45
+ }
46
+ export interface ProgressBarAttrs {
47
+ id: string;
48
+ role: string;
49
+ "aria-label"?: string;
50
+ "aria-labelledby"?: string;
51
+ "aria-describedby"?: string;
52
+ "aria-details"?: string;
53
+ /** Accessor: the clamped value, `undefined` while indeterminate. */
54
+ "aria-valuenow": () => number | undefined;
55
+ "aria-valuemin": () => number;
56
+ "aria-valuemax": () => number;
57
+ /** Accessor: `valueLabel` or the formatted value, `undefined` while indeterminate. */
58
+ "aria-valuetext": () => string | undefined;
59
+ }
60
+ export interface ProgressBarAria {
61
+ /** Props for the progress bar container element. */
62
+ progressBarProps: ProgressBarAttrs;
63
+ /** Props for the progress bar's visual label element (if any). */
64
+ labelProps: {
65
+ id?: string;
66
+ };
67
+ }
68
+ /**
69
+ * Provides the accessibility implementation for a progress bar component.
70
+ * Progress bars show either determinate or indeterminate progress of an operation
71
+ * over time.
72
+ */
73
+ export declare function progressBarProps(props: AriaProgressBarProps, locale?: string): ProgressBarAria;
74
+ /** RAC ProgressBar / Meter render value: the value as a percentage (0–100) of the range; 0 for an empty range. */
75
+ export declare function percentageOf(value?: number, minValue?: number, maxValue?: number): number;
76
+ /** `percentageOf` over `MaybeAccessor` props (tracked when they are accessors). */
77
+ export declare function percentageOfProps(props: ProgressBarBaseProps): number;
@@ -0,0 +1,75 @@
1
+ // Ported from react-aria `useProgressBar` (packages/react-aria/src/progress/useProgressBar.ts), Apache-2.0, © Adobe.
2
+ // Rivet:
3
+ // - `progressBarProps(props, locale?)` (RA `useProgressBar`) returns `{ progressBarProps, labelProps }`; call it
4
+ // while rendering (it reads the locale context and creates ids, like the hook).
5
+ // - value props are `MaybeAccessor`s (a number or `() => number`), and the value-dependent attributes of the bag
6
+ // (`aria-valuenow`, `aria-valuemin`, `aria-valuemax`, `aria-valuetext`) are accessors: read them inside bindings
7
+ // so a changing value updates the attributes only (accessor rule). `.tsx`: the accessors are resumable closures.
8
+ // - The visual label (`label`) only decides whether a label id is created (RA `useLabel` with
9
+ // `labelElementType: 'span'`); RAC passes `createSlot`'s "a Label rendered" flag.
10
+ // - `useNumberFormatter` → `NumberFormatter` (`@rivetjs/cdk/number`, cached Intl formatter per locale + options),
11
+ // created inside the `aria-valuetext` accessor so the accessor only captures plain data (locale, options).
12
+ import { clamp } from "../utils/index.js";
13
+ import { NumberFormatter } from "../number/NumberFormatter.js";
14
+ import { useLocale } from "../i18n/index.js";
15
+ import { labelAria } from "../label/behaviour.js";
16
+ import { read } from "../interactions/utils.js";
17
+ /** The resolved range of `props`: `[value (clamped), minValue, maxValue]`. */
18
+ function rangeOf(props) {
19
+ const minValue = read(props.minValue) ?? 0;
20
+ const maxValue = read(props.maxValue) ?? 100;
21
+ return [clamp(read(props.value) ?? 0, minValue, maxValue), minValue, maxValue];
22
+ }
23
+ /**
24
+ * Provides the accessibility implementation for a progress bar component.
25
+ * Progress bars show either determinate or indeterminate progress of an operation
26
+ * over time.
27
+ */
28
+ export function progressBarProps(props, locale = useLocale().locale) {
29
+ const { labelProps, fieldProps } = labelAria({
30
+ id: props.id,
31
+ label: props.label,
32
+ "aria-label": props["aria-label"],
33
+ "aria-labelledby": props["aria-labelledby"],
34
+ // Progress bar is not an HTML input element so it shouldn't be labeled by a <label> element.
35
+ labelElementType: "span",
36
+ });
37
+ const isIndeterminate = () => !!read(props.isIndeterminate);
38
+ const valueText = () => {
39
+ if (isIndeterminate())
40
+ return undefined;
41
+ const valueLabel = read(props.valueLabel);
42
+ if (valueLabel)
43
+ return valueLabel;
44
+ const [value, minValue, maxValue] = rangeOf(props);
45
+ const range = maxValue - minValue;
46
+ const percentage = range === 0 ? 0 : (value - minValue) / range;
47
+ const formatOptions = read(props.formatOptions) ?? { style: "percent" };
48
+ // Created per read (the Intl formatter is cached per locale + options): a captured NumberFormatter
49
+ // instance would not serialize into the resumable accessor.
50
+ return new NumberFormatter(locale, formatOptions).format(formatOptions.style === "percent" ? percentage : value);
51
+ };
52
+ const barProps = {
53
+ ...fieldProps,
54
+ role: "progressbar",
55
+ "aria-valuenow": () => (isIndeterminate() ? undefined : rangeOf(props)[0]),
56
+ "aria-valuemin": () => read(props.minValue) ?? 0,
57
+ "aria-valuemax": () => read(props.maxValue) ?? 100,
58
+ "aria-valuetext": valueText,
59
+ };
60
+ if (props["aria-describedby"])
61
+ barProps["aria-describedby"] = props["aria-describedby"];
62
+ if (props["aria-details"])
63
+ barProps["aria-details"] = props["aria-details"];
64
+ return { progressBarProps: barProps, labelProps: { id: labelProps.id } };
65
+ }
66
+ /** RAC ProgressBar / Meter render value: the value as a percentage (0–100) of the range; 0 for an empty range. */
67
+ export function percentageOf(value = 0, minValue = 0, maxValue = 100) {
68
+ value = clamp(value, minValue, maxValue);
69
+ const range = maxValue - minValue;
70
+ return range === 0 ? 0 : ((value - minValue) / range) * 100;
71
+ }
72
+ /** `percentageOf` over `MaybeAccessor` props (tracked when they are accessors). */
73
+ export function percentageOfProps(props) {
74
+ return percentageOf(read(props.value) ?? 0, read(props.minValue) ?? 0, read(props.maxValue) ?? 100);
75
+ }
@@ -0,0 +1,4 @@
1
+ import { type ContextValue } from "../slots/index.jsx";
2
+ import type { ProgressBarProps } from "./index.jsx";
3
+ /** RAC `ProgressBarContext` (Button provides `{ id }` to its pending ProgressBar). */
4
+ export declare const ProgressBarContext: import("@rivetjs/reactivity").Context<ContextValue<ProgressBarProps, HTMLDivElement>>;
@@ -0,0 +1,7 @@
1
+ // RAC `ProgressBarContext` (react-aria-components ProgressBar.tsx), Apache-2.0, © Adobe. Its own module so a Button
2
+ // (which provides `{ id }` to its pending ProgressBar) does not load the ProgressBar part, its behaviour and the
3
+ // number formatter on pages without a ProgressBar.
4
+ import { createContext } from "@rivetjs/reactivity";
5
+ import { resumableContext } from "../slots/index.jsx";
6
+ /** RAC `ProgressBarContext` (Button provides `{ id }` to its pending ProgressBar). */
7
+ export const ProgressBarContext = resumableContext(createContext(null, { id: "rv-progress-bar" }));
@@ -0,0 +1,38 @@
1
+ import { type DOMRenderProps } from "../utils/render.js";
2
+ import { type GlobalDOMAttributes } from "../utils/dom-props.js";
3
+ import { type RefValue, type ClassNameOrFunction, type RenderProps, type SlotProps } from "../slots/index.jsx";
4
+ import { ProgressBarContext } from "./context.js";
5
+ import { type AriaProgressBarProps } from "./behaviour.jsx";
6
+ export { progressBarProps, percentageOf, type AriaProgressBarProps, type ProgressBarAria } from "./behaviour.jsx";
7
+ export interface ProgressBarRenderProps {
8
+ /** The value as a percentage between the minimum and maximum (undefined while indeterminate). */
9
+ percentage: () => number | undefined;
10
+ /**
11
+ * A formatted version of the value.
12
+ *
13
+ * @selector [aria-valuetext]
14
+ */
15
+ valueText: () => string | undefined;
16
+ /**
17
+ * Whether the progress bar is indeterminate.
18
+ *
19
+ * @selector :not([aria-valuenow])
20
+ */
21
+ isIndeterminate: () => boolean;
22
+ }
23
+ export interface ProgressBarProps extends Omit<AriaProgressBarProps, "label">, RenderProps<ProgressBarRenderProps>, DOMRenderProps<"div", ProgressBarRenderProps>, SlotProps, Omit<GlobalDOMAttributes<HTMLDivElement>, "style"> {
24
+ ref?: RefValue<HTMLDivElement>;
25
+ /**
26
+ * The CSS class for the element. A function may be provided to compute the class based on component state.
27
+ *
28
+ * @default 'rv-ProgressBar'
29
+ */
30
+ class?: ClassNameOrFunction<ProgressBarRenderProps>;
31
+ }
32
+ /** RAC `ProgressBarContext`: `./context.ts` (Button imports it from there). */
33
+ export { ProgressBarContext };
34
+ /**
35
+ * Progress bars show either determinate or indeterminate progress of an operation
36
+ * over time.
37
+ */
38
+ export declare function ProgressBar(props: ProgressBarProps): import("@rivetjs/runtime/jsx-runtime").CompiledElement;
@@ -0,0 +1,90 @@
1
+ // Ported from react-aria-components `ProgressBar` (packages/react-aria-components/src/ProgressBar.tsx), Apache-2.0, © Adobe.
2
+ // Progress bars show either determinate or indeterminate progress of an operation over time.
3
+ // Rivet:
4
+ // - render props are accessors (`{({ percentage, valueText }) => <div style={{ width: percentage() + "%" }} />}`);
5
+ // `class` / `style` may be functions of them (RAC `className` → `class`).
6
+ // - the label: `<Label>` inside gets `{ id, elementType: "span" }` from `LabelContext`; `aria-labelledby` points
7
+ // at it while it is attached (`createSlot`: server render assumes it is, when no `aria-label` / `aria-labelledby`).
8
+ // - `value` / `minValue` / `maxValue` / `valueLabel` / `isIndeterminate` accept accessors (`value={() => progress()}`):
9
+ // the aria attributes and render props update in their bindings (the component runs once).
10
+ // `render` (RAC DOMRenderProps): given, the attributes object (reactive entries are accessors) goes to `render(attrs, renderProps)` instead of the default element.
11
+ import { untrack } from "@rivetjs/reactivity";
12
+ import { hasLive, liveOptions, liveView } from "../utils/live.jsx";
13
+ import { Provider } from "@rivetjs/runtime/dom";
14
+ import {} from "../utils/render.js";
15
+ import { globalDOMProps } from "../utils/dom-props.js";
16
+ import { contextProps, createSlot, renderPropsOf, } from "../slots/index.jsx";
17
+ import { LabelContext } from "../label/index.jsx";
18
+ import { read } from "../interactions/utils.js";
19
+ import { ProgressBarContext } from "./context.js";
20
+ import { percentageOfProps, progressBarProps } from "./behaviour.jsx";
21
+ export { progressBarProps, percentageOf } from "./behaviour.jsx";
22
+ const OWNED = ["style", "render"];
23
+ /** RAC `ProgressBarContext`: `./context.ts` (Button imports it from there). */
24
+ export { ProgressBarContext };
25
+ /**
26
+ * Progress bars show either determinate or indeterminate progress of an operation
27
+ * over time.
28
+ */
29
+ export function ProgressBar(props) {
30
+ // Live props (P5): the value props become accessors (the bag reads them with `read` in bindings), class / style /
31
+ // children from a live view; the rest of the body is read once (untracked).
32
+ return untrack(() => progressBar(props));
33
+ }
34
+ const LIVE_KEYS = ["value", "minValue", "maxValue", "valueLabel", "isIndeterminate", "formatOptions"];
35
+ function progressBar(props) {
36
+ const [ctxMerged, ref] = contextProps(props, props.ref, ProgressBarContext);
37
+ const merged = hasLive(ctxMerged) ? liveOptions(ctxMerged, LIVE_KEYS) : ctxMerged;
38
+ const indeterminate = merged.isIndeterminate;
39
+ const isIndeterminate = () => !!read(indeterminate);
40
+ const initialLabel = !merged["aria-label"] && !merged["aria-labelledby"];
41
+ const [labelRef, hasLabel] = createSlot(initialLabel);
42
+ // `children` left out: the bag's accessors (`aria-valuetext`, a render prop) must not capture them (resumed pages).
43
+ const { progressBarProps: barProps, labelProps } = progressBarProps({ ...merged, children: undefined, label: initialLabel });
44
+ const labelledBy = barProps["aria-labelledby"];
45
+ // Calculate the width of the progress bar as a percentage
46
+ // A narrow view of the range keys (not `merged`: the render props' `percentage` would capture the children too).
47
+ const range = liveView(merged, ["value", "minValue", "maxValue"]);
48
+ const percentage = () => (isIndeterminate() ? undefined : percentageOfProps(range));
49
+ const valueText = barProps["aria-valuetext"];
50
+ const values = { percentage, valueText, isIndeterminate };
51
+ const rp = renderPropsOf(merged, { defaultClassName: "rv-ProgressBar", values });
52
+ const dom = globalDOMProps(merged, OWNED);
53
+ const slot = merged.slot || undefined;
54
+ const { id, role } = barProps;
55
+ const ariaLabel = barProps["aria-label"];
56
+ const describedBy = barProps["aria-describedby"];
57
+ const details = barProps["aria-details"];
58
+ const valueNow = barProps["aria-valuenow"];
59
+ const valueMin = barProps["aria-valuemin"];
60
+ const valueMax = barProps["aria-valuemax"];
61
+ const labelValue = { id: labelProps.id, ref: labelRef, elementType: "span" };
62
+ if (merged.render) {
63
+ const attrs = {
64
+ ...dom,
65
+ ref: ref,
66
+ id,
67
+ role,
68
+ class: () => rp.class(),
69
+ style: () => rp.style(),
70
+ slot,
71
+ "aria-label": ariaLabel,
72
+ "aria-labelledby": () => (initialLabel ? (hasLabel() ? labelledBy : undefined) : labelledBy),
73
+ "aria-describedby": describedBy,
74
+ "aria-details": details,
75
+ "aria-valuenow": valueNow,
76
+ "aria-valuemin": valueMin,
77
+ "aria-valuemax": valueMax,
78
+ "aria-valuetext": valueText,
79
+ children: () => (<Provider token={LabelContext} value={labelValue}>
80
+ {rp.children()}
81
+ </Provider>),
82
+ };
83
+ return merged.render(attrs, values);
84
+ }
85
+ return (<div {...dom} ref={ref} id={id} role={role} class={rp.class()} style={rp.style()} slot={slot} aria-label={ariaLabel} aria-labelledby={initialLabel ? (hasLabel() ? labelledBy : undefined) : labelledBy} aria-describedby={describedBy} aria-details={details} aria-valuenow={valueNow()} aria-valuemin={valueMin()} aria-valuemax={valueMax()} aria-valuetext={valueText()}>
86
+ <Provider token={LabelContext} value={labelValue}>
87
+ {rp.children()}
88
+ </Provider>
89
+ </div>);
90
+ }