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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1290) 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 +109 -0
  21. package/_adapters/selection.js +685 -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 +374 -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 +217 -0
  205. package/collections/components.jsx +537 -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 +9 -0
  221. package/collections/nodes.js +81 -0
  222. package/collections/selection-model.d.ts +93 -0
  223. package/collections/selection-model.js +192 -0
  224. package/collections/server-dev.d.ts +5 -0
  225. package/collections/server-dev.js +16 -0
  226. package/collections/server-off.d.ts +5 -0
  227. package/collections/server-off.js +7 -0
  228. package/collections/server-on.d.ts +28 -0
  229. package/collections/server-on.jsx +76 -0
  230. package/collections/table.d.ts +114 -0
  231. package/collections/table.js +439 -0
  232. package/collections/tree-state.d.ts +47 -0
  233. package/collections/tree-state.js +73 -0
  234. package/collections/tree.d.ts +20 -0
  235. package/collections/tree.js +66 -0
  236. package/collections/types.d.ts +229 -0
  237. package/collections/types.js +4 -0
  238. package/collections/unique-selection-dispatcher.d.ts +10 -0
  239. package/collections/unique-selection-dispatcher.js +25 -0
  240. package/color/area-state.d.ts +99 -0
  241. package/color/area-state.js +160 -0
  242. package/color/aria-intl.d.ts +3 -0
  243. package/color/aria-intl.js +274 -0
  244. package/color/channel-field-state.d.ts +50 -0
  245. package/color/channel-field-state.jsx +87 -0
  246. package/color/color.d.ts +78 -0
  247. package/color/color.js +738 -0
  248. package/color/field-state.d.ts +66 -0
  249. package/color/field-state.jsx +159 -0
  250. package/color/index.d.ts +58 -0
  251. package/color/index.js +88 -0
  252. package/color/intl.d.ts +3 -0
  253. package/color/intl.js +1328 -0
  254. package/color/picker-state.d.ts +20 -0
  255. package/color/picker-state.js +19 -0
  256. package/color/slider-state.d.ts +78 -0
  257. package/color/slider-state.jsx +98 -0
  258. package/color/value.d.ts +27 -0
  259. package/color/value.js +36 -0
  260. package/color/wheel-state.d.ts +77 -0
  261. package/color/wheel-state.js +152 -0
  262. package/color-area/behaviour.d.ts +161 -0
  263. package/color-area/behaviour.jsx +454 -0
  264. package/color-area/index.d.ts +34 -0
  265. package/color-area/index.jsx +187 -0
  266. package/color-field/behaviour.d.ts +112 -0
  267. package/color-field/behaviour.jsx +262 -0
  268. package/color-field/index.d.ts +72 -0
  269. package/color-field/index.jsx +309 -0
  270. package/color-picker/index.d.ts +19 -0
  271. package/color-picker/index.jsx +49 -0
  272. package/color-slider/behaviour.d.ts +103 -0
  273. package/color-slider/behaviour.jsx +234 -0
  274. package/color-slider/index.d.ts +40 -0
  275. package/color-slider/index.jsx +162 -0
  276. package/color-swatch/behaviour.d.ts +40 -0
  277. package/color-swatch/behaviour.js +36 -0
  278. package/color-swatch/index.d.ts +29 -0
  279. package/color-swatch/index.jsx +82 -0
  280. package/color-swatch-picker/index.d.ts +62 -0
  281. package/color-swatch-picker/index.jsx +95 -0
  282. package/color-swatch-picker/intl.d.ts +3 -0
  283. package/color-swatch-picker/intl.js +104 -0
  284. package/color-thumb/index.d.ts +85 -0
  285. package/color-thumb/index.jsx +93 -0
  286. package/color-wheel/behaviour.d.ts +123 -0
  287. package/color-wheel/behaviour.jsx +301 -0
  288. package/color-wheel/index.d.ts +50 -0
  289. package/color-wheel/index.jsx +166 -0
  290. package/combobox/behaviour.d.ts +120 -0
  291. package/combobox/behaviour.jsx +588 -0
  292. package/combobox/index.d.ts +101 -0
  293. package/combobox/index.jsx +365 -0
  294. package/combobox/intl.d.ts +2 -0
  295. package/combobox/intl.js +240 -0
  296. package/compare/behaviour.d.ts +101 -0
  297. package/compare/behaviour.js +288 -0
  298. package/compare/index.d.ts +58 -0
  299. package/compare/index.jsx +129 -0
  300. package/data/async-list.d.ts +78 -0
  301. package/data/async-list.jsx +257 -0
  302. package/data/index.d.ts +3 -0
  303. package/data/index.jsx +6 -0
  304. package/data/list-data.d.ts +88 -0
  305. package/data/list-data.jsx +210 -0
  306. package/data/tree-data.d.ts +59 -0
  307. package/data/tree-data.jsx +278 -0
  308. package/data-grid/behaviour.d.ts +95 -0
  309. package/data-grid/behaviour.js +725 -0
  310. package/data-grid/index.d.ts +138 -0
  311. package/data-grid/index.jsx +452 -0
  312. package/data-grid/state.d.ts +131 -0
  313. package/data-grid/state.js +288 -0
  314. package/date/CalendarDate.d.ts +207 -0
  315. package/date/CalendarDate.js +374 -0
  316. package/date/DateFormatter.d.ts +24 -0
  317. package/date/DateFormatter.js +175 -0
  318. package/date/calendars/BuddhistCalendar.d.ts +16 -0
  319. package/date/calendars/BuddhistCalendar.js +46 -0
  320. package/date/calendars/EthiopicCalendar.d.ts +45 -0
  321. package/date/calendars/EthiopicCalendar.js +178 -0
  322. package/date/calendars/GregorianCalendar.d.ts +26 -0
  323. package/date/calendars/GregorianCalendar.js +122 -0
  324. package/date/calendars/HebrewCalendar.d.ts +21 -0
  325. package/date/calendars/HebrewCalendar.js +174 -0
  326. package/date/calendars/IndianCalendar.d.ts +17 -0
  327. package/date/calendars/IndianCalendar.js +111 -0
  328. package/date/calendars/IslamicCalendar.d.ts +51 -0
  329. package/date/calendars/IslamicCalendar.js +205 -0
  330. package/date/calendars/JapaneseCalendar.d.ts +22 -0
  331. package/date/calendars/JapaneseCalendar.js +148 -0
  332. package/date/calendars/PersianCalendar.d.ts +19 -0
  333. package/date/calendars/PersianCalendar.js +85 -0
  334. package/date/calendars/TaiwanCalendar.d.ts +19 -0
  335. package/date/calendars/TaiwanCalendar.js +70 -0
  336. package/date/conversion.d.ts +45 -0
  337. package/date/conversion.js +269 -0
  338. package/date/createCalendar.d.ts +3 -0
  339. package/date/createCalendar.js +55 -0
  340. package/date/index.d.ts +20 -0
  341. package/date/index.js +30 -0
  342. package/date/manipulation.d.ts +25 -0
  343. package/date/manipulation.js +399 -0
  344. package/date/queries.d.ts +93 -0
  345. package/date/queries.js +303 -0
  346. package/date/serialize.d.ts +18 -0
  347. package/date/serialize.js +55 -0
  348. package/date/string.d.ts +36 -0
  349. package/date/string.js +223 -0
  350. package/date/types.d.ts +136 -0
  351. package/date/types.js +14 -0
  352. package/date/utils.d.ts +4 -0
  353. package/date/utils.js +16 -0
  354. package/date/weekStartData.d.ts +1 -0
  355. package/date/weekStartData.js +112 -0
  356. package/date-field/behaviour.d.ts +188 -0
  357. package/date-field/behaviour.jsx +1025 -0
  358. package/date-field/index.d.ts +150 -0
  359. package/date-field/index.jsx +354 -0
  360. package/date-field/intl.d.ts +3 -0
  361. package/date-field/intl.js +36 -0
  362. package/date-field/live-value.d.ts +22 -0
  363. package/date-field/live-value.jsx +44 -0
  364. package/date-picker/behaviour.d.ts +95 -0
  365. package/date-picker/behaviour.jsx +343 -0
  366. package/date-picker/index.d.ts +66 -0
  367. package/date-picker/index.jsx +243 -0
  368. package/dialog/behaviour.d.ts +63 -0
  369. package/dialog/behaviour.jsx +90 -0
  370. package/dialog/contexts.d.ts +12 -0
  371. package/dialog/contexts.js +8 -0
  372. package/dialog/index.d.ts +48 -0
  373. package/dialog/index.jsx +301 -0
  374. package/disclosure/behaviour.d.ts +50 -0
  375. package/disclosure/behaviour.jsx +128 -0
  376. package/disclosure/details.d.ts +21 -0
  377. package/disclosure/details.jsx +14 -0
  378. package/disclosure/index.d.ts +92 -0
  379. package/disclosure/index.jsx +300 -0
  380. package/drag-drop/cdk-index.d.ts +22 -0
  381. package/drag-drop/cdk-index.jsx +25 -0
  382. package/drag-drop/directives/assertions.d.ts +6 -0
  383. package/drag-drop/directives/assertions.js +13 -0
  384. package/drag-drop/directives/config.d.ts +30 -0
  385. package/drag-drop/directives/config.js +7 -0
  386. package/drag-drop/directives/drag-handle.d.ts +10 -0
  387. package/drag-drop/directives/drag-handle.js +29 -0
  388. package/drag-drop/directives/drag.d.ts +194 -0
  389. package/drag-drop/directives/drag.js +522 -0
  390. package/drag-drop/directives/drop-list-group.d.ts +25 -0
  391. package/drag-drop/directives/drop-list-group.js +55 -0
  392. package/drag-drop/directives/drop-list.d.ts +163 -0
  393. package/drag-drop/directives/drop-list.js +396 -0
  394. package/drag-drop/directives/registry.d.ts +32 -0
  395. package/drag-drop/directives/registry.js +61 -0
  396. package/drag-drop/dom/clone-node.d.ts +2 -0
  397. package/drag-drop/dom/clone-node.js +58 -0
  398. package/drag-drop/dom/coerce.d.ts +6 -0
  399. package/drag-drop/dom/coerce.js +8 -0
  400. package/drag-drop/dom/dom-rect.d.ts +37 -0
  401. package/drag-drop/dom/dom-rect.js +71 -0
  402. package/drag-drop/dom/fake-event.d.ts +4 -0
  403. package/drag-drop/dom/fake-event.js +22 -0
  404. package/drag-drop/dom/inherited-text.d.ts +4 -0
  405. package/drag-drop/dom/inherited-text.js +44 -0
  406. package/drag-drop/dom/layout-shift.d.ts +8 -0
  407. package/drag-drop/dom/layout-shift.js +87 -0
  408. package/drag-drop/dom/mount-content.d.ts +2 -0
  409. package/drag-drop/dom/mount-content.js +7 -0
  410. package/drag-drop/dom/parent-position-tracker.d.ts +32 -0
  411. package/drag-drop/dom/parent-position-tracker.js +71 -0
  412. package/drag-drop/dom/root-node.d.ts +21 -0
  413. package/drag-drop/dom/root-node.js +41 -0
  414. package/drag-drop/dom/shadow-dom.d.ts +4 -0
  415. package/drag-drop/dom/shadow-dom.js +18 -0
  416. package/drag-drop/dom/styling.d.ts +52 -0
  417. package/drag-drop/dom/styling.js +86 -0
  418. package/drag-drop/dom/transition-duration.d.ts +2 -0
  419. package/drag-drop/dom/transition-duration.js +29 -0
  420. package/drag-drop/drag-drop-registry.d.ts +69 -0
  421. package/drag-drop/drag-drop-registry.js +224 -0
  422. package/drag-drop/drag-drop.d.ts +19 -0
  423. package/drag-drop/drag-drop.js +10 -0
  424. package/drag-drop/drag-events.d.ts +117 -0
  425. package/drag-drop/drag-events.js +1 -0
  426. package/drag-drop/drag-handle.d.ts +18 -0
  427. package/drag-drop/drag-handle.jsx +53 -0
  428. package/drag-drop/drag-placeholder.d.ts +8 -0
  429. package/drag-drop/drag-placeholder.jsx +25 -0
  430. package/drag-drop/drag-preview.d.ts +10 -0
  431. package/drag-drop/drag-preview.jsx +31 -0
  432. package/drag-drop/drag-ref.d.ts +476 -0
  433. package/drag-drop/drag-ref.js +1306 -0
  434. package/drag-drop/drag-utils.d.ts +25 -0
  435. package/drag-drop/drag-utils.js +53 -0
  436. package/drag-drop/drag.d.ts +23 -0
  437. package/drag-drop/drag.jsx +126 -0
  438. package/drag-drop/drop-list-group.d.ts +22 -0
  439. package/drag-drop/drop-list-group.jsx +19 -0
  440. package/drag-drop/drop-list-ref.d.ts +295 -0
  441. package/drag-drop/drop-list-ref.js +707 -0
  442. package/drag-drop/drop-list.d.ts +19 -0
  443. package/drag-drop/drop-list.jsx +87 -0
  444. package/drag-drop/index.d.ts +1 -0
  445. package/drag-drop/index.jsx +4 -0
  446. package/drag-drop/lazy-refs.d.ts +28 -0
  447. package/drag-drop/lazy-refs.js +133 -0
  448. package/drag-drop/preview-ref.d.ts +38 -0
  449. package/drag-drop/preview-ref.js +132 -0
  450. package/drag-drop/sorting/drop-list-sort-strategy.d.ts +29 -0
  451. package/drag-drop/sorting/drop-list-sort-strategy.js +1 -0
  452. package/drag-drop/sorting/mixed-sort-strategy.d.ts +99 -0
  453. package/drag-drop/sorting/mixed-sort-strategy.js +259 -0
  454. package/drag-drop/sorting/single-axis-sort-strategy.d.ts +112 -0
  455. package/drag-drop/sorting/single-axis-sort-strategy.js +343 -0
  456. package/file-trigger/index.d.ts +24 -0
  457. package/file-trigger/index.jsx +41 -0
  458. package/flip/index.d.ts +59 -0
  459. package/flip/index.js +124 -0
  460. package/focus/focus-ring.d.ts +42 -0
  461. package/focus/focus-ring.jsx +77 -0
  462. package/focus/focus-scope.d.ts +51 -0
  463. package/focus/focus-scope.jsx +431 -0
  464. package/focus/focusable.d.ts +33 -0
  465. package/focus/focusable.jsx +93 -0
  466. package/focus/index.d.ts +74 -0
  467. package/focus/index.js +274 -0
  468. package/form/behaviour.d.ts +29 -0
  469. package/form/behaviour.js +145 -0
  470. package/form/field-error.d.ts +38 -0
  471. package/form/field-error.jsx +67 -0
  472. package/form/index.d.ts +77 -0
  473. package/form/index.jsx +116 -0
  474. package/grid/behaviour.d.ts +290 -0
  475. package/grid/behaviour.js +683 -0
  476. package/grid/intl.d.ts +2 -0
  477. package/grid/intl.js +36 -0
  478. package/grid/keyboard-delegate.d.ts +56 -0
  479. package/grid/keyboard-delegate.js +316 -0
  480. package/grid-list/behaviour.d.ts +242 -0
  481. package/grid-list/behaviour.js +598 -0
  482. package/grid-list/index.d.ts +202 -0
  483. package/grid-list/index.jsx +685 -0
  484. package/grid-list/row.d.ts +24 -0
  485. package/grid-list/row.js +57 -0
  486. package/group/index.d.ts +48 -0
  487. package/group/index.jsx +126 -0
  488. package/header/index.d.ts +13 -0
  489. package/header/index.jsx +34 -0
  490. package/heading/index.d.ts +19 -0
  491. package/heading/index.jsx +55 -0
  492. package/highlight/index.d.ts +12 -0
  493. package/highlight/index.jsx +357 -0
  494. package/i18n/filter.d.ts +16 -0
  495. package/i18n/filter.js +66 -0
  496. package/i18n/i18n-provider.d.ts +10 -0
  497. package/i18n/i18n-provider.jsx +15 -0
  498. package/i18n/index.d.ts +27 -0
  499. package/i18n/index.js +115 -0
  500. package/i18n/intl-cache.d.ts +4 -0
  501. package/i18n/intl-cache.js +40 -0
  502. package/i18n/list-formatter.d.ts +2 -0
  503. package/i18n/list-formatter.js +11 -0
  504. package/input/index.d.ts +51 -0
  505. package/input/index.jsx +95 -0
  506. package/interactions/controllable.d.ts +42 -0
  507. package/interactions/controllable.js +67 -0
  508. package/interactions/focus-visible.d.ts +68 -0
  509. package/interactions/focus-visible.jsx +291 -0
  510. package/interactions/focus.d.ts +58 -0
  511. package/interactions/focus.jsx +152 -0
  512. package/interactions/hover.d.ts +54 -0
  513. package/interactions/hover.jsx +139 -0
  514. package/interactions/index.d.ts +1 -0
  515. package/interactions/index.js +3 -0
  516. package/interactions/interact-outside.d.ts +24 -0
  517. package/interactions/interact-outside.jsx +57 -0
  518. package/interactions/keyboard.d.ts +28 -0
  519. package/interactions/keyboard.jsx +51 -0
  520. package/interactions/long-press.d.ts +41 -0
  521. package/interactions/long-press.jsx +79 -0
  522. package/interactions/merge-props.d.ts +54 -0
  523. package/interactions/merge-props.jsx +257 -0
  524. package/interactions/move.d.ts +48 -0
  525. package/interactions/move.jsx +96 -0
  526. package/interactions/press.d.ts +129 -0
  527. package/interactions/press.jsx +538 -0
  528. package/interactions/pressable.d.ts +22 -0
  529. package/interactions/pressable.jsx +93 -0
  530. package/interactions/scroll-wheel.d.ts +20 -0
  531. package/interactions/scroll-wheel.jsx +40 -0
  532. package/interactions/utils.d.ts +53 -0
  533. package/interactions/utils.js +252 -0
  534. package/keyboard/index.d.ts +12 -0
  535. package/keyboard/index.jsx +34 -0
  536. package/keys/index.d.ts +68 -0
  537. package/keys/index.js +199 -0
  538. package/label/behaviour.d.ts +54 -0
  539. package/label/behaviour.js +60 -0
  540. package/label/index.d.ts +35 -0
  541. package/label/index.jsx +85 -0
  542. package/landmark/index.d.ts +10 -0
  543. package/landmark/index.jsx +35 -0
  544. package/landmark/manager.d.ts +50 -0
  545. package/landmark/manager.js +364 -0
  546. package/layout/index.d.ts +90 -0
  547. package/layout/index.js +207 -0
  548. package/lightbox/behaviour.d.ts +82 -0
  549. package/lightbox/behaviour.js +490 -0
  550. package/lightbox/captions/index.d.ts +39 -0
  551. package/lightbox/captions/index.jsx +44 -0
  552. package/lightbox/counter/index.d.ts +10 -0
  553. package/lightbox/counter/index.jsx +10 -0
  554. package/lightbox/download/index.d.ts +32 -0
  555. package/lightbox/download/index.jsx +89 -0
  556. package/lightbox/embed/index.d.ts +15 -0
  557. package/lightbox/embed/index.jsx +58 -0
  558. package/lightbox/fullscreen/index.d.ts +24 -0
  559. package/lightbox/fullscreen/index.jsx +80 -0
  560. package/lightbox/index.d.ts +129 -0
  561. package/lightbox/index.jsx +284 -0
  562. package/lightbox/inline/index.d.ts +18 -0
  563. package/lightbox/inline/index.jsx +15 -0
  564. package/lightbox/pdf/index.d.ts +18 -0
  565. package/lightbox/pdf/index.jsx +31 -0
  566. package/lightbox/share/index.d.ts +29 -0
  567. package/lightbox/share/index.jsx +43 -0
  568. package/lightbox/slideshow/index.d.ts +24 -0
  569. package/lightbox/slideshow/index.jsx +118 -0
  570. package/lightbox/state.d.ts +334 -0
  571. package/lightbox/state.js +192 -0
  572. package/lightbox/thumbnails/index.d.ts +54 -0
  573. package/lightbox/thumbnails/index.jsx +96 -0
  574. package/lightbox/video/index.d.ts +13 -0
  575. package/lightbox/video/index.jsx +42 -0
  576. package/lightbox/zoom/index.d.ts +67 -0
  577. package/lightbox/zoom/index.jsx +456 -0
  578. package/link/behaviour.d.ts +41 -0
  579. package/link/behaviour.js +58 -0
  580. package/link/index.d.ts +30 -0
  581. package/link/index.jsx +179 -0
  582. package/link/router.d.ts +1 -0
  583. package/link/router.js +5 -0
  584. package/listbox/behaviour.d.ts +175 -0
  585. package/listbox/behaviour.jsx +492 -0
  586. package/listbox/index.d.ts +129 -0
  587. package/listbox/index.jsx +596 -0
  588. package/markdown/index.d.ts +82 -0
  589. package/markdown/index.jsx +654 -0
  590. package/masonry/behaviour.d.ts +121 -0
  591. package/masonry/behaviour.js +676 -0
  592. package/masonry/flip.d.ts +27 -0
  593. package/masonry/flip.js +61 -0
  594. package/masonry/geometry.d.ts +44 -0
  595. package/masonry/geometry.js +184 -0
  596. package/masonry/index.d.ts +153 -0
  597. package/masonry/index.jsx +833 -0
  598. package/masonry/justified.d.ts +49 -0
  599. package/masonry/justified.js +250 -0
  600. package/masonry/layout.d.ts +200 -0
  601. package/masonry/layout.js +668 -0
  602. package/masonry/masonry-layout.d.ts +57 -0
  603. package/masonry/masonry-layout.js +159 -0
  604. package/masonry/masonry.css +29 -0
  605. package/menu/behaviour.d.ts +205 -0
  606. package/menu/behaviour.jsx +847 -0
  607. package/menu/index.d.ts +171 -0
  608. package/menu/index.jsx +671 -0
  609. package/menu/intl.d.ts +2 -0
  610. package/menu/intl.js +36 -0
  611. package/menu/safely-mouse-to-submenu.d.ts +12 -0
  612. package/menu/safely-mouse-to-submenu.js +128 -0
  613. package/meter/behaviour.d.ts +18 -0
  614. package/meter/behaviour.jsx +17 -0
  615. package/meter/index.d.ts +30 -0
  616. package/meter/index.jsx +85 -0
  617. package/modal/index.d.ts +79 -0
  618. package/modal/index.jsx +359 -0
  619. package/modal/provider.d.ts +47 -0
  620. package/modal/provider.jsx +105 -0
  621. package/morph/index.d.ts +91 -0
  622. package/morph/index.jsx +372 -0
  623. package/morph/item.d.ts +89 -0
  624. package/morph/item.jsx +546 -0
  625. package/motion/Animations.d.ts +17 -0
  626. package/motion/Animations.js +56 -0
  627. package/motion/DragRelease.d.ts +22 -0
  628. package/motion/DragRelease.js +26 -0
  629. package/motion/DragTracker.d.ts +7 -0
  630. package/motion/DragTracker.js +43 -0
  631. package/motion/Limit.d.ts +12 -0
  632. package/motion/Limit.js +37 -0
  633. package/motion/Motion1D.d.ts +38 -0
  634. package/motion/Motion1D.js +72 -0
  635. package/motion/ScrollBody.d.ts +13 -0
  636. package/motion/ScrollBody.js +75 -0
  637. package/motion/Vector1d.d.ts +8 -0
  638. package/motion/Vector1d.js +29 -0
  639. package/motion/index.d.ts +8 -0
  640. package/motion/index.js +12 -0
  641. package/motion/utils.d.ts +5 -0
  642. package/motion/utils.js +23 -0
  643. package/native-select/index.d.ts +46 -0
  644. package/native-select/index.jsx +99 -0
  645. package/navigation-tree/index.d.ts +43 -0
  646. package/navigation-tree/index.jsx +110 -0
  647. package/number/NumberFormatter.d.ts +28 -0
  648. package/number/NumberFormatter.js +144 -0
  649. package/number/NumberParser.d.ts +27 -0
  650. package/number/NumberParser.js +316 -0
  651. package/number/index.d.ts +5 -0
  652. package/number/index.jsx +17 -0
  653. package/number/number-field-state.d.ts +132 -0
  654. package/number/number-field-state.jsx +364 -0
  655. package/number-field/behaviour.d.ts +165 -0
  656. package/number-field/behaviour.jsx +512 -0
  657. package/number-field/index.d.ts +52 -0
  658. package/number-field/index.jsx +207 -0
  659. package/number-field/intl.d.ts +2 -0
  660. package/number-field/intl.js +36 -0
  661. package/observers/index.d.ts +70 -0
  662. package/observers/index.js +279 -0
  663. package/overflow/index.d.ts +93 -0
  664. package/overflow/index.jsx +267 -0
  665. package/overlay/aria-hide-outside.d.ts +12 -0
  666. package/overlay/aria-hide-outside.js +141 -0
  667. package/overlay/close-on-scroll.d.ts +1 -0
  668. package/overlay/close-on-scroll.js +6 -0
  669. package/overlay/contexts.d.ts +34 -0
  670. package/overlay/contexts.js +21 -0
  671. package/overlay/dismiss-button.d.ts +10 -0
  672. package/overlay/dismiss-button.jsx +18 -0
  673. package/overlay/hover-trigger.d.ts +54 -0
  674. package/overlay/hover-trigger.jsx +221 -0
  675. package/overlay/index.d.ts +40 -0
  676. package/overlay/index.js +139 -0
  677. package/overlay/modal-overlay.d.ts +16 -0
  678. package/overlay/modal-overlay.js +38 -0
  679. package/overlay/overlay-strings.d.ts +4 -0
  680. package/overlay/overlay-strings.js +52 -0
  681. package/overlay/overlay-trigger-state.d.ts +1 -0
  682. package/overlay/overlay-trigger-state.js +3 -0
  683. package/overlay/overlay-trigger.d.ts +27 -0
  684. package/overlay/overlay-trigger.jsx +50 -0
  685. package/overlay/position.d.ts +160 -0
  686. package/overlay/position.js +559 -0
  687. package/overlay/prevent-scroll-ios.d.ts +17 -0
  688. package/overlay/prevent-scroll-ios.js +331 -0
  689. package/overlay/prevent-scroll.d.ts +18 -0
  690. package/overlay/prevent-scroll.js +122 -0
  691. package/overlay/safe-area.d.ts +28 -0
  692. package/overlay/safe-area.js +108 -0
  693. package/overlay-arrow/index.d.ts +23 -0
  694. package/overlay-arrow/index.jsx +59 -0
  695. package/overlay-service/connected-position.d.ts +163 -0
  696. package/overlay-service/connected-position.js +661 -0
  697. package/overlay-service/global-position.d.ts +34 -0
  698. package/overlay-service/global-position.js +154 -0
  699. package/overlay-service/index.d.ts +15 -0
  700. package/overlay-service/index.js +27 -0
  701. package/overlay-service/overlay-container.d.ts +27 -0
  702. package/overlay-service/overlay-container.js +93 -0
  703. package/overlay-service/overlay-dispatchers.d.ts +44 -0
  704. package/overlay-service/overlay-dispatchers.js +149 -0
  705. package/overlay-service/overlay-position-builder.d.ts +8 -0
  706. package/overlay-service/overlay-position-builder.js +15 -0
  707. package/overlay-service/overlay-ref.d.ts +155 -0
  708. package/overlay-service/overlay-ref.js +436 -0
  709. package/overlay-service/overlay-strategy.d.ts +48 -0
  710. package/overlay-service/overlay-strategy.js +3 -0
  711. package/overlay-service/overlay-viewport.d.ts +85 -0
  712. package/overlay-service/overlay-viewport.js +192 -0
  713. package/overlay-service/overlay.css +94 -0
  714. package/overlay-service/scroll-strategies.d.ts +71 -0
  715. package/overlay-service/scroll-strategies.js +185 -0
  716. package/package.json +754 -4
  717. package/platform/index.d.ts +100 -0
  718. package/platform/index.js +304 -0
  719. package/popover/behaviour.d.ts +23 -0
  720. package/popover/behaviour.js +39 -0
  721. package/popover/index.d.ts +60 -0
  722. package/popover/index.jsx +285 -0
  723. package/popover/popover-overlay.d.ts +27 -0
  724. package/popover/popover-overlay.jsx +60 -0
  725. package/popover/use-popover.d.ts +57 -0
  726. package/popover/use-popover.js +92 -0
  727. package/portal/index.d.ts +47 -0
  728. package/portal/index.jsx +76 -0
  729. package/portal/portal-mount.d.ts +8 -0
  730. package/portal/portal-mount.js +7 -0
  731. package/portal/portal-outlet.d.ts +88 -0
  732. package/portal/portal-outlet.js +222 -0
  733. package/preview-trigger/behaviour.d.ts +70 -0
  734. package/preview-trigger/behaviour.jsx +258 -0
  735. package/preview-trigger/index.d.ts +12 -0
  736. package/preview-trigger/index.jsx +82 -0
  737. package/progress-bar/behaviour.d.ts +77 -0
  738. package/progress-bar/behaviour.jsx +75 -0
  739. package/progress-bar/context.d.ts +4 -0
  740. package/progress-bar/context.js +7 -0
  741. package/progress-bar/index.d.ts +38 -0
  742. package/progress-bar/index.jsx +90 -0
  743. package/radio-group/behaviour.d.ts +11 -0
  744. package/radio-group/behaviour.js +85 -0
  745. package/radio-group/index.d.ts +82 -0
  746. package/radio-group/index.jsx +139 -0
  747. package/radio-group/parts.d.ts +223 -0
  748. package/radio-group/parts.jsx +425 -0
  749. package/range-calendar/behaviour.d.ts +2 -0
  750. package/range-calendar/behaviour.jsx +5 -0
  751. package/range-calendar/index.d.ts +2 -0
  752. package/range-calendar/index.jsx +4 -0
  753. package/resizable/engine/components/group/auto-save/getStorageKey.d.ts +1 -0
  754. package/resizable/engine/components/group/auto-save/getStorageKey.js +5 -0
  755. package/resizable/engine/components/group/compareDocumentPosition.d.ts +5 -0
  756. package/resizable/engine/components/group/compareDocumentPosition.js +19 -0
  757. package/resizable/engine/components/group/readLegacyLayout.d.ts +16 -0
  758. package/resizable/engine/components/group/readLegacyLayout.js +48 -0
  759. package/resizable/engine/components/group/sortByElementOffset.d.ts +4 -0
  760. package/resizable/engine/components/group/sortByElementOffset.js +28 -0
  761. package/resizable/engine/components/group/types.d.ts +50 -0
  762. package/resizable/engine/components/group/types.js +1 -0
  763. package/resizable/engine/components/panel/types.d.ts +90 -0
  764. package/resizable/engine/components/panel/types.js +4 -0
  765. package/resizable/engine/constants.d.ts +15 -0
  766. package/resizable/engine/constants.js +27 -0
  767. package/resizable/engine/global/cursor/getCursorStyle.d.ts +7 -0
  768. package/resizable/engine/global/cursor/getCursorStyle.js +94 -0
  769. package/resizable/engine/global/cursor/supportsAdvancedCursorStyles.d.ts +5 -0
  770. package/resizable/engine/global/cursor/supportsAdvancedCursorStyles.js +20 -0
  771. package/resizable/engine/global/cursor/updateCursorStyle.d.ts +1 -0
  772. package/resizable/engine/global/cursor/updateCursorStyle.js +64 -0
  773. package/resizable/engine/global/dom/calculateAvailableAxisSize.d.ts +4 -0
  774. package/resizable/engine/global/dom/calculateAvailableAxisSize.js +10 -0
  775. package/resizable/engine/global/dom/calculateHitRegions.d.ts +13 -0
  776. package/resizable/engine/global/dom/calculateHitRegions.js +153 -0
  777. package/resizable/engine/global/dom/calculateItemConstraints.d.ts +2 -0
  778. package/resizable/engine/global/dom/calculateItemConstraints.js +82 -0
  779. package/resizable/engine/global/event-handlers/onDocumentContextMenu.d.ts +1 -0
  780. package/resizable/engine/global/event-handlers/onDocumentContextMenu.js +9 -0
  781. package/resizable/engine/global/event-handlers/onDocumentDoubleClick.d.ts +1 -0
  782. package/resizable/engine/global/event-handlers/onDocumentDoubleClick.js +28 -0
  783. package/resizable/engine/global/event-handlers/onDocumentKeyDown.d.ts +1 -0
  784. package/resizable/engine/global/event-handlers/onDocumentKeyDown.js +97 -0
  785. package/resizable/engine/global/event-handlers/onDocumentLostPointerCapture.d.ts +1 -0
  786. package/resizable/engine/global/event-handlers/onDocumentLostPointerCapture.js +18 -0
  787. package/resizable/engine/global/event-handlers/onDocumentPointerCancel.d.ts +1 -0
  788. package/resizable/engine/global/event-handlers/onDocumentPointerCancel.js +8 -0
  789. package/resizable/engine/global/event-handlers/onDocumentPointerDown.d.ts +1 -0
  790. package/resizable/engine/global/event-handlers/onDocumentPointerDown.js +54 -0
  791. package/resizable/engine/global/event-handlers/onDocumentPointerLeave.d.ts +1 -0
  792. package/resizable/engine/global/event-handlers/onDocumentPointerLeave.js +22 -0
  793. package/resizable/engine/global/event-handlers/onDocumentPointerMove.d.ts +1 -0
  794. package/resizable/engine/global/event-handlers/onDocumentPointerMove.js +69 -0
  795. package/resizable/engine/global/event-handlers/onDocumentPointerOut.d.ts +1 -0
  796. package/resizable/engine/global/event-handlers/onDocumentPointerOut.js +20 -0
  797. package/resizable/engine/global/event-handlers/onDocumentPointerUp.d.ts +1 -0
  798. package/resizable/engine/global/event-handlers/onDocumentPointerUp.js +15 -0
  799. package/resizable/engine/global/event-handlers/onWindowBlur.d.ts +1 -0
  800. package/resizable/engine/global/event-handlers/onWindowBlur.js +11 -0
  801. package/resizable/engine/global/mountAxis.d.ts +2 -0
  802. package/resizable/engine/global/mountAxis.js +187 -0
  803. package/resizable/engine/global/mutable-state/axes.d.ts +37 -0
  804. package/resizable/engine/global/mutable-state/axes.js +52 -0
  805. package/resizable/engine/global/mutable-state/interactions.d.ts +17 -0
  806. package/resizable/engine/global/mutable-state/interactions.js +92 -0
  807. package/resizable/engine/global/mutable-state/types.d.ts +32 -0
  808. package/resizable/engine/global/mutable-state/types.js +1 -0
  809. package/resizable/engine/global/styles/convertEmToPixels.d.ts +1 -0
  810. package/resizable/engine/global/styles/convertEmToPixels.js +7 -0
  811. package/resizable/engine/global/styles/convertRemToPixels.d.ts +1 -0
  812. package/resizable/engine/global/styles/convertRemToPixels.js +7 -0
  813. package/resizable/engine/global/styles/convertVhToPixels.d.ts +1 -0
  814. package/resizable/engine/global/styles/convertVhToPixels.js +5 -0
  815. package/resizable/engine/global/styles/convertVwToPixels.d.ts +1 -0
  816. package/resizable/engine/global/styles/convertVwToPixels.js +5 -0
  817. package/resizable/engine/global/styles/parseSizeAndUnit.d.ts +2 -0
  818. package/resizable/engine/global/styles/parseSizeAndUnit.js +29 -0
  819. package/resizable/engine/global/styles/sizeStyleToPixels.d.ts +5 -0
  820. package/resizable/engine/global/styles/sizeStyleToPixels.js +38 -0
  821. package/resizable/engine/global/types.d.ts +120 -0
  822. package/resizable/engine/global/types.js +1 -0
  823. package/resizable/engine/global/utils/abortActivePointerResize.d.ts +9 -0
  824. package/resizable/engine/global/utils/abortActivePointerResize.js +52 -0
  825. package/resizable/engine/global/utils/adjustLayoutByDelta.d.ts +9 -0
  826. package/resizable/engine/global/utils/adjustLayoutByDelta.js +219 -0
  827. package/resizable/engine/global/utils/adjustLayoutForSeparator.d.ts +1 -0
  828. package/resizable/engine/global/utils/adjustLayoutForSeparator.js +48 -0
  829. package/resizable/engine/global/utils/calculateDefaultLayout.d.ts +2 -0
  830. package/resizable/engine/global/utils/calculateDefaultLayout.js +30 -0
  831. package/resizable/engine/global/utils/calculateResizePreviews.d.ts +3 -0
  832. package/resizable/engine/global/utils/calculateResizePreviews.js +39 -0
  833. package/resizable/engine/global/utils/calculateSeparatorAriaValues.d.ts +12 -0
  834. package/resizable/engine/global/utils/calculateSeparatorAriaValues.js +43 -0
  835. package/resizable/engine/global/utils/compareLayoutNumbers.d.ts +1 -0
  836. package/resizable/engine/global/utils/compareLayoutNumbers.js +11 -0
  837. package/resizable/engine/global/utils/completeActivePointerResize.d.ts +6 -0
  838. package/resizable/engine/global/utils/completeActivePointerResize.js +49 -0
  839. package/resizable/engine/global/utils/doRectsIntersect.d.ts +2 -0
  840. package/resizable/engine/global/utils/doRectsIntersect.js +3 -0
  841. package/resizable/engine/global/utils/expandHitTarget.d.ts +10 -0
  842. package/resizable/engine/global/utils/expandHitTarget.js +19 -0
  843. package/resizable/engine/global/utils/findClosestHitRegion.d.ts +9 -0
  844. package/resizable/engine/global/utils/findClosestHitRegion.js +35 -0
  845. package/resizable/engine/global/utils/findClosestRect.d.ts +6 -0
  846. package/resizable/engine/global/utils/findClosestRect.js +22 -0
  847. package/resizable/engine/global/utils/findMatchingHitRegions.d.ts +7 -0
  848. package/resizable/engine/global/utils/findMatchingHitRegions.js +29 -0
  849. package/resizable/engine/global/utils/findSeparatorAxis.d.ts +21 -0
  850. package/resizable/engine/global/utils/findSeparatorAxis.js +12 -0
  851. package/resizable/engine/global/utils/formatLayoutNumber.d.ts +1 -0
  852. package/resizable/engine/global/utils/formatLayoutNumber.js +5 -0
  853. package/resizable/engine/global/utils/getDefaultLayout.d.ts +5 -0
  854. package/resizable/engine/global/utils/getDefaultLayout.js +11 -0
  855. package/resizable/engine/global/utils/getDistanceBetweenPointAndRect.d.ts +5 -0
  856. package/resizable/engine/global/utils/getDistanceBetweenPointAndRect.js +6 -0
  857. package/resizable/engine/global/utils/getImperativeAxisMethods.d.ts +4 -0
  858. package/resizable/engine/global/utils/getImperativeAxisMethods.js +53 -0
  859. package/resizable/engine/global/utils/getImperativeItemMethods.d.ts +5 -0
  860. package/resizable/engine/global/utils/getImperativeItemMethods.js +169 -0
  861. package/resizable/engine/global/utils/isCoarsePointer.d.ts +4 -0
  862. package/resizable/engine/global/utils/isCoarsePointer.js +17 -0
  863. package/resizable/engine/global/utils/isModal.d.ts +1 -0
  864. package/resizable/engine/global/utils/isModal.js +11 -0
  865. package/resizable/engine/global/utils/isViableHitTarget.d.ts +5 -0
  866. package/resizable/engine/global/utils/isViableHitTarget.js +50 -0
  867. package/resizable/engine/global/utils/itemConstraintsEqual.d.ts +2 -0
  868. package/resizable/engine/global/utils/itemConstraintsEqual.js +9 -0
  869. package/resizable/engine/global/utils/layoutNumbersEqual.d.ts +1 -0
  870. package/resizable/engine/global/utils/layoutNumbersEqual.js +6 -0
  871. package/resizable/engine/global/utils/layoutsEqual.d.ts +2 -0
  872. package/resizable/engine/global/utils/layoutsEqual.js +15 -0
  873. package/resizable/engine/global/utils/normalizeLayout.d.ts +11 -0
  874. package/resizable/engine/global/utils/normalizeLayout.js +21 -0
  875. package/resizable/engine/global/utils/notifyItemOnResize.d.ts +2 -0
  876. package/resizable/engine/global/utils/notifyItemOnResize.js +23 -0
  877. package/resizable/engine/global/utils/objectsEqual.d.ts +1 -0
  878. package/resizable/engine/global/utils/objectsEqual.js +14 -0
  879. package/resizable/engine/global/utils/preserveFixedItemSizes.d.ts +7 -0
  880. package/resizable/engine/global/utils/preserveFixedItemSizes.js +53 -0
  881. package/resizable/engine/global/utils/recordAxisLayoutChange.d.ts +15 -0
  882. package/resizable/engine/global/utils/recordAxisLayoutChange.js +25 -0
  883. package/resizable/engine/global/utils/updateActiveHitRegion.d.ts +18 -0
  884. package/resizable/engine/global/utils/updateActiveHitRegion.js +119 -0
  885. package/resizable/engine/global/utils/validateAxisLayout.d.ts +5 -0
  886. package/resizable/engine/global/utils/validateAxisLayout.js +70 -0
  887. package/resizable/engine/global/utils/validateItemSize.d.ts +7 -0
  888. package/resizable/engine/global/utils/validateItemSize.js +31 -0
  889. package/resizable/engine/global/utils/validateLayoutKeys.d.ts +2 -0
  890. package/resizable/engine/global/utils/validateLayoutKeys.js +13 -0
  891. package/resizable/engine/types.d.ts +13 -0
  892. package/resizable/engine/types.js +1 -0
  893. package/resizable/engine/utils/EventEmitter.d.ts +11 -0
  894. package/resizable/engine/utils/EventEmitter.js +60 -0
  895. package/resizable/engine/utils/assert.d.ts +1 -0
  896. package/resizable/engine/utils/assert.js +7 -0
  897. package/resizable/engine/utils/isArrayEqual.d.ts +1 -0
  898. package/resizable/engine/utils/isArrayEqual.js +15 -0
  899. package/resizable/engine/utils/isHTMLElement.d.ts +1 -0
  900. package/resizable/engine/utils/isHTMLElement.js +6 -0
  901. package/resizable/engine/utils/isShadowRoot.d.ts +1 -0
  902. package/resizable/engine/utils/isShadowRoot.js +6 -0
  903. package/resizable/engine/vendor/stacking-order.d.ts +7 -0
  904. package/resizable/engine/vendor/stacking-order.js +122 -0
  905. package/resizable/index.d.ts +263 -0
  906. package/resizable/index.jsx +537 -0
  907. package/resizable/mount.d.ts +115 -0
  908. package/resizable/mount.js +540 -0
  909. package/scheduler/behaviour.d.ts +71 -0
  910. package/scheduler/behaviour.js +243 -0
  911. package/scheduler/context.d.ts +100 -0
  912. package/scheduler/context.jsx +7 -0
  913. package/scheduler/dates.d.ts +53 -0
  914. package/scheduler/dates.js +183 -0
  915. package/scheduler/drag.d.ts +20 -0
  916. package/scheduler/drag.js +361 -0
  917. package/scheduler/event.d.ts +26 -0
  918. package/scheduler/event.jsx +93 -0
  919. package/scheduler/index.d.ts +57 -0
  920. package/scheduler/index.jsx +303 -0
  921. package/scheduler/intl.d.ts +16 -0
  922. package/scheduler/intl.js +529 -0
  923. package/scheduler/keys-month.d.ts +7 -0
  924. package/scheduler/keys-month.js +110 -0
  925. package/scheduler/keys-time-grid.d.ts +9 -0
  926. package/scheduler/keys-time-grid.js +115 -0
  927. package/scheduler/keys.d.ts +103 -0
  928. package/scheduler/keys.js +527 -0
  929. package/scheduler/layout-index.d.ts +3 -0
  930. package/scheduler/layout-index.js +6 -0
  931. package/scheduler/layout.d.ts +285 -0
  932. package/scheduler/layout.js +378 -0
  933. package/scheduler/menus.d.ts +66 -0
  934. package/scheduler/menus.jsx +88 -0
  935. package/scheduler/month.d.ts +26 -0
  936. package/scheduler/month.jsx +215 -0
  937. package/scheduler/pointer.d.ts +64 -0
  938. package/scheduler/pointer.js +203 -0
  939. package/scheduler/select.d.ts +11 -0
  940. package/scheduler/select.js +64 -0
  941. package/scheduler/selection.d.ts +34 -0
  942. package/scheduler/selection.js +39 -0
  943. package/scheduler/state.d.ts +296 -0
  944. package/scheduler/state.js +496 -0
  945. package/scheduler/time-grid-client.d.ts +32 -0
  946. package/scheduler/time-grid-client.jsx +133 -0
  947. package/scheduler/time-grid.d.ts +26 -0
  948. package/scheduler/time-grid.jsx +266 -0
  949. package/scheduler/time.d.ts +35 -0
  950. package/scheduler/time.js +56 -0
  951. package/scheduler/toolbar.d.ts +43 -0
  952. package/scheduler/toolbar.jsx +38 -0
  953. package/scroll-area/dom.d.ts +11 -0
  954. package/scroll-area/dom.js +55 -0
  955. package/scroll-area/index.d.ts +96 -0
  956. package/scroll-area/index.jsx +884 -0
  957. package/scroll-area/presence.d.ts +12 -0
  958. package/scroll-area/presence.jsx +131 -0
  959. package/scrolling/auto-size-virtual-scroll.d.ts +53 -0
  960. package/scrolling/auto-size-virtual-scroll.js +213 -0
  961. package/scrolling/behaviour.d.ts +3 -0
  962. package/scrolling/behaviour.js +5 -0
  963. package/scrolling/emitter.d.ts +34 -0
  964. package/scrolling/emitter.js +144 -0
  965. package/scrolling/fixed-size-virtual-scroll.d.ts +28 -0
  966. package/scrolling/fixed-size-virtual-scroll.js +107 -0
  967. package/scrolling/index.d.ts +11 -0
  968. package/scrolling/index.jsx +13 -0
  969. package/scrolling/rtl.d.ts +16 -0
  970. package/scrolling/rtl.js +64 -0
  971. package/scrolling/scroll-dispatcher.d.ts +49 -0
  972. package/scrolling/scroll-dispatcher.js +107 -0
  973. package/scrolling/scrollable.d.ts +75 -0
  974. package/scrolling/scrollable.js +149 -0
  975. package/scrolling/scrolling.css +11 -0
  976. package/scrolling/state.d.ts +92 -0
  977. package/scrolling/state.js +94 -0
  978. package/scrolling/viewport-ruler.d.ts +47 -0
  979. package/scrolling/viewport-ruler.js +100 -0
  980. package/scrolling/viewport.d.ts +54 -0
  981. package/scrolling/viewport.jsx +105 -0
  982. package/scrolling/virtual-scroll-strategy.d.ts +41 -0
  983. package/scrolling/virtual-scroll-strategy.js +2 -0
  984. package/scrolling/virtual-scroll-viewport.d.ts +95 -0
  985. package/scrolling/virtual-scroll-viewport.js +370 -0
  986. package/search-field/behaviour.d.ts +62 -0
  987. package/search-field/behaviour.jsx +116 -0
  988. package/search-field/index.d.ts +57 -0
  989. package/search-field/index.jsx +158 -0
  990. package/search-field/intl.d.ts +2 -0
  991. package/search-field/intl.js +36 -0
  992. package/select/behaviour.d.ts +188 -0
  993. package/select/behaviour.jsx +445 -0
  994. package/select/hidden-select.d.ts +44 -0
  995. package/select/hidden-select.jsx +68 -0
  996. package/select/index.d.ts +123 -0
  997. package/select/index.jsx +255 -0
  998. package/select/intl.d.ts +2 -0
  999. package/select/intl.js +36 -0
  1000. package/select/parts.d.ts +11 -0
  1001. package/select/parts.jsx +12 -0
  1002. package/select/select-parts.d.ts +73 -0
  1003. package/select/select-parts.jsx +293 -0
  1004. package/select/select-value.d.ts +58 -0
  1005. package/select/select-value.jsx +142 -0
  1006. package/selection/dom-utils.d.ts +25 -0
  1007. package/selection/dom-utils.js +77 -0
  1008. package/selection/keyed.d.ts +19 -0
  1009. package/selection/keyed.js +76 -0
  1010. package/selection/list-keyboard-delegate.d.ts +67 -0
  1011. package/selection/list-keyboard-delegate.js +274 -0
  1012. package/selection/manager.d.ts +112 -0
  1013. package/selection/manager.js +340 -0
  1014. package/selection/selectable-collection.d.ts +123 -0
  1015. package/selection/selectable-collection.js +535 -0
  1016. package/selection/selectable-item.d.ts +128 -0
  1017. package/selection/selectable-item.js +486 -0
  1018. package/selection/selectable-list.d.ts +42 -0
  1019. package/selection/selectable-list.js +34 -0
  1020. package/selection/state.d.ts +96 -0
  1021. package/selection/state.js +131 -0
  1022. package/selection/type-select.d.ts +37 -0
  1023. package/selection/type-select.js +114 -0
  1024. package/selection/utils.d.ts +23 -0
  1025. package/selection/utils.js +38 -0
  1026. package/selection-indicator/context.d.ts +10 -0
  1027. package/selection-indicator/context.js +7 -0
  1028. package/selection-indicator/index.d.ts +20 -0
  1029. package/selection-indicator/index.jsx +25 -0
  1030. package/separator/behaviour.d.ts +17 -0
  1031. package/separator/behaviour.js +17 -0
  1032. package/separator/index.d.ts +23 -0
  1033. package/separator/index.jsx +64 -0
  1034. package/shared-element-transition/index.d.ts +36 -0
  1035. package/shared-element-transition/index.jsx +182 -0
  1036. package/shared-element-transition/transition.d.ts +19 -0
  1037. package/shared-element-transition/transition.jsx +20 -0
  1038. package/sheet-motion/index.d.ts +82 -0
  1039. package/sheet-motion/index.js +386 -0
  1040. package/sidebar/index.d.ts +257 -0
  1041. package/sidebar/index.jsx +624 -0
  1042. package/sidebar/pages.d.ts +71 -0
  1043. package/sidebar/pages.jsx +177 -0
  1044. package/sidebar/resize.d.ts +69 -0
  1045. package/sidebar/resize.js +237 -0
  1046. package/sidebar/sheet-motion.d.ts +15 -0
  1047. package/sidebar/sheet-motion.js +170 -0
  1048. package/sidebar/state.d.ts +126 -0
  1049. package/sidebar/state.js +204 -0
  1050. package/slider/behaviour.d.ts +141 -0
  1051. package/slider/behaviour.jsx +492 -0
  1052. package/slider/index.d.ts +171 -0
  1053. package/slider/index.jsx +392 -0
  1054. package/slider/state.d.ts +203 -0
  1055. package/slider/state.js +377 -0
  1056. package/slots/index.d.ts +248 -0
  1057. package/slots/index.jsx +473 -0
  1058. package/spinbutton/behaviour.d.ts +66 -0
  1059. package/spinbutton/behaviour.jsx +312 -0
  1060. package/spinbutton/intl.d.ts +2 -0
  1061. package/spinbutton/intl.js +36 -0
  1062. package/state/autocomplete.d.ts +26 -0
  1063. package/state/autocomplete.js +32 -0
  1064. package/state/calendar.d.ts +284 -0
  1065. package/state/calendar.js +755 -0
  1066. package/state/checkbox-group.d.ts +67 -0
  1067. package/state/checkbox-group.js +76 -0
  1068. package/state/combobox.d.ts +238 -0
  1069. package/state/combobox.js +708 -0
  1070. package/state/date-field.d.ts +407 -0
  1071. package/state/date-field.js +1117 -0
  1072. package/state/date-intl.d.ts +3 -0
  1073. package/state/date-intl.js +36 -0
  1074. package/state/date-picker.d.ts +144 -0
  1075. package/state/date-picker.js +387 -0
  1076. package/state/disclosure.d.ts +90 -0
  1077. package/state/disclosure.js +148 -0
  1078. package/state/form-validation.d.ts +89 -0
  1079. package/state/form-validation.js +158 -0
  1080. package/state/grid.d.ts +62 -0
  1081. package/state/grid.js +127 -0
  1082. package/state/list.d.ts +58 -0
  1083. package/state/list.js +124 -0
  1084. package/state/menu.d.ts +159 -0
  1085. package/state/menu.js +184 -0
  1086. package/state/overlays.d.ts +35 -0
  1087. package/state/overlays.js +29 -0
  1088. package/state/radio-group.d.ts +58 -0
  1089. package/state/radio-group.js +68 -0
  1090. package/state/search-field.d.ts +20 -0
  1091. package/state/search-field.js +21 -0
  1092. package/state/select.d.ts +150 -0
  1093. package/state/select.js +187 -0
  1094. package/state/selection.d.ts +3 -0
  1095. package/state/selection.js +5 -0
  1096. package/state/table-column-resize.d.ts +58 -0
  1097. package/state/table-column-resize.js +76 -0
  1098. package/state/table.d.ts +81 -0
  1099. package/state/table.js +114 -0
  1100. package/state/tabs.d.ts +85 -0
  1101. package/state/tabs.js +161 -0
  1102. package/state/time-field.d.ts +32 -0
  1103. package/state/time-field.js +34 -0
  1104. package/state/toast.d.ts +80 -0
  1105. package/state/toast.js +146 -0
  1106. package/state/toggle-group.d.ts +70 -0
  1107. package/state/toggle-group.js +110 -0
  1108. package/state/toggle.d.ts +40 -0
  1109. package/state/toggle.js +39 -0
  1110. package/state/tooltip.d.ts +53 -0
  1111. package/state/tooltip.js +153 -0
  1112. package/stepper/index.d.ts +117 -0
  1113. package/stepper/index.jsx +405 -0
  1114. package/stepper/state.d.ts +200 -0
  1115. package/stepper/state.js +325 -0
  1116. package/switch/behaviour.d.ts +12 -0
  1117. package/switch/behaviour.jsx +9 -0
  1118. package/switch/index.d.ts +150 -0
  1119. package/switch/index.jsx +186 -0
  1120. package/table/behaviour.d.ts +181 -0
  1121. package/table/behaviour.js +334 -0
  1122. package/table/collection.d.ts +49 -0
  1123. package/table/collection.js +259 -0
  1124. package/table/column-resize.d.ts +48 -0
  1125. package/table/column-resize.jsx +247 -0
  1126. package/table/index.d.ts +339 -0
  1127. package/table/index.jsx +982 -0
  1128. package/table/intl.d.ts +2 -0
  1129. package/table/intl.js +36 -0
  1130. package/table/keyboard-delegate.d.ts +21 -0
  1131. package/table/keyboard-delegate.js +166 -0
  1132. package/table/rac-intl.d.ts +2 -0
  1133. package/table/rac-intl.js +36 -0
  1134. package/tabs/behaviour.d.ts +49 -0
  1135. package/tabs/behaviour.js +173 -0
  1136. package/tabs/index.d.ts +248 -0
  1137. package/tabs/index.jsx +577 -0
  1138. package/tabs/keyboard-delegate.d.ts +17 -0
  1139. package/tabs/keyboard-delegate.js +64 -0
  1140. package/tag-group/behaviour.d.ts +59 -0
  1141. package/tag-group/behaviour.js +112 -0
  1142. package/tag-group/index.d.ts +138 -0
  1143. package/tag-group/index.jsx +565 -0
  1144. package/tag-group/intl.d.ts +2 -0
  1145. package/tag-group/intl.js +36 -0
  1146. package/tailwind.css +12 -0
  1147. package/tests-components/app/src/routes/index.d.ts +4 -0
  1148. package/tests-components/app/src/routes/index.jsx +7 -0
  1149. package/text/index.d.ts +15 -0
  1150. package/text/index.jsx +61 -0
  1151. package/text-area/index.d.ts +19 -0
  1152. package/text-area/index.jsx +76 -0
  1153. package/text-field/autosize.d.ts +70 -0
  1154. package/text-field/autosize.js +355 -0
  1155. package/text-field/behaviour.d.ts +140 -0
  1156. package/text-field/behaviour.jsx +260 -0
  1157. package/text-field/fields.d.ts +12 -0
  1158. package/text-field/fields.js +20 -0
  1159. package/text-field/index.d.ts +50 -0
  1160. package/text-field/index.jsx +174 -0
  1161. package/text-field/text-field.css +45 -0
  1162. package/theme.css +1006 -0
  1163. package/time-wheels/behaviour.d.ts +29 -0
  1164. package/time-wheels/behaviour.js +156 -0
  1165. package/time-wheels/index.d.ts +27 -0
  1166. package/time-wheels/index.jsx +91 -0
  1167. package/toast/behaviour.d.ts +51 -0
  1168. package/toast/behaviour.jsx +273 -0
  1169. package/toast/index.d.ts +94 -0
  1170. package/toast/index.jsx +256 -0
  1171. package/toast/intl.d.ts +2 -0
  1172. package/toast/intl.js +36 -0
  1173. package/toggle-button/behaviour.d.ts +15 -0
  1174. package/toggle-button/behaviour.js +37 -0
  1175. package/toggle-button/index.d.ts +59 -0
  1176. package/toggle-button/index.jsx +206 -0
  1177. package/toggle-button-group/behaviour.d.ts +19 -0
  1178. package/toggle-button-group/behaviour.jsx +13 -0
  1179. package/toggle-button-group/context.d.ts +7 -0
  1180. package/toggle-button-group/context.js +9 -0
  1181. package/toggle-button-group/index.d.ts +39 -0
  1182. package/toggle-button-group/index.jsx +85 -0
  1183. package/toggle-button-group/item.d.ts +30 -0
  1184. package/toggle-button-group/item.jsx +37 -0
  1185. package/toolbar/behaviour.d.ts +22 -0
  1186. package/toolbar/behaviour.js +89 -0
  1187. package/toolbar/index.d.ts +16 -0
  1188. package/toolbar/index.jsx +67 -0
  1189. package/tooltip/behaviour.d.ts +93 -0
  1190. package/tooltip/behaviour.jsx +299 -0
  1191. package/tooltip/index.d.ts +59 -0
  1192. package/tooltip/index.jsx +193 -0
  1193. package/tree/behaviour.d.ts +51 -0
  1194. package/tree/behaviour.jsx +51 -0
  1195. package/tree/cdk-index.d.ts +2 -0
  1196. package/tree/cdk-index.js +6 -0
  1197. package/tree/collection.d.ts +16 -0
  1198. package/tree/collection.js +138 -0
  1199. package/tree/control.d.ts +125 -0
  1200. package/tree/control.js +166 -0
  1201. package/tree/index.d.ts +154 -0
  1202. package/tree/index.jsx +815 -0
  1203. package/tree/intl.d.ts +2 -0
  1204. package/tree/intl.js +36 -0
  1205. package/tree/navigation-context.d.ts +44 -0
  1206. package/tree/navigation-context.jsx +63 -0
  1207. package/tree/tree-key-manager.d.ts +149 -0
  1208. package/tree/tree-key-manager.js +336 -0
  1209. package/utils/animation.d.ts +32 -0
  1210. package/utils/animation.jsx +236 -0
  1211. package/utils/data-attrs.d.ts +71 -0
  1212. package/utils/data-attrs.jsx +193 -0
  1213. package/utils/dev-off.d.ts +3 -0
  1214. package/utils/dev-off.js +7 -0
  1215. package/utils/dev-on.d.ts +3 -0
  1216. package/utils/dev-on.js +17 -0
  1217. package/utils/dom-props.d.ts +44 -0
  1218. package/utils/dom-props.js +73 -0
  1219. package/utils/dom.d.ts +85 -0
  1220. package/utils/dom.js +402 -0
  1221. package/utils/id.d.ts +23 -0
  1222. package/utils/id.js +100 -0
  1223. package/utils/index.d.ts +57 -0
  1224. package/utils/index.js +257 -0
  1225. package/utils/links.d.ts +87 -0
  1226. package/utils/links.jsx +152 -0
  1227. package/utils/live-element.d.ts +8 -0
  1228. package/utils/live-element.jsx +76 -0
  1229. package/utils/live.d.ts +53 -0
  1230. package/utils/live.jsx +169 -0
  1231. package/utils/load-more-sentinel.d.ts +28 -0
  1232. package/utils/load-more-sentinel.jsx +52 -0
  1233. package/utils/motion-token.d.ts +4 -0
  1234. package/utils/motion-token.js +48 -0
  1235. package/utils/render.d.ts +19 -0
  1236. package/utils/render.js +18 -0
  1237. package/utils/types.d.ts +111 -0
  1238. package/utils/types.js +1 -0
  1239. package/virtualizer/behaviour.d.ts +98 -0
  1240. package/virtualizer/behaviour.js +315 -0
  1241. package/virtualizer/collection.d.ts +103 -0
  1242. package/virtualizer/collection.js +155 -0
  1243. package/virtualizer/dom.d.ts +50 -0
  1244. package/virtualizer/dom.js +233 -0
  1245. package/virtualizer/engine.d.ts +21 -0
  1246. package/virtualizer/engine.js +21 -0
  1247. package/virtualizer/grid-layout.d.ts +50 -0
  1248. package/virtualizer/grid-layout.js +247 -0
  1249. package/virtualizer/index.d.ts +2 -0
  1250. package/virtualizer/index.jsx +4 -0
  1251. package/virtualizer/layout-info.d.ts +33 -0
  1252. package/virtualizer/layout-info.js +54 -0
  1253. package/virtualizer/layout.d.ts +44 -0
  1254. package/virtualizer/layout.js +30 -0
  1255. package/virtualizer/list-layout.d.ts +103 -0
  1256. package/virtualizer/list-layout.js +508 -0
  1257. package/virtualizer/overscan-manager.d.ts +9 -0
  1258. package/virtualizer/overscan-manager.js +32 -0
  1259. package/virtualizer/point.d.ts +13 -0
  1260. package/virtualizer/point.js +23 -0
  1261. package/virtualizer/rect.d.ts +49 -0
  1262. package/virtualizer/rect.js +105 -0
  1263. package/virtualizer/reusable-view.d.ts +29 -0
  1264. package/virtualizer/reusable-view.js +56 -0
  1265. package/virtualizer/scroll-anchor.d.ts +62 -0
  1266. package/virtualizer/scroll-anchor.js +130 -0
  1267. package/virtualizer/size.d.ts +11 -0
  1268. package/virtualizer/size.js +21 -0
  1269. package/virtualizer/state.d.ts +35 -0
  1270. package/virtualizer/state.js +79 -0
  1271. package/virtualizer/table-collection.d.ts +45 -0
  1272. package/virtualizer/table-collection.js +80 -0
  1273. package/virtualizer/table-column-layout.d.ts +44 -0
  1274. package/virtualizer/table-column-layout.js +210 -0
  1275. package/virtualizer/table-layout.d.ts +55 -0
  1276. package/virtualizer/table-layout.js +482 -0
  1277. package/virtualizer/types.d.ts +63 -0
  1278. package/virtualizer/types.js +1 -0
  1279. package/virtualizer/utils.d.ts +2 -0
  1280. package/virtualizer/utils.js +12 -0
  1281. package/virtualizer/virtualizer-core.d.ts +61 -0
  1282. package/virtualizer/virtualizer-core.js +304 -0
  1283. package/virtualizer/virtualizer.d.ts +62 -0
  1284. package/virtualizer/virtualizer.jsx +88 -0
  1285. package/virtualizer/waterfall-layout.d.ts +41 -0
  1286. package/virtualizer/waterfall-layout.js +227 -0
  1287. package/wheel-picker/behaviour.d.ts +94 -0
  1288. package/wheel-picker/behaviour.js +482 -0
  1289. package/wheel-picker/index.d.ts +33 -0
  1290. package/wheel-picker/index.jsx +66 -0
