@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,35 @@
1
+ import { type Signal } from "@rivetjs/reactivity";
2
+ import { type ControlledState } from "../interactions/controllable.js";
3
+ export interface OverlayTriggerProps {
4
+ /** Whether the overlay is open (controlled): a plain value, a two-way Signal, or a read-only accessor (never written: dismissing only calls `onOpenChange`). */
5
+ isOpen?: boolean | Signal<boolean> | (() => boolean);
6
+ /** Whether the overlay is open by default (uncontrolled). */
7
+ defaultOpen?: boolean;
8
+ /** Handler that is called when the overlay's open state changes (resumed pages: an inline arrow or a local function). */
9
+ onOpenChange?: (isOpen: boolean) => void;
10
+ }
11
+ export interface Point {
12
+ x: number;
13
+ y: number;
14
+ }
15
+ export interface OverlayTriggerState {
16
+ /** Whether the overlay is currently open (signal of the shown value). */
17
+ readonly isOpen: Signal<boolean>;
18
+ /** The cursor position when the overlay was triggered, relative to the window viewport. */
19
+ readonly point: Signal<Point | null>;
20
+ /** @internal The controlled-state record behind `isOpen` (`controllable`). */
21
+ readonly open: ControlledState<boolean>;
22
+ }
23
+ /** Manages state for an overlay trigger (react-stately `useOverlayTriggerState`). Region state: a
24
+ * resumed page re-creating the overlay's region (its first open) keeps it. */
25
+ export declare function createOverlayTriggerState(props?: OverlayTriggerProps): OverlayTriggerState;
26
+ /** Sets whether the overlay is open (calls `onOpenChange` when the value changes). */
27
+ export declare function setOpen(state: OverlayTriggerState, isOpen: boolean): void;
28
+ /** Opens the overlay. */
29
+ export declare const openOverlay: (state: OverlayTriggerState) => void;
30
+ /** Closes the overlay. */
31
+ export declare const closeOverlay: (state: OverlayTriggerState) => void;
32
+ /** Toggles the overlay's visibility. */
33
+ export declare const toggleOverlay: (state: OverlayTriggerState) => void;
34
+ /** Sets the cursor position relative to the window viewport. */
35
+ export declare const setPoint: (state: OverlayTriggerState, point: Point) => void;
@@ -0,0 +1,29 @@
1
+ // Ported from React Stately (@react-stately/overlays useOverlayTriggerState), Apache-2.0, © Adobe.
2
+ // Modifications: React state → `controllable` (react-stately useControlledState: `isOpen` plain value OR a
3
+ // two-way Signal, or a read-only accessor `() => boolean`, `defaultOpen`, `onOpenChange`); the methods are free functions (`setOpen(state, v)`, …)
4
+ // so state stays JSON (signals + plain data) and handlers resume. `state.isOpen` is the shown value's
5
+ // signal (read it in bindings: `state.isOpen()`); never `.set` it — use `setOpen` / `openOverlay` / …
6
+ import { signal, untrack, _regionState } from "@rivetjs/reactivity";
7
+ import { controllable, controlledValue, setControlledValue } from "../interactions/controllable.js";
8
+ /** Manages state for an overlay trigger (react-stately `useOverlayTriggerState`). Region state: a
9
+ * resumed page re-creating the overlay's region (its first open) keeps it. */
10
+ export function createOverlayTriggerState(props = {}) {
11
+ return _regionState(() => {
12
+ const open = controllable(props.isOpen, props.defaultOpen || false, props.onOpenChange);
13
+ return { isOpen: open.value, point: signal(null), open };
14
+ });
15
+ }
16
+ /** Sets whether the overlay is open (calls `onOpenChange` when the value changes). */
17
+ export function setOpen(state, isOpen) {
18
+ untrack(() => setControlledValue(state.open, isOpen));
19
+ }
20
+ /** Opens the overlay. */
21
+ export const openOverlay = (state) => setOpen(state, true);
22
+ /** Closes the overlay. */
23
+ export const closeOverlay = (state) => setOpen(state, false);
24
+ /** Toggles the overlay's visibility. */
25
+ export const toggleOverlay = (state) => setOpen(state, !untrack(() => controlledValue(state.open)));
26
+ /** Sets the cursor position relative to the window viewport. */
27
+ export const setPoint = (state, point) => {
28
+ state.point.set(point);
29
+ };
@@ -0,0 +1,58 @@
1
+ import { type Signal } from "@rivetjs/reactivity";
2
+ import { type FormValidationOptions, type FormValidationState } from "./form-validation.js";
3
+ export interface RadioGroupStateOptions extends Omit<FormValidationOptions<string | null>, "name"> {
4
+ /** Selected value (controlled): a two-way Signal, a plain value or an accessor (read live, never written). */
5
+ value?: Signal<string | null> | (() => string | null) | string | null;
6
+ defaultValue?: string | null;
7
+ onChange?: (value: string) => void;
8
+ name?: string;
9
+ /** Rivet (live props): an accessor stays live (`state.disabled`, read `isRadioGroupDisabled`). */
10
+ isDisabled?: boolean | (() => boolean | undefined);
11
+ /** Rivet (live props): an accessor stays live (`state.readOnly`, read `isRadioGroupReadOnly`). */
12
+ isReadOnly?: boolean | (() => boolean | undefined);
13
+ /** Rivet (live props): an accessor stays live (`state.required`, read `isRadioGroupRequired`). */
14
+ isRequired?: boolean | (() => boolean | undefined);
15
+ }
16
+ export interface RadioGroupState {
17
+ /** Group name shared by the radios (generated when omitted). */
18
+ readonly name: string;
19
+ /** The selected value (read it; write through `setSelectedValue`: a fixed one is never `.set`). */
20
+ readonly selectedValue: Signal<string | null>;
21
+ /** A plain / accessor controlled value: never written (changes only call `onChange`). */
22
+ readonly fixed: boolean;
23
+ readonly defaultSelectedValue: string | null;
24
+ /** Last focused radio (roving tab stop while nothing is selected). */
25
+ readonly lastFocusedValue: Signal<string | null>;
26
+ /** Disabled at creation; read `isRadioGroupDisabled(state)` (follows a live `disabled`). */
27
+ readonly isDisabled: boolean;
28
+ /** Read-only at creation; read `isRadioGroupReadOnly(state)` (follows a live `readOnly`). */
29
+ readonly isReadOnly: boolean;
30
+ /** Live `isDisabled` / `isReadOnly` accessors (live props). */
31
+ readonly disabled?: (() => boolean | undefined) | undefined;
32
+ readonly readOnly?: (() => boolean | undefined) | undefined;
33
+ /** Required at creation; read `isRadioGroupRequired(state)` (follows a live `required`). */
34
+ readonly isRequired: boolean;
35
+ readonly required?: (() => boolean | undefined) | undefined;
36
+ readonly onChange: ((value: string) => void) | undefined;
37
+ readonly validation: FormValidationState;
38
+ /** RA `radioGroupData` (module WeakMap in RA): set by the compound `RadioGroup` for its radios (`radio-group/parts.tsx`). */
39
+ data?: {
40
+ form?: string;
41
+ descriptionId: unknown;
42
+ errorMessageId: unknown;
43
+ validationBehavior: "aria" | "native";
44
+ };
45
+ }
46
+ export declare function createRadioGroupState(options?: RadioGroupStateOptions): RadioGroupState;
47
+ /** Whether the group is disabled now (its live `isDisabled` accessor, else the creation value). */
48
+ export declare const isRadioGroupDisabled: (state: RadioGroupState) => boolean;
49
+ /** Whether the group is required now (its live `isRequired` accessor, else the creation value). */
50
+ export declare const isRadioGroupRequired: (state: RadioGroupState) => boolean;
51
+ /** Whether the group is read-only now (its live `isReadOnly` accessor, else the creation value). */
52
+ export declare const isRadioGroupReadOnly: (state: RadioGroupState) => boolean;
53
+ /** RA `setSelectedValue`: ignored while read-only / disabled; commits validation. */
54
+ export declare function setSelectedValue(state: RadioGroupState, value: string | null): void;
55
+ export declare function setLastFocusedValue(state: RadioGroupState, value: string | null): void;
56
+ export declare const isRadioInvalid: (state: RadioGroupState) => boolean;
57
+ /** RA useRadio tab index: the selected radio, else the last focused (or every radio when none). */
58
+ export declare function radioTabIndex(state: RadioGroupState, value: string, isDisabled: boolean): number | undefined;
@@ -0,0 +1,68 @@
1
+ // Ported from react-stately `useRadioGroupState` (packages/react-stately/src/radio/useRadioGroupState.ts), Apache-2.0, © Adobe.
2
+ // Rivet: `value` is a two-way Signal, a plain value or an accessor (live prop `value={v()}`); plain / accessor values
3
+ // are controlled as upstream (`state.fixed`: never written, a change only calls `onChange`).
4
+ import { _regionState, signal, untrack } from "@rivetjs/reactivity";
5
+ import { createId } from "@rivetjs/cdk/id";
6
+ import { commitValidation, createFormValidationState, displayValidation } from "./form-validation.js";
7
+ export function createRadioGroupState(options = {}) {
8
+ const given = options.value;
9
+ const isSignal = typeof given === "function" && typeof given.set === "function";
10
+ const fixed = given !== undefined && !isSignal;
11
+ // useControlledState: a Signal is two-way, an accessor is read as is, a plain value is a never-written signal.
12
+ const selectedValue = (isSignal || typeof given === "function"
13
+ ? given
14
+ : fixed
15
+ ? signal(given)
16
+ : _regionState(() => signal(options.defaultValue ?? null)));
17
+ const name = options.name ?? createId();
18
+ const disabled = typeof options.isDisabled === "function" ? options.isDisabled : undefined;
19
+ const readOnly = typeof options.isReadOnly === "function" ? options.isReadOnly : undefined;
20
+ return {
21
+ name,
22
+ selectedValue,
23
+ fixed,
24
+ defaultSelectedValue: options.value !== undefined ? untrack(selectedValue) : (options.defaultValue ?? null),
25
+ lastFocusedValue: signal(null),
26
+ isDisabled: disabled ? !!untrack(disabled) : !!options.isDisabled,
27
+ isReadOnly: readOnly ? !!untrack(readOnly) : !!options.isReadOnly,
28
+ ...(disabled ? { disabled } : {}),
29
+ ...(readOnly ? { readOnly } : {}),
30
+ isRequired: typeof options.isRequired === "function" ? !!untrack(options.isRequired) : (options.isRequired ?? false),
31
+ ...(typeof options.isRequired === "function" ? { required: options.isRequired } : {}),
32
+ onChange: options.onChange,
33
+ validation: createFormValidationState({ ...options, name: options.name, value: selectedValue }),
34
+ };
35
+ }
36
+ /** Whether the group is disabled now (its live `isDisabled` accessor, else the creation value). */
37
+ export const isRadioGroupDisabled = (state) => (state.disabled ? !!state.disabled() : state.isDisabled);
38
+ /** Whether the group is required now (its live `isRequired` accessor, else the creation value). */
39
+ export const isRadioGroupRequired = (state) => (state.required ? !!state.required() : state.isRequired);
40
+ /** Whether the group is read-only now (its live `isReadOnly` accessor, else the creation value). */
41
+ export const isRadioGroupReadOnly = (state) => (state.readOnly ? !!state.readOnly() : state.isReadOnly);
42
+ /** RA `setSelectedValue`: ignored while read-only / disabled; commits validation. */
43
+ export function setSelectedValue(state, value) {
44
+ if (isRadioGroupReadOnly(state) || isRadioGroupDisabled(state))
45
+ return;
46
+ if (untrack(state.selectedValue) !== value) {
47
+ if (!state.fixed)
48
+ state.selectedValue.set(value);
49
+ if (value !== null)
50
+ state.onChange?.(value);
51
+ }
52
+ commitValidation(state.validation);
53
+ }
54
+ export function setLastFocusedValue(state, value) {
55
+ if (untrack(state.lastFocusedValue) !== value)
56
+ state.lastFocusedValue.set(value);
57
+ }
58
+ export const isRadioInvalid = (state) => displayValidation(state.validation).isInvalid;
59
+ /** RA useRadio tab index: the selected radio, else the last focused (or every radio when none). */
60
+ export function radioTabIndex(state, value, isDisabled) {
61
+ if (isDisabled)
62
+ return undefined;
63
+ const selected = state.selectedValue();
64
+ if (selected != null)
65
+ return selected === value ? 0 : -1;
66
+ const last = state.lastFocusedValue();
67
+ return last === value || last == null ? 0 : -1;
68
+ }
@@ -0,0 +1,20 @@
1
+ import type { Signal } from "@rivetjs/reactivity";
2
+ import { type ControlledState } from "../interactions/controllable.js";
3
+ export interface SearchFieldStateProps {
4
+ /** The current value (controlled): a plain value, a two-way Signal, or an accessor read live. */
5
+ value?: string | Signal<string> | (() => string);
6
+ /** The default value (uncontrolled). */
7
+ defaultValue?: string;
8
+ /** Handler that is called when the value changes. */
9
+ onChange?: (value: string) => void;
10
+ }
11
+ export interface SearchFieldState {
12
+ /** The current value of the search field. */
13
+ readonly value: ControlledState<string>;
14
+ }
15
+ /** Provides state management for a search field. */
16
+ export declare function createSearchFieldState(props: SearchFieldStateProps): SearchFieldState;
17
+ /** The current value of the search field. */
18
+ export declare const searchFieldValue: (state: SearchFieldState) => string;
19
+ /** Sets the value of the search field. */
20
+ export declare function setSearchFieldValue(state: SearchFieldState, value: string): void;
@@ -0,0 +1,21 @@
1
+ import { controllable, setControlledValue } from "../interactions/controllable.js";
2
+ function toString(val) {
3
+ if (val == null) {
4
+ return;
5
+ }
6
+ return String(val);
7
+ }
8
+ /** Provides state management for a search field. */
9
+ export function createSearchFieldState(props) {
10
+ const value = props.value;
11
+ return {
12
+ // Signals / accessors pass through (`controllable`); plain values stringify like upstream.
13
+ value: controllable(typeof value === "function" ? value : toString(value), toString(props.defaultValue) || "", props.onChange),
14
+ };
15
+ }
16
+ /** The current value of the search field. */
17
+ export const searchFieldValue = (state) => state.value.value();
18
+ /** Sets the value of the search field. */
19
+ export function setSearchFieldValue(state, value) {
20
+ setControlledValue(state.value, value);
21
+ }
@@ -0,0 +1,150 @@
1
+ import { type Signal } from "@rivetjs/reactivity";
2
+ import { type ControlledState } from "../interactions/controllable.js";
3
+ import { ListCollection, type FocusStrategy } from "../_adapters/collections.js";
4
+ import { type OverlayTriggerProps, type OverlayTriggerState } from "./overlays.js";
5
+ import { type FormValidationState, type MaybeAccessor, type ValidationBehavior, type ValidationErrors, type ValidationFunction } from "./form-validation.js";
6
+ import { type CollectionEntry, type Item, type Key } from "./list.js";
7
+ import type { Collection as BuiltCollection, Node as BuiltNode, SelectionMode as SharedSelectionMode } from "../collections/types.js";
8
+ export type { Key, Item, CollectionEntry, FocusStrategy };
9
+ /** Select has no `"none"` mode (react-stately `SelectProps`); derived from the shared `SelectionMode`. */
10
+ export type SelectionMode = Exclude<SharedSelectionMode, "none">;
11
+ export type ValueType<M extends SelectionMode> = M extends "single" ? Key | null : readonly Key[];
12
+ export type ChangeValueType<M extends SelectionMode> = M extends "single" ? Key | null : Key[];
13
+ type ValidationType<M extends SelectionMode> = M extends "single" ? Key : Key[];
14
+ export interface SelectStateProps<M extends SelectionMode = "single"> extends OverlayTriggerProps {
15
+ /** Items and sections (RAC `<ListBox items>`); a function for items that change. */
16
+ items?: readonly CollectionEntry[] | (() => readonly CollectionEntry[]) | undefined;
17
+ /**
18
+ * RAC parts mode: the collection built from the Select's children (`collectionOf`, the ListBox items), as an
19
+ * accessor (an inline arrow: region state keeps it). Items are read from it when `items` is not given.
20
+ */
21
+ collection?: (() => BuiltCollection<BuiltNode<unknown>>) | undefined;
22
+ /** Whether single or multiple selection is enabled. @default 'single'. Read once at mount (picks the value shape). */
23
+ selectionMode?: M;
24
+ /** The current value (controlled): a plain value (shown until the caller re-renders; `onChange` reports changes) or a two-way Signal. */
25
+ value?: ValueType<M> | Signal<ValueType<M>>;
26
+ /** The default value (uncontrolled). */
27
+ defaultValue?: ValueType<M>;
28
+ /** Handler that is called when the value changes (resumed pages: an inline arrow or a local function). */
29
+ onChange?: (value: ChangeValueType<M>) => void;
30
+ /** @deprecated use `value`. The currently selected key in the collection (controlled): plain or a two-way Signal. */
31
+ selectedKey?: Key | null | Signal<Key | null>;
32
+ /** @deprecated use `defaultValue`. The initial selected key in the collection (uncontrolled). */
33
+ defaultSelectedKey?: Key | null;
34
+ /** @deprecated use `onChange`. Handler that is called when the selection changes. */
35
+ onSelectionChange?: (key: Key | null) => void;
36
+ /**
37
+ * The item keys that are disabled. These items cannot be selected, focused, or otherwise interacted with. Read once
38
+ * at mount (the listbox's selection manager copies them); a live item uses `ListBoxItem isDisabled={…}`.
39
+ */
40
+ disabledKeys?: Iterable<Key>;
41
+ /** Whether the Select should close when an item is selected. Defaults to true if selectionMode is single, false otherwise. Read once at mount. */
42
+ shouldCloseOnSelect?: boolean;
43
+ /** Whether the select should be allowed to be open when the collection is empty. Read once at mount. */
44
+ allowsEmptyCollection?: boolean;
45
+ /** Whether the select is disabled. Rivet (live props): the parts pass an accessor that stays live (internal). */
46
+ isDisabled?: boolean;
47
+ /** Whether a value is required. Rivet (live props): the parts pass an accessor that stays live (internal). */
48
+ isRequired?: boolean;
49
+ /** Controlled invalid state; an accessor stays live. */
50
+ isInvalid?: MaybeAccessor<boolean | undefined>;
51
+ validate?: ValidationFunction<ValidationType<M>>;
52
+ /** @default 'aria' (the Select component defaults to 'native', RAC) */
53
+ validationBehavior?: ValidationBehavior;
54
+ /** The name of the hidden select submitted with a form. Read once at mount (form identity). */
55
+ name?: string;
56
+ /** The `<form>` id of the hidden select. Read once at mount. */
57
+ form?: string;
58
+ /** Server errors (from `<Form validationErrors>`). */
59
+ validationErrors?: MaybeAccessor<ValidationErrors | undefined>;
60
+ /** Base id of the parts (`<id>-trigger`, `<id>-listbox`, …); generated when omitted. */
61
+ id?: string;
62
+ }
63
+ export interface SelectState<M extends SelectionMode = "single"> extends OverlayTriggerState {
64
+ readonly id: string;
65
+ readonly selectionMode: M;
66
+ /** The value: a key (single) or keys (multiple). A single select given an array shows its first key. Read-only: write with `setSelectValue`. */
67
+ readonly value: Signal<Key | null | readonly Key[]>;
68
+ /** useControlledState of the value (plain controlled / Signal / uncontrolled + `onChange`). */
69
+ readonly control: ControlledState<Key | null | readonly Key[], any>;
70
+ /** The value restored on form reset (`defaultValue` ?? the initial value). */
71
+ readonly defaultValue: ValueType<M>;
72
+ readonly items: SelectStateProps<M>["items"];
73
+ /** RAC parts mode: the built collection accessor (see `SelectStateProps.collection`). */
74
+ readonly collection?: SelectStateProps<M>["collection"];
75
+ readonly disabledKeys: readonly Key[];
76
+ readonly shouldCloseOnSelect: boolean;
77
+ readonly allowsEmptyCollection: boolean;
78
+ readonly isDisabled: boolean;
79
+ /** Rivet: the caller's `isDisabled` accessor (live props), when it passed one; read `isSelectDisabled(state)`. */
80
+ readonly disabled?: () => boolean | undefined;
81
+ readonly isRequired: boolean;
82
+ /** Rivet: the caller's `isRequired` accessor (live props), when it passed one; read `isSelectRequired(state)`. */
83
+ readonly required?: () => boolean | undefined;
84
+ readonly name?: string | undefined;
85
+ readonly form?: string | undefined;
86
+ /** Controls which item will be auto focused when the menu opens. */
87
+ readonly focusStrategy: Signal<FocusStrategy | null>;
88
+ /** Whether the select is currently focused. */
89
+ readonly isFocused: Signal<boolean>;
90
+ /** Whether focus is keyboard focus (RAC `useFocusRing({within: true})`). */
91
+ readonly isFocusVisible: Signal<boolean>;
92
+ /** Focused key of the closed trigger's typeahead (react-stately: the list's `focusedKey`). */
93
+ readonly focusedKey: Signal<Key | null>;
94
+ readonly validation: FormValidationState;
95
+ readonly onSelectionChange?: ((key: Key | null) => void) | undefined;
96
+ }
97
+ /**
98
+ * Provides state management for a select component (react-stately `useSelectState`). Handles the
99
+ * open state for the popup menu and the single / multiple value. Region state: a resumed page
100
+ * re-creating the select's region keeps it.
101
+ */
102
+ export declare function createSelectState<M extends SelectionMode = "single">(props: SelectStateProps<M>): SelectState<M>;
103
+ /** Whether the select is disabled now (its live `isDisabled` accessor, else the creation value). */
104
+ export declare const isSelectDisabled: (state: {
105
+ isDisabled: boolean;
106
+ disabled?: () => boolean | undefined;
107
+ }) => boolean;
108
+ /** Whether the select is required now (its live `isRequired` accessor, else the creation value). */
109
+ export declare const isSelectRequired: (state: {
110
+ isRequired: boolean;
111
+ required?: () => boolean | undefined;
112
+ }) => boolean;
113
+ /**
114
+ * A built-collection item read as a data entry (RAC parts mode): `label` / `textValue` = the node's `textValue`,
115
+ * `disabled` = `isDisabled`, plus the node's object `value` and `content` (its children: SelectValue renders them).
116
+ */
117
+ export interface BuiltItem extends Item {
118
+ readonly value: unknown;
119
+ readonly content: unknown;
120
+ }
121
+ /** The item nodes of a built collection as entries (sections → `{ key, title, children }`), cached per collection. */
122
+ export declare function builtEntries(collection: BuiltCollection<BuiltNode<unknown>>): readonly CollectionEntry[];
123
+ /** The data items: `items`, else the built collection's items (RAC parts mode), else none. */
124
+ export declare const selectEntries: (state: SelectState<SelectionMode>) => readonly CollectionEntry[];
125
+ /** Every item (sections flattened). */
126
+ export declare const selectItems: (state: SelectState<SelectionMode>) => Item[];
127
+ /** react-stately `ListCollection` of the items (typeahead, arrow keys, size). */
128
+ export declare const selectCollection: (state: SelectState<SelectionMode>) => ListCollection;
129
+ /** The displayed value: the first key when a single select holds an array (reads `value`). */
130
+ export declare function selectValue<M extends SelectionMode>(state: SelectState<M>): ValueType<M>;
131
+ /** Selected keys, in value order (react-stately `convertValue`). */
132
+ export declare function selectedKeys(state: SelectState<SelectionMode>): Key[];
133
+ /** The key of the first selected item (`selectedKey`). */
134
+ export declare const selectedKey: (state: SelectState<SelectionMode>) => Key | null;
135
+ /** The selected items, in value order (`selectedItems`; keys missing from the collection are skipped). */
136
+ export declare function selectedItems(state: SelectState<SelectionMode>): Item[];
137
+ /**
138
+ * Rivet helper (no upstream equivalent; `selectedItems` over any data): the items of `keys`, in key
139
+ * order, from entries (sections flattened). For selected items shown outside the Select, from the
140
+ * same items + a shared `value` signal.
141
+ */
142
+ export declare function selectedItemsOf(entries: readonly CollectionEntry[], keys: Iterable<Key> | Key | null | undefined): Item[];
143
+ /** Sets the select value (react-stately `setValue` / `setSelectedKey`). */
144
+ export declare function setSelectValue(state: SelectState<SelectionMode>, value: Key | readonly Key[] | null): void;
145
+ /** Whether the select may open: a non-empty collection, or `allowsEmptyCollection`. */
146
+ export declare const canOpen: (state: SelectState<SelectionMode>) => boolean;
147
+ /** Opens the menu (not when the collection is empty, unless `allowsEmptyCollection`). */
148
+ export declare function openSelect(state: SelectState<SelectionMode>, focusStrategy?: FocusStrategy | null): void;
149
+ /** Toggles the menu (not when the collection is empty, unless `allowsEmptyCollection`). */
150
+ export declare function toggleSelect(state: SelectState<SelectionMode>, focusStrategy?: FocusStrategy | null): void;
@@ -0,0 +1,187 @@
1
+ // Ported from React Stately (@react-stately/select useSelectState), Apache-2.0, © Adobe.
2
+ //
3
+ // Select state: the overlay (open) state, the value (single key or keys), focus flags and form
4
+ // validation. Signals + JSON only (resumable); the methods are free functions taking the state. The
5
+ // collection is the data items (`items`): the closed trigger needs it for typeahead and the arrow
6
+ // keys, the hidden `<select>` for its options, SelectValue for the selected items' text. RAC parts mode (no
7
+ // `items`): `collection` = the Select's built collection (react-stately `useSelectState({ collection })`); its
8
+ // item nodes are read as data entries (`selectEntries`), `value` = the node's object value, `content` = its children.
9
+ import { signal, untrack, _regionState } from "@rivetjs/reactivity";
10
+ import { controllable, setControlledValue } from "../interactions/controllable.js";
11
+ import { createId } from "@rivetjs/cdk/id";
12
+ import { buildNodes, ListCollection } from "../_adapters/collections.js";
13
+ import { createOverlayTriggerState, openOverlay, toggleOverlay } from "./overlays.js";
14
+ import { createFormValidationState, } from "./form-validation.js";
15
+ import { flatItems } from "./list.js";
16
+ /**
17
+ * Provides state management for a select component (react-stately `useSelectState`). Handles the
18
+ * open state for the popup menu and the single / multiple value. Region state: a resumed page
19
+ * re-creating the select's region keeps it.
20
+ */
21
+ export function createSelectState(props) {
22
+ return _regionState(() => {
23
+ const selectionMode = (props.selectionMode ?? "single");
24
+ const single = selectionMode === "single";
25
+ // Rivet (live props): the parts pass a live `isDisabled` accessor (the public type stays boolean).
26
+ const givenDisabled = props.isDisabled;
27
+ const givenRequired = props.isRequired;
28
+ const read = (v) => (typeof v === "function" ? v() : v);
29
+ const defaultValue = (props.defaultValue !== undefined ? props.defaultValue : single ? (props.defaultSelectedKey ?? null) : []);
30
+ // useSelectState: `value` wins over the deprecated `selectedKey` (single only); undefined = uncontrolled.
31
+ const controlled = (props.value !== undefined ? props.value : single ? props.selectedKey : undefined);
32
+ const control = controllable(controlled, defaultValue, props.onChange);
33
+ const value = control.value;
34
+ const initial = untrack(value);
35
+ return {
36
+ ...createOverlayTriggerState(props),
37
+ id: props.id ?? createId(),
38
+ selectionMode,
39
+ value,
40
+ control,
41
+ defaultValue: (defaultValue ?? initial),
42
+ items: props.items,
43
+ ...(props.collection ? { collection: props.collection } : {}),
44
+ disabledKeys: [...(props.disabledKeys ?? [])],
45
+ shouldCloseOnSelect: props.shouldCloseOnSelect ?? single,
46
+ allowsEmptyCollection: !!props.allowsEmptyCollection,
47
+ isDisabled: !!untrack(() => read(givenDisabled)),
48
+ ...(typeof givenDisabled === "function" ? { disabled: givenDisabled } : {}),
49
+ isRequired: !!untrack(() => read(givenRequired)),
50
+ ...(typeof givenRequired === "function" ? { required: givenRequired } : {}),
51
+ ...(props.name !== undefined ? { name: props.name } : {}),
52
+ ...(props.form !== undefined ? { form: props.form } : {}),
53
+ focusStrategy: signal(null),
54
+ isFocused: signal(false),
55
+ isFocusVisible: signal(false),
56
+ focusedKey: signal(null),
57
+ validation: createFormValidationState({
58
+ isInvalid: props.isInvalid,
59
+ validate: props.validate,
60
+ validationBehavior: props.validationBehavior ?? "aria",
61
+ name: props.name,
62
+ validationErrors: props.validationErrors,
63
+ value,
64
+ }),
65
+ ...(props.onSelectionChange ? { onSelectionChange: props.onSelectionChange } : {}),
66
+ };
67
+ });
68
+ }
69
+ /** Whether the select is disabled now (its live `isDisabled` accessor, else the creation value). */
70
+ export const isSelectDisabled = (state) => state.disabled ? !!state.disabled() : state.isDisabled;
71
+ /** Whether the select is required now (its live `isRequired` accessor, else the creation value). */
72
+ export const isSelectRequired = (state) => state.required ? !!state.required() : state.isRequired;
73
+ /** The collection entries (reads the items accessor). */
74
+ const EMPTY_ENTRIES = [];
75
+ const derived = new WeakMap();
76
+ /** The item nodes of a built collection as entries (sections → `{ key, title, children }`), cached per collection. */
77
+ export function builtEntries(collection) {
78
+ const cached = derived.get(collection);
79
+ if (cached)
80
+ return cached;
81
+ const item = (node) => {
82
+ const props = (node.props ?? {});
83
+ return {
84
+ key: node.key,
85
+ label: node.textValue,
86
+ textValue: node.textValue,
87
+ ...(props.isDisabled ? { disabled: true } : {}),
88
+ ...(props.href ? { href: props.href, target: props.target, rel: props.rel } : {}),
89
+ ...(node["aria-label"] ? { "aria-label": node["aria-label"] } : {}),
90
+ value: node.value,
91
+ content: props.children,
92
+ };
93
+ };
94
+ const out = [];
95
+ for (const node of collection) {
96
+ if (node.type === "item")
97
+ out.push(item(node));
98
+ else if (node.type === "section") {
99
+ const children = [];
100
+ let title;
101
+ for (const child of collection.getChildren?.(node.key) ?? []) {
102
+ if (child.type === "item")
103
+ children.push(item(child));
104
+ else if (child.type === "header" && title === undefined)
105
+ title = child.textValue;
106
+ }
107
+ out.push({ key: node.key, ...(title ? { title } : {}), ...(node["aria-label"] ? { "aria-label": node["aria-label"] } : {}), children });
108
+ }
109
+ }
110
+ derived.set(collection, out);
111
+ return out;
112
+ }
113
+ /** The data items: `items`, else the built collection's items (RAC parts mode), else none. */
114
+ export const selectEntries = (state) => {
115
+ if (state.items === undefined && state.collection)
116
+ return builtEntries(state.collection());
117
+ return (typeof state.items === "function" ? state.items() : state.items) ?? EMPTY_ENTRIES;
118
+ };
119
+ /** Every item (sections flattened). */
120
+ export const selectItems = (state) => flatItems(selectEntries(state));
121
+ /** react-stately `ListCollection` of the items (typeahead, arrow keys, size). */
122
+ export const selectCollection = (state) => new ListCollection(buildNodes(selectEntries(state)));
123
+ /** The displayed value: the first key when a single select holds an array (reads `value`). */
124
+ export function selectValue(state) {
125
+ const value = state.value();
126
+ return (state.selectionMode === "single" && Array.isArray(value) ? (value[0] ?? null) : value);
127
+ }
128
+ /** Selected keys, in value order (react-stately `convertValue`). */
129
+ export function selectedKeys(state) {
130
+ const value = selectValue(state);
131
+ if (value == null)
132
+ return [];
133
+ return Array.isArray(value) ? [...value] : [value];
134
+ }
135
+ /** The key of the first selected item (`selectedKey`). */
136
+ export const selectedKey = (state) => selectedKeys(state)[0] ?? null;
137
+ /** The selected items, in value order (`selectedItems`; keys missing from the collection are skipped). */
138
+ export function selectedItems(state) {
139
+ return selectedItemsOf(selectEntries(state), selectedKeys(state));
140
+ }
141
+ /**
142
+ * Rivet helper (no upstream equivalent; `selectedItems` over any data): the items of `keys`, in key
143
+ * order, from entries (sections flattened). For selected items shown outside the Select, from the
144
+ * same items + a shared `value` signal.
145
+ */
146
+ export function selectedItemsOf(entries, keys) {
147
+ const byKey = new Map();
148
+ for (const item of flatItems(entries ?? EMPTY_ENTRIES))
149
+ byKey.set(item.key, item);
150
+ const list = keys == null ? [] : typeof keys === "object" && Symbol.iterator in keys ? [...keys] : [keys];
151
+ return list.map((key) => byKey.get(key)).filter((item) => item != null);
152
+ }
153
+ /** Sets the select value (react-stately `setValue` / `setSelectedKey`). */
154
+ export function setSelectValue(state, value) {
155
+ const current = untrack(() => selectValue(state));
156
+ if (state.selectionMode === "single") {
157
+ const key = Array.isArray(value) ? (value[0] ?? null) : value;
158
+ // useControlledState: onChange only when the value changes (plain controlled: onChange only).
159
+ setControlledValue(state.control, key);
160
+ if (key !== current)
161
+ state.onSelectionChange?.(key);
162
+ }
163
+ else {
164
+ let keys = [];
165
+ if (Array.isArray(value))
166
+ keys = [...value];
167
+ else if (value != null)
168
+ keys = [value];
169
+ setControlledValue(state.control, keys);
170
+ }
171
+ }
172
+ /** Whether the select may open: a non-empty collection, or `allowsEmptyCollection`. */
173
+ export const canOpen = (state) => untrack(() => selectCollection(state).size) !== 0 || state.allowsEmptyCollection;
174
+ /** Opens the menu (not when the collection is empty, unless `allowsEmptyCollection`). */
175
+ export function openSelect(state, focusStrategy = null) {
176
+ if (!canOpen(state))
177
+ return;
178
+ state.focusStrategy.set(focusStrategy);
179
+ openOverlay(state);
180
+ }
181
+ /** Toggles the menu (not when the collection is empty, unless `allowsEmptyCollection`). */
182
+ export function toggleSelect(state, focusStrategy = null) {
183
+ if (!canOpen(state))
184
+ return;
185
+ state.focusStrategy.set(focusStrategy);
186
+ toggleOverlay(state);
187
+ }
@@ -0,0 +1,3 @@
1
+ export { createMultipleSelectionState, getSelection, readSelection, SelectionSet, setFocused, setFocusedKey, setSelectedKeys, setSelectionBehavior, type FocusState, type MultipleSelectionState, type MultipleSelectionStateProps, } from "@rivetjs/cdk/selection/state";
2
+ export { SelectionManager, type MultipleSelectionManager, type SelectionManagerOptions, type SelectionEvent, type PointerType } from "@rivetjs/cdk/selection/manager";
3
+ export type { DisabledBehavior, FocusStrategy, Key, Selection, SelectionBehavior, SelectionMode } from "@rivetjs/cdk/collections/types";
@@ -0,0 +1,5 @@
1
+ // Ported from @react-stately/selection (index): multiple selection + focus state and the
2
+ // SelectionManager. Implementation lives in @rivetjs/cdk/selection (shared with cdk behaviours);
3
+ // this module is the react-stately-shaped entry point (`@rivetjs/cdk/state/selection`).
4
+ export { createMultipleSelectionState, getSelection, readSelection, SelectionSet, setFocused, setFocusedKey, setSelectedKeys, setSelectionBehavior, } from "@rivetjs/cdk/selection/state";
5
+ export { SelectionManager } from "@rivetjs/cdk/selection/manager";
@@ -0,0 +1,58 @@
1
+ import { type Signal } from "@rivetjs/reactivity";
2
+ import { type ColumnSize } from "../virtualizer/table-column-layout.js";
3
+ import type { GridNode } from "../collections/grid.js";
4
+ import type { Key } from "../collections/types.js";
5
+ import type { TableState } from "./table.js";
6
+ export type { ColumnSize } from "../virtualizer/table-column-layout.js";
7
+ export interface TableColumnResizeStateProps<T> {
8
+ /** Current width of the table or table viewport that the columns should be calculated against. */
9
+ tableWidth: number | Signal<number> | (() => number);
10
+ /** A function that is called to find the default width for a given column. */
11
+ getDefaultWidth?: ((node: GridNode<T>) => ColumnSize | null | undefined) | undefined;
12
+ /** A function that is called to find the default minWidth for a given column. */
13
+ getDefaultMinWidth?: ((node: GridNode<T>) => ColumnSize | null | undefined) | undefined;
14
+ }
15
+ export interface TableColumnResizeState<T> {
16
+ /** Called to update the state that a resize event has occurred. Returns the new widths for all columns based on the resized column. */
17
+ updateResizedColumns: (key: Key, width: number) => Map<Key, ColumnSize>;
18
+ /** Callback for when onColumnResize has started. */
19
+ startResize: (key: Key) => void;
20
+ /** Callback for when onColumnResize has ended. */
21
+ endResize: () => void;
22
+ /** Gets the current width for the specified column. */
23
+ getColumnWidth: (key: Key) => number;
24
+ /** Gets the current minWidth for the specified column. */
25
+ getColumnMinWidth: (key: Key) => number;
26
+ /** Gets the current maxWidth for the specified column. */
27
+ getColumnMaxWidth: (key: Key) => number;
28
+ /** Key of the currently resizing column. */
29
+ resizingColumn: Key | null;
30
+ /** A reference to the table state. */
31
+ tableState: TableState<T>;
32
+ /** A map of the current column widths. */
33
+ columnWidths: Map<Key, number>;
34
+ }
35
+ /** The serializable part of a column resize state. */
36
+ export interface TableColumnResizeStateData<T = unknown> {
37
+ readonly tableWidth: number | Signal<number> | (() => number);
38
+ readonly getDefaultWidth: ((node: GridNode<T>) => ColumnSize | null | undefined) | undefined;
39
+ readonly getDefaultMinWidth: ((node: GridNode<T>) => ColumnSize | null | undefined) | undefined;
40
+ /** Key of the currently resizing column. */
41
+ readonly resizingColumn: Signal<Key | null>;
42
+ /** Uncontrolled column widths, and the column keys (joined) they were computed for. */
43
+ readonly uncontrolled: Signal<{
44
+ columns: string;
45
+ widths: Map<Key, ColumnSize>;
46
+ } | null>;
47
+ }
48
+ /** Column width state for a table with column resizing (react-stately `useTableColumnResizeState`). */
49
+ export declare function createTableColumnResizeState<T>(props: TableColumnResizeStateProps<T>): TableColumnResizeStateData<T>;
50
+ /** `startResize(key)`. */
51
+ export declare function startColumnResize(data: TableColumnResizeStateData<any>, key: Key): void;
52
+ /** `endResize()`. */
53
+ export declare function endColumnResize(data: TableColumnResizeStateData<any>): void;
54
+ /**
55
+ * The react-stately `TableColumnResizeState` view over a `TableState` view: current column widths
56
+ * for the table width, min / max widths, resizing column, and the update callbacks.
57
+ */
58
+ export declare function tableColumnResizeState<T>(data: TableColumnResizeStateData<T>, state: TableState<T>): TableColumnResizeState<T>;