@selvajs/selva 4.3.5 → 4.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1266) hide show
  1. package/build/client/_app/immutable/assets/0.fkooa_RK.css +1 -0
  2. package/build/client/_app/immutable/assets/0.fkooa_RK.css.br +0 -0
  3. package/build/client/_app/immutable/assets/0.fkooa_RK.css.gz +0 -0
  4. package/build/client/_app/immutable/assets/rhino3dm.BI8ESrUA.wasm +0 -0
  5. package/build/client/_app/immutable/assets/rhino3dm.BI8ESrUA.wasm.br +0 -0
  6. package/build/client/_app/immutable/assets/rhino3dm.BI8ESrUA.wasm.gz +0 -0
  7. package/build/client/_app/immutable/chunks/-xEd7dwr.js +35 -0
  8. package/build/client/_app/immutable/chunks/-xEd7dwr.js.br +0 -0
  9. package/build/client/_app/immutable/chunks/-xEd7dwr.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/13pdkq-i.js +1 -0
  11. package/build/client/_app/immutable/chunks/13pdkq-i.js.br +0 -0
  12. package/build/client/_app/immutable/chunks/13pdkq-i.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/2BnY_oab.js +1 -0
  14. package/build/client/_app/immutable/chunks/2BnY_oab.js.br +0 -0
  15. package/build/client/_app/immutable/chunks/2BnY_oab.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/4WJ3PVN5.js +1 -0
  17. package/build/client/_app/immutable/chunks/4WJ3PVN5.js.br +0 -0
  18. package/build/client/_app/immutable/chunks/4WJ3PVN5.js.gz +0 -0
  19. package/build/client/_app/immutable/chunks/5h7wo9xN.js +1 -0
  20. package/build/client/_app/immutable/chunks/5h7wo9xN.js.br +0 -0
  21. package/build/client/_app/immutable/chunks/5h7wo9xN.js.gz +0 -0
  22. package/build/client/_app/immutable/chunks/B3KcsPFR.js +1 -0
  23. package/build/client/_app/immutable/chunks/B3KcsPFR.js.br +0 -0
  24. package/build/client/_app/immutable/chunks/B3KcsPFR.js.gz +0 -0
  25. package/build/client/_app/immutable/chunks/B48NJnzU.js +1 -0
  26. package/build/client/_app/immutable/chunks/B48NJnzU.js.br +0 -0
  27. package/build/client/_app/immutable/chunks/B48NJnzU.js.gz +0 -0
  28. package/build/client/_app/immutable/chunks/B5HD-6Ib.js +1 -0
  29. package/build/client/_app/immutable/chunks/B5HD-6Ib.js.br +0 -0
  30. package/build/client/_app/immutable/chunks/B5HD-6Ib.js.gz +0 -0
  31. package/build/client/_app/immutable/chunks/BH9oGrlA.js +1 -0
  32. package/build/client/_app/immutable/chunks/BH9oGrlA.js.br +0 -0
  33. package/build/client/_app/immutable/chunks/BH9oGrlA.js.gz +0 -0
  34. package/build/client/_app/immutable/chunks/BHzbkLpq.js +1 -0
  35. package/build/client/_app/immutable/chunks/BHzbkLpq.js.br +0 -0
  36. package/build/client/_app/immutable/chunks/BHzbkLpq.js.gz +0 -0
  37. package/build/client/_app/immutable/chunks/BKZ_D8Qd.js +1 -0
  38. package/build/client/_app/immutable/chunks/BKZ_D8Qd.js.br +0 -0
  39. package/build/client/_app/immutable/chunks/BKZ_D8Qd.js.gz +0 -0
  40. package/build/client/_app/immutable/chunks/BMNUAT2D.js +1 -0
  41. package/build/client/_app/immutable/chunks/BMNUAT2D.js.br +0 -0
  42. package/build/client/_app/immutable/chunks/BMNUAT2D.js.gz +0 -0
  43. package/build/client/_app/immutable/chunks/BNs1__IY.js +1 -0
  44. package/build/client/_app/immutable/chunks/BNs1__IY.js.br +0 -0
  45. package/build/client/_app/immutable/chunks/BNs1__IY.js.gz +0 -0
  46. package/build/client/_app/immutable/chunks/BUqheMDA.js +1 -0
  47. package/build/client/_app/immutable/chunks/BUqheMDA.js.br +0 -0
  48. package/build/client/_app/immutable/chunks/BUqheMDA.js.gz +0 -0
  49. package/build/client/_app/immutable/chunks/Ba74WbdD.js +1 -0
  50. package/build/client/_app/immutable/chunks/Ba74WbdD.js.br +0 -0
  51. package/build/client/_app/immutable/chunks/Ba74WbdD.js.gz +0 -0
  52. package/build/client/_app/immutable/chunks/Bex2dy3F.js +1 -0
  53. package/build/client/_app/immutable/chunks/Bex2dy3F.js.br +0 -0
  54. package/build/client/_app/immutable/chunks/Bex2dy3F.js.gz +0 -0
  55. package/build/client/_app/immutable/chunks/BfraRswf.js +1 -0
  56. package/build/client/_app/immutable/chunks/BfraRswf.js.br +0 -0
  57. package/build/client/_app/immutable/chunks/BfraRswf.js.gz +0 -0
  58. package/build/client/_app/immutable/chunks/BjB88iwt.js +1 -0
  59. package/build/client/_app/immutable/chunks/BjB88iwt.js.br +0 -0
  60. package/build/client/_app/immutable/chunks/BjB88iwt.js.gz +0 -0
  61. package/build/client/_app/immutable/chunks/BoqXamYe.js +1 -0
  62. package/build/client/_app/immutable/chunks/BoqXamYe.js.br +0 -0
  63. package/build/client/_app/immutable/chunks/BoqXamYe.js.gz +0 -0
  64. package/build/client/_app/immutable/chunks/BsZHa2Wi.js +1 -0
  65. package/build/client/_app/immutable/chunks/BsZHa2Wi.js.br +0 -0
  66. package/build/client/_app/immutable/chunks/BsZHa2Wi.js.gz +0 -0
  67. package/build/client/_app/immutable/chunks/C-j7zMFr.js +1 -0
  68. package/build/client/_app/immutable/chunks/C-j7zMFr.js.br +0 -0
  69. package/build/client/_app/immutable/chunks/C-j7zMFr.js.gz +0 -0
  70. package/build/client/_app/immutable/chunks/CBjt6cm5.js +1 -0
  71. package/build/client/_app/immutable/chunks/CBjt6cm5.js.br +1 -0
  72. package/build/client/_app/immutable/chunks/CBjt6cm5.js.gz +0 -0
  73. package/build/client/_app/immutable/chunks/CE8BcsFf.js +1 -0
  74. package/build/client/_app/immutable/chunks/CE8BcsFf.js.br +0 -0
  75. package/build/client/_app/immutable/chunks/CE8BcsFf.js.gz +0 -0
  76. package/build/client/_app/immutable/chunks/CJPg7PqR.js +1 -0
  77. package/build/client/_app/immutable/chunks/CJPg7PqR.js.br +0 -0
  78. package/build/client/_app/immutable/chunks/CJPg7PqR.js.gz +0 -0
  79. package/build/client/_app/immutable/chunks/CO55fzTt.js +1 -0
  80. package/build/client/_app/immutable/chunks/CO55fzTt.js.br +0 -0
  81. package/build/client/_app/immutable/chunks/CO55fzTt.js.gz +0 -0
  82. package/build/client/_app/immutable/chunks/COSBQK9i.js +1 -0
  83. package/build/client/_app/immutable/chunks/COSBQK9i.js.br +0 -0
  84. package/build/client/_app/immutable/chunks/COSBQK9i.js.gz +0 -0
  85. package/build/client/_app/immutable/chunks/COWz2et1.js +1 -0
  86. package/build/client/_app/immutable/chunks/COWz2et1.js.br +0 -0
  87. package/build/client/_app/immutable/chunks/COWz2et1.js.gz +0 -0
  88. package/build/client/_app/immutable/chunks/CQerFpzT.js +1 -0
  89. package/build/client/_app/immutable/chunks/CQerFpzT.js.br +0 -0
  90. package/build/client/_app/immutable/chunks/CQerFpzT.js.gz +0 -0
  91. package/build/client/_app/immutable/chunks/Cauzi832.js +1 -0
  92. package/build/client/_app/immutable/chunks/Cauzi832.js.br +0 -0
  93. package/build/client/_app/immutable/chunks/Cauzi832.js.gz +0 -0
  94. package/build/client/_app/immutable/chunks/CcBbOJ-v.js +1 -0
  95. package/build/client/_app/immutable/chunks/CcBbOJ-v.js.br +2 -0
  96. package/build/client/_app/immutable/chunks/CcBbOJ-v.js.gz +0 -0
  97. package/build/client/_app/immutable/chunks/Ch5nD1rA.js +1 -0
  98. package/build/client/_app/immutable/chunks/Ch5nD1rA.js.br +0 -0
  99. package/build/client/_app/immutable/chunks/Ch5nD1rA.js.gz +0 -0
  100. package/build/client/_app/immutable/chunks/Ckd6DpGW.js +1 -0
  101. package/build/client/_app/immutable/chunks/Ckd6DpGW.js.br +0 -0
  102. package/build/client/_app/immutable/chunks/Ckd6DpGW.js.gz +0 -0
  103. package/build/client/_app/immutable/chunks/Cpd8PqU3.js +1 -0
  104. package/build/client/_app/immutable/chunks/Cpd8PqU3.js.br +0 -0
  105. package/build/client/_app/immutable/chunks/Cpd8PqU3.js.gz +0 -0
  106. package/build/client/_app/immutable/chunks/CwEiVMBL.js +1 -0
  107. package/build/client/_app/immutable/chunks/CwEiVMBL.js.br +0 -0
  108. package/build/client/_app/immutable/chunks/CwEiVMBL.js.gz +0 -0
  109. package/build/client/_app/immutable/chunks/D9MTzuwb.js +1 -0
  110. package/build/client/_app/immutable/chunks/D9MTzuwb.js.br +0 -0
  111. package/build/client/_app/immutable/chunks/D9MTzuwb.js.gz +0 -0
  112. package/build/client/_app/immutable/chunks/D9Y6MiT8.js +9 -0
  113. package/build/client/_app/immutable/chunks/D9Y6MiT8.js.br +0 -0
  114. package/build/client/_app/immutable/chunks/D9Y6MiT8.js.gz +0 -0
  115. package/build/client/_app/immutable/chunks/DApsykQI.js +1 -0
  116. package/build/client/_app/immutable/chunks/DApsykQI.js.br +0 -0
  117. package/build/client/_app/immutable/chunks/DApsykQI.js.gz +0 -0
  118. package/build/client/_app/immutable/chunks/DC8WqQE0.js +1 -0
  119. package/build/client/_app/immutable/chunks/DC8WqQE0.js.br +0 -0
  120. package/build/client/_app/immutable/chunks/DC8WqQE0.js.gz +0 -0
  121. package/build/client/_app/immutable/chunks/DCgyaAAq.js +1 -0
  122. package/build/client/_app/immutable/chunks/DCgyaAAq.js.br +0 -0
  123. package/build/client/_app/immutable/chunks/DCgyaAAq.js.gz +0 -0
  124. package/build/client/_app/immutable/chunks/DFnVpznB.js +1 -0
  125. package/build/client/_app/immutable/chunks/DFnVpznB.js.br +4 -0
  126. package/build/client/_app/immutable/chunks/DFnVpznB.js.gz +0 -0
  127. package/build/client/_app/immutable/chunks/DH_OLMrQ.js +1 -0
  128. package/build/client/_app/immutable/chunks/DH_OLMrQ.js.br +0 -0
  129. package/build/client/_app/immutable/chunks/DH_OLMrQ.js.gz +0 -0
  130. package/build/client/_app/immutable/chunks/DU8tQv0c.js +1 -0
  131. package/build/client/_app/immutable/chunks/DU8tQv0c.js.br +0 -0
  132. package/build/client/_app/immutable/chunks/DU8tQv0c.js.gz +0 -0
  133. package/build/client/_app/immutable/chunks/DUpVdSFf.js +1 -0
  134. package/build/client/_app/immutable/chunks/DUpVdSFf.js.br +0 -0
  135. package/build/client/_app/immutable/chunks/DUpVdSFf.js.gz +0 -0
  136. package/build/client/_app/immutable/chunks/D_C_YIH8.js +1 -0
  137. package/build/client/_app/immutable/chunks/D_C_YIH8.js.br +0 -0
  138. package/build/client/_app/immutable/chunks/D_C_YIH8.js.gz +0 -0
  139. package/build/client/_app/immutable/chunks/Db5P7BwC.js +64 -0
  140. package/build/client/_app/immutable/chunks/Db5P7BwC.js.br +0 -0
  141. package/build/client/_app/immutable/chunks/Db5P7BwC.js.gz +0 -0
  142. package/build/client/_app/immutable/chunks/DfcDRMtE.js +1 -0
  143. package/build/client/_app/immutable/chunks/DfcDRMtE.js.br +0 -0
  144. package/build/client/_app/immutable/chunks/DfcDRMtE.js.gz +0 -0
  145. package/build/client/_app/immutable/chunks/DnURu9OT.js +1 -0
  146. package/build/client/_app/immutable/chunks/DnURu9OT.js.br +0 -0
  147. package/build/client/_app/immutable/chunks/DnURu9OT.js.gz +0 -0
  148. package/build/client/_app/immutable/chunks/DsuMOTav.js +2 -0
  149. package/build/client/_app/immutable/chunks/DsuMOTav.js.br +0 -0
  150. package/build/client/_app/immutable/chunks/DsuMOTav.js.gz +0 -0
  151. package/build/client/_app/immutable/chunks/Dtx1M6QG.js +1 -0
  152. package/build/client/_app/immutable/chunks/Dtx1M6QG.js.br +0 -0
  153. package/build/client/_app/immutable/chunks/Dtx1M6QG.js.gz +0 -0
  154. package/build/client/_app/immutable/chunks/DuHtWI31.js +1 -0
  155. package/build/client/_app/immutable/chunks/DuHtWI31.js.br +0 -0
  156. package/build/client/_app/immutable/chunks/DuHtWI31.js.gz +0 -0
  157. package/build/client/_app/immutable/chunks/Dw6fzgfW.js +1 -0
  158. package/build/client/_app/immutable/chunks/Dw6fzgfW.js.br +0 -0
  159. package/build/client/_app/immutable/chunks/Dw6fzgfW.js.gz +0 -0
  160. package/build/client/_app/immutable/chunks/DzNzLgOO.js +1 -0
  161. package/build/client/_app/immutable/chunks/DzNzLgOO.js.br +0 -0
  162. package/build/client/_app/immutable/chunks/DzNzLgOO.js.gz +0 -0
  163. package/build/client/_app/immutable/chunks/E7F5LllG.js +1 -0
  164. package/build/client/_app/immutable/chunks/E7F5LllG.js.br +0 -0
  165. package/build/client/_app/immutable/chunks/E7F5LllG.js.gz +0 -0
  166. package/build/client/_app/immutable/chunks/FdBsYR_f.js +1 -0
  167. package/build/client/_app/immutable/chunks/FdBsYR_f.js.br +0 -0
  168. package/build/client/_app/immutable/chunks/FdBsYR_f.js.gz +0 -0
  169. package/build/client/_app/immutable/chunks/NPsDidaV.js +1 -0
  170. package/build/client/_app/immutable/chunks/NPsDidaV.js.br +0 -0
  171. package/build/client/_app/immutable/chunks/NPsDidaV.js.gz +0 -0
  172. package/build/client/_app/immutable/chunks/OVtUuDzp.js +1 -0
  173. package/build/client/_app/immutable/chunks/OVtUuDzp.js.br +0 -0
  174. package/build/client/_app/immutable/chunks/OVtUuDzp.js.gz +0 -0
  175. package/build/client/_app/immutable/chunks/Qf_Lg02h.js +1 -0
  176. package/build/client/_app/immutable/chunks/Qf_Lg02h.js.br +0 -0
  177. package/build/client/_app/immutable/chunks/Qf_Lg02h.js.gz +0 -0
  178. package/build/client/_app/immutable/chunks/RmXOMQTe.js +1 -0
  179. package/build/client/_app/immutable/chunks/RmXOMQTe.js.br +0 -0
  180. package/build/client/_app/immutable/chunks/RmXOMQTe.js.gz +0 -0
  181. package/build/client/_app/immutable/chunks/U_alzAUv.js +3 -0
  182. package/build/client/_app/immutable/chunks/U_alzAUv.js.br +0 -0
  183. package/build/client/_app/immutable/chunks/U_alzAUv.js.gz +0 -0
  184. package/build/client/_app/immutable/chunks/X4d9Q9UP.js +1 -0
  185. package/build/client/_app/immutable/chunks/X4d9Q9UP.js.br +0 -0
  186. package/build/client/_app/immutable/chunks/X4d9Q9UP.js.gz +0 -0
  187. package/build/client/_app/immutable/chunks/atM6maCg.js +1 -0
  188. package/build/client/_app/immutable/chunks/atM6maCg.js.br +0 -0
  189. package/build/client/_app/immutable/chunks/atM6maCg.js.gz +0 -0
  190. package/build/client/_app/immutable/chunks/qxoHibue.js +1 -0
  191. package/build/client/_app/immutable/chunks/qxoHibue.js.br +0 -0
  192. package/build/client/_app/immutable/chunks/qxoHibue.js.gz +0 -0
  193. package/build/client/_app/immutable/entry/app.DXOixdTQ.js +2 -0
  194. package/build/client/_app/immutable/entry/app.DXOixdTQ.js.br +0 -0
  195. package/build/client/_app/immutable/entry/app.DXOixdTQ.js.gz +0 -0
  196. package/build/client/_app/immutable/entry/start.lHsRDqJ_.js +1 -0
  197. package/build/client/_app/immutable/entry/start.lHsRDqJ_.js.br +2 -0
  198. package/build/client/_app/immutable/entry/start.lHsRDqJ_.js.gz +0 -0
  199. package/build/client/_app/immutable/nodes/0.B0UCbyvV.js +1 -0
  200. package/build/client/_app/immutable/nodes/0.B0UCbyvV.js.br +0 -0
  201. package/build/client/_app/immutable/nodes/0.B0UCbyvV.js.gz +0 -0
  202. package/build/client/_app/immutable/nodes/1.Cgpx1yHy.js +1 -0
  203. package/build/client/_app/immutable/nodes/1.Cgpx1yHy.js.br +0 -0
  204. package/build/client/_app/immutable/nodes/1.Cgpx1yHy.js.gz +0 -0
  205. package/build/client/_app/immutable/nodes/10.Ct49OwC1.js +3 -0
  206. package/build/client/_app/immutable/nodes/10.Ct49OwC1.js.br +0 -0
  207. package/build/client/_app/immutable/nodes/10.Ct49OwC1.js.gz +0 -0
  208. package/build/client/_app/immutable/nodes/11.BIaqG9xz.js +2 -0
  209. package/build/client/_app/immutable/nodes/11.BIaqG9xz.js.br +0 -0
  210. package/build/client/_app/immutable/nodes/11.BIaqG9xz.js.gz +0 -0
  211. package/build/client/_app/immutable/nodes/12.BqHQ_pQ5.js +1 -0
  212. package/build/client/_app/immutable/nodes/12.BqHQ_pQ5.js.br +0 -0
  213. package/build/client/_app/immutable/nodes/12.BqHQ_pQ5.js.gz +0 -0
  214. package/build/client/_app/immutable/nodes/13.ByWkldPP.js +2 -0
  215. package/build/client/_app/immutable/nodes/13.ByWkldPP.js.br +0 -0
  216. package/build/client/_app/immutable/nodes/13.ByWkldPP.js.gz +0 -0
  217. package/build/client/_app/immutable/nodes/14.87fRSA-Y.js +2 -0
  218. package/build/client/_app/immutable/nodes/14.87fRSA-Y.js.br +0 -0
  219. package/build/client/_app/immutable/nodes/14.87fRSA-Y.js.gz +0 -0
  220. package/build/client/_app/immutable/nodes/15.B2tLGWDu.js +13 -0
  221. package/build/client/_app/immutable/nodes/15.B2tLGWDu.js.br +0 -0
  222. package/build/client/_app/immutable/nodes/15.B2tLGWDu.js.gz +0 -0
  223. package/build/client/_app/immutable/nodes/16.DWG3CLUv.js +6 -0
  224. package/build/client/_app/immutable/nodes/16.DWG3CLUv.js.br +0 -0
  225. package/build/client/_app/immutable/nodes/16.DWG3CLUv.js.gz +0 -0
  226. package/build/client/_app/immutable/nodes/17.CgiETa37.js +2 -0
  227. package/build/client/_app/immutable/nodes/17.CgiETa37.js.br +0 -0
  228. package/build/client/_app/immutable/nodes/17.CgiETa37.js.gz +0 -0
  229. package/build/client/_app/immutable/nodes/19.DO2ja5iW.js +2 -0
  230. package/build/client/_app/immutable/nodes/19.DO2ja5iW.js.br +0 -0
  231. package/build/client/_app/immutable/nodes/19.DO2ja5iW.js.gz +0 -0
  232. package/build/client/_app/immutable/nodes/2.DIAYMP4_.js +1 -0
  233. package/build/client/_app/immutable/nodes/2.DIAYMP4_.js.br +0 -0
  234. package/build/client/_app/immutable/nodes/2.DIAYMP4_.js.gz +0 -0
  235. package/build/client/_app/immutable/nodes/20.DYgQYcr-.js +5021 -0
  236. package/build/client/_app/immutable/nodes/20.DYgQYcr-.js.br +0 -0
  237. package/build/client/_app/immutable/nodes/20.DYgQYcr-.js.gz +0 -0
  238. package/build/client/_app/immutable/nodes/21.CTwryTPC.js +6 -0
  239. package/build/client/_app/immutable/nodes/21.CTwryTPC.js.br +0 -0
  240. package/build/client/_app/immutable/nodes/21.CTwryTPC.js.gz +0 -0
  241. package/build/client/_app/immutable/nodes/23.uUN6jlSq.js +16 -0
  242. package/build/client/_app/immutable/nodes/23.uUN6jlSq.js.br +0 -0
  243. package/build/client/_app/immutable/nodes/23.uUN6jlSq.js.gz +0 -0
  244. package/build/client/_app/immutable/nodes/24.cDDvPQLh.js +6 -0
  245. package/build/client/_app/immutable/nodes/24.cDDvPQLh.js.br +0 -0
  246. package/build/client/_app/immutable/nodes/24.cDDvPQLh.js.gz +0 -0
  247. package/build/client/_app/immutable/nodes/25.DQ1u0u88.js +1 -0
  248. package/build/client/_app/immutable/nodes/25.DQ1u0u88.js.br +0 -0
  249. package/build/client/_app/immutable/nodes/25.DQ1u0u88.js.gz +0 -0
  250. package/build/client/_app/immutable/nodes/26.Ds_gf_O9.js +3 -0
  251. package/build/client/_app/immutable/nodes/26.Ds_gf_O9.js.br +0 -0
  252. package/build/client/_app/immutable/nodes/26.Ds_gf_O9.js.gz +0 -0
  253. package/build/client/_app/immutable/nodes/27.lHQ_8tDM.js +4 -0
  254. package/build/client/_app/immutable/nodes/27.lHQ_8tDM.js.br +0 -0
  255. package/build/client/_app/immutable/nodes/27.lHQ_8tDM.js.gz +0 -0
  256. package/build/client/_app/immutable/nodes/28.DZO_WZjq.js +4 -0
  257. package/build/client/_app/immutable/nodes/28.DZO_WZjq.js.br +0 -0
  258. package/build/client/_app/immutable/nodes/28.DZO_WZjq.js.gz +0 -0
  259. package/build/client/_app/immutable/nodes/29.BBkvtbbm.js +2 -0
  260. package/build/client/_app/immutable/nodes/29.BBkvtbbm.js.br +0 -0
  261. package/build/client/_app/immutable/nodes/29.BBkvtbbm.js.gz +0 -0
  262. package/build/client/_app/immutable/nodes/3.Clu5JbAY.js +1 -0
  263. package/build/client/_app/immutable/nodes/3.Clu5JbAY.js.br +0 -0
  264. package/build/client/_app/immutable/nodes/3.Clu5JbAY.js.gz +0 -0
  265. package/build/client/_app/immutable/nodes/30.CunrYTKW.js +2 -0
  266. package/build/client/_app/immutable/nodes/30.CunrYTKW.js.br +0 -0
  267. package/build/client/_app/immutable/nodes/30.CunrYTKW.js.gz +0 -0
  268. package/build/client/_app/immutable/nodes/31.CaWXI_qm.js +2 -0
  269. package/build/client/_app/immutable/nodes/31.CaWXI_qm.js.br +0 -0
  270. package/build/client/_app/immutable/nodes/31.CaWXI_qm.js.gz +0 -0
  271. package/build/client/_app/immutable/nodes/32.Drmb2nxJ.js +3 -0
  272. package/build/client/_app/immutable/nodes/32.Drmb2nxJ.js.br +0 -0
  273. package/build/client/_app/immutable/nodes/32.Drmb2nxJ.js.gz +0 -0
  274. package/build/client/_app/immutable/nodes/5.CwEyn2eq.js +1 -0
  275. package/build/client/_app/immutable/nodes/5.CwEyn2eq.js.br +1 -0
  276. package/build/client/_app/immutable/nodes/5.CwEyn2eq.js.gz +0 -0
  277. package/build/client/_app/immutable/nodes/6.Cybg-4zL.js +1 -0
  278. package/build/client/_app/immutable/nodes/6.Cybg-4zL.js.br +0 -0
  279. package/build/client/_app/immutable/nodes/6.Cybg-4zL.js.gz +0 -0
  280. package/build/client/_app/immutable/nodes/7.U-nwvAMy.js +1 -0
  281. package/build/client/_app/immutable/nodes/7.U-nwvAMy.js.br +0 -0
  282. package/build/client/_app/immutable/nodes/7.U-nwvAMy.js.gz +0 -0
  283. package/build/client/_app/immutable/nodes/8.Ds78IC3h.js +2 -0
  284. package/build/client/_app/immutable/nodes/8.Ds78IC3h.js.br +0 -0
  285. package/build/client/_app/immutable/nodes/8.Ds78IC3h.js.gz +0 -0
  286. package/build/client/_app/immutable/nodes/9.B4Dh5-cJ.js +1 -0
  287. package/build/client/_app/immutable/nodes/9.B4Dh5-cJ.js.br +0 -0
  288. package/build/client/_app/immutable/nodes/9.B4Dh5-cJ.js.gz +0 -0
  289. package/build/client/_app/version.json +1 -1
  290. package/build/client/_app/version.json.br +0 -0
  291. package/build/client/_app/version.json.gz +0 -0
  292. package/build/server/chunks/0-DhT7yxre.js +55 -0
  293. package/build/server/chunks/0-DhT7yxre.js.map +1 -0
  294. package/build/server/chunks/1-B3qAsEuf.js +9 -0
  295. package/build/server/chunks/1-B3qAsEuf.js.map +1 -0
  296. package/build/server/chunks/10-YMBFU3cy.js +222 -0
  297. package/build/server/chunks/10-YMBFU3cy.js.map +1 -0
  298. package/build/server/chunks/11-DEH3nbKm.js +59 -0
  299. package/build/server/chunks/11-DEH3nbKm.js.map +1 -0
  300. package/build/server/chunks/12-Bra8rAOu.js +52 -0
  301. package/build/server/chunks/12-Bra8rAOu.js.map +1 -0
  302. package/build/server/chunks/13-D_djeolg.js +57 -0
  303. package/build/server/chunks/13-D_djeolg.js.map +1 -0
  304. package/build/server/chunks/14-B1A-3AIw.js +100 -0
  305. package/build/server/chunks/14-B1A-3AIw.js.map +1 -0
  306. package/build/server/chunks/15-KF7YQWQR.js +45 -0
  307. package/build/server/chunks/15-KF7YQWQR.js.map +1 -0
  308. package/build/server/chunks/16-27Ug2Gl4.js +85 -0
  309. package/build/server/chunks/16-27Ug2Gl4.js.map +1 -0
  310. package/build/server/chunks/17-B9EWzdfY.js +9 -0
  311. package/build/server/chunks/17-B9EWzdfY.js.map +1 -0
  312. package/build/server/chunks/18-Lwe4TEuf.js +74 -0
  313. package/build/server/chunks/18-Lwe4TEuf.js.map +1 -0
  314. package/build/server/chunks/19-DFpWVk9Q.js +94 -0
  315. package/build/server/chunks/19-DFpWVk9Q.js.map +1 -0
  316. package/build/server/chunks/2-psSdZh8h.js +43 -0
  317. package/build/server/chunks/2-psSdZh8h.js.map +1 -0
  318. package/build/server/chunks/20-B3RVyzHq.js +218 -0
  319. package/build/server/chunks/20-B3RVyzHq.js.map +1 -0
  320. package/build/server/chunks/21-DjJlF-s8.js +83 -0
  321. package/build/server/chunks/21-DjJlF-s8.js.map +1 -0
  322. package/build/server/chunks/23-Cv-iXsup.js +137 -0
  323. package/build/server/chunks/23-Cv-iXsup.js.map +1 -0
  324. package/build/server/chunks/24-C9N_eRrr.js +145 -0
  325. package/build/server/chunks/24-C9N_eRrr.js.map +1 -0
  326. package/build/server/chunks/25-DL8VLuLg.js +51 -0
  327. package/build/server/chunks/25-DL8VLuLg.js.map +1 -0
  328. package/build/server/chunks/26-Dia3LwgX.js +9 -0
  329. package/build/server/chunks/26-Dia3LwgX.js.map +1 -0
  330. package/build/server/chunks/27-HUwDEbMb.js +57 -0
  331. package/build/server/chunks/27-HUwDEbMb.js.map +1 -0
  332. package/build/server/chunks/28-l4BuMkhA.js +69 -0
  333. package/build/server/chunks/28-l4BuMkhA.js.map +1 -0
  334. package/build/server/chunks/29-DefkuWIf.js +55 -0
  335. package/build/server/chunks/29-DefkuWIf.js.map +1 -0
  336. package/build/server/chunks/3-FhxHeIS3.js +9 -0
  337. package/build/server/chunks/3-FhxHeIS3.js.map +1 -0
  338. package/build/server/chunks/30-BC7V7mS7.js +57 -0
  339. package/build/server/chunks/30-BC7V7mS7.js.map +1 -0
  340. package/build/server/chunks/31-DJIq1bRM.js +42 -0
  341. package/build/server/chunks/31-DJIq1bRM.js.map +1 -0
  342. package/build/server/chunks/32-fvzIyQyk.js +34 -0
  343. package/build/server/chunks/32-fvzIyQyk.js.map +1 -0
  344. package/build/server/chunks/5-BSabZ7B0.js +32 -0
  345. package/build/server/chunks/5-BSabZ7B0.js.map +1 -0
  346. package/build/server/chunks/6-BDAMjeLc.js +40 -0
  347. package/build/server/chunks/6-BDAMjeLc.js.map +1 -0
  348. package/build/server/chunks/7-C5uuYI8Y.js +19 -0
  349. package/build/server/chunks/7-C5uuYI8Y.js.map +1 -0
  350. package/build/server/chunks/8-Yg3bHJY8.js +130 -0
  351. package/build/server/chunks/8-Yg3bHJY8.js.map +1 -0
  352. package/build/server/chunks/9-BOWShy6C.js +48 -0
  353. package/build/server/chunks/9-BOWShy6C.js.map +1 -0
  354. package/build/server/chunks/AppHeader-vae2Doza.js +271 -0
  355. package/build/server/chunks/AppHeader-vae2Doza.js.map +1 -0
  356. package/build/server/chunks/DefinitionCard-RTmYlhOH.js +268 -0
  357. package/build/server/chunks/DefinitionCard-RTmYlhOH.js.map +1 -0
  358. package/build/server/chunks/ErrorScreen-d8Z8hQ1U.js +131 -0
  359. package/build/server/chunks/ErrorScreen-d8Z8hQ1U.js.map +1 -0
  360. package/build/server/chunks/FilterableDropdown-0UzIjcXJ.js +61 -0
  361. package/build/server/chunks/FilterableDropdown-0UzIjcXJ.js.map +1 -0
  362. package/build/server/chunks/SideNav-QbExg2MG.js +87 -0
  363. package/build/server/chunks/SideNav-QbExg2MG.js.map +1 -0
  364. package/build/server/chunks/StatCard-CRzbit9Z.js +50 -0
  365. package/build/server/chunks/StatCard-CRzbit9Z.js.map +1 -0
  366. package/build/server/chunks/UserChip-BPLEgzMp.js +1220 -0
  367. package/build/server/chunks/UserChip-BPLEgzMp.js.map +1 -0
  368. package/build/server/chunks/_error.svelte-DCuOEylf.js +29 -0
  369. package/build/server/chunks/_error.svelte-DCuOEylf.js.map +1 -0
  370. package/build/server/chunks/_error.svelte-DKd7sQzn.js +27 -0
  371. package/build/server/chunks/_error.svelte-DKd7sQzn.js.map +1 -0
  372. package/build/server/chunks/_layout.svelte-D5GiNGr6.js +108 -0
  373. package/build/server/chunks/_layout.svelte-D5GiNGr6.js.map +1 -0
  374. package/build/server/chunks/_layout.svelte-VX4FX0S-.js +795 -0
  375. package/build/server/chunks/_layout.svelte-VX4FX0S-.js.map +1 -0
  376. package/build/server/chunks/_layout.svelte-_enyp5QE.js +45 -0
  377. package/build/server/chunks/_layout.svelte-_enyp5QE.js.map +1 -0
  378. package/build/server/chunks/_layout.svelte-aflz8r6I.js +155 -0
  379. package/build/server/chunks/_layout.svelte-aflz8r6I.js.map +1 -0
  380. package/build/server/chunks/_page.svelte-B8iLZ6Zi.js +119 -0
  381. package/build/server/chunks/_page.svelte-B8iLZ6Zi.js.map +1 -0
  382. package/build/server/chunks/_page.svelte-BDLD6pXj.js +11756 -0
  383. package/build/server/chunks/_page.svelte-BDLD6pXj.js.map +1 -0
  384. package/build/server/chunks/_page.svelte-BHM2cdfQ.js +119 -0
  385. package/build/server/chunks/_page.svelte-BHM2cdfQ.js.map +1 -0
  386. package/build/server/chunks/_page.svelte-BYPZuYIR.js +276 -0
  387. package/build/server/chunks/_page.svelte-BYPZuYIR.js.map +1 -0
  388. package/build/server/chunks/_page.svelte-Big1I6tL.js +274 -0
  389. package/build/server/chunks/_page.svelte-Big1I6tL.js.map +1 -0
  390. package/build/server/chunks/_page.svelte-Bqwz1thf.js +146 -0
  391. package/build/server/chunks/_page.svelte-Bqwz1thf.js.map +1 -0
  392. package/build/server/chunks/_page.svelte-By_vYfbZ.js +525 -0
  393. package/build/server/chunks/_page.svelte-By_vYfbZ.js.map +1 -0
  394. package/build/server/chunks/_page.svelte-CD9Uvy6Y.js +595 -0
  395. package/build/server/chunks/_page.svelte-CD9Uvy6Y.js.map +1 -0
  396. package/build/server/chunks/_page.svelte-CIO9nnXR.js +557 -0
  397. package/build/server/chunks/_page.svelte-CIO9nnXR.js.map +1 -0
  398. package/build/server/chunks/_page.svelte-CaoALwvK.js +453 -0
  399. package/build/server/chunks/_page.svelte-CaoALwvK.js.map +1 -0
  400. package/build/server/chunks/_page.svelte-CjvLz8T1.js +906 -0
  401. package/build/server/chunks/_page.svelte-CjvLz8T1.js.map +1 -0
  402. package/build/server/chunks/_page.svelte-DIn0gOqM.js +609 -0
  403. package/build/server/chunks/_page.svelte-DIn0gOqM.js.map +1 -0
  404. package/build/server/chunks/_page.svelte-DKPG7AbM.js +113 -0
  405. package/build/server/chunks/_page.svelte-DKPG7AbM.js.map +1 -0
  406. package/build/server/chunks/_page.svelte-DM3XizZi.js +3858 -0
  407. package/build/server/chunks/_page.svelte-DM3XizZi.js.map +1 -0
  408. package/build/server/chunks/_page.svelte-DamuIhBm.js +168 -0
  409. package/build/server/chunks/_page.svelte-DamuIhBm.js.map +1 -0
  410. package/build/server/chunks/_page.svelte-DcbxsxZM.js +330 -0
  411. package/build/server/chunks/_page.svelte-DcbxsxZM.js.map +1 -0
  412. package/build/server/chunks/_page.svelte-DcqwTr6T.js +250 -0
  413. package/build/server/chunks/_page.svelte-DcqwTr6T.js.map +1 -0
  414. package/build/server/chunks/_page.svelte-DtVw2EYT.js +56 -0
  415. package/build/server/chunks/_page.svelte-DtVw2EYT.js.map +1 -0
  416. package/build/server/chunks/_page.svelte-DyTTCbrh.js +83 -0
  417. package/build/server/chunks/_page.svelte-DyTTCbrh.js.map +1 -0
  418. package/build/server/chunks/_page.svelte-FDFRMnmB.js +333 -0
  419. package/build/server/chunks/_page.svelte-FDFRMnmB.js.map +1 -0
  420. package/build/server/chunks/_page.svelte-Ut97NZhy.js +714 -0
  421. package/build/server/chunks/_page.svelte-Ut97NZhy.js.map +1 -0
  422. package/build/server/chunks/_page.svelte-ZxjqrKH8.js +72 -0
  423. package/build/server/chunks/_page.svelte-ZxjqrKH8.js.map +1 -0
  424. package/build/server/chunks/_page.svelte-jwU-46Sj.js +301 -0
  425. package/build/server/chunks/_page.svelte-jwU-46Sj.js.map +1 -0
  426. package/build/server/chunks/_page.svelte-lAupF47l.js +424 -0
  427. package/build/server/chunks/_page.svelte-lAupF47l.js.map +1 -0
  428. package/build/server/chunks/_server.ts-13_Xvown.js +32 -0
  429. package/build/server/chunks/_server.ts-13_Xvown.js.map +1 -0
  430. package/build/server/chunks/_server.ts-6F3Ly0cY.js +88 -0
  431. package/build/server/chunks/_server.ts-6F3Ly0cY.js.map +1 -0
  432. package/build/server/chunks/_server.ts-AtxnIvMI.js +398 -0
  433. package/build/server/chunks/_server.ts-AtxnIvMI.js.map +1 -0
  434. package/build/server/chunks/_server.ts-B9uegfmw.js +75 -0
  435. package/build/server/chunks/_server.ts-B9uegfmw.js.map +1 -0
  436. package/build/server/chunks/_server.ts-BQetLy9N.js +39 -0
  437. package/build/server/chunks/_server.ts-BQetLy9N.js.map +1 -0
  438. package/build/server/chunks/_server.ts-BZH3tqYX.js +490 -0
  439. package/build/server/chunks/_server.ts-BZH3tqYX.js.map +1 -0
  440. package/build/server/chunks/_server.ts-Be15h83H.js +84 -0
  441. package/build/server/chunks/_server.ts-Be15h83H.js.map +1 -0
  442. package/build/server/chunks/_server.ts-BgVWq0qd.js +41 -0
  443. package/build/server/chunks/_server.ts-BgVWq0qd.js.map +1 -0
  444. package/build/server/chunks/_server.ts-Bke_K04J.js +105 -0
  445. package/build/server/chunks/_server.ts-Bke_K04J.js.map +1 -0
  446. package/build/server/chunks/_server.ts-BlVwuKrl.js +111 -0
  447. package/build/server/chunks/_server.ts-BlVwuKrl.js.map +1 -0
  448. package/build/server/chunks/_server.ts-BmjNVAmP.js +60 -0
  449. package/build/server/chunks/_server.ts-BmjNVAmP.js.map +1 -0
  450. package/build/server/chunks/_server.ts-BwMyXo0z.js +65 -0
  451. package/build/server/chunks/_server.ts-BwMyXo0z.js.map +1 -0
  452. package/build/server/chunks/_server.ts-CF65FKS6.js +63 -0
  453. package/build/server/chunks/_server.ts-CF65FKS6.js.map +1 -0
  454. package/build/server/chunks/_server.ts-CMHRHdCD.js +83 -0
  455. package/build/server/chunks/_server.ts-CMHRHdCD.js.map +1 -0
  456. package/build/server/chunks/_server.ts-Ca_OJJFC.js +39 -0
  457. package/build/server/chunks/_server.ts-Ca_OJJFC.js.map +1 -0
  458. package/build/server/chunks/_server.ts-Cc-srcRk.js +33 -0
  459. package/build/server/chunks/_server.ts-Cc-srcRk.js.map +1 -0
  460. package/build/server/chunks/_server.ts-Cg1WgIQn.js +31 -0
  461. package/build/server/chunks/_server.ts-Cg1WgIQn.js.map +1 -0
  462. package/build/server/chunks/_server.ts-Cg6LtEov.js +36 -0
  463. package/build/server/chunks/_server.ts-Cg6LtEov.js.map +1 -0
  464. package/build/server/chunks/_server.ts-CpsGzKQC.js +83 -0
  465. package/build/server/chunks/_server.ts-CpsGzKQC.js.map +1 -0
  466. package/build/server/chunks/_server.ts-D2Qb9pui.js +51 -0
  467. package/build/server/chunks/_server.ts-D2Qb9pui.js.map +1 -0
  468. package/build/server/chunks/_server.ts-DEBzt_W2.js +86 -0
  469. package/build/server/chunks/_server.ts-DEBzt_W2.js.map +1 -0
  470. package/build/server/chunks/_server.ts-DRlwVsIx.js +162 -0
  471. package/build/server/chunks/_server.ts-DRlwVsIx.js.map +1 -0
  472. package/build/server/chunks/_server.ts-DVOhTvBf.js +108 -0
  473. package/build/server/chunks/_server.ts-DVOhTvBf.js.map +1 -0
  474. package/build/server/chunks/_server.ts-DW-Oh4l9.js +31 -0
  475. package/build/server/chunks/_server.ts-DW-Oh4l9.js.map +1 -0
  476. package/build/server/chunks/_server.ts-DamGRKop.js +101 -0
  477. package/build/server/chunks/_server.ts-DamGRKop.js.map +1 -0
  478. package/build/server/chunks/_server.ts-DethCmgs.js +77 -0
  479. package/build/server/chunks/_server.ts-DethCmgs.js.map +1 -0
  480. package/build/server/chunks/_server.ts-DlN3WSBT.js +39 -0
  481. package/build/server/chunks/_server.ts-DlN3WSBT.js.map +1 -0
  482. package/build/server/chunks/_server.ts-DvBucq0r.js +40 -0
  483. package/build/server/chunks/_server.ts-DvBucq0r.js.map +1 -0
  484. package/build/server/chunks/_server.ts-Dz4bsmph.js +60 -0
  485. package/build/server/chunks/_server.ts-Dz4bsmph.js.map +1 -0
  486. package/build/server/chunks/_server.ts-DzA4EZf_.js +43 -0
  487. package/build/server/chunks/_server.ts-DzA4EZf_.js.map +1 -0
  488. package/build/server/chunks/_server.ts-L9PpKy16.js +41 -0
  489. package/build/server/chunks/_server.ts-L9PpKy16.js.map +1 -0
  490. package/build/server/chunks/_server.ts-Oi8Qzh0h.js +44 -0
  491. package/build/server/chunks/_server.ts-Oi8Qzh0h.js.map +1 -0
  492. package/build/server/chunks/_server.ts-PKbOblCf.js +96 -0
  493. package/build/server/chunks/_server.ts-PKbOblCf.js.map +1 -0
  494. package/build/server/chunks/_server.ts-XAkApigL.js +80 -0
  495. package/build/server/chunks/_server.ts-XAkApigL.js.map +1 -0
  496. package/build/server/chunks/_server.ts-bhjqtBoy.js +37 -0
  497. package/build/server/chunks/_server.ts-bhjqtBoy.js.map +1 -0
  498. package/build/server/chunks/_server.ts-cHSphefi.js +50 -0
  499. package/build/server/chunks/_server.ts-cHSphefi.js.map +1 -0
  500. package/build/server/chunks/_server.ts-d6YTPmkY.js +40 -0
  501. package/build/server/chunks/_server.ts-d6YTPmkY.js.map +1 -0
  502. package/build/server/chunks/_server.ts-kTCuqLDl.js +73 -0
  503. package/build/server/chunks/_server.ts-kTCuqLDl.js.map +1 -0
  504. package/build/server/chunks/_server.ts-kbr9HYg5.js +72 -0
  505. package/build/server/chunks/_server.ts-kbr9HYg5.js.map +1 -0
  506. package/build/server/chunks/access.server-CAPd1-c2.js +408 -0
  507. package/build/server/chunks/access.server-CAPd1-c2.js.map +1 -0
  508. package/build/server/chunks/activity-Dmfe6yjx.js +18 -0
  509. package/build/server/chunks/activity-Dmfe6yjx.js.map +1 -0
  510. package/build/server/chunks/alert-description-BNqu-OG5.js +59 -0
  511. package/build/server/chunks/alert-description-BNqu-OG5.js.map +1 -0
  512. package/build/server/chunks/api-errors-BhVEeWTV.js +101 -0
  513. package/build/server/chunks/api-errors-BhVEeWTV.js.map +1 -0
  514. package/build/server/chunks/arrow-left-KOVWDB5k.js +14 -0
  515. package/build/server/chunks/arrow-left-KOVWDB5k.js.map +1 -0
  516. package/build/server/chunks/arrow-right-D0bOY6-5.js +14 -0
  517. package/build/server/chunks/arrow-right-D0bOY6-5.js.map +1 -0
  518. package/build/server/chunks/auth-bootstrap.server-DKc9-3PR.js +99 -0
  519. package/build/server/chunks/auth-bootstrap.server-DKc9-3PR.js.map +1 -0
  520. package/build/server/chunks/badge-DIEbxzcl.js +50 -0
  521. package/build/server/chunks/badge-DIEbxzcl.js.map +1 -0
  522. package/build/server/chunks/bootHealth.server-IPXOSqqQ.js +58 -0
  523. package/build/server/chunks/bootHealth.server-IPXOSqqQ.js.map +1 -0
  524. package/build/server/chunks/building-2-DFvNRZpq.js +22 -0
  525. package/build/server/chunks/building-2-DFvNRZpq.js.map +1 -0
  526. package/build/server/chunks/button-DPLE4Wc8.js +73 -0
  527. package/build/server/chunks/button-DPLE4Wc8.js.map +1 -0
  528. package/build/server/chunks/card-content-BlxX1RCO.js +46 -0
  529. package/build/server/chunks/card-content-BlxX1RCO.js.map +1 -0
  530. package/build/server/chunks/card-description-Z3TpzjmK.js +26 -0
  531. package/build/server/chunks/card-description-Z3TpzjmK.js.map +1 -0
  532. package/build/server/chunks/card-title-CdR5nQ-b.js +46 -0
  533. package/build/server/chunks/card-title-CdR5nQ-b.js.map +1 -0
  534. package/build/server/chunks/check-382jBCB9.js +11 -0
  535. package/build/server/chunks/check-382jBCB9.js.map +1 -0
  536. package/build/server/chunks/chevron-down-D5-hWbt-.js +11 -0
  537. package/build/server/chunks/chevron-down-D5-hWbt-.js.map +1 -0
  538. package/build/server/chunks/chevron-right-BqxmmxHL.js +11 -0
  539. package/build/server/chunks/chevron-right-BqxmmxHL.js.map +1 -0
  540. package/build/server/chunks/chevron-up-StZ3cnZ8.js +11 -0
  541. package/build/server/chunks/chevron-up-StZ3cnZ8.js.map +1 -0
  542. package/build/server/chunks/circle-DgRVKHBX.js +11 -0
  543. package/build/server/chunks/circle-DgRVKHBX.js.map +1 -0
  544. package/build/server/chunks/circle-alert-DVGjYRbM.js +18 -0
  545. package/build/server/chunks/circle-alert-DVGjYRbM.js.map +1 -0
  546. package/build/server/chunks/computeLimits-DPO6NbLd.js +27 -0
  547. package/build/server/chunks/computeLimits-DPO6NbLd.js.map +1 -0
  548. package/build/server/chunks/context-BJnJL8ES.js +141 -0
  549. package/build/server/chunks/context-BJnJL8ES.js.map +1 -0
  550. package/build/server/chunks/copy-ifB2TUP_.js +29 -0
  551. package/build/server/chunks/copy-ifB2TUP_.js.map +1 -0
  552. package/build/server/chunks/dialog-description-DJ0KQ8Zk.js +523 -0
  553. package/build/server/chunks/dialog-description-DJ0KQ8Zk.js.map +1 -0
  554. package/build/server/chunks/dialog-footer-CuTfgUTD.js +62 -0
  555. package/build/server/chunks/dialog-footer-CuTfgUTD.js.map +1 -0
  556. package/build/server/chunks/folder-kanban-pqeOGmPr.js +21 -0
  557. package/build/server/chunks/folder-kanban-pqeOGmPr.js.map +1 -0
  558. package/build/server/chunks/folder-open-Cs60gLjJ.js +18 -0
  559. package/build/server/chunks/folder-open-Cs60gLjJ.js.map +1 -0
  560. package/build/server/chunks/folders-u0VAZ6yv.js +24 -0
  561. package/build/server/chunks/folders-u0VAZ6yv.js.map +1 -0
  562. package/build/server/chunks/footerContext.svelte-DM5rvLUk.js +531 -0
  563. package/build/server/chunks/footerContext.svelte-DM5rvLUk.js.map +1 -0
  564. package/build/server/chunks/hooks.server-BEbVZKxO.js +225 -0
  565. package/build/server/chunks/hooks.server-BEbVZKxO.js.map +1 -0
  566. package/build/server/chunks/index2-DDc7DI9Y.js +430 -0
  567. package/build/server/chunks/index2-DDc7DI9Y.js.map +1 -0
  568. package/build/server/chunks/index3-BVw88ujT.js +4246 -0
  569. package/build/server/chunks/index3-BVw88ujT.js.map +1 -0
  570. package/build/server/chunks/index4-CCteFD1i.js +541 -0
  571. package/build/server/chunks/index4-CCteFD1i.js.map +1 -0
  572. package/build/server/chunks/input-BEmCftCF.js +53 -0
  573. package/build/server/chunks/input-BEmCftCF.js.map +1 -0
  574. package/build/server/chunks/label-D8oB1018.js +112 -0
  575. package/build/server/chunks/label-D8oB1018.js.map +1 -0
  576. package/build/server/chunks/link-2-D3b2vEpL.js +15 -0
  577. package/build/server/chunks/link-2-D3b2vEpL.js.map +1 -0
  578. package/build/server/chunks/mail-DZDbJkFt.js +17 -0
  579. package/build/server/chunks/mail-DZDbJkFt.js.map +1 -0
  580. package/build/server/chunks/minus-B7toCaYG.js +20 -0
  581. package/build/server/chunks/minus-B7toCaYG.js.map +1 -0
  582. package/build/server/chunks/noop-BGJY5rVY.js +270 -0
  583. package/build/server/chunks/noop-BGJY5rVY.js.map +1 -0
  584. package/build/server/chunks/package-MTlbeZ-4.js +29 -0
  585. package/build/server/chunks/package-MTlbeZ-4.js.map +1 -0
  586. package/build/server/chunks/permissions-compat.server-G174xsh6.js +19 -0
  587. package/build/server/chunks/permissions-compat.server-G174xsh6.js.map +1 -0
  588. package/build/server/chunks/permissions.server-zs4XAJCp.js +8 -0
  589. package/build/server/chunks/permissions.server-zs4XAJCp.js.map +1 -0
  590. package/build/server/chunks/plus-j_UY0EeU.js +11 -0
  591. package/build/server/chunks/plus-j_UY0EeU.js.map +1 -0
  592. package/build/server/chunks/providers.server-C3fQ7ZdV.js +4456 -0
  593. package/build/server/chunks/providers.server-C3fQ7ZdV.js.map +1 -0
  594. package/build/server/chunks/refresh-cw-B6mwsgBf.js +22 -0
  595. package/build/server/chunks/refresh-cw-B6mwsgBf.js.map +1 -0
  596. package/build/server/chunks/resolve.server-t1UmqtsG.js +50 -0
  597. package/build/server/chunks/resolve.server-t1UmqtsG.js.map +1 -0
  598. package/build/server/chunks/rotate-ccw-DChq5zhW.js +17 -0
  599. package/build/server/chunks/rotate-ccw-DChq5zhW.js.map +1 -0
  600. package/build/server/chunks/scroll-lock-NAQO_S1Y.js +2853 -0
  601. package/build/server/chunks/scroll-lock-NAQO_S1Y.js.map +1 -0
  602. package/build/server/chunks/scroll-text-Bi9gx_V4.js +21 -0
  603. package/build/server/chunks/scroll-text-Bi9gx_V4.js.map +1 -0
  604. package/build/server/chunks/server-LxtlHpuz.js +36 -0
  605. package/build/server/chunks/server-LxtlHpuz.js.map +1 -0
  606. package/build/server/chunks/settings-Cr5mYyBS.js +19 -0
  607. package/build/server/chunks/settings-Cr5mYyBS.js.map +1 -0
  608. package/build/server/chunks/shield-BSf8CVMT.js +18 -0
  609. package/build/server/chunks/shield-BSf8CVMT.js.map +1 -0
  610. package/build/server/chunks/shield-check-OpZRvDHN.js +19 -0
  611. package/build/server/chunks/shield-check-OpZRvDHN.js.map +1 -0
  612. package/build/server/chunks/star-KGWYAeYA.js +18 -0
  613. package/build/server/chunks/star-KGWYAeYA.js.map +1 -0
  614. package/build/server/chunks/textarea-DmyNBs20.js +559 -0
  615. package/build/server/chunks/textarea-DmyNBs20.js.map +1 -0
  616. package/build/server/chunks/trash-2-DmuR9br3.js +17 -0
  617. package/build/server/chunks/trash-2-DmuR9br3.js.map +1 -0
  618. package/build/server/chunks/triangle-alert-Dig9abwC.js +20 -0
  619. package/build/server/chunks/triangle-alert-Dig9abwC.js.map +1 -0
  620. package/build/server/chunks/user-plus-Jn4Z4v9g.js +16 -0
  621. package/build/server/chunks/user-plus-Jn4Z4v9g.js.map +1 -0
  622. package/build/server/chunks/users-BgwwwoIh.js +16 -0
  623. package/build/server/chunks/users-BgwwwoIh.js.map +1 -0
  624. package/build/server/chunks/utils2-BqfluBM6.js +50 -0
  625. package/build/server/chunks/utils2-BqfluBM6.js.map +1 -0
  626. package/build/server/chunks/utils3-Dv2HSd2-.js +80 -0
  627. package/build/server/chunks/utils3-Dv2HSd2-.js.map +1 -0
  628. package/build/server/chunks/x-B1q8Cpoy.js +14 -0
  629. package/build/server/chunks/x-B1q8Cpoy.js.map +1 -0
  630. package/build/server/index.js +2 -2
  631. package/build/server/index.js.map +1 -1
  632. package/build/server/manifest.js +71 -71
  633. package/build/server/manifest.js.map +1 -1
  634. package/package.json +9 -8
  635. package/templates/.env.example +11 -0
  636. package/build/client/_app/immutable/assets/0.-MS0dTYb.css +0 -1
  637. package/build/client/_app/immutable/assets/0.-MS0dTYb.css.br +0 -0
  638. package/build/client/_app/immutable/assets/0.-MS0dTYb.css.gz +0 -0
  639. package/build/client/_app/immutable/chunks/3Ah3Y6N9.js +0 -1
  640. package/build/client/_app/immutable/chunks/3Ah3Y6N9.js.br +0 -0
  641. package/build/client/_app/immutable/chunks/3Ah3Y6N9.js.gz +0 -0
  642. package/build/client/_app/immutable/chunks/B-Kuf-9K.js +0 -1
  643. package/build/client/_app/immutable/chunks/B-Kuf-9K.js.br +0 -0
  644. package/build/client/_app/immutable/chunks/B-Kuf-9K.js.gz +0 -0
  645. package/build/client/_app/immutable/chunks/B1z9if9B.js +0 -1
  646. package/build/client/_app/immutable/chunks/B1z9if9B.js.br +0 -0
  647. package/build/client/_app/immutable/chunks/B1z9if9B.js.gz +0 -0
  648. package/build/client/_app/immutable/chunks/B21bldal.js +0 -1
  649. package/build/client/_app/immutable/chunks/B21bldal.js.br +0 -0
  650. package/build/client/_app/immutable/chunks/B21bldal.js.gz +0 -0
  651. package/build/client/_app/immutable/chunks/B6_AR4oL.js +0 -1
  652. package/build/client/_app/immutable/chunks/B6_AR4oL.js.br +0 -0
  653. package/build/client/_app/immutable/chunks/B6_AR4oL.js.gz +0 -0
  654. package/build/client/_app/immutable/chunks/BEFa4rcT.js +0 -1
  655. package/build/client/_app/immutable/chunks/BEFa4rcT.js.br +0 -4
  656. package/build/client/_app/immutable/chunks/BEFa4rcT.js.gz +0 -0
  657. package/build/client/_app/immutable/chunks/BGIAOk5X.js +0 -1
  658. package/build/client/_app/immutable/chunks/BGIAOk5X.js.br +0 -0
  659. package/build/client/_app/immutable/chunks/BGIAOk5X.js.gz +0 -0
  660. package/build/client/_app/immutable/chunks/BHhjUaik.js +0 -1
  661. package/build/client/_app/immutable/chunks/BHhjUaik.js.br +0 -0
  662. package/build/client/_app/immutable/chunks/BHhjUaik.js.gz +0 -0
  663. package/build/client/_app/immutable/chunks/BIIXkPqf.js +0 -1
  664. package/build/client/_app/immutable/chunks/BIIXkPqf.js.br +0 -0
  665. package/build/client/_app/immutable/chunks/BIIXkPqf.js.gz +0 -0
  666. package/build/client/_app/immutable/chunks/BLZ195WY.js +0 -1
  667. package/build/client/_app/immutable/chunks/BLZ195WY.js.br +0 -0
  668. package/build/client/_app/immutable/chunks/BLZ195WY.js.gz +0 -0
  669. package/build/client/_app/immutable/chunks/BM8Ok6pJ.js +0 -1
  670. package/build/client/_app/immutable/chunks/BM8Ok6pJ.js.br +0 -0
  671. package/build/client/_app/immutable/chunks/BM8Ok6pJ.js.gz +0 -0
  672. package/build/client/_app/immutable/chunks/BOsr6E_d.js +0 -1
  673. package/build/client/_app/immutable/chunks/BOsr6E_d.js.br +0 -1
  674. package/build/client/_app/immutable/chunks/BOsr6E_d.js.gz +0 -0
  675. package/build/client/_app/immutable/chunks/BX0gN9mF.js +0 -1
  676. package/build/client/_app/immutable/chunks/BX0gN9mF.js.br +0 -0
  677. package/build/client/_app/immutable/chunks/BX0gN9mF.js.gz +0 -0
  678. package/build/client/_app/immutable/chunks/BaMCSMGs.js +0 -1
  679. package/build/client/_app/immutable/chunks/BaMCSMGs.js.br +0 -0
  680. package/build/client/_app/immutable/chunks/BaMCSMGs.js.gz +0 -0
  681. package/build/client/_app/immutable/chunks/Bg5E8RaK.js +0 -1
  682. package/build/client/_app/immutable/chunks/Bg5E8RaK.js.br +0 -0
  683. package/build/client/_app/immutable/chunks/Bg5E8RaK.js.gz +0 -0
  684. package/build/client/_app/immutable/chunks/BihI7LuH.js +0 -1
  685. package/build/client/_app/immutable/chunks/BihI7LuH.js.br +0 -0
  686. package/build/client/_app/immutable/chunks/BihI7LuH.js.gz +0 -0
  687. package/build/client/_app/immutable/chunks/Bma65zV8.js +0 -1
  688. package/build/client/_app/immutable/chunks/Bma65zV8.js.br +0 -0
  689. package/build/client/_app/immutable/chunks/Bma65zV8.js.gz +0 -0
  690. package/build/client/_app/immutable/chunks/BnzoF81W.js +0 -1
  691. package/build/client/_app/immutable/chunks/BnzoF81W.js.br +0 -1
  692. package/build/client/_app/immutable/chunks/BnzoF81W.js.gz +0 -0
  693. package/build/client/_app/immutable/chunks/BpQqe39G.js +0 -1
  694. package/build/client/_app/immutable/chunks/BpQqe39G.js.br +0 -0
  695. package/build/client/_app/immutable/chunks/BpQqe39G.js.gz +0 -0
  696. package/build/client/_app/immutable/chunks/BsKtJj5h.js +0 -1
  697. package/build/client/_app/immutable/chunks/BsKtJj5h.js.br +0 -0
  698. package/build/client/_app/immutable/chunks/BsKtJj5h.js.gz +0 -0
  699. package/build/client/_app/immutable/chunks/BtugGMaj.js +0 -1
  700. package/build/client/_app/immutable/chunks/BtugGMaj.js.br +0 -0
  701. package/build/client/_app/immutable/chunks/BtugGMaj.js.gz +0 -0
  702. package/build/client/_app/immutable/chunks/Buy2icyP.js +0 -9
  703. package/build/client/_app/immutable/chunks/Buy2icyP.js.br +0 -0
  704. package/build/client/_app/immutable/chunks/Buy2icyP.js.gz +0 -0
  705. package/build/client/_app/immutable/chunks/Bwn5lHBl.js +0 -1
  706. package/build/client/_app/immutable/chunks/Bwn5lHBl.js.br +0 -0
  707. package/build/client/_app/immutable/chunks/Bwn5lHBl.js.gz +0 -0
  708. package/build/client/_app/immutable/chunks/C3WxOOC9.js +0 -1
  709. package/build/client/_app/immutable/chunks/C3WxOOC9.js.br +0 -0
  710. package/build/client/_app/immutable/chunks/C3WxOOC9.js.gz +0 -0
  711. package/build/client/_app/immutable/chunks/CDmA5ezP.js +0 -1
  712. package/build/client/_app/immutable/chunks/CDmA5ezP.js.br +0 -0
  713. package/build/client/_app/immutable/chunks/CDmA5ezP.js.gz +0 -0
  714. package/build/client/_app/immutable/chunks/CEKDr1yG.js +0 -1
  715. package/build/client/_app/immutable/chunks/CEKDr1yG.js.br +0 -0
  716. package/build/client/_app/immutable/chunks/CEKDr1yG.js.gz +0 -0
  717. package/build/client/_app/immutable/chunks/CE_gxD9G.js +0 -1
  718. package/build/client/_app/immutable/chunks/CE_gxD9G.js.br +0 -0
  719. package/build/client/_app/immutable/chunks/CE_gxD9G.js.gz +0 -0
  720. package/build/client/_app/immutable/chunks/CEmcKzrr.js +0 -2
  721. package/build/client/_app/immutable/chunks/CEmcKzrr.js.br +0 -0
  722. package/build/client/_app/immutable/chunks/CEmcKzrr.js.gz +0 -0
  723. package/build/client/_app/immutable/chunks/CGKZc1Kf.js +0 -1
  724. package/build/client/_app/immutable/chunks/CGKZc1Kf.js.br +0 -0
  725. package/build/client/_app/immutable/chunks/CGKZc1Kf.js.gz +0 -0
  726. package/build/client/_app/immutable/chunks/CIHhLSqA.js +0 -1
  727. package/build/client/_app/immutable/chunks/CIHhLSqA.js.br +0 -0
  728. package/build/client/_app/immutable/chunks/CIHhLSqA.js.gz +0 -0
  729. package/build/client/_app/immutable/chunks/CNC_mCsM.js +0 -1
  730. package/build/client/_app/immutable/chunks/CNC_mCsM.js.br +0 -0
  731. package/build/client/_app/immutable/chunks/CNC_mCsM.js.gz +0 -0
  732. package/build/client/_app/immutable/chunks/CYyqq9B1.js +0 -1
  733. package/build/client/_app/immutable/chunks/CYyqq9B1.js.br +0 -0
  734. package/build/client/_app/immutable/chunks/CYyqq9B1.js.gz +0 -0
  735. package/build/client/_app/immutable/chunks/CeS0GhtF.js +0 -1
  736. package/build/client/_app/immutable/chunks/CeS0GhtF.js.br +0 -0
  737. package/build/client/_app/immutable/chunks/CeS0GhtF.js.gz +0 -0
  738. package/build/client/_app/immutable/chunks/CnXIg_dO.js +0 -1
  739. package/build/client/_app/immutable/chunks/CnXIg_dO.js.br +0 -0
  740. package/build/client/_app/immutable/chunks/CnXIg_dO.js.gz +0 -0
  741. package/build/client/_app/immutable/chunks/CqKeVIM6.js +0 -4108
  742. package/build/client/_app/immutable/chunks/CqKeVIM6.js.br +0 -0
  743. package/build/client/_app/immutable/chunks/CqKeVIM6.js.gz +0 -0
  744. package/build/client/_app/immutable/chunks/Cqb2-zYs.js +0 -1
  745. package/build/client/_app/immutable/chunks/Cqb2-zYs.js.br +0 -0
  746. package/build/client/_app/immutable/chunks/Cqb2-zYs.js.gz +0 -0
  747. package/build/client/_app/immutable/chunks/CumXBEVX.js +0 -1
  748. package/build/client/_app/immutable/chunks/CumXBEVX.js.br +0 -0
  749. package/build/client/_app/immutable/chunks/CumXBEVX.js.gz +0 -0
  750. package/build/client/_app/immutable/chunks/CzCTTv8Q.js +0 -1
  751. package/build/client/_app/immutable/chunks/CzCTTv8Q.js.br +0 -0
  752. package/build/client/_app/immutable/chunks/CzCTTv8Q.js.gz +0 -0
  753. package/build/client/_app/immutable/chunks/D-3pI9hp.js +0 -1
  754. package/build/client/_app/immutable/chunks/D-3pI9hp.js.br +0 -0
  755. package/build/client/_app/immutable/chunks/D-3pI9hp.js.gz +0 -0
  756. package/build/client/_app/immutable/chunks/D-Fls4-N.js +0 -1
  757. package/build/client/_app/immutable/chunks/D-Fls4-N.js.br +0 -0
  758. package/build/client/_app/immutable/chunks/D-Fls4-N.js.gz +0 -0
  759. package/build/client/_app/immutable/chunks/D1xkoVpc.js +0 -1
  760. package/build/client/_app/immutable/chunks/D1xkoVpc.js.br +0 -3
  761. package/build/client/_app/immutable/chunks/D1xkoVpc.js.gz +0 -0
  762. package/build/client/_app/immutable/chunks/DRpLcVdK.js +0 -1
  763. package/build/client/_app/immutable/chunks/DRpLcVdK.js.br +0 -0
  764. package/build/client/_app/immutable/chunks/DRpLcVdK.js.gz +0 -0
  765. package/build/client/_app/immutable/chunks/DYfK6Plb.js +0 -1
  766. package/build/client/_app/immutable/chunks/DYfK6Plb.js.br +0 -1
  767. package/build/client/_app/immutable/chunks/DYfK6Plb.js.gz +0 -0
  768. package/build/client/_app/immutable/chunks/DZM0bVcB.js +0 -1
  769. package/build/client/_app/immutable/chunks/DZM0bVcB.js.br +0 -0
  770. package/build/client/_app/immutable/chunks/DZM0bVcB.js.gz +0 -0
  771. package/build/client/_app/immutable/chunks/D_gPt7DB.js +0 -1
  772. package/build/client/_app/immutable/chunks/D_gPt7DB.js.br +0 -0
  773. package/build/client/_app/immutable/chunks/D_gPt7DB.js.gz +0 -0
  774. package/build/client/_app/immutable/chunks/DdEmEaOR.js +0 -1
  775. package/build/client/_app/immutable/chunks/DdEmEaOR.js.br +0 -0
  776. package/build/client/_app/immutable/chunks/DdEmEaOR.js.gz +0 -0
  777. package/build/client/_app/immutable/chunks/De-Sjn1V.js +0 -1
  778. package/build/client/_app/immutable/chunks/De-Sjn1V.js.br +0 -0
  779. package/build/client/_app/immutable/chunks/De-Sjn1V.js.gz +0 -0
  780. package/build/client/_app/immutable/chunks/DeMiewtM.js +0 -1
  781. package/build/client/_app/immutable/chunks/DeMiewtM.js.br +0 -0
  782. package/build/client/_app/immutable/chunks/DeMiewtM.js.gz +0 -0
  783. package/build/client/_app/immutable/chunks/DfbumCTS.js +0 -1
  784. package/build/client/_app/immutable/chunks/DfbumCTS.js.br +0 -0
  785. package/build/client/_app/immutable/chunks/DfbumCTS.js.gz +0 -0
  786. package/build/client/_app/immutable/chunks/Diyh8RG-.js +0 -1
  787. package/build/client/_app/immutable/chunks/Diyh8RG-.js.br +0 -0
  788. package/build/client/_app/immutable/chunks/Diyh8RG-.js.gz +0 -0
  789. package/build/client/_app/immutable/chunks/DkVLFJC2.js +0 -64
  790. package/build/client/_app/immutable/chunks/DkVLFJC2.js.br +0 -0
  791. package/build/client/_app/immutable/chunks/DkVLFJC2.js.gz +0 -0
  792. package/build/client/_app/immutable/chunks/Dl_x4ktn.js +0 -1
  793. package/build/client/_app/immutable/chunks/Dl_x4ktn.js.br +0 -0
  794. package/build/client/_app/immutable/chunks/Dl_x4ktn.js.gz +0 -0
  795. package/build/client/_app/immutable/chunks/Dn_lJm0y.js +0 -1
  796. package/build/client/_app/immutable/chunks/Dn_lJm0y.js.br +0 -0
  797. package/build/client/_app/immutable/chunks/Dn_lJm0y.js.gz +0 -0
  798. package/build/client/_app/immutable/chunks/DoPqAbzy.js +0 -3
  799. package/build/client/_app/immutable/chunks/DoPqAbzy.js.br +0 -0
  800. package/build/client/_app/immutable/chunks/DoPqAbzy.js.gz +0 -0
  801. package/build/client/_app/immutable/chunks/DqK2lhM-.js +0 -1
  802. package/build/client/_app/immutable/chunks/DqK2lhM-.js.br +0 -0
  803. package/build/client/_app/immutable/chunks/DqK2lhM-.js.gz +0 -0
  804. package/build/client/_app/immutable/chunks/Dr-qnmvi.js +0 -1
  805. package/build/client/_app/immutable/chunks/Dr-qnmvi.js.br +0 -0
  806. package/build/client/_app/immutable/chunks/Dr-qnmvi.js.gz +0 -0
  807. package/build/client/_app/immutable/chunks/DtFVCiwY.js +0 -1
  808. package/build/client/_app/immutable/chunks/DtFVCiwY.js.br +0 -0
  809. package/build/client/_app/immutable/chunks/DtFVCiwY.js.gz +0 -0
  810. package/build/client/_app/immutable/chunks/Q9Y439fs.js +0 -1
  811. package/build/client/_app/immutable/chunks/Q9Y439fs.js.br +0 -0
  812. package/build/client/_app/immutable/chunks/Q9Y439fs.js.gz +0 -0
  813. package/build/client/_app/immutable/chunks/Uv0-HWHq.js +0 -1
  814. package/build/client/_app/immutable/chunks/Uv0-HWHq.js.br +0 -0
  815. package/build/client/_app/immutable/chunks/Uv0-HWHq.js.gz +0 -0
  816. package/build/client/_app/immutable/chunks/cFjfoNla.js +0 -1
  817. package/build/client/_app/immutable/chunks/cFjfoNla.js.br +0 -0
  818. package/build/client/_app/immutable/chunks/cFjfoNla.js.gz +0 -0
  819. package/build/client/_app/immutable/chunks/snZK0J5H.js +0 -1
  820. package/build/client/_app/immutable/chunks/snZK0J5H.js.br +0 -0
  821. package/build/client/_app/immutable/chunks/snZK0J5H.js.gz +0 -0
  822. package/build/client/_app/immutable/chunks/vyYztzrZ.js +0 -1
  823. package/build/client/_app/immutable/chunks/vyYztzrZ.js.br +0 -0
  824. package/build/client/_app/immutable/chunks/vyYztzrZ.js.gz +0 -0
  825. package/build/client/_app/immutable/chunks/wRsUbPEe.js +0 -1
  826. package/build/client/_app/immutable/chunks/wRsUbPEe.js.br +0 -0
  827. package/build/client/_app/immutable/chunks/wRsUbPEe.js.gz +0 -0
  828. package/build/client/_app/immutable/chunks/xQ1SsCxk.js +0 -1
  829. package/build/client/_app/immutable/chunks/xQ1SsCxk.js.br +0 -0
  830. package/build/client/_app/immutable/chunks/xQ1SsCxk.js.gz +0 -0
  831. package/build/client/_app/immutable/entry/app.09tvh6Se.js +0 -2
  832. package/build/client/_app/immutable/entry/app.09tvh6Se.js.br +0 -0
  833. package/build/client/_app/immutable/entry/app.09tvh6Se.js.gz +0 -0
  834. package/build/client/_app/immutable/entry/start.CdsoeaJo.js +0 -1
  835. package/build/client/_app/immutable/entry/start.CdsoeaJo.js.br +0 -2
  836. package/build/client/_app/immutable/entry/start.CdsoeaJo.js.gz +0 -0
  837. package/build/client/_app/immutable/nodes/0.Dr3zOYh5.js +0 -9
  838. package/build/client/_app/immutable/nodes/0.Dr3zOYh5.js.br +0 -0
  839. package/build/client/_app/immutable/nodes/0.Dr3zOYh5.js.gz +0 -0
  840. package/build/client/_app/immutable/nodes/1.BinGQMTR.js +0 -1
  841. package/build/client/_app/immutable/nodes/1.BinGQMTR.js.br +0 -0
  842. package/build/client/_app/immutable/nodes/1.BinGQMTR.js.gz +0 -0
  843. package/build/client/_app/immutable/nodes/10.lZeHcKpq.js +0 -3
  844. package/build/client/_app/immutable/nodes/10.lZeHcKpq.js.br +0 -0
  845. package/build/client/_app/immutable/nodes/10.lZeHcKpq.js.gz +0 -0
  846. package/build/client/_app/immutable/nodes/11.B3nd7eqm.js +0 -2
  847. package/build/client/_app/immutable/nodes/11.B3nd7eqm.js.br +0 -0
  848. package/build/client/_app/immutable/nodes/11.B3nd7eqm.js.gz +0 -0
  849. package/build/client/_app/immutable/nodes/12.C3AQ8jKc.js +0 -1
  850. package/build/client/_app/immutable/nodes/12.C3AQ8jKc.js.br +0 -0
  851. package/build/client/_app/immutable/nodes/12.C3AQ8jKc.js.gz +0 -0
  852. package/build/client/_app/immutable/nodes/13.BhyPMdJg.js +0 -2
  853. package/build/client/_app/immutable/nodes/13.BhyPMdJg.js.br +0 -0
  854. package/build/client/_app/immutable/nodes/13.BhyPMdJg.js.gz +0 -0
  855. package/build/client/_app/immutable/nodes/14.BCskMTTX.js +0 -2
  856. package/build/client/_app/immutable/nodes/14.BCskMTTX.js.br +0 -0
  857. package/build/client/_app/immutable/nodes/14.BCskMTTX.js.gz +0 -0
  858. package/build/client/_app/immutable/nodes/15.DFduRu8X.js +0 -13
  859. package/build/client/_app/immutable/nodes/15.DFduRu8X.js.br +0 -0
  860. package/build/client/_app/immutable/nodes/15.DFduRu8X.js.gz +0 -0
  861. package/build/client/_app/immutable/nodes/16.k2eOyLft.js +0 -6
  862. package/build/client/_app/immutable/nodes/16.k2eOyLft.js.br +0 -0
  863. package/build/client/_app/immutable/nodes/16.k2eOyLft.js.gz +0 -0
  864. package/build/client/_app/immutable/nodes/17.UOq3rPnW.js +0 -2
  865. package/build/client/_app/immutable/nodes/17.UOq3rPnW.js.br +0 -0
  866. package/build/client/_app/immutable/nodes/17.UOq3rPnW.js.gz +0 -0
  867. package/build/client/_app/immutable/nodes/19.BfnNfjHd.js +0 -2
  868. package/build/client/_app/immutable/nodes/19.BfnNfjHd.js.br +0 -0
  869. package/build/client/_app/immutable/nodes/19.BfnNfjHd.js.gz +0 -0
  870. package/build/client/_app/immutable/nodes/2.BVRyhmlu.js +0 -1
  871. package/build/client/_app/immutable/nodes/2.BVRyhmlu.js.br +0 -0
  872. package/build/client/_app/immutable/nodes/2.BVRyhmlu.js.gz +0 -0
  873. package/build/client/_app/immutable/nodes/20.BwMu_6dK.js +0 -11
  874. package/build/client/_app/immutable/nodes/20.BwMu_6dK.js.br +0 -0
  875. package/build/client/_app/immutable/nodes/20.BwMu_6dK.js.gz +0 -0
  876. package/build/client/_app/immutable/nodes/21.BlFRuNYB.js +0 -6
  877. package/build/client/_app/immutable/nodes/21.BlFRuNYB.js.br +0 -0
  878. package/build/client/_app/immutable/nodes/21.BlFRuNYB.js.gz +0 -0
  879. package/build/client/_app/immutable/nodes/23.lhoyDlwS.js +0 -16
  880. package/build/client/_app/immutable/nodes/23.lhoyDlwS.js.br +0 -0
  881. package/build/client/_app/immutable/nodes/23.lhoyDlwS.js.gz +0 -0
  882. package/build/client/_app/immutable/nodes/24.BHPSI0Zf.js +0 -6
  883. package/build/client/_app/immutable/nodes/24.BHPSI0Zf.js.br +0 -0
  884. package/build/client/_app/immutable/nodes/24.BHPSI0Zf.js.gz +0 -0
  885. package/build/client/_app/immutable/nodes/25.Boy7QQiW.js +0 -1
  886. package/build/client/_app/immutable/nodes/25.Boy7QQiW.js.br +0 -0
  887. package/build/client/_app/immutable/nodes/25.Boy7QQiW.js.gz +0 -0
  888. package/build/client/_app/immutable/nodes/26.JTwwV2O8.js +0 -3
  889. package/build/client/_app/immutable/nodes/26.JTwwV2O8.js.br +0 -0
  890. package/build/client/_app/immutable/nodes/26.JTwwV2O8.js.gz +0 -0
  891. package/build/client/_app/immutable/nodes/27.C1icpz7z.js +0 -4
  892. package/build/client/_app/immutable/nodes/27.C1icpz7z.js.br +0 -0
  893. package/build/client/_app/immutable/nodes/27.C1icpz7z.js.gz +0 -0
  894. package/build/client/_app/immutable/nodes/28.BJgC5M9K.js +0 -4
  895. package/build/client/_app/immutable/nodes/28.BJgC5M9K.js.br +0 -0
  896. package/build/client/_app/immutable/nodes/28.BJgC5M9K.js.gz +0 -0
  897. package/build/client/_app/immutable/nodes/29.D1pyBnax.js +0 -2
  898. package/build/client/_app/immutable/nodes/29.D1pyBnax.js.br +0 -0
  899. package/build/client/_app/immutable/nodes/29.D1pyBnax.js.gz +0 -0
  900. package/build/client/_app/immutable/nodes/3.CUC4G9Nh.js +0 -1
  901. package/build/client/_app/immutable/nodes/3.CUC4G9Nh.js.br +0 -0
  902. package/build/client/_app/immutable/nodes/3.CUC4G9Nh.js.gz +0 -0
  903. package/build/client/_app/immutable/nodes/30.D0ffyv91.js +0 -2
  904. package/build/client/_app/immutable/nodes/30.D0ffyv91.js.br +0 -0
  905. package/build/client/_app/immutable/nodes/30.D0ffyv91.js.gz +0 -0
  906. package/build/client/_app/immutable/nodes/31.SiZTd523.js +0 -2
  907. package/build/client/_app/immutable/nodes/31.SiZTd523.js.br +0 -0
  908. package/build/client/_app/immutable/nodes/31.SiZTd523.js.gz +0 -0
  909. package/build/client/_app/immutable/nodes/32.9Ta_FSIA.js +0 -3
  910. package/build/client/_app/immutable/nodes/32.9Ta_FSIA.js.br +0 -0
  911. package/build/client/_app/immutable/nodes/32.9Ta_FSIA.js.gz +0 -0
  912. package/build/client/_app/immutable/nodes/5.Ch3zJDwF.js +0 -1
  913. package/build/client/_app/immutable/nodes/5.Ch3zJDwF.js.br +0 -2
  914. package/build/client/_app/immutable/nodes/5.Ch3zJDwF.js.gz +0 -0
  915. package/build/client/_app/immutable/nodes/6.BMl8cugB.js +0 -1
  916. package/build/client/_app/immutable/nodes/6.BMl8cugB.js.br +0 -0
  917. package/build/client/_app/immutable/nodes/6.BMl8cugB.js.gz +0 -0
  918. package/build/client/_app/immutable/nodes/7.DKBYaDzG.js +0 -1
  919. package/build/client/_app/immutable/nodes/7.DKBYaDzG.js.br +0 -0
  920. package/build/client/_app/immutable/nodes/7.DKBYaDzG.js.gz +0 -0
  921. package/build/client/_app/immutable/nodes/8.oeqwCIb7.js +0 -2
  922. package/build/client/_app/immutable/nodes/8.oeqwCIb7.js.br +0 -0
  923. package/build/client/_app/immutable/nodes/8.oeqwCIb7.js.gz +0 -0
  924. package/build/client/_app/immutable/nodes/9.JvVEXEt0.js +0 -1
  925. package/build/client/_app/immutable/nodes/9.JvVEXEt0.js.br +0 -0
  926. package/build/client/_app/immutable/nodes/9.JvVEXEt0.js.gz +0 -0
  927. package/build/server/chunks/0-BGZb7GUr.js +0 -55
  928. package/build/server/chunks/0-BGZb7GUr.js.map +0 -1
  929. package/build/server/chunks/1-Bd5_Ktti.js +0 -9
  930. package/build/server/chunks/1-Bd5_Ktti.js.map +0 -1
  931. package/build/server/chunks/10-CoNR8vNf.js +0 -222
  932. package/build/server/chunks/10-CoNR8vNf.js.map +0 -1
  933. package/build/server/chunks/11-B8XsWabi.js +0 -59
  934. package/build/server/chunks/11-B8XsWabi.js.map +0 -1
  935. package/build/server/chunks/12-DVPsHnBz.js +0 -52
  936. package/build/server/chunks/12-DVPsHnBz.js.map +0 -1
  937. package/build/server/chunks/13-Dty8h7LU.js +0 -57
  938. package/build/server/chunks/13-Dty8h7LU.js.map +0 -1
  939. package/build/server/chunks/14-CcmFTDWx.js +0 -100
  940. package/build/server/chunks/14-CcmFTDWx.js.map +0 -1
  941. package/build/server/chunks/15-BCheyPjA.js +0 -45
  942. package/build/server/chunks/15-BCheyPjA.js.map +0 -1
  943. package/build/server/chunks/16-lCMAMYzW.js +0 -85
  944. package/build/server/chunks/16-lCMAMYzW.js.map +0 -1
  945. package/build/server/chunks/17-Buj0oOA7.js +0 -9
  946. package/build/server/chunks/17-Buj0oOA7.js.map +0 -1
  947. package/build/server/chunks/18-CM6a70dY.js +0 -74
  948. package/build/server/chunks/18-CM6a70dY.js.map +0 -1
  949. package/build/server/chunks/19-BHix_hIK.js +0 -94
  950. package/build/server/chunks/19-BHix_hIK.js.map +0 -1
  951. package/build/server/chunks/2-D8n52e0g.js +0 -43
  952. package/build/server/chunks/2-D8n52e0g.js.map +0 -1
  953. package/build/server/chunks/20-BZTRaWqF.js +0 -196
  954. package/build/server/chunks/20-BZTRaWqF.js.map +0 -1
  955. package/build/server/chunks/21-WEKNoho-.js +0 -83
  956. package/build/server/chunks/21-WEKNoho-.js.map +0 -1
  957. package/build/server/chunks/23-q81fbwUe.js +0 -137
  958. package/build/server/chunks/23-q81fbwUe.js.map +0 -1
  959. package/build/server/chunks/24-CLAHERAA.js +0 -145
  960. package/build/server/chunks/24-CLAHERAA.js.map +0 -1
  961. package/build/server/chunks/25-BzYQ8Zk-.js +0 -51
  962. package/build/server/chunks/25-BzYQ8Zk-.js.map +0 -1
  963. package/build/server/chunks/26-Bfl58Hw3.js +0 -9
  964. package/build/server/chunks/26-Bfl58Hw3.js.map +0 -1
  965. package/build/server/chunks/27-14n2oeiY.js +0 -57
  966. package/build/server/chunks/27-14n2oeiY.js.map +0 -1
  967. package/build/server/chunks/28-BYTHjf77.js +0 -69
  968. package/build/server/chunks/28-BYTHjf77.js.map +0 -1
  969. package/build/server/chunks/29-Uu9LAkQF.js +0 -55
  970. package/build/server/chunks/29-Uu9LAkQF.js.map +0 -1
  971. package/build/server/chunks/3-Czbm8V7y.js +0 -9
  972. package/build/server/chunks/3-Czbm8V7y.js.map +0 -1
  973. package/build/server/chunks/30-BBBNNzbB.js +0 -57
  974. package/build/server/chunks/30-BBBNNzbB.js.map +0 -1
  975. package/build/server/chunks/31-CQ-8s0Lw.js +0 -42
  976. package/build/server/chunks/31-CQ-8s0Lw.js.map +0 -1
  977. package/build/server/chunks/32-BmsICS9-.js +0 -34
  978. package/build/server/chunks/32-BmsICS9-.js.map +0 -1
  979. package/build/server/chunks/5-DHnM6DGt.js +0 -32
  980. package/build/server/chunks/5-DHnM6DGt.js.map +0 -1
  981. package/build/server/chunks/6-C4Vpgjrj.js +0 -40
  982. package/build/server/chunks/6-C4Vpgjrj.js.map +0 -1
  983. package/build/server/chunks/7-ZQ9mLTB2.js +0 -19
  984. package/build/server/chunks/7-ZQ9mLTB2.js.map +0 -1
  985. package/build/server/chunks/8-BS2o-Nbt.js +0 -130
  986. package/build/server/chunks/8-BS2o-Nbt.js.map +0 -1
  987. package/build/server/chunks/9-Cjc4QJfo.js +0 -48
  988. package/build/server/chunks/9-Cjc4QJfo.js.map +0 -1
  989. package/build/server/chunks/AppHeader-6ioAYhJf.js +0 -271
  990. package/build/server/chunks/AppHeader-6ioAYhJf.js.map +0 -1
  991. package/build/server/chunks/DefinitionCard-O1k8h5Pi.js +0 -258
  992. package/build/server/chunks/DefinitionCard-O1k8h5Pi.js.map +0 -1
  993. package/build/server/chunks/ErrorScreen-SHK14bo6.js +0 -131
  994. package/build/server/chunks/ErrorScreen-SHK14bo6.js.map +0 -1
  995. package/build/server/chunks/FilterableDropdown-W9AjyS0M.js +0 -61
  996. package/build/server/chunks/FilterableDropdown-W9AjyS0M.js.map +0 -1
  997. package/build/server/chunks/Icon-DbkwAOkZ.js +0 -76
  998. package/build/server/chunks/Icon-DbkwAOkZ.js.map +0 -1
  999. package/build/server/chunks/Icon2-DbkwAOkZ.js +0 -76
  1000. package/build/server/chunks/Icon2-DbkwAOkZ.js.map +0 -1
  1001. package/build/server/chunks/StatCard-Cj4i7_IY.js +0 -50
  1002. package/build/server/chunks/StatCard-Cj4i7_IY.js.map +0 -1
  1003. package/build/server/chunks/UserChip-fy4ucYa9.js +0 -1241
  1004. package/build/server/chunks/UserChip-fy4ucYa9.js.map +0 -1
  1005. package/build/server/chunks/_error.svelte-B_dLYaey.js +0 -30
  1006. package/build/server/chunks/_error.svelte-B_dLYaey.js.map +0 -1
  1007. package/build/server/chunks/_error.svelte-D_qATeW2.js +0 -28
  1008. package/build/server/chunks/_error.svelte-D_qATeW2.js.map +0 -1
  1009. package/build/server/chunks/_layout.svelte-BNCiY_LE.js +0 -107
  1010. package/build/server/chunks/_layout.svelte-BNCiY_LE.js.map +0 -1
  1011. package/build/server/chunks/_layout.svelte-BR1971uC.js +0 -154
  1012. package/build/server/chunks/_layout.svelte-BR1971uC.js.map +0 -1
  1013. package/build/server/chunks/_layout.svelte-CHTfYN7Z.js +0 -44
  1014. package/build/server/chunks/_layout.svelte-CHTfYN7Z.js.map +0 -1
  1015. package/build/server/chunks/_layout.svelte-DtDfOje_.js +0 -1042
  1016. package/build/server/chunks/_layout.svelte-DtDfOje_.js.map +0 -1
  1017. package/build/server/chunks/_page.svelte-2a3XlI01.js +0 -120
  1018. package/build/server/chunks/_page.svelte-2a3XlI01.js.map +0 -1
  1019. package/build/server/chunks/_page.svelte-6m8-zq9_.js +0 -10755
  1020. package/build/server/chunks/_page.svelte-6m8-zq9_.js.map +0 -1
  1021. package/build/server/chunks/_page.svelte-B-BjG1Bg.js +0 -332
  1022. package/build/server/chunks/_page.svelte-B-BjG1Bg.js.map +0 -1
  1023. package/build/server/chunks/_page.svelte-B2tNMNfb.js +0 -454
  1024. package/build/server/chunks/_page.svelte-B2tNMNfb.js.map +0 -1
  1025. package/build/server/chunks/_page.svelte-BEuBbeea.js +0 -920
  1026. package/build/server/chunks/_page.svelte-BEuBbeea.js.map +0 -1
  1027. package/build/server/chunks/_page.svelte-BLjq8C2p.js +0 -611
  1028. package/build/server/chunks/_page.svelte-BLjq8C2p.js.map +0 -1
  1029. package/build/server/chunks/_page.svelte-BX7fFjm7.js +0 -251
  1030. package/build/server/chunks/_page.svelte-BX7fFjm7.js.map +0 -1
  1031. package/build/server/chunks/_page.svelte-BXQInprQ.js +0 -275
  1032. package/build/server/chunks/_page.svelte-BXQInprQ.js.map +0 -1
  1033. package/build/server/chunks/_page.svelte-Bc3Ab2ud.js +0 -169
  1034. package/build/server/chunks/_page.svelte-Bc3Ab2ud.js.map +0 -1
  1035. package/build/server/chunks/_page.svelte-BziMQdom.js +0 -114
  1036. package/build/server/chunks/_page.svelte-BziMQdom.js.map +0 -1
  1037. package/build/server/chunks/_page.svelte-CYxHCZCC.js +0 -84
  1038. package/build/server/chunks/_page.svelte-CYxHCZCC.js.map +0 -1
  1039. package/build/server/chunks/_page.svelte-CckrYvJ6.js +0 -147
  1040. package/build/server/chunks/_page.svelte-CckrYvJ6.js.map +0 -1
  1041. package/build/server/chunks/_page.svelte-Cf8MfOXQ.js +0 -596
  1042. package/build/server/chunks/_page.svelte-Cf8MfOXQ.js.map +0 -1
  1043. package/build/server/chunks/_page.svelte-CxuFmBkK.js +0 -302
  1044. package/build/server/chunks/_page.svelte-CxuFmBkK.js.map +0 -1
  1045. package/build/server/chunks/_page.svelte-DphuJQee.js +0 -331
  1046. package/build/server/chunks/_page.svelte-DphuJQee.js.map +0 -1
  1047. package/build/server/chunks/_page.svelte-Dun4nEWl.js +0 -277
  1048. package/build/server/chunks/_page.svelte-Dun4nEWl.js.map +0 -1
  1049. package/build/server/chunks/_page.svelte-ELmid_qG.js +0 -120
  1050. package/build/server/chunks/_page.svelte-ELmid_qG.js.map +0 -1
  1051. package/build/server/chunks/_page.svelte-HTC9yaHJ.js +0 -71
  1052. package/build/server/chunks/_page.svelte-HTC9yaHJ.js.map +0 -1
  1053. package/build/server/chunks/_page.svelte-UNbcR5Wq.js +0 -715
  1054. package/build/server/chunks/_page.svelte-UNbcR5Wq.js.map +0 -1
  1055. package/build/server/chunks/_page.svelte-W41FvlvN.js +0 -530
  1056. package/build/server/chunks/_page.svelte-W41FvlvN.js.map +0 -1
  1057. package/build/server/chunks/_page.svelte-XLccLxWu.js +0 -558
  1058. package/build/server/chunks/_page.svelte-XLccLxWu.js.map +0 -1
  1059. package/build/server/chunks/_page.svelte-YVHQEj69.js +0 -3899
  1060. package/build/server/chunks/_page.svelte-YVHQEj69.js.map +0 -1
  1061. package/build/server/chunks/_page.svelte-pEdM2bKS.js +0 -57
  1062. package/build/server/chunks/_page.svelte-pEdM2bKS.js.map +0 -1
  1063. package/build/server/chunks/_page.svelte-tQDqmoYu.js +0 -425
  1064. package/build/server/chunks/_page.svelte-tQDqmoYu.js.map +0 -1
  1065. package/build/server/chunks/_server.ts-A3y5hBxw.js +0 -40
  1066. package/build/server/chunks/_server.ts-A3y5hBxw.js.map +0 -1
  1067. package/build/server/chunks/_server.ts-B5jlr2iF.js +0 -72
  1068. package/build/server/chunks/_server.ts-B5jlr2iF.js.map +0 -1
  1069. package/build/server/chunks/_server.ts-BLhNqGtF.js +0 -39
  1070. package/build/server/chunks/_server.ts-BLhNqGtF.js.map +0 -1
  1071. package/build/server/chunks/_server.ts-BON6qGm5.js +0 -77
  1072. package/build/server/chunks/_server.ts-BON6qGm5.js.map +0 -1
  1073. package/build/server/chunks/_server.ts-BO_GwwIE.js +0 -43
  1074. package/build/server/chunks/_server.ts-BO_GwwIE.js.map +0 -1
  1075. package/build/server/chunks/_server.ts-BUw5lGMN.js +0 -111
  1076. package/build/server/chunks/_server.ts-BUw5lGMN.js.map +0 -1
  1077. package/build/server/chunks/_server.ts-Bhj8Vx5l.js +0 -108
  1078. package/build/server/chunks/_server.ts-Bhj8Vx5l.js.map +0 -1
  1079. package/build/server/chunks/_server.ts-BqlGKKaE.js +0 -50
  1080. package/build/server/chunks/_server.ts-BqlGKKaE.js.map +0 -1
  1081. package/build/server/chunks/_server.ts-C-MiDKCm.js +0 -31
  1082. package/build/server/chunks/_server.ts-C-MiDKCm.js.map +0 -1
  1083. package/build/server/chunks/_server.ts-C05I9RVA.js +0 -40
  1084. package/build/server/chunks/_server.ts-C05I9RVA.js.map +0 -1
  1085. package/build/server/chunks/_server.ts-C4BZG5kA.js +0 -32
  1086. package/build/server/chunks/_server.ts-C4BZG5kA.js.map +0 -1
  1087. package/build/server/chunks/_server.ts-CEE9G3nv.js +0 -80
  1088. package/build/server/chunks/_server.ts-CEE9G3nv.js.map +0 -1
  1089. package/build/server/chunks/_server.ts-CJ37R1sx.js +0 -37
  1090. package/build/server/chunks/_server.ts-CJ37R1sx.js.map +0 -1
  1091. package/build/server/chunks/_server.ts-CJ5P0_cD.js +0 -75
  1092. package/build/server/chunks/_server.ts-CJ5P0_cD.js.map +0 -1
  1093. package/build/server/chunks/_server.ts-Ca-ZnaSe.js +0 -51
  1094. package/build/server/chunks/_server.ts-Ca-ZnaSe.js.map +0 -1
  1095. package/build/server/chunks/_server.ts-CewoOx5S.js +0 -60
  1096. package/build/server/chunks/_server.ts-CewoOx5S.js.map +0 -1
  1097. package/build/server/chunks/_server.ts-ChhV0tlQ.js +0 -86
  1098. package/build/server/chunks/_server.ts-ChhV0tlQ.js.map +0 -1
  1099. package/build/server/chunks/_server.ts-Ck5KHS5f.js +0 -36
  1100. package/build/server/chunks/_server.ts-Ck5KHS5f.js.map +0 -1
  1101. package/build/server/chunks/_server.ts-ClymRXMH.js +0 -44
  1102. package/build/server/chunks/_server.ts-ClymRXMH.js.map +0 -1
  1103. package/build/server/chunks/_server.ts-CsWWoLDJ.js +0 -41
  1104. package/build/server/chunks/_server.ts-CsWWoLDJ.js.map +0 -1
  1105. package/build/server/chunks/_server.ts-CtJaazcE.js +0 -83
  1106. package/build/server/chunks/_server.ts-CtJaazcE.js.map +0 -1
  1107. package/build/server/chunks/_server.ts-CyjVVRiT.js +0 -84
  1108. package/build/server/chunks/_server.ts-CyjVVRiT.js.map +0 -1
  1109. package/build/server/chunks/_server.ts-D0PjwFdv.js +0 -39
  1110. package/build/server/chunks/_server.ts-D0PjwFdv.js.map +0 -1
  1111. package/build/server/chunks/_server.ts-D7tgGcoB.js +0 -33
  1112. package/build/server/chunks/_server.ts-D7tgGcoB.js.map +0 -1
  1113. package/build/server/chunks/_server.ts-D9Jw0wGY.js +0 -398
  1114. package/build/server/chunks/_server.ts-D9Jw0wGY.js.map +0 -1
  1115. package/build/server/chunks/_server.ts-DBV9dA6A.js +0 -105
  1116. package/build/server/chunks/_server.ts-DBV9dA6A.js.map +0 -1
  1117. package/build/server/chunks/_server.ts-DLUA6_Lf.js +0 -327
  1118. package/build/server/chunks/_server.ts-DLUA6_Lf.js.map +0 -1
  1119. package/build/server/chunks/_server.ts-DM01ishT.js +0 -88
  1120. package/build/server/chunks/_server.ts-DM01ishT.js.map +0 -1
  1121. package/build/server/chunks/_server.ts-DNeVKrs8.js +0 -96
  1122. package/build/server/chunks/_server.ts-DNeVKrs8.js.map +0 -1
  1123. package/build/server/chunks/_server.ts-DWCKRNAG.js +0 -60
  1124. package/build/server/chunks/_server.ts-DWCKRNAG.js.map +0 -1
  1125. package/build/server/chunks/_server.ts-Db9C0y4L.js +0 -162
  1126. package/build/server/chunks/_server.ts-Db9C0y4L.js.map +0 -1
  1127. package/build/server/chunks/_server.ts-DlDf2qpE.js +0 -41
  1128. package/build/server/chunks/_server.ts-DlDf2qpE.js.map +0 -1
  1129. package/build/server/chunks/_server.ts-DmqbBNeI.js +0 -65
  1130. package/build/server/chunks/_server.ts-DmqbBNeI.js.map +0 -1
  1131. package/build/server/chunks/_server.ts-DwqLpa_k.js +0 -73
  1132. package/build/server/chunks/_server.ts-DwqLpa_k.js.map +0 -1
  1133. package/build/server/chunks/_server.ts-IVIAzAUs.js +0 -63
  1134. package/build/server/chunks/_server.ts-IVIAzAUs.js.map +0 -1
  1135. package/build/server/chunks/_server.ts-Xpgu2-ka.js +0 -101
  1136. package/build/server/chunks/_server.ts-Xpgu2-ka.js.map +0 -1
  1137. package/build/server/chunks/_server.ts-eVLE380Q.js +0 -31
  1138. package/build/server/chunks/_server.ts-eVLE380Q.js.map +0 -1
  1139. package/build/server/chunks/_server.ts-kighVn_d.js +0 -39
  1140. package/build/server/chunks/_server.ts-kighVn_d.js.map +0 -1
  1141. package/build/server/chunks/_server.ts-r2RVYvYA.js +0 -83
  1142. package/build/server/chunks/_server.ts-r2RVYvYA.js.map +0 -1
  1143. package/build/server/chunks/access.server-ByXvmWyF.js +0 -413
  1144. package/build/server/chunks/access.server-ByXvmWyF.js.map +0 -1
  1145. package/build/server/chunks/activity-BjtW_4T-.js +0 -18
  1146. package/build/server/chunks/activity-BjtW_4T-.js.map +0 -1
  1147. package/build/server/chunks/alert-description-CUK0afmb.js +0 -59
  1148. package/build/server/chunks/alert-description-CUK0afmb.js.map +0 -1
  1149. package/build/server/chunks/api-errors-C0SWfJj5.js +0 -101
  1150. package/build/server/chunks/api-errors-C0SWfJj5.js.map +0 -1
  1151. package/build/server/chunks/arrow-left-D0KqaESK.js +0 -14
  1152. package/build/server/chunks/arrow-left-D0KqaESK.js.map +0 -1
  1153. package/build/server/chunks/arrow-right-Bi1uWbBU.js +0 -14
  1154. package/build/server/chunks/arrow-right-Bi1uWbBU.js.map +0 -1
  1155. package/build/server/chunks/auth-bootstrap.server-zvPqZ6kt.js +0 -99
  1156. package/build/server/chunks/auth-bootstrap.server-zvPqZ6kt.js.map +0 -1
  1157. package/build/server/chunks/badge-Dslv369v.js +0 -50
  1158. package/build/server/chunks/badge-Dslv369v.js.map +0 -1
  1159. package/build/server/chunks/bootHealth.server-CLLVkbZZ.js +0 -58
  1160. package/build/server/chunks/bootHealth.server-CLLVkbZZ.js.map +0 -1
  1161. package/build/server/chunks/building-2-DJFEkZmC.js +0 -22
  1162. package/build/server/chunks/building-2-DJFEkZmC.js.map +0 -1
  1163. package/build/server/chunks/button-1GF48U_O.js +0 -73
  1164. package/build/server/chunks/button-1GF48U_O.js.map +0 -1
  1165. package/build/server/chunks/card-content-CLRedGcu.js +0 -46
  1166. package/build/server/chunks/card-content-CLRedGcu.js.map +0 -1
  1167. package/build/server/chunks/card-description-Cvz9Nl_J.js +0 -26
  1168. package/build/server/chunks/card-description-Cvz9Nl_J.js.map +0 -1
  1169. package/build/server/chunks/card-title-f3nMy4Cc.js +0 -46
  1170. package/build/server/chunks/card-title-f3nMy4Cc.js.map +0 -1
  1171. package/build/server/chunks/chevron-down-Cqowxf45.js +0 -11
  1172. package/build/server/chunks/chevron-down-Cqowxf45.js.map +0 -1
  1173. package/build/server/chunks/chevron-down2-HiD5tdXf.js +0 -11
  1174. package/build/server/chunks/chevron-down2-HiD5tdXf.js.map +0 -1
  1175. package/build/server/chunks/chevron-right-BZ8x48EK.js +0 -11
  1176. package/build/server/chunks/chevron-right-BZ8x48EK.js.map +0 -1
  1177. package/build/server/chunks/circle-CeSIvmWj.js +0 -11
  1178. package/build/server/chunks/circle-CeSIvmWj.js.map +0 -1
  1179. package/build/server/chunks/circle-alert-DNsq-x3V.js +0 -18
  1180. package/build/server/chunks/circle-alert-DNsq-x3V.js.map +0 -1
  1181. package/build/server/chunks/circle-alert2-Doldk45G.js +0 -18
  1182. package/build/server/chunks/circle-alert2-Doldk45G.js.map +0 -1
  1183. package/build/server/chunks/computeLimits-5PaWFMYq.js +0 -27
  1184. package/build/server/chunks/computeLimits-5PaWFMYq.js.map +0 -1
  1185. package/build/server/chunks/context-DKDYb-He.js +0 -138
  1186. package/build/server/chunks/context-DKDYb-He.js.map +0 -1
  1187. package/build/server/chunks/copy-DbzeZFQN.js +0 -29
  1188. package/build/server/chunks/copy-DbzeZFQN.js.map +0 -1
  1189. package/build/server/chunks/dialog-description-8UnYiAMX.js +0 -523
  1190. package/build/server/chunks/dialog-description-8UnYiAMX.js.map +0 -1
  1191. package/build/server/chunks/dialog-footer-CqbKEEQ-.js +0 -36
  1192. package/build/server/chunks/dialog-footer-CqbKEEQ-.js.map +0 -1
  1193. package/build/server/chunks/folder-kanban-BzEQk9ZB.js +0 -21
  1194. package/build/server/chunks/folder-kanban-BzEQk9ZB.js.map +0 -1
  1195. package/build/server/chunks/folder-open-CUgA3M22.js +0 -18
  1196. package/build/server/chunks/folder-open-CUgA3M22.js.map +0 -1
  1197. package/build/server/chunks/folders-DPJPvoz3.js +0 -24
  1198. package/build/server/chunks/folders-DPJPvoz3.js.map +0 -1
  1199. package/build/server/chunks/footerContext.svelte-oP__zW9C.js +0 -495
  1200. package/build/server/chunks/footerContext.svelte-oP__zW9C.js.map +0 -1
  1201. package/build/server/chunks/gauge-Az8B3w7C.js +0 -87
  1202. package/build/server/chunks/gauge-Az8B3w7C.js.map +0 -1
  1203. package/build/server/chunks/hooks.server-CwDixHQc.js +0 -218
  1204. package/build/server/chunks/hooks.server-CwDixHQc.js.map +0 -1
  1205. package/build/server/chunks/index2-D4a590Kd.js +0 -438
  1206. package/build/server/chunks/index2-D4a590Kd.js.map +0 -1
  1207. package/build/server/chunks/index3-0Z1R1__W.js +0 -4388
  1208. package/build/server/chunks/index3-0Z1R1__W.js.map +0 -1
  1209. package/build/server/chunks/index4-DWNr0jIL.js +0 -541
  1210. package/build/server/chunks/index4-DWNr0jIL.js.map +0 -1
  1211. package/build/server/chunks/input-DGJ03-ia.js +0 -53
  1212. package/build/server/chunks/input-DGJ03-ia.js.map +0 -1
  1213. package/build/server/chunks/label-Df1UqzdF.js +0 -112
  1214. package/build/server/chunks/label-Df1UqzdF.js.map +0 -1
  1215. package/build/server/chunks/link-2-dxaDBYcR.js +0 -15
  1216. package/build/server/chunks/link-2-dxaDBYcR.js.map +0 -1
  1217. package/build/server/chunks/mail-CXBfO_C7.js +0 -17
  1218. package/build/server/chunks/mail-CXBfO_C7.js.map +0 -1
  1219. package/build/server/chunks/noop-iPXixleG.js +0 -138
  1220. package/build/server/chunks/noop-iPXixleG.js.map +0 -1
  1221. package/build/server/chunks/package-CpyjZQq6.js +0 -29
  1222. package/build/server/chunks/package-CpyjZQq6.js.map +0 -1
  1223. package/build/server/chunks/permissions-compat.server-BDkKxDeZ.js +0 -19
  1224. package/build/server/chunks/permissions-compat.server-BDkKxDeZ.js.map +0 -1
  1225. package/build/server/chunks/permissions.server-7AwAAkY9.js +0 -8
  1226. package/build/server/chunks/permissions.server-7AwAAkY9.js.map +0 -1
  1227. package/build/server/chunks/plus-CY_pTStn.js +0 -11
  1228. package/build/server/chunks/plus-CY_pTStn.js.map +0 -1
  1229. package/build/server/chunks/providers.server-wGknM6CR.js +0 -4584
  1230. package/build/server/chunks/providers.server-wGknM6CR.js.map +0 -1
  1231. package/build/server/chunks/refresh-cw-CiiW6Kvx.js +0 -22
  1232. package/build/server/chunks/refresh-cw-CiiW6Kvx.js.map +0 -1
  1233. package/build/server/chunks/resolve.server-CvfANFCn.js +0 -50
  1234. package/build/server/chunks/resolve.server-CvfANFCn.js.map +0 -1
  1235. package/build/server/chunks/rotate-ccw-1C53L417.js +0 -17
  1236. package/build/server/chunks/rotate-ccw-1C53L417.js.map +0 -1
  1237. package/build/server/chunks/scroll-lock-BIz_BXmd.js +0 -1547
  1238. package/build/server/chunks/scroll-lock-BIz_BXmd.js.map +0 -1
  1239. package/build/server/chunks/scroll-text-CxtFfkcE.js +0 -21
  1240. package/build/server/chunks/scroll-text-CxtFfkcE.js.map +0 -1
  1241. package/build/server/chunks/server-C3-deqCy.js +0 -36
  1242. package/build/server/chunks/server-C3-deqCy.js.map +0 -1
  1243. package/build/server/chunks/settings-NH5q_HtF.js +0 -19
  1244. package/build/server/chunks/settings-NH5q_HtF.js.map +0 -1
  1245. package/build/server/chunks/shield-CHAFruKV.js +0 -18
  1246. package/build/server/chunks/shield-CHAFruKV.js.map +0 -1
  1247. package/build/server/chunks/shield-check-06Iz62as.js +0 -19
  1248. package/build/server/chunks/shield-check-06Iz62as.js.map +0 -1
  1249. package/build/server/chunks/star-bmBg3IsG.js +0 -18
  1250. package/build/server/chunks/star-bmBg3IsG.js.map +0 -1
  1251. package/build/server/chunks/textarea-A5IYPwqe.js +0 -685
  1252. package/build/server/chunks/textarea-A5IYPwqe.js.map +0 -1
  1253. package/build/server/chunks/trash-2-swQcKEqX.js +0 -17
  1254. package/build/server/chunks/trash-2-swQcKEqX.js.map +0 -1
  1255. package/build/server/chunks/triangle-alert-DuaFagu6.js +0 -20
  1256. package/build/server/chunks/triangle-alert-DuaFagu6.js.map +0 -1
  1257. package/build/server/chunks/user-plus-CPEDH5dh.js +0 -16
  1258. package/build/server/chunks/user-plus-CPEDH5dh.js.map +0 -1
  1259. package/build/server/chunks/users-Bd7CKN4d.js +0 -16
  1260. package/build/server/chunks/users-Bd7CKN4d.js.map +0 -1
  1261. package/build/server/chunks/utils2-BsnrDRob.js +0 -56
  1262. package/build/server/chunks/utils2-BsnrDRob.js.map +0 -1
  1263. package/build/server/chunks/utils3-B05Dmz_H.js +0 -9
  1264. package/build/server/chunks/utils3-B05Dmz_H.js.map +0 -1
  1265. package/build/server/chunks/x-e5o-84bg.js +0 -14
  1266. package/build/server/chunks/x-e5o-84bg.js.map +0 -1