@@ -0,0 +1,236 @@
1
+ // Ported from packages/react-aria/src/utils/animation.ts (useEnterAnimation, useExitAnimation), Apache-2.0, © Adobe.
2
+ // Rivet:
3
+ // - Names: `useEnterAnimation` → `createEnterAnimation`, `useExitAnimation` → `createExitAnimation` (no `use*` exports).
4
+ // - `.tsx` (no JSX): `.ts` modules are not server-rewritten, and this one calls `clientEffect`.
5
+ // - React state → signals; both hooks return an accessor (`isEntering()` / `isExiting()`) that bindings
6
+ // read (`data-entering={dataBool(isEntering())}`); `ref` is a `ref()` (or any element accessor),
7
+ // `isReady` / `isOpen` a value or an accessor.
8
+ // - `useLayoutEffect` → `clientEffect` (runs in the microtask after the element mounted, before paint).
9
+ // - `useEffectEvent(onStart)` → the callback is read untracked when the animation starts; pass a wrapper
10
+ // (`(el) => props.onEnter?.(el)`) to always call the latest one.
11
+ // - `flushSync(onEnd)` → a plain signal write (bindings update synchronously).
12
+ // - `useExitAnimation`'s render-phase `setExitState` → a computed holding the state machine.
13
+ // Deviation: an overlay rendered open by the server (or re-created by a resumed page from a branch the server
14
+ // rendered shown, `_serverBranch() >= 0`) is not entering — React Aria never server-renders overlays, Rivet
15
+ // does, and its HTML is the settled open state. Created in the browser (incl. the first open of a branch the
16
+ // server rendered closed: key -1 / null) → entering.
17
+ // Deviation: with no running animation and the element not yet carrying its `data-entering` / `data-exiting`
18
+ // attribute (a resumed page commits that binding after the effect), the end waits a microtask for the CSS
19
+ // animation the attribute starts; with the attribute present it ends at once (RA).
20
+ import { _regionState, computed, signal, untrack } from "@rivetjs/reactivity";
21
+ import { _serverBranch, clientEffect } from "@rivetjs/runtime/dom";
22
+ import { chain } from "../interactions/merge-props.jsx";
23
+ import { setStyle } from "./dom.js";
24
+ const read = (value) => (typeof value === "function" ? value() : value);
25
+ /** Whether this element is being created in the browser (not server-rendered, not adopted from the server). */
26
+ // Entering unless the server rendered this branch shown: `_serverBranch()` is the adopted Show key while a
27
+ // resumed page re-creates a region (match index ≥ 0 = server rendered it shown; -1 fallback / null never
28
+ // adopted = the server rendered it closed, so the first open after resume enters), `undefined` otherwise.
29
+ const createdInBrowser = () => {
30
+ if (typeof document === "undefined")
31
+ return false;
32
+ const key = _serverBranch();
33
+ return key === undefined || key === null || key < 0;
34
+ };
35
+ /**
36
+ * Entry animation state of `ref` (react-aria `useEnterAnimation`): true from creation until the element's
37
+ * running CSS animations / transitions and the promise `onEnter` returns have finished. While `isReady`
38
+ * is false the element is hidden with non-layout styles and the animation waits (popovers before placement).
39
+ */
40
+ export function createEnterAnimation(ref, isReady = true, onEnter) {
41
+ const isEntering = signal(createdInBrowser());
42
+ const isAnimationReady = () => isEntering() && read(isReady);
43
+ // Hide the element while it prepares for entry, using only non-layout-thrashing attributes.
44
+ // This prevents accidental flashes of content in scenarios where no hidden styling is applied
45
+ // while the enter animation is not yet ready (e.g. popovers prior to placement calculation).
46
+ clientEffect(() => {
47
+ const element = ref();
48
+ if (!read(isReady) && element) {
49
+ return chain(setStyle(element, "opacity", "0"), setStyle(element, "clip", "rect(0 0 0 0)"), setStyle(element, "clip-path", "inset(50%)"), setStyle(element, "mask-image", "linear-gradient(#0000, #0000)"));
50
+ }
51
+ });
52
+ // There are two cases for entry animations:
53
+ // 1. CSS @keyframes. The `animation` property is set during the isEntering state, and it is removed after the animation finishes.
54
+ // 2. CSS transitions. The initial styles are applied during the isEntering state, and removed immediately, causing the transition to occur.
55
+ //
56
+ // In the second case, cancel any transitions that were triggered prior to the isEntering = false state (when the transition is supposed to start).
57
+ // This can happen when isReady starts as false (e.g. popovers prior to placement calculation).
58
+ clientEffect(() => {
59
+ const element = ref();
60
+ if (isAnimationReady() && element && "getAnimations" in element) {
61
+ for (const animation of element.getAnimations()) {
62
+ if (typeof CSSTransition !== "undefined" && animation instanceof CSSTransition)
63
+ animation.cancel();
64
+ }
65
+ }
66
+ });
67
+ // Object literal value, not an inline argument: the effect captures it, so it must be resumable (R2).
68
+ const done = { end: () => isEntering.set(false) };
69
+ useAnimation(ref, isAnimationReady, onEnter, done.end, "data-entering");
70
+ return isAnimationReady;
71
+ }
72
+ /**
73
+ * Exit animation state of `ref` (react-aria `useExitAnimation`): true from the moment `isOpen` turns false
74
+ * until the element's running animations and the promise `onExit` returns have finished — keep the element
75
+ * mounted while it is true. Reopening interrupts the exit.
76
+ */
77
+ export function createExitAnimation(ref, isOpen, onExit) {
78
+ const exit = createExitAnimationState(isOpen);
79
+ watchExitAnimation(ref, exit, onExit);
80
+ return exit.isExiting;
81
+ }
82
+ /**
83
+ * Rivet: {@link createExitAnimation} without its client effect — create the state where the open / exiting
84
+ * condition is read, call {@link watchExitAnimation} where the element exists (inside the branch that stays
85
+ * mounted while exiting). A closed overlay then records no client effect, so a resumed page with closed
86
+ * tooltips does not boot the runtime at load.
87
+ */
88
+ export function createExitAnimationState(isOpen) {
89
+ // Deviation: whether it was open at creation is region state: a resumed page re-creating the region on the close
90
+ // (dismissing a server-open overlay first) gets the server's `true` back and exits, instead of unmounting at once.
91
+ let exitState = _regionState(() => untrack(() => read(isOpen))) ? "open" : "closed";
92
+ // Each finished exit bumps `ended`; the state machine below closes on it.
93
+ const ended = signal(0);
94
+ let seen = 0;
95
+ const isExiting = computed(() => {
96
+ const open = read(isOpen);
97
+ const end = ended();
98
+ if (end !== seen) {
99
+ seen = end;
100
+ // Set the state to closed, which will cause the element to be unmounted.
101
+ if (exitState === "exiting")
102
+ exitState = "closed";
103
+ }
104
+ switch (exitState) {
105
+ case "open":
106
+ // If isOpen becomes false, set the state to exiting.
107
+ if (!open)
108
+ exitState = "exiting";
109
+ break;
110
+ case "closed":
111
+ case "exiting":
112
+ // If we are exiting and isOpen becomes true, the animation was interrupted.
113
+ // Reset the state to open.
114
+ if (open)
115
+ exitState = "open";
116
+ break;
117
+ }
118
+ return exitState === "exiting";
119
+ });
120
+ return { isExiting, end: () => ended.update((n) => n + 1) };
121
+ }
122
+ /** The effect half of {@link createExitAnimation}: waits for the exit animations of `ref`, then `exit.end()`. */
123
+ export function watchExitAnimation(ref, exit, onExit) {
124
+ useAnimation(ref, exit.isExiting, onExit, exit.end, "data-exiting");
125
+ }
126
+ function useAnimation(ref, isActive, onStart, onEnd,
127
+ /** The state attribute the element's binding writes (`data-entering` / `data-exiting`). */
128
+ attribute) {
129
+ let wasActive = null;
130
+ clientEffect(() => {
131
+ const active = isActive();
132
+ const element = ref();
133
+ if (active && element && wasActive !== active) {
134
+ wasActive = active;
135
+ const start = () => {
136
+ if (!("getAnimations" in element)) {
137
+ // JSDOM
138
+ onEnd();
139
+ return;
140
+ }
141
+ const startPromise = onStart?.(element);
142
+ const animations = running(element);
143
+ if (animations.length === 0 && !startPromise && element.hasAttribute(attribute)) {
144
+ onEnd();
145
+ return;
146
+ }
147
+ if (animations.length === 0 && !startPromise) {
148
+ // Deviation: on a resumed page the element's state binding (`data-entering` / `data-exiting`) can
149
+ // commit after this effect, so the CSS animation it starts is not running yet: look again after
150
+ // the pending bindings (a microtask; RA's layout effect always runs after the commit) before ending.
151
+ queueMicrotask(() => {
152
+ const wait = () => {
153
+ const later = element.isConnected ? running(element) : [];
154
+ if (later.length === 0)
155
+ onEnd();
156
+ // Cancelled (moved into the portal host): wait for the restarted ones.
157
+ else
158
+ Promise.all(later.map((a) => a.finished)).then(onEnd, wait);
159
+ };
160
+ wait();
161
+ });
162
+ return;
163
+ }
164
+ // Deviation: RA swallows a rejected `finished` (cancelled animation) and never ends. A Rivet overlay is
165
+ // moved into its portal host right after mount, which restarts its CSS animation (the first one is
166
+ // cancelled): then wait for the animations running at that point, while the element is in the document.
167
+ // (`finished` is read at once: a cancelled animation's next `finished` is a new pending promise.)
168
+ // Deviation: a rejected start promise (a user `onEnter` / `onExit`) ends the animation and reports the error
169
+ // (RA ends nothing: with held exit fills below, the overlay would stay mounted, invisible, its underlay and
170
+ // focus containment active).
171
+ let ended = false;
172
+ const end = () => {
173
+ if (!ended) {
174
+ ended = true;
175
+ onEnd();
176
+ }
177
+ };
178
+ Promise.resolve(startPromise).catch((error) => {
179
+ end();
180
+ (globalThis.reportError ?? console.error)(error);
181
+ });
182
+ // Deviation (Rivet `onEnter` / `onExit` promise, e.g. a nested `@rivetjs/motion` exit in cdk Modal): when the
183
+ // promise outlives the element's own CSS animations, they hold their end state instead of snapping the element
184
+ // back to its open styles until the unmount (a backdrop flashed opaque while a longer Motion exit ran).
185
+ const hold = (list) => {
186
+ if (startPromise)
187
+ for (const a of list)
188
+ if ("animationName" in a)
189
+ a.effect?.updateTiming({ fill: "forwards" });
190
+ };
191
+ hold(animations);
192
+ const settle = (finished) => {
193
+ Promise.all(finished).then(end, () => {
194
+ if (!ended && element.isConnected) {
195
+ const later = running(element);
196
+ hold(later);
197
+ settle([startPromise, ...later.map((a) => a.finished)]);
198
+ }
199
+ });
200
+ };
201
+ if (!startPromise)
202
+ settle(animations.map((a) => a.finished));
203
+ else
204
+ // A CSS animation the state binding starts after this effect (a resumed page re-creating the region on its
205
+ // first interaction, e.g. dismissing a server-open modal) is held and awaited too: collect a microtask later.
206
+ queueMicrotask(() => {
207
+ const all = element.isConnected ? running(element) : [];
208
+ for (const a of animations)
209
+ if (!all.includes(a))
210
+ all.push(a);
211
+ hold(all);
212
+ settle([startPromise, ...all.map((a) => a.finished)]);
213
+ });
214
+ };
215
+ // Deviation: an overlay's portal host is moved into its mount by the Portal's own client effect, queued after
216
+ // this one (the overlay's state is created before its `<Overlay>`). Moving re-inserts the element: a CSS
217
+ // transition keyed on `data-entering` (drawer / sheet backdrops) needs its entering style computed in the final
218
+ // position, else ending here leaves no before-change style and the element snaps to its open state. So the enter
219
+ // starts a microtask later, after the mount's queued effects (RA's layout effect runs after the commit, with the
220
+ // portal content already in place). Exit animations start in place (nothing moves; nested `@rivetjs/motion`
221
+ // exits are collected by the overlay's presence scope after the close's bindings ran, cdk Modal).
222
+ if (attribute === "data-entering")
223
+ queueMicrotask(() => untrack(start));
224
+ else
225
+ untrack(start);
226
+ return;
227
+ }
228
+ wasActive = active;
229
+ });
230
+ }
231
+ /** The element's running document-timeline animations (RA's filter). */
232
+ function running(element) {
233
+ return element
234
+ .getAnimations()
235
+ .filter((a) => (typeof DocumentTimeline === "undefined" || a.timeline instanceof DocumentTimeline) && a.playState === "running");
236
+ }
@@ -0,0 +1,71 @@
1
+ import type { Signal } from "@rivetjs/reactivity";
2
+ import { type HoverEvents } from "../interactions/hover.jsx";
3
+ import { type MaybeAccessor } from "../interactions/utils.js";
4
+ /** A boolean render-state attribute value: `"true"` or absent (RAC `data-x="true"`; never `""`). */
5
+ export declare const dataBool: (value: unknown) => "true" | undefined;
6
+ /** Set (`"true"`) or remove the boolean state attribute `name` on `el`. */
7
+ export declare function setDataAttr(el: Element, name: string, value: boolean): void;
8
+ /** Optional signals mirroring the attributes (for function render props). */
9
+ export interface InteractionStateSignals {
10
+ isHovered?: Signal<boolean>;
11
+ isFocused?: Signal<boolean>;
12
+ isFocusVisible?: Signal<boolean>;
13
+ }
14
+ export interface InteractionStateOptions extends HoverEvents {
15
+ /** Disables hover (RA `useHover({ isDisabled })`; not the focus events); read at event time. */
16
+ isDisabled?: MaybeAccessor<boolean | undefined>;
17
+ /** Focus ring when a descendant has focus (RA `useFocusRing({ within })`): writes `data-focus-within` (not
18
+ * `data-focused`); `states.isFocused` = focus within. Bind `onFocusIn` / `onFocusOut` (both delegated). */
19
+ within?: boolean;
20
+ /** Text input: only Tab / Escape make focus visible. */
21
+ isTextInput?: boolean;
22
+ /** User focus events (RA `useFocus`), called from the same handlers. */
23
+ onFocus?: (e: FocusEvent) => void;
24
+ onBlur?: (e: FocusEvent) => void;
25
+ onFocusChange?: (isFocused: boolean) => void;
26
+ /** Signals the handlers keep in sync with the attributes. */
27
+ states?: InteractionStateSignals;
28
+ }
29
+ /** pointerover (delegated; bind `onPointerOver`): an enter sets `data-hovered` (+ `onHoverStart` / `onHoverChange`);
30
+ * the hovered element's `pointerleave` (bound while hovered) removes it (+ `onHoverEnd` / `onHoverChange`). */
31
+ export declare function hoverStateOver(o: InteractionStateOptions, e: PointerEvent): void;
32
+ /** pointerenter (a native listener per element; prefer `hoverStateOver`): `data-hovered` (+ `onHoverStart` / `onHoverChange`). */
33
+ export declare function hoverStateEnter(o: InteractionStateOptions, e: PointerEvent): void;
34
+ /** pointerleave of `hoverStateEnter` callers: ends the hover now (the transient leave listener then finds none). */
35
+ export declare function hoverStateLeave(o: InteractionStateOptions, e: PointerEvent): void;
36
+ /** End a hover now (RA: `isDisabled` turning true while hovered). */
37
+ export declare function endHoverState(el: Element): void;
38
+ /**
39
+ * focusin (delegated; bind `onFocusIn`, not with `within`): the element's own focus (React's onFocus is focusin,
40
+ * RA useFocus checks `target === currentTarget`) → `focusStateFocus`, and its native `blur` binds until it fires
41
+ * (→ `focusStateBlur`). No listener per element.
42
+ */
43
+ export declare function focusStateIn(o: InteractionStateOptions, e: FocusEvent): void;
44
+ /** focus (or focusin with `within`): `data-focused` (`data-focus-within`), `data-focus-visible` (+ user focus events). */
45
+ export declare function focusStateFocus(o: InteractionStateOptions, e: FocusEvent): void;
46
+ /** blur (bound by `focusStateIn`), or focusout with `within`: removes `data-focused`, `data-focus-visible` (+ user focus events). */
47
+ export declare function focusStateBlur(o: InteractionStateOptions, e: FocusEvent): void;
48
+ /**
49
+ * Handler bag for an element without its own handlers for these events: spread it
50
+ * (`<div {...interactionStateProps(o)}>`) or `mergeProps` it. Builds the handlers as object literal
51
+ * values (R2: resumable); all delegated (no listener per element). Components wiring explicit `onX` call the
52
+ * `*State*` functions instead.
53
+ */
54
+ export declare function interactionStateProps(o: InteractionStateOptions): Record<string, unknown>;
55
+ /**
56
+ * RA `useFocusable`'s `FocusableContext` merge for components that render their own focusable element (Button,
57
+ * Link): `ctx` = `useContext(FocusableContext)` (TooltipTrigger / PreviewTrigger trigger props). Returns
58
+ * `[props, ref, attrs]`:
59
+ * - event handlers (`on[A-Z]…`) chain after the component's own (RA `mergeProps(focusableProps, contextProps)`);
60
+ * - other context props fill only what the component's props leave `undefined` (its own props win);
61
+ * - `attrs`: the context's DOM attributes (`aria-*`, `data-*`, `id`, `role`, `title`, …) the props leave
62
+ * `undefined`, for the element: spread `{...readAttrs(attrs)}` (accessor values allowed);
63
+ * - a disabled element takes none (RA: `isDisabled ? {} : domProps`); the context `ref` is returned for
64
+ * `mergeRefValues`.
65
+ */
66
+ export declare function mergeFocusableContext<P extends object>(props: P, ctx: {
67
+ ref?: unknown;
68
+ [key: string]: unknown;
69
+ } | null | undefined, isDisabled?: boolean): [P, unknown, Record<string, unknown> | undefined];
70
+ /** `attrs` with accessor values read (call inside the element's spread binding: `{...readAttrs(attrs)}`). */
71
+ export declare function readAttrs(attrs: Record<string, unknown> | undefined): Record<string, unknown> | undefined;
@@ -0,0 +1,193 @@
1
+ import { endHover, hoverPointerLeave, hoverPointerOver } from "../interactions/hover.jsx";
2
+ import { focusRingBlur, focusRingFocus } from "../focus/focus-ring.jsx";
3
+ import { focusBlur, focusFocus } from "../interactions/focus.jsx";
4
+ import { getEventTarget } from "../interactions/utils.js";
5
+ import { chain2 } from "../interactions/merge-props.jsx";
6
+ import { mergeProps as mergeLive } from "@rivetjs/runtime/props";
7
+ import { hasLive } from "./live.jsx";
8
+ /** A boolean render-state attribute value: `"true"` or absent (RAC `data-x="true"`; never `""`). */
9
+ export const dataBool = (value) => (value ? "true" : undefined);
10
+ /** Set (`"true"`) or remove the boolean state attribute `name` on `el`. */
11
+ export function setDataAttr(el, name, value) {
12
+ if (value)
13
+ el.setAttribute(name, "true");
14
+ else
15
+ el.removeAttribute(name);
16
+ }
17
+ const states = new WeakMap();
18
+ const stateOf = (el) => {
19
+ let s = states.get(el);
20
+ if (!s)
21
+ states.set(el, (s = {}));
22
+ return s;
23
+ };
24
+ function hoverOf(el, o) {
25
+ const s = stateOf(el);
26
+ const hover = (s.hover ??= {
27
+ props: o,
28
+ state: { isHovered: false, pointerType: "", target: null, globals: [] },
29
+ hovered: { set: (v) => (setDataAttr(el, "data-hovered", v), o.states?.isHovered?.set(v)) },
30
+ });
31
+ hover.props = o; // options are rebuilt per event: keep the latest callbacks
32
+ return hover;
33
+ }
34
+ function ringOf(el, o) {
35
+ const s = stateOf(el);
36
+ let focused = false;
37
+ // RAC: `data-focus-within` for a focus-within ring (Group), `data-focused` otherwise.
38
+ const focusAttr = o.within ? "data-focus-within" : "data-focused";
39
+ const ring = (s.ring ??= {
40
+ props: { within: o.within, isTextInput: o.isTextInput },
41
+ focused: Object.assign(() => focused, {
42
+ set: (v) => ((focused = v), setDataAttr(el, focusAttr, v), o.states?.isFocused?.set(v)),
43
+ }),
44
+ visible: { set: (v) => (setDataAttr(el, "data-focus-visible", v), o.states?.isFocusVisible?.set(v)) },
45
+ state: { isFocused: false, isFocusVisible: false, unsubscribe: null },
46
+ });
47
+ return ring;
48
+ }
49
+ /** pointerover (delegated; bind `onPointerOver`): an enter sets `data-hovered` (+ `onHoverStart` / `onHoverChange`);
50
+ * the hovered element's `pointerleave` (bound while hovered) removes it (+ `onHoverEnd` / `onHoverChange`). */
51
+ export function hoverStateOver(o, e) {
52
+ hoverPointerOver(hoverOf(e.currentTarget, o), e);
53
+ }
54
+ /** pointerenter (a native listener per element; prefer `hoverStateOver`): `data-hovered` (+ `onHoverStart` / `onHoverChange`). */
55
+ export function hoverStateEnter(o, e) {
56
+ if (e.target === e.currentTarget)
57
+ hoverStateOver(o, e);
58
+ }
59
+ /** pointerleave of `hoverStateEnter` callers: ends the hover now (the transient leave listener then finds none). */
60
+ export function hoverStateLeave(o, e) {
61
+ hoverPointerLeave(hoverOf(e.currentTarget, o), e);
62
+ }
63
+ /** End a hover now (RA: `isDisabled` turning true while hovered). */
64
+ export function endHoverState(el) {
65
+ const hover = states.get(el)?.hover;
66
+ if (hover)
67
+ endHover(hover);
68
+ }
69
+ /**
70
+ * focusin (delegated; bind `onFocusIn`, not with `within`): the element's own focus (React's onFocus is focusin,
71
+ * RA useFocus checks `target === currentTarget`) → `focusStateFocus`, and its native `blur` binds until it fires
72
+ * (→ `focusStateBlur`). No listener per element.
73
+ */
74
+ export function focusStateIn(o, e) {
75
+ const el = e.currentTarget;
76
+ if (getEventTarget(e) !== el)
77
+ return;
78
+ bindBlur(el, o);
79
+ focusStateFocus(o, e);
80
+ }
81
+ /** focus (or focusin with `within`): `data-focused` (`data-focus-within`), `data-focus-visible` (+ user focus events). */
82
+ export function focusStateFocus(o, e) {
83
+ // `isDisabled` is the hover switch (RAC: pending buttons stop hovering but keep their focus events).
84
+ if (!o.within && (o.onFocus || o.onFocusChange))
85
+ focusFocus({ onFocus: o.onFocus, onBlur: o.onBlur, onFocusChange: o.onFocusChange }, e);
86
+ focusRingFocus(ringOf(e.currentTarget, o), e);
87
+ }
88
+ /** The element's native `blur` while it is focused (one listener at a time per focused element). */
89
+ function bindBlur(el, o) {
90
+ const s = stateOf(el);
91
+ s.unblur?.();
92
+ const onBlur = (event) => {
93
+ s.unblur?.();
94
+ focusStateBlur(o, event);
95
+ };
96
+ el.addEventListener("blur", onBlur);
97
+ s.unblur = () => (el.removeEventListener("blur", onBlur), (s.unblur = undefined));
98
+ }
99
+ /** blur (bound by `focusStateIn`), or focusout with `within`: removes `data-focused`, `data-focus-visible` (+ user focus events). */
100
+ export function focusStateBlur(o, e) {
101
+ if (!o.within && (o.onBlur || o.onFocusChange))
102
+ focusBlur({ onFocus: o.onFocus, onBlur: o.onBlur, onFocusChange: o.onFocusChange }, e);
103
+ focusRingBlur(ringOf(e.currentTarget, o), e);
104
+ }
105
+ /**
106
+ * Handler bag for an element without its own handlers for these events: spread it
107
+ * (`<div {...interactionStateProps(o)}>`) or `mergeProps` it. Builds the handlers as object literal
108
+ * values (R2: resumable); all delegated (no listener per element). Components wiring explicit `onX` call the
109
+ * `*State*` functions instead.
110
+ */
111
+ export function interactionStateProps(o) {
112
+ const focus = o.within
113
+ ? { onFocusIn: (e) => focusStateFocus(o, e), onFocusOut: (e) => focusStateBlur(o, e) }
114
+ : { onFocusIn: (e) => focusStateIn(o, e) };
115
+ return {
116
+ onPointerOver: (e) => hoverStateOver(o, e),
117
+ ...focus,
118
+ };
119
+ }
120
+ /** Context DOM attributes forwarded to the element (RA useFocusable merges every FocusableContext DOM prop). */
121
+ const FORWARDED_ATTR = /^(?:aria-|data-)|^(?:id|role|title|lang|dir)$/;
122
+ /**
123
+ * RA `useFocusable`'s `FocusableContext` merge for components that render their own focusable element (Button,
124
+ * Link): `ctx` = `useContext(FocusableContext)` (TooltipTrigger / PreviewTrigger trigger props). Returns
125
+ * `[props, ref, attrs]`:
126
+ * - event handlers (`on[A-Z]…`) chain after the component's own (RA `mergeProps(focusableProps, contextProps)`);
127
+ * - other context props fill only what the component's props leave `undefined` (its own props win);
128
+ * - `attrs`: the context's DOM attributes (`aria-*`, `data-*`, `id`, `role`, `title`, …) the props leave
129
+ * `undefined`, for the element: spread `{...readAttrs(attrs)}` (accessor values allowed);
130
+ * - a disabled element takes none (RA: `isDisabled ? {} : domProps`); the context `ref` is returned for
131
+ * `mergeRefValues`.
132
+ */
133
+ export function mergeFocusableContext(props, ctx, isDisabled) {
134
+ if (!ctx)
135
+ return [props, undefined, undefined];
136
+ const { ref, ...domProps } = ctx;
137
+ if (isDisabled)
138
+ return [props, ref, undefined];
139
+ if (hasLive(props))
140
+ return liveFocusableMerge(props, ref, domProps);
141
+ const out = { ...props };
142
+ let attrs;
143
+ for (const key in domProps) {
144
+ const value = domProps[key];
145
+ const own = out[key];
146
+ if (/^on[A-Z]/.test(key) && typeof value === "function")
147
+ out[key] = typeof own === "function" ? chain2(own, value) : value;
148
+ else if (own === undefined) {
149
+ out[key] = value;
150
+ if (FORWARDED_ATTR.test(key))
151
+ (attrs ??= {})[key] = value;
152
+ }
153
+ }
154
+ return [out, ref, attrs];
155
+ }
156
+ // Live props (P5): own getters stay unread — runtime `mergeProps(context, props, handlers)`: own defined values win
157
+ // per read (context fills `undefined`), context handlers chain after the own ones at call time.
158
+ function liveFocusableMerge(props, ref, domProps) {
159
+ const own = props;
160
+ const handlers = {};
161
+ let attrs;
162
+ for (const key in domProps) {
163
+ const value = domProps[key];
164
+ if (/^on[A-Z]/.test(key) && typeof value === "function") {
165
+ if (Object.hasOwn(own, key))
166
+ handlers[key] = ownThen(own, key, value);
167
+ }
168
+ else if (FORWARDED_ATTR.test(key) && own[key] === undefined)
169
+ (attrs ??= {})[key] = value;
170
+ }
171
+ return [mergeLive(domProps, props, handlers), ref, attrs];
172
+ }
173
+ /** The own handler (read at call time), then the context's (a returned arrow: a resumable symbol). */
174
+ function ownThen(own, key, then) {
175
+ return (...args) => {
176
+ const f = own[key];
177
+ if (typeof f === "function")
178
+ f(...args);
179
+ return then(...args);
180
+ };
181
+ }
182
+ /** `attrs` with accessor values read (call inside the element's spread binding: `{...readAttrs(attrs)}`). */
183
+ export function readAttrs(attrs) {
184
+ if (!attrs)
185
+ return undefined;
186
+ const out = {};
187
+ for (const key in attrs) {
188
+ const v = attrs[key];
189
+ const value = typeof v === "function" ? v() : v;
190
+ out[key] = value == null ? undefined : String(value);
191
+ }
192
+ return out;
193
+ }
@@ -0,0 +1,3 @@
1
+ export declare const DEV: boolean;
2
+ /** Development-only (`dev-on.ts`); "" here. */
3
+ export declare function devWhere(): string;
@@ -0,0 +1,7 @@
1
+ // Production build (default resolution of the cdk `#dev` import, package.json): dev-only code folds away
2
+ // (`if (DEV && …)`), so neither the warnings nor `devWhere` ship.
3
+ export const DEV = false;
4
+ /** Development-only (`dev-on.ts`); "" here. */
5
+ export function devWhere() {
6
+ return "";
7
+ }
@@ -0,0 +1,3 @@
1
+ export declare const DEV: boolean;
2
+ /** `\n in <…>` / `\n at …` for the current dev caller, or "". */
3
+ export declare function devWhere(): string;
@@ -0,0 +1,17 @@
1
+ // Development build (`development` condition of the cdk `#dev` import, package.json): dev-only warnings run.
2
+ // Rivet (not upstream): `devWhere()` says where a cdk development warning was triggered.
3
+ // `globalThis[Symbol.for("rivet.locate")]` is installed by the dev runtime in the browser (`@rivetjs/runtime` dev/where.ts:
4
+ // the component chain, `in <TextField> (src/form.tsx:4:17) ← <Page> (…)`) and by the compiler's Vite plugin on the dev
5
+ // server (the app's source-mapped stack frames, `at Page (src/routes/index.tsx:12:7)`); plain Node has none → "".
6
+ export const DEV = true;
7
+ /** `\n in <…>` / `\n at …` for the current dev caller, or "". */
8
+ export function devWhere() {
9
+ const locate = globalThis[Symbol.for("rivet.locate")];
10
+ try {
11
+ const text = typeof locate === "function" ? locate() : "";
12
+ return text ? "\n " + text : "";
13
+ }
14
+ catch {
15
+ return "";
16
+ }
17
+ }
@@ -0,0 +1,44 @@
1
+ import type { EventMap } from "@rivetjs/runtime/jsx-runtime";
2
+ type GlobalEventName = "Click" | "AuxClick" | "ContextMenu" | "DblClick" | "MouseDown" | "MouseEnter" | "MouseLeave" | "MouseMove" | "MouseOut" | "MouseOver" | "MouseUp" | "TouchCancel" | "TouchEnd" | "TouchMove" | "TouchStart" | "PointerDown" | "PointerMove" | "PointerUp" | "PointerCancel" | "PointerEnter" | "PointerLeave" | "PointerOver" | "PointerOut" | "GotPointerCapture" | "LostPointerCapture" | "Scroll" | "Wheel" | "AnimationStart" | "AnimationEnd" | "AnimationIteration" | "TransitionCancel" | "TransitionEnd" | "TransitionRun" | "TransitionStart";
3
+ /** Global DOM event props (`onPointerEnter`, `onWheelCapture`, …), typed with the native event. */
4
+ export type GlobalDOMEvents<E extends Element = Element> = {
5
+ [K in GlobalEventName as `on${K}` | `on${K}Capture`]?: (event: EventMap[K] & {
6
+ currentTarget: E;
7
+ }) => void;
8
+ };
9
+ /** `data-*` attributes (RAC `filterDOMProps` forwards every one). */
10
+ export type DataAttributes = {
11
+ [K in `data-${string}`]?: string | number | boolean | undefined;
12
+ };
13
+ /**
14
+ * Global DOM attributes forwarded to the root element (+ every `data-*` attribute). `style` is forwarded
15
+ * too but typed by the component (RAC `StyleProps` / `StyleRenderProps`), as upstream.
16
+ */
17
+ export interface GlobalDOMAttributes<E extends Element = Element> extends GlobalDOMEvents<E>, DataAttributes {
18
+ dir?: "ltr" | "rtl" | "auto";
19
+ lang?: string;
20
+ hidden?: boolean;
21
+ inert?: boolean;
22
+ translate?: "yes" | "no";
23
+ }
24
+ /**
25
+ * The global DOM events and attributes set on `props`, minus the `owned` names the component
26
+ * handles itself. Spread the result on the root element: `<div {...globalDOMProps(props)} …>`.
27
+ */
28
+ export declare function globalDOMProps(props: object, owned?: readonly string[]): Record<string, unknown>;
29
+ type TextInputEventName = "Input" | "BeforeInput" | "CompositionStart" | "CompositionUpdate" | "CompositionEnd" | "Copy" | "Cut" | "Paste" | "Select";
30
+ /**
31
+ * Text input DOM events (RA `TextInputDOMProps`, RAC `Input`): forwarded to the `<input>` /
32
+ * `<textarea>` of TextField, TextArea, ComboBox… (+ Capture).
33
+ */
34
+ export type TextInputDOMEvents<E extends Element = HTMLInputElement> = {
35
+ [K in TextInputEventName as `on${K}` | `on${K}Capture`]?: (event: EventMap[K] & {
36
+ currentTarget: E;
37
+ }) => void;
38
+ };
39
+ /**
40
+ * The text input DOM events set on `props`, minus `owned` (default `onInput`: inputs handle it
41
+ * themselves and call the user's from their own). Spread the result on the input element.
42
+ */
43
+ export declare function textInputDOMProps(props: object, owned?: readonly string[]): Record<string, unknown>;
44
+ export {};
@@ -0,0 +1,73 @@
1
+ import { splitProps } from "@rivetjs/runtime/props";
2
+ const GLOBAL = /^(?:on(?:Click|AuxClick|ContextMenu|DblClick|Mouse(?:Down|Enter|Leave|Move|Out|Over|Up)|Touch(?:Cancel|End|Move|Start)|Pointer(?:Down|Move|Up|Cancel|Enter|Leave|Over|Out)|GotPointerCapture|LostPointerCapture|Scroll|Wheel|Animation(?:Start|End|Iteration)|Transition(?:Cancel|End|Run|Start))(?:Capture)?|dir|lang|hidden|inert|translate|style|data-[^\s]+)$/;
3
+ /**
4
+ * The global DOM events and attributes set on `props`, minus the `owned` names the component
5
+ * handles itself. Spread the result on the root element: `<div {...globalDOMProps(props)} …>`.
6
+ */
7
+ export function globalDOMProps(props, owned) {
8
+ return pick(props, GLOBAL, GLOBAL_KEYS, owned);
9
+ }
10
+ // Parse once per key string (docs/guides/performance.md): the alternation regex per prop key of every part root was
11
+ // ~40% of `pick`; key → match, bounded so arbitrary user keys cannot grow it.
12
+ const GLOBAL_KEYS = new Map(), TEXT_INPUT_KEYS = new Map();
13
+ function matches(cache, pattern, key) {
14
+ let hit = cache.get(key);
15
+ if (hit === undefined) {
16
+ hit = pattern.test(key);
17
+ if (cache.size < 512)
18
+ cache.set(key, hit);
19
+ }
20
+ return hit;
21
+ }
22
+ // Live props (P5): a live key (own getter) is forwarded unread — the result is a `splitProps` part over the matching
23
+ // keys, read by the element spread's binding; without getters the matching defined values are copied (as before).
24
+ function pick(props, pattern, cache, owned) {
25
+ const out = {};
26
+ let keys;
27
+ for (const key in props) {
28
+ if (!matches(cache, pattern, key) || owned?.includes(key))
29
+ continue;
30
+ (keys ??= []).push(key);
31
+ const desc = Object.getOwnPropertyDescriptor(props, key);
32
+ if (desc?.get !== undefined)
33
+ return forward(props, keys.concat(rest(props, key, pattern, cache, owned)));
34
+ const value = desc ? desc.value : props[key];
35
+ if (value !== undefined)
36
+ out[key] = value;
37
+ }
38
+ return out;
39
+ }
40
+ const PROXY = Symbol.for("rivet.props");
41
+ /**
42
+ * A writable bag forwarding `keys` to `props` (components add attributes to it). A proxied props object (a spread of
43
+ * a call / conditional: runtime Proxy, whose parts discard writes) gets plain forwarding getters over the keys it
44
+ * has now.
45
+ */
46
+ function forward(props, keys) {
47
+ if (props[PROXY] !== 1)
48
+ return splitProps(props, keys)[0];
49
+ const out = {};
50
+ for (const key of keys)
51
+ Object.defineProperty(out, key, { enumerable: true, configurable: true, get: () => props[key] });
52
+ return out;
53
+ }
54
+ /** The matching keys of `props` after `from` (live path: the whole key list for `splitProps`). */
55
+ function rest(props, from, pattern, cache, owned) {
56
+ const keys = [];
57
+ let after = false;
58
+ for (const key in props) {
59
+ if (key === from)
60
+ after = true;
61
+ else if (after && matches(cache, pattern, key) && !owned?.includes(key))
62
+ keys.push(key);
63
+ }
64
+ return keys;
65
+ }
66
+ const TEXT_INPUT = /^on(?:Input|BeforeInput|Composition(?:Start|Update|End)|Copy|Cut|Paste|Select)(?:Capture)?$/;
67
+ /**
68
+ * The text input DOM events set on `props`, minus `owned` (default `onInput`: inputs handle it
69
+ * themselves and call the user's from their own). Spread the result on the input element.
70
+ */
71
+ export function textInputDOMProps(props, owned = ["onInput"]) {
72
+ return pick(props, TEXT_INPUT, TEXT_INPUT_KEYS, owned);
73
+ }