@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,25 @@
1
+ //#region src/shared/interact-outside/index.d.ts
2
+ interface InteractOutsideHandlers {
3
+ onPointerDownOutside?: ((event: PointerDownOutsideEvent) => void) | undefined;
4
+ onFocusOutside?: ((event: FocusOutsideEvent) => void) | undefined;
5
+ onInteractOutside?: ((event: InteractOutsideEvent) => void) | undefined;
6
+ }
7
+ interface InteractOutsideOptions extends InteractOutsideHandlers {
8
+ exclude?: ((target: HTMLElement) => boolean) | undefined;
9
+ defer?: boolean | undefined;
10
+ followControlledElements?: boolean | undefined;
11
+ }
12
+ interface EventDetails<T> {
13
+ originalEvent: T;
14
+ contextmenu: boolean;
15
+ focusable: boolean;
16
+ target: EventTarget;
17
+ }
18
+ type PointerDownOutsideEvent = CustomEvent<EventDetails<PointerEvent>>;
19
+ type FocusOutsideEvent = CustomEvent<EventDetails<FocusEvent>>;
20
+ type InteractOutsideEvent = PointerDownOutsideEvent | FocusOutsideEvent;
21
+ type MaybeElement = HTMLElement | null | undefined;
22
+ type NodeOrFn = MaybeElement | (() => MaybeElement);
23
+ declare function trackInteractOutside(nodeOrFn: NodeOrFn, options: InteractOutsideOptions): () => void;
24
+ //#endregion
25
+ export { InteractOutsideOptions as a, PointerDownOutsideEvent as c, InteractOutsideHandlers as i, trackInteractOutside as l, FocusOutsideEvent as n, MaybeElement as o, InteractOutsideEvent as r, NodeOrFn as s, EventDetails as t };
@@ -0,0 +1,114 @@
1
+ import * as _internationalized_date0 from "@internationalized/date";
2
+ import { Calendar, DateDuration, DateFormatter, DateValue } from "@internationalized/date";
3
+
4
+ //#region src/shared/date-utils/types.d.ts
5
+ type DateGranularity = "day" | "hour" | "minute" | "second" | "year" | "month";
6
+ type DateAlignment = "start" | "end" | "center";
7
+ type DateAvailableFn = (date: DateValue, locale: string) => boolean;
8
+ type DateAdjustFn = (options: {
9
+ startDate: DateValue;
10
+ focusedDate: DateValue;
11
+ }) => {
12
+ startDate: DateValue;
13
+ focusedDate: DateValue;
14
+ endDate: DateValue;
15
+ };
16
+ type DateRangePreset = "thisWeek" | "lastWeek" | "thisMonth" | "lastMonth" | "thisQuarter" | "lastQuarter" | "thisYear" | "lastYear" | "last3Days" | "last7Days" | "last14Days" | "last30Days" | "last90Days";
17
+ //#endregion
18
+ //#region src/shared/date-utils/align.d.ts
19
+ declare function alignDate(date: DateValue, alignment: DateAlignment, duration: DateDuration, locale: string, min?: DateValue | undefined, max?: DateValue | undefined): DateValue;
20
+ declare function alignStartDate(date: DateValue, startDate: DateValue, endDate: DateValue, duration: DateDuration, locale: string, min?: DateValue | undefined, max?: DateValue | undefined): DateValue;
21
+ //#endregion
22
+ //#region src/shared/date-utils/assertion.d.ts
23
+ declare function isDateEqual(dateA: DateValue | null | undefined, dateB?: DateValue | null): boolean;
24
+ declare function isDateUnavailable(date: DateValue | null, isUnavailable: DateAvailableFn | undefined, locale: string, minValue?: DateValue | null, maxValue?: DateValue | null): boolean;
25
+ declare function isDateOutsideRange(date: DateValue, startDate?: DateValue | null, endDate?: DateValue | null): boolean;
26
+ declare function isPreviousRangeInvalid(startDate: DateValue, minValue?: DateValue | null, maxValue?: DateValue | null): boolean;
27
+ declare function isNextRangeInvalid(endDate: DateValue, minValue?: DateValue | null, maxValue?: DateValue | null): boolean;
28
+ //#endregion
29
+ //#region src/shared/date-utils/constrain.d.ts
30
+ declare function alignCenter(date: DateValue, duration: DateDuration, locale: string, min?: DateValue, max?: DateValue): DateValue;
31
+ declare function alignStart(date: DateValue, duration: DateDuration, locale: string, min?: DateValue, max?: DateValue): DateValue;
32
+ declare function alignEnd(date: DateValue, duration: DateDuration, locale: string, min?: DateValue, max?: DateValue): DateValue;
33
+ declare function constrainStart(date: DateValue, aligned: DateValue, duration: DateDuration, locale: string, min?: DateValue, max?: DateValue): DateValue;
34
+ declare function constrainValue(date: DateValue, minValue?: DateValue, maxValue?: DateValue): DateValue;
35
+ //#endregion
36
+ //#region src/shared/date-utils/duration.d.ts
37
+ declare function getUnitDuration(duration: DateDuration): {
38
+ years?: number;
39
+ months?: number;
40
+ weeks?: number;
41
+ days?: number;
42
+ };
43
+ declare function getEndDate(startDate: DateValue, duration: DateDuration): _internationalized_date0.CalendarDate | _internationalized_date0.CalendarDateTime | _internationalized_date0.ZonedDateTime;
44
+ //#endregion
45
+ //#region src/shared/date-utils/format.d.ts
46
+ declare function formatRange(startDate: DateValue, endDate: DateValue, formatter: DateFormatter, toString: (start: string, end: string) => string, timeZone: string): string;
47
+ declare function formatSelectedDate(startDate: DateValue | null | undefined, endDate: DateValue | null, locale: string, timeZone: string): string;
48
+ declare function formatVisibleRange(startDate: DateValue, endDate: DateValue | null, locale: string, timeZone: string): string;
49
+ //#endregion
50
+ //#region src/shared/date-utils/formatter.d.ts
51
+ declare function getDayFormatter(locale: string, timeZone: string): DateFormatter;
52
+ declare function getMonthFormatter(locale: string, timeZone: string): DateFormatter;
53
+ //#endregion
54
+ //#region src/shared/date-utils/date-month.d.ts
55
+ declare function getStartOfWeek(date: DateValue, locale: string, firstDayOfWeek?: number): DateValue;
56
+ declare function getEndOfWeek(date: DateValue, locale: string, firstDayOfWeek?: number): DateValue;
57
+ declare function getDaysInWeek(weekIndex: number, from: DateValue, locale: string, firstDayOfWeek?: number): DateValue[];
58
+ declare function getMonthDays(from: DateValue, locale: string, numOfWeeks?: number, firstDayOfWeek?: number): DateValue[][];
59
+ declare function getWeekdayFormats(locale: string, timeZone: string): <T extends DateValue | Date>(value: T) => {
60
+ value: T;
61
+ short: string;
62
+ long: string;
63
+ narrow: string;
64
+ };
65
+ declare function getWeekDays(date: DateValue, startOfWeekProp: number | undefined, timeZone: string, locale: string): {
66
+ value: _internationalized_date0.CalendarDate | _internationalized_date0.CalendarDateTime | _internationalized_date0.ZonedDateTime;
67
+ short: string;
68
+ long: string;
69
+ narrow: string;
70
+ }[];
71
+ declare function getMonthNames(locale: string, format?: Intl.DateTimeFormatOptions["month"]): string[];
72
+ //#endregion
73
+ //#region src/shared/date-utils/date-year.d.ts
74
+ interface YearsRange {
75
+ from: number;
76
+ to: number;
77
+ }
78
+ declare function getYearsRange(range: YearsRange): number[];
79
+ declare function normalizeYear(year: string | null | undefined): string | undefined;
80
+ declare function getDecadeRange(year: number, opts?: {
81
+ strict?: boolean;
82
+ }): number[];
83
+ //#endregion
84
+ //#region src/shared/date-utils/mutation.d.ts
85
+ declare function getTodayDate(timeZone?: string): _internationalized_date0.CalendarDate;
86
+ declare function setCalendar(date: DateValue, calendar: Calendar): _internationalized_date0.CalendarDateTime;
87
+ declare function setDate(date: DateValue, startDate: DateValue, isDateUnavailable: DateAvailableFn, locale: string, minValue: DateValue, maxValue: DateValue): DateValue | undefined;
88
+ declare function getPreviousAvailableDate(date: DateValue, minValue: DateValue, locale: string, isDateUnavailable?: DateAvailableFn): DateValue | undefined;
89
+ //#endregion
90
+ //#region src/shared/date-utils/pagination.d.ts
91
+ interface AdjustDateParams {
92
+ startDate: DateValue;
93
+ focusedDate: DateValue;
94
+ }
95
+ interface AdjustDateReturn extends AdjustDateParams {
96
+ endDate: DateValue;
97
+ }
98
+ declare function getAdjustedDateFn(visibleDuration: DateDuration, locale: string, minValue?: DateValue, maxValue?: DateValue): (options: AdjustDateParams) => AdjustDateReturn;
99
+ declare function getNextPage(focusedDate: DateValue, startDate: DateValue, visibleDuration: DateDuration, locale: string, minValue?: DateValue, maxValue?: DateValue): AdjustDateReturn;
100
+ declare function getPreviousPage(focusedDate: DateValue, startDate: DateValue, visibleDuration: DateDuration, locale: string, minValue?: DateValue, maxValue?: DateValue): AdjustDateReturn;
101
+ declare function getNextRow(focusedDate: DateValue, startDate: DateValue, visibleDuration: DateDuration, locale: string, minValue?: DateValue, maxValue?: DateValue): AdjustDateReturn | undefined;
102
+ declare function getPreviousRow(focusedDate: DateValue, startDate: DateValue, visibleDuration: DateDuration, locale: string, minValue?: DateValue, maxValue?: DateValue): AdjustDateReturn | undefined;
103
+ declare function getSectionStart(focusedDate: DateValue, startDate: DateValue, visibleDuration: DateDuration, locale: string, minValue?: DateValue, maxValue?: DateValue): AdjustDateReturn | undefined;
104
+ declare function getSectionEnd(focusedDate: DateValue, startDate: DateValue, visibleDuration: DateDuration, locale: string, minValue?: DateValue, maxValue?: DateValue): AdjustDateReturn | undefined;
105
+ declare function getNextSection(focusedDate: DateValue, startDate: DateValue, larger: boolean, visibleDuration: DateDuration, locale: string, minValue?: DateValue, maxValue?: DateValue): AdjustDateReturn | undefined;
106
+ declare function getPreviousSection(focusedDate: DateValue, startDate: DateValue, larger: boolean, visibleDuration: DateDuration, locale: string, minValue?: DateValue, maxValue?: DateValue): AdjustDateReturn | undefined;
107
+ //#endregion
108
+ //#region src/shared/date-utils/parse-date.d.ts
109
+ declare function parseDateString(date: string, locale: string, timeZone: string): DateValue | undefined;
110
+ //#endregion
111
+ //#region src/shared/date-utils/preset.d.ts
112
+ declare function getDateRangePreset(preset: DateRangePreset, locale: string, timeZone: string): [DateValue, DateValue];
113
+ //#endregion
114
+ export { getMonthFormatter as A, constrainValue as B, getEndOfWeek as C, getWeekDays as D, getStartOfWeek as E, getUnitDuration as F, isPreviousRangeInvalid as G, isDateOutsideRange as H, alignCenter as I, DateAdjustFn as J, alignDate as K, alignEnd as L, formatSelectedDate as M, formatVisibleRange as N, getWeekdayFormats as O, getEndDate as P, alignStart as R, getDaysInWeek as S, getMonthNames as T, isDateUnavailable as U, isDateEqual as V, isNextRangeInvalid as W, DateRangePreset as X, DateGranularity as Y, setDate as _, getAdjustedDateFn as a, getYearsRange as b, getNextSection as c, getPreviousSection as d, getSectionEnd as f, setCalendar as g, getTodayDate as h, AdjustDateReturn as i, formatRange as j, getDayFormatter as k, getPreviousPage as l, getPreviousAvailableDate as m, parseDateString as n, getNextPage as o, getSectionStart as p, alignStartDate as q, AdjustDateParams as r, getNextRow as s, getDateRangePreset as t, getPreviousRow as u, YearsRange as v, getMonthDays as w, normalizeYear as x, getDecadeRange as y, constrainStart as z };
@@ -0,0 +1,15 @@
1
+ //#region src/shared/live-region/index.d.ts
2
+ interface LiveRegionOptions {
3
+ level: "polite" | "assertive";
4
+ document?: Document | undefined;
5
+ root?: HTMLElement | null | undefined;
6
+ delay?: number | undefined;
7
+ }
8
+ type LiveRegion = ReturnType<typeof createLiveRegion>;
9
+ declare function createLiveRegion(opts?: Partial<LiveRegionOptions>): {
10
+ announce: (message: string, delay?: number) => void;
11
+ destroy: () => void;
12
+ toJSON(): string;
13
+ };
14
+ //#endregion
15
+ export { LiveRegionOptions as n, createLiveRegion as r, LiveRegion as t };
@@ -0,0 +1,15 @@
1
+ //#region src/shared/live-region/index.d.ts
2
+ interface LiveRegionOptions {
3
+ level: "polite" | "assertive";
4
+ document?: Document | undefined;
5
+ root?: HTMLElement | null | undefined;
6
+ delay?: number | undefined;
7
+ }
8
+ type LiveRegion = ReturnType<typeof createLiveRegion>;
9
+ declare function createLiveRegion(opts?: Partial<LiveRegionOptions>): {
10
+ announce: (message: string, delay?: number) => void;
11
+ destroy: () => void;
12
+ toJSON(): string;
13
+ };
14
+ //#endregion
15
+ export { LiveRegionOptions as n, createLiveRegion as r, LiveRegion as t };
@@ -0,0 +1,115 @@
1
+ import { AutoUpdateOptions, Boundary, ComputePositionReturn, Placement, Placement as Placement$1, VirtualElement } from "@floating-ui/dom";
2
+
3
+ //#region src/shared/popper/types.d.ts
4
+ type MaybeRectElement = HTMLElement | VirtualElement | null;
5
+ type MaybeElement = HTMLElement | null;
6
+ type MaybeFn<T> = T | (() => T);
7
+ type PlacementSide = "top" | "right" | "bottom" | "left";
8
+ type PlacementAlign = "start" | "center" | "end";
9
+ interface AnchorRect {
10
+ x?: number | undefined;
11
+ y?: number | undefined;
12
+ width?: number | undefined;
13
+ height?: number | undefined;
14
+ }
15
+ interface PositioningOptions {
16
+ hideWhenDetached?: boolean | undefined;
17
+ strategy?: "absolute" | "fixed" | undefined;
18
+ placement?: Placement$1 | undefined;
19
+ offset?: {
20
+ mainAxis?: number | undefined;
21
+ crossAxis?: number | undefined;
22
+ } | undefined;
23
+ gutter?: number | undefined;
24
+ shift?: number | undefined;
25
+ overflowPadding?: number | undefined;
26
+ arrowPadding?: number | undefined;
27
+ flip?: boolean | Placement$1[] | undefined;
28
+ slide?: boolean | undefined;
29
+ overlap?: boolean | undefined;
30
+ sameWidth?: boolean | undefined;
31
+ fitViewport?: boolean | undefined;
32
+ boundary?: (() => Boundary) | Boundary | "clipping-ancestors" | undefined;
33
+ listeners?: boolean | AutoUpdateOptions | undefined;
34
+ onComplete?: ((data: ComputePositionReturn) => void) | undefined;
35
+ onPositioned?: ((data: {
36
+ placed: boolean;
37
+ }) => void) | undefined;
38
+ getAnchorRect?: ((element: HTMLElement | VirtualElement | null) => AnchorRect | null) | undefined;
39
+ updatePosition?: ((data: {
40
+ updatePosition: () => Promise<void>;
41
+ floatingElement: HTMLElement | null;
42
+ }) => void | Promise<void>) | undefined;
43
+ }
44
+ //#endregion
45
+ //#region src/shared/popper/get-placement.d.ts
46
+ declare function getPlacement(referenceOrFn: MaybeFn<MaybeRectElement>, floatingOrFn: MaybeFn<MaybeElement>, opts?: PositioningOptions & {
47
+ defer?: boolean | undefined;
48
+ }): () => void;
49
+ //#endregion
50
+ //#region src/shared/popper/middleware.d.ts
51
+ declare const cssVars: {
52
+ arrowSize: {
53
+ variable: string;
54
+ reference: string;
55
+ };
56
+ arrowSizeHalf: {
57
+ variable: string;
58
+ reference: string;
59
+ };
60
+ arrowBg: {
61
+ variable: string;
62
+ reference: string;
63
+ };
64
+ transformOrigin: {
65
+ variable: string;
66
+ reference: string;
67
+ };
68
+ arrowOffset: {
69
+ variable: string;
70
+ reference: string;
71
+ };
72
+ };
73
+ //#endregion
74
+ //#region src/shared/popper/get-styles.d.ts
75
+ interface GetPlacementStylesOptions {
76
+ placement?: Placement | undefined;
77
+ }
78
+ declare function getPlacementStyles(options?: Pick<PositioningOptions, "placement" | "sameWidth" | "fitViewport" | "strategy">): {
79
+ arrow: {
80
+ readonly [cssVars.arrowSizeHalf.variable]: `calc(${string} / 2)`;
81
+ readonly [cssVars.arrowOffset.variable]: `calc(${string} * -1)`;
82
+ readonly position: "absolute";
83
+ readonly width: string;
84
+ readonly height: string;
85
+ };
86
+ arrowTip: {
87
+ readonly transform: any;
88
+ readonly background: string;
89
+ readonly top: "0";
90
+ readonly left: "0";
91
+ readonly width: "100%";
92
+ readonly height: "100%";
93
+ readonly position: "absolute";
94
+ readonly zIndex: "inherit";
95
+ };
96
+ floating: {
97
+ readonly position: "absolute" | "fixed";
98
+ readonly isolation: "isolate";
99
+ readonly minWidth: "max-content" | undefined;
100
+ readonly width: "var(--reference-width)" | undefined;
101
+ readonly maxWidth: "var(--available-width)" | undefined;
102
+ readonly maxHeight: "var(--available-height)" | undefined;
103
+ readonly pointerEvents: "none" | undefined;
104
+ readonly top: "0px";
105
+ readonly left: "0px";
106
+ readonly transform: "translate3d(var(--x), var(--y), 0)" | "translate3d(0, -100vh, 0)";
107
+ readonly zIndex: "var(--z-index)";
108
+ };
109
+ };
110
+ //#endregion
111
+ //#region src/shared/popper/placement.d.ts
112
+ declare function isValidPlacement(v: string): v is Placement;
113
+ declare function getPlacementSide(placement: Placement): PlacementSide;
114
+ //#endregion
115
+ export { getPlacement as a, Boundary as c, PlacementAlign as d, PlacementSide as f, getPlacementStyles as i, ComputePositionReturn as l, isValidPlacement as n, AnchorRect as o, PositioningOptions as p, GetPlacementStylesOptions as r, AutoUpdateOptions as s, getPlacementSide as t, Placement$1 as u };
package/dist/index.cjs ADDED
File without changes
@@ -0,0 +1 @@
1
+ export { };
@@ -0,0 +1 @@
1
+ export { };
package/dist/index.mjs ADDED
@@ -0,0 +1 @@
1
+ export { };
@@ -0,0 +1,200 @@
1
+ import { A as getNearestOverflowAncestor, Kt as isControlledElement, Qt as getDocument, U as raf, Xt as contains, et as isFocusable, ft as getEventTarget, ht as isContextMenuEvent, ln as isHTMLElement, pn as isShadowRoot, rn as getWindow, st as addDomEvent, zt as isTouchDevice } from "./dom-query-DFCRhyj1.mjs";
2
+ import { W as callAll } from "./utils-BZyrxWWR.mjs";
3
+
4
+ //#region src/shared/interact-outside/frame-utils.ts
5
+ function getWindowFrames(win) {
6
+ const frames = {
7
+ each(cb) {
8
+ for (let i = 0; i < win.frames?.length; i += 1) {
9
+ const frame = win.frames[i];
10
+ if (frame) cb(frame);
11
+ }
12
+ },
13
+ addEventListener(event, listener, options) {
14
+ frames.each((frame) => {
15
+ try {
16
+ frame.document.addEventListener(event, listener, options);
17
+ } catch {}
18
+ });
19
+ return () => {
20
+ try {
21
+ frames.removeEventListener(event, listener, options);
22
+ } catch {}
23
+ };
24
+ },
25
+ removeEventListener(event, listener, options) {
26
+ frames.each((frame) => {
27
+ try {
28
+ frame.document.removeEventListener(event, listener, options);
29
+ } catch {}
30
+ });
31
+ }
32
+ };
33
+ return frames;
34
+ }
35
+ function getParentWindow(win) {
36
+ const parent = win.frameElement != null ? win.parent : null;
37
+ return {
38
+ addEventListener: (event, listener, options) => {
39
+ try {
40
+ parent?.addEventListener(event, listener, options);
41
+ } catch {}
42
+ return () => {
43
+ try {
44
+ parent?.removeEventListener(event, listener, options);
45
+ } catch {}
46
+ };
47
+ },
48
+ removeEventListener: (event, listener, options) => {
49
+ try {
50
+ parent?.removeEventListener(event, listener, options);
51
+ } catch {}
52
+ }
53
+ };
54
+ }
55
+
56
+ //#endregion
57
+ //#region src/shared/interact-outside/index.ts
58
+ const POINTER_OUTSIDE_EVENT = "pointerdown.outside";
59
+ const FOCUS_OUTSIDE_EVENT = "focus.outside";
60
+ function isComposedPathFocusable(composedPath) {
61
+ for (const node of composedPath) if (isHTMLElement(node) && isFocusable(node)) return true;
62
+ return false;
63
+ }
64
+ const isPointerEvent = (event) => "clientY" in event;
65
+ function isEventPointWithin(node, event) {
66
+ if (!isPointerEvent(event) || !node) return false;
67
+ const rect = node.getBoundingClientRect();
68
+ if (rect.width === 0 || rect.height === 0) return false;
69
+ return rect.top <= event.clientY && event.clientY <= rect.top + rect.height && rect.left <= event.clientX && event.clientX <= rect.left + rect.width;
70
+ }
71
+ function isPointInRect(rect, point) {
72
+ return rect.y <= point.y && point.y <= rect.y + rect.height && rect.x <= point.x && point.x <= rect.x + rect.width;
73
+ }
74
+ function isEventWithinScrollbar(event, ancestor) {
75
+ if (!ancestor || !isPointerEvent(event)) return false;
76
+ const isScrollableY = ancestor.scrollHeight > ancestor.clientHeight;
77
+ const onScrollbarY = isScrollableY && event.clientX > ancestor.offsetLeft + ancestor.clientWidth;
78
+ const isScrollableX = ancestor.scrollWidth > ancestor.clientWidth;
79
+ const onScrollbarX = isScrollableX && event.clientY > ancestor.offsetTop + ancestor.clientHeight;
80
+ if (!isPointInRect({
81
+ x: ancestor.offsetLeft,
82
+ y: ancestor.offsetTop,
83
+ width: ancestor.clientWidth + (isScrollableY ? 16 : 0),
84
+ height: ancestor.clientHeight + (isScrollableX ? 16 : 0)
85
+ }, {
86
+ x: event.clientX,
87
+ y: event.clientY
88
+ })) return false;
89
+ return onScrollbarY || onScrollbarX;
90
+ }
91
+ function trackInteractOutsideImpl(node, options) {
92
+ const { exclude, onFocusOutside, onPointerDownOutside, onInteractOutside, defer, followControlledElements = true } = options;
93
+ if (!node) return;
94
+ const doc = getDocument(node);
95
+ const win = getWindow(node);
96
+ const frames = getWindowFrames(win);
97
+ const parentWin = getParentWindow(win);
98
+ function isEventOutside(event, target) {
99
+ if (!isHTMLElement(target)) return false;
100
+ if (!target.isConnected) return false;
101
+ if (contains(node, target)) return false;
102
+ if (isEventPointWithin(node, event)) return false;
103
+ if (followControlledElements && isControlledElement(node, target)) return false;
104
+ const triggerEl = doc.querySelector(`[aria-controls="${node.id}"]`);
105
+ if (triggerEl) {
106
+ if (isEventWithinScrollbar(event, getNearestOverflowAncestor(triggerEl))) return false;
107
+ }
108
+ if (isEventWithinScrollbar(event, getNearestOverflowAncestor(node))) return false;
109
+ return !exclude?.(target);
110
+ }
111
+ const pointerdownCleanups = /* @__PURE__ */ new Set();
112
+ const isInShadowRoot = isShadowRoot(node?.getRootNode());
113
+ function onPointerDown(event) {
114
+ function handler(clickEvent) {
115
+ const func = defer && !isTouchDevice() ? raf : (v) => v();
116
+ const evt = clickEvent ?? event;
117
+ const composedPath = evt?.composedPath?.() ?? [evt?.target];
118
+ func(() => {
119
+ const target = isInShadowRoot ? composedPath[0] : getEventTarget(event);
120
+ if (!node || !isEventOutside(event, target)) return;
121
+ if (onPointerDownOutside || onInteractOutside) {
122
+ const handler$1 = callAll(onPointerDownOutside, onInteractOutside);
123
+ node.addEventListener(POINTER_OUTSIDE_EVENT, handler$1, { once: true });
124
+ }
125
+ fireCustomEvent(node, POINTER_OUTSIDE_EVENT, {
126
+ bubbles: false,
127
+ cancelable: true,
128
+ detail: {
129
+ originalEvent: evt,
130
+ contextmenu: isContextMenuEvent(evt),
131
+ focusable: isComposedPathFocusable(composedPath),
132
+ target
133
+ }
134
+ });
135
+ });
136
+ }
137
+ if (event.pointerType === "touch") {
138
+ pointerdownCleanups.forEach((fn) => fn());
139
+ pointerdownCleanups.add(addDomEvent(doc, "click", handler, { once: true }));
140
+ pointerdownCleanups.add(parentWin.addEventListener("click", handler, { once: true }));
141
+ pointerdownCleanups.add(frames.addEventListener("click", handler, { once: true }));
142
+ } else handler();
143
+ }
144
+ const cleanups = /* @__PURE__ */ new Set();
145
+ const timer = setTimeout(() => {
146
+ cleanups.add(addDomEvent(doc, "pointerdown", onPointerDown, true));
147
+ cleanups.add(parentWin.addEventListener("pointerdown", onPointerDown, true));
148
+ cleanups.add(frames.addEventListener("pointerdown", onPointerDown, true));
149
+ }, 0);
150
+ function onFocusin(event) {
151
+ (defer ? raf : (v) => v())(() => {
152
+ const composedPath = event?.composedPath?.() ?? [event?.target];
153
+ const target = isInShadowRoot ? composedPath[0] : getEventTarget(event);
154
+ if (!node || !isEventOutside(event, target)) return;
155
+ if (onFocusOutside || onInteractOutside) {
156
+ const handler = callAll(onFocusOutside, onInteractOutside);
157
+ node.addEventListener(FOCUS_OUTSIDE_EVENT, handler, { once: true });
158
+ }
159
+ fireCustomEvent(node, FOCUS_OUTSIDE_EVENT, {
160
+ bubbles: false,
161
+ cancelable: true,
162
+ detail: {
163
+ originalEvent: event,
164
+ contextmenu: false,
165
+ focusable: isFocusable(target),
166
+ target
167
+ }
168
+ });
169
+ });
170
+ }
171
+ if (!isTouchDevice()) {
172
+ cleanups.add(addDomEvent(doc, "focusin", onFocusin, true));
173
+ cleanups.add(parentWin.addEventListener("focusin", onFocusin, true));
174
+ cleanups.add(frames.addEventListener("focusin", onFocusin, true));
175
+ }
176
+ return () => {
177
+ clearTimeout(timer);
178
+ pointerdownCleanups.forEach((fn) => fn());
179
+ cleanups.forEach((fn) => fn());
180
+ };
181
+ }
182
+ function trackInteractOutside(nodeOrFn, options) {
183
+ const { defer } = options;
184
+ const func = defer ? raf : (v) => v();
185
+ const cleanups = [];
186
+ cleanups.push(func(() => {
187
+ const node = typeof nodeOrFn === "function" ? nodeOrFn() : nodeOrFn;
188
+ cleanups.push(trackInteractOutsideImpl(node, options));
189
+ }));
190
+ return () => {
191
+ cleanups.forEach((fn) => fn?.());
192
+ };
193
+ }
194
+ function fireCustomEvent(el, type, init) {
195
+ const event = new (el.ownerDocument.defaultView || window).CustomEvent(type, init);
196
+ return el.dispatchEvent(event);
197
+ }
198
+
199
+ //#endregion
200
+ export { trackInteractOutside as t };