@sprawlify/primitives 0.0.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 (378) hide show
  1. package/dist/anatomy.cjs +3 -0
  2. package/dist/anatomy.d.cts +2 -0
  3. package/dist/anatomy.d.mts +2 -0
  4. package/dist/anatomy.mjs +3 -0
  5. package/dist/aria-hidden-DqYx0f_y.mjs +177 -0
  6. package/dist/aria-hidden-DtLU6hSU.cjs +182 -0
  7. package/dist/aria-hidden.cjs +4 -0
  8. package/dist/aria-hidden.d.cts +16 -0
  9. package/dist/aria-hidden.d.mts +16 -0
  10. package/dist/aria-hidden.mjs +4 -0
  11. package/dist/auto-resize-D3qHtFy1.mjs +114 -0
  12. package/dist/auto-resize-xzlPFDyD.cjs +125 -0
  13. package/dist/auto-resize.cjs +5 -0
  14. package/dist/auto-resize.d.cts +17 -0
  15. package/dist/auto-resize.d.mts +17 -0
  16. package/dist/auto-resize.mjs +4 -0
  17. package/dist/chunk-CbDLau6x.cjs +34 -0
  18. package/dist/collection-8XqaNHs_.mjs +1279 -0
  19. package/dist/collection-DIoIDISa.cjs +1326 -0
  20. package/dist/collection.cjs +11 -0
  21. package/dist/collection.d.cts +5 -0
  22. package/dist/collection.d.mts +5 -0
  23. package/dist/collection.mjs +4 -0
  24. package/dist/color-BkAP1Tkd.d.mts +60 -0
  25. package/dist/color-VKewNv2e.d.cts +60 -0
  26. package/dist/color-utils-Cc5GVXZh.mjs +657 -0
  27. package/dist/color-utils-LER_6Zwu.cjs +680 -0
  28. package/dist/color-utils.cjs +7 -0
  29. package/dist/color-utils.d.cts +19 -0
  30. package/dist/color-utils.d.mts +19 -0
  31. package/dist/color-utils.mjs +4 -0
  32. package/dist/core-30pJjyC2.d.mts +49 -0
  33. package/dist/core-CQFbMdTl.cjs +176 -0
  34. package/dist/core-CefBjbst.d.cts +49 -0
  35. package/dist/core-DCFNMTZF.mjs +129 -0
  36. package/dist/core.cjs +12 -0
  37. package/dist/core.d.cts +3 -0
  38. package/dist/core.d.mts +3 -0
  39. package/dist/core.mjs +5 -0
  40. package/dist/create-anatomy-B3XYc-qG.d.mts +70 -0
  41. package/dist/create-anatomy-BGQ8pv8J.d.cts +70 -0
  42. package/dist/create-anatomy-BbDZbHpC.mjs +39 -0
  43. package/dist/create-anatomy-CDsIFUXg.cjs +45 -0
  44. package/dist/create-props-BnF_vl-E.mjs +5 -0
  45. package/dist/create-props-YKy7JIKj.cjs +11 -0
  46. package/dist/data-url-C3ITPVRX.d.cts +10 -0
  47. package/dist/data-url-DLwZ9M77.d.mts +10 -0
  48. package/dist/date-utils-D2xPHa_I.cjs +738 -0
  49. package/dist/date-utils-wEa1hhpc.mjs +474 -0
  50. package/dist/date-utils.cjs +46 -0
  51. package/dist/date-utils.d.cts +101 -0
  52. package/dist/date-utils.d.mts +2 -0
  53. package/dist/date-utils.mjs +3 -0
  54. package/dist/defineProperty-BoUOT9Ie.cjs +49 -0
  55. package/dist/defineProperty-DrXfyjd4.mjs +43 -0
  56. package/dist/dismissable-CTfKZ4OG.cjs +282 -0
  57. package/dist/dismissable-DDrx0xnH.mjs +271 -0
  58. package/dist/dismissable-layer-C7pZU2wi.d.cts +39 -0
  59. package/dist/dismissable-layer-t_b0fk-p.d.mts +39 -0
  60. package/dist/dismissable.cjs +7 -0
  61. package/dist/dismissable.d.cts +3 -0
  62. package/dist/dismissable.d.mts +3 -0
  63. package/dist/dismissable.mjs +6 -0
  64. package/dist/dom-query-CWZdWUGp.cjs +2141 -0
  65. package/dist/dom-query-DFCRhyj1.mjs +1374 -0
  66. package/dist/dom-query.cjs +130 -0
  67. package/dist/dom-query.d.cts +307 -0
  68. package/dist/dom-query.d.mts +307 -0
  69. package/dist/dom-query.mjs +3 -0
  70. package/dist/file-utils.cjs +220 -0
  71. package/dist/file-utils.d.cts +51 -0
  72. package/dist/file-utils.d.mts +51 -0
  73. package/dist/file-utils.mjs +210 -0
  74. package/dist/focus-trap-D-bypQEJ.mjs +485 -0
  75. package/dist/focus-trap-D4i52S9A.cjs +496 -0
  76. package/dist/focus-trap.cjs +5 -0
  77. package/dist/focus-trap.d.cts +88 -0
  78. package/dist/focus-trap.d.mts +88 -0
  79. package/dist/focus-trap.mjs +4 -0
  80. package/dist/focus-visible-DYTWdWpa.cjs +210 -0
  81. package/dist/focus-visible-irppYatv.mjs +175 -0
  82. package/dist/focus-visible.cjs +9 -0
  83. package/dist/focus-visible.d.cts +31 -0
  84. package/dist/focus-visible.d.mts +31 -0
  85. package/dist/focus-visible.mjs +4 -0
  86. package/dist/functions-BOkTDEFM.d.cts +15 -0
  87. package/dist/functions-IZtWcC8Q.d.mts +15 -0
  88. package/dist/highlight-word.cjs +100 -0
  89. package/dist/highlight-word.d.cts +24 -0
  90. package/dist/highlight-word.d.mts +24 -0
  91. package/dist/highlight-word.mjs +99 -0
  92. package/dist/hotkeys.cjs +758 -0
  93. package/dist/hotkeys.d.cts +130 -0
  94. package/dist/hotkeys.d.mts +130 -0
  95. package/dist/hotkeys.mjs +754 -0
  96. package/dist/i18n-utils.cjs +450 -0
  97. package/dist/i18n-utils.d.cts +61 -0
  98. package/dist/i18n-utils.d.mts +61 -0
  99. package/dist/i18n-utils.mjs +440 -0
  100. package/dist/index-BkzYij2j.d.mts +25 -0
  101. package/dist/index-Bqw3r34-.d.cts +1383 -0
  102. package/dist/index-C0MKXQmE.d.mts +1383 -0
  103. package/dist/index-C9-feK5c.d.cts +25 -0
  104. package/dist/index-CD5FN7kY.d.mts +114 -0
  105. package/dist/index-CJji6wHl.d.cts +15 -0
  106. package/dist/index-CNi5FkPe.d.mts +15 -0
  107. package/dist/index-D96rs8B0.d.mts +115 -0
  108. package/dist/index.cjs +0 -0
  109. package/dist/index.d.cts +1 -0
  110. package/dist/index.d.mts +1 -0
  111. package/dist/index.mjs +1 -0
  112. package/dist/interact-outside-BplxR9cR.mjs +200 -0
  113. package/dist/interact-outside-C8-oFBpB.cjs +205 -0
  114. package/dist/interact-outside.cjs +5 -0
  115. package/dist/interact-outside.d.cts +2 -0
  116. package/dist/interact-outside.d.mts +2 -0
  117. package/dist/interact-outside.mjs +5 -0
  118. package/dist/json-tree-utils.cjs +1512 -0
  119. package/dist/json-tree-utils.d.cts +117 -0
  120. package/dist/json-tree-utils.d.mts +117 -0
  121. package/dist/json-tree-utils.mjs +1463 -0
  122. package/dist/list-collection-BIMJGQjn.d.cts +61 -0
  123. package/dist/list-collection-Db3eixRU.d.mts +61 -0
  124. package/dist/live-region-CcZPGo89.cjs +52 -0
  125. package/dist/live-region-CnPh21WH.mjs +46 -0
  126. package/dist/live-region.cjs +3 -0
  127. package/dist/live-region.d.cts +2 -0
  128. package/dist/live-region.d.mts +2 -0
  129. package/dist/live-region.mjs +3 -0
  130. package/dist/machines/accordion/index.cjs +328 -0
  131. package/dist/machines/accordion/index.d.cts +83 -0
  132. package/dist/machines/accordion/index.d.mts +83 -0
  133. package/dist/machines/accordion/index.mjs +322 -0
  134. package/dist/machines/async-list/index.cjs +311 -0
  135. package/dist/machines/async-list/index.d.cts +89 -0
  136. package/dist/machines/async-list/index.d.mts +89 -0
  137. package/dist/machines/async-list/index.mjs +310 -0
  138. package/dist/machines/avatar/index.cjs +169 -0
  139. package/dist/machines/avatar/index.d.cts +63 -0
  140. package/dist/machines/avatar/index.d.mts +63 -0
  141. package/dist/machines/avatar/index.mjs +165 -0
  142. package/dist/machines/bottom-sheet/index.cjs +676 -0
  143. package/dist/machines/bottom-sheet/index.d.cts +239 -0
  144. package/dist/machines/bottom-sheet/index.d.mts +239 -0
  145. package/dist/machines/bottom-sheet/index.mjs +672 -0
  146. package/dist/machines/carousel/index.cjs +859 -0
  147. package/dist/machines/carousel/index.d.cts +146 -0
  148. package/dist/machines/carousel/index.d.mts +146 -0
  149. package/dist/machines/carousel/index.mjs +851 -0
  150. package/dist/machines/checkbox/index.cjs +316 -0
  151. package/dist/machines/checkbox/index.d.cts +81 -0
  152. package/dist/machines/checkbox/index.d.mts +81 -0
  153. package/dist/machines/checkbox/index.mjs +312 -0
  154. package/dist/machines/clipboard/index.cjs +225 -0
  155. package/dist/machines/clipboard/index.d.cts +68 -0
  156. package/dist/machines/clipboard/index.d.mts +68 -0
  157. package/dist/machines/clipboard/index.mjs +219 -0
  158. package/dist/machines/collapsible/index.cjs +362 -0
  159. package/dist/machines/collapsible/index.d.cts +82 -0
  160. package/dist/machines/collapsible/index.d.mts +82 -0
  161. package/dist/machines/collapsible/index.mjs +358 -0
  162. package/dist/machines/color-picker/index.cjs +1529 -0
  163. package/dist/machines/color-picker/index.d.cts +205 -0
  164. package/dist/machines/color-picker/index.d.mts +205 -0
  165. package/dist/machines/color-picker/index.mjs +1514 -0
  166. package/dist/machines/combobox/index.cjs +1593 -0
  167. package/dist/machines/combobox/index.d.cts +214 -0
  168. package/dist/machines/combobox/index.d.mts +214 -0
  169. package/dist/machines/combobox/index.mjs +1582 -0
  170. package/dist/machines/date-picker/index.cjs +2177 -0
  171. package/dist/machines/date-picker/index.d.cts +350 -0
  172. package/dist/machines/date-picker/index.d.mts +350 -0
  173. package/dist/machines/date-picker/index.mjs +2161 -0
  174. package/dist/machines/dialog/index.cjs +325 -0
  175. package/dist/machines/dialog/index.d.cts +80 -0
  176. package/dist/machines/dialog/index.d.mts +80 -0
  177. package/dist/machines/dialog/index.mjs +321 -0
  178. package/dist/machines/editable/index.cjs +551 -0
  179. package/dist/machines/editable/index.d.cts +114 -0
  180. package/dist/machines/editable/index.d.mts +114 -0
  181. package/dist/machines/editable/index.mjs +547 -0
  182. package/dist/machines/floating-panel/index.cjs +995 -0
  183. package/dist/machines/floating-panel/index.d.cts +147 -0
  184. package/dist/machines/floating-panel/index.d.mts +147 -0
  185. package/dist/machines/floating-panel/index.mjs +988 -0
  186. package/dist/machines/hover-card/index.cjs +383 -0
  187. package/dist/machines/hover-card/index.d.cts +69 -0
  188. package/dist/machines/hover-card/index.d.mts +69 -0
  189. package/dist/machines/hover-card/index.mjs +379 -0
  190. package/dist/machines/image-cropper/index.cjs +1995 -0
  191. package/dist/machines/image-cropper/index.d.cts +182 -0
  192. package/dist/machines/image-cropper/index.d.mts +182 -0
  193. package/dist/machines/image-cropper/index.mjs +1990 -0
  194. package/dist/machines/listbox/index.cjs +794 -0
  195. package/dist/machines/listbox/index.d.cts +168 -0
  196. package/dist/machines/listbox/index.d.mts +168 -0
  197. package/dist/machines/listbox/index.mjs +782 -0
  198. package/dist/machines/marquee/index.cjs +395 -0
  199. package/dist/machines/marquee/index.d.cts +102 -0
  200. package/dist/machines/marquee/index.d.mts +102 -0
  201. package/dist/machines/marquee/index.mjs +391 -0
  202. package/dist/machines/menu/index.cjs +1298 -0
  203. package/dist/machines/menu/index.d.cts +175 -0
  204. package/dist/machines/menu/index.d.mts +175 -0
  205. package/dist/machines/menu/index.mjs +1286 -0
  206. package/dist/machines/navigation-menu/index.cjs +861 -0
  207. package/dist/machines/navigation-menu/index.d.cts +127 -0
  208. package/dist/machines/navigation-menu/index.d.mts +127 -0
  209. package/dist/machines/navigation-menu/index.mjs +857 -0
  210. package/dist/machines/number-input/index.cjs +996 -0
  211. package/dist/machines/number-input/index.d.cts +134 -0
  212. package/dist/machines/number-input/index.d.mts +134 -0
  213. package/dist/machines/number-input/index.mjs +991 -0
  214. package/dist/machines/pagination/index.cjs +419 -0
  215. package/dist/machines/pagination/index.d.cts +139 -0
  216. package/dist/machines/pagination/index.d.mts +139 -0
  217. package/dist/machines/pagination/index.mjs +411 -0
  218. package/dist/machines/password-input/index.cjs +228 -0
  219. package/dist/machines/password-input/index.d.cts +71 -0
  220. package/dist/machines/password-input/index.d.mts +71 -0
  221. package/dist/machines/password-input/index.mjs +224 -0
  222. package/dist/machines/pin-input/index.cjs +523 -0
  223. package/dist/machines/pin-input/index.d.cts +105 -0
  224. package/dist/machines/pin-input/index.d.mts +105 -0
  225. package/dist/machines/pin-input/index.mjs +519 -0
  226. package/dist/machines/popover/index.cjs +430 -0
  227. package/dist/machines/popover/index.d.cts +88 -0
  228. package/dist/machines/popover/index.d.mts +88 -0
  229. package/dist/machines/popover/index.mjs +426 -0
  230. package/dist/machines/presence/index.cjs +192 -0
  231. package/dist/machines/presence/index.d.cts +44 -0
  232. package/dist/machines/presence/index.d.mts +44 -0
  233. package/dist/machines/presence/index.mjs +190 -0
  234. package/dist/machines/progress/index.cjs +288 -0
  235. package/dist/machines/progress/index.d.cts +96 -0
  236. package/dist/machines/progress/index.d.mts +96 -0
  237. package/dist/machines/progress/index.mjs +284 -0
  238. package/dist/machines/qr-code/index.cjs +172 -0
  239. package/dist/machines/qr-code/index.d.cts +70 -0
  240. package/dist/machines/qr-code/index.d.mts +70 -0
  241. package/dist/machines/qr-code/index.mjs +167 -0
  242. package/dist/machines/radio-group/index.cjs +436 -0
  243. package/dist/machines/radio-group/index.d.cts +106 -0
  244. package/dist/machines/radio-group/index.d.mts +106 -0
  245. package/dist/machines/radio-group/index.mjs +430 -0
  246. package/dist/machines/rating-group/index.cjs +405 -0
  247. package/dist/machines/rating-group/index.d.cts +101 -0
  248. package/dist/machines/rating-group/index.d.mts +101 -0
  249. package/dist/machines/rating-group/index.mjs +399 -0
  250. package/dist/machines/scroll-area/index.cjs +857 -0
  251. package/dist/machines/scroll-area/index.d.cts +159 -0
  252. package/dist/machines/scroll-area/index.d.mts +159 -0
  253. package/dist/machines/scroll-area/index.mjs +853 -0
  254. package/dist/machines/select/index.cjs +1165 -0
  255. package/dist/machines/select/index.d.cts +183 -0
  256. package/dist/machines/select/index.d.mts +183 -0
  257. package/dist/machines/select/index.mjs +1154 -0
  258. package/dist/machines/signature-pad/index.cjs +334 -0
  259. package/dist/machines/signature-pad/index.d.cts +108 -0
  260. package/dist/machines/signature-pad/index.d.mts +108 -0
  261. package/dist/machines/signature-pad/index.mjs +328 -0
  262. package/dist/machines/slider/index.cjs +957 -0
  263. package/dist/machines/slider/index.d.cts +149 -0
  264. package/dist/machines/slider/index.d.mts +149 -0
  265. package/dist/machines/slider/index.mjs +949 -0
  266. package/dist/machines/splitter/index.cjs +1112 -0
  267. package/dist/machines/splitter/index.d.cts +155 -0
  268. package/dist/machines/splitter/index.d.mts +155 -0
  269. package/dist/machines/splitter/index.mjs +1103 -0
  270. package/dist/machines/steps/index.cjs +289 -0
  271. package/dist/machines/steps/index.d.cts +97 -0
  272. package/dist/machines/steps/index.d.mts +97 -0
  273. package/dist/machines/steps/index.mjs +285 -0
  274. package/dist/machines/switch/index.cjs +305 -0
  275. package/dist/machines/switch/index.d.cts +80 -0
  276. package/dist/machines/switch/index.d.mts +80 -0
  277. package/dist/machines/switch/index.mjs +301 -0
  278. package/dist/machines/tabs/index.cjs +508 -0
  279. package/dist/machines/tabs/index.d.cts +111 -0
  280. package/dist/machines/tabs/index.d.mts +111 -0
  281. package/dist/machines/tabs/index.mjs +500 -0
  282. package/dist/machines/tags-input/index.cjs +1127 -0
  283. package/dist/machines/tags-input/index.d.cts +179 -0
  284. package/dist/machines/tags-input/index.d.mts +179 -0
  285. package/dist/machines/tags-input/index.mjs +1121 -0
  286. package/dist/machines/timer/index.cjs +329 -0
  287. package/dist/machines/timer/index.d.cts +98 -0
  288. package/dist/machines/timer/index.d.mts +98 -0
  289. package/dist/machines/timer/index.mjs +324 -0
  290. package/dist/machines/toast/index.cjs +1155 -0
  291. package/dist/machines/toast/index.d.cts +195 -0
  292. package/dist/machines/toast/index.d.mts +195 -0
  293. package/dist/machines/toast/index.mjs +1151 -0
  294. package/dist/machines/toggle/index.cjs +103 -0
  295. package/dist/machines/toggle/index.d.cts +46 -0
  296. package/dist/machines/toggle/index.d.mts +46 -0
  297. package/dist/machines/toggle/index.mjs +99 -0
  298. package/dist/machines/toggle-group/index.cjs +328 -0
  299. package/dist/machines/toggle-group/index.d.cts +81 -0
  300. package/dist/machines/toggle-group/index.d.mts +81 -0
  301. package/dist/machines/toggle-group/index.mjs +322 -0
  302. package/dist/machines/tooltip/index.cjs +516 -0
  303. package/dist/machines/tooltip/index.d.cts +71 -0
  304. package/dist/machines/tooltip/index.d.mts +71 -0
  305. package/dist/machines/tooltip/index.mjs +512 -0
  306. package/dist/machines/tour/index.cjs +1108 -0
  307. package/dist/machines/tour/index.d.cts +206 -0
  308. package/dist/machines/tour/index.d.mts +206 -0
  309. package/dist/machines/tour/index.mjs +1101 -0
  310. package/dist/machines/tree-view/index.cjs +1271 -0
  311. package/dist/machines/tree-view/index.d.cts +215 -0
  312. package/dist/machines/tree-view/index.d.mts +215 -0
  313. package/dist/machines/tree-view/index.mjs +1263 -0
  314. package/dist/node-BctU8GXk.d.mts +24 -0
  315. package/dist/node-CSsuPZVZ.d.cts +24 -0
  316. package/dist/popper-BPJeAtcA.mjs +349 -0
  317. package/dist/popper-D0FAW_p7.cjs +373 -0
  318. package/dist/popper.cjs +8 -0
  319. package/dist/popper.d.cts +74 -0
  320. package/dist/popper.d.mts +2 -0
  321. package/dist/popper.mjs +5 -0
  322. package/dist/raf-BnlYUlDi.d.mts +15 -0
  323. package/dist/raf-Cd2FGy0z.d.cts +15 -0
  324. package/dist/rect-utils-0ellN0a_.mjs +854 -0
  325. package/dist/rect-utils-DKLRhP8G.cjs +1147 -0
  326. package/dist/rect-utils.cjs +51 -0
  327. package/dist/rect-utils.d.cts +198 -0
  328. package/dist/rect-utils.d.mts +198 -0
  329. package/dist/rect-utils.mjs +3 -0
  330. package/dist/remove-scroll-Lrfv79X_.mjs +58 -0
  331. package/dist/remove-scroll-Uvzg1L9r.cjs +63 -0
  332. package/dist/remove-scroll.cjs +0 -0
  333. package/dist/remove-scroll.d.cts +1 -0
  334. package/dist/remove-scroll.d.mts +1 -0
  335. package/dist/remove-scroll.mjs +1 -0
  336. package/dist/scroll-snap-CrTmQRzA.mjs +152 -0
  337. package/dist/scroll-snap-zyiZLv7W.cjs +175 -0
  338. package/dist/scroll-snap.cjs +7 -0
  339. package/dist/scroll-snap.d.cts +14 -0
  340. package/dist/scroll-snap.d.mts +14 -0
  341. package/dist/scroll-snap.mjs +4 -0
  342. package/dist/selection-BIhSzkF7.d.mts +50 -0
  343. package/dist/selection-CS1GBp8e.d.cts +50 -0
  344. package/dist/store-BZcXv49B.cjs +305 -0
  345. package/dist/store-DEojWy9H.mjs +263 -0
  346. package/dist/store.cjs +9 -0
  347. package/dist/store.d.cts +26 -0
  348. package/dist/store.d.mts +26 -0
  349. package/dist/store.mjs +3 -0
  350. package/dist/stringify-state.cjs +49 -0
  351. package/dist/stringify-state.d.cts +8 -0
  352. package/dist/stringify-state.d.mts +8 -0
  353. package/dist/stringify-state.mjs +46 -0
  354. package/dist/tree-collection-BwU5WhGQ.d.mts +78 -0
  355. package/dist/tree-collection-DP_eznnI.d.cts +78 -0
  356. package/dist/typeahead-BdNwVP09.d.cts +45 -0
  357. package/dist/typeahead-XN6lZ7G9.d.mts +45 -0
  358. package/dist/types-BivBkYg9.d.cts +57 -0
  359. package/dist/types-Bl_6JtPQ.d.mts +57 -0
  360. package/dist/types-CPUMVt7c.d.mts +54 -0
  361. package/dist/types-CT_W6HWr.d.cts +54 -0
  362. package/dist/types-DDTcG99l.d.mts +201 -0
  363. package/dist/types-DejIu60O.d.cts +201 -0
  364. package/dist/types-DiIdKZ3K.d.cts +45 -0
  365. package/dist/types-GxLIgJib.d.cts +17 -0
  366. package/dist/types.cjs +15 -0
  367. package/dist/types.d.cts +2 -0
  368. package/dist/types.d.mts +2 -0
  369. package/dist/types.mjs +14 -0
  370. package/dist/utils-BZyrxWWR.mjs +525 -0
  371. package/dist/utils-_6frwjgJ.cjs +1040 -0
  372. package/dist/utils.cjs +88 -0
  373. package/dist/utils.d.cts +144 -0
  374. package/dist/utils.d.mts +144 -0
  375. package/dist/utils.mjs +3 -0
  376. package/dist/wait-for-CMjPsqWk.d.cts +10 -0
  377. package/dist/wait-for-D2nkdD4z.d.mts +10 -0
  378. package/package.json +399 -0