@@ -0,0 +1,2853 @@
1
+ import { X as getAllContexts, I as derived } from './renderer-x4cX3Aau.js';
2
+ import { t as tick, m as mount, u as unmount } from './index-server2-BiZ3ccb0.js';
3
+ import { w as watch, o as noop, C as Context, i as isBrowser, e as ESCAPE, k as isHTMLElement$1, l as isIOS, j as isElementOrSVGElement, S as SPACE, d as ENTER, A as ARROW_DOWN, R as RovingFocusGroup, h as isElement, T as TAB, f as PAGE_UP, H as HOME, c as ARROW_UP, P as PAGE_DOWN, E as END, n as isSelectableInput, a as ARROW_LEFT, b as ARROW_RIGHT } from './noop-BGJY5rVY.js';
4
+ import 'clsx';
5
+ import { h as boxWith, w as simpleBox, k as createBitsAttrs, n as executeCallbacks, i as composeHandlers, s as isObject, a as attachRef, p as getDataOpenClosed, b as boolToEmptyStrOrUndef, c as boolToStr, q as getDataTransitionAttrs, v as mergeProps } from './create-id-B-AKukLt.js';
6
+ import { o as on } from './events-qfxQNxtp.js';
7
+ import { S as SvelteMap } from './index-server-DMc-UvjC.js';
8
+
9
+ function afterSleep(ms, cb) {
10
+ return setTimeout(cb, ms);
11
+ }
12
+ function afterTick(fn) {
13
+ tick().then(fn);
14
+ }
15
+ const ELEMENT_NODE = 1;
16
+ const DOCUMENT_NODE = 9;
17
+ const DOCUMENT_FRAGMENT_NODE = 11;
18
+ function isHTMLElement(node) {
19
+ return isObject(node) && node.nodeType === ELEMENT_NODE && typeof node.nodeName === "string";
20
+ }
21
+ function isDocument(node) {
22
+ return isObject(node) && node.nodeType === DOCUMENT_NODE;
23
+ }
24
+ function isWindow(node) {
25
+ return isObject(node) && node.constructor?.name === "VisualViewport";
26
+ }
27
+ function isNode(node) {
28
+ return isObject(node) && node.nodeType !== void 0;
29
+ }
30
+ function isShadowRoot(node) {
31
+ return isNode(node) && node.nodeType === DOCUMENT_FRAGMENT_NODE && "host" in node;
32
+ }
33
+ function contains(parent, child) {
34
+ if (!parent || !child)
35
+ return false;
36
+ if (!isHTMLElement(parent) || !isHTMLElement(child))
37
+ return false;
38
+ const rootNode = child.getRootNode?.();
39
+ if (parent === child)
40
+ return true;
41
+ if (parent.contains(child))
42
+ return true;
43
+ if (rootNode && isShadowRoot(rootNode)) {
44
+ let next2 = child;
45
+ while (next2) {
46
+ if (parent === next2)
47
+ return true;
48
+ next2 = next2.parentNode || next2.host;
49
+ }
50
+ }
51
+ return false;
52
+ }
53
+ function getDocument(node) {
54
+ if (isDocument(node))
55
+ return node;
56
+ if (isWindow(node))
57
+ return node.document;
58
+ return node?.ownerDocument ?? document;
59
+ }
60
+ function getWindow(node) {
61
+ if (isShadowRoot(node))
62
+ return getWindow(node.host);
63
+ if (isDocument(node))
64
+ return node.defaultView ?? window;
65
+ if (isHTMLElement(node))
66
+ return node.ownerDocument?.defaultView ?? window;
67
+ return window;
68
+ }
69
+ function getActiveElement(rootNode) {
70
+ let activeElement = rootNode.activeElement;
71
+ while (activeElement?.shadowRoot) {
72
+ const el = activeElement.shadowRoot.activeElement;
73
+ if (el === activeElement)
74
+ break;
75
+ else
76
+ activeElement = el;
77
+ }
78
+ return activeElement;
79
+ }
80
+ class DOMContext {
81
+ element;
82
+ #root = derived(() => {
83
+ if (!this.element.current) return document;
84
+ const rootNode = this.element.current.getRootNode() ?? document;
85
+ return rootNode;
86
+ });
87
+ get root() {
88
+ return this.#root();
89
+ }
90
+ set root($$value) {
91
+ return this.#root($$value);
92
+ }
93
+ constructor(element) {
94
+ if (typeof element === "function") {
95
+ this.element = boxWith(element);
96
+ } else {
97
+ this.element = element;
98
+ }
99
+ }
100
+ getDocument = () => {
101
+ return getDocument(this.root);
102
+ };
103
+ getWindow = () => {
104
+ return this.getDocument().defaultView ?? window;
105
+ };
106
+ getActiveElement = () => {
107
+ return getActiveElement(this.root);
108
+ };
109
+ isActiveElement = (node) => {
110
+ return node === this.getActiveElement();
111
+ };
112
+ getElementById(id) {
113
+ return this.root.getElementById(id);
114
+ }
115
+ querySelector = (selector) => {
116
+ if (!this.root) return null;
117
+ return this.root.querySelector(selector);
118
+ };
119
+ querySelectorAll = (selector) => {
120
+ if (!this.root) return [];
121
+ return this.root.querySelectorAll(selector);
122
+ };
123
+ setTimeout = (callback, delay) => {
124
+ return this.getWindow().setTimeout(callback, delay);
125
+ };
126
+ clearTimeout = (timeoutId) => {
127
+ return this.getWindow().clearTimeout(timeoutId);
128
+ };
129
+ }
130
+ class AnimationsComplete {
131
+ #opts;
132
+ #currentFrame = null;
133
+ #observer = null;
134
+ #runId = 0;
135
+ constructor(opts) {
136
+ this.#opts = opts;
137
+ }
138
+ #cleanup() {
139
+ if (this.#currentFrame !== null) {
140
+ window.cancelAnimationFrame(this.#currentFrame);
141
+ this.#currentFrame = null;
142
+ }
143
+ this.#observer?.disconnect();
144
+ this.#observer = null;
145
+ this.#runId++;
146
+ }
147
+ run(fn) {
148
+ this.#cleanup();
149
+ const node = this.#opts.ref.current;
150
+ if (!node)
151
+ return;
152
+ if (typeof node.getAnimations !== "function") {
153
+ this.#executeCallback(fn);
154
+ return;
155
+ }
156
+ const runId = this.#runId;
157
+ const executeIfCurrent = () => {
158
+ if (runId !== this.#runId)
159
+ return;
160
+ this.#executeCallback(fn);
161
+ };
162
+ const waitForAnimations = () => {
163
+ if (runId !== this.#runId)
164
+ return;
165
+ const animations = node.getAnimations();
166
+ if (animations.length === 0) {
167
+ executeIfCurrent();
168
+ return;
169
+ }
170
+ Promise.all(animations.map((animation) => animation.finished)).then(() => {
171
+ executeIfCurrent();
172
+ }).catch(() => {
173
+ if (runId !== this.#runId)
174
+ return;
175
+ const currentAnimations = node.getAnimations();
176
+ const hasRunningAnimations = currentAnimations.some((animation) => animation.pending || animation.playState !== "finished");
177
+ if (hasRunningAnimations) {
178
+ waitForAnimations();
179
+ return;
180
+ }
181
+ executeIfCurrent();
182
+ });
183
+ };
184
+ const requestWaitForAnimations = () => {
185
+ this.#currentFrame = window.requestAnimationFrame(() => {
186
+ this.#currentFrame = null;
187
+ waitForAnimations();
188
+ });
189
+ };
190
+ if (!this.#opts.afterTick.current) {
191
+ requestWaitForAnimations();
192
+ return;
193
+ }
194
+ this.#currentFrame = window.requestAnimationFrame(() => {
195
+ this.#currentFrame = null;
196
+ const startingStyleAttr = "data-starting-style";
197
+ if (!node.hasAttribute(startingStyleAttr)) {
198
+ requestWaitForAnimations();
199
+ return;
200
+ }
201
+ this.#observer = new MutationObserver(() => {
202
+ if (runId !== this.#runId)
203
+ return;
204
+ if (node.hasAttribute(startingStyleAttr))
205
+ return;
206
+ this.#observer?.disconnect();
207
+ this.#observer = null;
208
+ requestWaitForAnimations();
209
+ });
210
+ this.#observer.observe(node, {
211
+ attributes: true,
212
+ attributeFilter: [startingStyleAttr]
213
+ });
214
+ });
215
+ }
216
+ #executeCallback(fn) {
217
+ const execute = () => {
218
+ fn();
219
+ };
220
+ if (this.#opts.afterTick) {
221
+ afterTick(execute);
222
+ } else {
223
+ execute();
224
+ }
225
+ }
226
+ }
227
+ class PresenceManager {
228
+ #opts;
229
+ #enabled;
230
+ #afterAnimations;
231
+ #shouldRender = false;
232
+ #transitionStatus = void 0;
233
+ #hasMounted = false;
234
+ #transitionFrame = null;
235
+ constructor(opts) {
236
+ this.#opts = opts;
237
+ this.#shouldRender = opts.open.current;
238
+ this.#enabled = opts.enabled ?? true;
239
+ this.#afterAnimations = new AnimationsComplete({ ref: this.#opts.ref, afterTick: this.#opts.open });
240
+ watch(() => this.#opts.open.current, (isOpen) => {
241
+ if (!this.#hasMounted) {
242
+ this.#hasMounted = true;
243
+ return;
244
+ }
245
+ this.#clearTransitionFrame();
246
+ if (!isOpen && this.#opts.shouldSkipExitAnimation?.()) {
247
+ this.#shouldRender = false;
248
+ this.#transitionStatus = void 0;
249
+ this.#opts.onComplete?.();
250
+ return;
251
+ }
252
+ if (isOpen) this.#shouldRender = true;
253
+ this.#transitionStatus = isOpen ? "starting" : "ending";
254
+ if (isOpen) {
255
+ this.#transitionFrame = window.requestAnimationFrame(() => {
256
+ this.#transitionFrame = null;
257
+ if (this.#opts.open.current) {
258
+ this.#transitionStatus = void 0;
259
+ }
260
+ });
261
+ }
262
+ if (!this.#enabled) {
263
+ if (!isOpen) {
264
+ this.#shouldRender = false;
265
+ }
266
+ this.#transitionStatus = void 0;
267
+ this.#opts.onComplete?.();
268
+ return;
269
+ }
270
+ this.#afterAnimations.run(() => {
271
+ if (isOpen === this.#opts.open.current) {
272
+ if (!this.#opts.open.current) {
273
+ this.#shouldRender = false;
274
+ }
275
+ this.#transitionStatus = void 0;
276
+ this.#opts.onComplete?.();
277
+ }
278
+ });
279
+ });
280
+ }
281
+ get shouldRender() {
282
+ return this.#shouldRender;
283
+ }
284
+ get transitionStatus() {
285
+ return this.#transitionStatus;
286
+ }
287
+ #clearTransitionFrame() {
288
+ if (this.#transitionFrame === null) return;
289
+ window.cancelAnimationFrame(this.#transitionFrame);
290
+ this.#transitionFrame = null;
291
+ }
292
+ }
293
+ const BitsConfigContext = new Context("BitsConfig");
294
+ function getBitsConfig() {
295
+ const fallback = new BitsConfigState(null, {});
296
+ return BitsConfigContext.getOr(fallback).opts;
297
+ }
298
+ class BitsConfigState {
299
+ opts;
300
+ constructor(parent, opts) {
301
+ const resolveConfigOption = createConfigResolver(parent, opts);
302
+ this.opts = {
303
+ defaultPortalTo: resolveConfigOption((config) => config.defaultPortalTo),
304
+ defaultLocale: resolveConfigOption((config) => config.defaultLocale)
305
+ };
306
+ }
307
+ }
308
+ function createConfigResolver(parent, currentOpts) {
309
+ return (getter) => {
310
+ const configOption = boxWith(() => {
311
+ const value = getter(currentOpts)?.current;
312
+ if (value !== void 0)
313
+ return value;
314
+ if (parent === null)
315
+ return void 0;
316
+ return getter(parent.opts)?.current;
317
+ });
318
+ return configOption;
319
+ };
320
+ }
321
+ function createPropResolver(configOption, fallback) {
322
+ return (getProp) => {
323
+ const config = getBitsConfig();
324
+ return boxWith(() => {
325
+ const propValue = getProp();
326
+ if (propValue !== void 0)
327
+ return propValue;
328
+ const option = configOption(config).current;
329
+ if (option !== void 0)
330
+ return option;
331
+ return fallback;
332
+ });
333
+ };
334
+ }
335
+ const resolvePortalToProp = createPropResolver((config) => config.defaultPortalTo, "body");
336
+ function Portal($$renderer, $$props) {
337
+ $$renderer.component(($$renderer2) => {
338
+ let { to: toProp, children, disabled } = $$props;
339
+ const to = resolvePortalToProp(() => toProp);
340
+ getAllContexts();
341
+ let target = derived(getTarget);
342
+ function getTarget() {
343
+ if (!isBrowser || disabled) return null;
344
+ let localTarget = null;
345
+ if (typeof to.current === "string") {
346
+ const target2 = document.querySelector(to.current);
347
+ localTarget = target2;
348
+ } else {
349
+ localTarget = to.current;
350
+ }
351
+ return localTarget;
352
+ }
353
+ let instance;
354
+ function unmountInstance() {
355
+ if (instance) {
356
+ unmount();
357
+ instance = null;
358
+ }
359
+ }
360
+ watch([() => target(), () => disabled], ([target2, disabled2]) => {
361
+ if (!target2 || disabled2) {
362
+ unmountInstance();
363
+ return;
364
+ }
365
+ instance = mount();
366
+ return () => {
367
+ unmountInstance();
368
+ };
369
+ });
370
+ if (disabled) {
371
+ $$renderer2.push("<!--[0-->");
372
+ children?.($$renderer2);
373
+ $$renderer2.push(`<!---->`);
374
+ } else {
375
+ $$renderer2.push("<!--[-1-->");
376
+ }
377
+ $$renderer2.push(`<!--]-->`);
378
+ });
379
+ }
380
+ class CustomEventDispatcher {
381
+ eventName;
382
+ options;
383
+ constructor(eventName, options = { bubbles: true, cancelable: true }) {
384
+ this.eventName = eventName;
385
+ this.options = options;
386
+ }
387
+ createEvent(detail) {
388
+ return new CustomEvent(this.eventName, {
389
+ ...this.options,
390
+ detail
391
+ });
392
+ }
393
+ dispatch(element, detail) {
394
+ const event = this.createEvent(detail);
395
+ element.dispatchEvent(event);
396
+ return event;
397
+ }
398
+ listen(element, callback, options) {
399
+ const handler = (event) => {
400
+ callback(event);
401
+ };
402
+ return on(element, this.eventName, handler, options);
403
+ }
404
+ }
405
+ function debounce(fn, wait = 500) {
406
+ let timeout = null;
407
+ const debounced = (...args) => {
408
+ if (timeout !== null) {
409
+ clearTimeout(timeout);
410
+ }
411
+ timeout = setTimeout(() => {
412
+ fn(...args);
413
+ }, wait);
414
+ };
415
+ debounced.destroy = () => {
416
+ if (timeout !== null) {
417
+ clearTimeout(timeout);
418
+ timeout = null;
419
+ }
420
+ };
421
+ return debounced;
422
+ }
423
+ function isOrContainsTarget(node, target) {
424
+ return node === target || node.contains(target);
425
+ }
426
+ function getOwnerDocument(el) {
427
+ return el?.ownerDocument ?? document;
428
+ }
429
+ function isClickTrulyOutside(event, contentNode) {
430
+ const { clientX, clientY } = event;
431
+ const rect = contentNode.getBoundingClientRect();
432
+ return clientX < rect.left || clientX > rect.right || clientY < rect.top || clientY > rect.bottom;
433
+ }
434
+ const SELECTION_KEYS = [ENTER, SPACE];
435
+ const FIRST_KEYS = [ARROW_DOWN, PAGE_UP, HOME];
436
+ const LAST_KEYS = [ARROW_UP, PAGE_DOWN, END];
437
+ const FIRST_LAST_KEYS = [...FIRST_KEYS, ...LAST_KEYS];
438
+ const SUB_OPEN_KEYS = {
439
+ ltr: [...SELECTION_KEYS, ARROW_RIGHT],
440
+ rtl: [...SELECTION_KEYS, ARROW_LEFT]
441
+ };
442
+ const SUB_CLOSE_KEYS = {
443
+ ltr: [ARROW_LEFT],
444
+ rtl: [ARROW_RIGHT]
445
+ };
446
+ function isMouseEvent(event) {
447
+ return event.pointerType === "mouse";
448
+ }
449
+ function focus(element, { select = false } = {}) {
450
+ if (!element || !element.focus)
451
+ return;
452
+ const doc = getDocument(element);
453
+ if (doc.activeElement === element)
454
+ return;
455
+ const previouslyFocusedElement = doc.activeElement;
456
+ element.focus({ preventScroll: true });
457
+ if (element !== previouslyFocusedElement && isSelectableInput(element) && select) {
458
+ element.select();
459
+ }
460
+ }
461
+ function focusFirst(candidates, { select = false } = {}, getActiveElement2) {
462
+ const previouslyFocusedElement = getActiveElement2();
463
+ for (const candidate of candidates) {
464
+ focus(candidate, { select });
465
+ if (getActiveElement2() !== previouslyFocusedElement)
466
+ return true;
467
+ }
468
+ }
469
+ let isUsingKeyboard = false;
470
+ class IsUsingKeyboard {
471
+ static _refs = 0;
472
+ // Reference counting to avoid multiple listeners.
473
+ static _cleanup;
474
+ constructor() {
475
+ }
476
+ get current() {
477
+ return isUsingKeyboard;
478
+ }
479
+ set current(value) {
480
+ isUsingKeyboard = value;
481
+ }
482
+ }
483
+ var candidateSelectors = ["input:not([inert]):not([inert] *)", "select:not([inert]):not([inert] *)", "textarea:not([inert]):not([inert] *)", "a[href]:not([inert]):not([inert] *)", "button:not([inert]):not([inert] *)", "[tabindex]:not(slot):not([inert]):not([inert] *)", "audio[controls]:not([inert]):not([inert] *)", "video[controls]:not([inert]):not([inert] *)", '[contenteditable]:not([contenteditable="false"]):not([inert]):not([inert] *)', "details>summary:first-of-type:not([inert]):not([inert] *)", "details:not([inert]):not([inert] *)"];
484
+ var candidateSelector = /* @__PURE__ */ candidateSelectors.join(",");
485
+ var NoElement = typeof Element === "undefined";
486
+ var matches = NoElement ? function() {
487
+ } : Element.prototype.matches || Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;
488
+ var getRootNode = !NoElement && Element.prototype.getRootNode ? function(element) {
489
+ var _element$getRootNode;
490
+ return element === null || element === void 0 ? void 0 : (_element$getRootNode = element.getRootNode) === null || _element$getRootNode === void 0 ? void 0 : _element$getRootNode.call(element);
491
+ } : function(element) {
492
+ return element === null || element === void 0 ? void 0 : element.ownerDocument;
493
+ };
494
+ var _isInert = function isInert(node, lookUp) {
495
+ var _node$getAttribute;
496
+ if (lookUp === void 0) {
497
+ lookUp = true;
498
+ }
499
+ var inertAtt = node === null || node === void 0 ? void 0 : (_node$getAttribute = node.getAttribute) === null || _node$getAttribute === void 0 ? void 0 : _node$getAttribute.call(node, "inert");
500
+ var inert = inertAtt === "" || inertAtt === "true";
501
+ var result = inert || lookUp && node && // closest does not exist on shadow roots, so we fall back to a manual
502
+ // lookup upward, in case it is not defined.
503
+ (typeof node.closest === "function" ? node.closest("[inert]") : _isInert(node.parentNode));
504
+ return result;
505
+ };
506
+ var isContentEditable = function isContentEditable2(node) {
507
+ var _node$getAttribute2;
508
+ var attValue = node === null || node === void 0 ? void 0 : (_node$getAttribute2 = node.getAttribute) === null || _node$getAttribute2 === void 0 ? void 0 : _node$getAttribute2.call(node, "contenteditable");
509
+ return attValue === "" || attValue === "true";
510
+ };
511
+ var getCandidates = function getCandidates2(el, includeContainer, filter) {
512
+ if (_isInert(el)) {
513
+ return [];
514
+ }
515
+ var candidates = Array.prototype.slice.apply(el.querySelectorAll(candidateSelector));
516
+ if (includeContainer && matches.call(el, candidateSelector)) {
517
+ candidates.unshift(el);
518
+ }
519
+ candidates = candidates.filter(filter);
520
+ return candidates;
521
+ };
522
+ var _getCandidatesIteratively = function getCandidatesIteratively(elements, includeContainer, options) {
523
+ var candidates = [];
524
+ var elementsToCheck = Array.from(elements);
525
+ while (elementsToCheck.length) {
526
+ var element = elementsToCheck.shift();
527
+ if (_isInert(element, false)) {
528
+ continue;
529
+ }
530
+ if (element.tagName === "SLOT") {
531
+ var assigned = element.assignedElements();
532
+ var content = assigned.length ? assigned : element.children;
533
+ var nestedCandidates = _getCandidatesIteratively(content, true, options);
534
+ if (options.flatten) {
535
+ candidates.push.apply(candidates, nestedCandidates);
536
+ } else {
537
+ candidates.push({
538
+ scopeParent: element,
539
+ candidates: nestedCandidates
540
+ });
541
+ }
542
+ } else {
543
+ var validCandidate = matches.call(element, candidateSelector);
544
+ if (validCandidate && options.filter(element) && (includeContainer || !elements.includes(element))) {
545
+ candidates.push(element);
546
+ }
547
+ var shadowRoot = element.shadowRoot || // check for an undisclosed shadow
548
+ typeof options.getShadowRoot === "function" && options.getShadowRoot(element);
549
+ var validShadowRoot = !_isInert(shadowRoot, false) && (!options.shadowRootFilter || options.shadowRootFilter(element));
550
+ if (shadowRoot && validShadowRoot) {
551
+ var _nestedCandidates = _getCandidatesIteratively(shadowRoot === true ? element.children : shadowRoot.children, true, options);
552
+ if (options.flatten) {
553
+ candidates.push.apply(candidates, _nestedCandidates);
554
+ } else {
555
+ candidates.push({
556
+ scopeParent: element,
557
+ candidates: _nestedCandidates
558
+ });
559
+ }
560
+ } else {
561
+ elementsToCheck.unshift.apply(elementsToCheck, element.children);
562
+ }
563
+ }
564
+ }
565
+ return candidates;
566
+ };
567
+ var hasTabIndex = function hasTabIndex2(node) {
568
+ return !isNaN(parseInt(node.getAttribute("tabindex"), 10));
569
+ };
570
+ var getTabIndex = function getTabIndex2(node) {
571
+ if (!node) {
572
+ throw new Error("No node provided");
573
+ }
574
+ if (node.tabIndex < 0) {
575
+ if ((/^(AUDIO|VIDEO|DETAILS)$/.test(node.tagName) || isContentEditable(node)) && !hasTabIndex(node)) {
576
+ return 0;
577
+ }
578
+ }
579
+ return node.tabIndex;
580
+ };
581
+ var getSortOrderTabIndex = function getSortOrderTabIndex2(node, isScope) {
582
+ var tabIndex = getTabIndex(node);
583
+ if (tabIndex < 0 && isScope && !hasTabIndex(node)) {
584
+ return 0;
585
+ }
586
+ return tabIndex;
587
+ };
588
+ var sortOrderedTabbables = function sortOrderedTabbables2(a, b) {
589
+ return a.tabIndex === b.tabIndex ? a.documentOrder - b.documentOrder : a.tabIndex - b.tabIndex;
590
+ };
591
+ var isInput = function isInput2(node) {
592
+ return node.tagName === "INPUT";
593
+ };
594
+ var isHiddenInput = function isHiddenInput2(node) {
595
+ return isInput(node) && node.type === "hidden";
596
+ };
597
+ var isDetailsWithSummary = function isDetailsWithSummary2(node) {
598
+ var r = node.tagName === "DETAILS" && Array.prototype.slice.apply(node.children).some(function(child) {
599
+ return child.tagName === "SUMMARY";
600
+ });
601
+ return r;
602
+ };
603
+ var getCheckedRadio = function getCheckedRadio2(nodes, form) {
604
+ for (var i = 0; i < nodes.length; i++) {
605
+ if (nodes[i].checked && nodes[i].form === form) {
606
+ return nodes[i];
607
+ }
608
+ }
609
+ };
610
+ var isTabbableRadio = function isTabbableRadio2(node) {
611
+ if (!node.name) {
612
+ return true;
613
+ }
614
+ var radioScope = node.form || getRootNode(node);
615
+ var queryRadios = function queryRadios2(name) {
616
+ return radioScope.querySelectorAll('input[type="radio"][name="' + name + '"]');
617
+ };
618
+ var radioSet;
619
+ if (typeof window !== "undefined" && typeof window.CSS !== "undefined" && typeof window.CSS.escape === "function") {
620
+ radioSet = queryRadios(window.CSS.escape(node.name));
621
+ } else {
622
+ try {
623
+ radioSet = queryRadios(node.name);
624
+ } catch (err) {
625
+ console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s", err.message);
626
+ return false;
627
+ }
628
+ }
629
+ var checked = getCheckedRadio(radioSet, node.form);
630
+ return !checked || checked === node;
631
+ };
632
+ var isRadio = function isRadio2(node) {
633
+ return isInput(node) && node.type === "radio";
634
+ };
635
+ var isNonTabbableRadio = function isNonTabbableRadio2(node) {
636
+ return isRadio(node) && !isTabbableRadio(node);
637
+ };
638
+ var isNodeAttached = function isNodeAttached2(node) {
639
+ var _nodeRoot;
640
+ var nodeRoot = node && getRootNode(node);
641
+ var nodeRootHost = (_nodeRoot = nodeRoot) === null || _nodeRoot === void 0 ? void 0 : _nodeRoot.host;
642
+ var attached = false;
643
+ if (nodeRoot && nodeRoot !== node) {
644
+ var _nodeRootHost, _nodeRootHost$ownerDo, _node$ownerDocument;
645
+ attached = !!((_nodeRootHost = nodeRootHost) !== null && _nodeRootHost !== void 0 && (_nodeRootHost$ownerDo = _nodeRootHost.ownerDocument) !== null && _nodeRootHost$ownerDo !== void 0 && _nodeRootHost$ownerDo.contains(nodeRootHost) || node !== null && node !== void 0 && (_node$ownerDocument = node.ownerDocument) !== null && _node$ownerDocument !== void 0 && _node$ownerDocument.contains(node));
646
+ while (!attached && nodeRootHost) {
647
+ var _nodeRoot2, _nodeRootHost2, _nodeRootHost2$ownerD;
648
+ nodeRoot = getRootNode(nodeRootHost);
649
+ nodeRootHost = (_nodeRoot2 = nodeRoot) === null || _nodeRoot2 === void 0 ? void 0 : _nodeRoot2.host;
650
+ attached = !!((_nodeRootHost2 = nodeRootHost) !== null && _nodeRootHost2 !== void 0 && (_nodeRootHost2$ownerD = _nodeRootHost2.ownerDocument) !== null && _nodeRootHost2$ownerD !== void 0 && _nodeRootHost2$ownerD.contains(nodeRootHost));
651
+ }
652
+ }
653
+ return attached;
654
+ };
655
+ var isZeroArea = function isZeroArea2(node) {
656
+ var _node$getBoundingClie = node.getBoundingClientRect(), width = _node$getBoundingClie.width, height = _node$getBoundingClie.height;
657
+ return width === 0 && height === 0;
658
+ };
659
+ var isHidden = function isHidden2(node, _ref) {
660
+ var displayCheck = _ref.displayCheck, getShadowRoot = _ref.getShadowRoot;
661
+ if (displayCheck === "full-native") {
662
+ if ("checkVisibility" in node) {
663
+ var visible = node.checkVisibility({
664
+ // Checking opacity might be desirable for some use cases, but natively,
665
+ // opacity zero elements _are_ focusable and tabbable.
666
+ checkOpacity: false,
667
+ opacityProperty: false,
668
+ contentVisibilityAuto: true,
669
+ visibilityProperty: true,
670
+ // This is an alias for `visibilityProperty`. Contemporary browsers
671
+ // support both. However, this alias has wider browser support (Chrome
672
+ // >= 105 and Firefox >= 106, vs. Chrome >= 121 and Firefox >= 122), so
673
+ // we include it anyway.
674
+ checkVisibilityCSS: true
675
+ });
676
+ return !visible;
677
+ }
678
+ }
679
+ if (getComputedStyle(node).visibility === "hidden") {
680
+ return true;
681
+ }
682
+ var isDirectSummary = matches.call(node, "details>summary:first-of-type");
683
+ var nodeUnderDetails = isDirectSummary ? node.parentElement : node;
684
+ if (matches.call(nodeUnderDetails, "details:not([open]) *")) {
685
+ return true;
686
+ }
687
+ if (!displayCheck || displayCheck === "full" || // full-native can run this branch when it falls through in case
688
+ // Element#checkVisibility is unsupported
689
+ displayCheck === "full-native" || displayCheck === "legacy-full") {
690
+ if (typeof getShadowRoot === "function") {
691
+ var originalNode = node;
692
+ while (node) {
693
+ var parentElement = node.parentElement;
694
+ var rootNode = getRootNode(node);
695
+ if (parentElement && !parentElement.shadowRoot && getShadowRoot(parentElement) === true) {
696
+ return isZeroArea(node);
697
+ } else if (node.assignedSlot) {
698
+ node = node.assignedSlot;
699
+ } else if (!parentElement && rootNode !== node.ownerDocument) {
700
+ node = rootNode.host;
701
+ } else {
702
+ node = parentElement;
703
+ }
704
+ }
705
+ node = originalNode;
706
+ }
707
+ if (isNodeAttached(node)) {
708
+ return !node.getClientRects().length;
709
+ }
710
+ if (displayCheck !== "legacy-full") {
711
+ return true;
712
+ }
713
+ } else if (displayCheck === "non-zero-area") {
714
+ return isZeroArea(node);
715
+ }
716
+ return false;
717
+ };
718
+ var isDisabledFromFieldset = function isDisabledFromFieldset2(node) {
719
+ if (/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(node.tagName)) {
720
+ var parentNode = node.parentElement;
721
+ while (parentNode) {
722
+ if (parentNode.tagName === "FIELDSET" && parentNode.disabled) {
723
+ for (var i = 0; i < parentNode.children.length; i++) {
724
+ var child = parentNode.children.item(i);
725
+ if (child.tagName === "LEGEND") {
726
+ return matches.call(parentNode, "fieldset[disabled] *") ? true : !child.contains(node);
727
+ }
728
+ }
729
+ return true;
730
+ }
731
+ parentNode = parentNode.parentElement;
732
+ }
733
+ }
734
+ return false;
735
+ };
736
+ var isNodeMatchingSelectorFocusable = function isNodeMatchingSelectorFocusable2(options, node) {
737
+ if (node.disabled || isHiddenInput(node) || isHidden(node, options) || // For a details element with a summary, the summary element gets the focus
738
+ isDetailsWithSummary(node) || isDisabledFromFieldset(node)) {
739
+ return false;
740
+ }
741
+ return true;
742
+ };
743
+ var isNodeMatchingSelectorTabbable = function isNodeMatchingSelectorTabbable2(options, node) {
744
+ if (isNonTabbableRadio(node) || getTabIndex(node) < 0 || !isNodeMatchingSelectorFocusable(options, node)) {
745
+ return false;
746
+ }
747
+ return true;
748
+ };
749
+ var isShadowRootTabbable = function isShadowRootTabbable2(shadowHostNode) {
750
+ var tabIndex = parseInt(shadowHostNode.getAttribute("tabindex"), 10);
751
+ if (isNaN(tabIndex) || tabIndex >= 0) {
752
+ return true;
753
+ }
754
+ return false;
755
+ };
756
+ var _sortByOrder = function sortByOrder(candidates) {
757
+ var regularTabbables = [];
758
+ var orderedTabbables = [];
759
+ candidates.forEach(function(item, i) {
760
+ var isScope = !!item.scopeParent;
761
+ var element = isScope ? item.scopeParent : item;
762
+ var candidateTabindex = getSortOrderTabIndex(element, isScope);
763
+ var elements = isScope ? _sortByOrder(item.candidates) : element;
764
+ if (candidateTabindex === 0) {
765
+ isScope ? regularTabbables.push.apply(regularTabbables, elements) : regularTabbables.push(element);
766
+ } else {
767
+ orderedTabbables.push({
768
+ documentOrder: i,
769
+ tabIndex: candidateTabindex,
770
+ item,
771
+ isScope,
772
+ content: elements
773
+ });
774
+ }
775
+ });
776
+ return orderedTabbables.sort(sortOrderedTabbables).reduce(function(acc, sortable) {
777
+ sortable.isScope ? acc.push.apply(acc, sortable.content) : acc.push(sortable.content);
778
+ return acc;
779
+ }, []).concat(regularTabbables);
780
+ };
781
+ var tabbable = function tabbable2(container, options) {
782
+ options = options || {};
783
+ var candidates;
784
+ if (options.getShadowRoot) {
785
+ candidates = _getCandidatesIteratively([container], options.includeContainer, {
786
+ filter: isNodeMatchingSelectorTabbable.bind(null, options),
787
+ flatten: false,
788
+ getShadowRoot: options.getShadowRoot,
789
+ shadowRootFilter: isShadowRootTabbable
790
+ });
791
+ } else {
792
+ candidates = getCandidates(container, options.includeContainer, isNodeMatchingSelectorTabbable.bind(null, options));
793
+ }
794
+ return _sortByOrder(candidates);
795
+ };
796
+ var focusable = function focusable2(container, options) {
797
+ options = options || {};
798
+ var candidates;
799
+ if (options.getShadowRoot) {
800
+ candidates = _getCandidatesIteratively([container], options.includeContainer, {
801
+ filter: isNodeMatchingSelectorFocusable.bind(null, options),
802
+ flatten: true,
803
+ getShadowRoot: options.getShadowRoot
804
+ });
805
+ } else {
806
+ candidates = getCandidates(container, options.includeContainer, isNodeMatchingSelectorFocusable.bind(null, options));
807
+ }
808
+ return candidates;
809
+ };
810
+ var isTabbable = function isTabbable2(node, options) {
811
+ options = options || {};
812
+ if (!node) {
813
+ throw new Error("No node provided");
814
+ }
815
+ if (matches.call(node, candidateSelector) === false) {
816
+ return false;
817
+ }
818
+ return isNodeMatchingSelectorTabbable(options, node);
819
+ };
820
+ var focusableCandidateSelector = /* @__PURE__ */ candidateSelectors.concat("iframe:not([inert]):not([inert] *)").join(",");
821
+ var isFocusable = function isFocusable2(node, options) {
822
+ options = options || {};
823
+ if (!node) {
824
+ throw new Error("No node provided");
825
+ }
826
+ if (matches.call(node, focusableCandidateSelector) === false) {
827
+ return false;
828
+ }
829
+ return isNodeMatchingSelectorFocusable(options, node);
830
+ };
831
+ function getTabbableOptions() {
832
+ return {
833
+ getShadowRoot: true,
834
+ displayCheck: (
835
+ // JSDOM does not support the `tabbable` library. To solve this we can
836
+ // check if `ResizeObserver` is a real function (not polyfilled), which
837
+ // determines if the current environment is JSDOM-like.
838
+ typeof ResizeObserver === "function" && ResizeObserver.toString().includes("[native code]") ? "full" : "none"
839
+ )
840
+ };
841
+ }
842
+ function getTabbableFrom(currentNode, direction) {
843
+ if (!isTabbable(currentNode, getTabbableOptions())) {
844
+ return getTabbableFromFocusable(currentNode, direction);
845
+ }
846
+ const doc = getDocument(currentNode);
847
+ const allTabbable = tabbable(doc.body, getTabbableOptions());
848
+ if (direction === "prev")
849
+ allTabbable.reverse();
850
+ const activeIndex = allTabbable.indexOf(currentNode);
851
+ if (activeIndex === -1)
852
+ return doc.body;
853
+ const nextTabbableElements = allTabbable.slice(activeIndex + 1);
854
+ return nextTabbableElements[0];
855
+ }
856
+ function getTabbableFromFocusable(currentNode, direction) {
857
+ const doc = getDocument(currentNode);
858
+ if (!isFocusable(currentNode, getTabbableOptions()))
859
+ return doc.body;
860
+ const allFocusable = focusable(doc.body, getTabbableOptions());
861
+ if (direction === "prev")
862
+ allFocusable.reverse();
863
+ const activeIndex = allFocusable.indexOf(currentNode);
864
+ if (activeIndex === -1)
865
+ return doc.body;
866
+ const nextFocusableElements = allFocusable.slice(activeIndex + 1);
867
+ return nextFocusableElements.find((node) => isTabbable(node, getTabbableOptions())) ?? doc.body;
868
+ }
869
+ function isValidIndex(index, arr) {
870
+ return index >= 0 && index < arr.length;
871
+ }
872
+ function next(array, index, loop = true) {
873
+ if (array.length === 0 || index < 0 || index >= array.length)
874
+ return;
875
+ if (array.length === 1 && index === 0)
876
+ return array[0];
877
+ if (index === array.length - 1)
878
+ return loop ? array[0] : void 0;
879
+ return array[index + 1];
880
+ }
881
+ function prev(array, index, loop = true) {
882
+ if (array.length === 0 || index < 0 || index >= array.length)
883
+ return;
884
+ if (array.length === 1 && index === 0)
885
+ return array[0];
886
+ if (index === 0)
887
+ return loop ? array[array.length - 1] : void 0;
888
+ return array[index - 1];
889
+ }
890
+ function forward(array, index, increment, loop = true) {
891
+ if (array.length === 0 || index < 0 || index >= array.length)
892
+ return;
893
+ let targetIndex = index + increment;
894
+ if (loop) {
895
+ targetIndex = (targetIndex % array.length + array.length) % array.length;
896
+ } else {
897
+ targetIndex = Math.max(0, Math.min(targetIndex, array.length - 1));
898
+ }
899
+ return array[targetIndex];
900
+ }
901
+ function backward(array, index, decrement, loop = true) {
902
+ if (array.length === 0 || index < 0 || index >= array.length)
903
+ return;
904
+ let targetIndex = index - decrement;
905
+ if (loop) {
906
+ targetIndex = (targetIndex % array.length + array.length) % array.length;
907
+ } else {
908
+ targetIndex = Math.max(0, Math.min(targetIndex, array.length - 1));
909
+ }
910
+ return array[targetIndex];
911
+ }
912
+ function getNextMatch(values, search, currentMatch) {
913
+ const lowerSearch = search.toLowerCase();
914
+ if (lowerSearch.endsWith(" ")) {
915
+ const searchWithoutSpace = lowerSearch.slice(0, -1);
916
+ const matchesWithoutSpace = values.filter((value) => value.toLowerCase().startsWith(searchWithoutSpace));
917
+ if (matchesWithoutSpace.length <= 1) {
918
+ return getNextMatch(values, searchWithoutSpace, currentMatch);
919
+ }
920
+ const currentMatchLowercase = currentMatch?.toLowerCase();
921
+ if (currentMatchLowercase && currentMatchLowercase.startsWith(searchWithoutSpace) && currentMatchLowercase.charAt(searchWithoutSpace.length) === " " && search.trim() === searchWithoutSpace) {
922
+ return currentMatch;
923
+ }
924
+ const spacedMatches = values.filter((value) => value.toLowerCase().startsWith(lowerSearch));
925
+ if (spacedMatches.length > 0) {
926
+ const currentMatchIndex2 = currentMatch ? values.indexOf(currentMatch) : -1;
927
+ let wrappedMatches = wrapArray(spacedMatches, Math.max(currentMatchIndex2, 0));
928
+ const nextMatch2 = wrappedMatches.find((match) => match !== currentMatch);
929
+ return nextMatch2 || currentMatch;
930
+ }
931
+ }
932
+ const isRepeated = search.length > 1 && Array.from(search).every((char) => char === search[0]);
933
+ const normalizedSearch = isRepeated ? search[0] : search;
934
+ const normalizedLowerSearch = normalizedSearch.toLowerCase();
935
+ const currentMatchIndex = currentMatch ? values.indexOf(currentMatch) : -1;
936
+ let wrappedValues = wrapArray(values, Math.max(currentMatchIndex, 0));
937
+ const excludeCurrentMatch = normalizedSearch.length === 1;
938
+ if (excludeCurrentMatch)
939
+ wrappedValues = wrappedValues.filter((v) => v !== currentMatch);
940
+ const nextMatch = wrappedValues.find((value) => value?.toLowerCase().startsWith(normalizedLowerSearch));
941
+ return nextMatch !== currentMatch ? nextMatch : void 0;
942
+ }
943
+ function wrapArray(array, startIndex) {
944
+ return array.map((_, index) => array[(startIndex + index) % array.length]);
945
+ }
946
+ const defaultOptions = { afterMs: 1e4, onChange: noop };
947
+ function boxAutoReset(defaultValue, options) {
948
+ const { afterMs, onChange, getWindow: getWindow2 } = { ...defaultOptions, ...options };
949
+ let timeout = null;
950
+ let value = defaultValue;
951
+ function resetAfter() {
952
+ return getWindow2().setTimeout(
953
+ () => {
954
+ value = defaultValue;
955
+ onChange?.(defaultValue);
956
+ },
957
+ afterMs
958
+ );
959
+ }
960
+ return boxWith(() => value, (v) => {
961
+ value = v;
962
+ onChange?.(v);
963
+ if (timeout) getWindow2().clearTimeout(timeout);
964
+ timeout = resetAfter();
965
+ });
966
+ }
967
+ class DOMTypeahead {
968
+ #opts;
969
+ #search;
970
+ #onMatch = derived(() => {
971
+ if (this.#opts.onMatch) return this.#opts.onMatch;
972
+ return (node) => node.focus();
973
+ });
974
+ #getCurrentItem = derived(() => {
975
+ if (this.#opts.getCurrentItem) return this.#opts.getCurrentItem;
976
+ return this.#opts.getActiveElement;
977
+ });
978
+ constructor(opts) {
979
+ this.#opts = opts;
980
+ this.#search = boxAutoReset("", { afterMs: 1e3, getWindow: opts.getWindow });
981
+ this.handleTypeaheadSearch = this.handleTypeaheadSearch.bind(this);
982
+ this.resetTypeahead = this.resetTypeahead.bind(this);
983
+ }
984
+ handleTypeaheadSearch(key, candidates) {
985
+ if (!candidates.length) return;
986
+ this.#search.current = this.#search.current + key;
987
+ const currentItem = this.#getCurrentItem()();
988
+ const currentMatch = candidates.find((item) => item === currentItem)?.textContent?.trim() ?? "";
989
+ const values = candidates.map((item) => item.textContent?.trim() ?? "");
990
+ const nextMatch = getNextMatch(values, this.#search.current, currentMatch);
991
+ const newItem = candidates.find((item) => item.textContent?.trim() === nextMatch);
992
+ if (newItem) this.#onMatch()(newItem);
993
+ return newItem;
994
+ }
995
+ resetTypeahead() {
996
+ this.#search.current = "";
997
+ }
998
+ get search() {
999
+ return this.#search.current;
1000
+ }
1001
+ }
1002
+ const CONTEXT_MENU_TRIGGER_ATTR = "data-context-menu-trigger";
1003
+ const CONTEXT_MENU_CONTENT_ATTR = "data-context-menu-content";
1004
+ const MenuRootContext = new Context("Menu.Root");
1005
+ const MenuMenuContext = new Context("Menu.Root | Menu.Sub");
1006
+ const MenuContentContext = new Context("Menu.Content");
1007
+ const MenuOpenEvent = new CustomEventDispatcher("bitsmenuopen", { bubbles: false, cancelable: true });
1008
+ const menuAttrs = createBitsAttrs({
1009
+ component: "menu",
1010
+ parts: [
1011
+ "trigger",
1012
+ "content",
1013
+ "sub-trigger",
1014
+ "item",
1015
+ "group",
1016
+ "group-heading",
1017
+ "checkbox-group",
1018
+ "checkbox-item",
1019
+ "radio-group",
1020
+ "radio-item",
1021
+ "separator",
1022
+ "sub-content",
1023
+ "arrow"
1024
+ ]
1025
+ });
1026
+ class MenuSubmenuIntent {
1027
+ #opts;
1028
+ // readonly #debugOverlay: MenuIntentDebugOverlay;
1029
+ #cleanupDocMove = null;
1030
+ #fallbackTimer = null;
1031
+ #active = false;
1032
+ #target = null;
1033
+ #apex = null;
1034
+ #pointerPoint = null;
1035
+ // #corridor: Polygon | null = null;
1036
+ // #intentPolygon: Polygon | null = null;
1037
+ #launchPoint = null;
1038
+ constructor(opts) {
1039
+ this.#opts = opts;
1040
+ watch([opts.triggerNode, opts.contentNode, opts.enabled], ([triggerNode, contentNode, enabled]) => {
1041
+ this.#reset();
1042
+ if (!triggerNode || !contentNode || !enabled) return;
1043
+ const onTriggerMove = (e) => {
1044
+ if (!isMouseEvent(e)) return;
1045
+ this.#launchPoint = { x: e.clientX, y: e.clientY };
1046
+ if (!this.#active) this.#preview(e, "content");
1047
+ };
1048
+ const onTriggerLeave = (e) => {
1049
+ if (!isMouseEvent(e)) return;
1050
+ this.#engage(e, "content");
1051
+ };
1052
+ const onContentMove = (e) => {
1053
+ if (!isMouseEvent(e)) return;
1054
+ if (!this.#active) this.#preview(e, "trigger");
1055
+ };
1056
+ const onContentLeave = (e) => {
1057
+ if (!isMouseEvent(e)) return;
1058
+ if (isElement(e.relatedTarget)) {
1059
+ const selector = this.#opts.subContentSelector();
1060
+ const matchedSubContent = e.relatedTarget.closest(selector);
1061
+ if (matchedSubContent && matchedSubContent !== contentNode && matchedSubContent.id) {
1062
+ const isChild = !!contentNode.querySelector(`[aria-controls="${matchedSubContent.id}"]`);
1063
+ if (isChild) {
1064
+ return;
1065
+ }
1066
+ }
1067
+ }
1068
+ this.#engage(e, "trigger");
1069
+ };
1070
+ const onTriggerEnter = (e) => {
1071
+ if (!isMouseEvent(e)) return;
1072
+ this.#disengage();
1073
+ };
1074
+ const onContentEnter = (e) => {
1075
+ if (!isMouseEvent(e)) return;
1076
+ this.#disengage();
1077
+ };
1078
+ triggerNode.addEventListener("pointermove", onTriggerMove);
1079
+ triggerNode.addEventListener("pointerleave", onTriggerLeave);
1080
+ triggerNode.addEventListener("pointerenter", onTriggerEnter);
1081
+ contentNode.addEventListener("pointermove", onContentMove);
1082
+ contentNode.addEventListener("pointerleave", onContentLeave);
1083
+ contentNode.addEventListener("pointerenter", onContentEnter);
1084
+ return () => {
1085
+ triggerNode.removeEventListener("pointermove", onTriggerMove);
1086
+ triggerNode.removeEventListener("pointerleave", onTriggerLeave);
1087
+ triggerNode.removeEventListener("pointerenter", onTriggerEnter);
1088
+ contentNode.removeEventListener("pointermove", onContentMove);
1089
+ contentNode.removeEventListener("pointerleave", onContentLeave);
1090
+ contentNode.removeEventListener("pointerenter", onContentEnter);
1091
+ this.#reset();
1092
+ };
1093
+ });
1094
+ }
1095
+ #parentTargetRect() {
1096
+ const parent = this.#opts.parentContentNode();
1097
+ if (parent) return parent.getBoundingClientRect();
1098
+ return this.#opts.triggerNode()?.getBoundingClientRect() ?? null;
1099
+ }
1100
+ #computePolygons(pointerPt, target) {
1101
+ const triggerNode = this.#opts.triggerNode();
1102
+ const contentNode = this.#opts.contentNode();
1103
+ if (!triggerNode || !contentNode) return null;
1104
+ const triggerRect = triggerNode.getBoundingClientRect();
1105
+ const contentRect = contentNode.getBoundingClientRect();
1106
+ const side = getSide(triggerRect, contentRect);
1107
+ let apex;
1108
+ let targetRect;
1109
+ let sourceRect;
1110
+ if (target === "content") {
1111
+ apex = this.#active ? this.#apex ?? pointerPt : pointerPt;
1112
+ targetRect = contentRect;
1113
+ } else {
1114
+ apex = this.#launchPoint ?? pointerPt;
1115
+ targetRect = this.#parentTargetRect() ?? triggerRect;
1116
+ sourceRect = contentRect;
1117
+ }
1118
+ this.#apex = apex;
1119
+ return {
1120
+ corridor: getCorridorPolygon(triggerRect, contentRect, side),
1121
+ intent: getIntentPolygon(apex, targetRect, side, target, sourceRect),
1122
+ targetRect,
1123
+ side
1124
+ };
1125
+ }
1126
+ #isInSafeZone(pt, corridor, intent) {
1127
+ return isPointInPolygon(pt, corridor) || isPointInPolygon(pt, intent);
1128
+ }
1129
+ #preview(e, target) {
1130
+ const pt = { x: e.clientX, y: e.clientY };
1131
+ const geo = this.#computePolygons(pt, target);
1132
+ if (!geo) return;
1133
+ this.#target = target;
1134
+ this.#pointerPoint = pt;
1135
+ }
1136
+ #engage(e, target) {
1137
+ if (!this.#opts.enabled()) return;
1138
+ const triggerNode = this.#opts.triggerNode();
1139
+ const contentNode = this.#opts.contentNode();
1140
+ if (!triggerNode || !contentNode) return;
1141
+ const related = e.relatedTarget;
1142
+ if (isElement(related)) {
1143
+ if (target === "content" && contentNode.contains(related)) return;
1144
+ if (target === "trigger" && triggerNode.contains(related)) return;
1145
+ }
1146
+ const pt = { x: e.clientX, y: e.clientY };
1147
+ const geo = this.#computePolygons(pt, target);
1148
+ if (!geo) return;
1149
+ if (!isInsideRect(pt, geo.targetRect) && !this.#isInSafeZone(pt, geo.corridor, geo.intent)) {
1150
+ this.#clearVisuals();
1151
+ return;
1152
+ }
1153
+ this.#active = true;
1154
+ this.#target = target;
1155
+ this.#pointerPoint = pt;
1156
+ this.#opts.setIsPointerInTransit(true);
1157
+ this.#attachDocMove();
1158
+ this.#startFallback();
1159
+ }
1160
+ #disengageTimer = null;
1161
+ #disengage() {
1162
+ if (!this.#active) return;
1163
+ const wasReturning = this.#target === "trigger";
1164
+ this.#detachDocMove();
1165
+ this.#clearFallback();
1166
+ this.#active = false;
1167
+ this.#clearVisuals();
1168
+ if (wasReturning) {
1169
+ this.#clearDisengageTimer();
1170
+ this.#disengageTimer = setTimeout(
1171
+ () => {
1172
+ this.#disengageTimer = null;
1173
+ this.#opts.setIsPointerInTransit(false);
1174
+ },
1175
+ 100
1176
+ );
1177
+ } else {
1178
+ this.#opts.setIsPointerInTransit(false);
1179
+ }
1180
+ }
1181
+ #clearDisengageTimer() {
1182
+ if (this.#disengageTimer === null) return;
1183
+ clearTimeout(this.#disengageTimer);
1184
+ this.#disengageTimer = null;
1185
+ }
1186
+ #intentExit() {
1187
+ const pointerPoint = this.#pointerPoint;
1188
+ this.#detachDocMove();
1189
+ this.#clearFallback();
1190
+ this.#clearDisengageTimer();
1191
+ this.#active = false;
1192
+ this.#opts.setIsPointerInTransit(false);
1193
+ this.#clearVisuals();
1194
+ this.#opts.onIntentExit(pointerPoint);
1195
+ }
1196
+ #reset() {
1197
+ this.#detachDocMove();
1198
+ this.#clearFallback();
1199
+ this.#clearDisengageTimer();
1200
+ if (this.#active) this.#opts.setIsPointerInTransit(false);
1201
+ this.#active = false;
1202
+ this.#target = null;
1203
+ this.#apex = null;
1204
+ this.#pointerPoint = null;
1205
+ this.#launchPoint = null;
1206
+ }
1207
+ #isPointerInDescendantSubContent(pt) {
1208
+ const contentNode = this.#opts.contentNode();
1209
+ if (!contentNode) return false;
1210
+ const doc = contentNode.ownerDocument;
1211
+ const el = doc.elementFromPoint(pt.x, pt.y);
1212
+ if (!el) return false;
1213
+ const selector = this.#opts.subContentSelector();
1214
+ const subContent = el.closest(selector);
1215
+ if (!subContent || subContent === contentNode) return false;
1216
+ if (subContent.id) return !!contentNode.querySelector(`[aria-controls="${subContent.id}"]`);
1217
+ return false;
1218
+ }
1219
+ #onDocMove = (e) => {
1220
+ if (!this.#active || !this.#target) return;
1221
+ if (!isMouseEvent(e)) return;
1222
+ const triggerNode = this.#opts.triggerNode();
1223
+ const contentNode = this.#opts.contentNode();
1224
+ if (!triggerNode || !contentNode) {
1225
+ this.#intentExit();
1226
+ return;
1227
+ }
1228
+ this.#clearFallback();
1229
+ const pt = { x: e.clientX, y: e.clientY };
1230
+ this.#pointerPoint = pt;
1231
+ const triggerRect = triggerNode.getBoundingClientRect();
1232
+ const contentRect = contentNode.getBoundingClientRect();
1233
+ if (this.#target === "content" && isInsideRect(pt, contentRect)) {
1234
+ this.#disengage();
1235
+ return;
1236
+ }
1237
+ if (this.#target === "trigger" && isInsideInsetRect(pt, triggerRect, 4)) {
1238
+ this.#disengage();
1239
+ return;
1240
+ }
1241
+ if (this.#isPointerInDescendantSubContent(pt)) {
1242
+ this.#startFallback();
1243
+ return;
1244
+ }
1245
+ const geo = this.#computePolygons(pt, this.#target);
1246
+ if (!geo) {
1247
+ this.#intentExit();
1248
+ return;
1249
+ }
1250
+ if (this.#isInSafeZone(pt, geo.corridor, geo.intent)) {
1251
+ this.#startFallback();
1252
+ return;
1253
+ }
1254
+ this.#intentExit();
1255
+ };
1256
+ #attachDocMove() {
1257
+ if (this.#cleanupDocMove) return;
1258
+ const doc = getDocument(this.#opts.triggerNode() ?? this.#opts.contentNode());
1259
+ if (!doc) return;
1260
+ doc.addEventListener("pointermove", this.#onDocMove, true);
1261
+ this.#cleanupDocMove = () => {
1262
+ doc.removeEventListener("pointermove", this.#onDocMove, true);
1263
+ this.#cleanupDocMove = null;
1264
+ };
1265
+ }
1266
+ #detachDocMove() {
1267
+ this.#cleanupDocMove?.();
1268
+ }
1269
+ #startFallback() {
1270
+ this.#clearFallback();
1271
+ this.#fallbackTimer = setTimeout(
1272
+ () => {
1273
+ this.#fallbackTimer = null;
1274
+ if (this.#active) this.#intentExit();
1275
+ },
1276
+ 500
1277
+ );
1278
+ }
1279
+ #clearFallback() {
1280
+ if (this.#fallbackTimer === null) return;
1281
+ clearTimeout(this.#fallbackTimer);
1282
+ this.#fallbackTimer = null;
1283
+ }
1284
+ #clearVisuals() {
1285
+ this.#target = null;
1286
+ this.#apex = null;
1287
+ this.#pointerPoint = null;
1288
+ }
1289
+ }
1290
+ function isPointInPolygon(point, polygon) {
1291
+ const { x, y } = point;
1292
+ let inside = false;
1293
+ for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {
1294
+ const xi = polygon[i].x;
1295
+ const yi = polygon[i].y;
1296
+ const xj = polygon[j].x;
1297
+ const yj = polygon[j].y;
1298
+ const intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi;
1299
+ if (intersect) inside = !inside;
1300
+ }
1301
+ return inside;
1302
+ }
1303
+ function isInsideRect(point, rect) {
1304
+ return point.x >= rect.left && point.x <= rect.right && point.y >= rect.top && point.y <= rect.bottom;
1305
+ }
1306
+ function isInsideInsetRect(point, rect, inset) {
1307
+ return point.x >= rect.left + inset && point.x <= rect.right - inset && point.y >= rect.top + inset && point.y <= rect.bottom - inset;
1308
+ }
1309
+ function getSide(triggerRect, contentRect) {
1310
+ const triggerCenterX = triggerRect.left + triggerRect.width / 2;
1311
+ const triggerCenterY = triggerRect.top + triggerRect.height / 2;
1312
+ const contentCenterX = contentRect.left + contentRect.width / 2;
1313
+ const contentCenterY = contentRect.top + contentRect.height / 2;
1314
+ const deltaX = contentCenterX - triggerCenterX;
1315
+ const deltaY = contentCenterY - triggerCenterY;
1316
+ if (Math.abs(deltaX) > Math.abs(deltaY)) {
1317
+ return deltaX > 0 ? "right" : "left";
1318
+ }
1319
+ return deltaY > 0 ? "bottom" : "top";
1320
+ }
1321
+ function getCorridorPolygon(triggerRect, contentRect, side) {
1322
+ const buffer = 2;
1323
+ switch (side) {
1324
+ case "top":
1325
+ return [
1326
+ {
1327
+ x: Math.min(triggerRect.left, contentRect.left) - buffer,
1328
+ y: triggerRect.top
1329
+ },
1330
+ {
1331
+ x: Math.min(triggerRect.left, contentRect.left) - buffer,
1332
+ y: contentRect.bottom
1333
+ },
1334
+ {
1335
+ x: Math.max(triggerRect.right, contentRect.right) + buffer,
1336
+ y: contentRect.bottom
1337
+ },
1338
+ {
1339
+ x: Math.max(triggerRect.right, contentRect.right) + buffer,
1340
+ y: triggerRect.top
1341
+ }
1342
+ ];
1343
+ case "bottom":
1344
+ return [
1345
+ {
1346
+ x: Math.min(triggerRect.left, contentRect.left) - buffer,
1347
+ y: triggerRect.bottom
1348
+ },
1349
+ {
1350
+ x: Math.min(triggerRect.left, contentRect.left) - buffer,
1351
+ y: contentRect.top
1352
+ },
1353
+ {
1354
+ x: Math.max(triggerRect.right, contentRect.right) + buffer,
1355
+ y: contentRect.top
1356
+ },
1357
+ {
1358
+ x: Math.max(triggerRect.right, contentRect.right) + buffer,
1359
+ y: triggerRect.bottom
1360
+ }
1361
+ ];
1362
+ case "left":
1363
+ return [
1364
+ {
1365
+ x: triggerRect.left,
1366
+ y: Math.min(triggerRect.top, contentRect.top) - buffer
1367
+ },
1368
+ {
1369
+ x: contentRect.right,
1370
+ y: Math.min(triggerRect.top, contentRect.top) - buffer
1371
+ },
1372
+ {
1373
+ x: contentRect.right,
1374
+ y: Math.max(triggerRect.bottom, contentRect.bottom) + buffer
1375
+ },
1376
+ {
1377
+ x: triggerRect.left,
1378
+ y: Math.max(triggerRect.bottom, contentRect.bottom) + buffer
1379
+ }
1380
+ ];
1381
+ case "right":
1382
+ return [
1383
+ {
1384
+ x: triggerRect.right,
1385
+ y: Math.min(triggerRect.top, contentRect.top) - buffer
1386
+ },
1387
+ {
1388
+ x: contentRect.left,
1389
+ y: Math.min(triggerRect.top, contentRect.top) - buffer
1390
+ },
1391
+ {
1392
+ x: contentRect.left,
1393
+ y: Math.max(triggerRect.bottom, contentRect.bottom) + buffer
1394
+ },
1395
+ {
1396
+ x: triggerRect.right,
1397
+ y: Math.max(triggerRect.bottom, contentRect.bottom) + buffer
1398
+ }
1399
+ ];
1400
+ }
1401
+ }
1402
+ function getIntentPolygon(exitPoint, targetRect, side, target, sourceRect) {
1403
+ const edgeBuffer = 8;
1404
+ const effectiveSide = target === "trigger" ? flipSide(side) : side;
1405
+ const top = sourceRect ? Math.min(targetRect.top, sourceRect.top) - edgeBuffer : targetRect.top - edgeBuffer;
1406
+ const bottom = sourceRect ? Math.max(targetRect.bottom, sourceRect.bottom) + edgeBuffer : targetRect.bottom + edgeBuffer;
1407
+ const left = sourceRect ? Math.min(targetRect.left, sourceRect.left) - edgeBuffer : targetRect.left - edgeBuffer;
1408
+ const right = sourceRect ? Math.max(targetRect.right, sourceRect.right) + edgeBuffer : targetRect.right + edgeBuffer;
1409
+ switch (effectiveSide) {
1410
+ case "right":
1411
+ return [
1412
+ exitPoint,
1413
+ { x: targetRect.left, y: top },
1414
+ { x: targetRect.left, y: bottom }
1415
+ ];
1416
+ case "left":
1417
+ return [
1418
+ exitPoint,
1419
+ { x: targetRect.right, y: top },
1420
+ { x: targetRect.right, y: bottom }
1421
+ ];
1422
+ case "bottom":
1423
+ return [
1424
+ exitPoint,
1425
+ { x: left, y: targetRect.top },
1426
+ { x: right, y: targetRect.top }
1427
+ ];
1428
+ case "top":
1429
+ return [
1430
+ exitPoint,
1431
+ { x: left, y: targetRect.bottom },
1432
+ { x: right, y: targetRect.bottom }
1433
+ ];
1434
+ }
1435
+ }
1436
+ function flipSide(side) {
1437
+ switch (side) {
1438
+ case "top":
1439
+ return "bottom";
1440
+ case "bottom":
1441
+ return "top";
1442
+ case "left":
1443
+ return "right";
1444
+ case "right":
1445
+ return "left";
1446
+ }
1447
+ }
1448
+ class MenuRootState {
1449
+ static create(opts) {
1450
+ const root = new MenuRootState(opts);
1451
+ return MenuRootContext.set(root);
1452
+ }
1453
+ opts;
1454
+ isUsingKeyboard = new IsUsingKeyboard();
1455
+ ignoreCloseAutoFocus = false;
1456
+ isPointerInTransit = false;
1457
+ constructor(opts) {
1458
+ this.opts = opts;
1459
+ }
1460
+ getBitsAttr = (part) => {
1461
+ return menuAttrs.getAttr(part, this.opts.variant.current);
1462
+ };
1463
+ }
1464
+ class MenuMenuState {
1465
+ static create(opts, root) {
1466
+ return MenuMenuContext.set(new MenuMenuState(opts, root, null));
1467
+ }
1468
+ opts;
1469
+ root;
1470
+ parentMenu;
1471
+ contentId = boxWith(() => "");
1472
+ contentNode = null;
1473
+ contentPresence;
1474
+ triggerNode = null;
1475
+ constructor(opts, root, parentMenu) {
1476
+ this.opts = opts;
1477
+ this.root = root;
1478
+ this.parentMenu = parentMenu;
1479
+ this.contentPresence = new PresenceManager({
1480
+ ref: boxWith(() => this.contentNode),
1481
+ open: this.opts.open,
1482
+ onComplete: () => {
1483
+ this.opts.onOpenChangeComplete.current(this.opts.open.current);
1484
+ },
1485
+ shouldSkipExitAnimation: () => {
1486
+ if (this.root.opts.variant.current !== "menubar" || this.parentMenu !== null) {
1487
+ return false;
1488
+ }
1489
+ return this.root.opts.shouldSkipExitAnimation?.() ?? false;
1490
+ }
1491
+ });
1492
+ if (parentMenu) {
1493
+ watch(() => parentMenu.opts.open.current, () => {
1494
+ if (parentMenu.opts.open.current) return;
1495
+ this.opts.open.current = false;
1496
+ });
1497
+ }
1498
+ }
1499
+ toggleOpen() {
1500
+ this.opts.open.current = !this.opts.open.current;
1501
+ }
1502
+ onOpen() {
1503
+ this.opts.open.current = true;
1504
+ }
1505
+ onClose() {
1506
+ this.opts.open.current = false;
1507
+ }
1508
+ }
1509
+ class MenuContentState {
1510
+ static create(opts) {
1511
+ return MenuContentContext.set(new MenuContentState(opts, MenuMenuContext.get()));
1512
+ }
1513
+ opts;
1514
+ parentMenu;
1515
+ rovingFocusGroup;
1516
+ domContext;
1517
+ attachment;
1518
+ search = "";
1519
+ #timer = 0;
1520
+ #handleTypeaheadSearch;
1521
+ mounted = false;
1522
+ #isSub;
1523
+ constructor(opts, parentMenu) {
1524
+ this.opts = opts;
1525
+ this.parentMenu = parentMenu;
1526
+ this.domContext = new DOMContext(opts.ref);
1527
+ this.attachment = attachRef(this.opts.ref, (v) => {
1528
+ if (this.parentMenu.contentNode !== v) {
1529
+ this.parentMenu.contentNode = v;
1530
+ }
1531
+ });
1532
+ parentMenu.contentId = opts.id;
1533
+ this.#isSub = opts.isSub ?? false;
1534
+ this.onkeydown = this.onkeydown.bind(this);
1535
+ this.onblur = this.onblur.bind(this);
1536
+ this.onfocus = this.onfocus.bind(this);
1537
+ this.handleInteractOutside = this.handleInteractOutside.bind(this);
1538
+ new MenuSubmenuIntent({
1539
+ contentNode: () => this.parentMenu.contentNode,
1540
+ triggerNode: () => this.parentMenu.triggerNode,
1541
+ parentContentNode: () => this.parentMenu.parentMenu?.contentNode ?? null,
1542
+ subContentSelector: () => `[${this.parentMenu.root.getBitsAttr("sub-content")}]`,
1543
+ // debugMode: () => this.parentMenu.root.opts.debugMode.current,
1544
+ enabled: () => this.parentMenu.opts.open.current && Boolean(this.parentMenu.triggerNode?.hasAttribute(this.parentMenu.root.getBitsAttr("sub-trigger"))),
1545
+ onIntentExit: (pointerPoint) => {
1546
+ this.parentMenu.opts.open.current = false;
1547
+ this.#dispatchPointerMoveToHoveredSubTrigger(pointerPoint);
1548
+ },
1549
+ setIsPointerInTransit: (value) => {
1550
+ this.parentMenu.root.isPointerInTransit = value;
1551
+ }
1552
+ });
1553
+ this.#handleTypeaheadSearch = new DOMTypeahead({
1554
+ getActiveElement: () => this.domContext.getActiveElement(),
1555
+ getWindow: () => this.domContext.getWindow()
1556
+ }).handleTypeaheadSearch;
1557
+ this.rovingFocusGroup = new RovingFocusGroup({
1558
+ rootNode: boxWith(() => this.parentMenu.contentNode),
1559
+ candidateAttr: this.parentMenu.root.getBitsAttr("item"),
1560
+ loop: this.opts.loop,
1561
+ orientation: boxWith(() => "vertical")
1562
+ });
1563
+ watch(() => this.parentMenu.contentNode, (contentNode) => {
1564
+ if (!contentNode) return;
1565
+ const handler = () => {
1566
+ afterTick(() => {
1567
+ if (!this.parentMenu.root.isUsingKeyboard.current) return;
1568
+ this.rovingFocusGroup.focusFirstCandidate();
1569
+ });
1570
+ };
1571
+ return MenuOpenEvent.listen(contentNode, handler);
1572
+ });
1573
+ }
1574
+ #getCandidateNodes() {
1575
+ const node = this.parentMenu.contentNode;
1576
+ if (!node) return [];
1577
+ const candidates = Array.from(node.querySelectorAll(`[${this.parentMenu.root.getBitsAttr("item")}]:not([data-disabled])`));
1578
+ return candidates;
1579
+ }
1580
+ #isPointerMovingToSubmenu() {
1581
+ return this.parentMenu.root.isPointerInTransit;
1582
+ }
1583
+ #dispatchPointerMoveToHoveredSubTrigger(pointerPoint) {
1584
+ if (!pointerPoint) return;
1585
+ const parentContentNode = this.parentMenu.parentMenu?.contentNode;
1586
+ if (!parentContentNode) return;
1587
+ const hoveredNode = this.domContext.getDocument().elementFromPoint(pointerPoint.x, pointerPoint.y);
1588
+ if (!isElement(hoveredNode)) return;
1589
+ const hoveredSubTrigger = hoveredNode.closest(`[${this.parentMenu.root.getBitsAttr("sub-trigger")}]`);
1590
+ if (!hoveredSubTrigger || !parentContentNode.contains(hoveredSubTrigger)) return;
1591
+ if (hoveredSubTrigger === this.parentMenu.triggerNode) return;
1592
+ hoveredSubTrigger.dispatchEvent(new PointerEvent("pointermove", {
1593
+ bubbles: true,
1594
+ cancelable: true,
1595
+ pointerType: "mouse",
1596
+ clientX: pointerPoint.x,
1597
+ clientY: pointerPoint.y
1598
+ }));
1599
+ }
1600
+ onCloseAutoFocus = (e) => {
1601
+ this.opts.onCloseAutoFocus.current?.(e);
1602
+ if (e.defaultPrevented || this.#isSub) return;
1603
+ if (this.parentMenu.root.ignoreCloseAutoFocus) {
1604
+ e.preventDefault();
1605
+ return;
1606
+ }
1607
+ if (this.parentMenu.triggerNode && isTabbable(this.parentMenu.triggerNode)) {
1608
+ e.preventDefault();
1609
+ this.parentMenu.triggerNode.focus();
1610
+ }
1611
+ };
1612
+ handleTabKeyDown(e) {
1613
+ let rootMenu = this.parentMenu;
1614
+ while (rootMenu.parentMenu !== null) {
1615
+ rootMenu = rootMenu.parentMenu;
1616
+ }
1617
+ if (!rootMenu.triggerNode) return;
1618
+ e.preventDefault();
1619
+ const nodeToFocus = getTabbableFrom(rootMenu.triggerNode, e.shiftKey ? "prev" : "next");
1620
+ if (nodeToFocus) {
1621
+ this.parentMenu.root.ignoreCloseAutoFocus = true;
1622
+ rootMenu.onClose();
1623
+ afterTick(() => {
1624
+ nodeToFocus.focus();
1625
+ afterTick(() => {
1626
+ this.parentMenu.root.ignoreCloseAutoFocus = false;
1627
+ });
1628
+ });
1629
+ } else {
1630
+ this.domContext.getDocument().body.focus();
1631
+ }
1632
+ }
1633
+ onkeydown(e) {
1634
+ if (e.defaultPrevented) return;
1635
+ if (e.key === TAB) {
1636
+ this.handleTabKeyDown(e);
1637
+ return;
1638
+ }
1639
+ const target = e.target;
1640
+ const currentTarget = e.currentTarget;
1641
+ if (!isHTMLElement$1(target) || !isHTMLElement$1(currentTarget)) return;
1642
+ const isKeydownInside = target.closest(`[${this.parentMenu.root.getBitsAttr("content")}]`)?.id === this.parentMenu.contentId.current;
1643
+ const isModifierKey = e.ctrlKey || e.altKey || e.metaKey;
1644
+ const isCharacterKey = e.key.length === 1;
1645
+ const kbdFocusedEl = this.rovingFocusGroup.handleKeydown(target, e);
1646
+ if (kbdFocusedEl) return;
1647
+ if (e.code === "Space") return;
1648
+ const candidateNodes = this.#getCandidateNodes();
1649
+ if (isKeydownInside) {
1650
+ if (!isModifierKey && isCharacterKey) {
1651
+ this.#handleTypeaheadSearch(e.key, candidateNodes);
1652
+ }
1653
+ }
1654
+ if (e.target?.id !== this.parentMenu.contentId.current) return;
1655
+ if (!FIRST_LAST_KEYS.includes(e.key)) return;
1656
+ e.preventDefault();
1657
+ if (LAST_KEYS.includes(e.key)) {
1658
+ candidateNodes.reverse();
1659
+ }
1660
+ focusFirst(candidateNodes, { select: false }, () => this.domContext.getActiveElement());
1661
+ }
1662
+ onblur(e) {
1663
+ if (!isElement(e.currentTarget)) return;
1664
+ if (!isElement(e.target)) return;
1665
+ if (!e.currentTarget.contains?.(e.target)) {
1666
+ this.domContext.getWindow().clearTimeout(this.#timer);
1667
+ this.search = "";
1668
+ }
1669
+ }
1670
+ onfocus(_) {
1671
+ if (!this.parentMenu.root.isUsingKeyboard.current) return;
1672
+ afterTick(() => this.rovingFocusGroup.focusFirstCandidate());
1673
+ }
1674
+ onItemEnter() {
1675
+ return this.#isPointerMovingToSubmenu();
1676
+ }
1677
+ onItemLeave(e) {
1678
+ if (e.currentTarget.hasAttribute(this.parentMenu.root.getBitsAttr("sub-trigger"))) return;
1679
+ if (this.#isPointerMovingToSubmenu() || this.parentMenu.root.isUsingKeyboard.current) return;
1680
+ const contentNode = this.parentMenu.contentNode;
1681
+ contentNode?.focus({ preventScroll: true });
1682
+ this.rovingFocusGroup.setCurrentTabStopId("");
1683
+ }
1684
+ onTriggerLeave() {
1685
+ if (this.#isPointerMovingToSubmenu()) return true;
1686
+ return false;
1687
+ }
1688
+ handleInteractOutside(e) {
1689
+ if (!isElementOrSVGElement(e.target)) return;
1690
+ const triggerId = this.parentMenu.triggerNode?.id;
1691
+ if (e.target.id === triggerId) {
1692
+ e.preventDefault();
1693
+ return;
1694
+ }
1695
+ if (e.target.closest(`#${triggerId}`)) {
1696
+ e.preventDefault();
1697
+ return;
1698
+ }
1699
+ this.parentMenu.root.ignoreCloseAutoFocus = true;
1700
+ afterTick(() => {
1701
+ this.parentMenu.root.ignoreCloseAutoFocus = false;
1702
+ });
1703
+ }
1704
+ get shouldRender() {
1705
+ return this.parentMenu.contentPresence.shouldRender;
1706
+ }
1707
+ #snippetProps = derived(() => ({ open: this.parentMenu.opts.open.current }));
1708
+ get snippetProps() {
1709
+ return this.#snippetProps();
1710
+ }
1711
+ set snippetProps($$value) {
1712
+ return this.#snippetProps($$value);
1713
+ }
1714
+ #props = derived(() => ({
1715
+ id: this.opts.id.current,
1716
+ role: "menu",
1717
+ "aria-orientation": "vertical",
1718
+ [this.parentMenu.root.getBitsAttr("content")]: "",
1719
+ "data-state": getDataOpenClosed(this.parentMenu.opts.open.current),
1720
+ ...getDataTransitionAttrs(this.parentMenu.contentPresence.transitionStatus),
1721
+ onkeydown: this.onkeydown,
1722
+ onblur: this.onblur,
1723
+ onfocus: this.onfocus,
1724
+ dir: this.parentMenu.root.opts.dir.current,
1725
+ style: { pointerEvents: "auto", contain: "layout style" },
1726
+ ...this.attachment
1727
+ }));
1728
+ get props() {
1729
+ return this.#props();
1730
+ }
1731
+ set props($$value) {
1732
+ return this.#props($$value);
1733
+ }
1734
+ popperProps = { onCloseAutoFocus: (e) => this.onCloseAutoFocus(e) };
1735
+ }
1736
+ class MenuItemSharedState {
1737
+ opts;
1738
+ content;
1739
+ attachment;
1740
+ #isFocused = false;
1741
+ constructor(opts, content) {
1742
+ this.opts = opts;
1743
+ this.content = content;
1744
+ this.attachment = attachRef(this.opts.ref);
1745
+ this.onpointermove = this.onpointermove.bind(this);
1746
+ this.onpointerleave = this.onpointerleave.bind(this);
1747
+ this.onfocus = this.onfocus.bind(this);
1748
+ this.onblur = this.onblur.bind(this);
1749
+ }
1750
+ onpointermove(e) {
1751
+ if (e.defaultPrevented) return;
1752
+ if (!isMouseEvent(e)) return;
1753
+ if (this.opts.disabled.current) {
1754
+ this.content.onItemLeave(e);
1755
+ } else {
1756
+ const defaultPrevented = this.content.onItemEnter();
1757
+ if (defaultPrevented) return;
1758
+ const item = e.currentTarget;
1759
+ if (!isHTMLElement$1(item)) return;
1760
+ item.focus({ preventScroll: true });
1761
+ }
1762
+ }
1763
+ onpointerleave(e) {
1764
+ if (e.defaultPrevented) return;
1765
+ if (!isMouseEvent(e)) return;
1766
+ this.content.onItemLeave(e);
1767
+ }
1768
+ onfocus(e) {
1769
+ afterTick(() => {
1770
+ if (e.defaultPrevented || this.opts.disabled.current) return;
1771
+ this.#isFocused = true;
1772
+ });
1773
+ }
1774
+ onblur(e) {
1775
+ afterTick(() => {
1776
+ if (e.defaultPrevented) return;
1777
+ this.#isFocused = false;
1778
+ });
1779
+ }
1780
+ #props = derived(() => ({
1781
+ id: this.opts.id.current,
1782
+ tabindex: -1,
1783
+ role: "menuitem",
1784
+ "aria-disabled": boolToStr(this.opts.disabled.current),
1785
+ "data-disabled": boolToEmptyStrOrUndef(this.opts.disabled.current),
1786
+ "data-highlighted": this.#isFocused ? "" : void 0,
1787
+ [this.content.parentMenu.root.getBitsAttr("item")]: "",
1788
+ //
1789
+ onpointermove: this.onpointermove,
1790
+ onpointerleave: this.onpointerleave,
1791
+ onfocus: this.onfocus,
1792
+ onblur: this.onblur,
1793
+ ...this.attachment
1794
+ }));
1795
+ get props() {
1796
+ return this.#props();
1797
+ }
1798
+ set props($$value) {
1799
+ return this.#props($$value);
1800
+ }
1801
+ }
1802
+ class MenuItemState {
1803
+ static create(opts) {
1804
+ const item = new MenuItemSharedState(opts, MenuContentContext.get());
1805
+ return new MenuItemState(opts, item);
1806
+ }
1807
+ opts;
1808
+ item;
1809
+ root;
1810
+ #isPointerDown = false;
1811
+ constructor(opts, item) {
1812
+ this.opts = opts;
1813
+ this.item = item;
1814
+ this.root = item.content.parentMenu.root;
1815
+ this.onkeydown = this.onkeydown.bind(this);
1816
+ this.onclick = this.onclick.bind(this);
1817
+ this.onpointerdown = this.onpointerdown.bind(this);
1818
+ this.onpointerup = this.onpointerup.bind(this);
1819
+ }
1820
+ #handleSelect() {
1821
+ if (this.item.opts.disabled.current) return;
1822
+ const selectEvent = new CustomEvent("menuitemselect", { bubbles: true, cancelable: true });
1823
+ this.opts.onSelect.current(selectEvent);
1824
+ if (selectEvent.defaultPrevented) {
1825
+ this.item.content.parentMenu.root.isUsingKeyboard.current = false;
1826
+ return;
1827
+ }
1828
+ if (this.opts.closeOnSelect.current) {
1829
+ this.item.content.parentMenu.root.opts.onClose();
1830
+ }
1831
+ }
1832
+ onkeydown(e) {
1833
+ const isTypingAhead = this.item.content.search !== "";
1834
+ if (this.item.opts.disabled.current || isTypingAhead && e.key === SPACE) return;
1835
+ if (SELECTION_KEYS.includes(e.key)) {
1836
+ if (!isHTMLElement$1(e.currentTarget)) return;
1837
+ e.currentTarget.click();
1838
+ e.preventDefault();
1839
+ }
1840
+ }
1841
+ onclick(_) {
1842
+ if (this.item.opts.disabled.current) return;
1843
+ this.#handleSelect();
1844
+ }
1845
+ onpointerup(e) {
1846
+ if (e.defaultPrevented) return;
1847
+ if (!this.#isPointerDown) {
1848
+ if (!isHTMLElement$1(e.currentTarget)) return;
1849
+ e.currentTarget?.click();
1850
+ }
1851
+ }
1852
+ onpointerdown(_) {
1853
+ this.#isPointerDown = true;
1854
+ }
1855
+ #props = derived(() => mergeProps(this.item.props, {
1856
+ onclick: this.onclick,
1857
+ onpointerdown: this.onpointerdown,
1858
+ onpointerup: this.onpointerup,
1859
+ onkeydown: this.onkeydown
1860
+ }));
1861
+ get props() {
1862
+ return this.#props();
1863
+ }
1864
+ set props($$value) {
1865
+ return this.#props($$value);
1866
+ }
1867
+ }
1868
+ class MenuSubTriggerState {
1869
+ static create(opts) {
1870
+ const content = MenuContentContext.get();
1871
+ const item = new MenuItemSharedState(opts, content);
1872
+ const submenu = MenuMenuContext.get();
1873
+ return new MenuSubTriggerState(opts, item, content, submenu);
1874
+ }
1875
+ opts;
1876
+ item;
1877
+ content;
1878
+ submenu;
1879
+ attachment;
1880
+ #openTimer = null;
1881
+ constructor(opts, item, content, submenu) {
1882
+ this.opts = opts;
1883
+ this.item = item;
1884
+ this.content = content;
1885
+ this.submenu = submenu;
1886
+ this.attachment = attachRef(this.opts.ref, (v) => this.submenu.triggerNode = v);
1887
+ this.onpointerleave = this.onpointerleave.bind(this);
1888
+ this.onpointermove = this.onpointermove.bind(this);
1889
+ this.onkeydown = this.onkeydown.bind(this);
1890
+ this.onclick = this.onclick.bind(this);
1891
+ }
1892
+ #clearOpenTimer() {
1893
+ if (this.#openTimer === null) return;
1894
+ this.content.domContext.getWindow().clearTimeout(this.#openTimer);
1895
+ this.#openTimer = null;
1896
+ }
1897
+ onpointermove(e) {
1898
+ if (!isMouseEvent(e)) return;
1899
+ if (this.submenu.root.isPointerInTransit) {
1900
+ if (this.#openTimer !== null) this.#clearOpenTimer();
1901
+ return;
1902
+ }
1903
+ if (!this.item.opts.disabled.current && !this.submenu.opts.open.current && !this.#openTimer) {
1904
+ const openDelay = this.opts.openDelay.current;
1905
+ if (openDelay <= 0) {
1906
+ this.submenu.onOpen();
1907
+ return;
1908
+ }
1909
+ this.#openTimer = this.content.domContext.setTimeout(
1910
+ () => {
1911
+ if (this.submenu.root.isPointerInTransit) {
1912
+ this.#clearOpenTimer();
1913
+ return;
1914
+ }
1915
+ this.submenu.onOpen();
1916
+ this.#clearOpenTimer();
1917
+ },
1918
+ openDelay
1919
+ );
1920
+ }
1921
+ }
1922
+ onpointerleave(e) {
1923
+ if (!isMouseEvent(e)) return;
1924
+ this.#clearOpenTimer();
1925
+ }
1926
+ onkeydown(e) {
1927
+ const isTypingAhead = this.content.search !== "";
1928
+ if (this.item.opts.disabled.current || isTypingAhead && e.key === SPACE) return;
1929
+ if (SUB_OPEN_KEYS[this.submenu.root.opts.dir.current].includes(e.key)) {
1930
+ e.currentTarget.click();
1931
+ e.preventDefault();
1932
+ }
1933
+ }
1934
+ onclick(e) {
1935
+ if (this.item.opts.disabled.current) return;
1936
+ if (!isHTMLElement$1(e.currentTarget)) return;
1937
+ e.currentTarget.focus();
1938
+ const selectEvent = new CustomEvent("menusubtriggerselect", { bubbles: true, cancelable: true });
1939
+ this.opts.onSelect.current(selectEvent);
1940
+ if (!this.submenu.opts.open.current) {
1941
+ this.submenu.onOpen();
1942
+ afterTick(() => {
1943
+ const contentNode = this.submenu.contentNode;
1944
+ if (!contentNode) return;
1945
+ MenuOpenEvent.dispatch(contentNode);
1946
+ });
1947
+ }
1948
+ }
1949
+ #props = derived(() => mergeProps(
1950
+ {
1951
+ "aria-haspopup": "menu",
1952
+ "aria-expanded": boolToStr(this.submenu.opts.open.current),
1953
+ "data-state": getDataOpenClosed(this.submenu.opts.open.current),
1954
+ "aria-controls": this.submenu.opts.open.current ? this.submenu.contentId.current : void 0,
1955
+ [this.submenu.root.getBitsAttr("sub-trigger")]: "",
1956
+ onclick: this.onclick,
1957
+ onpointermove: this.onpointermove,
1958
+ onpointerleave: this.onpointerleave,
1959
+ onkeydown: this.onkeydown,
1960
+ ...this.attachment
1961
+ },
1962
+ this.item.props
1963
+ ));
1964
+ get props() {
1965
+ return this.#props();
1966
+ }
1967
+ set props($$value) {
1968
+ return this.#props($$value);
1969
+ }
1970
+ }
1971
+ class MenuSeparatorState {
1972
+ static create(opts) {
1973
+ return new MenuSeparatorState(opts, MenuRootContext.get());
1974
+ }
1975
+ opts;
1976
+ root;
1977
+ attachment;
1978
+ constructor(opts, root) {
1979
+ this.opts = opts;
1980
+ this.root = root;
1981
+ this.attachment = attachRef(this.opts.ref);
1982
+ }
1983
+ #props = derived(() => ({
1984
+ id: this.opts.id.current,
1985
+ role: "group",
1986
+ [this.root.getBitsAttr("separator")]: "",
1987
+ ...this.attachment
1988
+ }));
1989
+ get props() {
1990
+ return this.#props();
1991
+ }
1992
+ set props($$value) {
1993
+ return this.#props($$value);
1994
+ }
1995
+ }
1996
+ class DropdownMenuTriggerState {
1997
+ static create(opts) {
1998
+ return new DropdownMenuTriggerState(opts, MenuMenuContext.get());
1999
+ }
2000
+ opts;
2001
+ parentMenu;
2002
+ attachment;
2003
+ constructor(opts, parentMenu) {
2004
+ this.opts = opts;
2005
+ this.parentMenu = parentMenu;
2006
+ this.attachment = attachRef(this.opts.ref, (v) => this.parentMenu.triggerNode = v);
2007
+ }
2008
+ onclick = (e) => {
2009
+ if (this.opts.disabled.current || e.detail !== 0) return;
2010
+ this.parentMenu.toggleOpen();
2011
+ e.preventDefault();
2012
+ };
2013
+ onpointerdown = (e) => {
2014
+ if (this.opts.disabled.current) return;
2015
+ if (e.pointerType === "touch") return e.preventDefault();
2016
+ if (e.button === 0 && e.ctrlKey === false) {
2017
+ this.parentMenu.toggleOpen();
2018
+ if (!this.parentMenu.opts.open.current) e.preventDefault();
2019
+ }
2020
+ };
2021
+ onpointerup = (e) => {
2022
+ if (this.opts.disabled.current) return;
2023
+ if (e.pointerType === "touch") {
2024
+ e.preventDefault();
2025
+ this.parentMenu.toggleOpen();
2026
+ }
2027
+ };
2028
+ onkeydown = (e) => {
2029
+ if (this.opts.disabled.current) return;
2030
+ if (e.key === SPACE || e.key === ENTER) {
2031
+ this.parentMenu.toggleOpen();
2032
+ e.preventDefault();
2033
+ return;
2034
+ }
2035
+ if (e.key === ARROW_DOWN) {
2036
+ this.parentMenu.onOpen();
2037
+ e.preventDefault();
2038
+ }
2039
+ };
2040
+ #ariaControls = derived(() => {
2041
+ if (this.parentMenu.opts.open.current && this.parentMenu.contentId.current) return this.parentMenu.contentId.current;
2042
+ return void 0;
2043
+ });
2044
+ #props = derived(() => ({
2045
+ id: this.opts.id.current,
2046
+ disabled: this.opts.disabled.current,
2047
+ "aria-haspopup": "menu",
2048
+ "aria-expanded": boolToStr(this.parentMenu.opts.open.current),
2049
+ "aria-controls": this.#ariaControls(),
2050
+ "data-disabled": boolToEmptyStrOrUndef(this.opts.disabled.current),
2051
+ "data-state": getDataOpenClosed(this.parentMenu.opts.open.current),
2052
+ [this.parentMenu.root.getBitsAttr("trigger")]: "",
2053
+ //
2054
+ onclick: this.onclick,
2055
+ onpointerdown: this.onpointerdown,
2056
+ onpointerup: this.onpointerup,
2057
+ onkeydown: this.onkeydown,
2058
+ ...this.attachment
2059
+ }));
2060
+ get props() {
2061
+ return this.#props();
2062
+ }
2063
+ set props($$value) {
2064
+ return this.#props($$value);
2065
+ }
2066
+ }
2067
+ class MenuSubmenuState {
2068
+ static create(opts) {
2069
+ const menu = MenuMenuContext.get();
2070
+ return MenuMenuContext.set(new MenuMenuState(opts, menu.root, menu));
2071
+ }
2072
+ }
2073
+ globalThis.bitsDismissableLayers ??= /* @__PURE__ */ new Map();
2074
+ class DismissibleLayerState {
2075
+ static create(opts) {
2076
+ return new DismissibleLayerState(opts);
2077
+ }
2078
+ opts;
2079
+ #interactOutsideProp;
2080
+ #behaviorType;
2081
+ #interceptedEvents = { pointerdown: false };
2082
+ #isResponsibleLayer = false;
2083
+ #isFocusInsideDOMTree = false;
2084
+ #documentObj = void 0;
2085
+ #onFocusOutside;
2086
+ #unsubClickListener = noop;
2087
+ constructor(opts) {
2088
+ this.opts = opts;
2089
+ this.#behaviorType = opts.interactOutsideBehavior;
2090
+ this.#interactOutsideProp = opts.onInteractOutside;
2091
+ this.#onFocusOutside = opts.onFocusOutside;
2092
+ let unsubEvents = noop;
2093
+ const cleanup = () => {
2094
+ this.#resetState();
2095
+ globalThis.bitsDismissableLayers.delete(this);
2096
+ this.#handleInteractOutside.destroy();
2097
+ unsubEvents();
2098
+ };
2099
+ watch([() => this.opts.enabled.current, () => this.opts.ref.current], () => {
2100
+ if (!this.opts.enabled.current || !this.opts.ref.current) return;
2101
+ afterSleep(1, () => {
2102
+ if (!this.opts.ref.current) return;
2103
+ globalThis.bitsDismissableLayers.set(this, this.#behaviorType);
2104
+ unsubEvents();
2105
+ unsubEvents = this.#addEventListeners();
2106
+ });
2107
+ return cleanup;
2108
+ });
2109
+ }
2110
+ #handleFocus = (event) => {
2111
+ if (event.defaultPrevented) return;
2112
+ if (!this.opts.ref.current) return;
2113
+ afterTick(() => {
2114
+ if (!this.opts.ref.current || this.#isTargetWithinLayer(event.target)) return;
2115
+ if (event.target && !this.#isFocusInsideDOMTree) {
2116
+ this.#onFocusOutside.current?.(event);
2117
+ }
2118
+ });
2119
+ };
2120
+ #addEventListeners() {
2121
+ return executeCallbacks(
2122
+ /**
2123
+ * CAPTURE INTERACTION START
2124
+ * mark interaction-start event as intercepted.
2125
+ * mark responsible layer during interaction start
2126
+ * to avoid checking if is responsible layer during interaction end
2127
+ * when a new floating element may have been opened.
2128
+ */
2129
+ on(this.#documentObj, "pointerdown", executeCallbacks(this.#markInterceptedEvent, this.#markResponsibleLayer), { capture: true }),
2130
+ /**
2131
+ * BUBBLE INTERACTION START
2132
+ * Mark interaction-start event as non-intercepted. Debounce `onInteractOutsideStart`
2133
+ * to avoid prematurely checking if other events were intercepted.
2134
+ */
2135
+ on(this.#documentObj, "pointerdown", executeCallbacks(this.#markNonInterceptedEvent, this.#handleInteractOutside)),
2136
+ /**
2137
+ * HANDLE FOCUS OUTSIDE
2138
+ */
2139
+ on(this.#documentObj, "focusin", this.#handleFocus)
2140
+ );
2141
+ }
2142
+ #handleDismiss = (e) => {
2143
+ let event = e;
2144
+ if (event.defaultPrevented) {
2145
+ event = createWrappedEvent(e);
2146
+ }
2147
+ this.#interactOutsideProp.current(e);
2148
+ };
2149
+ #handleInteractOutside = debounce(
2150
+ (e) => {
2151
+ if (!this.opts.ref.current) {
2152
+ this.#unsubClickListener();
2153
+ return;
2154
+ }
2155
+ const isEventValid = this.opts.isValidEvent.current(e, this.opts.ref.current) || isValidEvent(e, this.opts.ref.current);
2156
+ if (!this.#isResponsibleLayer || this.#isAnyEventIntercepted() || !isEventValid) {
2157
+ this.#unsubClickListener();
2158
+ return;
2159
+ }
2160
+ let event = e;
2161
+ if (event.defaultPrevented) {
2162
+ event = createWrappedEvent(event);
2163
+ }
2164
+ if (this.#behaviorType.current !== "close" && this.#behaviorType.current !== "defer-otherwise-close") {
2165
+ this.#unsubClickListener();
2166
+ return;
2167
+ }
2168
+ if (e.pointerType === "touch") {
2169
+ this.#unsubClickListener();
2170
+ this.#unsubClickListener = on(this.#documentObj, "click", this.#handleDismiss, { once: true });
2171
+ } else {
2172
+ this.#interactOutsideProp.current(event);
2173
+ }
2174
+ },
2175
+ 10
2176
+ );
2177
+ #markInterceptedEvent = (e) => {
2178
+ this.#interceptedEvents[e.type] = true;
2179
+ };
2180
+ #markNonInterceptedEvent = (e) => {
2181
+ this.#interceptedEvents[e.type] = false;
2182
+ };
2183
+ #markResponsibleLayer = () => {
2184
+ if (!this.opts.ref.current) return;
2185
+ this.#isResponsibleLayer = isResponsibleLayer(this.opts.ref.current);
2186
+ };
2187
+ #isTargetWithinLayer = (target) => {
2188
+ if (!this.opts.ref.current) return false;
2189
+ return isOrContainsTarget(this.opts.ref.current, target);
2190
+ };
2191
+ #resetState = debounce(
2192
+ () => {
2193
+ for (const eventType in this.#interceptedEvents) {
2194
+ this.#interceptedEvents[eventType] = false;
2195
+ }
2196
+ this.#isResponsibleLayer = false;
2197
+ },
2198
+ 20
2199
+ );
2200
+ #isAnyEventIntercepted() {
2201
+ const i = Object.values(this.#interceptedEvents).some(Boolean);
2202
+ return i;
2203
+ }
2204
+ #onfocuscapture = () => {
2205
+ this.#isFocusInsideDOMTree = true;
2206
+ };
2207
+ #onblurcapture = () => {
2208
+ this.#isFocusInsideDOMTree = false;
2209
+ };
2210
+ props = {
2211
+ onfocuscapture: this.#onfocuscapture,
2212
+ onblurcapture: this.#onblurcapture
2213
+ };
2214
+ }
2215
+ function getTopMostDismissableLayer(layersArr = [...globalThis.bitsDismissableLayers]) {
2216
+ return layersArr.findLast(([_, { current: behaviorType }]) => behaviorType === "close" || behaviorType === "ignore");
2217
+ }
2218
+ function isResponsibleLayer(node) {
2219
+ const layersArr = [...globalThis.bitsDismissableLayers];
2220
+ const topMostLayer = getTopMostDismissableLayer(layersArr);
2221
+ if (topMostLayer) return topMostLayer[0].opts.ref.current === node;
2222
+ const [firstLayerNode] = layersArr[0];
2223
+ return firstLayerNode.opts.ref.current === node;
2224
+ }
2225
+ function isValidEvent(e, node) {
2226
+ const target = e.target;
2227
+ if (!isElementOrSVGElement(target)) return false;
2228
+ const targetIsContextMenuTrigger = Boolean(target.closest(`[${CONTEXT_MENU_TRIGGER_ATTR}]`));
2229
+ const nodeIsContextMenu = Boolean(node.closest(`[${CONTEXT_MENU_CONTENT_ATTR}]`));
2230
+ if ("button" in e && e.button > 0 && !targetIsContextMenuTrigger) return false;
2231
+ if ("button" in e && e.button === 0 && targetIsContextMenuTrigger && nodeIsContextMenu) {
2232
+ return true;
2233
+ }
2234
+ if (targetIsContextMenuTrigger && nodeIsContextMenu) return false;
2235
+ const ownerDocument = getOwnerDocument(target);
2236
+ const isValid = ownerDocument.documentElement.contains(target) && !isOrContainsTarget(node, target) && isClickTrulyOutside(e, node);
2237
+ return isValid;
2238
+ }
2239
+ function createWrappedEvent(e) {
2240
+ const capturedCurrentTarget = e.currentTarget;
2241
+ const capturedTarget = e.target;
2242
+ let newEvent;
2243
+ if (e instanceof PointerEvent) {
2244
+ newEvent = new PointerEvent(e.type, e);
2245
+ } else {
2246
+ newEvent = new PointerEvent("pointerdown", e);
2247
+ }
2248
+ let isPrevented = false;
2249
+ const wrappedEvent = new Proxy(newEvent, {
2250
+ get: (target, prop) => {
2251
+ if (prop === "currentTarget") {
2252
+ return capturedCurrentTarget;
2253
+ }
2254
+ if (prop === "target") {
2255
+ return capturedTarget;
2256
+ }
2257
+ if (prop === "preventDefault") {
2258
+ return () => {
2259
+ isPrevented = true;
2260
+ if (typeof target.preventDefault === "function") {
2261
+ target.preventDefault();
2262
+ }
2263
+ };
2264
+ }
2265
+ if (prop === "defaultPrevented") {
2266
+ return isPrevented;
2267
+ }
2268
+ if (prop in target) {
2269
+ return target[prop];
2270
+ }
2271
+ return e[prop];
2272
+ }
2273
+ });
2274
+ return wrappedEvent;
2275
+ }
2276
+ function Dismissible_layer($$renderer, $$props) {
2277
+ $$renderer.component(($$renderer2) => {
2278
+ let {
2279
+ interactOutsideBehavior = "close",
2280
+ onInteractOutside = noop,
2281
+ onFocusOutside = noop,
2282
+ id,
2283
+ children,
2284
+ enabled,
2285
+ isValidEvent: isValidEvent2 = () => false,
2286
+ ref
2287
+ } = $$props;
2288
+ const dismissibleLayerState = DismissibleLayerState.create({
2289
+ id: boxWith(() => id),
2290
+ interactOutsideBehavior: boxWith(() => interactOutsideBehavior),
2291
+ onInteractOutside: boxWith(() => onInteractOutside),
2292
+ enabled: boxWith(() => enabled),
2293
+ onFocusOutside: boxWith(() => onFocusOutside),
2294
+ isValidEvent: boxWith(() => isValidEvent2),
2295
+ ref
2296
+ });
2297
+ children?.($$renderer2, { props: dismissibleLayerState.props });
2298
+ $$renderer2.push(`<!---->`);
2299
+ });
2300
+ }
2301
+ globalThis.bitsEscapeLayers ??= /* @__PURE__ */ new Map();
2302
+ class EscapeLayerState {
2303
+ static create(opts) {
2304
+ return new EscapeLayerState(opts);
2305
+ }
2306
+ opts;
2307
+ domContext;
2308
+ constructor(opts) {
2309
+ this.opts = opts;
2310
+ this.domContext = new DOMContext(this.opts.ref);
2311
+ let unsubEvents = noop;
2312
+ watch(() => opts.enabled.current, (enabled) => {
2313
+ if (enabled) {
2314
+ globalThis.bitsEscapeLayers.set(this, opts.escapeKeydownBehavior);
2315
+ unsubEvents = this.#addEventListener();
2316
+ }
2317
+ return () => {
2318
+ unsubEvents();
2319
+ globalThis.bitsEscapeLayers.delete(this);
2320
+ };
2321
+ });
2322
+ }
2323
+ #addEventListener = () => {
2324
+ return on(this.domContext.getDocument(), "keydown", this.#onkeydown, { passive: false });
2325
+ };
2326
+ #onkeydown = (e) => {
2327
+ if (e.key !== ESCAPE || !isResponsibleEscapeLayer(this)) return;
2328
+ const clonedEvent = new KeyboardEvent(e.type, e);
2329
+ e.preventDefault();
2330
+ const behaviorType = this.opts.escapeKeydownBehavior.current;
2331
+ if (behaviorType !== "close" && behaviorType !== "defer-otherwise-close") return;
2332
+ this.opts.onEscapeKeydown.current(clonedEvent);
2333
+ };
2334
+ }
2335
+ function isResponsibleEscapeLayer(instance) {
2336
+ const layersArr = [...globalThis.bitsEscapeLayers];
2337
+ const topMostLayer = layersArr.findLast(([_, { current: behaviorType }]) => behaviorType === "close" || behaviorType === "ignore");
2338
+ if (topMostLayer) return topMostLayer[0] === instance;
2339
+ const [firstLayerNode] = layersArr[0];
2340
+ return firstLayerNode === instance;
2341
+ }
2342
+ function Escape_layer($$renderer, $$props) {
2343
+ $$renderer.component(($$renderer2) => {
2344
+ let {
2345
+ escapeKeydownBehavior = "close",
2346
+ onEscapeKeydown = noop,
2347
+ children,
2348
+ enabled,
2349
+ ref
2350
+ } = $$props;
2351
+ EscapeLayerState.create({
2352
+ escapeKeydownBehavior: boxWith(() => escapeKeydownBehavior),
2353
+ onEscapeKeydown: boxWith(() => onEscapeKeydown),
2354
+ enabled: boxWith(() => enabled),
2355
+ ref
2356
+ });
2357
+ children?.($$renderer2);
2358
+ $$renderer2.push(`<!---->`);
2359
+ });
2360
+ }
2361
+ class FocusScopeManager {
2362
+ static instance;
2363
+ #scopeStack = simpleBox([]);
2364
+ #focusHistory = /* @__PURE__ */ new WeakMap();
2365
+ #preFocusHistory = /* @__PURE__ */ new WeakMap();
2366
+ static getInstance() {
2367
+ if (!this.instance) {
2368
+ this.instance = new FocusScopeManager();
2369
+ }
2370
+ return this.instance;
2371
+ }
2372
+ register(scope) {
2373
+ const current = this.getActive();
2374
+ if (current && current !== scope) {
2375
+ current.pause();
2376
+ }
2377
+ const activeElement = document.activeElement;
2378
+ if (activeElement && activeElement !== document.body) {
2379
+ this.#preFocusHistory.set(scope, activeElement);
2380
+ }
2381
+ this.#scopeStack.current = this.#scopeStack.current.filter((s) => s !== scope);
2382
+ this.#scopeStack.current.unshift(scope);
2383
+ }
2384
+ unregister(scope) {
2385
+ this.#scopeStack.current = this.#scopeStack.current.filter((s) => s !== scope);
2386
+ const next2 = this.getActive();
2387
+ if (next2) {
2388
+ next2.resume();
2389
+ }
2390
+ }
2391
+ getActive() {
2392
+ return this.#scopeStack.current[0];
2393
+ }
2394
+ setFocusMemory(scope, element) {
2395
+ this.#focusHistory.set(scope, element);
2396
+ }
2397
+ getFocusMemory(scope) {
2398
+ return this.#focusHistory.get(scope);
2399
+ }
2400
+ isActiveScope(scope) {
2401
+ return this.getActive() === scope;
2402
+ }
2403
+ setPreFocusMemory(scope, element) {
2404
+ this.#preFocusHistory.set(scope, element);
2405
+ }
2406
+ getPreFocusMemory(scope) {
2407
+ return this.#preFocusHistory.get(scope);
2408
+ }
2409
+ clearPreFocusMemory(scope) {
2410
+ this.#preFocusHistory.delete(scope);
2411
+ }
2412
+ }
2413
+ class FocusScope {
2414
+ #paused = false;
2415
+ #container = null;
2416
+ #manager = FocusScopeManager.getInstance();
2417
+ #cleanupFns = [];
2418
+ #opts;
2419
+ constructor(opts) {
2420
+ this.#opts = opts;
2421
+ }
2422
+ get paused() {
2423
+ return this.#paused;
2424
+ }
2425
+ pause() {
2426
+ this.#paused = true;
2427
+ }
2428
+ resume() {
2429
+ this.#paused = false;
2430
+ }
2431
+ #cleanup() {
2432
+ for (const fn of this.#cleanupFns) {
2433
+ fn();
2434
+ }
2435
+ this.#cleanupFns = [];
2436
+ }
2437
+ mount(container) {
2438
+ if (this.#container) {
2439
+ this.unmount();
2440
+ }
2441
+ this.#container = container;
2442
+ this.#manager.register(this);
2443
+ this.#setupEventListeners();
2444
+ this.#handleOpenAutoFocus();
2445
+ }
2446
+ unmount() {
2447
+ if (!this.#container) return;
2448
+ this.#cleanup();
2449
+ this.#handleCloseAutoFocus();
2450
+ this.#manager.unregister(this);
2451
+ this.#manager.clearPreFocusMemory(this);
2452
+ this.#container = null;
2453
+ }
2454
+ #handleOpenAutoFocus() {
2455
+ if (!this.#container) return;
2456
+ const event = new CustomEvent("focusScope.onOpenAutoFocus", { bubbles: false, cancelable: true });
2457
+ this.#opts.onOpenAutoFocus.current(event);
2458
+ if (!event.defaultPrevented) {
2459
+ requestAnimationFrame(() => {
2460
+ if (!this.#container) return;
2461
+ const firstTabbable = this.#getFirstTabbable();
2462
+ if (firstTabbable) {
2463
+ firstTabbable.focus();
2464
+ this.#manager.setFocusMemory(this, firstTabbable);
2465
+ } else {
2466
+ this.#container.focus();
2467
+ }
2468
+ });
2469
+ }
2470
+ }
2471
+ #handleCloseAutoFocus() {
2472
+ const event = new CustomEvent("focusScope.onCloseAutoFocus", { bubbles: false, cancelable: true });
2473
+ this.#opts.onCloseAutoFocus.current?.(event);
2474
+ if (!event.defaultPrevented) {
2475
+ const preFocusedElement = this.#manager.getPreFocusMemory(this);
2476
+ if (preFocusedElement && document.contains(preFocusedElement)) {
2477
+ try {
2478
+ preFocusedElement.focus();
2479
+ } catch {
2480
+ document.body.focus();
2481
+ }
2482
+ }
2483
+ }
2484
+ }
2485
+ #setupEventListeners() {
2486
+ if (!this.#container || !this.#opts.trap.current) return;
2487
+ const container = this.#container;
2488
+ const doc = container.ownerDocument;
2489
+ const handleFocus = (e) => {
2490
+ if (this.#paused || !this.#manager.isActiveScope(this)) return;
2491
+ const target = e.target;
2492
+ if (!target) return;
2493
+ const isInside = container.contains(target);
2494
+ if (isInside) {
2495
+ this.#manager.setFocusMemory(this, target);
2496
+ } else {
2497
+ const lastFocused = this.#manager.getFocusMemory(this);
2498
+ if (lastFocused && container.contains(lastFocused) && isFocusable(lastFocused)) {
2499
+ e.preventDefault();
2500
+ lastFocused.focus();
2501
+ } else {
2502
+ const firstTabbable = this.#getFirstTabbable();
2503
+ const firstFocusable = this.#getAllFocusables()[0];
2504
+ (firstTabbable || firstFocusable || container).focus();
2505
+ }
2506
+ }
2507
+ };
2508
+ const handleKeydown = (e) => {
2509
+ if (!this.#opts.loop || this.#paused || e.key !== "Tab") return;
2510
+ if (!this.#manager.isActiveScope(this)) return;
2511
+ const tabbables = this.#getTabbables();
2512
+ if (tabbables.length === 0) return;
2513
+ const first = tabbables[0];
2514
+ const last = tabbables[tabbables.length - 1];
2515
+ if (!e.shiftKey && doc.activeElement === last) {
2516
+ e.preventDefault();
2517
+ first.focus();
2518
+ } else if (e.shiftKey && doc.activeElement === first) {
2519
+ e.preventDefault();
2520
+ last.focus();
2521
+ }
2522
+ };
2523
+ this.#cleanupFns.push(on(doc, "focusin", handleFocus, { capture: true }), on(container, "keydown", handleKeydown));
2524
+ const observer = new MutationObserver(() => {
2525
+ const lastFocused = this.#manager.getFocusMemory(this);
2526
+ if (lastFocused && !container.contains(lastFocused)) {
2527
+ const firstTabbable = this.#getFirstTabbable();
2528
+ const firstFocusable = this.#getAllFocusables()[0];
2529
+ const elementToFocus = firstTabbable || firstFocusable;
2530
+ if (elementToFocus) {
2531
+ elementToFocus.focus();
2532
+ this.#manager.setFocusMemory(this, elementToFocus);
2533
+ } else {
2534
+ container.focus();
2535
+ }
2536
+ }
2537
+ });
2538
+ observer.observe(container, { childList: true, subtree: true });
2539
+ this.#cleanupFns.push(() => observer.disconnect());
2540
+ }
2541
+ #getTabbables() {
2542
+ if (!this.#container) return [];
2543
+ return tabbable(this.#container, { includeContainer: false, getShadowRoot: true });
2544
+ }
2545
+ #getFirstTabbable() {
2546
+ const tabbables = this.#getTabbables();
2547
+ return tabbables[0] || null;
2548
+ }
2549
+ #getAllFocusables() {
2550
+ if (!this.#container) return [];
2551
+ return focusable(this.#container, { includeContainer: false, getShadowRoot: true });
2552
+ }
2553
+ static use(opts) {
2554
+ let scope = null;
2555
+ watch([() => opts.ref.current, () => opts.enabled.current], ([ref, enabled]) => {
2556
+ if (ref && enabled) {
2557
+ if (!scope) {
2558
+ scope = new FocusScope(opts);
2559
+ }
2560
+ scope.mount(ref);
2561
+ } else if (scope) {
2562
+ scope.unmount();
2563
+ scope = null;
2564
+ }
2565
+ });
2566
+ return {
2567
+ get props() {
2568
+ return { tabindex: -1 };
2569
+ }
2570
+ };
2571
+ }
2572
+ }
2573
+ function Focus_scope($$renderer, $$props) {
2574
+ $$renderer.component(($$renderer2) => {
2575
+ let {
2576
+ enabled = false,
2577
+ trapFocus = false,
2578
+ loop = false,
2579
+ onCloseAutoFocus = noop,
2580
+ onOpenAutoFocus = noop,
2581
+ focusScope,
2582
+ ref
2583
+ } = $$props;
2584
+ const focusScopeState = FocusScope.use({
2585
+ enabled: boxWith(() => enabled),
2586
+ trap: boxWith(() => trapFocus),
2587
+ loop,
2588
+ onCloseAutoFocus: boxWith(() => onCloseAutoFocus),
2589
+ onOpenAutoFocus: boxWith(() => onOpenAutoFocus),
2590
+ ref
2591
+ });
2592
+ focusScope?.($$renderer2, { props: focusScopeState.props });
2593
+ $$renderer2.push(`<!---->`);
2594
+ });
2595
+ }
2596
+ const noopPointer = () => {
2597
+ };
2598
+ globalThis.bitsTextSelectionLayers ??= /* @__PURE__ */ new Map();
2599
+ class TextSelectionLayerState {
2600
+ static create(opts) {
2601
+ return new TextSelectionLayerState(opts);
2602
+ }
2603
+ opts;
2604
+ domContext;
2605
+ #unsubSelectionLock = noop;
2606
+ #enabledSnapshot = false;
2607
+ #onPointerDownSnapshot = noopPointer;
2608
+ #onPointerUpSnapshot = noopPointer;
2609
+ constructor(opts) {
2610
+ this.opts = opts;
2611
+ this.domContext = new DOMContext(opts.ref);
2612
+ let unsubEvents = noop;
2613
+ watch(
2614
+ () => [
2615
+ this.opts.enabled.current,
2616
+ this.opts.onPointerDown.current,
2617
+ this.opts.onPointerUp.current
2618
+ ],
2619
+ ([enabled, onPointerDown, onPointerUp]) => {
2620
+ this.#enabledSnapshot = enabled;
2621
+ this.#onPointerDownSnapshot = onPointerDown;
2622
+ this.#onPointerUpSnapshot = onPointerUp;
2623
+ if (enabled) {
2624
+ globalThis.bitsTextSelectionLayers.set(this, this.opts.enabled);
2625
+ unsubEvents();
2626
+ unsubEvents = this.#addEventListeners();
2627
+ }
2628
+ return () => {
2629
+ this.#enabledSnapshot = false;
2630
+ unsubEvents();
2631
+ this.#resetSelectionLock();
2632
+ globalThis.bitsTextSelectionLayers.delete(this);
2633
+ };
2634
+ }
2635
+ );
2636
+ }
2637
+ #addEventListeners() {
2638
+ return executeCallbacks(on(this.domContext.getDocument(), "pointerdown", this.#pointerdown), on(this.domContext.getDocument(), "pointerup", composeHandlers(this.#resetSelectionLock, this.#pointerupUserHandler)));
2639
+ }
2640
+ #pointerupUserHandler = (e) => {
2641
+ this.#onPointerUpSnapshot(e);
2642
+ };
2643
+ #pointerdown = (e) => {
2644
+ const node = this.opts.ref.current;
2645
+ const target = e.target;
2646
+ if (!isHTMLElement$1(node) || !isHTMLElement$1(target) || !this.#enabledSnapshot) return;
2647
+ if (!isHighestLayer(this) || !contains(node, target)) return;
2648
+ this.#onPointerDownSnapshot(e);
2649
+ if (e.defaultPrevented) return;
2650
+ this.#unsubSelectionLock = preventTextSelectionOverflow(node, this.domContext.getDocument().body);
2651
+ };
2652
+ #resetSelectionLock = () => {
2653
+ this.#unsubSelectionLock();
2654
+ this.#unsubSelectionLock = noop;
2655
+ };
2656
+ }
2657
+ const getUserSelect = (node) => node.style.userSelect || node.style.webkitUserSelect;
2658
+ function preventTextSelectionOverflow(node, body) {
2659
+ const originalBodyUserSelect = getUserSelect(body);
2660
+ const originalNodeUserSelect = getUserSelect(node);
2661
+ setUserSelect(body, "none");
2662
+ setUserSelect(node, "text");
2663
+ return () => {
2664
+ setUserSelect(body, originalBodyUserSelect);
2665
+ setUserSelect(node, originalNodeUserSelect);
2666
+ };
2667
+ }
2668
+ function setUserSelect(node, value) {
2669
+ node.style.userSelect = value;
2670
+ node.style.webkitUserSelect = value;
2671
+ }
2672
+ function isHighestLayer(instance) {
2673
+ const layersArr = [...globalThis.bitsTextSelectionLayers];
2674
+ if (!layersArr.length) return false;
2675
+ const highestLayer = layersArr.at(-1);
2676
+ if (!highestLayer) return false;
2677
+ return highestLayer[0] === instance;
2678
+ }
2679
+ function Text_selection_layer($$renderer, $$props) {
2680
+ $$renderer.component(($$renderer2) => {
2681
+ let {
2682
+ preventOverflowTextSelection = true,
2683
+ onPointerDown = noop,
2684
+ onPointerUp = noop,
2685
+ id,
2686
+ children,
2687
+ enabled,
2688
+ ref
2689
+ } = $$props;
2690
+ TextSelectionLayerState.create({
2691
+ id: boxWith(() => id),
2692
+ onPointerDown: boxWith(() => onPointerDown),
2693
+ onPointerUp: boxWith(() => onPointerUp),
2694
+ enabled: boxWith(() => enabled && preventOverflowTextSelection),
2695
+ ref
2696
+ });
2697
+ children?.($$renderer2);
2698
+ $$renderer2.push(`<!---->`);
2699
+ });
2700
+ }
2701
+ globalThis.bitsIdCounter ??= { current: 0 };
2702
+ function useId(prefix = "bits") {
2703
+ globalThis.bitsIdCounter.current++;
2704
+ return `${prefix}-${globalThis.bitsIdCounter.current}`;
2705
+ }
2706
+ class SharedState {
2707
+ #factory;
2708
+ #subscribers = 0;
2709
+ #state;
2710
+ #scope;
2711
+ constructor(factory) {
2712
+ this.#factory = factory;
2713
+ }
2714
+ #dispose() {
2715
+ this.#subscribers -= 1;
2716
+ if (this.#scope && this.#subscribers <= 0) {
2717
+ this.#scope();
2718
+ this.#state = void 0;
2719
+ this.#scope = void 0;
2720
+ }
2721
+ }
2722
+ get(...args) {
2723
+ this.#subscribers += 1;
2724
+ if (this.#state === void 0) {
2725
+ this.#scope = () => {
2726
+ };
2727
+ }
2728
+ return this.#state;
2729
+ }
2730
+ }
2731
+ const lockMap = new SvelteMap();
2732
+ let initialBodyStyle = null;
2733
+ let cleanupTimeoutId = null;
2734
+ let isInCleanupTransition = false;
2735
+ const anyLocked = boxWith(() => {
2736
+ for (const value of lockMap.values()) {
2737
+ if (value) return true;
2738
+ }
2739
+ return false;
2740
+ });
2741
+ let cleanupScheduledAt = null;
2742
+ const bodyLockStackCount = new SharedState(() => {
2743
+ function resetBodyStyle() {
2744
+ return;
2745
+ }
2746
+ function cancelPendingCleanup() {
2747
+ if (cleanupTimeoutId === null) return;
2748
+ window.clearTimeout(cleanupTimeoutId);
2749
+ cleanupTimeoutId = null;
2750
+ }
2751
+ function scheduleCleanupIfNoNewLocks(delay, callback) {
2752
+ cancelPendingCleanup();
2753
+ isInCleanupTransition = true;
2754
+ cleanupScheduledAt = Date.now();
2755
+ const currentCleanupId = cleanupScheduledAt;
2756
+ const cleanupFn = () => {
2757
+ cleanupTimeoutId = null;
2758
+ if (cleanupScheduledAt !== currentCleanupId) return;
2759
+ if (!isAnyLocked(lockMap)) {
2760
+ isInCleanupTransition = false;
2761
+ callback();
2762
+ } else {
2763
+ isInCleanupTransition = false;
2764
+ }
2765
+ };
2766
+ const actualDelay = delay === null ? 24 : delay;
2767
+ cleanupTimeoutId = window.setTimeout(cleanupFn, actualDelay);
2768
+ }
2769
+ function ensureInitialStyleCaptured() {
2770
+ if (initialBodyStyle === null && lockMap.size === 0 && !isInCleanupTransition) {
2771
+ initialBodyStyle = document.body.getAttribute("style");
2772
+ }
2773
+ }
2774
+ watch(() => anyLocked.current, () => {
2775
+ if (!anyLocked.current) return;
2776
+ ensureInitialStyleCaptured();
2777
+ isInCleanupTransition = false;
2778
+ const htmlStyle = getComputedStyle(document.documentElement);
2779
+ const bodyStyle = getComputedStyle(document.body);
2780
+ const hasStableGutter = htmlStyle.scrollbarGutter?.includes("stable") || bodyStyle.scrollbarGutter?.includes("stable");
2781
+ const verticalScrollbarWidth = window.innerWidth - document.documentElement.clientWidth;
2782
+ const paddingRight = Number.parseInt(bodyStyle.paddingRight ?? "0", 10);
2783
+ const config = {
2784
+ padding: paddingRight + verticalScrollbarWidth,
2785
+ margin: Number.parseInt(bodyStyle.marginRight ?? "0", 10)
2786
+ };
2787
+ if (verticalScrollbarWidth > 0 && !hasStableGutter) {
2788
+ document.body.style.paddingRight = `${config.padding}px`;
2789
+ document.body.style.marginRight = `${config.margin}px`;
2790
+ document.body.style.setProperty("--scrollbar-width", `${verticalScrollbarWidth}px`);
2791
+ }
2792
+ document.body.style.overflow = "hidden";
2793
+ if (isIOS) {
2794
+ on(
2795
+ document,
2796
+ "touchmove",
2797
+ (e) => {
2798
+ if (e.target !== document.documentElement) return;
2799
+ if (e.touches.length > 1) return;
2800
+ e.preventDefault();
2801
+ },
2802
+ { passive: false }
2803
+ );
2804
+ }
2805
+ afterTick(() => {
2806
+ document.body.style.pointerEvents = "none";
2807
+ document.body.style.overflow = "hidden";
2808
+ });
2809
+ });
2810
+ return {
2811
+ get lockMap() {
2812
+ return lockMap;
2813
+ },
2814
+ resetBodyStyle,
2815
+ scheduleCleanupIfNoNewLocks,
2816
+ cancelPendingCleanup,
2817
+ ensureInitialStyleCaptured
2818
+ };
2819
+ });
2820
+ class BodyScrollLock {
2821
+ #id = useId();
2822
+ #initialState;
2823
+ #restoreScrollDelay = () => null;
2824
+ #countState;
2825
+ locked;
2826
+ constructor(initialState, restoreScrollDelay = () => null) {
2827
+ this.#initialState = initialState;
2828
+ this.#restoreScrollDelay = restoreScrollDelay;
2829
+ this.#countState = bodyLockStackCount.get();
2830
+ if (!this.#countState) return;
2831
+ this.#countState.cancelPendingCleanup();
2832
+ this.#countState.ensureInitialStyleCaptured();
2833
+ this.#countState.lockMap.set(this.#id, this.#initialState ?? false);
2834
+ this.locked = boxWith(() => this.#countState.lockMap.get(this.#id) ?? false, (v) => this.#countState.lockMap.set(this.#id, v));
2835
+ }
2836
+ }
2837
+ function isAnyLocked(map) {
2838
+ for (const [_, value] of map) {
2839
+ if (value) return true;
2840
+ }
2841
+ return false;
2842
+ }
2843
+ function Scroll_lock($$renderer, $$props) {
2844
+ $$renderer.component(($$renderer2) => {
2845
+ let { preventScroll = true, restoreScrollDelay = null } = $$props;
2846
+ if (preventScroll) {
2847
+ new BodyScrollLock(preventScroll, () => restoreScrollDelay);
2848
+ }
2849
+ });
2850
+ }
2851
+
2852
+ export { AnimationsComplete as A, DOMContext as D, Escape_layer as E, Focus_scope as F, MenuContentState as M, Portal as P, SUB_CLOSE_KEYS as S, Text_selection_layer as T, DOMTypeahead as a, Dismissible_layer as b, DropdownMenuTriggerState as c, MenuItemState as d, MenuMenuState as e, MenuOpenEvent as f, MenuRootState as g, MenuSeparatorState as h, MenuSubTriggerState as i, MenuSubmenuState as j, PresenceManager as k, Scroll_lock as l, afterSleep as m, afterTick as n, backward as o, boxAutoReset as p, forward as q, getNextMatch as r, getWindow as s, isValidIndex as t, next as u, prev as v, useId as w };
2853
+ //# sourceMappingURL=scroll-lock-NAQO_S1Y.js.map