@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,54 @@
1
+ import { type OverlayTriggerState } from "../state/overlays.js";
2
+ import type { ElementSource } from "./position.js";
3
+ /** Which interaction opens the overlay (DialogTrigger `trigger`, RAC vocabulary). */
4
+ export type OverlayTriggerMode = "press" | "longPress" | "hover" | "focus";
5
+ export interface HoverTriggerProps {
6
+ /** `"hover"`: hover (mouse / pen) or keyboard focus opens; `"focus"`: keyboard focus only. @default 'hover' */
7
+ trigger?: "hover" | "focus";
8
+ /** Delay before opening on hover (ms; or an accessor read at event time: live). @default 300 */
9
+ delay?: number | (() => number | undefined);
10
+ /** Delay before closing once the pointer left the safe area (ms; or an accessor read at event time: live). @default 200 */
11
+ closeDelay?: number | (() => number | undefined);
12
+ /** Disable hover / focus opening. */
13
+ isDisabled?: boolean;
14
+ /** The trigger element. */
15
+ triggerRef: ElementSource;
16
+ /** The overlay element (popover). */
17
+ overlayRef: ElementSource;
18
+ }
19
+ export declare const HOVER_TRIGGER_DELAY = 300;
20
+ export declare const HOVER_TRIGGER_CLOSE_DELAY = 200;
21
+ /** Open after `delay` (immediately with `immediate` or a delay of 0); cancels a pending close. */
22
+ export declare function hoverTriggerOpen(props: Pick<HoverTriggerProps, "delay">, state: OverlayTriggerState, immediate?: boolean): void;
23
+ /** Close after `closeDelay` unless the pointer is in the safe area or focus is within; cancels a pending open. */
24
+ export declare function hoverTriggerCheckClose(props: Pick<HoverTriggerProps, "closeDelay">, state: OverlayTriggerState): void;
25
+ /** The trigger's `rv-focus-scope-restore` (the overlay's FocusScope restores focus): restore it without reopening. */
26
+ export declare function hoverTriggerFocusScopeRestore(e: Event, state: OverlayTriggerState): void;
27
+ /** The trigger's `onPointerEnter` (useHover start). */
28
+ export declare function hoverTriggerPointerEnter(e: PointerEvent, props: HoverTriggerProps, state: OverlayTriggerState): void;
29
+ /** The trigger's `onPointerLeave` (useHover end): before opening, cancel; once open the safe area decides. */
30
+ export declare function hoverTriggerPointerLeave(e: PointerEvent, props: HoverTriggerProps, state: OverlayTriggerState): void;
31
+ /** The trigger's `onFocus`: keyboard focus opens (focus-visible only, as useTooltipTrigger). */
32
+ export declare function hoverTriggerFocus(e: FocusEvent, props: HoverTriggerProps, state: OverlayTriggerState): void;
33
+ /** The trigger's `onBlur`: focus moving into the overlay keeps it open, elsewhere closes. */
34
+ export declare function hoverTriggerBlur(e: FocusEvent, props: HoverTriggerProps, state: OverlayTriggerState): void;
35
+ /** The overlay's `onFocusWithin` (focus entered it). */
36
+ export declare function hoverTriggerOverlayFocusWithin(state: OverlayTriggerState): void;
37
+ /** The overlay's `onBlurWithin`: focus left it; back to the trigger keeps it open, elsewhere closes. */
38
+ export declare function hoverTriggerOverlayBlurWithin(e: FocusEvent, props: HoverTriggerProps, state: OverlayTriggerState): void;
39
+ /**
40
+ * While open (client effect of the open overlay; returns the release): the safe area between the trigger
41
+ * and the overlay keeps it open while the pointer travels into it; leaving it closes after `closeDelay`.
42
+ */
43
+ export declare function attachHoverTrigger(props: HoverTriggerProps, state: OverlayTriggerState): () => void;
44
+ export interface HoverTriggerAria {
45
+ /** Props for the trigger element. */
46
+ triggerProps: Record<string, unknown>;
47
+ /** Props for the overlay element (Popover: `onFocusWithin` / `onBlurWithin` through PopoverContext). */
48
+ overlayProps: {
49
+ onFocusWithin: () => void;
50
+ onBlurWithin: (e: FocusEvent) => void;
51
+ };
52
+ }
53
+ /** Hover / focus opening for an overlay trigger (Rivet; see the header). */
54
+ export declare function hoverTriggerProps(props: HoverTriggerProps, state: OverlayTriggerState): HoverTriggerAria;
@@ -0,0 +1,221 @@
1
+ // Ported from @react-aria/tooltip (useTooltipTrigger.ts hover / focus handling, usePreviewTrigger.ts
2
+ // safe area, useSafeArea.ts), Apache-2.0, © Adobe.
3
+ // Rivet extension: hover / focus opening for any overlay trigger (DialogTrigger `trigger="hover" |
4
+ // "focus"`, Popover triggers) with React Aria's own hover-intent rules — open after `delay`, close after
5
+ // `closeDelay`, and a safe area (the trigger, the overlay and the convex hull between them,
6
+ // `./safe-area.ts`) that keeps the overlay open while the pointer travels from the trigger into it,
7
+ // diagonally and across any gap (offset / arrow), even with `closeDelay` 0.
8
+ // - hover: mouse / pen only (useHover rules: emulated mouse events after touch are ignored); touch keeps
9
+ // the press behaviour of the trigger.
10
+ // - focus: keyboard focus only (focus-visible, as useTooltipTrigger); focus moving into the overlay keeps
11
+ // it open, leaving both closes it.
12
+ // - the focus the overlay's FocusScope restores to the trigger (Escape / close) does not reopen it
13
+ // (`rv-focus-scope-restore` → `ignoreFocus`, as RA usePreviewTrigger).
14
+ // - free functions over the serializable `OverlayTriggerState` (call them from inline arrows; resumable);
15
+ // per-state timers / flags in a browser-side WeakMap. `attachHoverTrigger` runs while open (client
16
+ // effect of the open overlay): the safe area. `.tsx`: the `hoverTriggerProps` bag's closures may be
17
+ // captured by resumed bindings.
18
+ import { untrack } from "@rivetjs/reactivity";
19
+ import { getInteractionModality, isFocusVisible, setInteractionModality, setupGlobalFocusEvents } from "../interactions/focus-visible.jsx";
20
+ import { nodeContains } from "../interactions/utils.js";
21
+ import { closeOverlay, openOverlay } from "../state/overlays.js";
22
+ import { safeArea } from "./safe-area.js";
23
+ export const HOVER_TRIGGER_DELAY = 300;
24
+ export const HOVER_TRIGGER_CLOSE_DELAY = 200;
25
+ const refsByState = new WeakMap();
26
+ const refsOf = (state) => {
27
+ let r = refsByState.get(state);
28
+ if (!r)
29
+ refsByState.set(state, (r = { openTimer: null, closeTimer: null, inSafeArea: false, hasFocus: false, ignoreFocus: false }));
30
+ return r;
31
+ };
32
+ /** A live delay (accessor, untracked: event time) or a static one. */
33
+ const delayOf = (delay) => (typeof delay === "function" ? untrack(delay) : delay);
34
+ const read = (source) => (typeof source === "function" ? untrack(source) : source) ?? null;
35
+ // useHover: iOS fires an emulated mouse pointer event right after a touch.
36
+ const touch = { ignoreEmulatedMouse: false, tracking: false };
37
+ function trackTouch(doc) {
38
+ if (touch.tracking)
39
+ return;
40
+ touch.tracking = true;
41
+ doc.addEventListener("pointerup", (e) => {
42
+ if (e.pointerType !== "touch")
43
+ return;
44
+ touch.ignoreEmulatedMouse = true;
45
+ setTimeout(() => (touch.ignoreEmulatedMouse = false), 500);
46
+ });
47
+ }
48
+ function cancelOpen(r) {
49
+ if (r.openTimer)
50
+ clearTimeout(r.openTimer);
51
+ r.openTimer = null;
52
+ }
53
+ function cancelClose(r) {
54
+ if (r.closeTimer)
55
+ clearTimeout(r.closeTimer);
56
+ r.closeTimer = null;
57
+ }
58
+ /** Open after `delay` (immediately with `immediate` or a delay of 0); cancels a pending close. */
59
+ export function hoverTriggerOpen(props, state, immediate) {
60
+ const r = refsOf(state);
61
+ cancelClose(r);
62
+ if (untrack(state.isOpen) || r.openTimer)
63
+ return;
64
+ const delay = immediate ? 0 : (delayOf(props.delay) ?? HOVER_TRIGGER_DELAY);
65
+ if (delay <= 0)
66
+ return openOverlay(state);
67
+ r.openTimer = setTimeout(() => {
68
+ r.openTimer = null;
69
+ openOverlay(state);
70
+ }, delay);
71
+ }
72
+ /** Close after `closeDelay` unless the pointer is in the safe area or focus is within; cancels a pending open. */
73
+ export function hoverTriggerCheckClose(props, state) {
74
+ const r = refsOf(state);
75
+ cancelOpen(r);
76
+ if (r.inSafeArea || r.hasFocus || !untrack(state.isOpen) || r.closeTimer)
77
+ return;
78
+ const closeDelay = delayOf(props.closeDelay) ?? HOVER_TRIGGER_CLOSE_DELAY;
79
+ if (closeDelay <= 0)
80
+ return closeOverlay(state);
81
+ r.closeTimer = setTimeout(() => {
82
+ r.closeTimer = null;
83
+ if (!r.inSafeArea && !r.hasFocus)
84
+ closeOverlay(state);
85
+ }, closeDelay);
86
+ }
87
+ const installed = new WeakSet();
88
+ /**
89
+ * RA usePreviewTrigger's `useEvent(triggerRef, 'react-aria-focus-scope-restore')`: installed on the trigger at
90
+ * its first pointerenter / focus (an overlay opens only after one of them; nothing at load on a resumed page).
91
+ */
92
+ function installRestoreListener(trigger, state) {
93
+ if (!trigger || installed.has(trigger))
94
+ return;
95
+ installed.add(trigger);
96
+ trigger.addEventListener("rv-focus-scope-restore", (e) => hoverTriggerFocusScopeRestore(e, state));
97
+ }
98
+ /** The trigger's `rv-focus-scope-restore` (the overlay's FocusScope restores focus): restore it without reopening. */
99
+ export function hoverTriggerFocusScopeRestore(e, state) {
100
+ e.preventDefault();
101
+ const trigger = e.currentTarget;
102
+ // Already focused: no focus event follows, nothing to ignore.
103
+ if (trigger && trigger.ownerDocument.activeElement !== trigger)
104
+ refsOf(state).ignoreFocus = true;
105
+ trigger?.focus();
106
+ }
107
+ /** The trigger's `onPointerEnter` (useHover start). */
108
+ export function hoverTriggerPointerEnter(e, props, state) {
109
+ const target = e.currentTarget;
110
+ installRestoreListener(target, state);
111
+ trackTouch(target.ownerDocument);
112
+ // Resumed page: modality tracking installs on first use; the hover's own pointer event is the evidence.
113
+ setupGlobalFocusEvents(target);
114
+ if (getInteractionModality() === null)
115
+ setInteractionModality("pointer");
116
+ if (props.isDisabled || props.trigger === "focus" || e.pointerType === "touch")
117
+ return;
118
+ if (touch.ignoreEmulatedMouse && e.pointerType === "mouse")
119
+ return;
120
+ refsOf(state).inSafeArea = true;
121
+ hoverTriggerOpen(props, state);
122
+ }
123
+ /** The trigger's `onPointerLeave` (useHover end): before opening, cancel; once open the safe area decides. */
124
+ export function hoverTriggerPointerLeave(e, props, state) {
125
+ if (props.isDisabled || props.trigger === "focus" || e.pointerType === "touch")
126
+ return;
127
+ const r = refsOf(state);
128
+ if (!untrack(state.isOpen)) {
129
+ r.inSafeArea = false;
130
+ cancelOpen(r);
131
+ return;
132
+ }
133
+ // Open but the overlay is not tracking yet (no safe area attached): treat the leave as leaving.
134
+ if (!read(props.overlayRef)) {
135
+ r.inSafeArea = false;
136
+ hoverTriggerCheckClose(props, state);
137
+ }
138
+ }
139
+ /** The trigger's `onFocus`: keyboard focus opens (focus-visible only, as useTooltipTrigger). */
140
+ export function hoverTriggerFocus(e, props, state) {
141
+ installRestoreListener(e.currentTarget, state);
142
+ const r = refsOf(state);
143
+ if (r.ignoreFocus) {
144
+ // Focus restored from the closing overlay (Escape / close): keep it closed (RA usePreviewTrigger).
145
+ r.ignoreFocus = false;
146
+ r.hasFocus = true;
147
+ return;
148
+ }
149
+ if (props.isDisabled || !isFocusVisible())
150
+ return;
151
+ r.hasFocus = true;
152
+ hoverTriggerOpen(props, state, true);
153
+ }
154
+ /** The trigger's `onBlur`: focus moving into the overlay keeps it open, elsewhere closes. */
155
+ export function hoverTriggerBlur(e, props, state) {
156
+ const r = refsOf(state);
157
+ const overlay = read(props.overlayRef);
158
+ if (overlay && e.relatedTarget instanceof Node && nodeContains(overlay, e.relatedTarget))
159
+ return;
160
+ r.hasFocus = false;
161
+ hoverTriggerCheckClose({ closeDelay: 0 }, state);
162
+ }
163
+ /** The overlay's `onFocusWithin` (focus entered it). */
164
+ export function hoverTriggerOverlayFocusWithin(state) {
165
+ const r = refsOf(state);
166
+ r.hasFocus = true;
167
+ cancelClose(r);
168
+ }
169
+ /** The overlay's `onBlurWithin`: focus left it; back to the trigger keeps it open, elsewhere closes. */
170
+ export function hoverTriggerOverlayBlurWithin(e, props, state) {
171
+ const r = refsOf(state);
172
+ const trigger = read(props.triggerRef);
173
+ if (trigger && e.relatedTarget instanceof Node && nodeContains(trigger, e.relatedTarget))
174
+ return;
175
+ r.hasFocus = false;
176
+ hoverTriggerCheckClose({ closeDelay: 0 }, state);
177
+ }
178
+ /**
179
+ * While open (client effect of the open overlay; returns the release): the safe area between the trigger
180
+ * and the overlay keeps it open while the pointer travels into it; leaving it closes after `closeDelay`.
181
+ */
182
+ export function attachHoverTrigger(props, state) {
183
+ const r = refsOf(state);
184
+ if (props.trigger === "focus")
185
+ return () => { };
186
+ const release = safeArea({
187
+ triggerRef: props.triggerRef,
188
+ overlayRef: props.overlayRef,
189
+ isDisabled: props.isDisabled,
190
+ onSafeAreaChange: (isInSafeArea) => {
191
+ if (isInSafeArea === r.inSafeArea)
192
+ return;
193
+ r.inSafeArea = isInSafeArea;
194
+ if (isInSafeArea)
195
+ cancelClose(r);
196
+ else
197
+ hoverTriggerCheckClose(props, state);
198
+ },
199
+ });
200
+ return () => {
201
+ release();
202
+ cancelOpen(r);
203
+ cancelClose(r);
204
+ r.inSafeArea = false;
205
+ };
206
+ }
207
+ /** Hover / focus opening for an overlay trigger (Rivet; see the header). */
208
+ export function hoverTriggerProps(props, state) {
209
+ return {
210
+ triggerProps: {
211
+ onPointerEnter: (e) => hoverTriggerPointerEnter(e, props, state),
212
+ onPointerLeave: (e) => hoverTriggerPointerLeave(e, props, state),
213
+ onFocus: (e) => hoverTriggerFocus(e, props, state),
214
+ onBlur: (e) => hoverTriggerBlur(e, props, state),
215
+ },
216
+ overlayProps: {
217
+ onFocusWithin: () => hoverTriggerOverlayFocusWithin(state),
218
+ onBlurWithin: (e) => hoverTriggerOverlayBlurWithin(e, props, state),
219
+ },
220
+ };
221
+ }
@@ -0,0 +1,40 @@
1
+ export type { Placement } from "./position.js";
2
+ export interface AriaOverlayProps {
3
+ /** Whether the overlay is open (registered in the visible stack). @default true */
4
+ isOpen?: boolean;
5
+ /** Called when the overlay should close. */
6
+ onClose?: () => void;
7
+ /** Close on interaction outside the overlay (a value, or an accessor read at interaction time). @default false */
8
+ isDismissable?: boolean | (() => boolean | undefined);
9
+ /** Close when focus leaves the overlay (not when it is lost to the body). */
10
+ shouldCloseOnBlur?: boolean;
11
+ /** Disable closing with Escape (a value, or an accessor read at key time). @default false */
12
+ isKeyboardDismissDisabled?: boolean | (() => boolean | undefined);
13
+ /** Filter: return true when an interaction with `element` (outside the overlay) should close it. */
14
+ shouldCloseOnInteractOutside?: (element: Element) => boolean;
15
+ /**
16
+ * Rivet: the element React Aria spreads `overlayProps.onKeyDown` on (a popover passes its own element while
17
+ * `element` is its group, e.g. a submenu's root container). Default `element`.
18
+ */
19
+ keyTarget?: Element;
20
+ }
21
+ export interface InteractOutsideProps {
22
+ onInteractOutside?: (event: PointerEvent) => void;
23
+ onInteractOutsideStart?: (event: PointerEvent) => void;
24
+ isDisabled?: boolean;
25
+ }
26
+ /** The top-most open overlay registered with `overlay()`. */
27
+ export declare const topOverlay: () => Element | undefined;
28
+ /**
29
+ * Interactions outside `element` (React Aria `useInteractOutside`): a pointerdown outside starts
30
+ * one (`onInteractOutsideStart`), the following click outside completes it (`onInteractOutside`;
31
+ * click rather than pointerup for Android Chrome). Capture phase. Returns the remove function.
32
+ */
33
+ export declare function interactOutside(element: Element, props: InteractOutsideProps): () => void;
34
+ /**
35
+ * Overlay behaviour (React Aria `useOverlay`) on `element`: Escape (keydown inside the overlay)
36
+ * and, with `isDismissable`, interaction outside close the top-most overlay only;
37
+ * `shouldCloseOnBlur` closes when focus moves to an element outside. Call on open; the returned
38
+ * function unregisters (call on close).
39
+ */
40
+ export declare function overlay(element: Element, props: AriaOverlayProps): () => void;
@@ -0,0 +1,139 @@
1
+ // Overlays: React Aria's `useOverlay` as `overlay(element, props)`: the stack of visible overlays
2
+ // (only the top-most one closes at once), Escape inside the overlay, interact outside (pointerdown
3
+ // then click outside, `shouldCloseOnInteractOutside` filter), close on blur. Imperative: call when
4
+ // the overlay element is mounted and open (the overlay components call it from a client effect),
5
+ // call the returned function when it closes. Overlays are plain divs in the overlay layer
6
+ // (`<Overlay>`, ../portal/index.tsx), never the native top layer (`popover`, `<dialog>`).
7
+ // Global listeners attach on open and detach on close; nothing runs at import time.
8
+ //
9
+ // `overlay` / `interactOutside` ported from @react-aria/overlays (useOverlay.ts) and
10
+ // @react-aria/interactions (useInteractOutside.ts), Apache-2.0, © Adobe. `interactOutside` is the
11
+ // imperative (element + cleanup) form of `useInteractOutside` (`../interactions/interact-outside.tsx`)
12
+ // and shares its `isValidOutsideEvent`.
13
+ import { isValidOutsideEvent } from "../interactions/interact-outside.jsx";
14
+ import { getEventTarget } from "../utils/dom.js";
15
+ // Stack of visible overlays, top-most last (React Aria `visibleOverlays`).
16
+ const visibleOverlays = [];
17
+ /** The top-most open overlay registered with `overlay()`. */
18
+ export const topOverlay = () => visibleOverlays[visibleOverlays.length - 1];
19
+ /**
20
+ * Interactions outside `element` (React Aria `useInteractOutside`): a pointerdown outside starts
21
+ * one (`onInteractOutsideStart`), the following click outside completes it (`onInteractOutside`;
22
+ * click rather than pointerup for Android Chrome). Capture phase. Returns the remove function.
23
+ */
24
+ export function interactOutside(element, props) {
25
+ const { onInteractOutside, onInteractOutsideStart, isDisabled } = props;
26
+ if (isDisabled)
27
+ return () => { };
28
+ const doc = element.ownerDocument;
29
+ let isPointerDown = false;
30
+ // Outside-ness: ONE implementation (`../interactions/interact-outside.tsx`).
31
+ const onPointerDown = (event) => {
32
+ if (onInteractOutside && isValidOutsideEvent(event, element)) {
33
+ onInteractOutsideStart?.(event);
34
+ isPointerDown = true;
35
+ }
36
+ };
37
+ const onClick = (event) => {
38
+ if (isPointerDown && isValidOutsideEvent(event, element))
39
+ onInteractOutside?.(event);
40
+ isPointerDown = false;
41
+ };
42
+ doc.addEventListener("pointerdown", onPointerDown, true);
43
+ doc.addEventListener("click", onClick, true);
44
+ return () => {
45
+ doc.removeEventListener("pointerdown", onPointerDown, true);
46
+ doc.removeEventListener("click", onClick, true);
47
+ };
48
+ }
49
+ /**
50
+ * Overlay behaviour (React Aria `useOverlay`) on `element`: Escape (keydown inside the overlay)
51
+ * and, with `isDismissable`, interaction outside close the top-most overlay only;
52
+ * `shouldCloseOnBlur` closes when focus moves to an element outside. Call on open; the returned
53
+ * function unregisters (call on close).
54
+ */
55
+ export function overlay(element, props) {
56
+ const { onClose, shouldCloseOnBlur, isOpen = true, isDismissable = false, isKeyboardDismissDisabled = false, shouldCloseOnInteractOutside, keyTarget = element, } = props;
57
+ const cleanups = [];
58
+ if (isOpen && !visibleOverlays.includes(element)) {
59
+ visibleOverlays.push(element);
60
+ cleanups.push(() => {
61
+ const index = visibleOverlays.indexOf(element);
62
+ if (index >= 0)
63
+ visibleOverlays.splice(index, 1);
64
+ });
65
+ }
66
+ // Only the top-most visible overlay hides.
67
+ const onHide = () => {
68
+ if (visibleOverlays[visibleOverlays.length - 1] === element && onClose)
69
+ onClose();
70
+ };
71
+ let lastVisibleOverlay;
72
+ const allowed = (target) => !shouldCloseOnInteractOutside || shouldCloseOnInteractOutside(target);
73
+ const onKeyDown = (event) => {
74
+ const e = event;
75
+ // useKeyboard shortcut "Escape": no modifiers, no repeats, not composing; handled keys stop
76
+ // propagating and prevent the default (nested overlays: the inner one handles it).
77
+ if (e.key !== "Escape" || e.isComposing || e.repeat || e.altKey || e.ctrlKey || e.metaKey || e.shiftKey)
78
+ return;
79
+ if (typeof isKeyboardDismissDisabled === "function" ? isKeyboardDismissDisabled() : isKeyboardDismissDisabled)
80
+ return;
81
+ e.stopPropagation();
82
+ e.preventDefault();
83
+ onHide();
84
+ };
85
+ // On the overlay element, not its group: a submenu shares the root popover's container as group, and a
86
+ // listener there sees the submenu's Escape before the submenu's own delegated (DOM v2) keydown handler
87
+ // could stop it — closing the root menu too (React Aria: `onKeyDown` in the popover's `overlayProps`).
88
+ keyTarget.addEventListener("keydown", onKeyDown);
89
+ cleanups.push(() => keyTarget.removeEventListener("keydown", onKeyDown));
90
+ // Rivet (live props): an accessor `isDismissable` is read at interaction time (React re-renders with the new value).
91
+ const dismissable = typeof isDismissable === "function" ? () => !!isDismissable() : undefined;
92
+ if ((dismissable || isDismissable) && isOpen)
93
+ cleanups.push(interactOutside(element, {
94
+ onInteractOutsideStart(event) {
95
+ const topMostOverlay = visibleOverlays[visibleOverlays.length - 1];
96
+ lastVisibleOverlay = topMostOverlay;
97
+ if (dismissable && !dismissable())
98
+ return;
99
+ if (allowed(getEventTarget(event)) && topMostOverlay === element)
100
+ event.stopPropagation();
101
+ },
102
+ onInteractOutside(event) {
103
+ if (dismissable && !dismissable())
104
+ return void (lastVisibleOverlay = undefined);
105
+ if (allowed(getEventTarget(event))) {
106
+ if (visibleOverlays[visibleOverlays.length - 1] === element)
107
+ event.stopPropagation();
108
+ if (lastVisibleOverlay === element)
109
+ onHide();
110
+ }
111
+ lastVisibleOverlay = undefined;
112
+ },
113
+ }));
114
+ else
115
+ cleanups.push(interactOutside(element, {
116
+ // Still record the top-most overlay at pointerdown (React Aria passes the start handler always).
117
+ onInteractOutsideStart: () => (lastVisibleOverlay = visibleOverlays[visibleOverlays.length - 1]),
118
+ }));
119
+ if (shouldCloseOnBlur) {
120
+ const onFocusOut = (event) => {
121
+ const related = event.relatedTarget;
122
+ // Focus lost to the body (tab switch, VoiceOver quirks): outside press handles real clicks.
123
+ // Focus moving into a nested overlay (a child layer above this one) does not close it.
124
+ if (!related || element.contains(related))
125
+ return;
126
+ const index = visibleOverlays.indexOf(element);
127
+ if (visibleOverlays.slice(index + 1).some((layer) => layer.contains(related)))
128
+ return;
129
+ if (allowed(related))
130
+ onClose?.();
131
+ };
132
+ element.addEventListener("focusout", onFocusOut);
133
+ cleanups.push(() => element.removeEventListener("focusout", onFocusOut));
134
+ }
135
+ return () => {
136
+ for (const cleanup of cleanups.splice(0))
137
+ cleanup();
138
+ };
139
+ }
@@ -0,0 +1,16 @@
1
+ import { type AriaOverlayProps } from "./index.js";
2
+ import { type OverlayTriggerState } from "../state/overlays.js";
3
+ export interface AriaModalOverlayProps extends Pick<AriaOverlayProps, "shouldCloseOnInteractOutside"> {
4
+ /** Close on interaction outside the modal (a value, or an accessor read at interaction time). @default false */
5
+ isDismissable?: boolean | (() => boolean | undefined);
6
+ /** Disable closing with Escape (a value, or an accessor read at key time). @default false */
7
+ isKeyboardDismissDisabled?: boolean | (() => boolean | undefined);
8
+ /** Entry animation running: outside content is hidden only once it completes (call again with false). */
9
+ isEntering?: boolean;
10
+ /** Patch focus() so it does not scroll the page (React Aria `UNSTABLE_overrideFocus`). */
11
+ overrideFocus?: boolean;
12
+ }
13
+ /** Attach modal behaviour to `element` for `state` (call when it opens); returns the release function. */
14
+ export declare function modalOverlay(element: HTMLElement, props: AriaModalOverlayProps, state: OverlayTriggerState): () => void;
15
+ /** `onPointerDown` of a modal's underlay: a press on the underlay itself does not move focus (React Aria `onPointerDownUnderlay`). */
16
+ export declare function modalUnderlayPointerDown(event: PointerEvent): void;
@@ -0,0 +1,38 @@
1
+ // Modal overlay behaviour (React Aria `useModalOverlay`): `overlay()` (Escape, optional dismiss on
2
+ // outside interaction), document scroll lock, and everything outside the modal hidden with `inert`
3
+ // (`ariaHideOutside`; while an entry animation runs, only kept visible in a parent modal's hiding).
4
+ // Call when the modal element is mounted and open; the returned function releases everything (the
5
+ // modal component calls it from a client effect, so unmounting or closing always releases).
6
+ // `modalUnderlayPointerDown` is the underlay's `onPointerDown` (React Aria `underlayProps`).
7
+ //
8
+ // Ported from @react-aria/overlays (useModalOverlay.ts, useOverlay.ts), Apache-2.0, © Adobe.
9
+ import { ariaHideOutside, keepVisible } from "./aria-hide-outside.js";
10
+ import { overlay } from "./index.js";
11
+ import { preventScroll } from "./prevent-scroll.js";
12
+ import { closeOverlay } from "../state/overlays.js";
13
+ /** Attach modal behaviour to `element` for `state` (call when it opens); returns the release function. */
14
+ export function modalOverlay(element, props, state) {
15
+ const cleanups = [
16
+ overlay(element, {
17
+ isOpen: true,
18
+ onClose: () => closeOverlay(state),
19
+ isDismissable: props.isDismissable,
20
+ isKeyboardDismissDisabled: props.isKeyboardDismissDisabled,
21
+ shouldCloseOnInteractOutside: props.shouldCloseOnInteractOutside,
22
+ }),
23
+ preventScroll({ overrideFocus: props.overrideFocus }),
24
+ ];
25
+ // Entering: keep this modal visible in a parent modal's hiding; hide outside afterwards.
26
+ const undo = props.isEntering ? keepVisible(element) : ariaHideOutside([element], { shouldUseInert: true });
27
+ if (undo)
28
+ cleanups.push(undo);
29
+ return () => {
30
+ for (const cleanup of cleanups.splice(0).reverse())
31
+ cleanup();
32
+ };
33
+ }
34
+ /** `onPointerDown` of a modal's underlay: a press on the underlay itself does not move focus (React Aria `onPointerDownUnderlay`). */
35
+ export function modalUnderlayPointerDown(event) {
36
+ if (event.target === event.currentTarget)
37
+ event.preventDefault();
38
+ }
@@ -0,0 +1,4 @@
1
+ /** Locale → "Dismiss" label. */
2
+ export declare const dismissStrings: Record<string, string>;
3
+ /** The label for `locale`: exact match, then language match (`de` → `de-DE`), else English. */
4
+ export declare function dismissLabel(locale?: string | null): string;
@@ -0,0 +1,52 @@
1
+ // Localized "Dismiss" label of `DismissButton` (34 locales).
2
+ //
3
+ // Ported from @react-aria/overlays (intl/overlays/*.json), Apache-2.0, © Adobe.
4
+ /** Locale → "Dismiss" label. */
5
+ export const dismissStrings = {
6
+ "ar-AE": "تجاهل",
7
+ "bg-BG": "Отхвърляне",
8
+ "cs-CZ": "Odstranit",
9
+ "da-DK": "Luk",
10
+ "de-DE": "Schließen",
11
+ "el-GR": "Απόρριψη",
12
+ "en-US": "Dismiss",
13
+ "es-ES": "Descartar",
14
+ "et-EE": "Lõpeta",
15
+ "fi-FI": "Hylkää",
16
+ "fr-FR": "Rejeter",
17
+ "he-IL": "התעלם",
18
+ "hr-HR": "Odbaci",
19
+ "hu-HU": "Elutasítás",
20
+ "it-IT": "Ignora",
21
+ "ja-JP": "閉じる",
22
+ "ko-KR": "무시",
23
+ "lt-LT": "Atmesti",
24
+ "lv-LV": "Nerādīt",
25
+ "nb-NO": "Lukk",
26
+ "nl-NL": "Negeren",
27
+ "pl-PL": "Zignoruj",
28
+ "pt-BR": "Descartar",
29
+ "pt-PT": "Dispensar",
30
+ "ro-RO": "Revocare",
31
+ "ru-RU": "Пропустить",
32
+ "sk-SK": "Zrušiť",
33
+ "sl-SI": "Opusti",
34
+ "sr-SP": "Odbaci",
35
+ "sv-SE": "Avvisa",
36
+ "tr-TR": "Kapat",
37
+ "uk-UA": "Скасувати",
38
+ "zh-CN": "取消",
39
+ "zh-TW": "關閉",
40
+ };
41
+ /** The label for `locale`: exact match, then language match (`de` → `de-DE`), else English. */
42
+ export function dismissLabel(locale) {
43
+ if (locale) {
44
+ if (dismissStrings[locale])
45
+ return dismissStrings[locale];
46
+ const language = locale.split("-")[0].toLowerCase();
47
+ for (const key in dismissStrings)
48
+ if (key.split("-")[0].toLowerCase() === language)
49
+ return dismissStrings[key];
50
+ }
51
+ return dismissStrings["en-US"];
52
+ }
@@ -0,0 +1 @@
1
+ export * from "../state/overlays.js";
@@ -0,0 +1,3 @@
1
+ // Overlay trigger state (React Stately `useOverlayTriggerState`), formerly a second copy with methods:
2
+ // one implementation now, `../state/overlays.ts` (serializable state, free functions that resume).
3
+ export * from "../state/overlays.js";
@@ -0,0 +1,27 @@
1
+ import { type OverlayTriggerState } from "../state/overlays.js";
2
+ export interface OverlayTriggerProps {
3
+ /** Type of overlay that is opened by the trigger. */
4
+ type: "dialog" | "menu" | "listbox" | "tree" | "grid";
5
+ /** Rivet: id of the overlay element. @default createId() */
6
+ id?: string;
7
+ }
8
+ export interface OverlayTriggerAria {
9
+ /** Props for the trigger element. */
10
+ triggerProps: {
11
+ "aria-haspopup": true | "listbox" | undefined;
12
+ "aria-expanded": () => boolean;
13
+ "aria-controls": () => string | undefined;
14
+ onPress: () => void;
15
+ };
16
+ /** Props for the overlay container element. */
17
+ overlayProps: {
18
+ id: string;
19
+ };
20
+ }
21
+ /**
22
+ * Handles the behavior and accessibility for an overlay trigger, e.g. a button that opens a popover,
23
+ * menu, or other overlay that is positioned relative to the trigger (React Aria `useOverlayTrigger`).
24
+ */
25
+ export declare function overlayTriggerProps(props: OverlayTriggerProps, state: OverlayTriggerState, ref?: () => Element | null | undefined): OverlayTriggerAria;
26
+ /** Share `state.close` with `overlayPosition` for `trigger` (React Aria's onCloseMap effect). */
27
+ export declare function registerTrigger(trigger: Element, state: OverlayTriggerState): void;
@@ -0,0 +1,50 @@
1
+ // Ported from @react-aria/overlays (useOverlayTrigger.ts), Apache-2.0, © Adobe.
2
+ // Overlay trigger (React Aria `useOverlayTrigger` → `overlayTriggerProps`): ARIA attributes of a button
3
+ // that opens an overlay positioned relative to it (popover, menu, listbox, …) and of the overlay.
4
+ // Rivet:
5
+ // - returns RA's bags with RA keys; reactive values are accessors (`aria-expanded`, `aria-controls`),
6
+ // `onPress` toggles (spread the bag on a cdk `Button`, or call `toggleOverlay(state)` from your own
7
+ // inline handler on a resumed page: functions created in a `.ts` module do not serialize).
8
+ // - RA's effect sharing `state.close` with useOverlayPosition through `onCloseMap` = `registerTrigger(trigger, state)`
9
+ // (call when the trigger element exists, e.g. from a client effect; `overlayTriggerProps` registers it
10
+ // itself when given a ref that is already attached).
11
+ // - `id` option: the overlay id (RA: `useId()`), so the server and the browser agree.
12
+ import { untrack } from "@rivetjs/reactivity";
13
+ import { createId } from "../utils/id.js";
14
+ import { onCloseMap } from "./close-on-scroll.js";
15
+ import { closeOverlay, toggleOverlay } from "../state/overlays.js";
16
+ /**
17
+ * Handles the behavior and accessibility for an overlay trigger, e.g. a button that opens a popover,
18
+ * menu, or other overlay that is positioned relative to the trigger (React Aria `useOverlayTrigger`).
19
+ */
20
+ export function overlayTriggerProps(props, state, ref) {
21
+ const { type } = props;
22
+ // Backward compatibility. Share state close function with useOverlayPosition so it can close on scroll
23
+ // without forcing users to pass onClose.
24
+ const element = ref ? untrack(ref) : null;
25
+ if (element)
26
+ registerTrigger(element, state);
27
+ // Aria 1.1 supports multiple values for aria-haspopup other than just menus.
28
+ // https://www.w3.org/TR/wai-aria-1.1/#aria-haspopup
29
+ // However, we only add it for menus for now because screen readers often
30
+ // announce it as a menu even for other values.
31
+ let ariaHasPopup = undefined;
32
+ if (type === "menu")
33
+ ariaHasPopup = true;
34
+ else if (type === "listbox")
35
+ ariaHasPopup = "listbox";
36
+ const overlayId = props.id ?? createId();
37
+ return {
38
+ triggerProps: {
39
+ "aria-haspopup": ariaHasPopup,
40
+ "aria-expanded": () => state.isOpen(),
41
+ "aria-controls": () => (state.isOpen() ? overlayId : undefined),
42
+ onPress: () => toggleOverlay(state),
43
+ },
44
+ overlayProps: { id: overlayId },
45
+ };
46
+ }
47
+ /** Share `state.close` with `overlayPosition` for `trigger` (React Aria's onCloseMap effect). */
48
+ export function registerTrigger(trigger, state) {
49
+ onCloseMap.set(trigger, () => closeOverlay(state));
50
+ }