@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,957 @@
1
+ const require_create_anatomy = require('../../create-anatomy-CDsIFUXg.cjs');
2
+ const require_dom_query = require('../../dom-query-CWZdWUGp.cjs');
3
+ const require_utils = require('../../utils-_6frwjgJ.cjs');
4
+ const require_core = require('../../core-CQFbMdTl.cjs');
5
+ const require_create_props = require('../../create-props-YKy7JIKj.cjs');
6
+
7
+ //#region src/machines/slider/slider.anatomy.ts
8
+ const anatomy = require_create_anatomy.createAnatomy("slider").parts("root", "label", "thumb", "valueText", "track", "range", "control", "markerGroup", "marker", "draggingIndicator");
9
+ const parts = anatomy.build();
10
+
11
+ //#endregion
12
+ //#region src/machines/slider/slider.dom.ts
13
+ const getRootId = (ctx) => ctx.ids?.root ?? `slider:${ctx.id}`;
14
+ const getThumbId = (ctx, index) => ctx.ids?.thumb?.(index) ?? `slider:${ctx.id}:thumb:${index}`;
15
+ const getHiddenInputId = (ctx, index) => ctx.ids?.hiddenInput?.(index) ?? `slider:${ctx.id}:input:${index}`;
16
+ const getControlId = (ctx) => ctx.ids?.control ?? `slider:${ctx.id}:control`;
17
+ const getTrackId = (ctx) => ctx.ids?.track ?? `slider:${ctx.id}:track`;
18
+ const getRangeId = (ctx) => ctx.ids?.range ?? `slider:${ctx.id}:range`;
19
+ const getLabelId = (ctx) => ctx.ids?.label ?? `slider:${ctx.id}:label`;
20
+ const getValueTextId = (ctx) => ctx.ids?.valueText ?? `slider:${ctx.id}:value-text`;
21
+ const getMarkerId = (ctx, value) => ctx.ids?.marker?.(value) ?? `slider:${ctx.id}:marker:${value}`;
22
+ const getRootEl = (ctx) => ctx.getById(getRootId(ctx));
23
+ const getThumbEl = (ctx, index) => ctx.getById(getThumbId(ctx, index));
24
+ const getThumbEls = (ctx) => require_dom_query.queryAll(getControlEl(ctx), "[role=slider]");
25
+ const getFirstThumbEl = (ctx) => getThumbEls(ctx)[0];
26
+ const getHiddenInputEl = (ctx, index) => ctx.getById(getHiddenInputId(ctx, index));
27
+ const getControlEl = (ctx) => ctx.getById(getControlId(ctx));
28
+ const getPointValue = (params, point) => {
29
+ const { prop, scope, refs } = params;
30
+ const controlEl = getControlEl(scope);
31
+ if (!controlEl) return;
32
+ const offset = refs.get("thumbDragOffset");
33
+ return require_utils.getPercentValue(require_dom_query.getRelativePoint({
34
+ x: point.x - (offset?.x ?? 0),
35
+ y: point.y - (offset?.y ?? 0)
36
+ }, controlEl).getPercentValue({
37
+ orientation: prop("orientation"),
38
+ dir: prop("dir"),
39
+ inverted: { y: true }
40
+ }), prop("min"), prop("max"), prop("step"));
41
+ };
42
+ const dispatchChangeEvent = (ctx, value) => {
43
+ value.forEach((value$1, index) => {
44
+ const inputEl = getHiddenInputEl(ctx, index);
45
+ if (!inputEl) return;
46
+ require_dom_query.dispatchInputValueEvent(inputEl, { value: value$1 });
47
+ });
48
+ };
49
+ const getOffsetRect = (el) => ({
50
+ left: el?.offsetLeft ?? 0,
51
+ top: el?.offsetTop ?? 0,
52
+ width: el?.offsetWidth ?? 0,
53
+ height: el?.offsetHeight ?? 0
54
+ });
55
+
56
+ //#endregion
57
+ //#region src/machines/slider/slider.style.ts
58
+ function getBounds(value) {
59
+ return [value[0], value[value.length - 1]];
60
+ }
61
+ function getRangeOffsets(params) {
62
+ const { prop, computed } = params;
63
+ const valuePercent = computed("valuePercent");
64
+ const [firstPercent, lastPercent] = getBounds(valuePercent);
65
+ if (valuePercent.length === 1) {
66
+ if (prop("origin") === "center") {
67
+ const isNegative = valuePercent[0] < 50;
68
+ return {
69
+ start: isNegative ? `${valuePercent[0]}%` : "50%",
70
+ end: isNegative ? "50%" : `${100 - valuePercent[0]}%`
71
+ };
72
+ }
73
+ if (prop("origin") === "end") return {
74
+ start: `${lastPercent}%`,
75
+ end: "0%"
76
+ };
77
+ return {
78
+ start: "0%",
79
+ end: `${100 - lastPercent}%`
80
+ };
81
+ }
82
+ return {
83
+ start: `${firstPercent}%`,
84
+ end: `${100 - lastPercent}%`
85
+ };
86
+ }
87
+ function getRangeStyle(params) {
88
+ const { computed } = params;
89
+ const isVertical = computed("isVertical");
90
+ const isRtl = computed("isRtl");
91
+ if (isVertical) return {
92
+ position: "absolute",
93
+ bottom: "var(--slider-range-start)",
94
+ top: "var(--slider-range-end)"
95
+ };
96
+ return {
97
+ position: "absolute",
98
+ [isRtl ? "right" : "left"]: "var(--slider-range-start)",
99
+ [isRtl ? "left" : "right"]: "var(--slider-range-end)"
100
+ };
101
+ }
102
+ function getVerticalThumbOffset(params, value) {
103
+ const { context, prop } = params;
104
+ const { height = 0 } = context.get("thumbSize") ?? {};
105
+ const getValue = require_utils.getValueTransformer([prop("min"), prop("max")], [-height / 2, height / 2]);
106
+ return parseFloat(getValue(value).toFixed(2));
107
+ }
108
+ function getHorizontalThumbOffset(params, value) {
109
+ const { computed, context, prop } = params;
110
+ const { width = 0 } = context.get("thumbSize") ?? {};
111
+ if (computed("isRtl")) {
112
+ const getValue$1 = require_utils.getValueTransformer([prop("max"), prop("min")], [-width / 2, width / 2]);
113
+ return -1 * parseFloat(getValue$1(value).toFixed(2));
114
+ }
115
+ const getValue = require_utils.getValueTransformer([prop("min"), prop("max")], [-width / 2, width / 2]);
116
+ return parseFloat(getValue(value).toFixed(2));
117
+ }
118
+ function getOffset(params, percent, value) {
119
+ const { computed, prop } = params;
120
+ if (prop("thumbAlignment") === "center") return `${percent}%`;
121
+ return `calc(${percent}% - ${computed("isVertical") ? getVerticalThumbOffset(params, value) : getHorizontalThumbOffset(params, value)}px)`;
122
+ }
123
+ function getThumbOffset(params, value) {
124
+ const { prop } = params;
125
+ return getOffset(params, require_utils.getValuePercent(value, prop("min"), prop("max")) * 100, value);
126
+ }
127
+ function getVisibility(params) {
128
+ const { computed, prop } = params;
129
+ let visibility = "visible";
130
+ if (prop("thumbAlignment") === "contain" && !computed("hasMeasuredThumbSize")) visibility = "hidden";
131
+ return visibility;
132
+ }
133
+ function getThumbStyle(params, index) {
134
+ const { computed, context } = params;
135
+ const placementProp = computed("isVertical") ? "bottom" : "insetInlineStart";
136
+ const focusedIndex = context.get("focusedIndex");
137
+ return {
138
+ visibility: getVisibility(params),
139
+ position: "absolute",
140
+ transform: "var(--slider-thumb-transform)",
141
+ [placementProp]: `var(--slider-thumb-offset-${index})`,
142
+ zIndex: focusedIndex === index ? 1 : void 0
143
+ };
144
+ }
145
+ function getControlStyle() {
146
+ return {
147
+ touchAction: "none",
148
+ userSelect: "none",
149
+ WebkitUserSelect: "none",
150
+ position: "relative"
151
+ };
152
+ }
153
+ function getRootStyle(params) {
154
+ const { context, computed } = params;
155
+ const isVertical = computed("isVertical");
156
+ const isRtl = computed("isRtl");
157
+ const range = getRangeOffsets(params);
158
+ const thumbSize = context.get("thumbSize");
159
+ return {
160
+ ...context.get("value").reduce((styles, value, index) => {
161
+ const offset = getThumbOffset(params, value);
162
+ return {
163
+ ...styles,
164
+ [`--slider-thumb-offset-${index}`]: offset
165
+ };
166
+ }, {}),
167
+ "--slider-thumb-width": require_utils.toPx(thumbSize?.width),
168
+ "--slider-thumb-height": require_utils.toPx(thumbSize?.height),
169
+ "--slider-thumb-transform": isVertical ? "translateY(50%)" : isRtl ? "translateX(50%)" : "translateX(-50%)",
170
+ "--slider-range-start": range.start,
171
+ "--slider-range-end": range.end
172
+ };
173
+ }
174
+ function getMarkerStyle(params, value) {
175
+ const { computed } = params;
176
+ const isHorizontal = computed("isHorizontal");
177
+ const isRtl = computed("isRtl");
178
+ return {
179
+ visibility: getVisibility(params),
180
+ position: "absolute",
181
+ pointerEvents: "none",
182
+ [isHorizontal ? "insetInlineStart" : "bottom"]: getThumbOffset(params, value),
183
+ translate: "var(--translate-x) var(--translate-y)",
184
+ "--translate-x": isHorizontal ? isRtl ? "50%" : "-50%" : "0%",
185
+ "--translate-y": !isHorizontal ? "50%" : "0%"
186
+ };
187
+ }
188
+ function getMarkerGroupStyle() {
189
+ return {
190
+ userSelect: "none",
191
+ WebkitUserSelect: "none",
192
+ pointerEvents: "none",
193
+ position: "relative"
194
+ };
195
+ }
196
+
197
+ //#endregion
198
+ //#region src/machines/slider/slider.utils.ts
199
+ function normalizeValues(params, nextValues) {
200
+ return nextValues.map((value, index) => {
201
+ return constrainValue(params, value, index);
202
+ });
203
+ }
204
+ function getRangeAtIndex(params, index) {
205
+ const { context, prop } = params;
206
+ const step = prop("step") * prop("minStepsBetweenThumbs");
207
+ return require_utils.getValueRanges(context.get("value"), prop("min"), prop("max"), step)[index];
208
+ }
209
+ function constrainValue(params, value, index) {
210
+ const { prop } = params;
211
+ const range = getRangeAtIndex(params, index);
212
+ return require_utils.clampValue(require_utils.snapValueToStep(value, prop("min"), prop("max"), prop("step")), range.min, range.max);
213
+ }
214
+ function decrement(params, index, step) {
215
+ const { context, prop } = params;
216
+ const idx = index ?? context.get("focusedIndex");
217
+ const range = getRangeAtIndex(params, idx);
218
+ const nextValues = require_utils.getPreviousStepValue(idx, {
219
+ ...range,
220
+ step: step ?? prop("step"),
221
+ values: context.get("value")
222
+ });
223
+ nextValues[idx] = require_utils.clampValue(nextValues[idx], range.min, range.max);
224
+ return nextValues;
225
+ }
226
+ function increment(params, index, step) {
227
+ const { context, prop } = params;
228
+ const idx = index ?? context.get("focusedIndex");
229
+ const range = getRangeAtIndex(params, idx);
230
+ const nextValues = require_utils.getNextStepValue(idx, {
231
+ ...range,
232
+ step: step ?? prop("step"),
233
+ values: context.get("value")
234
+ });
235
+ nextValues[idx] = require_utils.clampValue(nextValues[idx], range.min, range.max);
236
+ return nextValues;
237
+ }
238
+ function getClosestIndex(params, pointValue) {
239
+ const { context } = params;
240
+ const values = context.get("value");
241
+ let closestIndex = 0;
242
+ let minDistance = Math.abs(values[0] - pointValue);
243
+ for (let i = 1; i < values.length; i++) {
244
+ const distance = Math.abs(values[i] - pointValue);
245
+ if (distance <= minDistance) {
246
+ closestIndex = i;
247
+ minDistance = distance;
248
+ }
249
+ }
250
+ return selectMovableThumb(params, closestIndex);
251
+ }
252
+ function selectMovableThumb(params, index) {
253
+ const { context, prop } = params;
254
+ const values = context.get("value");
255
+ const max = prop("max");
256
+ if (values[index] === max) {
257
+ let movableIndex = index;
258
+ while (movableIndex > 0 && values[movableIndex - 1] === max) movableIndex -= 1;
259
+ return movableIndex;
260
+ }
261
+ return index;
262
+ }
263
+
264
+ //#endregion
265
+ //#region src/machines/slider/slider.connect.ts
266
+ function connect(service, normalize$1) {
267
+ const { state, send, context, prop, computed, scope } = service;
268
+ const ariaLabel = prop("aria-label");
269
+ const ariaLabelledBy = prop("aria-labelledby");
270
+ const sliderValue = context.get("value");
271
+ const focusedIndex = context.get("focusedIndex");
272
+ const focused = state.matches("focus");
273
+ const dragging = state.matches("dragging");
274
+ const disabled = computed("isDisabled");
275
+ const invalid = prop("invalid");
276
+ const interactive = computed("isInteractive");
277
+ const isHorizontal = prop("orientation") === "horizontal";
278
+ const isVertical = prop("orientation") === "vertical";
279
+ function getValuePercentFn(value) {
280
+ return require_utils.getValuePercent(value, prop("min"), prop("max"));
281
+ }
282
+ function getPercentValueFn(percent) {
283
+ return require_utils.getPercentValue(percent, prop("min"), prop("max"), prop("step"));
284
+ }
285
+ return {
286
+ value: sliderValue,
287
+ dragging,
288
+ focused,
289
+ setValue(value) {
290
+ send({
291
+ type: "SET_VALUE",
292
+ value
293
+ });
294
+ },
295
+ getThumbValue(index) {
296
+ return sliderValue[index];
297
+ },
298
+ setThumbValue(index, value) {
299
+ send({
300
+ type: "SET_VALUE",
301
+ index,
302
+ value
303
+ });
304
+ },
305
+ getValuePercent: getValuePercentFn,
306
+ getPercentValue: getPercentValueFn,
307
+ getThumbPercent(index) {
308
+ return getValuePercentFn(sliderValue[index]);
309
+ },
310
+ setThumbPercent(index, percent) {
311
+ send({
312
+ type: "SET_VALUE",
313
+ index,
314
+ value: getPercentValueFn(percent)
315
+ });
316
+ },
317
+ getThumbMin(index) {
318
+ return getRangeAtIndex(service, index).min;
319
+ },
320
+ getThumbMax(index) {
321
+ return getRangeAtIndex(service, index).max;
322
+ },
323
+ increment(index) {
324
+ send({
325
+ type: "INCREMENT",
326
+ index
327
+ });
328
+ },
329
+ decrement(index) {
330
+ send({
331
+ type: "DECREMENT",
332
+ index
333
+ });
334
+ },
335
+ focus() {
336
+ if (!interactive) return;
337
+ send({
338
+ type: "FOCUS",
339
+ index: 0
340
+ });
341
+ },
342
+ getLabelProps() {
343
+ return normalize$1.label({
344
+ ...parts.label.attrs,
345
+ dir: prop("dir"),
346
+ "data-disabled": require_dom_query.dataAttr(disabled),
347
+ "data-orientation": prop("orientation"),
348
+ "data-invalid": require_dom_query.dataAttr(invalid),
349
+ "data-dragging": require_dom_query.dataAttr(dragging),
350
+ "data-focus": require_dom_query.dataAttr(focused),
351
+ id: getLabelId(scope),
352
+ htmlFor: getHiddenInputId(scope, 0),
353
+ onClick(event) {
354
+ if (!interactive) return;
355
+ event.preventDefault();
356
+ getFirstThumbEl(scope)?.focus();
357
+ },
358
+ style: {
359
+ userSelect: "none",
360
+ WebkitUserSelect: "none"
361
+ }
362
+ });
363
+ },
364
+ getRootProps() {
365
+ return normalize$1.element({
366
+ ...parts.root.attrs,
367
+ "data-disabled": require_dom_query.dataAttr(disabled),
368
+ "data-orientation": prop("orientation"),
369
+ "data-dragging": require_dom_query.dataAttr(dragging),
370
+ "data-invalid": require_dom_query.dataAttr(invalid),
371
+ "data-focus": require_dom_query.dataAttr(focused),
372
+ id: getRootId(scope),
373
+ dir: prop("dir"),
374
+ style: getRootStyle(service)
375
+ });
376
+ },
377
+ getValueTextProps() {
378
+ return normalize$1.element({
379
+ ...parts.valueText.attrs,
380
+ dir: prop("dir"),
381
+ "data-disabled": require_dom_query.dataAttr(disabled),
382
+ "data-orientation": prop("orientation"),
383
+ "data-invalid": require_dom_query.dataAttr(invalid),
384
+ "data-focus": require_dom_query.dataAttr(focused),
385
+ id: getValueTextId(scope)
386
+ });
387
+ },
388
+ getTrackProps() {
389
+ return normalize$1.element({
390
+ ...parts.track.attrs,
391
+ dir: prop("dir"),
392
+ id: getTrackId(scope),
393
+ "data-disabled": require_dom_query.dataAttr(disabled),
394
+ "data-invalid": require_dom_query.dataAttr(invalid),
395
+ "data-dragging": require_dom_query.dataAttr(dragging),
396
+ "data-orientation": prop("orientation"),
397
+ "data-focus": require_dom_query.dataAttr(focused),
398
+ style: { position: "relative" }
399
+ });
400
+ },
401
+ getThumbProps(props$1) {
402
+ const { index = 0, name } = props$1;
403
+ const value = sliderValue[index];
404
+ const range = getRangeAtIndex(service, index);
405
+ const valueText = prop("getAriaValueText")?.({
406
+ value,
407
+ index
408
+ });
409
+ const _ariaLabel = Array.isArray(ariaLabel) ? ariaLabel[index] : ariaLabel;
410
+ const _ariaLabelledBy = Array.isArray(ariaLabelledBy) ? ariaLabelledBy[index] : ariaLabelledBy;
411
+ return normalize$1.element({
412
+ ...parts.thumb.attrs,
413
+ dir: prop("dir"),
414
+ "data-index": index,
415
+ "data-name": name,
416
+ id: getThumbId(scope, index),
417
+ "data-disabled": require_dom_query.dataAttr(disabled),
418
+ "data-orientation": prop("orientation"),
419
+ "data-focus": require_dom_query.dataAttr(focused && focusedIndex === index),
420
+ "data-dragging": require_dom_query.dataAttr(dragging && focusedIndex === index),
421
+ draggable: false,
422
+ "aria-disabled": require_dom_query.ariaAttr(disabled),
423
+ "aria-label": _ariaLabel,
424
+ "aria-labelledby": _ariaLabelledBy ?? getLabelId(scope),
425
+ "aria-orientation": prop("orientation"),
426
+ "aria-valuemax": range.max,
427
+ "aria-valuemin": range.min,
428
+ "aria-valuenow": sliderValue[index],
429
+ "aria-valuetext": valueText,
430
+ role: "slider",
431
+ tabIndex: disabled ? void 0 : 0,
432
+ style: getThumbStyle(service, index),
433
+ onPointerDown(event) {
434
+ if (!interactive) return;
435
+ if (!require_dom_query.isLeftClick(event)) return;
436
+ const rect = event.currentTarget.getBoundingClientRect();
437
+ const midpoint = {
438
+ x: rect.left + rect.width / 2,
439
+ y: rect.top + rect.height / 2
440
+ };
441
+ send({
442
+ type: "THUMB_POINTER_DOWN",
443
+ index,
444
+ offset: {
445
+ x: event.clientX - midpoint.x,
446
+ y: event.clientY - midpoint.y
447
+ }
448
+ });
449
+ event.stopPropagation();
450
+ },
451
+ onBlur() {
452
+ if (!interactive) return;
453
+ send({ type: "BLUR" });
454
+ },
455
+ onFocus() {
456
+ if (!interactive) return;
457
+ send({
458
+ type: "FOCUS",
459
+ index
460
+ });
461
+ },
462
+ onKeyDown(event) {
463
+ if (event.defaultPrevented) return;
464
+ if (!interactive) return;
465
+ const step = require_dom_query.getEventStep(event) * prop("step");
466
+ const exec = {
467
+ ArrowUp() {
468
+ if (isHorizontal) return;
469
+ send({
470
+ type: "ARROW_INC",
471
+ step,
472
+ src: "ArrowUp"
473
+ });
474
+ },
475
+ ArrowDown() {
476
+ if (isHorizontal) return;
477
+ send({
478
+ type: "ARROW_DEC",
479
+ step,
480
+ src: "ArrowDown"
481
+ });
482
+ },
483
+ ArrowLeft() {
484
+ if (isVertical) return;
485
+ send({
486
+ type: "ARROW_DEC",
487
+ step,
488
+ src: "ArrowLeft"
489
+ });
490
+ },
491
+ ArrowRight() {
492
+ if (isVertical) return;
493
+ send({
494
+ type: "ARROW_INC",
495
+ step,
496
+ src: "ArrowRight"
497
+ });
498
+ },
499
+ PageUp() {
500
+ send({
501
+ type: "ARROW_INC",
502
+ step,
503
+ src: "PageUp"
504
+ });
505
+ },
506
+ PageDown() {
507
+ send({
508
+ type: "ARROW_DEC",
509
+ step,
510
+ src: "PageDown"
511
+ });
512
+ },
513
+ Home() {
514
+ send({ type: "HOME" });
515
+ },
516
+ End() {
517
+ send({ type: "END" });
518
+ }
519
+ }[require_dom_query.getEventKey(event, {
520
+ dir: prop("dir"),
521
+ orientation: prop("orientation")
522
+ })];
523
+ if (exec) {
524
+ exec(event);
525
+ event.preventDefault();
526
+ event.stopPropagation();
527
+ }
528
+ }
529
+ });
530
+ },
531
+ getHiddenInputProps(props$1) {
532
+ const { index = 0, name } = props$1;
533
+ return normalize$1.input({
534
+ name: name ?? (prop("name") ? prop("name") + (sliderValue.length > 1 ? "[]" : "") : void 0),
535
+ form: prop("form"),
536
+ type: "text",
537
+ hidden: true,
538
+ defaultValue: sliderValue[index],
539
+ id: getHiddenInputId(scope, index)
540
+ });
541
+ },
542
+ getRangeProps() {
543
+ return normalize$1.element({
544
+ id: getRangeId(scope),
545
+ ...parts.range.attrs,
546
+ dir: prop("dir"),
547
+ "data-dragging": require_dom_query.dataAttr(dragging),
548
+ "data-focus": require_dom_query.dataAttr(focused),
549
+ "data-invalid": require_dom_query.dataAttr(invalid),
550
+ "data-disabled": require_dom_query.dataAttr(disabled),
551
+ "data-orientation": prop("orientation"),
552
+ style: getRangeStyle(service)
553
+ });
554
+ },
555
+ getControlProps() {
556
+ return normalize$1.element({
557
+ ...parts.control.attrs,
558
+ dir: prop("dir"),
559
+ id: getControlId(scope),
560
+ "data-dragging": require_dom_query.dataAttr(dragging),
561
+ "data-disabled": require_dom_query.dataAttr(disabled),
562
+ "data-orientation": prop("orientation"),
563
+ "data-invalid": require_dom_query.dataAttr(invalid),
564
+ "data-focus": require_dom_query.dataAttr(focused),
565
+ style: getControlStyle(),
566
+ onPointerDown(event) {
567
+ if (!interactive) return;
568
+ if (!require_dom_query.isLeftClick(event)) return;
569
+ if (require_dom_query.isModifierKey(event)) return;
570
+ send({
571
+ type: "POINTER_DOWN",
572
+ point: require_dom_query.getEventPoint(event)
573
+ });
574
+ event.preventDefault();
575
+ event.stopPropagation();
576
+ }
577
+ });
578
+ },
579
+ getMarkerGroupProps() {
580
+ return normalize$1.element({
581
+ ...parts.markerGroup.attrs,
582
+ role: "presentation",
583
+ dir: prop("dir"),
584
+ "aria-hidden": true,
585
+ "data-orientation": prop("orientation"),
586
+ style: getMarkerGroupStyle()
587
+ });
588
+ },
589
+ getMarkerProps(props$1) {
590
+ const style = getMarkerStyle(service, props$1.value);
591
+ let markerState;
592
+ if (props$1.value < require_utils.first(sliderValue)) markerState = "under-value";
593
+ else if (props$1.value > require_utils.last(sliderValue)) markerState = "over-value";
594
+ else markerState = "at-value";
595
+ return normalize$1.element({
596
+ ...parts.marker.attrs,
597
+ id: getMarkerId(scope, props$1.value),
598
+ role: "presentation",
599
+ dir: prop("dir"),
600
+ "data-orientation": prop("orientation"),
601
+ "data-value": props$1.value,
602
+ "data-disabled": require_dom_query.dataAttr(disabled),
603
+ "data-state": markerState,
604
+ style
605
+ });
606
+ },
607
+ getDraggingIndicatorProps(props$1) {
608
+ const { index = 0 } = props$1;
609
+ const isDragging = index === focusedIndex && dragging;
610
+ return normalize$1.element({
611
+ ...parts.draggingIndicator.attrs,
612
+ role: "presentation",
613
+ dir: prop("dir"),
614
+ hidden: !isDragging,
615
+ "data-orientation": prop("orientation"),
616
+ "data-state": isDragging ? "open" : "closed",
617
+ style: getThumbStyle(service, index)
618
+ });
619
+ }
620
+ };
621
+ }
622
+
623
+ //#endregion
624
+ //#region src/machines/slider/slider.machine.ts
625
+ const isEqualSize = (a, b) => {
626
+ return a?.width === b?.width && a?.height === b?.height;
627
+ };
628
+ const normalize = (value, min, max, step, minStepsBetweenThumbs) => {
629
+ return require_utils.getValueRanges(value, min, max, minStepsBetweenThumbs * step).map((range) => {
630
+ const rangeValue = require_utils.clampValue(require_utils.snapValueToStep(range.value, range.min, range.max, step), range.min, range.max);
631
+ if (!require_utils.isValueWithinRange(rangeValue, min, max)) throw new Error("[sprawlify-js/slider] The configured `min`, `max`, `step` or `minStepsBetweenThumbs` values are invalid");
632
+ return rangeValue;
633
+ });
634
+ };
635
+ const machine = require_core.createMachine({
636
+ props({ props: props$1 }) {
637
+ const min = props$1.min ?? 0;
638
+ const max = props$1.max ?? 100;
639
+ const step = props$1.step ?? 1;
640
+ const defaultValue = props$1.defaultValue ?? [min];
641
+ const minStepsBetweenThumbs = props$1.minStepsBetweenThumbs ?? 0;
642
+ return {
643
+ dir: "ltr",
644
+ thumbAlignment: "contain",
645
+ origin: "start",
646
+ orientation: "horizontal",
647
+ minStepsBetweenThumbs,
648
+ ...props$1,
649
+ defaultValue: normalize(defaultValue, min, max, step, minStepsBetweenThumbs),
650
+ value: props$1.value ? normalize(props$1.value, min, max, step, minStepsBetweenThumbs) : void 0,
651
+ max,
652
+ step,
653
+ min
654
+ };
655
+ },
656
+ initialState() {
657
+ return "idle";
658
+ },
659
+ context({ prop, bindable, getContext }) {
660
+ return {
661
+ thumbSize: bindable(() => ({ defaultValue: prop("thumbSize") || null })),
662
+ value: bindable(() => ({
663
+ defaultValue: prop("defaultValue"),
664
+ value: prop("value"),
665
+ isEqual: require_utils.isEqual,
666
+ hash(a) {
667
+ return a.join(",");
668
+ },
669
+ onChange(value) {
670
+ prop("onValueChange")?.({ value });
671
+ }
672
+ })),
673
+ focusedIndex: bindable(() => ({
674
+ defaultValue: -1,
675
+ onChange(value) {
676
+ const ctx = getContext();
677
+ prop("onFocusChange")?.({
678
+ focusedIndex: value,
679
+ value: ctx.get("value")
680
+ });
681
+ }
682
+ })),
683
+ fieldsetDisabled: bindable(() => ({ defaultValue: false }))
684
+ };
685
+ },
686
+ refs() {
687
+ return { thumbDragOffset: null };
688
+ },
689
+ computed: {
690
+ isHorizontal: ({ prop }) => prop("orientation") === "horizontal",
691
+ isVertical: ({ prop }) => prop("orientation") === "vertical",
692
+ isRtl: ({ prop }) => prop("orientation") === "horizontal" && prop("dir") === "rtl",
693
+ isDisabled: ({ context, prop }) => !!prop("disabled") || context.get("fieldsetDisabled"),
694
+ isInteractive: ({ prop, computed }) => !(prop("readOnly") || computed("isDisabled")),
695
+ hasMeasuredThumbSize: ({ context }) => context.get("thumbSize") != null,
696
+ valuePercent: require_core.memo(({ context, prop }) => [
697
+ context.get("value"),
698
+ prop("min"),
699
+ prop("max")
700
+ ], ([value, min, max]) => value.map((value$1) => 100 * require_utils.getValuePercent(value$1, min, max)))
701
+ },
702
+ watch({ track, action, context, computed, send }) {
703
+ track([() => context.hash("value")], () => {
704
+ action(["syncInputElements", "dispatchChangeEvent"]);
705
+ });
706
+ track([() => computed("isDisabled")], () => {
707
+ if (computed("isDisabled")) send({ type: "POINTER_CANCEL" });
708
+ });
709
+ },
710
+ effects: ["trackFormControlState", "trackThumbSize"],
711
+ on: {
712
+ SET_VALUE: [{
713
+ guard: "hasIndex",
714
+ actions: ["setValueAtIndex", "invokeOnChangeEnd"]
715
+ }, { actions: ["setValue", "invokeOnChangeEnd"] }],
716
+ INCREMENT: { actions: ["incrementThumbAtIndex", "invokeOnChangeEnd"] },
717
+ DECREMENT: { actions: ["decrementThumbAtIndex", "invokeOnChangeEnd"] }
718
+ },
719
+ states: {
720
+ idle: { on: {
721
+ POINTER_DOWN: {
722
+ target: "dragging",
723
+ actions: [
724
+ "setClosestThumbIndex",
725
+ "setPointerValue",
726
+ "focusActiveThumb"
727
+ ]
728
+ },
729
+ FOCUS: {
730
+ target: "focus",
731
+ actions: ["setFocusedIndex"]
732
+ },
733
+ THUMB_POINTER_DOWN: {
734
+ target: "dragging",
735
+ actions: [
736
+ "setFocusedIndex",
737
+ "setThumbDragOffset",
738
+ "focusActiveThumb"
739
+ ]
740
+ }
741
+ } },
742
+ focus: {
743
+ entry: ["focusActiveThumb"],
744
+ on: {
745
+ POINTER_DOWN: {
746
+ target: "dragging",
747
+ actions: [
748
+ "setClosestThumbIndex",
749
+ "setPointerValue",
750
+ "focusActiveThumb"
751
+ ]
752
+ },
753
+ THUMB_POINTER_DOWN: {
754
+ target: "dragging",
755
+ actions: [
756
+ "setFocusedIndex",
757
+ "setThumbDragOffset",
758
+ "focusActiveThumb"
759
+ ]
760
+ },
761
+ ARROW_DEC: { actions: ["decrementThumbAtIndex", "invokeOnChangeEnd"] },
762
+ ARROW_INC: { actions: ["incrementThumbAtIndex", "invokeOnChangeEnd"] },
763
+ HOME: { actions: ["setFocusedThumbToMin", "invokeOnChangeEnd"] },
764
+ END: { actions: ["setFocusedThumbToMax", "invokeOnChangeEnd"] },
765
+ BLUR: {
766
+ target: "idle",
767
+ actions: ["clearFocusedIndex"]
768
+ }
769
+ }
770
+ },
771
+ dragging: {
772
+ entry: ["focusActiveThumb"],
773
+ effects: ["trackPointerMove"],
774
+ on: {
775
+ POINTER_UP: {
776
+ target: "focus",
777
+ actions: ["invokeOnChangeEnd", "clearThumbDragOffset"]
778
+ },
779
+ POINTER_MOVE: { actions: ["setPointerValue"] },
780
+ POINTER_CANCEL: {
781
+ target: "idle",
782
+ actions: ["clearFocusedIndex", "clearThumbDragOffset"]
783
+ }
784
+ }
785
+ }
786
+ },
787
+ implementations: {
788
+ guards: { hasIndex: ({ event }) => event.index != null },
789
+ effects: {
790
+ trackFormControlState({ context, scope }) {
791
+ return require_dom_query.trackFormControl(getRootEl(scope), {
792
+ onFieldsetDisabledChange(disabled) {
793
+ context.set("fieldsetDisabled", disabled);
794
+ },
795
+ onFormReset() {
796
+ context.set("value", context.initial("value"));
797
+ }
798
+ });
799
+ },
800
+ trackPointerMove({ scope, send }) {
801
+ return require_dom_query.trackPointerMove(scope.getDoc(), {
802
+ onPointerMove(info) {
803
+ send({
804
+ type: "POINTER_MOVE",
805
+ point: info.point
806
+ });
807
+ },
808
+ onPointerUp() {
809
+ send({ type: "POINTER_UP" });
810
+ }
811
+ });
812
+ },
813
+ trackThumbSize({ context, scope, prop }) {
814
+ if (prop("thumbAlignment") !== "contain" || prop("thumbSize")) return;
815
+ const exec = (el) => {
816
+ const size = require_utils.pick(getOffsetRect(el), ["width", "height"]);
817
+ if (isEqualSize(context.get("thumbSize"), size)) return;
818
+ context.set("thumbSize", size);
819
+ };
820
+ const thumbEls = getThumbEls(scope);
821
+ thumbEls.forEach(exec);
822
+ return require_utils.callAll(...thumbEls.map((el) => require_dom_query.resizeObserverBorderBox.observe(el, () => exec(el))));
823
+ }
824
+ },
825
+ actions: {
826
+ dispatchChangeEvent({ context, scope }) {
827
+ dispatchChangeEvent(scope, context.get("value"));
828
+ },
829
+ syncInputElements({ context, scope }) {
830
+ context.get("value").forEach((value, index) => {
831
+ require_dom_query.setElementValue(getHiddenInputEl(scope, index), value.toString());
832
+ });
833
+ },
834
+ invokeOnChangeEnd({ prop, context }) {
835
+ queueMicrotask(() => {
836
+ prop("onValueChangeEnd")?.({ value: context.get("value") });
837
+ });
838
+ },
839
+ setClosestThumbIndex(params) {
840
+ const { context, event } = params;
841
+ const pointValue = getPointValue(params, event.point);
842
+ if (pointValue == null) return;
843
+ const focusedIndex = getClosestIndex(params, pointValue);
844
+ context.set("focusedIndex", focusedIndex);
845
+ },
846
+ setFocusedIndex(params) {
847
+ const { context, event } = params;
848
+ const movableIndex = selectMovableThumb(params, event.index);
849
+ context.set("focusedIndex", movableIndex);
850
+ },
851
+ clearFocusedIndex({ context }) {
852
+ context.set("focusedIndex", -1);
853
+ },
854
+ setThumbDragOffset(params) {
855
+ const { refs, event } = params;
856
+ refs.set("thumbDragOffset", event.offset ?? null);
857
+ },
858
+ clearThumbDragOffset({ refs }) {
859
+ refs.set("thumbDragOffset", null);
860
+ },
861
+ setPointerValue(params) {
862
+ queueMicrotask(() => {
863
+ const { context, event } = params;
864
+ const pointValue = getPointValue(params, event.point);
865
+ if (pointValue == null) return;
866
+ const focusedIndex = context.get("focusedIndex");
867
+ const value = constrainValue(params, pointValue, focusedIndex);
868
+ context.set("value", (prev) => require_utils.setValueAtIndex(prev, focusedIndex, value));
869
+ });
870
+ },
871
+ focusActiveThumb({ scope, context }) {
872
+ require_dom_query.raf(() => {
873
+ getThumbEl(scope, context.get("focusedIndex"))?.focus({ preventScroll: true });
874
+ });
875
+ },
876
+ decrementThumbAtIndex(params) {
877
+ const { context, event } = params;
878
+ const value = decrement(params, event.index, event.step);
879
+ context.set("value", value);
880
+ },
881
+ incrementThumbAtIndex(params) {
882
+ const { context, event } = params;
883
+ const value = increment(params, event.index, event.step);
884
+ context.set("value", value);
885
+ },
886
+ setFocusedThumbToMin(params) {
887
+ const { context } = params;
888
+ const index = context.get("focusedIndex");
889
+ const { min } = getRangeAtIndex(params, index);
890
+ context.set("value", (prev) => require_utils.setValueAtIndex(prev, index, min));
891
+ },
892
+ setFocusedThumbToMax(params) {
893
+ const { context } = params;
894
+ const index = context.get("focusedIndex");
895
+ const { max } = getRangeAtIndex(params, index);
896
+ context.set("value", (prev) => require_utils.setValueAtIndex(prev, index, max));
897
+ },
898
+ setValueAtIndex(params) {
899
+ const { context, event } = params;
900
+ const value = constrainValue(params, event.value, event.index);
901
+ context.set("value", (prev) => require_utils.setValueAtIndex(prev, event.index, value));
902
+ },
903
+ setValue(params) {
904
+ const { context, event } = params;
905
+ const value = normalizeValues(params, event.value);
906
+ context.set("value", value);
907
+ }
908
+ }
909
+ }
910
+ });
911
+
912
+ //#endregion
913
+ //#region src/machines/slider/slider.props.ts
914
+ const props = require_create_props.createProps()([
915
+ "aria-label",
916
+ "aria-labelledby",
917
+ "dir",
918
+ "disabled",
919
+ "form",
920
+ "getAriaValueText",
921
+ "getRootNode",
922
+ "id",
923
+ "ids",
924
+ "invalid",
925
+ "max",
926
+ "min",
927
+ "minStepsBetweenThumbs",
928
+ "name",
929
+ "onFocusChange",
930
+ "onValueChange",
931
+ "onValueChangeEnd",
932
+ "orientation",
933
+ "origin",
934
+ "readOnly",
935
+ "step",
936
+ "thumbAlignment",
937
+ "thumbAlignment",
938
+ "thumbSize",
939
+ "value",
940
+ "defaultValue"
941
+ ]);
942
+ const splitProps = require_utils.createSplitProps(props);
943
+ const thumbProps = require_create_props.createProps()(["index", "name"]);
944
+ const splitThumbProps = require_utils.createSplitProps(thumbProps);
945
+ const markerProps = require_create_props.createProps()(["value"]);
946
+ const splitMarkerProps = require_utils.createSplitProps(markerProps);
947
+
948
+ //#endregion
949
+ exports.anatomy = anatomy;
950
+ exports.connect = connect;
951
+ exports.machine = machine;
952
+ exports.markerProps = markerProps;
953
+ exports.props = props;
954
+ exports.splitMarkerProps = splitMarkerProps;
955
+ exports.splitProps = splitProps;
956
+ exports.splitThumbProps = splitThumbProps;
957
+ exports.thumbProps = thumbProps;