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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1298) hide show
  1. package/LICENSE +21 -0
  2. package/NOTICE +483 -0
  3. package/README.md +10 -2
  4. package/_adapters/collection.d.ts +160 -0
  5. package/_adapters/collection.js +235 -0
  6. package/_adapters/collections.d.ts +325 -0
  7. package/_adapters/collections.js +934 -0
  8. package/_adapters/dom-collection.d.ts +42 -0
  9. package/_adapters/dom-collection.js +228 -0
  10. package/_adapters/grid-selection.d.ts +115 -0
  11. package/_adapters/grid-selection.js +436 -0
  12. package/_adapters/interactions.d.ts +19 -0
  13. package/_adapters/interactions.js +45 -0
  14. package/_adapters/intl.d.ts +8 -0
  15. package/_adapters/intl.js +106 -0
  16. package/_adapters/press.d.ts +22 -0
  17. package/_adapters/press.js +34 -0
  18. package/_adapters/selectable.d.ts +132 -0
  19. package/_adapters/selectable.js +599 -0
  20. package/_adapters/selection.d.ts +120 -0
  21. package/_adapters/selection.js +709 -0
  22. package/_adapters/type-select.d.ts +8 -0
  23. package/_adapters/type-select.js +59 -0
  24. package/a11y/aria-describer.d.ts +46 -0
  25. package/a11y/aria-describer.js +169 -0
  26. package/a11y/focus-monitor.d.ts +98 -0
  27. package/a11y/focus-monitor.js +321 -0
  28. package/a11y/focus-trap.d.ts +137 -0
  29. package/a11y/focus-trap.js +378 -0
  30. package/a11y/high-contrast.d.ts +26 -0
  31. package/a11y/high-contrast.js +84 -0
  32. package/a11y/index.d.ts +37 -0
  33. package/a11y/index.js +97 -0
  34. package/a11y/interactivity-checker.d.ts +18 -0
  35. package/a11y/interactivity-checker.js +126 -0
  36. package/a11y/key-manager.d.ts +152 -0
  37. package/a11y/key-manager.js +397 -0
  38. package/a11y/live-announcer.d.ts +53 -0
  39. package/a11y/live-announcer.js +143 -0
  40. package/accordion/index.d.ts +2 -0
  41. package/accordion/index.jsx +10 -0
  42. package/announcer/index.d.ts +8 -0
  43. package/announcer/index.jsx +22 -0
  44. package/announcer/live-announcer.d.ts +15 -0
  45. package/announcer/live-announcer.js +123 -0
  46. package/autocomplete/behaviour.d.ts +94 -0
  47. package/autocomplete/behaviour.jsx +423 -0
  48. package/autocomplete/contexts.d.ts +54 -0
  49. package/autocomplete/contexts.js +28 -0
  50. package/autocomplete/index.d.ts +12 -0
  51. package/autocomplete/index.jsx +31 -0
  52. package/autocomplete/intl.d.ts +2 -0
  53. package/autocomplete/intl.js +36 -0
  54. package/bidi/bidi-dir.d.ts +23 -0
  55. package/bidi/bidi-dir.jsx +36 -0
  56. package/bidi/index.d.ts +58 -0
  57. package/bidi/index.js +84 -0
  58. package/breadcrumbs/behaviour.d.ts +6 -0
  59. package/breadcrumbs/behaviour.js +17 -0
  60. package/breadcrumbs/index.d.ts +68 -0
  61. package/breadcrumbs/index.jsx +224 -0
  62. package/breadcrumbs/intl.d.ts +3 -0
  63. package/breadcrumbs/intl.js +104 -0
  64. package/button/behaviour.d.ts +61 -0
  65. package/button/behaviour.js +90 -0
  66. package/button/index.d.ts +38 -0
  67. package/button/index.jsx +376 -0
  68. package/button/press.d.ts +25 -0
  69. package/button/press.js +54 -0
  70. package/calendar/behaviour.d.ts +250 -0
  71. package/calendar/behaviour.jsx +939 -0
  72. package/calendar/index.d.ts +157 -0
  73. package/calendar/index.jsx +484 -0
  74. package/calendar/intl.d.ts +3 -0
  75. package/calendar/intl.js +36 -0
  76. package/carousel/behaviour.d.ts +50 -0
  77. package/carousel/behaviour.jsx +365 -0
  78. package/carousel/engine/Alignment.d.ts +5 -0
  79. package/carousel/engine/Alignment.js +24 -0
  80. package/carousel/engine/Animations.d.ts +13 -0
  81. package/carousel/engine/Animations.js +28 -0
  82. package/carousel/engine/Axis.d.ts +14 -0
  83. package/carousel/engine/Axis.js +35 -0
  84. package/carousel/engine/Counter.d.ts +7 -0
  85. package/carousel/engine/Counter.js +32 -0
  86. package/carousel/engine/DragHandler.d.ts +22 -0
  87. package/carousel/engine/DragHandler.js +141 -0
  88. package/carousel/engine/DragTracker.d.ts +10 -0
  89. package/carousel/engine/DragTracker.js +29 -0
  90. package/carousel/engine/EmblaCarousel.d.ts +32 -0
  91. package/carousel/engine/EmblaCarousel.js +177 -0
  92. package/carousel/engine/Engine.d.ts +64 -0
  93. package/carousel/engine/Engine.js +137 -0
  94. package/carousel/engine/EventHandler.d.ts +27 -0
  95. package/carousel/engine/EventHandler.js +33 -0
  96. package/carousel/engine/EventStore.d.ts +9 -0
  97. package/carousel/engine/EventStore.js +25 -0
  98. package/carousel/engine/NodeRects.d.ts +12 -0
  99. package/carousel/engine/NodeRects.js +18 -0
  100. package/carousel/engine/Options.d.ts +40 -0
  101. package/carousel/engine/Options.js +22 -0
  102. package/carousel/engine/OptionsHandler.d.ts +10 -0
  103. package/carousel/engine/OptionsHandler.js +26 -0
  104. package/carousel/engine/PercentOfView.d.ts +4 -0
  105. package/carousel/engine/PercentOfView.js +9 -0
  106. package/carousel/engine/Plugins.d.ts +16 -0
  107. package/carousel/engine/Plugins.js +1 -0
  108. package/carousel/engine/PluginsHandler.d.ts +8 -0
  109. package/carousel/engine/PluginsHandler.js +16 -0
  110. package/carousel/engine/ResizeHandler.d.ts +13 -0
  111. package/carousel/engine/ResizeHandler.js +51 -0
  112. package/carousel/engine/ScrollBounds.d.ts +10 -0
  113. package/carousel/engine/ScrollBounds.js +41 -0
  114. package/carousel/engine/ScrollContain.d.ts +7 -0
  115. package/carousel/engine/ScrollContain.js +52 -0
  116. package/carousel/engine/ScrollLimit.d.ts +5 -0
  117. package/carousel/engine/ScrollLimit.js +13 -0
  118. package/carousel/engine/ScrollLooper.d.ts +6 -0
  119. package/carousel/engine/ScrollLooper.js +26 -0
  120. package/carousel/engine/ScrollProgress.d.ts +5 -0
  121. package/carousel/engine/ScrollProgress.js +11 -0
  122. package/carousel/engine/ScrollSnaps.d.ts +9 -0
  123. package/carousel/engine/ScrollSnaps.js +26 -0
  124. package/carousel/engine/ScrollTarget.d.ts +12 -0
  125. package/carousel/engine/ScrollTarget.js +47 -0
  126. package/carousel/engine/ScrollTo.d.ts +11 -0
  127. package/carousel/engine/ScrollTo.js +36 -0
  128. package/carousel/engine/SlideFocus.d.ts +13 -0
  129. package/carousel/engine/SlideFocus.js +39 -0
  130. package/carousel/engine/SlideLooper.d.ts +18 -0
  131. package/carousel/engine/SlideLooper.js +78 -0
  132. package/carousel/engine/SlideRegistry.d.ts +7 -0
  133. package/carousel/engine/SlideRegistry.js +31 -0
  134. package/carousel/engine/SlideSizes.d.ts +10 -0
  135. package/carousel/engine/SlideSizes.js +41 -0
  136. package/carousel/engine/SlidesHandler.d.ts +10 -0
  137. package/carousel/engine/SlidesHandler.js +36 -0
  138. package/carousel/engine/SlidesInView.d.ts +8 -0
  139. package/carousel/engine/SlidesInView.js +59 -0
  140. package/carousel/engine/SlidesToScroll.d.ts +7 -0
  141. package/carousel/engine/SlidesToScroll.js +41 -0
  142. package/carousel/engine/Translate.d.ts +7 -0
  143. package/carousel/engine/Translate.js +38 -0
  144. package/carousel/engine/index.d.ts +11 -0
  145. package/carousel/engine/index.js +1 -0
  146. package/carousel/engine/utils.d.ts +15 -0
  147. package/carousel/engine/utils.js +45 -0
  148. package/carousel/index.d.ts +202 -0
  149. package/carousel/index.jsx +469 -0
  150. package/carousel/plugins/auto-height/AutoHeight.d.ts +14 -0
  151. package/carousel/plugins/auto-height/AutoHeight.js +43 -0
  152. package/carousel/plugins/auto-height/Options.d.ts +2 -0
  153. package/carousel/plugins/auto-height/Options.js +1 -0
  154. package/carousel/plugins/auto-height/index.d.ts +2 -0
  155. package/carousel/plugins/auto-height/index.js +1 -0
  156. package/carousel/plugins/auto-scroll/AutoScroll.d.ts +25 -0
  157. package/carousel/plugins/auto-scroll/AutoScroll.js +185 -0
  158. package/carousel/plugins/auto-scroll/Options.d.ts +13 -0
  159. package/carousel/plugins/auto-scroll/Options.js +12 -0
  160. package/carousel/plugins/auto-scroll/index.d.ts +2 -0
  161. package/carousel/plugins/auto-scroll/index.js +1 -0
  162. package/carousel/plugins/auto-scroll/utils.d.ts +3 -0
  163. package/carousel/plugins/auto-scroll/utils.js +4 -0
  164. package/carousel/plugins/autoplay/Autoplay.d.ts +29 -0
  165. package/carousel/plugins/autoplay/Autoplay.js +173 -0
  166. package/carousel/plugins/autoplay/Options.d.ts +14 -0
  167. package/carousel/plugins/autoplay/Options.js +12 -0
  168. package/carousel/plugins/autoplay/index.d.ts +2 -0
  169. package/carousel/plugins/autoplay/index.js +1 -0
  170. package/carousel/plugins/autoplay/utils.d.ts +4 -0
  171. package/carousel/plugins/autoplay/utils.js +11 -0
  172. package/carousel/plugins/class-names/ClassNames.d.ts +14 -0
  173. package/carousel/plugins/class-names/ClassNames.js +98 -0
  174. package/carousel/plugins/class-names/Options.d.ts +13 -0
  175. package/carousel/plugins/class-names/Options.js +9 -0
  176. package/carousel/plugins/class-names/index.d.ts +2 -0
  177. package/carousel/plugins/class-names/index.js +1 -0
  178. package/carousel/plugins/class-names/utils.d.ts +4 -0
  179. package/carousel/plugins/class-names/utils.js +14 -0
  180. package/carousel/plugins/fade/Fade.d.ts +14 -0
  181. package/carousel/plugins/fade/Fade.js +199 -0
  182. package/carousel/plugins/fade/Options.d.ts +2 -0
  183. package/carousel/plugins/fade/Options.js +1 -0
  184. package/carousel/plugins/fade/index.d.ts +2 -0
  185. package/carousel/plugins/fade/index.js +1 -0
  186. package/carousel/plugins/fade/utils.d.ts +2 -0
  187. package/carousel/plugins/fade/utils.js +8 -0
  188. package/carousel/state.d.ts +81 -0
  189. package/carousel/state.js +71 -0
  190. package/chat/index.d.ts +83 -0
  191. package/chat/index.jsx +287 -0
  192. package/checkbox/behaviour.d.ts +172 -0
  193. package/checkbox/behaviour.jsx +412 -0
  194. package/checkbox/index.d.ts +168 -0
  195. package/checkbox/index.jsx +310 -0
  196. package/clipboard/index.d.ts +49 -0
  197. package/clipboard/index.js +136 -0
  198. package/coercion/index.d.ts +36 -0
  199. package/coercion/index.js +58 -0
  200. package/collections/base.d.ts +115 -0
  201. package/collections/base.js +346 -0
  202. package/collections/builder.d.ts +44 -0
  203. package/collections/builder.js +283 -0
  204. package/collections/components.d.ts +252 -0
  205. package/collections/components.jsx +745 -0
  206. package/collections/data-source.d.ts +26 -0
  207. package/collections/data-source.js +27 -0
  208. package/collections/dom.d.ts +34 -0
  209. package/collections/dom.js +127 -0
  210. package/collections/grid.d.ts +45 -0
  211. package/collections/grid.js +125 -0
  212. package/collections/hidden.d.ts +4 -0
  213. package/collections/hidden.js +12 -0
  214. package/collections/index.d.ts +45 -0
  215. package/collections/index.js +105 -0
  216. package/collections/list-state.d.ts +99 -0
  217. package/collections/list-state.js +156 -0
  218. package/collections/list.d.ts +20 -0
  219. package/collections/list.js +77 -0
  220. package/collections/nodes.d.ts +17 -0
  221. package/collections/nodes.js +107 -0
  222. package/collections/row-stamps.d.ts +17 -0
  223. package/collections/row-stamps.js +108 -0
  224. package/collections/selection-model.d.ts +93 -0
  225. package/collections/selection-model.js +192 -0
  226. package/collections/server-dev.d.ts +6 -0
  227. package/collections/server-dev.js +18 -0
  228. package/collections/server-off.d.ts +6 -0
  229. package/collections/server-off.js +9 -0
  230. package/collections/server-on.d.ts +29 -0
  231. package/collections/server-on.jsx +86 -0
  232. package/collections/table.d.ts +114 -0
  233. package/collections/table.js +439 -0
  234. package/collections/tree-state.d.ts +47 -0
  235. package/collections/tree-state.js +73 -0
  236. package/collections/tree.d.ts +20 -0
  237. package/collections/tree.js +66 -0
  238. package/collections/types.d.ts +229 -0
  239. package/collections/types.js +4 -0
  240. package/collections/unique-selection-dispatcher.d.ts +10 -0
  241. package/collections/unique-selection-dispatcher.js +25 -0
  242. package/color/area-state.d.ts +99 -0
  243. package/color/area-state.js +160 -0
  244. package/color/aria-intl.d.ts +3 -0
  245. package/color/aria-intl.js +274 -0
  246. package/color/channel-field-state.d.ts +50 -0
  247. package/color/channel-field-state.jsx +87 -0
  248. package/color/color.d.ts +78 -0
  249. package/color/color.js +738 -0
  250. package/color/field-state.d.ts +66 -0
  251. package/color/field-state.jsx +159 -0
  252. package/color/index.d.ts +58 -0
  253. package/color/index.js +88 -0
  254. package/color/intl.d.ts +3 -0
  255. package/color/intl.js +1328 -0
  256. package/color/picker-state.d.ts +20 -0
  257. package/color/picker-state.js +19 -0
  258. package/color/slider-state.d.ts +78 -0
  259. package/color/slider-state.jsx +98 -0
  260. package/color/value.d.ts +27 -0
  261. package/color/value.js +36 -0
  262. package/color/wheel-state.d.ts +77 -0
  263. package/color/wheel-state.js +152 -0
  264. package/color-area/behaviour.d.ts +161 -0
  265. package/color-area/behaviour.jsx +454 -0
  266. package/color-area/index.d.ts +34 -0
  267. package/color-area/index.jsx +187 -0
  268. package/color-field/behaviour.d.ts +112 -0
  269. package/color-field/behaviour.jsx +262 -0
  270. package/color-field/index.d.ts +72 -0
  271. package/color-field/index.jsx +309 -0
  272. package/color-picker/index.d.ts +19 -0
  273. package/color-picker/index.jsx +49 -0
  274. package/color-slider/behaviour.d.ts +103 -0
  275. package/color-slider/behaviour.jsx +234 -0
  276. package/color-slider/index.d.ts +40 -0
  277. package/color-slider/index.jsx +162 -0
  278. package/color-swatch/behaviour.d.ts +40 -0
  279. package/color-swatch/behaviour.js +36 -0
  280. package/color-swatch/index.d.ts +29 -0
  281. package/color-swatch/index.jsx +82 -0
  282. package/color-swatch-picker/index.d.ts +62 -0
  283. package/color-swatch-picker/index.jsx +95 -0
  284. package/color-swatch-picker/intl.d.ts +3 -0
  285. package/color-swatch-picker/intl.js +104 -0
  286. package/color-thumb/index.d.ts +85 -0
  287. package/color-thumb/index.jsx +93 -0
  288. package/color-wheel/behaviour.d.ts +123 -0
  289. package/color-wheel/behaviour.jsx +301 -0
  290. package/color-wheel/index.d.ts +50 -0
  291. package/color-wheel/index.jsx +166 -0
  292. package/combobox/behaviour.d.ts +120 -0
  293. package/combobox/behaviour.jsx +588 -0
  294. package/combobox/index.d.ts +101 -0
  295. package/combobox/index.jsx +365 -0
  296. package/combobox/intl.d.ts +2 -0
  297. package/combobox/intl.js +240 -0
  298. package/compare/behaviour.d.ts +101 -0
  299. package/compare/behaviour.js +288 -0
  300. package/compare/index.d.ts +58 -0
  301. package/compare/index.jsx +129 -0
  302. package/data/async-list.d.ts +78 -0
  303. package/data/async-list.jsx +257 -0
  304. package/data/index.d.ts +3 -0
  305. package/data/index.jsx +6 -0
  306. package/data/list-data.d.ts +88 -0
  307. package/data/list-data.jsx +210 -0
  308. package/data/tree-data.d.ts +59 -0
  309. package/data/tree-data.jsx +278 -0
  310. package/data-grid/behaviour.d.ts +95 -0
  311. package/data-grid/behaviour.js +725 -0
  312. package/data-grid/index.d.ts +138 -0
  313. package/data-grid/index.jsx +452 -0
  314. package/data-grid/state.d.ts +131 -0
  315. package/data-grid/state.js +288 -0
  316. package/date/CalendarDate.d.ts +207 -0
  317. package/date/CalendarDate.js +374 -0
  318. package/date/DateFormatter.d.ts +24 -0
  319. package/date/DateFormatter.js +175 -0
  320. package/date/calendars/BuddhistCalendar.d.ts +16 -0
  321. package/date/calendars/BuddhistCalendar.js +46 -0
  322. package/date/calendars/EthiopicCalendar.d.ts +45 -0
  323. package/date/calendars/EthiopicCalendar.js +178 -0
  324. package/date/calendars/GregorianCalendar.d.ts +26 -0
  325. package/date/calendars/GregorianCalendar.js +122 -0
  326. package/date/calendars/HebrewCalendar.d.ts +21 -0
  327. package/date/calendars/HebrewCalendar.js +174 -0
  328. package/date/calendars/IndianCalendar.d.ts +17 -0
  329. package/date/calendars/IndianCalendar.js +111 -0
  330. package/date/calendars/IslamicCalendar.d.ts +51 -0
  331. package/date/calendars/IslamicCalendar.js +205 -0
  332. package/date/calendars/JapaneseCalendar.d.ts +22 -0
  333. package/date/calendars/JapaneseCalendar.js +148 -0
  334. package/date/calendars/PersianCalendar.d.ts +19 -0
  335. package/date/calendars/PersianCalendar.js +85 -0
  336. package/date/calendars/TaiwanCalendar.d.ts +19 -0
  337. package/date/calendars/TaiwanCalendar.js +70 -0
  338. package/date/conversion.d.ts +45 -0
  339. package/date/conversion.js +269 -0
  340. package/date/createCalendar.d.ts +3 -0
  341. package/date/createCalendar.js +55 -0
  342. package/date/index.d.ts +20 -0
  343. package/date/index.js +30 -0
  344. package/date/manipulation.d.ts +25 -0
  345. package/date/manipulation.js +399 -0
  346. package/date/queries.d.ts +93 -0
  347. package/date/queries.js +303 -0
  348. package/date/serialize.d.ts +18 -0
  349. package/date/serialize.js +55 -0
  350. package/date/string.d.ts +36 -0
  351. package/date/string.js +223 -0
  352. package/date/types.d.ts +136 -0
  353. package/date/types.js +14 -0
  354. package/date/utils.d.ts +4 -0
  355. package/date/utils.js +16 -0
  356. package/date/weekStartData.d.ts +1 -0
  357. package/date/weekStartData.js +112 -0
  358. package/date-field/behaviour.d.ts +188 -0
  359. package/date-field/behaviour.jsx +1025 -0
  360. package/date-field/index.d.ts +150 -0
  361. package/date-field/index.jsx +354 -0
  362. package/date-field/intl.d.ts +3 -0
  363. package/date-field/intl.js +36 -0
  364. package/date-field/live-value.d.ts +22 -0
  365. package/date-field/live-value.jsx +44 -0
  366. package/date-picker/behaviour.d.ts +95 -0
  367. package/date-picker/behaviour.jsx +343 -0
  368. package/date-picker/index.d.ts +66 -0
  369. package/date-picker/index.jsx +243 -0
  370. package/dialog/behaviour.d.ts +63 -0
  371. package/dialog/behaviour.jsx +90 -0
  372. package/dialog/contexts.d.ts +12 -0
  373. package/dialog/contexts.js +8 -0
  374. package/dialog/index.d.ts +48 -0
  375. package/dialog/index.jsx +301 -0
  376. package/disclosure/behaviour.d.ts +50 -0
  377. package/disclosure/behaviour.jsx +128 -0
  378. package/disclosure/details.d.ts +21 -0
  379. package/disclosure/details.jsx +14 -0
  380. package/disclosure/index.d.ts +92 -0
  381. package/disclosure/index.jsx +300 -0
  382. package/drag-drop/cdk-index.d.ts +22 -0
  383. package/drag-drop/cdk-index.jsx +25 -0
  384. package/drag-drop/directives/assertions.d.ts +6 -0
  385. package/drag-drop/directives/assertions.js +13 -0
  386. package/drag-drop/directives/config.d.ts +30 -0
  387. package/drag-drop/directives/config.js +7 -0
  388. package/drag-drop/directives/drag-handle.d.ts +10 -0
  389. package/drag-drop/directives/drag-handle.js +29 -0
  390. package/drag-drop/directives/drag.d.ts +210 -0
  391. package/drag-drop/directives/drag.js +550 -0
  392. package/drag-drop/directives/drop-list-group.d.ts +25 -0
  393. package/drag-drop/directives/drop-list-group.js +55 -0
  394. package/drag-drop/directives/drop-list.d.ts +163 -0
  395. package/drag-drop/directives/drop-list.js +396 -0
  396. package/drag-drop/directives/registry.d.ts +32 -0
  397. package/drag-drop/directives/registry.js +61 -0
  398. package/drag-drop/dom/clone-node.d.ts +2 -0
  399. package/drag-drop/dom/clone-node.js +58 -0
  400. package/drag-drop/dom/coerce.d.ts +6 -0
  401. package/drag-drop/dom/coerce.js +8 -0
  402. package/drag-drop/dom/dom-rect.d.ts +37 -0
  403. package/drag-drop/dom/dom-rect.js +71 -0
  404. package/drag-drop/dom/fake-event.d.ts +4 -0
  405. package/drag-drop/dom/fake-event.js +22 -0
  406. package/drag-drop/dom/inherited-text.d.ts +4 -0
  407. package/drag-drop/dom/inherited-text.js +44 -0
  408. package/drag-drop/dom/layout-shift.d.ts +8 -0
  409. package/drag-drop/dom/layout-shift.js +87 -0
  410. package/drag-drop/dom/mount-content.d.ts +2 -0
  411. package/drag-drop/dom/mount-content.js +7 -0
  412. package/drag-drop/dom/parent-position-tracker.d.ts +32 -0
  413. package/drag-drop/dom/parent-position-tracker.js +71 -0
  414. package/drag-drop/dom/root-node.d.ts +21 -0
  415. package/drag-drop/dom/root-node.js +41 -0
  416. package/drag-drop/dom/shadow-dom.d.ts +4 -0
  417. package/drag-drop/dom/shadow-dom.js +18 -0
  418. package/drag-drop/dom/styling.d.ts +52 -0
  419. package/drag-drop/dom/styling.js +86 -0
  420. package/drag-drop/dom/transition-duration.d.ts +2 -0
  421. package/drag-drop/dom/transition-duration.js +29 -0
  422. package/drag-drop/drag-drop-registry.d.ts +69 -0
  423. package/drag-drop/drag-drop-registry.js +224 -0
  424. package/drag-drop/drag-drop.d.ts +19 -0
  425. package/drag-drop/drag-drop.js +10 -0
  426. package/drag-drop/drag-events.d.ts +117 -0
  427. package/drag-drop/drag-events.js +1 -0
  428. package/drag-drop/drag-handle.d.ts +18 -0
  429. package/drag-drop/drag-handle.jsx +53 -0
  430. package/drag-drop/drag-placeholder.d.ts +8 -0
  431. package/drag-drop/drag-placeholder.jsx +25 -0
  432. package/drag-drop/drag-preview.d.ts +10 -0
  433. package/drag-drop/drag-preview.jsx +31 -0
  434. package/drag-drop/drag-ref.d.ts +476 -0
  435. package/drag-drop/drag-ref.js +1306 -0
  436. package/drag-drop/drag-utils.d.ts +25 -0
  437. package/drag-drop/drag-utils.js +53 -0
  438. package/drag-drop/drag.d.ts +23 -0
  439. package/drag-drop/drag.jsx +128 -0
  440. package/drag-drop/drop-list-group.d.ts +22 -0
  441. package/drag-drop/drop-list-group.jsx +19 -0
  442. package/drag-drop/drop-list-ref.d.ts +295 -0
  443. package/drag-drop/drop-list-ref.js +707 -0
  444. package/drag-drop/drop-list.d.ts +19 -0
  445. package/drag-drop/drop-list.jsx +87 -0
  446. package/drag-drop/index.d.ts +1 -0
  447. package/drag-drop/index.jsx +4 -0
  448. package/drag-drop/lazy-refs.d.ts +28 -0
  449. package/drag-drop/lazy-refs.js +144 -0
  450. package/drag-drop/preview-ref.d.ts +38 -0
  451. package/drag-drop/preview-ref.js +132 -0
  452. package/drag-drop/sorting/drop-list-sort-strategy.d.ts +29 -0
  453. package/drag-drop/sorting/drop-list-sort-strategy.js +1 -0
  454. package/drag-drop/sorting/mixed-sort-strategy.d.ts +99 -0
  455. package/drag-drop/sorting/mixed-sort-strategy.js +259 -0
  456. package/drag-drop/sorting/single-axis-sort-strategy.d.ts +112 -0
  457. package/drag-drop/sorting/single-axis-sort-strategy.js +343 -0
  458. package/file-trigger/index.d.ts +24 -0
  459. package/file-trigger/index.jsx +41 -0
  460. package/flip/index.d.ts +59 -0
  461. package/flip/index.js +124 -0
  462. package/focus/focus-ring.d.ts +42 -0
  463. package/focus/focus-ring.jsx +77 -0
  464. package/focus/focus-scope.d.ts +51 -0
  465. package/focus/focus-scope.jsx +431 -0
  466. package/focus/focusable.d.ts +33 -0
  467. package/focus/focusable.jsx +93 -0
  468. package/focus/index.d.ts +74 -0
  469. package/focus/index.js +274 -0
  470. package/form/behaviour.d.ts +29 -0
  471. package/form/behaviour.js +145 -0
  472. package/form/field-error.d.ts +38 -0
  473. package/form/field-error.jsx +67 -0
  474. package/form/index.d.ts +77 -0
  475. package/form/index.jsx +116 -0
  476. package/grid/behaviour.d.ts +290 -0
  477. package/grid/behaviour.js +683 -0
  478. package/grid/intl.d.ts +2 -0
  479. package/grid/intl.js +36 -0
  480. package/grid/keyboard-delegate.d.ts +56 -0
  481. package/grid/keyboard-delegate.js +316 -0
  482. package/grid-list/behaviour.d.ts +248 -0
  483. package/grid-list/behaviour.js +616 -0
  484. package/grid-list/index.d.ts +204 -0
  485. package/grid-list/index.jsx +721 -0
  486. package/grid-list/row.d.ts +24 -0
  487. package/grid-list/row.js +57 -0
  488. package/group/index.d.ts +48 -0
  489. package/group/index.jsx +126 -0
  490. package/header/index.d.ts +13 -0
  491. package/header/index.jsx +34 -0
  492. package/heading/index.d.ts +19 -0
  493. package/heading/index.jsx +55 -0
  494. package/highlight/index.d.ts +12 -0
  495. package/highlight/index.jsx +357 -0
  496. package/i18n/filter.d.ts +16 -0
  497. package/i18n/filter.js +66 -0
  498. package/i18n/i18n-provider.d.ts +10 -0
  499. package/i18n/i18n-provider.jsx +15 -0
  500. package/i18n/index.d.ts +27 -0
  501. package/i18n/index.js +115 -0
  502. package/i18n/intl-cache.d.ts +4 -0
  503. package/i18n/intl-cache.js +40 -0
  504. package/i18n/list-formatter.d.ts +2 -0
  505. package/i18n/list-formatter.js +11 -0
  506. package/input/index.d.ts +51 -0
  507. package/input/index.jsx +95 -0
  508. package/interactions/controllable.d.ts +42 -0
  509. package/interactions/controllable.js +67 -0
  510. package/interactions/focus-visible.d.ts +68 -0
  511. package/interactions/focus-visible.jsx +291 -0
  512. package/interactions/focus.d.ts +58 -0
  513. package/interactions/focus.jsx +152 -0
  514. package/interactions/hover.d.ts +54 -0
  515. package/interactions/hover.jsx +139 -0
  516. package/interactions/index.d.ts +1 -0
  517. package/interactions/index.js +3 -0
  518. package/interactions/interact-outside.d.ts +24 -0
  519. package/interactions/interact-outside.jsx +57 -0
  520. package/interactions/keyboard.d.ts +28 -0
  521. package/interactions/keyboard.jsx +51 -0
  522. package/interactions/long-press.d.ts +41 -0
  523. package/interactions/long-press.jsx +79 -0
  524. package/interactions/merge-props.d.ts +54 -0
  525. package/interactions/merge-props.jsx +257 -0
  526. package/interactions/move.d.ts +48 -0
  527. package/interactions/move.jsx +96 -0
  528. package/interactions/press.d.ts +129 -0
  529. package/interactions/press.jsx +539 -0
  530. package/interactions/pressable.d.ts +22 -0
  531. package/interactions/pressable.jsx +93 -0
  532. package/interactions/scroll-wheel.d.ts +20 -0
  533. package/interactions/scroll-wheel.jsx +40 -0
  534. package/interactions/utils.d.ts +52 -0
  535. package/interactions/utils.js +253 -0
  536. package/keyboard/index.d.ts +12 -0
  537. package/keyboard/index.jsx +34 -0
  538. package/keys/index.d.ts +68 -0
  539. package/keys/index.js +199 -0
  540. package/label/behaviour.d.ts +54 -0
  541. package/label/behaviour.js +60 -0
  542. package/label/index.d.ts +35 -0
  543. package/label/index.jsx +85 -0
  544. package/landmark/index.d.ts +10 -0
  545. package/landmark/index.jsx +35 -0
  546. package/landmark/manager.d.ts +50 -0
  547. package/landmark/manager.js +364 -0
  548. package/layout/index.d.ts +90 -0
  549. package/layout/index.js +207 -0
  550. package/lightbox/behaviour.d.ts +82 -0
  551. package/lightbox/behaviour.js +490 -0
  552. package/lightbox/captions/index.d.ts +39 -0
  553. package/lightbox/captions/index.jsx +44 -0
  554. package/lightbox/counter/index.d.ts +10 -0
  555. package/lightbox/counter/index.jsx +10 -0
  556. package/lightbox/download/index.d.ts +32 -0
  557. package/lightbox/download/index.jsx +89 -0
  558. package/lightbox/embed/index.d.ts +15 -0
  559. package/lightbox/embed/index.jsx +58 -0
  560. package/lightbox/fullscreen/index.d.ts +24 -0
  561. package/lightbox/fullscreen/index.jsx +80 -0
  562. package/lightbox/index.d.ts +129 -0
  563. package/lightbox/index.jsx +284 -0
  564. package/lightbox/inline/index.d.ts +18 -0
  565. package/lightbox/inline/index.jsx +15 -0
  566. package/lightbox/pdf/index.d.ts +18 -0
  567. package/lightbox/pdf/index.jsx +31 -0
  568. package/lightbox/share/index.d.ts +29 -0
  569. package/lightbox/share/index.jsx +43 -0
  570. package/lightbox/slideshow/index.d.ts +24 -0
  571. package/lightbox/slideshow/index.jsx +118 -0
  572. package/lightbox/state.d.ts +334 -0
  573. package/lightbox/state.js +192 -0
  574. package/lightbox/thumbnails/index.d.ts +54 -0
  575. package/lightbox/thumbnails/index.jsx +96 -0
  576. package/lightbox/video/index.d.ts +13 -0
  577. package/lightbox/video/index.jsx +42 -0
  578. package/lightbox/zoom/index.d.ts +67 -0
  579. package/lightbox/zoom/index.jsx +456 -0
  580. package/link/behaviour.d.ts +41 -0
  581. package/link/behaviour.js +58 -0
  582. package/link/index.d.ts +30 -0
  583. package/link/index.jsx +179 -0
  584. package/link/router.d.ts +1 -0
  585. package/link/router.js +5 -0
  586. package/listbox/behaviour.d.ts +175 -0
  587. package/listbox/behaviour.jsx +515 -0
  588. package/listbox/index.d.ts +129 -0
  589. package/listbox/index.jsx +632 -0
  590. package/markdown/index.d.ts +82 -0
  591. package/markdown/index.jsx +654 -0
  592. package/masonry/behaviour.d.ts +121 -0
  593. package/masonry/behaviour.js +676 -0
  594. package/masonry/flip.d.ts +27 -0
  595. package/masonry/flip.js +61 -0
  596. package/masonry/geometry.d.ts +44 -0
  597. package/masonry/geometry.js +184 -0
  598. package/masonry/index.d.ts +153 -0
  599. package/masonry/index.jsx +833 -0
  600. package/masonry/justified.d.ts +49 -0
  601. package/masonry/justified.js +250 -0
  602. package/masonry/layout.d.ts +200 -0
  603. package/masonry/layout.js +668 -0
  604. package/masonry/masonry-layout.d.ts +57 -0
  605. package/masonry/masonry-layout.js +159 -0
  606. package/masonry/masonry.css +29 -0
  607. package/menu/behaviour.d.ts +205 -0
  608. package/menu/behaviour.jsx +847 -0
  609. package/menu/index.d.ts +171 -0
  610. package/menu/index.jsx +702 -0
  611. package/menu/intl.d.ts +2 -0
  612. package/menu/intl.js +36 -0
  613. package/menu/safely-mouse-to-submenu.d.ts +12 -0
  614. package/menu/safely-mouse-to-submenu.js +128 -0
  615. package/meter/behaviour.d.ts +18 -0
  616. package/meter/behaviour.jsx +17 -0
  617. package/meter/index.d.ts +30 -0
  618. package/meter/index.jsx +85 -0
  619. package/modal/index.d.ts +79 -0
  620. package/modal/index.jsx +359 -0
  621. package/modal/provider.d.ts +47 -0
  622. package/modal/provider.jsx +105 -0
  623. package/morph/index.d.ts +91 -0
  624. package/morph/index.jsx +372 -0
  625. package/morph/item.d.ts +89 -0
  626. package/morph/item.jsx +546 -0
  627. package/motion/Animations.d.ts +17 -0
  628. package/motion/Animations.js +56 -0
  629. package/motion/DragRelease.d.ts +22 -0
  630. package/motion/DragRelease.js +26 -0
  631. package/motion/DragTracker.d.ts +7 -0
  632. package/motion/DragTracker.js +43 -0
  633. package/motion/Limit.d.ts +12 -0
  634. package/motion/Limit.js +37 -0
  635. package/motion/Motion1D.d.ts +38 -0
  636. package/motion/Motion1D.js +72 -0
  637. package/motion/ScrollBody.d.ts +13 -0
  638. package/motion/ScrollBody.js +75 -0
  639. package/motion/Vector1d.d.ts +8 -0
  640. package/motion/Vector1d.js +29 -0
  641. package/motion/index.d.ts +8 -0
  642. package/motion/index.js +12 -0
  643. package/motion/utils.d.ts +5 -0
  644. package/motion/utils.js +23 -0
  645. package/native-select/index.d.ts +46 -0
  646. package/native-select/index.jsx +99 -0
  647. package/navigation-tree/index.d.ts +43 -0
  648. package/navigation-tree/index.jsx +110 -0
  649. package/number/NumberFormatter.d.ts +28 -0
  650. package/number/NumberFormatter.js +144 -0
  651. package/number/NumberParser.d.ts +27 -0
  652. package/number/NumberParser.js +316 -0
  653. package/number/index.d.ts +5 -0
  654. package/number/index.jsx +17 -0
  655. package/number/number-field-state.d.ts +132 -0
  656. package/number/number-field-state.jsx +364 -0
  657. package/number-field/behaviour.d.ts +165 -0
  658. package/number-field/behaviour.jsx +512 -0
  659. package/number-field/index.d.ts +52 -0
  660. package/number-field/index.jsx +207 -0
  661. package/number-field/intl.d.ts +2 -0
  662. package/number-field/intl.js +36 -0
  663. package/observers/index.d.ts +70 -0
  664. package/observers/index.js +279 -0
  665. package/overflow/index.d.ts +93 -0
  666. package/overflow/index.jsx +267 -0
  667. package/overlay/aria-hide-outside.d.ts +12 -0
  668. package/overlay/aria-hide-outside.js +141 -0
  669. package/overlay/close-on-scroll.d.ts +1 -0
  670. package/overlay/close-on-scroll.js +6 -0
  671. package/overlay/contexts.d.ts +34 -0
  672. package/overlay/contexts.js +21 -0
  673. package/overlay/dismiss-button.d.ts +10 -0
  674. package/overlay/dismiss-button.jsx +18 -0
  675. package/overlay/hover-trigger.d.ts +54 -0
  676. package/overlay/hover-trigger.jsx +221 -0
  677. package/overlay/index.d.ts +40 -0
  678. package/overlay/index.js +139 -0
  679. package/overlay/modal-overlay.d.ts +16 -0
  680. package/overlay/modal-overlay.js +38 -0
  681. package/overlay/overlay-strings.d.ts +4 -0
  682. package/overlay/overlay-strings.js +52 -0
  683. package/overlay/overlay-trigger-state.d.ts +1 -0
  684. package/overlay/overlay-trigger-state.js +3 -0
  685. package/overlay/overlay-trigger.d.ts +27 -0
  686. package/overlay/overlay-trigger.jsx +50 -0
  687. package/overlay/position.d.ts +160 -0
  688. package/overlay/position.js +559 -0
  689. package/overlay/prevent-scroll-ios.d.ts +17 -0
  690. package/overlay/prevent-scroll-ios.js +331 -0
  691. package/overlay/prevent-scroll.d.ts +18 -0
  692. package/overlay/prevent-scroll.js +122 -0
  693. package/overlay/safe-area.d.ts +28 -0
  694. package/overlay/safe-area.js +108 -0
  695. package/overlay-arrow/index.d.ts +23 -0
  696. package/overlay-arrow/index.jsx +59 -0
  697. package/overlay-service/connected-position.d.ts +163 -0
  698. package/overlay-service/connected-position.js +661 -0
  699. package/overlay-service/global-position.d.ts +34 -0
  700. package/overlay-service/global-position.js +154 -0
  701. package/overlay-service/index.d.ts +15 -0
  702. package/overlay-service/index.js +27 -0
  703. package/overlay-service/overlay-container.d.ts +27 -0
  704. package/overlay-service/overlay-container.js +93 -0
  705. package/overlay-service/overlay-dispatchers.d.ts +44 -0
  706. package/overlay-service/overlay-dispatchers.js +149 -0
  707. package/overlay-service/overlay-position-builder.d.ts +8 -0
  708. package/overlay-service/overlay-position-builder.js +15 -0
  709. package/overlay-service/overlay-ref.d.ts +155 -0
  710. package/overlay-service/overlay-ref.js +436 -0
  711. package/overlay-service/overlay-strategy.d.ts +48 -0
  712. package/overlay-service/overlay-strategy.js +3 -0
  713. package/overlay-service/overlay-viewport.d.ts +85 -0
  714. package/overlay-service/overlay-viewport.js +192 -0
  715. package/overlay-service/overlay.css +94 -0
  716. package/overlay-service/scroll-strategies.d.ts +71 -0
  717. package/overlay-service/scroll-strategies.js +185 -0
  718. package/package.json +754 -4
  719. package/platform/index.d.ts +100 -0
  720. package/platform/index.js +304 -0
  721. package/popover/behaviour.d.ts +23 -0
  722. package/popover/behaviour.js +39 -0
  723. package/popover/index.d.ts +60 -0
  724. package/popover/index.jsx +285 -0
  725. package/popover/popover-overlay.d.ts +27 -0
  726. package/popover/popover-overlay.jsx +60 -0
  727. package/popover/use-popover.d.ts +57 -0
  728. package/popover/use-popover.js +92 -0
  729. package/portal/index.d.ts +55 -0
  730. package/portal/index.jsx +83 -0
  731. package/portal/portal-mount.d.ts +8 -0
  732. package/portal/portal-mount.js +7 -0
  733. package/portal/portal-outlet.d.ts +88 -0
  734. package/portal/portal-outlet.js +222 -0
  735. package/preview-trigger/behaviour.d.ts +70 -0
  736. package/preview-trigger/behaviour.jsx +258 -0
  737. package/preview-trigger/index.d.ts +12 -0
  738. package/preview-trigger/index.jsx +82 -0
  739. package/progress-bar/behaviour.d.ts +77 -0
  740. package/progress-bar/behaviour.jsx +75 -0
  741. package/progress-bar/context.d.ts +4 -0
  742. package/progress-bar/context.js +7 -0
  743. package/progress-bar/index.d.ts +38 -0
  744. package/progress-bar/index.jsx +90 -0
  745. package/radio-group/behaviour.d.ts +11 -0
  746. package/radio-group/behaviour.js +85 -0
  747. package/radio-group/index.d.ts +82 -0
  748. package/radio-group/index.jsx +142 -0
  749. package/radio-group/parts.d.ts +223 -0
  750. package/radio-group/parts.jsx +425 -0
  751. package/range-calendar/behaviour.d.ts +2 -0
  752. package/range-calendar/behaviour.jsx +5 -0
  753. package/range-calendar/index.d.ts +2 -0
  754. package/range-calendar/index.jsx +4 -0
  755. package/resizable/engine/components/group/auto-save/getStorageKey.d.ts +1 -0
  756. package/resizable/engine/components/group/auto-save/getStorageKey.js +5 -0
  757. package/resizable/engine/components/group/compareDocumentPosition.d.ts +5 -0
  758. package/resizable/engine/components/group/compareDocumentPosition.js +19 -0
  759. package/resizable/engine/components/group/readLegacyLayout.d.ts +16 -0
  760. package/resizable/engine/components/group/readLegacyLayout.js +48 -0
  761. package/resizable/engine/components/group/sortByElementOffset.d.ts +4 -0
  762. package/resizable/engine/components/group/sortByElementOffset.js +28 -0
  763. package/resizable/engine/components/group/types.d.ts +50 -0
  764. package/resizable/engine/components/group/types.js +1 -0
  765. package/resizable/engine/components/panel/types.d.ts +90 -0
  766. package/resizable/engine/components/panel/types.js +4 -0
  767. package/resizable/engine/constants.d.ts +15 -0
  768. package/resizable/engine/constants.js +27 -0
  769. package/resizable/engine/global/cursor/getCursorStyle.d.ts +7 -0
  770. package/resizable/engine/global/cursor/getCursorStyle.js +94 -0
  771. package/resizable/engine/global/cursor/supportsAdvancedCursorStyles.d.ts +5 -0
  772. package/resizable/engine/global/cursor/supportsAdvancedCursorStyles.js +20 -0
  773. package/resizable/engine/global/cursor/updateCursorStyle.d.ts +1 -0
  774. package/resizable/engine/global/cursor/updateCursorStyle.js +64 -0
  775. package/resizable/engine/global/dom/calculateAvailableAxisSize.d.ts +4 -0
  776. package/resizable/engine/global/dom/calculateAvailableAxisSize.js +10 -0
  777. package/resizable/engine/global/dom/calculateHitRegions.d.ts +13 -0
  778. package/resizable/engine/global/dom/calculateHitRegions.js +153 -0
  779. package/resizable/engine/global/dom/calculateItemConstraints.d.ts +2 -0
  780. package/resizable/engine/global/dom/calculateItemConstraints.js +82 -0
  781. package/resizable/engine/global/event-handlers/onDocumentContextMenu.d.ts +1 -0
  782. package/resizable/engine/global/event-handlers/onDocumentContextMenu.js +9 -0
  783. package/resizable/engine/global/event-handlers/onDocumentDoubleClick.d.ts +1 -0
  784. package/resizable/engine/global/event-handlers/onDocumentDoubleClick.js +28 -0
  785. package/resizable/engine/global/event-handlers/onDocumentKeyDown.d.ts +1 -0
  786. package/resizable/engine/global/event-handlers/onDocumentKeyDown.js +97 -0
  787. package/resizable/engine/global/event-handlers/onDocumentLostPointerCapture.d.ts +1 -0
  788. package/resizable/engine/global/event-handlers/onDocumentLostPointerCapture.js +18 -0
  789. package/resizable/engine/global/event-handlers/onDocumentPointerCancel.d.ts +1 -0
  790. package/resizable/engine/global/event-handlers/onDocumentPointerCancel.js +8 -0
  791. package/resizable/engine/global/event-handlers/onDocumentPointerDown.d.ts +1 -0
  792. package/resizable/engine/global/event-handlers/onDocumentPointerDown.js +54 -0
  793. package/resizable/engine/global/event-handlers/onDocumentPointerLeave.d.ts +1 -0
  794. package/resizable/engine/global/event-handlers/onDocumentPointerLeave.js +22 -0
  795. package/resizable/engine/global/event-handlers/onDocumentPointerMove.d.ts +1 -0
  796. package/resizable/engine/global/event-handlers/onDocumentPointerMove.js +69 -0
  797. package/resizable/engine/global/event-handlers/onDocumentPointerOut.d.ts +1 -0
  798. package/resizable/engine/global/event-handlers/onDocumentPointerOut.js +20 -0
  799. package/resizable/engine/global/event-handlers/onDocumentPointerUp.d.ts +1 -0
  800. package/resizable/engine/global/event-handlers/onDocumentPointerUp.js +15 -0
  801. package/resizable/engine/global/event-handlers/onWindowBlur.d.ts +1 -0
  802. package/resizable/engine/global/event-handlers/onWindowBlur.js +11 -0
  803. package/resizable/engine/global/mountAxis.d.ts +2 -0
  804. package/resizable/engine/global/mountAxis.js +187 -0
  805. package/resizable/engine/global/mutable-state/axes.d.ts +37 -0
  806. package/resizable/engine/global/mutable-state/axes.js +52 -0
  807. package/resizable/engine/global/mutable-state/interactions.d.ts +17 -0
  808. package/resizable/engine/global/mutable-state/interactions.js +92 -0
  809. package/resizable/engine/global/mutable-state/types.d.ts +32 -0
  810. package/resizable/engine/global/mutable-state/types.js +1 -0
  811. package/resizable/engine/global/styles/convertEmToPixels.d.ts +1 -0
  812. package/resizable/engine/global/styles/convertEmToPixels.js +7 -0
  813. package/resizable/engine/global/styles/convertRemToPixels.d.ts +1 -0
  814. package/resizable/engine/global/styles/convertRemToPixels.js +7 -0
  815. package/resizable/engine/global/styles/convertVhToPixels.d.ts +1 -0
  816. package/resizable/engine/global/styles/convertVhToPixels.js +5 -0
  817. package/resizable/engine/global/styles/convertVwToPixels.d.ts +1 -0
  818. package/resizable/engine/global/styles/convertVwToPixels.js +5 -0
  819. package/resizable/engine/global/styles/parseSizeAndUnit.d.ts +2 -0
  820. package/resizable/engine/global/styles/parseSizeAndUnit.js +29 -0
  821. package/resizable/engine/global/styles/sizeStyleToPixels.d.ts +5 -0
  822. package/resizable/engine/global/styles/sizeStyleToPixels.js +38 -0
  823. package/resizable/engine/global/types.d.ts +120 -0
  824. package/resizable/engine/global/types.js +1 -0
  825. package/resizable/engine/global/utils/abortActivePointerResize.d.ts +9 -0
  826. package/resizable/engine/global/utils/abortActivePointerResize.js +52 -0
  827. package/resizable/engine/global/utils/adjustLayoutByDelta.d.ts +9 -0
  828. package/resizable/engine/global/utils/adjustLayoutByDelta.js +219 -0
  829. package/resizable/engine/global/utils/adjustLayoutForSeparator.d.ts +1 -0
  830. package/resizable/engine/global/utils/adjustLayoutForSeparator.js +48 -0
  831. package/resizable/engine/global/utils/calculateDefaultLayout.d.ts +2 -0
  832. package/resizable/engine/global/utils/calculateDefaultLayout.js +30 -0
  833. package/resizable/engine/global/utils/calculateResizePreviews.d.ts +3 -0
  834. package/resizable/engine/global/utils/calculateResizePreviews.js +39 -0
  835. package/resizable/engine/global/utils/calculateSeparatorAriaValues.d.ts +12 -0
  836. package/resizable/engine/global/utils/calculateSeparatorAriaValues.js +43 -0
  837. package/resizable/engine/global/utils/compareLayoutNumbers.d.ts +1 -0
  838. package/resizable/engine/global/utils/compareLayoutNumbers.js +11 -0
  839. package/resizable/engine/global/utils/completeActivePointerResize.d.ts +6 -0
  840. package/resizable/engine/global/utils/completeActivePointerResize.js +49 -0
  841. package/resizable/engine/global/utils/doRectsIntersect.d.ts +2 -0
  842. package/resizable/engine/global/utils/doRectsIntersect.js +3 -0
  843. package/resizable/engine/global/utils/expandHitTarget.d.ts +10 -0
  844. package/resizable/engine/global/utils/expandHitTarget.js +19 -0
  845. package/resizable/engine/global/utils/findClosestHitRegion.d.ts +9 -0
  846. package/resizable/engine/global/utils/findClosestHitRegion.js +35 -0
  847. package/resizable/engine/global/utils/findClosestRect.d.ts +6 -0
  848. package/resizable/engine/global/utils/findClosestRect.js +22 -0
  849. package/resizable/engine/global/utils/findMatchingHitRegions.d.ts +7 -0
  850. package/resizable/engine/global/utils/findMatchingHitRegions.js +29 -0
  851. package/resizable/engine/global/utils/findSeparatorAxis.d.ts +21 -0
  852. package/resizable/engine/global/utils/findSeparatorAxis.js +12 -0
  853. package/resizable/engine/global/utils/formatLayoutNumber.d.ts +1 -0
  854. package/resizable/engine/global/utils/formatLayoutNumber.js +5 -0
  855. package/resizable/engine/global/utils/getDefaultLayout.d.ts +5 -0
  856. package/resizable/engine/global/utils/getDefaultLayout.js +11 -0
  857. package/resizable/engine/global/utils/getDistanceBetweenPointAndRect.d.ts +5 -0
  858. package/resizable/engine/global/utils/getDistanceBetweenPointAndRect.js +6 -0
  859. package/resizable/engine/global/utils/getImperativeAxisMethods.d.ts +4 -0
  860. package/resizable/engine/global/utils/getImperativeAxisMethods.js +53 -0
  861. package/resizable/engine/global/utils/getImperativeItemMethods.d.ts +5 -0
  862. package/resizable/engine/global/utils/getImperativeItemMethods.js +169 -0
  863. package/resizable/engine/global/utils/isCoarsePointer.d.ts +4 -0
  864. package/resizable/engine/global/utils/isCoarsePointer.js +17 -0
  865. package/resizable/engine/global/utils/isModal.d.ts +1 -0
  866. package/resizable/engine/global/utils/isModal.js +11 -0
  867. package/resizable/engine/global/utils/isViableHitTarget.d.ts +5 -0
  868. package/resizable/engine/global/utils/isViableHitTarget.js +50 -0
  869. package/resizable/engine/global/utils/itemConstraintsEqual.d.ts +2 -0
  870. package/resizable/engine/global/utils/itemConstraintsEqual.js +9 -0
  871. package/resizable/engine/global/utils/layoutNumbersEqual.d.ts +1 -0
  872. package/resizable/engine/global/utils/layoutNumbersEqual.js +6 -0
  873. package/resizable/engine/global/utils/layoutsEqual.d.ts +2 -0
  874. package/resizable/engine/global/utils/layoutsEqual.js +15 -0
  875. package/resizable/engine/global/utils/normalizeLayout.d.ts +11 -0
  876. package/resizable/engine/global/utils/normalizeLayout.js +21 -0
  877. package/resizable/engine/global/utils/notifyItemOnResize.d.ts +2 -0
  878. package/resizable/engine/global/utils/notifyItemOnResize.js +23 -0
  879. package/resizable/engine/global/utils/objectsEqual.d.ts +1 -0
  880. package/resizable/engine/global/utils/objectsEqual.js +14 -0
  881. package/resizable/engine/global/utils/preserveFixedItemSizes.d.ts +7 -0
  882. package/resizable/engine/global/utils/preserveFixedItemSizes.js +53 -0
  883. package/resizable/engine/global/utils/recordAxisLayoutChange.d.ts +15 -0
  884. package/resizable/engine/global/utils/recordAxisLayoutChange.js +25 -0
  885. package/resizable/engine/global/utils/updateActiveHitRegion.d.ts +18 -0
  886. package/resizable/engine/global/utils/updateActiveHitRegion.js +119 -0
  887. package/resizable/engine/global/utils/validateAxisLayout.d.ts +5 -0
  888. package/resizable/engine/global/utils/validateAxisLayout.js +70 -0
  889. package/resizable/engine/global/utils/validateItemSize.d.ts +7 -0
  890. package/resizable/engine/global/utils/validateItemSize.js +31 -0
  891. package/resizable/engine/global/utils/validateLayoutKeys.d.ts +2 -0
  892. package/resizable/engine/global/utils/validateLayoutKeys.js +13 -0
  893. package/resizable/engine/types.d.ts +13 -0
  894. package/resizable/engine/types.js +1 -0
  895. package/resizable/engine/utils/EventEmitter.d.ts +11 -0
  896. package/resizable/engine/utils/EventEmitter.js +60 -0
  897. package/resizable/engine/utils/assert.d.ts +1 -0
  898. package/resizable/engine/utils/assert.js +7 -0
  899. package/resizable/engine/utils/isArrayEqual.d.ts +1 -0
  900. package/resizable/engine/utils/isArrayEqual.js +15 -0
  901. package/resizable/engine/utils/isHTMLElement.d.ts +1 -0
  902. package/resizable/engine/utils/isHTMLElement.js +6 -0
  903. package/resizable/engine/utils/isShadowRoot.d.ts +1 -0
  904. package/resizable/engine/utils/isShadowRoot.js +6 -0
  905. package/resizable/engine/vendor/stacking-order.d.ts +7 -0
  906. package/resizable/engine/vendor/stacking-order.js +122 -0
  907. package/resizable/index.d.ts +263 -0
  908. package/resizable/index.jsx +537 -0
  909. package/resizable/mount.d.ts +115 -0
  910. package/resizable/mount.js +540 -0
  911. package/scheduler/behaviour.d.ts +71 -0
  912. package/scheduler/behaviour.js +243 -0
  913. package/scheduler/context.d.ts +100 -0
  914. package/scheduler/context.jsx +7 -0
  915. package/scheduler/dates.d.ts +53 -0
  916. package/scheduler/dates.js +183 -0
  917. package/scheduler/drag.d.ts +20 -0
  918. package/scheduler/drag.js +361 -0
  919. package/scheduler/event.d.ts +26 -0
  920. package/scheduler/event.jsx +93 -0
  921. package/scheduler/index.d.ts +57 -0
  922. package/scheduler/index.jsx +303 -0
  923. package/scheduler/intl.d.ts +16 -0
  924. package/scheduler/intl.js +529 -0
  925. package/scheduler/keys-month.d.ts +7 -0
  926. package/scheduler/keys-month.js +110 -0
  927. package/scheduler/keys-time-grid.d.ts +9 -0
  928. package/scheduler/keys-time-grid.js +115 -0
  929. package/scheduler/keys.d.ts +103 -0
  930. package/scheduler/keys.js +527 -0
  931. package/scheduler/layout-index.d.ts +3 -0
  932. package/scheduler/layout-index.js +6 -0
  933. package/scheduler/layout.d.ts +285 -0
  934. package/scheduler/layout.js +378 -0
  935. package/scheduler/menus.d.ts +66 -0
  936. package/scheduler/menus.jsx +88 -0
  937. package/scheduler/month.d.ts +26 -0
  938. package/scheduler/month.jsx +215 -0
  939. package/scheduler/pointer.d.ts +64 -0
  940. package/scheduler/pointer.js +203 -0
  941. package/scheduler/select.d.ts +11 -0
  942. package/scheduler/select.js +64 -0
  943. package/scheduler/selection.d.ts +34 -0
  944. package/scheduler/selection.js +39 -0
  945. package/scheduler/state.d.ts +296 -0
  946. package/scheduler/state.js +496 -0
  947. package/scheduler/time-grid-client.d.ts +32 -0
  948. package/scheduler/time-grid-client.jsx +133 -0
  949. package/scheduler/time-grid.d.ts +26 -0
  950. package/scheduler/time-grid.jsx +266 -0
  951. package/scheduler/time.d.ts +35 -0
  952. package/scheduler/time.js +56 -0
  953. package/scheduler/toolbar.d.ts +43 -0
  954. package/scheduler/toolbar.jsx +38 -0
  955. package/scroll-area/dom.d.ts +11 -0
  956. package/scroll-area/dom.js +55 -0
  957. package/scroll-area/index.d.ts +96 -0
  958. package/scroll-area/index.jsx +884 -0
  959. package/scroll-area/presence.d.ts +12 -0
  960. package/scroll-area/presence.jsx +131 -0
  961. package/scrolling/auto-size-virtual-scroll.d.ts +53 -0
  962. package/scrolling/auto-size-virtual-scroll.js +213 -0
  963. package/scrolling/behaviour.d.ts +3 -0
  964. package/scrolling/behaviour.js +5 -0
  965. package/scrolling/emitter.d.ts +34 -0
  966. package/scrolling/emitter.js +144 -0
  967. package/scrolling/fixed-size-virtual-scroll.d.ts +28 -0
  968. package/scrolling/fixed-size-virtual-scroll.js +107 -0
  969. package/scrolling/index.d.ts +11 -0
  970. package/scrolling/index.jsx +13 -0
  971. package/scrolling/rtl.d.ts +16 -0
  972. package/scrolling/rtl.js +64 -0
  973. package/scrolling/scroll-dispatcher.d.ts +49 -0
  974. package/scrolling/scroll-dispatcher.js +107 -0
  975. package/scrolling/scrollable.d.ts +75 -0
  976. package/scrolling/scrollable.js +149 -0
  977. package/scrolling/scrolling.css +11 -0
  978. package/scrolling/state.d.ts +92 -0
  979. package/scrolling/state.js +94 -0
  980. package/scrolling/viewport-ruler.d.ts +47 -0
  981. package/scrolling/viewport-ruler.js +100 -0
  982. package/scrolling/viewport.d.ts +54 -0
  983. package/scrolling/viewport.jsx +105 -0
  984. package/scrolling/virtual-scroll-strategy.d.ts +41 -0
  985. package/scrolling/virtual-scroll-strategy.js +2 -0
  986. package/scrolling/virtual-scroll-viewport.d.ts +95 -0
  987. package/scrolling/virtual-scroll-viewport.js +370 -0
  988. package/search-field/behaviour.d.ts +62 -0
  989. package/search-field/behaviour.jsx +116 -0
  990. package/search-field/index.d.ts +57 -0
  991. package/search-field/index.jsx +158 -0
  992. package/search-field/intl.d.ts +2 -0
  993. package/search-field/intl.js +36 -0
  994. package/select/behaviour.d.ts +188 -0
  995. package/select/behaviour.jsx +445 -0
  996. package/select/hidden-select.d.ts +44 -0
  997. package/select/hidden-select.jsx +68 -0
  998. package/select/index.d.ts +123 -0
  999. package/select/index.jsx +255 -0
  1000. package/select/intl.d.ts +2 -0
  1001. package/select/intl.js +36 -0
  1002. package/select/parts.d.ts +11 -0
  1003. package/select/parts.jsx +12 -0
  1004. package/select/select-parts.d.ts +73 -0
  1005. package/select/select-parts.jsx +293 -0
  1006. package/select/select-value.d.ts +58 -0
  1007. package/select/select-value.jsx +142 -0
  1008. package/selection/dom-utils.d.ts +25 -0
  1009. package/selection/dom-utils.js +77 -0
  1010. package/selection/keyed.d.ts +19 -0
  1011. package/selection/keyed.js +66 -0
  1012. package/selection/list-keyboard-delegate.d.ts +67 -0
  1013. package/selection/list-keyboard-delegate.js +274 -0
  1014. package/selection/manager.d.ts +112 -0
  1015. package/selection/manager.js +340 -0
  1016. package/selection/selectable-collection.d.ts +123 -0
  1017. package/selection/selectable-collection.js +560 -0
  1018. package/selection/selectable-item.d.ts +128 -0
  1019. package/selection/selectable-item.js +486 -0
  1020. package/selection/selectable-list.d.ts +42 -0
  1021. package/selection/selectable-list.js +34 -0
  1022. package/selection/state.d.ts +96 -0
  1023. package/selection/state.js +131 -0
  1024. package/selection/type-select.d.ts +37 -0
  1025. package/selection/type-select.js +114 -0
  1026. package/selection/utils.d.ts +23 -0
  1027. package/selection/utils.js +38 -0
  1028. package/selection-indicator/context.d.ts +10 -0
  1029. package/selection-indicator/context.js +7 -0
  1030. package/selection-indicator/index.d.ts +20 -0
  1031. package/selection-indicator/index.jsx +25 -0
  1032. package/separator/behaviour.d.ts +17 -0
  1033. package/separator/behaviour.js +17 -0
  1034. package/separator/index.d.ts +23 -0
  1035. package/separator/index.jsx +64 -0
  1036. package/shared-element-transition/index.d.ts +36 -0
  1037. package/shared-element-transition/index.jsx +182 -0
  1038. package/shared-element-transition/transition.d.ts +19 -0
  1039. package/shared-element-transition/transition.jsx +20 -0
  1040. package/sheet-motion/index.d.ts +82 -0
  1041. package/sheet-motion/index.js +386 -0
  1042. package/sidebar/index.d.ts +257 -0
  1043. package/sidebar/index.jsx +625 -0
  1044. package/sidebar/pages.d.ts +71 -0
  1045. package/sidebar/pages.jsx +177 -0
  1046. package/sidebar/resize.d.ts +69 -0
  1047. package/sidebar/resize.js +237 -0
  1048. package/sidebar/sheet-motion.d.ts +15 -0
  1049. package/sidebar/sheet-motion.js +170 -0
  1050. package/sidebar/state.d.ts +126 -0
  1051. package/sidebar/state.js +204 -0
  1052. package/slider/behaviour.d.ts +141 -0
  1053. package/slider/behaviour.jsx +492 -0
  1054. package/slider/index.d.ts +171 -0
  1055. package/slider/index.jsx +392 -0
  1056. package/slider/state.d.ts +203 -0
  1057. package/slider/state.js +377 -0
  1058. package/slots/index.d.ts +248 -0
  1059. package/slots/index.jsx +473 -0
  1060. package/spinbutton/behaviour.d.ts +66 -0
  1061. package/spinbutton/behaviour.jsx +312 -0
  1062. package/spinbutton/intl.d.ts +2 -0
  1063. package/spinbutton/intl.js +36 -0
  1064. package/state/autocomplete.d.ts +26 -0
  1065. package/state/autocomplete.js +32 -0
  1066. package/state/calendar.d.ts +284 -0
  1067. package/state/calendar.js +755 -0
  1068. package/state/checkbox-group.d.ts +67 -0
  1069. package/state/checkbox-group.js +76 -0
  1070. package/state/combobox.d.ts +238 -0
  1071. package/state/combobox.js +708 -0
  1072. package/state/date-field.d.ts +407 -0
  1073. package/state/date-field.js +1117 -0
  1074. package/state/date-intl.d.ts +3 -0
  1075. package/state/date-intl.js +36 -0
  1076. package/state/date-picker.d.ts +144 -0
  1077. package/state/date-picker.js +387 -0
  1078. package/state/disclosure.d.ts +90 -0
  1079. package/state/disclosure.js +148 -0
  1080. package/state/form-validation.d.ts +89 -0
  1081. package/state/form-validation.js +158 -0
  1082. package/state/grid.d.ts +62 -0
  1083. package/state/grid.js +127 -0
  1084. package/state/list.d.ts +58 -0
  1085. package/state/list.js +124 -0
  1086. package/state/menu.d.ts +162 -0
  1087. package/state/menu.js +185 -0
  1088. package/state/overlays.d.ts +35 -0
  1089. package/state/overlays.js +29 -0
  1090. package/state/radio-group.d.ts +58 -0
  1091. package/state/radio-group.js +68 -0
  1092. package/state/search-field.d.ts +20 -0
  1093. package/state/search-field.js +21 -0
  1094. package/state/select.d.ts +150 -0
  1095. package/state/select.js +187 -0
  1096. package/state/selection.d.ts +3 -0
  1097. package/state/selection.js +5 -0
  1098. package/state/table-column-resize.d.ts +58 -0
  1099. package/state/table-column-resize.js +76 -0
  1100. package/state/table.d.ts +81 -0
  1101. package/state/table.js +114 -0
  1102. package/state/tabs.d.ts +85 -0
  1103. package/state/tabs.js +161 -0
  1104. package/state/time-field.d.ts +32 -0
  1105. package/state/time-field.js +34 -0
  1106. package/state/toast.d.ts +80 -0
  1107. package/state/toast.js +146 -0
  1108. package/state/toggle-group.d.ts +70 -0
  1109. package/state/toggle-group.js +110 -0
  1110. package/state/toggle.d.ts +40 -0
  1111. package/state/toggle.js +39 -0
  1112. package/state/tooltip.d.ts +53 -0
  1113. package/state/tooltip.js +153 -0
  1114. package/stepper/index.d.ts +117 -0
  1115. package/stepper/index.jsx +405 -0
  1116. package/stepper/state.d.ts +200 -0
  1117. package/stepper/state.js +325 -0
  1118. package/switch/behaviour.d.ts +12 -0
  1119. package/switch/behaviour.jsx +9 -0
  1120. package/switch/index.d.ts +150 -0
  1121. package/switch/index.jsx +186 -0
  1122. package/table/behaviour.d.ts +181 -0
  1123. package/table/behaviour.js +334 -0
  1124. package/table/collection.d.ts +49 -0
  1125. package/table/collection.js +259 -0
  1126. package/table/column-resize.d.ts +48 -0
  1127. package/table/column-resize.jsx +247 -0
  1128. package/table/index.d.ts +339 -0
  1129. package/table/index.jsx +1326 -0
  1130. package/table/intl.d.ts +2 -0
  1131. package/table/intl.js +36 -0
  1132. package/table/keyboard-delegate.d.ts +21 -0
  1133. package/table/keyboard-delegate.js +166 -0
  1134. package/table/rac-intl.d.ts +2 -0
  1135. package/table/rac-intl.js +36 -0
  1136. package/tabs/behaviour.d.ts +49 -0
  1137. package/tabs/behaviour.js +173 -0
  1138. package/tabs/index.d.ts +248 -0
  1139. package/tabs/index.jsx +577 -0
  1140. package/tabs/keyboard-delegate.d.ts +17 -0
  1141. package/tabs/keyboard-delegate.js +64 -0
  1142. package/tag-group/behaviour.d.ts +59 -0
  1143. package/tag-group/behaviour.js +112 -0
  1144. package/tag-group/index.d.ts +138 -0
  1145. package/tag-group/index.jsx +565 -0
  1146. package/tag-group/intl.d.ts +2 -0
  1147. package/tag-group/intl.js +36 -0
  1148. package/tailwind.css +12 -0
  1149. package/tests-components/app/src/routes/index.d.ts +4 -0
  1150. package/tests-components/app/src/routes/index.jsx +7 -0
  1151. package/text/index.d.ts +15 -0
  1152. package/text/index.jsx +61 -0
  1153. package/text-area/index.d.ts +19 -0
  1154. package/text-area/index.jsx +76 -0
  1155. package/text-field/autosize.d.ts +70 -0
  1156. package/text-field/autosize.js +355 -0
  1157. package/text-field/behaviour.d.ts +140 -0
  1158. package/text-field/behaviour.jsx +260 -0
  1159. package/text-field/fields.d.ts +12 -0
  1160. package/text-field/fields.js +20 -0
  1161. package/text-field/index.d.ts +50 -0
  1162. package/text-field/index.jsx +174 -0
  1163. package/text-field/text-field.css +45 -0
  1164. package/theme.css +1006 -0
  1165. package/time-wheels/behaviour.d.ts +29 -0
  1166. package/time-wheels/behaviour.js +156 -0
  1167. package/time-wheels/index.d.ts +27 -0
  1168. package/time-wheels/index.jsx +91 -0
  1169. package/toast/behaviour.d.ts +51 -0
  1170. package/toast/behaviour.jsx +273 -0
  1171. package/toast/index.d.ts +94 -0
  1172. package/toast/index.jsx +256 -0
  1173. package/toast/intl.d.ts +2 -0
  1174. package/toast/intl.js +36 -0
  1175. package/toggle-button/behaviour.d.ts +15 -0
  1176. package/toggle-button/behaviour.js +37 -0
  1177. package/toggle-button/index.d.ts +59 -0
  1178. package/toggle-button/index.jsx +206 -0
  1179. package/toggle-button-group/behaviour.d.ts +19 -0
  1180. package/toggle-button-group/behaviour.jsx +13 -0
  1181. package/toggle-button-group/context.d.ts +7 -0
  1182. package/toggle-button-group/context.js +9 -0
  1183. package/toggle-button-group/index.d.ts +39 -0
  1184. package/toggle-button-group/index.jsx +85 -0
  1185. package/toggle-button-group/item.d.ts +30 -0
  1186. package/toggle-button-group/item.jsx +37 -0
  1187. package/toolbar/behaviour.d.ts +22 -0
  1188. package/toolbar/behaviour.js +89 -0
  1189. package/toolbar/index.d.ts +16 -0
  1190. package/toolbar/index.jsx +67 -0
  1191. package/tooltip/behaviour.d.ts +93 -0
  1192. package/tooltip/behaviour.jsx +299 -0
  1193. package/tooltip/index.d.ts +59 -0
  1194. package/tooltip/index.jsx +193 -0
  1195. package/tree/behaviour.d.ts +51 -0
  1196. package/tree/behaviour.jsx +51 -0
  1197. package/tree/cdk-index.d.ts +2 -0
  1198. package/tree/cdk-index.js +6 -0
  1199. package/tree/collection.d.ts +16 -0
  1200. package/tree/collection.js +138 -0
  1201. package/tree/control.d.ts +125 -0
  1202. package/tree/control.js +166 -0
  1203. package/tree/index.d.ts +154 -0
  1204. package/tree/index.jsx +837 -0
  1205. package/tree/intl.d.ts +2 -0
  1206. package/tree/intl.js +36 -0
  1207. package/tree/navigation-context.d.ts +44 -0
  1208. package/tree/navigation-context.jsx +63 -0
  1209. package/tree/tree-key-manager.d.ts +149 -0
  1210. package/tree/tree-key-manager.js +336 -0
  1211. package/utils/animation.d.ts +32 -0
  1212. package/utils/animation.jsx +236 -0
  1213. package/utils/data-attrs.d.ts +73 -0
  1214. package/utils/data-attrs.jsx +217 -0
  1215. package/utils/dev-off.d.ts +3 -0
  1216. package/utils/dev-off.js +7 -0
  1217. package/utils/dev-on.d.ts +3 -0
  1218. package/utils/dev-on.js +17 -0
  1219. package/utils/dom-props.d.ts +44 -0
  1220. package/utils/dom-props.js +73 -0
  1221. package/utils/dom.d.ts +85 -0
  1222. package/utils/dom.js +402 -0
  1223. package/utils/id.d.ts +23 -0
  1224. package/utils/id.js +100 -0
  1225. package/utils/index.d.ts +43 -0
  1226. package/utils/index.js +160 -0
  1227. package/utils/link-state.d.ts +6 -0
  1228. package/utils/link-state.js +6 -0
  1229. package/utils/links.d.ts +82 -0
  1230. package/utils/links.jsx +150 -0
  1231. package/utils/live-element.d.ts +8 -0
  1232. package/utils/live-element.jsx +76 -0
  1233. package/utils/live.d.ts +53 -0
  1234. package/utils/live.jsx +169 -0
  1235. package/utils/load-more-sentinel.d.ts +28 -0
  1236. package/utils/load-more-sentinel.jsx +52 -0
  1237. package/utils/motion-token.d.ts +4 -0
  1238. package/utils/motion-token.js +48 -0
  1239. package/utils/render.d.ts +19 -0
  1240. package/utils/render.js +18 -0
  1241. package/utils/transitions.d.ts +15 -0
  1242. package/utils/transitions.js +104 -0
  1243. package/utils/types.d.ts +111 -0
  1244. package/utils/types.js +1 -0
  1245. package/virtualizer/behaviour.d.ts +129 -0
  1246. package/virtualizer/behaviour.js +437 -0
  1247. package/virtualizer/collection-renderer.d.ts +62 -0
  1248. package/virtualizer/collection-renderer.jsx +190 -0
  1249. package/virtualizer/collection.d.ts +103 -0
  1250. package/virtualizer/collection.js +155 -0
  1251. package/virtualizer/dom.d.ts +50 -0
  1252. package/virtualizer/dom.js +233 -0
  1253. package/virtualizer/engine.d.ts +21 -0
  1254. package/virtualizer/engine.js +21 -0
  1255. package/virtualizer/grid-layout.d.ts +50 -0
  1256. package/virtualizer/grid-layout.js +247 -0
  1257. package/virtualizer/index.d.ts +3 -0
  1258. package/virtualizer/index.jsx +5 -0
  1259. package/virtualizer/layout-info.d.ts +33 -0
  1260. package/virtualizer/layout-info.js +54 -0
  1261. package/virtualizer/layout.d.ts +44 -0
  1262. package/virtualizer/layout.js +30 -0
  1263. package/virtualizer/list-layout.d.ts +103 -0
  1264. package/virtualizer/list-layout.js +510 -0
  1265. package/virtualizer/overscan-manager.d.ts +9 -0
  1266. package/virtualizer/overscan-manager.js +32 -0
  1267. package/virtualizer/point.d.ts +13 -0
  1268. package/virtualizer/point.js +23 -0
  1269. package/virtualizer/rect.d.ts +49 -0
  1270. package/virtualizer/rect.js +105 -0
  1271. package/virtualizer/reusable-view.d.ts +29 -0
  1272. package/virtualizer/reusable-view.js +56 -0
  1273. package/virtualizer/scroll-anchor.d.ts +62 -0
  1274. package/virtualizer/scroll-anchor.js +130 -0
  1275. package/virtualizer/size.d.ts +11 -0
  1276. package/virtualizer/size.js +21 -0
  1277. package/virtualizer/state.d.ts +35 -0
  1278. package/virtualizer/state.js +89 -0
  1279. package/virtualizer/table-collection.d.ts +45 -0
  1280. package/virtualizer/table-collection.js +80 -0
  1281. package/virtualizer/table-column-layout.d.ts +44 -0
  1282. package/virtualizer/table-column-layout.js +210 -0
  1283. package/virtualizer/table-layout.d.ts +55 -0
  1284. package/virtualizer/table-layout.js +482 -0
  1285. package/virtualizer/types.d.ts +63 -0
  1286. package/virtualizer/types.js +1 -0
  1287. package/virtualizer/utils.d.ts +2 -0
  1288. package/virtualizer/utils.js +12 -0
  1289. package/virtualizer/virtualizer-core.d.ts +61 -0
  1290. package/virtualizer/virtualizer-core.js +304 -0
  1291. package/virtualizer/virtualizer.d.ts +64 -0
  1292. package/virtualizer/virtualizer.jsx +91 -0
  1293. package/virtualizer/waterfall-layout.d.ts +41 -0
  1294. package/virtualizer/waterfall-layout.js +227 -0
  1295. package/wheel-picker/behaviour.d.ts +94 -0
  1296. package/wheel-picker/behaviour.js +482 -0
  1297. package/wheel-picker/index.d.ts +33 -0
  1298. package/wheel-picker/index.jsx +66 -0