@@ -0,0 +1,152 @@
1
+ import { Yt as getComputedStyle } from "./dom-query-DFCRhyj1.mjs";
2
+
3
+ //#region src/shared/scroll-snap/index.ts
4
+ function getScrollPadding(element) {
5
+ const style = getComputedStyle(element);
6
+ const rect = element.getBoundingClientRect();
7
+ let xBeforeRaw = style.getPropertyValue("scroll-padding-left").replace("auto", "0px");
8
+ let yBeforeRaw = style.getPropertyValue("scroll-padding-top").replace("auto", "0px");
9
+ let xAfterRaw = style.getPropertyValue("scroll-padding-right").replace("auto", "0px");
10
+ let yAfterRaw = style.getPropertyValue("scroll-padding-bottom").replace("auto", "0px");
11
+ function convert(raw, size) {
12
+ let n = parseFloat(raw);
13
+ if (/%/.test(raw)) {
14
+ n /= 100;
15
+ n *= size;
16
+ }
17
+ return Number.isNaN(n) ? 0 : n;
18
+ }
19
+ let xBefore = convert(xBeforeRaw, rect.width);
20
+ let yBefore = convert(yBeforeRaw, rect.height);
21
+ let xAfter = convert(xAfterRaw, rect.width);
22
+ let yAfter = convert(yAfterRaw, rect.height);
23
+ return {
24
+ x: {
25
+ before: xBefore,
26
+ after: xAfter
27
+ },
28
+ y: {
29
+ before: yBefore,
30
+ after: yAfter
31
+ }
32
+ };
33
+ }
34
+ function isRectIntersecting(a, b, axis = "both") {
35
+ return axis === "x" && a.right >= b.left && a.left <= b.right || axis === "y" && a.bottom >= b.top && a.top <= b.bottom || axis === "both" && a.right >= b.left && a.left <= b.right && a.bottom >= b.top && a.top <= b.bottom;
36
+ }
37
+ function getDescendants(parent) {
38
+ let children = [];
39
+ for (const child of parent.children) children = children.concat(child, getDescendants(child));
40
+ return children;
41
+ }
42
+ function getSnapPositions(parent, subtree = false) {
43
+ const parentRect = parent.getBoundingClientRect();
44
+ const positions = {
45
+ x: {
46
+ start: [],
47
+ center: [],
48
+ end: []
49
+ },
50
+ y: {
51
+ start: [],
52
+ center: [],
53
+ end: []
54
+ }
55
+ };
56
+ const children = subtree ? getDescendants(parent) : parent.children;
57
+ for (const axis of ["x", "y"]) {
58
+ const orthogonalAxis = axis === "x" ? "y" : "x";
59
+ const axisStart = axis === "x" ? "left" : "top";
60
+ const axisSize = axis === "x" ? "width" : "height";
61
+ const axisScroll = axis === "x" ? "scrollLeft" : "scrollTop";
62
+ for (const child of children) {
63
+ const childRect = child.getBoundingClientRect();
64
+ if (!isRectIntersecting(parentRect, childRect, orthogonalAxis)) continue;
65
+ let [childAlignY, childAlignX] = getComputedStyle(child).getPropertyValue("scroll-snap-align").split(" ");
66
+ if (typeof childAlignX === "undefined") childAlignX = childAlignY;
67
+ const childAlign = axis === "x" ? childAlignX : childAlignY;
68
+ const childOffsetStart = childRect[axisStart] - parentRect[axisStart] + parent[axisScroll];
69
+ switch (childAlign) {
70
+ case "none": break;
71
+ case "start":
72
+ positions[axis].start.push({
73
+ node: child,
74
+ position: childOffsetStart
75
+ });
76
+ break;
77
+ case "center":
78
+ positions[axis].center.push({
79
+ node: child,
80
+ position: childOffsetStart + childRect[axisSize] / 2
81
+ });
82
+ break;
83
+ case "end":
84
+ positions[axis].end.push({
85
+ node: child,
86
+ position: childOffsetStart + childRect[axisSize]
87
+ });
88
+ break;
89
+ }
90
+ }
91
+ }
92
+ return positions;
93
+ }
94
+ function getScrollSnapPositions(element) {
95
+ const rect = element.getBoundingClientRect();
96
+ const scrollPadding = getScrollPadding(element);
97
+ const snapPositions = getSnapPositions(element);
98
+ const maxScroll = {
99
+ x: element.scrollWidth - element.offsetWidth,
100
+ y: element.scrollHeight - element.offsetHeight
101
+ };
102
+ return {
103
+ x: uniq([
104
+ ...snapPositions.x.start.map((v) => v.position - scrollPadding.x.before),
105
+ ...snapPositions.x.center.map((v) => v.position - rect.width / 2),
106
+ ...snapPositions.x.end.map((v) => v.position - rect.width + scrollPadding.x.after)
107
+ ].map(clamp(0, maxScroll.x))),
108
+ y: uniq([
109
+ ...snapPositions.y.start.map((v) => v.position - scrollPadding.y.before),
110
+ ...snapPositions.y.center.map((v) => v.position - rect.height / 2),
111
+ ...snapPositions.y.end.map((v) => v.position - rect.height + scrollPadding.y.after)
112
+ ].map(clamp(0, maxScroll.y)))
113
+ };
114
+ }
115
+ function findSnapPoint(parent, axis, predicate) {
116
+ const snapPositions = getSnapPositions(parent);
117
+ const items = [
118
+ ...snapPositions[axis].start,
119
+ ...snapPositions[axis].center,
120
+ ...snapPositions[axis].end
121
+ ];
122
+ for (const item of items) if (predicate(item.node)) return item.position;
123
+ }
124
+ function getSnapPointTarget(parent, snapPoint) {
125
+ const rect = parent.getBoundingClientRect();
126
+ const scrollPadding = getScrollPadding(parent);
127
+ const children = Array.from(parent.children);
128
+ for (const child of children) {
129
+ const childRect = child.getBoundingClientRect();
130
+ const childOffsetStart = {
131
+ x: childRect.left - rect.left + parent.scrollLeft,
132
+ y: childRect.top - rect.top + parent.scrollTop
133
+ };
134
+ const matchesX = [
135
+ childOffsetStart.x - scrollPadding.x.before,
136
+ childOffsetStart.x + childRect.width / 2 - rect.width / 2,
137
+ childOffsetStart.x + childRect.width - rect.width + scrollPadding.x.after
138
+ ].some((pos) => Math.abs(pos - snapPoint) < 1);
139
+ const matchesY = [
140
+ childOffsetStart.y - scrollPadding.y.before,
141
+ childOffsetStart.y + childRect.height / 2 - rect.height / 2,
142
+ childOffsetStart.y + childRect.height - rect.height + scrollPadding.y.after
143
+ ].some((pos) => Math.abs(pos - snapPoint) < 1);
144
+ if (matchesX || matchesY) return child;
145
+ }
146
+ return children[0];
147
+ }
148
+ const uniq = (arr) => [...new Set(arr)];
149
+ const clamp = (min, max) => (value) => Math.max(min, Math.min(max, value));
150
+
151
+ //#endregion
152
+ export { getSnapPositions as i, getScrollSnapPositions as n, getSnapPointTarget as r, findSnapPoint as t };
@@ -0,0 +1,175 @@
1
+ const require_dom_query = require('./dom-query-CWZdWUGp.cjs');
2
+
3
+ //#region src/shared/scroll-snap/index.ts
4
+ function getScrollPadding(element) {
5
+ const style = require_dom_query.getComputedStyle(element);
6
+ const rect = element.getBoundingClientRect();
7
+ let xBeforeRaw = style.getPropertyValue("scroll-padding-left").replace("auto", "0px");
8
+ let yBeforeRaw = style.getPropertyValue("scroll-padding-top").replace("auto", "0px");
9
+ let xAfterRaw = style.getPropertyValue("scroll-padding-right").replace("auto", "0px");
10
+ let yAfterRaw = style.getPropertyValue("scroll-padding-bottom").replace("auto", "0px");
11
+ function convert(raw, size) {
12
+ let n = parseFloat(raw);
13
+ if (/%/.test(raw)) {
14
+ n /= 100;
15
+ n *= size;
16
+ }
17
+ return Number.isNaN(n) ? 0 : n;
18
+ }
19
+ let xBefore = convert(xBeforeRaw, rect.width);
20
+ let yBefore = convert(yBeforeRaw, rect.height);
21
+ let xAfter = convert(xAfterRaw, rect.width);
22
+ let yAfter = convert(yAfterRaw, rect.height);
23
+ return {
24
+ x: {
25
+ before: xBefore,
26
+ after: xAfter
27
+ },
28
+ y: {
29
+ before: yBefore,
30
+ after: yAfter
31
+ }
32
+ };
33
+ }
34
+ function isRectIntersecting(a, b, axis = "both") {
35
+ return axis === "x" && a.right >= b.left && a.left <= b.right || axis === "y" && a.bottom >= b.top && a.top <= b.bottom || axis === "both" && a.right >= b.left && a.left <= b.right && a.bottom >= b.top && a.top <= b.bottom;
36
+ }
37
+ function getDescendants(parent) {
38
+ let children = [];
39
+ for (const child of parent.children) children = children.concat(child, getDescendants(child));
40
+ return children;
41
+ }
42
+ function getSnapPositions(parent, subtree = false) {
43
+ const parentRect = parent.getBoundingClientRect();
44
+ const positions = {
45
+ x: {
46
+ start: [],
47
+ center: [],
48
+ end: []
49
+ },
50
+ y: {
51
+ start: [],
52
+ center: [],
53
+ end: []
54
+ }
55
+ };
56
+ const children = subtree ? getDescendants(parent) : parent.children;
57
+ for (const axis of ["x", "y"]) {
58
+ const orthogonalAxis = axis === "x" ? "y" : "x";
59
+ const axisStart = axis === "x" ? "left" : "top";
60
+ const axisSize = axis === "x" ? "width" : "height";
61
+ const axisScroll = axis === "x" ? "scrollLeft" : "scrollTop";
62
+ for (const child of children) {
63
+ const childRect = child.getBoundingClientRect();
64
+ if (!isRectIntersecting(parentRect, childRect, orthogonalAxis)) continue;
65
+ let [childAlignY, childAlignX] = require_dom_query.getComputedStyle(child).getPropertyValue("scroll-snap-align").split(" ");
66
+ if (typeof childAlignX === "undefined") childAlignX = childAlignY;
67
+ const childAlign = axis === "x" ? childAlignX : childAlignY;
68
+ const childOffsetStart = childRect[axisStart] - parentRect[axisStart] + parent[axisScroll];
69
+ switch (childAlign) {
70
+ case "none": break;
71
+ case "start":
72
+ positions[axis].start.push({
73
+ node: child,
74
+ position: childOffsetStart
75
+ });
76
+ break;
77
+ case "center":
78
+ positions[axis].center.push({
79
+ node: child,
80
+ position: childOffsetStart + childRect[axisSize] / 2
81
+ });
82
+ break;
83
+ case "end":
84
+ positions[axis].end.push({
85
+ node: child,
86
+ position: childOffsetStart + childRect[axisSize]
87
+ });
88
+ break;
89
+ }
90
+ }
91
+ }
92
+ return positions;
93
+ }
94
+ function getScrollSnapPositions(element) {
95
+ const rect = element.getBoundingClientRect();
96
+ const scrollPadding = getScrollPadding(element);
97
+ const snapPositions = getSnapPositions(element);
98
+ const maxScroll = {
99
+ x: element.scrollWidth - element.offsetWidth,
100
+ y: element.scrollHeight - element.offsetHeight
101
+ };
102
+ return {
103
+ x: uniq([
104
+ ...snapPositions.x.start.map((v) => v.position - scrollPadding.x.before),
105
+ ...snapPositions.x.center.map((v) => v.position - rect.width / 2),
106
+ ...snapPositions.x.end.map((v) => v.position - rect.width + scrollPadding.x.after)
107
+ ].map(clamp(0, maxScroll.x))),
108
+ y: uniq([
109
+ ...snapPositions.y.start.map((v) => v.position - scrollPadding.y.before),
110
+ ...snapPositions.y.center.map((v) => v.position - rect.height / 2),
111
+ ...snapPositions.y.end.map((v) => v.position - rect.height + scrollPadding.y.after)
112
+ ].map(clamp(0, maxScroll.y)))
113
+ };
114
+ }
115
+ function findSnapPoint(parent, axis, predicate) {
116
+ const snapPositions = getSnapPositions(parent);
117
+ const items = [
118
+ ...snapPositions[axis].start,
119
+ ...snapPositions[axis].center,
120
+ ...snapPositions[axis].end
121
+ ];
122
+ for (const item of items) if (predicate(item.node)) return item.position;
123
+ }
124
+ function getSnapPointTarget(parent, snapPoint) {
125
+ const rect = parent.getBoundingClientRect();
126
+ const scrollPadding = getScrollPadding(parent);
127
+ const children = Array.from(parent.children);
128
+ for (const child of children) {
129
+ const childRect = child.getBoundingClientRect();
130
+ const childOffsetStart = {
131
+ x: childRect.left - rect.left + parent.scrollLeft,
132
+ y: childRect.top - rect.top + parent.scrollTop
133
+ };
134
+ const matchesX = [
135
+ childOffsetStart.x - scrollPadding.x.before,
136
+ childOffsetStart.x + childRect.width / 2 - rect.width / 2,
137
+ childOffsetStart.x + childRect.width - rect.width + scrollPadding.x.after
138
+ ].some((pos) => Math.abs(pos - snapPoint) < 1);
139
+ const matchesY = [
140
+ childOffsetStart.y - scrollPadding.y.before,
141
+ childOffsetStart.y + childRect.height / 2 - rect.height / 2,
142
+ childOffsetStart.y + childRect.height - rect.height + scrollPadding.y.after
143
+ ].some((pos) => Math.abs(pos - snapPoint) < 1);
144
+ if (matchesX || matchesY) return child;
145
+ }
146
+ return children[0];
147
+ }
148
+ const uniq = (arr) => [...new Set(arr)];
149
+ const clamp = (min, max) => (value) => Math.max(min, Math.min(max, value));
150
+
151
+ //#endregion
152
+ Object.defineProperty(exports, 'findSnapPoint', {
153
+ enumerable: true,
154
+ get: function () {
155
+ return findSnapPoint;
156
+ }
157
+ });
158
+ Object.defineProperty(exports, 'getScrollSnapPositions', {
159
+ enumerable: true,
160
+ get: function () {
161
+ return getScrollSnapPositions;
162
+ }
163
+ });
164
+ Object.defineProperty(exports, 'getSnapPointTarget', {
165
+ enumerable: true,
166
+ get: function () {
167
+ return getSnapPointTarget;
168
+ }
169
+ });
170
+ Object.defineProperty(exports, 'getSnapPositions', {
171
+ enumerable: true,
172
+ get: function () {
173
+ return getSnapPositions;
174
+ }
175
+ });
@@ -0,0 +1,7 @@
1
+ require('./dom-query-CWZdWUGp.cjs');
2
+ const require_scroll_snap = require('./scroll-snap-zyiZLv7W.cjs');
3
+
4
+ exports.findSnapPoint = require_scroll_snap.findSnapPoint;
5
+ exports.getScrollSnapPositions = require_scroll_snap.getScrollSnapPositions;
6
+ exports.getSnapPointTarget = require_scroll_snap.getSnapPointTarget;
7
+ exports.getSnapPositions = require_scroll_snap.getSnapPositions;
@@ -0,0 +1,14 @@
1
+ //#region src/shared/scroll-snap/index.d.ts
2
+ type ScrollAxis = "x" | "y";
3
+ type ScrollDirection = "left" | "right" | "up" | "down";
4
+ type ScrollSnapAlignment = "start" | "end" | "center" | "none";
5
+ type SnapPositionList = Record<Exclude<ScrollSnapAlignment, "none">, Array<{
6
+ node: Element;
7
+ position: number;
8
+ }>>;
9
+ declare function getSnapPositions(parent: HTMLElement, subtree?: boolean): Record<ScrollAxis, SnapPositionList>;
10
+ declare function getScrollSnapPositions(element: HTMLElement): Record<ScrollAxis, number[]>;
11
+ declare function findSnapPoint(parent: HTMLElement, axis: ScrollAxis, predicate: (node: HTMLElement) => boolean): number | undefined;
12
+ declare function getSnapPointTarget(parent: HTMLElement, snapPoint: number): HTMLElement;
13
+ //#endregion
14
+ export { ScrollAxis, ScrollDirection, ScrollSnapAlignment, SnapPositionList, findSnapPoint, getScrollSnapPositions, getSnapPointTarget, getSnapPositions };
@@ -0,0 +1,14 @@
1
+ //#region src/shared/scroll-snap/index.d.ts
2
+ type ScrollAxis = "x" | "y";
3
+ type ScrollDirection = "left" | "right" | "up" | "down";
4
+ type ScrollSnapAlignment = "start" | "end" | "center" | "none";
5
+ type SnapPositionList = Record<Exclude<ScrollSnapAlignment, "none">, Array<{
6
+ node: Element;
7
+ position: number;
8
+ }>>;
9
+ declare function getSnapPositions(parent: HTMLElement, subtree?: boolean): Record<ScrollAxis, SnapPositionList>;
10
+ declare function getScrollSnapPositions(element: HTMLElement): Record<ScrollAxis, number[]>;
11
+ declare function findSnapPoint(parent: HTMLElement, axis: ScrollAxis, predicate: (node: HTMLElement) => boolean): number | undefined;
12
+ declare function getSnapPointTarget(parent: HTMLElement, snapPoint: number): HTMLElement;
13
+ //#endregion
14
+ export { ScrollAxis, ScrollDirection, ScrollSnapAlignment, SnapPositionList, findSnapPoint, getScrollSnapPositions, getSnapPointTarget, getSnapPositions };
@@ -0,0 +1,4 @@
1
+ import "./dom-query-DFCRhyj1.mjs";
2
+ import { i as getSnapPositions, n as getScrollSnapPositions, r as getSnapPointTarget, t as findSnapPoint } from "./scroll-snap-CrTmQRzA.mjs";
3
+
4
+ export { findSnapPoint, getScrollSnapPositions, getSnapPointTarget, getSnapPositions };
@@ -0,0 +1,50 @@
1
+ import { r as CollectionOptions, t as CollectionItem } from "./types-Bl_6JtPQ.mjs";
2
+ import { t as ListCollection } from "./list-collection-Db3eixRU.mjs";
3
+
4
+ //#region src/shared/collection/grid-collection.d.ts
5
+ interface GridCollectionOptions<T> extends CollectionOptions<T> {
6
+ columnCount: number;
7
+ }
8
+ declare class GridCollection<T extends CollectionItem = CollectionItem> extends ListCollection<T> {
9
+ columnCount: number;
10
+ private rows;
11
+ constructor(options: GridCollectionOptions<T>);
12
+ getRows: () => T[][];
13
+ getRowCount: () => number;
14
+ getCellIndex: (row: number, column: number) => number;
15
+ getCell: (row: number, column: number) => T | null;
16
+ getValueCell: (value: string) => {
17
+ row: number;
18
+ column: number;
19
+ } | null;
20
+ getLastEnabledColumnIndex: (row: number) => number | null;
21
+ getFirstEnabledColumnIndex: (row: number) => number | null;
22
+ getPreviousRowValue: (value: string, loop?: boolean) => string | null;
23
+ getNextRowValue: (value: string, loop?: boolean) => string | null;
24
+ }
25
+ declare function isGridCollection(v: any): v is GridCollection<any>;
26
+ //#endregion
27
+ //#region src/shared/collection/selection.d.ts
28
+ type SelectionMode = "single" | "multiple" | "none" | "extended";
29
+ declare class Selection extends Set<string> {
30
+ selectionMode: SelectionMode;
31
+ deselectable: boolean;
32
+ constructor(values?: Iterable<string>);
33
+ copy: () => Selection;
34
+ private sync;
35
+ isEmpty: () => boolean;
36
+ isSelected: (value: string | null) => boolean;
37
+ canSelect: (collection: ListCollection, value: string) => boolean;
38
+ firstSelectedValue: (collection: ListCollection) => string | null;
39
+ lastSelectedValue: (collection: ListCollection) => string | null;
40
+ extendSelection: (collection: ListCollection, anchorValue: string, targetValue: string) => Selection;
41
+ toggleSelection: (collection: ListCollection, value: string) => Selection;
42
+ replaceSelection: (collection: ListCollection, value: string | null) => Selection;
43
+ setSelection: (values: Iterable<string>) => Selection;
44
+ clearSelection: () => Selection;
45
+ select: (collection: ListCollection, value: string, forceToggle?: boolean) => Selection;
46
+ deselect: (value: string) => Selection;
47
+ isEqual: (other: Selection) => boolean;
48
+ }
49
+ //#endregion
50
+ export { isGridCollection as a, GridCollectionOptions as i, SelectionMode as n, GridCollection as r, Selection as t };
@@ -0,0 +1,50 @@
1
+ import { r as CollectionOptions, t as CollectionItem } from "./types-BivBkYg9.cjs";
2
+ import { t as ListCollection } from "./list-collection-BIMJGQjn.cjs";
3
+
4
+ //#region src/shared/collection/grid-collection.d.ts
5
+ interface GridCollectionOptions<T> extends CollectionOptions<T> {
6
+ columnCount: number;
7
+ }
8
+ declare class GridCollection<T extends CollectionItem = CollectionItem> extends ListCollection<T> {
9
+ columnCount: number;
10
+ private rows;
11
+ constructor(options: GridCollectionOptions<T>);
12
+ getRows: () => T[][];
13
+ getRowCount: () => number;
14
+ getCellIndex: (row: number, column: number) => number;
15
+ getCell: (row: number, column: number) => T | null;
16
+ getValueCell: (value: string) => {
17
+ row: number;
18
+ column: number;
19
+ } | null;
20
+ getLastEnabledColumnIndex: (row: number) => number | null;
21
+ getFirstEnabledColumnIndex: (row: number) => number | null;
22
+ getPreviousRowValue: (value: string, loop?: boolean) => string | null;
23
+ getNextRowValue: (value: string, loop?: boolean) => string | null;
24
+ }
25
+ declare function isGridCollection(v: any): v is GridCollection<any>;
26
+ //#endregion
27
+ //#region src/shared/collection/selection.d.ts
28
+ type SelectionMode = "single" | "multiple" | "none" | "extended";
29
+ declare class Selection extends Set<string> {
30
+ selectionMode: SelectionMode;
31
+ deselectable: boolean;
32
+ constructor(values?: Iterable<string>);
33
+ copy: () => Selection;
34
+ private sync;
35
+ isEmpty: () => boolean;
36
+ isSelected: (value: string | null) => boolean;
37
+ canSelect: (collection: ListCollection, value: string) => boolean;
38
+ firstSelectedValue: (collection: ListCollection) => string | null;
39
+ lastSelectedValue: (collection: ListCollection) => string | null;
40
+ extendSelection: (collection: ListCollection, anchorValue: string, targetValue: string) => Selection;
41
+ toggleSelection: (collection: ListCollection, value: string) => Selection;
42
+ replaceSelection: (collection: ListCollection, value: string | null) => Selection;
43
+ setSelection: (values: Iterable<string>) => Selection;
44
+ clearSelection: () => Selection;
45
+ select: (collection: ListCollection, value: string, forceToggle?: boolean) => Selection;
46
+ deselect: (value: string) => Selection;
47
+ isEqual: (other: Selection) => boolean;
48
+ }
49
+ //#endregion
50
+ export { isGridCollection as a, GridCollectionOptions as i, SelectionMode as n, GridCollection as r, Selection as t };