@@ -0,0 +1,243 @@
1
+ // Ported from @malva-ui/scheduler (src/lib/layout/scheduler-focus.ts `findEventElement` / `findCellElement`), MIT,
2
+ // © 2026 Malva UI.
3
+ // Rivet: the DOM lookups of the delegated keyboard / focus handlers (`keys*.ts`). Attribute names carry the
4
+ // `data-rv-` prefix (`data-rv-event-id`, `data-rv-day-index`, `data-rv-minutes`). No JSX, no import-time DOM work.
5
+ // Month `+N more` toggle / close / focus: port of src/lib/month/scheduler-month.ts `_openMore` / `onClose` (T3).
6
+ // `schedulerPress` (T6): the delegated press of the views (no malva counterpart: malva binds SortableJS per list and
7
+ // `attachPointerDrag` per handle at render); loads the drag chunk (`drag.ts`) on the first press of a chip / handle.
8
+ import { untrack } from "@rivetjs/reactivity";
9
+ import { DEV } from "#dev";
10
+ import { schedulerSelectable } from "./selection.js";
11
+ /** Chip attribute holding the event id. */
12
+ export const EVENT_ID_ATTR = "data-rv-event-id";
13
+ /** Cell / column attribute holding the visible-day index. */
14
+ export const DAY_INDEX_ATTR = "data-rv-day-index";
15
+ /** Cell attribute: `"all-day"` (month cell, all-day cell) or the slot's minutes of day. */
16
+ export const MINUTES_ATTR = "data-rv-minutes";
17
+ /**
18
+ * The chip element rendering `id`, or `null`. Attribute comparison, so ids need no escaping.
19
+ *
20
+ * A multi-day event renders one chip per day and every one of them carries the same event id, so `dayIndex` picks the
21
+ * segment: the chip whose owning cell or column declares that day index. It is a preference, not a filter — an index
22
+ * no chip claims any more (the segment was resized away, or the change scrolled the range) falls back to the first
23
+ * chip of `id`.
24
+ */
25
+ export function findEventElement(root, id, dayIndex) {
26
+ let first = null;
27
+ for (const element of Array.from(root.querySelectorAll("[" + EVENT_ID_ATTR + "]"))) {
28
+ if (element.getAttribute(EVENT_ID_ATTR) !== id)
29
+ continue;
30
+ if (dayIndex === undefined)
31
+ return element;
32
+ first ??= element;
33
+ const owner = element.closest("[" + DAY_INDEX_ATTR + "]");
34
+ if (owner && Number(owner.getAttribute(DAY_INDEX_ATTR)) === dayIndex)
35
+ return element;
36
+ }
37
+ return first;
38
+ }
39
+ /**
40
+ * The focusable cell for a day (`minutes === null`: a month cell or all-day cell, `data-rv-minutes="all-day"`) or a
41
+ * time slot (`data-rv-minutes="<n>"`).
42
+ */
43
+ export function findCellElement(root, dayIndex, minutes) {
44
+ const minutesAttr = minutes === null ? "all-day" : String(minutes);
45
+ return root.querySelector("[" + DAY_INDEX_ATTR + '="' + dayIndex + '"][' + MINUTES_ATTR + '="' + minutesAttr + '"]');
46
+ }
47
+ /** The scheduler root owning `element` (a chip in the `+N more` panel lives in a portal: found through its trigger). */
48
+ export function schedulerRootOf(element) {
49
+ const root = element.closest("[data-rv-scheduler]");
50
+ if (root)
51
+ return root;
52
+ const panel = element.closest("[role=group][id]");
53
+ return panel ? (panel.ownerDocument.querySelector(`[aria-controls="${panel.id}"]`)?.closest("[data-rv-scheduler]") ?? null) : null;
54
+ }
55
+ /** The `+N more` button of a day, or `null` when the day does not overflow. */
56
+ export function moreButtonOf(root, dayIndex) {
57
+ return root.querySelector("[" + DAY_INDEX_ATTR + '="' + dayIndex + '"] [data-rv-more]');
58
+ }
59
+ function dayIndexOfElement(element) {
60
+ const owner = element?.closest("[" + DAY_INDEX_ATTR + "]");
61
+ return owner ? Number(owner.getAttribute(DAY_INDEX_ATTR)) : null;
62
+ }
63
+ /** Focuses the first chip of the open panel once it rendered (the overlay mounts on the next flush). */
64
+ function focusPanel(popoverId, attempts = 4) {
65
+ const panel = typeof document === "undefined" ? null : document.getElementById(popoverId);
66
+ const chip = panel?.querySelector("[" + EVENT_ID_ATTR + "]:not([data-ghost])") ?? panel;
67
+ if (chip)
68
+ chip.focus({ preventScroll: true });
69
+ else if (attempts > 0)
70
+ requestAnimationFrame(() => focusPanel(popoverId, attempts - 1));
71
+ }
72
+ /**
73
+ * `+N more` press (malva `_openMore`): toggles its own panel (a second press closes it, focus back on the button, no
74
+ * `onMoreAction`), else opens the panel for its day, emits `onMoreAction({ date, events: hidden })` and moves focus to
75
+ * the panel's first chip.
76
+ */
77
+ export function monthMoreClick(event, ctx) {
78
+ const trigger = event.target?.closest("[data-rv-more]");
79
+ if (!trigger)
80
+ return;
81
+ event.stopPropagation();
82
+ const dayIndex = dayIndexOfElement(trigger);
83
+ if (dayIndex === null)
84
+ return;
85
+ const state = ctx.state;
86
+ if (untrack(state.popoverDay) === dayIndex) {
87
+ state.popoverDay.set(null);
88
+ trigger.focus();
89
+ return;
90
+ }
91
+ const cell = ctx.cell(dayIndex);
92
+ if (!cell)
93
+ return;
94
+ ctx.onMoreAction({ date: ctx.moreDate(cell.day), events: cell.hidden });
95
+ state.popoverDay.set(dayIndex);
96
+ requestAnimationFrame(() => focusPanel(ctx.popoverId));
97
+ }
98
+ /**
99
+ * Panel dismissed (Escape, outside press): closes it; focus that fell to `<body>` with the panel (or sat inside it)
100
+ * returns to the button — a close while focus sits elsewhere (the user pressed another cell) leaves it there.
101
+ */
102
+ export function closeMorePanel(ctx, root) {
103
+ const state = ctx.state;
104
+ const dayIndex = untrack(state.popoverDay);
105
+ if (dayIndex === null)
106
+ return;
107
+ const panel = typeof document === "undefined" ? null : document.getElementById(ctx.popoverId);
108
+ const doc = root?.ownerDocument;
109
+ const active = doc?.activeElement ?? null;
110
+ const held = !active || active === doc?.body || (!!panel && panel.contains(active));
111
+ const trigger = root ? moreButtonOf(root, dayIndex) : null;
112
+ state.popoverDay.set(null);
113
+ if (!held || !trigger)
114
+ return;
115
+ requestAnimationFrame(() => {
116
+ const now = trigger.ownerDocument.activeElement;
117
+ if (!now || now === trigger.ownerDocument.body || (panel && panel.contains(now)))
118
+ trigger.focus();
119
+ });
120
+ }
121
+ /** Roving tab stop follows focus onto a cell. */
122
+ export function monthFocusIn(event, ctx) {
123
+ const target = event.target;
124
+ if (!target || target.getAttribute("role") !== "gridcell")
125
+ return;
126
+ const dayIndex = dayIndexOfElement(target);
127
+ const cell = dayIndex === null ? null : ctx.cell(dayIndex);
128
+ if (cell)
129
+ ctx.focusDay.set(cell.day);
130
+ }
131
+ /** Roving tab stop follows focus onto a slot or an all-day cell (malva `_onCellFocus`). */
132
+ export function timeGridFocusIn(event, days, focus) {
133
+ const target = event.target;
134
+ const role = target?.getAttribute("role");
135
+ if (!target || (role !== "option" && role !== "gridcell"))
136
+ return;
137
+ const dayIndex = Number(target.getAttribute(DAY_INDEX_ATTR));
138
+ const raw = target.getAttribute(MINUTES_ATTR);
139
+ const day = days[dayIndex];
140
+ if (day === undefined || raw === null)
141
+ return;
142
+ focus.set({ day, minutes: raw === "all-day" ? null : Number(raw) });
143
+ }
144
+ // ─── Chip drag / resize (delegated on the month grid, the `+N more` panel and the time-grid sheet) ──
145
+ /** Resize handle of a chip (`data-edge="start" | "end"`). */
146
+ const HANDLE = ".rv-SchedulerEvent-resize-handle";
147
+ const MOUSE_AFTER_TOUCH = 800;
148
+ let lastTouch = -Infinity;
149
+ /**
150
+ * Press on a view (`mousedown` / `touchstart` move a chip, `pointerdown` on a resize handle resizes it): finds the
151
+ * draggable chip (never a ghost, never `data-draggable="false"`), records whether the press ends before the lazily
152
+ * imported drag chunk (`drag.ts`) arrives, then hands the press over. Emulated mouse events after a touch are ignored
153
+ * (cdk drag-drop rule). Nothing is loaded for presses on cells, handles of read-only chips or secondary buttons.
154
+ */
155
+ export function schedulerPress(event, state) {
156
+ const target = event.target;
157
+ if (!target || event.button > 0)
158
+ return;
159
+ const type = event.type;
160
+ const handle = target.closest(HANDLE);
161
+ if (type === "touchstart")
162
+ lastTouch = Date.now();
163
+ if (type === "pointerdown") {
164
+ if (!handle)
165
+ return pressCell(event, state, target);
166
+ }
167
+ else if (handle || (type === "mousedown" && Date.now() - lastTouch < MOUSE_AFTER_TOUCH))
168
+ return;
169
+ const chip = target.closest("[" + EVENT_ID_ATTR + "]");
170
+ if (!chip || chip.hasAttribute("data-ghost") || (!handle && chip.getAttribute("data-draggable") === "false"))
171
+ return;
172
+ if (handle)
173
+ event.stopPropagation();
174
+ const doc = chip.ownerDocument;
175
+ const at = Date.now();
176
+ let released = false;
177
+ const ends = handle ? ["pointerup", "pointercancel"] : ["mouseup", "touchend", "touchcancel"];
178
+ const onEnd = () => (released = true);
179
+ for (const name of ends)
180
+ doc.addEventListener(name, onEnd, true);
181
+ const release = () => {
182
+ for (const name of ends)
183
+ doc.removeEventListener(name, onEnd, true);
184
+ };
185
+ import("./drag.js")
186
+ .then((drag) => {
187
+ release();
188
+ if (handle)
189
+ drag.startChipResize(state, event, handle, released);
190
+ else
191
+ drag.startChipMove(state, event, chip, released, Date.now() - at);
192
+ })
193
+ .catch(chunkFailed(release));
194
+ }
195
+ /**
196
+ * Press on a cell (malva `_onGridPointerDown` / `_onSheetPointerDown`): a press outside a pending selection abandons
197
+ * it (a later `Enter` must act on what was pressed), then — when range selection is on — the range-select chunk
198
+ * (`select.ts`) takes the press. Presses on chips, buttons (`+N more`) or outside a cell start nothing.
199
+ */
200
+ function pressCell(event, state, target) {
201
+ const cell = target.closest("[" + DAY_INDEX_ATTR + "][" + MINUTES_ATTR + "]");
202
+ const raw = cell?.getAttribute(MINUTES_ATTR);
203
+ const pos = cell ? { dayIndex: Number(cell.getAttribute(DAY_INDEX_ATTR)), minutes: raw === "all-day" ? null : Number(raw) } : null;
204
+ // The views paint selected cells `data-selected` (`selection.ts` `isCellSelected`): no state / layout code here.
205
+ if (untrack(state.selection) && !cell?.hasAttribute("data-selected"))
206
+ state.selection.set(null);
207
+ if (!pos || target.closest("[" + EVENT_ID_ATTR + "], button") || !untrack(() => schedulerSelectable(state)))
208
+ return;
209
+ const surface = event.currentTarget;
210
+ if (!surface)
211
+ return;
212
+ const doc = surface.ownerDocument;
213
+ let released = false;
214
+ const onEnd = () => (released = true);
215
+ for (const name of ["pointerup", "pointercancel"])
216
+ doc.addEventListener(name, onEnd, true);
217
+ const release = () => {
218
+ for (const name of ["pointerup", "pointercancel"])
219
+ doc.removeEventListener(name, onEnd, true);
220
+ };
221
+ import("./select.js")
222
+ .then((select) => {
223
+ release();
224
+ select.startRangeSelect(state, event, surface, pos, released);
225
+ })
226
+ .catch(chunkFailed(release));
227
+ }
228
+ /** Hit-area `DropList` `onDropped` (external drop, T7): hands the drop to the drag chunk. */
229
+ export function schedulerExternalDrop(drop, state) {
230
+ import("./drag.js").then((drag) => drag.externalDrop(state, drop)).catch(chunkFailed());
231
+ }
232
+ /**
233
+ * Rejection path of a lazy gesture chunk (network error, stale deploy) or of the gesture start it runs: drops the
234
+ * press listeners added for it (idempotent) and reports the failure in development (no unhandled rejection; the press
235
+ * simply starts nothing).
236
+ */
237
+ function chunkFailed(release) {
238
+ return (error) => {
239
+ release?.();
240
+ if (DEV)
241
+ console.error("[rivet:cdk] scheduler: a gesture chunk failed to load or start; the press starts nothing.", error);
242
+ };
243
+ }
@@ -0,0 +1,100 @@
1
+ import type { Content } from "@rivetjs/runtime/jsx-runtime";
2
+ import type { SchedulerEvent, SchedulerEventInteraction, SchedulerLayoutRange, SchedulerMoreEvent, SchedulerNormalizedEvent, SchedulerSlotEvent, SchedulerView } from "./layout.js";
3
+ import type { SchedulerMessageKey } from "./intl.js";
4
+ import type { SchedulerDate } from "./dates.js";
5
+ import type { SchedulerState } from "./state.js";
6
+ /** State handed to `renderEvent` (accessor-free snapshot of the chip; the render function re-runs on change). */
7
+ export interface SchedulerEventRenderState {
8
+ /** The view the chip renders in. */
9
+ readonly view: SchedulerView;
10
+ /** Rendered in a lane (month grid, all-day band, `+N more` panel) instead of on the time axis. */
11
+ readonly allDay: boolean;
12
+ /** The event started before this segment. */
13
+ readonly continuesBefore: boolean;
14
+ /** The event ends after this segment. */
15
+ readonly continuesAfter: boolean;
16
+ /** The drag-preview copy of an event being dragged. */
17
+ readonly isGhost: boolean;
18
+ /** Formatted time of the chip (`"9:00 AM"` in a lane, `"9:00 AM – 9:30 AM"` on the time axis; empty all-day). */
19
+ readonly time: string;
20
+ }
21
+ /** `renderEvent` (read once at mount): chip content. */
22
+ export type SchedulerRenderEvent<T = unknown> = (event: SchedulerEvent<T>, state: SchedulerEventRenderState) => Content;
23
+ /** The time axis of the time grid in minutes of day (`last` = start of the last RENDERED slot row). */
24
+ export interface SchedulerAxis {
25
+ readonly min: number;
26
+ readonly max: number;
27
+ readonly slot: number;
28
+ readonly snap: number;
29
+ readonly last: number;
30
+ }
31
+ /** Interaction kinds shared by chips and cells (malva `MlvSchedulerInteractionKind`). */
32
+ export type SchedulerInteractionKind = "click" | "dblclick" | "contextmenu";
33
+ /** Where a slot interaction happened: day number, slot minutes (`null` = the day), painted by a pending selection. */
34
+ export interface SchedulerSlotPosition {
35
+ readonly day: number;
36
+ readonly minutes: number | null;
37
+ readonly inSelection: boolean;
38
+ }
39
+ /** Root → views contract. */
40
+ export interface SchedulerContextValue<T = unknown> {
41
+ readonly state: SchedulerState<T>;
42
+ readonly view: () => SchedulerView;
43
+ readonly locale: () => string;
44
+ readonly timeZone: () => string;
45
+ /** Rendered day numbers (after `hiddenDays`). */
46
+ readonly days: () => readonly number[];
47
+ /** Visible days per month week row. */
48
+ readonly rowLength: () => number;
49
+ /** Day number of the anchor date. */
50
+ readonly anchorDay: () => number;
51
+ /** Today's day number, `null` while `showCurrentTime` is off (no today highlight). */
52
+ readonly today: () => number | null;
53
+ /** Weekend weekdays (0 = Sunday). */
54
+ readonly weekend: () => readonly number[];
55
+ /** Normalized events plus the drag ghost. */
56
+ readonly events: () => readonly SchedulerNormalizedEvent<T>[];
57
+ readonly visibleLanes: () => number;
58
+ readonly editable: () => boolean;
59
+ readonly selectable: () => boolean;
60
+ readonly showWeekNumbers: () => boolean;
61
+ /** A day as a date in the anchor's form (all-day: date-only for strings / `CalendarDate`). */
62
+ readonly dateOf: (day: number) => SchedulerDate;
63
+ /** Translated message (resolved table, plural selection). */
64
+ readonly t: (key: SchedulerMessageKey | "moreEvents" | "moreEventsLabel", vars?: Record<string, string | number | boolean>) => string;
65
+ /** Id of the visually hidden drag hint (chips' `aria-describedby`). */
66
+ readonly dragHintId: string;
67
+ /** Id of the `+N more` panel. */
68
+ readonly popoverId: string;
69
+ readonly renderEvent: SchedulerRenderEvent<T> | undefined;
70
+ /** The normalized (non-ghost) event of `id`, `null` once it left the model. */
71
+ readonly normalized: (id: string) => SchedulerNormalizedEvent<T> | null;
72
+ /** `commitChange` from the keyboard; returns whether it was applied. */
73
+ readonly commit: (kind: "move" | "resize", normalized: SchedulerNormalizedEvent<T>, next: SchedulerLayoutRange) => boolean;
74
+ /** Navigates to the period containing `day` (`schedulerGoTo`, the anchor's form). */
75
+ readonly goTo: (day: number) => void;
76
+ /** The nearest rendered weekday from `day` in `direction` (malva `nextVisibleDate`). */
77
+ readonly stepDay: (day: number, direction: -1 | 1) => number;
78
+ /** One month from `day` (same day of month, clamped), skipped on to a rendered weekday (malva `_page`). */
79
+ readonly pageMonth: (day: number, direction: -1 | 1) => number;
80
+ /** A slot's date (`minutes` `null` = the day, all-day) in the anchor's form; 24:00 rolls over to the next day. */
81
+ readonly slotDate: (day: number, minutes: number | null) => SchedulerDate;
82
+ readonly axis: () => SchedulerAxis;
83
+ /** Reads the pending selection back as a `selectionHint` announcement. */
84
+ readonly announceSelection: () => void;
85
+ /** Commits the pending selection (`onRangeSelect`, source keyboard). */
86
+ readonly commitSelection: () => void;
87
+ /** Chip interaction → `onEventAction` / `onEventDoubleClick` / `onEventContextMenu`; a context menu opens `renderEventMenu` first. */
88
+ readonly eventInteraction: (kind: SchedulerInteractionKind, interaction: SchedulerEventInteraction<T>) => void;
89
+ /** `Delete` / `Backspace` on a chip → `onEventDelete`. */
90
+ readonly eventDelete: (interaction: SchedulerEventInteraction<T>) => void;
91
+ /** Cell interaction → `onSlotAction` / `onSlotDoubleClick` / `onSlotContextMenu`; a context menu opens `renderSlotMenu` first. */
92
+ readonly slotInteraction: (kind: SchedulerInteractionKind, slot: SchedulerSlotEvent, at: SchedulerSlotPosition) => void;
93
+ /** `renderEventMenu` is given (a chip right-click / ContextMenu key opens the built-in menu). */
94
+ readonly hasEventMenu: boolean;
95
+ /** `renderSlotMenu` is given. */
96
+ readonly hasSlotMenu: boolean;
97
+ readonly onMoreAction: ((event: SchedulerMoreEvent<T>) => void) | undefined;
98
+ }
99
+ /** The scheduler's root context (resume id `rv-scheduler`). */
100
+ export declare const SchedulerContext: import("@rivetjs/reactivity").Context<SchedulerContextValue<any> | null>;
@@ -0,0 +1,7 @@
1
+ // Ported from @malva-ui/scheduler (src/lib/scheduler/scheduler-context.ts `MLV_SCHEDULER_CONTEXT`), MIT, © 2026 Malva UI.
2
+ // Rivet: the root → views contract as one resumable context (`rv-scheduler`). The root builds every accessor as an
3
+ // inline arrow / `computed` in its own `.tsx` render (resumable); views read them, never the root's props.
4
+ import { createContext } from "@rivetjs/reactivity";
5
+ import { resumableContext } from "@rivetjs/runtime/resume-format";
6
+ /** The scheduler's root context (resume id `rv-scheduler`). */
7
+ export const SchedulerContext = resumableContext(createContext(null, { id: "rv-scheduler" }));
@@ -0,0 +1,53 @@
1
+ import { type DateValue } from "../date/CalendarDate.js";
2
+ import type { DateValueString } from "../date/serialize.js";
3
+ /** A scheduler date input: a `@rivetjs/cdk/date` value or its `DateValueString`. */
4
+ export type SchedulerDate = DateValue | DateValueString;
5
+ /** A point on the layout axis. */
6
+ export interface LayoutTime {
7
+ /** Days since 1970-01-01 (proleptic Gregorian). */
8
+ readonly day: number;
9
+ /** Minutes of day, `0`–`1439`. */
10
+ readonly minute: number;
11
+ }
12
+ /** Day number of a proleptic Gregorian date (`month` 1–12). */
13
+ export declare function dayFromCivil(year: number, month: number, day: number): number;
14
+ /** `[year, month (1–12), day]` of a day number. */
15
+ export declare function civilFromDay(dayNumber: number): [number, number, number];
16
+ /** `day` plus `months` calendar months: same day of month, clamped to the target month's length (malva `addCalendarMonths`). */
17
+ export declare function addCalendarMonths(day: number, months: number): number;
18
+ /** Weekday of a day number, 0 = Sunday … 6 = Saturday. */
19
+ export declare function dayOfWeek(day: number): number;
20
+ /** The day number a wall-minute value falls on. */
21
+ export declare function dayOf(wall: number): number;
22
+ /** Minutes of day of a wall-minute value (`0`–`1439`). */
23
+ export declare function minuteOf(wall: number): number;
24
+ /**
25
+ * Wall minutes (`day * 1440 + minute`) of a date input on the wall clock of `timeZone`, or `null` when the input
26
+ * does not parse. Dates read as midnight; `ZonedDateTime` (instance or string) converts from its own zone into
27
+ * `timeZone`; `CalendarDateTime` is a wall-clock value already (no zone).
28
+ */
29
+ export declare function toWallMinutes(value: SchedulerDate | null | undefined, timeZone?: string): number | null;
30
+ /** `toWallMinutes` split into `{ day, minute }`. */
31
+ export declare function toLayoutTime(value: SchedulerDate | null | undefined, timeZone?: string): LayoutTime | null;
32
+ /**
33
+ * The layout point `day` + `minute` (minutes past 1440 roll into the next days) written back in the form of
34
+ * `like`: a string in → a string out (same shape and `[u-ca=…]` annotation); an instance in → the same class,
35
+ * calendar and zone out. `allDay` (default: `like` is a plain date) picks a date-only result for a date `like`
36
+ * and a timed one otherwise (`CalendarDate` → `CalendarDateTime`); date-time / zoned `like`s keep their class
37
+ * (all-day = midnight). A wall time in a DST gap resolves `"compatible"` (later).
38
+ */
39
+ export declare function fromLayout<V extends SchedulerDate>(day: number, minute: number, like: V, timeZone?: string, allDay?: boolean): V;
40
+ /** Today's day number on the wall clock of `timeZone`. */
41
+ export declare function todayDay(timeZone: string): number;
42
+ /** The current wall minutes in `timeZone`. */
43
+ export declare function nowWall(timeZone: string): number;
44
+ /**
45
+ * Formats a day number (labels: weekday names, day of month, titles). `options` are `Intl.DateTimeFormat` options;
46
+ * the zone is fixed to UTC (day numbers are wall-clock days), the calendar follows the locale (`-u-ca-…`).
47
+ * Formatters are cached per locale + options (`i18n/intl-cache`).
48
+ */
49
+ export declare function formatDay(day: number, locale: string, options: Intl.DateTimeFormatOptions): string;
50
+ /** Formats wall minutes (time labels) like `formatDay`. */
51
+ export declare function formatWall(wall: number, locale: string, options: Intl.DateTimeFormatOptions): string;
52
+ /** Formats a range of day numbers / wall minutes (`formatRange`, e.g. a week title). */
53
+ export declare function formatDayRange(start: number, end: number, locale: string, options: Intl.DateTimeFormatOptions): string;
@@ -0,0 +1,183 @@
1
+ // Rivet-authored date bridge of `@rivetjs/cdk/scheduler` (replaces malva's `MlvDateAdapter<D>` calls in
2
+ // @malva-ui/scheduler `layout/*.ts`, MIT, © 2026 Malva UI — mapping table in `scheduler/CLAUDE.md`).
3
+ // Layout runs on integers only:
4
+ // - `day` = days since 1970-01-01, proleptic Gregorian (`dayFromCivil`), weekday `(day + 4) % 7` (0 = Sunday);
5
+ // - `minute` = minutes of day 0…1440; "wall minutes" = `day * 1440 + minute` (one integer per instant on the
6
+ // wall clock of the scheduler `timeZone`; arithmetic = wall-clock arithmetic, so a 00:00 → 24:00 event covers
7
+ // the whole day on a DST day too).
8
+ // Inputs: `CalendarDate` / `CalendarDateTime` / `ZonedDateTime` (any calendar) or their `DateValueString` form
9
+ // (`@rivetjs/cdk/date` `stringifyDateValue`). A string's ISO body is always proleptic Gregorian (the `[u-ca=…]`
10
+ // annotation only names the calendar it parses back into), so strings are read with one regex and no calendar
11
+ // code. Results are written back by `fromLayout` in the form of a `like` value: string in → string out (same
12
+ // annotation), instance in → same class, calendar and zone out.
13
+ // Deviation: malva's "Invalid Date propagates" → an unparsable value reads as `null` (the event is not placed).
14
+ import { CalendarDate, CalendarDateTime, ZonedDateTime } from "../date/CalendarDate.js";
15
+ import { GregorianCalendar } from "../date/calendars/GregorianCalendar.js";
16
+ import { fromAbsolute, getTimeZoneOffset, toAbsolute, toCalendar } from "../date/conversion.js";
17
+ import { now, today } from "../date/queries.js";
18
+ import { DateFormatter } from "../date/DateFormatter.js";
19
+ import { cachedIntl } from "../i18n/intl-cache.js";
20
+ import { MINUTES_PER_DAY } from "./time.js";
21
+ const DAY_MS = 86_400_000;
22
+ const MINUTE_MS = 60_000;
23
+ let gregorian;
24
+ /** Day number of a proleptic Gregorian date (`month` 1–12). */
25
+ export function dayFromCivil(year, month, day) {
26
+ const y = month <= 2 ? year - 1 : year;
27
+ const era = Math.floor(y / 400);
28
+ const yoe = y - era * 400;
29
+ const doy = Math.floor((153 * (month + (month > 2 ? -3 : 9)) + 2) / 5) + day - 1;
30
+ const doe = yoe * 365 + Math.floor(yoe / 4) - Math.floor(yoe / 100) + doy;
31
+ return era * 146097 + doe - 719468;
32
+ }
33
+ /** `[year, month (1–12), day]` of a day number. */
34
+ export function civilFromDay(dayNumber) {
35
+ const z = dayNumber + 719468;
36
+ const era = Math.floor(z / 146097);
37
+ const doe = z - era * 146097;
38
+ const yoe = Math.floor((doe - Math.floor(doe / 1460) + Math.floor(doe / 36524) - Math.floor(doe / 146096)) / 365);
39
+ const doy = doe - (365 * yoe + Math.floor(yoe / 4) - Math.floor(yoe / 100));
40
+ const mp = Math.floor((5 * doy + 2) / 153);
41
+ const day = doy - Math.floor((153 * mp + 2) / 5) + 1;
42
+ const month = mp < 10 ? mp + 3 : mp - 9;
43
+ return [yoe + era * 400 + (month <= 2 ? 1 : 0), month, day];
44
+ }
45
+ /** `day` plus `months` calendar months: same day of month, clamped to the target month's length (malva `addCalendarMonths`). */
46
+ export function addCalendarMonths(day, months) {
47
+ const [y, m, d] = civilFromDay(day);
48
+ const month0 = m - 1 + months;
49
+ const year = y + Math.floor(month0 / 12);
50
+ const month = ((month0 % 12) + 12) % 12;
51
+ const length = dayFromCivil(month === 11 ? year + 1 : year, month === 11 ? 1 : month + 2, 1) - dayFromCivil(year, month + 1, 1);
52
+ return dayFromCivil(year, month + 1, Math.min(d, length));
53
+ }
54
+ /** Weekday of a day number, 0 = Sunday … 6 = Saturday. */
55
+ export function dayOfWeek(day) {
56
+ return (((day + 4) % 7) + 7) % 7;
57
+ }
58
+ /** The day number a wall-minute value falls on. */
59
+ export function dayOf(wall) {
60
+ return Math.floor(wall / MINUTES_PER_DAY);
61
+ }
62
+ /** Minutes of day of a wall-minute value (`0`–`1439`). */
63
+ export function minuteOf(wall) {
64
+ return wall - dayOf(wall) * MINUTES_PER_DAY;
65
+ }
66
+ const ISO = /^([+-]?\d{4,6})-(\d{2})-(\d{2})(?:T(\d{2}):(\d{2})(?::(\d{2})(?:\.\d+)?)?(?:([+-])(\d{2}):(\d{2})(?::\d{2})?)?(?:\[([^\]=]+)\])?)?/;
67
+ /** Wall minutes of `ms` (epoch) on the wall clock of `timeZone`. */
68
+ function wallOfAbsolute(ms, timeZone) {
69
+ return Math.floor((ms + getTimeZoneOffset(ms, timeZone)) / MINUTE_MS);
70
+ }
71
+ /**
72
+ * Wall minutes (`day * 1440 + minute`) of a date input on the wall clock of `timeZone`, or `null` when the input
73
+ * does not parse. Dates read as midnight; `ZonedDateTime` (instance or string) converts from its own zone into
74
+ * `timeZone`; `CalendarDateTime` is a wall-clock value already (no zone).
75
+ */
76
+ export function toWallMinutes(value, timeZone = "UTC") {
77
+ if (value == null)
78
+ return null;
79
+ if (typeof value === "string") {
80
+ const m = ISO.exec(value);
81
+ if (!m)
82
+ return null;
83
+ const day = dayFromCivil(Number(m[1]), Number(m[2]), Number(m[3]));
84
+ const local = day * MINUTES_PER_DAY + (m[4] ? Number(m[4]) * 60 + Number(m[5]) : 0);
85
+ if (!m[7] || !m[10] || m[10] === timeZone)
86
+ return Number.isFinite(local) ? local : null;
87
+ const offset = (m[7] === "-" ? -1 : 1) * (Number(m[8]) * 60 + Number(m[9]));
88
+ const seconds = m[6] ? Number(m[6]) : 0;
89
+ return wallOfAbsolute((local - offset) * MINUTE_MS + seconds * 1000, timeZone);
90
+ }
91
+ let v = value;
92
+ if (v.calendar.identifier !== "gregory")
93
+ v = toCalendar(v, (gregorian ??= new GregorianCalendar()));
94
+ const year = v.era === "BC" ? 1 - v.year : v.year;
95
+ const local = dayFromCivil(year, v.month, v.day) * MINUTES_PER_DAY + ("hour" in v ? v.hour * 60 + v.minute : 0);
96
+ if (!(v instanceof ZonedDateTime) || v.timeZone === timeZone)
97
+ return local;
98
+ return wallOfAbsolute(local * MINUTE_MS + v.second * 1000 + v.millisecond - v.offset, timeZone);
99
+ }
100
+ /** `toWallMinutes` split into `{ day, minute }`. */
101
+ export function toLayoutTime(value, timeZone = "UTC") {
102
+ const wall = toWallMinutes(value, timeZone);
103
+ return wall === null ? null : { day: dayOf(wall), minute: minuteOf(wall) };
104
+ }
105
+ const pad = (n, width = 2) => String(n).padStart(width, "0");
106
+ function isoYear(year) {
107
+ return year < 0 ? "-" + pad(-year, 6) : year > 9999 ? "+" + pad(year, 6) : pad(year, 4);
108
+ }
109
+ /**
110
+ * The layout point `day` + `minute` (minutes past 1440 roll into the next days) written back in the form of
111
+ * `like`: a string in → a string out (same shape and `[u-ca=…]` annotation); an instance in → the same class,
112
+ * calendar and zone out. `allDay` (default: `like` is a plain date) picks a date-only result for a date `like`
113
+ * and a timed one otherwise (`CalendarDate` → `CalendarDateTime`); date-time / zoned `like`s keep their class
114
+ * (all-day = midnight). A wall time in a DST gap resolves `"compatible"` (later).
115
+ */
116
+ export function fromLayout(day, minute, like, timeZone = "UTC", allDay) {
117
+ const wall = day * MINUTES_PER_DAY + minute;
118
+ const d = dayOf(wall);
119
+ const mins = wall - d * MINUTES_PER_DAY;
120
+ const [year, month, date] = civilFromDay(d);
121
+ const hour = Math.floor(mins / 60);
122
+ const min = mins % 60;
123
+ if (typeof like === "string") {
124
+ const m = ISO.exec(like);
125
+ const annotation = /\[u-ca=[a-z0-9-]+\]$/.exec(like)?.[0] ?? "";
126
+ const isDate = !m?.[4];
127
+ const zone = m?.[10];
128
+ const dateOnly = allDay ?? isDate;
129
+ const body = isoYear(year) + "-" + pad(month) + "-" + pad(date);
130
+ if (zone) {
131
+ const ms = toAbsolute(new CalendarDateTime(year, month, date, hour, min), timeZone);
132
+ const zoned = fromAbsolute(ms, zone);
133
+ return (zoned.toString() + annotation);
134
+ }
135
+ if (isDate && dateOnly)
136
+ return (body + annotation);
137
+ return (body + "T" + pad(hour) + ":" + pad(min) + ":00" + annotation);
138
+ }
139
+ const value = like;
140
+ const isDate = !("hour" in value);
141
+ let out;
142
+ if (value instanceof ZonedDateTime) {
143
+ const ms = toAbsolute(new CalendarDateTime(year, month, date, hour, min), timeZone);
144
+ out = fromAbsolute(ms, value.timeZone);
145
+ }
146
+ else if (isDate && (allDay ?? true)) {
147
+ out = new CalendarDate(year, month, date);
148
+ }
149
+ else {
150
+ out = new CalendarDateTime(year, month, date, hour, min);
151
+ }
152
+ if (value.calendar.identifier !== "gregory")
153
+ out = toCalendar(out, value.calendar);
154
+ return out;
155
+ }
156
+ /** Today's day number on the wall clock of `timeZone`. */
157
+ export function todayDay(timeZone) {
158
+ const t = today(timeZone);
159
+ return dayFromCivil(t.year, t.month, t.day);
160
+ }
161
+ /** The current wall minutes in `timeZone`. */
162
+ export function nowWall(timeZone) {
163
+ const n = now(timeZone);
164
+ return dayFromCivil(n.year, n.month, n.day) * MINUTES_PER_DAY + n.hour * 60 + n.minute;
165
+ }
166
+ const Formatter = DateFormatter;
167
+ const formatter = (locale, options) => cachedIntl(Formatter, locale, { ...options, timeZone: "UTC" });
168
+ /**
169
+ * Formats a day number (labels: weekday names, day of month, titles). `options` are `Intl.DateTimeFormat` options;
170
+ * the zone is fixed to UTC (day numbers are wall-clock days), the calendar follows the locale (`-u-ca-…`).
171
+ * Formatters are cached per locale + options (`i18n/intl-cache`).
172
+ */
173
+ export function formatDay(day, locale, options) {
174
+ return formatter(locale, options).format(new Date(day * DAY_MS));
175
+ }
176
+ /** Formats wall minutes (time labels) like `formatDay`. */
177
+ export function formatWall(wall, locale, options) {
178
+ return formatter(locale, options).format(new Date(wall * MINUTE_MS));
179
+ }
180
+ /** Formats a range of day numbers / wall minutes (`formatRange`, e.g. a week title). */
181
+ export function formatDayRange(start, end, locale, options) {
182
+ return formatter(locale, options).formatRange(new Date(start * DAY_MS), new Date(end * DAY_MS));
183
+ }
@@ -0,0 +1,20 @@
1
+ import { type SchedulerDropTarget } from "./layout.js";
2
+ import type { DragDrop } from "../drag-drop/drag-events.js";
3
+ import { type SchedulerPointerPosition } from "./pointer.js";
4
+ import { type SchedulerState } from "./state.js";
5
+ /** malva `resolveTarget`: the drop target under `pointer` inside `root`, `null` outside every list. */
6
+ export declare function resolveDropTarget(state: SchedulerState<any>, root: HTMLElement, pointer: SchedulerPointerPosition, top: number | null, grabDayOffset: number): SchedulerDropTarget | null;
7
+ /**
8
+ * Drag-moves `chip` from the press that loaded this chunk (`age` = ms since the press: the touch delay keeps its
9
+ * original timing). `released` = the press ended while the chunk loaded (a click: nothing starts).
10
+ */
11
+ export declare function startChipMove<T>(state: SchedulerState<T>, press: MouseEvent | TouchEvent, chip: HTMLElement, released: boolean, age: number): void;
12
+ /** Resizes the chip of `handle` from the press that loaded this chunk (malva `_attachResize`). */
13
+ export declare function startChipResize<T>(state: SchedulerState<T>, press: PointerEvent, handle: HTMLElement, released: boolean): void;
14
+ /**
15
+ * A cdk drag-drop item from a connected list landed on the scheduler's hit-area `DropList` (malva `externalDrop`):
16
+ * the cell under the drop point (time column: the pointer's slot) → `onExternalDrop({ item, start, end, allDay })`
17
+ * with `end = start + defaultEventDuration` (timed) or the next midnight (month cell / all-day row). Nothing is
18
+ * written; the item returns to its own list (the scheduler list never sorts).
19
+ */
20
+ export declare function externalDrop<T>(state: SchedulerState<T>, drop: DragDrop<any, any, any>): void;