@selvajs/selva 4.20.0-beta.7 → 4.20.0-beta.8

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 (529) hide show
  1. package/build/client/_app/immutable/assets/0.DOtWaoEl.css +2 -0
  2. package/build/client/_app/immutable/assets/0.DOtWaoEl.css.br +0 -0
  3. package/build/client/_app/immutable/assets/0.DOtWaoEl.css.gz +0 -0
  4. package/build/client/_app/immutable/assets/{21.HXpl75F5.css → 21.R_QLUeP3.css} +1 -1
  5. package/build/client/_app/immutable/assets/21.R_QLUeP3.css.br +0 -0
  6. package/build/client/_app/immutable/assets/21.R_QLUeP3.css.gz +0 -0
  7. package/build/client/_app/immutable/assets/DataTable.BjgXtTHK.css +1 -0
  8. package/build/client/_app/immutable/assets/DataTable.BjgXtTHK.css.br +1 -0
  9. package/build/client/_app/immutable/assets/DataTable.BjgXtTHK.css.gz +0 -0
  10. package/build/client/_app/immutable/chunks/B_Upvo0P.js +2 -0
  11. package/build/client/_app/immutable/chunks/B_Upvo0P.js.br +0 -0
  12. package/build/client/_app/immutable/chunks/B_Upvo0P.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/BhDDKxGC.js +1 -0
  14. package/build/client/_app/immutable/chunks/BhDDKxGC.js.br +1 -0
  15. package/build/client/_app/immutable/chunks/BhDDKxGC.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/BqhvQ3-Q.js +1 -0
  17. package/build/client/_app/immutable/chunks/BqhvQ3-Q.js.br +0 -0
  18. package/build/client/_app/immutable/chunks/BqhvQ3-Q.js.gz +0 -0
  19. package/build/client/_app/immutable/chunks/CB3nEQGh.js +1 -0
  20. package/build/client/_app/immutable/chunks/CB3nEQGh.js.br +0 -0
  21. package/build/client/_app/immutable/chunks/CB3nEQGh.js.gz +0 -0
  22. package/build/client/_app/immutable/chunks/CHfE2I8z.js +1 -0
  23. package/build/client/_app/immutable/chunks/CHfE2I8z.js.br +0 -0
  24. package/build/client/_app/immutable/chunks/CHfE2I8z.js.gz +0 -0
  25. package/build/client/_app/immutable/chunks/{CFXJfIk2.js → Cs_2W-Xp.js} +1 -1
  26. package/build/client/_app/immutable/chunks/Cs_2W-Xp.js.br +0 -0
  27. package/build/client/_app/immutable/chunks/Cs_2W-Xp.js.gz +0 -0
  28. package/build/client/_app/immutable/chunks/CvgADDtH.js +1 -0
  29. package/build/client/_app/immutable/chunks/CvgADDtH.js.br +0 -0
  30. package/build/client/_app/immutable/chunks/CvgADDtH.js.gz +0 -0
  31. package/build/client/_app/immutable/chunks/{B7mORn_f.js → D70MRHiW.js} +1 -1
  32. package/build/client/_app/immutable/chunks/D70MRHiW.js.br +0 -0
  33. package/build/client/_app/immutable/chunks/D70MRHiW.js.gz +0 -0
  34. package/build/client/_app/immutable/chunks/{Tduejkoz.js → D8WbMyuC.js} +1 -1
  35. package/build/client/_app/immutable/chunks/D8WbMyuC.js.br +0 -0
  36. package/build/client/_app/immutable/chunks/D8WbMyuC.js.gz +0 -0
  37. package/build/client/_app/immutable/chunks/{Cz5OJSV3.js → DCBNs10A.js} +1 -1
  38. package/build/client/_app/immutable/chunks/DCBNs10A.js.br +0 -0
  39. package/build/client/_app/immutable/chunks/DCBNs10A.js.gz +0 -0
  40. package/build/client/_app/immutable/chunks/{rN5qcVxv.js → DKwy6peE.js} +1 -1
  41. package/build/client/_app/immutable/chunks/DKwy6peE.js.br +0 -0
  42. package/build/client/_app/immutable/chunks/DKwy6peE.js.gz +0 -0
  43. package/build/client/_app/immutable/chunks/DOQYly9G.js +1 -0
  44. package/build/client/_app/immutable/chunks/DOQYly9G.js.br +0 -0
  45. package/build/client/_app/immutable/chunks/DOQYly9G.js.gz +0 -0
  46. package/build/client/_app/immutable/chunks/{BjKFlhmK.js → DmH6xwQa.js} +1 -1
  47. package/build/client/_app/immutable/chunks/DmH6xwQa.js.br +0 -0
  48. package/build/client/_app/immutable/chunks/{BjKFlhmK.js.gz → DmH6xwQa.js.gz} +0 -0
  49. package/build/client/_app/immutable/chunks/{DfuZJmWN.js → EZBWh3tv.js} +1 -1
  50. package/build/client/_app/immutable/chunks/EZBWh3tv.js.br +3 -0
  51. package/build/client/_app/immutable/chunks/EZBWh3tv.js.gz +0 -0
  52. package/build/client/_app/immutable/chunks/ItJwOOX0.js +1 -0
  53. package/build/client/_app/immutable/chunks/ItJwOOX0.js.br +2 -0
  54. package/build/client/_app/immutable/chunks/ItJwOOX0.js.gz +0 -0
  55. package/build/client/_app/immutable/chunks/rO_2qLvh.js +1 -0
  56. package/build/client/_app/immutable/chunks/rO_2qLvh.js.br +0 -0
  57. package/build/client/_app/immutable/chunks/rO_2qLvh.js.gz +0 -0
  58. package/build/client/_app/immutable/entry/app.DcJMlNFk.js +2 -0
  59. package/build/client/_app/immutable/entry/app.DcJMlNFk.js.br +0 -0
  60. package/build/client/_app/immutable/entry/app.DcJMlNFk.js.gz +0 -0
  61. package/build/client/_app/immutable/entry/start.D3qGPnOB.js +1 -0
  62. package/build/client/_app/immutable/entry/start.D3qGPnOB.js.br +1 -0
  63. package/build/client/_app/immutable/entry/start.D3qGPnOB.js.gz +0 -0
  64. package/build/client/_app/immutable/nodes/{1.ajAR_Ig4.js → 1.BfSC4Dgj.js} +1 -1
  65. package/build/client/_app/immutable/nodes/1.BfSC4Dgj.js.br +0 -0
  66. package/build/client/_app/immutable/nodes/1.BfSC4Dgj.js.gz +0 -0
  67. package/build/client/_app/immutable/nodes/{10.D-zoD55U.js → 10.BnEAfjk6.js} +1 -1
  68. package/build/client/_app/immutable/nodes/10.BnEAfjk6.js.br +0 -0
  69. package/build/client/_app/immutable/nodes/10.BnEAfjk6.js.gz +0 -0
  70. package/build/client/_app/immutable/nodes/{11.p0fQVFO3.js → 11.g9yZ9zzK.js} +1 -1
  71. package/build/client/_app/immutable/nodes/11.g9yZ9zzK.js.br +0 -0
  72. package/build/client/_app/immutable/nodes/11.g9yZ9zzK.js.gz +0 -0
  73. package/build/client/_app/immutable/nodes/{12.CwSkUT3d.js → 12.B2SBrv1t.js} +1 -1
  74. package/build/client/_app/immutable/nodes/12.B2SBrv1t.js.br +0 -0
  75. package/build/client/_app/immutable/nodes/12.B2SBrv1t.js.gz +0 -0
  76. package/build/client/_app/immutable/nodes/{13.WSbyJ472.js → 13.BuGI3Vg3.js} +2 -2
  77. package/build/client/_app/immutable/nodes/13.BuGI3Vg3.js.br +0 -0
  78. package/build/client/_app/immutable/nodes/13.BuGI3Vg3.js.gz +0 -0
  79. package/build/client/_app/immutable/nodes/{14.DV-1f7wx.js → 14.DPt7gpGT.js} +2 -2
  80. package/build/client/_app/immutable/nodes/14.DPt7gpGT.js.br +0 -0
  81. package/build/client/_app/immutable/nodes/14.DPt7gpGT.js.gz +0 -0
  82. package/build/client/_app/immutable/nodes/{15.CCJWzwc2.js → 15.BjUwwetU.js} +1 -1
  83. package/build/client/_app/immutable/nodes/15.BjUwwetU.js.br +0 -0
  84. package/build/client/_app/immutable/nodes/15.BjUwwetU.js.gz +0 -0
  85. package/build/client/_app/immutable/nodes/16.GZO0KmB7.js +5 -0
  86. package/build/client/_app/immutable/nodes/16.GZO0KmB7.js.br +0 -0
  87. package/build/client/_app/immutable/nodes/16.GZO0KmB7.js.gz +0 -0
  88. package/build/client/_app/immutable/nodes/17.ClPP4BHF.js +2 -0
  89. package/build/client/_app/immutable/nodes/17.ClPP4BHF.js.br +0 -0
  90. package/build/client/_app/immutable/nodes/17.ClPP4BHF.js.gz +0 -0
  91. package/build/client/_app/immutable/nodes/{19.C99-Bd1i.js → 19.DxYao2vT.js} +1 -1
  92. package/build/client/_app/immutable/nodes/19.DxYao2vT.js.br +0 -0
  93. package/build/client/_app/immutable/nodes/19.DxYao2vT.js.gz +0 -0
  94. package/build/client/_app/immutable/nodes/{2.xqnmwni_.js → 2.BjmdhHfC.js} +1 -1
  95. package/build/client/_app/immutable/nodes/2.BjmdhHfC.js.br +0 -0
  96. package/build/client/_app/immutable/nodes/2.BjmdhHfC.js.gz +0 -0
  97. package/build/client/_app/immutable/nodes/20.DZT2yZAf.js +2 -0
  98. package/build/client/_app/immutable/nodes/20.DZT2yZAf.js.br +0 -0
  99. package/build/client/_app/immutable/nodes/20.DZT2yZAf.js.gz +0 -0
  100. package/build/client/_app/immutable/nodes/{21.Cwno45cb.js → 21.BCyGFvKF.js} +21 -21
  101. package/build/client/_app/immutable/nodes/21.BCyGFvKF.js.br +0 -0
  102. package/build/client/_app/immutable/nodes/21.BCyGFvKF.js.gz +0 -0
  103. package/build/client/_app/immutable/nodes/22.iHg-A5cM.js +6 -0
  104. package/build/client/_app/immutable/nodes/22.iHg-A5cM.js.br +0 -0
  105. package/build/client/_app/immutable/nodes/22.iHg-A5cM.js.gz +0 -0
  106. package/build/client/_app/immutable/nodes/{24.D3XyrdMq.js → 24.D_maDAKR.js} +1 -1
  107. package/build/client/_app/immutable/nodes/24.D_maDAKR.js.br +0 -0
  108. package/build/client/_app/immutable/nodes/24.D_maDAKR.js.gz +0 -0
  109. package/build/client/_app/immutable/nodes/25.CuMSkOWE.js +16 -0
  110. package/build/client/_app/immutable/nodes/25.CuMSkOWE.js.br +0 -0
  111. package/build/client/_app/immutable/nodes/25.CuMSkOWE.js.gz +0 -0
  112. package/build/client/_app/immutable/nodes/26.BU6Zpb0Z.js +6 -0
  113. package/build/client/_app/immutable/nodes/26.BU6Zpb0Z.js.br +0 -0
  114. package/build/client/_app/immutable/nodes/26.BU6Zpb0Z.js.gz +0 -0
  115. package/build/client/_app/immutable/nodes/{27.2LRvK7sY.js → 27.DDf1wSgu.js} +1 -1
  116. package/build/client/_app/immutable/nodes/27.DDf1wSgu.js.br +0 -0
  117. package/build/client/_app/immutable/nodes/27.DDf1wSgu.js.gz +0 -0
  118. package/build/client/_app/immutable/nodes/{28.TZMdlERc.js → 28.DpAfyobf.js} +1 -1
  119. package/build/client/_app/immutable/nodes/28.DpAfyobf.js.br +0 -0
  120. package/build/client/_app/immutable/nodes/28.DpAfyobf.js.gz +0 -0
  121. package/build/client/_app/immutable/nodes/{29.BG8fWa0N.js → 29.DypunLT4.js} +1 -1
  122. package/build/client/_app/immutable/nodes/29.DypunLT4.js.br +0 -0
  123. package/build/client/_app/immutable/nodes/29.DypunLT4.js.gz +0 -0
  124. package/build/client/_app/immutable/nodes/{3.D037EXCR.js → 3.BQZ65v-w.js} +1 -1
  125. package/build/client/_app/immutable/nodes/3.BQZ65v-w.js.br +0 -0
  126. package/build/client/_app/immutable/nodes/3.BQZ65v-w.js.gz +0 -0
  127. package/build/client/_app/immutable/nodes/{30.CEVB_0i1.js → 30.s5pR6cGl.js} +1 -1
  128. package/build/client/_app/immutable/nodes/30.s5pR6cGl.js.br +0 -0
  129. package/build/client/_app/immutable/nodes/30.s5pR6cGl.js.gz +0 -0
  130. package/build/client/_app/immutable/nodes/31.BGHFjW8x.js +2 -0
  131. package/build/client/_app/immutable/nodes/31.BGHFjW8x.js.br +0 -0
  132. package/build/client/_app/immutable/nodes/31.BGHFjW8x.js.gz +0 -0
  133. package/build/client/_app/immutable/nodes/32.pvvHJRj-.js +2 -0
  134. package/build/client/_app/immutable/nodes/32.pvvHJRj-.js.br +0 -0
  135. package/build/client/_app/immutable/nodes/32.pvvHJRj-.js.gz +0 -0
  136. package/build/client/_app/immutable/nodes/{33.tbtGaEE2.js → 33.CokklMWJ.js} +1 -1
  137. package/build/client/_app/immutable/nodes/33.CokklMWJ.js.br +0 -0
  138. package/build/client/_app/immutable/nodes/33.CokklMWJ.js.gz +0 -0
  139. package/build/client/_app/immutable/nodes/34.DMLNOXLQ.js +1 -0
  140. package/build/client/_app/immutable/nodes/34.DMLNOXLQ.js.br +0 -0
  141. package/build/client/_app/immutable/nodes/34.DMLNOXLQ.js.gz +0 -0
  142. package/build/client/_app/immutable/nodes/{35.DSo_MvQf.js → 35.p4k2_Iir.js} +2 -2
  143. package/build/client/_app/immutable/nodes/35.p4k2_Iir.js.br +0 -0
  144. package/build/client/_app/immutable/nodes/35.p4k2_Iir.js.gz +0 -0
  145. package/build/client/_app/immutable/nodes/{5.DhbxDhFz.js → 5.lpTK9wc1.js} +1 -1
  146. package/build/client/_app/immutable/nodes/5.lpTK9wc1.js.br +0 -0
  147. package/build/client/_app/immutable/nodes/5.lpTK9wc1.js.gz +0 -0
  148. package/build/client/_app/immutable/nodes/{6.C9EISD0j.js → 6.K-OHt2kI.js} +1 -1
  149. package/build/client/_app/immutable/nodes/6.K-OHt2kI.js.br +0 -0
  150. package/build/client/_app/immutable/nodes/6.K-OHt2kI.js.gz +0 -0
  151. package/build/client/_app/immutable/nodes/7.CUxsZauB.js +1 -0
  152. package/build/client/_app/immutable/nodes/7.CUxsZauB.js.br +0 -0
  153. package/build/client/_app/immutable/nodes/7.CUxsZauB.js.gz +0 -0
  154. package/build/client/_app/immutable/nodes/{8.DrRswcMr.js → 8.CJ_ZLG6-.js} +1 -1
  155. package/build/client/_app/immutable/nodes/8.CJ_ZLG6-.js.br +0 -0
  156. package/build/client/_app/immutable/nodes/8.CJ_ZLG6-.js.gz +0 -0
  157. package/build/client/_app/immutable/nodes/{9.DM0VKWkK.js → 9.BW4-K4UG.js} +1 -1
  158. package/build/client/_app/immutable/nodes/9.BW4-K4UG.js.br +0 -0
  159. package/build/client/_app/immutable/nodes/9.BW4-K4UG.js.gz +0 -0
  160. package/build/client/_app/version.json +1 -1
  161. package/build/client/_app/version.json.br +0 -0
  162. package/build/client/_app/version.json.gz +0 -0
  163. package/build/handler.js +4 -4
  164. package/build/index.js +4 -4
  165. package/build/server/chunks/chunks/{AppHeader.js-Clv5uxmx.js → AppHeader.js-Cve-7hRD.js} +8 -7
  166. package/build/server/chunks/chunks/AppHeader.js-Cve-7hRD.js.map +1 -0
  167. package/build/server/chunks/chunks/{ConfirmDialog.js-B9ZarTIe.js → ConfirmDialog.js-B32hC1dG.js} +2 -2
  168. package/build/server/chunks/chunks/{ConfirmDialog.js-B9ZarTIe.js.map → ConfirmDialog.js-B32hC1dG.js.map} +1 -1
  169. package/build/server/chunks/chunks/DataTable.js-Xw4esMeW.js +33 -0
  170. package/build/server/chunks/chunks/DataTable.js-Xw4esMeW.js.map +1 -0
  171. package/build/server/chunks/chunks/{DefinitionCard.js-cWBb-1ZJ.js → DefinitionCard.js-CwqFKDlz.js} +3 -3
  172. package/build/server/chunks/chunks/DefinitionCard.js-CwqFKDlz.js.map +1 -0
  173. package/build/server/chunks/chunks/{ErrorScreen.js-Cr8VUVeK.js → ErrorScreen.js-B5nOWoD0.js} +2 -2
  174. package/build/server/chunks/chunks/ErrorScreen.js-B5nOWoD0.js.map +1 -0
  175. package/build/server/chunks/chunks/{FilterableDropdown.js-BOn5KqoV.js → FilterableDropdown.js-D_qAE6m9.js} +3 -3
  176. package/build/server/chunks/chunks/{FilterableDropdown.js-BOn5KqoV.js.map → FilterableDropdown.js-D_qAE6m9.js.map} +1 -1
  177. package/build/server/chunks/chunks/{SectionHeader.js-DiptCbfZ.js → SectionHeader.js-PzuZL2oZ.js} +3 -3
  178. package/build/server/chunks/chunks/SectionHeader.js-PzuZL2oZ.js.map +1 -0
  179. package/build/server/chunks/chunks/{SettingsMenu.js-D2JgHHQH.js → SettingsMenu.js-CqotfpZ2.js} +17 -17
  180. package/build/server/chunks/chunks/SettingsMenu.js-CqotfpZ2.js.map +1 -0
  181. package/build/server/chunks/chunks/{SideNav.js-CHU4sxIJ.js → SideNav.js-C29eTto6.js} +10 -10
  182. package/build/server/chunks/chunks/SideNav.js-C29eTto6.js.map +1 -0
  183. package/build/server/chunks/chunks/{ViewToggle.js-CF3dsHiK.js → ViewToggle.js-DfZqEana.js} +3 -3
  184. package/build/server/chunks/chunks/{ViewToggle.js-CF3dsHiK.js.map → ViewToggle.js-DfZqEana.js.map} +1 -1
  185. package/build/server/chunks/chunks/{alert-dialog.js-BkZe8aAZ.js → alert-dialog.js-NNiNoEbs.js} +4 -4
  186. package/build/server/chunks/chunks/alert-dialog.js-NNiNoEbs.js.map +1 -0
  187. package/build/server/chunks/chunks/{client.js-B5cNNyu2.js → client.js-2Lg7WJIk.js} +2 -2
  188. package/build/server/chunks/chunks/{client.js-B5cNNyu2.js.map → client.js-2Lg7WJIk.js.map} +1 -1
  189. package/build/server/chunks/chunks/{dialog-description.js-D5m47Ni2.js → dialog-description.js-BY-9ke4K.js} +2 -2
  190. package/build/server/chunks/chunks/{dialog-description.js-D5m47Ni2.js.map → dialog-description.js-BY-9ke4K.js.map} +1 -1
  191. package/build/server/chunks/chunks/{dialog.js-RXbcPNWY.js → dialog.js-BgpbBL6T.js} +4 -4
  192. package/build/server/chunks/chunks/dialog.js-BgpbBL6T.js.map +1 -0
  193. package/build/server/chunks/chunks/{footerContext.svelte.js-D7wOrPs7.js → footerContext.svelte.js-CDuebWvb.js} +2 -2
  194. package/build/server/chunks/chunks/{footerContext.svelte.js-D7wOrPs7.js.map → footerContext.svelte.js-CDuebWvb.js.map} +1 -1
  195. package/build/server/chunks/chunks/forms.js-DY6WRTuH.js +2 -0
  196. package/build/server/chunks/chunks/forms.js-DY6WRTuH.js.map +1 -0
  197. package/build/server/chunks/chunks/{index-server2.js-siA98IdX.js → index-server2.js-Defl0_Bj.js} +3 -2
  198. package/build/server/chunks/chunks/{index-server2.js-siA98IdX.js.map → index-server2.js-Defl0_Bj.js.map} +1 -1
  199. package/build/server/chunks/chunks/internal.js-DWk6_A5e.js.map +1 -1
  200. package/build/server/chunks/chunks/{internal2.js-BOHwnFs6.js → internal2.js-34dCKLS0.js} +3 -3
  201. package/build/server/chunks/chunks/{internal2.js-BOHwnFs6.js.map → internal2.js-34dCKLS0.js.map} +1 -1
  202. package/build/server/chunks/chunks/navigation.js-DY6WRTuH.js +2 -0
  203. package/build/server/chunks/chunks/navigation.js-DY6WRTuH.js.map +1 -0
  204. package/build/server/chunks/chunks/{package.js-BgPdFjD-.js → package.js-BIBtuERu.js} +2 -2
  205. package/build/server/chunks/chunks/{package.js-BgPdFjD-.js.map → package.js-BIBtuERu.js.map} +1 -1
  206. package/build/server/chunks/chunks/{paths.js-h4PZkz5s.js → paths.js-B4pN9XAv.js} +2 -2
  207. package/build/server/chunks/chunks/{paths.js-h4PZkz5s.js.map → paths.js-B4pN9XAv.js.map} +1 -1
  208. package/build/server/chunks/chunks/{popper-layer-force-mount.js-C36FvZrx.js → popper-layer-force-mount.js-BVkAYVXN.js} +2 -2
  209. package/build/server/chunks/chunks/{popper-layer-force-mount.js-C36FvZrx.js.map → popper-layer-force-mount.js-BVkAYVXN.js.map} +1 -1
  210. package/build/server/chunks/chunks/{roving-focus-group.js-BT0BbbTq.js → roving-focus-group.js-4kFd02kE.js} +2 -2
  211. package/build/server/chunks/chunks/{roving-focus-group.js-BT0BbbTq.js.map → roving-focus-group.js-4kFd02kE.js.map} +1 -1
  212. package/build/server/chunks/chunks/{scroll-lock.js-Ds68nQMm.js → scroll-lock.js-B23IQqpP.js} +2 -2
  213. package/build/server/chunks/chunks/{scroll-lock.js-Ds68nQMm.js.map → scroll-lock.js-B23IQqpP.js.map} +1 -1
  214. package/build/server/chunks/chunks/{select.js-u-8dOfAn.js → select.js-P_EOB0iO.js} +3 -3
  215. package/build/server/chunks/chunks/{select.js-u-8dOfAn.js.map → select.js-P_EOB0iO.js.map} +1 -1
  216. package/build/server/chunks/chunks/{server3.js-BFuYvX67.js → server3.js-Cg4E4j7S.js} +49 -4
  217. package/build/server/chunks/chunks/{server3.js-BFuYvX67.js.map → server3.js-Cg4E4j7S.js.map} +1 -1
  218. package/build/server/chunks/chunks/{state.js-COIyu63Z.js → state.js-CL4VpFoP.js} +2 -2
  219. package/build/server/chunks/chunks/{state.js-COIyu63Z.js.map → state.js-CL4VpFoP.js.map} +1 -1
  220. package/build/server/chunks/chunks/{stores.js-Cl0Rc65E.js → stores.js-CmjD-H_S.js} +2 -2
  221. package/build/server/chunks/chunks/{stores.js-Cl0Rc65E.js.map → stores.js-CmjD-H_S.js.map} +1 -1
  222. package/build/server/chunks/chunks/{tabs-trigger.js-DYBZ_4nv.js → tabs-trigger.js-BeV-n20t.js} +4 -4
  223. package/build/server/chunks/chunks/{tabs-trigger.js-DYBZ_4nv.js.map → tabs-trigger.js-BeV-n20t.js.map} +1 -1
  224. package/build/server/chunks/entries/endpoints/mcp/{_server.ts.js-RhYQwztq.js → _server.ts.js-Dv0rsqnG.js} +2 -2
  225. package/build/server/chunks/entries/endpoints/mcp/{_server.ts.js-RhYQwztq.js.map → _server.ts.js-Dv0rsqnG.js.map} +1 -1
  226. package/build/server/chunks/entries/{hooks.server.js-sVMel2p1.js → hooks.server.js-BlSLM4g7.js} +2 -2
  227. package/build/server/chunks/entries/{hooks.server.js-sVMel2p1.js.map → hooks.server.js-BlSLM4g7.js.map} +1 -1
  228. package/build/server/chunks/entries/pages/{_error.svelte.js-DiIpU9Ac.js → _error.svelte.js-DVBDt-lY.js} +5 -5
  229. package/build/server/chunks/entries/pages/{_error.svelte.js-DiIpU9Ac.js.map → _error.svelte.js-DVBDt-lY.js.map} +1 -1
  230. package/build/server/chunks/entries/pages/{_layout.svelte.js-D3tKCqi7.js → _layout.svelte.js-Cb76QVAA.js} +3 -3
  231. package/build/server/chunks/entries/pages/{_layout.svelte.js-D3tKCqi7.js.map → _layout.svelte.js-Cb76QVAA.js.map} +1 -1
  232. package/build/server/chunks/entries/pages/{_page.svelte.js-Bharqli3.js → _page.svelte.js-CLEWpXi9.js} +19 -15
  233. package/build/server/chunks/entries/pages/_page.svelte.js-CLEWpXi9.js.map +1 -0
  234. package/build/server/chunks/entries/pages/accept-invite/{_page.svelte.js-D50uTD2B.js → _page.svelte.js-BIGlngrp.js} +5 -5
  235. package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-BIGlngrp.js.map +1 -0
  236. package/build/server/chunks/entries/pages/admin/{_error.svelte.js-CSMq3Ka_.js → _error.svelte.js-CgISIRXM.js} +5 -5
  237. package/build/server/chunks/entries/pages/admin/{_error.svelte.js-CSMq3Ka_.js.map → _error.svelte.js-CgISIRXM.js.map} +1 -1
  238. package/build/server/chunks/entries/pages/admin/{_layout.svelte.js-BAuigGsc.js → _layout.svelte.js-0HFjXiks.js} +12 -12
  239. package/build/server/chunks/entries/pages/admin/{_layout.svelte.js-BAuigGsc.js.map → _layout.svelte.js-0HFjXiks.js.map} +1 -1
  240. package/build/server/chunks/entries/pages/admin/{_page.server.ts.js-BsXJHcdm.js → _page.server.ts.js-BnbhAtVC.js} +2 -2
  241. package/build/server/chunks/entries/pages/admin/{_page.server.ts.js-BsXJHcdm.js.map → _page.server.ts.js-BnbhAtVC.js.map} +1 -1
  242. package/build/server/chunks/entries/pages/admin/{_page.svelte.js-BR_FVhLi.js → _page.svelte.js-DTNnTm6l.js} +10 -10
  243. package/build/server/chunks/entries/pages/admin/{_page.svelte.js-BR_FVhLi.js.map → _page.svelte.js-DTNnTm6l.js.map} +1 -1
  244. package/build/server/chunks/entries/pages/admin/audit/{_page.svelte.js-CIVYbv1k.js → _page.svelte.js-Vfqaenm4.js} +6 -6
  245. package/build/server/chunks/entries/pages/admin/audit/{_page.svelte.js-CIVYbv1k.js.map → _page.svelte.js-Vfqaenm4.js.map} +1 -1
  246. package/build/server/chunks/entries/pages/admin/compute/{_page.svelte.js-DXRD9Iui.js → _page.svelte.js-BVeTLSr3.js} +9 -9
  247. package/build/server/chunks/entries/pages/admin/compute/{_page.svelte.js-DXRD9Iui.js.map → _page.svelte.js-BVeTLSr3.js.map} +1 -1
  248. package/build/server/chunks/entries/pages/admin/organizations/{_page.svelte.js-BPQGmCi7.js → _page.svelte.js-C_bkePbV.js} +7 -5
  249. package/build/server/chunks/entries/pages/admin/organizations/_page.svelte.js-C_bkePbV.js.map +1 -0
  250. package/build/server/chunks/entries/pages/admin/projects/_id_/{_page.svelte.js-F9AWmrhN.js → _page.svelte.js-CTtxlY5v.js} +16 -14
  251. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-CTtxlY5v.js.map +1 -0
  252. package/build/server/chunks/entries/pages/admin/projects/{_page.svelte.js-BzX6MfDB.js → _page.svelte.js-DBVBPE2d.js} +9 -7
  253. package/build/server/chunks/entries/pages/admin/projects/{_page.svelte.js-BzX6MfDB.js.map → _page.svelte.js-DBVBPE2d.js.map} +1 -1
  254. package/build/server/chunks/entries/pages/admin/system/{_page.server.ts.js-CCu42MSp.js → _page.server.ts.js-CHm3OjGf.js} +2 -2
  255. package/build/server/chunks/entries/pages/admin/system/{_page.server.ts.js-CCu42MSp.js.map → _page.server.ts.js-CHm3OjGf.js.map} +1 -1
  256. package/build/server/chunks/entries/pages/admin/system/{_page.svelte.js-CgOFUU6H.js → _page.svelte.js-B6SjiNRK.js} +8 -8
  257. package/build/server/chunks/entries/pages/admin/system/{_page.svelte.js-CgOFUU6H.js.map → _page.svelte.js-B6SjiNRK.js.map} +1 -1
  258. package/build/server/chunks/entries/pages/admin/users/{_page.svelte.js-vSLg5lOZ.js → _page.svelte.js-Dgmu3cuP.js} +38 -25
  259. package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-Dgmu3cuP.js.map +1 -0
  260. package/build/server/chunks/entries/pages/auth/email/sent/{_page.svelte.js-DyLJeyUU.js → _page.svelte.js-CRyEIO6d.js} +5 -5
  261. package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-CRyEIO6d.js.map +1 -0
  262. package/build/server/chunks/entries/pages/docs/api/{_page.svelte.js-gIhL2Qo7.js → _page.svelte.js-cg3Dn1AG.js} +3 -3
  263. package/build/server/chunks/entries/pages/docs/api/{_page.svelte.js-gIhL2Qo7.js.map → _page.svelte.js-cg3Dn1AG.js.map} +1 -1
  264. package/build/server/chunks/entries/pages/library/_guid_/{_page.svelte.js-B9jbyKqk.js → _page.svelte.js-BAYA9TZg.js} +38 -184
  265. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-BAYA9TZg.js.map +1 -0
  266. package/build/server/chunks/entries/pages/library/{_page.svelte.js-CboPTS5h.js → _page.svelte.js-Ct5iurpc.js} +21 -22
  267. package/build/server/chunks/entries/pages/library/_page.svelte.js-Ct5iurpc.js.map +1 -0
  268. package/build/server/chunks/entries/pages/login/{_page.svelte.js-BG-PMYi6.js → _page.svelte.js-BZaoz3V6.js} +5 -5
  269. package/build/server/chunks/entries/pages/login/_page.svelte.js-BZaoz3V6.js.map +1 -0
  270. package/build/server/chunks/entries/pages/oauth/authorize/{_page.svelte.js-BUIcFh1f.js → _page.svelte.js-BGZb7qso.js} +5 -5
  271. package/build/server/chunks/entries/pages/oauth/authorize/_page.svelte.js-BGZb7qso.js.map +1 -0
  272. package/build/server/chunks/entries/pages/projects/{_layout.svelte.js-B2zpr0pm.js → _layout.svelte.js-DwFurilm.js} +11 -11
  273. package/build/server/chunks/entries/pages/projects/{_layout.svelte.js-B2zpr0pm.js.map → _layout.svelte.js-DwFurilm.js.map} +1 -1
  274. package/build/server/chunks/entries/pages/projects/{_page.svelte.js-B7_D6Tc7.js → _page.svelte.js-CWXSd3vY.js} +61 -32
  275. package/build/server/chunks/entries/pages/projects/_page.svelte.js-CWXSd3vY.js.map +1 -0
  276. package/build/server/chunks/entries/pages/setup/{_page.svelte.js-BG-prHGk.js → _page.svelte.js-DTg4C3D4.js} +5 -5
  277. package/build/server/chunks/entries/pages/setup/_page.svelte.js-DTg4C3D4.js.map +1 -0
  278. package/build/server/chunks/entries/pages/team/{_layout.svelte.js-B--epuFB.js → _layout.svelte.js-CrcHtY1C.js} +13 -13
  279. package/build/server/chunks/entries/pages/team/{_layout.svelte.js-B--epuFB.js.map → _layout.svelte.js-CrcHtY1C.js.map} +1 -1
  280. package/build/server/chunks/entries/pages/team/{_page.svelte.js-C7f1aafD.js → _page.svelte.js-CfZ4wcQ3.js} +2 -2
  281. package/build/server/chunks/entries/pages/team/{_page.svelte.js-C7f1aafD.js.map → _page.svelte.js-CfZ4wcQ3.js.map} +1 -1
  282. package/build/server/chunks/entries/pages/team/activity/{_page.svelte.js-CIfgoavi.js → _page.svelte.js-nJyp1mJU.js} +2 -2
  283. package/build/server/chunks/entries/pages/team/activity/{_page.svelte.js-CIfgoavi.js.map → _page.svelte.js-nJyp1mJU.js.map} +1 -1
  284. package/build/server/chunks/entries/pages/team/compute/{_page.svelte.js-ClKm0y8m.js → _page.svelte.js-9f9SZFHC.js} +12 -12
  285. package/build/server/chunks/entries/pages/team/compute/{_page.svelte.js-ClKm0y8m.js.map → _page.svelte.js-9f9SZFHC.js.map} +1 -1
  286. package/build/server/chunks/entries/pages/team/members/{_page.svelte.js-DJ3r0QLd.js → _page.svelte.js-BY_69Htq.js} +9 -9
  287. package/build/server/chunks/entries/pages/team/members/{_page.svelte.js-DJ3r0QLd.js.map → _page.svelte.js-BY_69Htq.js.map} +1 -1
  288. package/build/server/chunks/entries/pages/team/projects/{_page.svelte.js-CpUPYSr9.js → _page.svelte.js-WRSwUEmh.js} +17 -15
  289. package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-WRSwUEmh.js.map +1 -0
  290. package/build/server/chunks/entries/pages/team/reclaim/{_page.svelte.js-DrCNzRIE.js → _page.svelte.js-CXg1BJww.js} +13 -12
  291. package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-CXg1BJww.js.map +1 -0
  292. package/build/server/chunks/entries/pages/team/settings/{_page.svelte.js-BZBSqlas.js → _page.svelte.js-DVb3omaR.js} +2 -2
  293. package/build/server/chunks/entries/pages/team/settings/{_page.svelte.js-BZBSqlas.js.map → _page.svelte.js-DVb3omaR.js.map} +1 -1
  294. package/build/server/chunks/entries/pages/team/shares/{_page.svelte.js-CYW1kK7E.js → _page.svelte.js-Bs_4nRpr.js} +16 -13
  295. package/build/server/chunks/entries/pages/team/shares/_page.svelte.js-Bs_4nRpr.js.map +1 -0
  296. package/build/server/chunks/entries/pages/team/tokens/{_page.svelte.js-U3kraEYQ.js → _page.svelte.js-CNkxpltS.js} +17 -14
  297. package/build/server/chunks/entries/pages/team/tokens/_page.svelte.js-CNkxpltS.js.map +1 -0
  298. package/build/server/chunks/{handler-DktvFfmT.js → handler-BYrBEfuI.js} +3 -3
  299. package/build/server/chunks/{handler-DktvFfmT.js.map → handler-BYrBEfuI.js.map} +1 -1
  300. package/build/server/chunks/{index.js-U17FCs2C.js → index.js-Dexut_o4.js} +2 -2
  301. package/build/server/chunks/{index.js-U17FCs2C.js.map → index.js-Dexut_o4.js.map} +1 -1
  302. package/build/server/chunks/{manifest.js-Dkp61MCM.js → manifest.js-BRFQLaYd.js} +36 -36
  303. package/build/server/chunks/{manifest.js-Dkp61MCM.js.map → manifest.js-BRFQLaYd.js.map} +1 -1
  304. package/build/server/chunks/nodes/{0.js-lTLEqekj.js → 0.js-qTj7Y4Lt.js} +4 -4
  305. package/build/server/chunks/nodes/{0.js-lTLEqekj.js.map → 0.js-qTj7Y4Lt.js.map} +1 -1
  306. package/build/server/chunks/nodes/{1.js-C7y-eFEt.js → 1.js-DxzcNJXS.js} +3 -3
  307. package/build/server/chunks/nodes/{1.js-C7y-eFEt.js.map → 1.js-DxzcNJXS.js.map} +1 -1
  308. package/build/server/chunks/nodes/{10.js-B8qFMGo5.js → 10.js-CeVxFTsx.js} +3 -3
  309. package/build/server/chunks/nodes/{10.js-B8qFMGo5.js.map → 10.js-CeVxFTsx.js.map} +1 -1
  310. package/build/server/chunks/nodes/{11.js-B0LHojXL.js → 11.js-wNLZCiwg.js} +3 -3
  311. package/build/server/chunks/nodes/{11.js-B0LHojXL.js.map → 11.js-wNLZCiwg.js.map} +1 -1
  312. package/build/server/chunks/nodes/{12.js-6pHwTf_L.js → 12.js-CtW9yr9S.js} +4 -4
  313. package/build/server/chunks/nodes/12.js-CtW9yr9S.js.map +1 -0
  314. package/build/server/chunks/nodes/{13.js-C4RJOIS8.js → 13.js-BE_LYBiE.js} +4 -4
  315. package/build/server/chunks/nodes/{13.js-C4RJOIS8.js.map → 13.js-BE_LYBiE.js.map} +1 -1
  316. package/build/server/chunks/nodes/{14.js-D-hhIcAN.js → 14.js-DPcUGHKl.js} +4 -4
  317. package/build/server/chunks/nodes/{14.js-D-hhIcAN.js.map → 14.js-DPcUGHKl.js.map} +1 -1
  318. package/build/server/chunks/nodes/{15.js-Cm-Jnejh.js → 15.js-CvE2gD4V.js} +5 -5
  319. package/build/server/chunks/nodes/{15.js-Cm-Jnejh.js.map → 15.js-CvE2gD4V.js.map} +1 -1
  320. package/build/server/chunks/nodes/{16.js-Czj9RLaI.js → 16.js-BucEkNGe.js} +3 -3
  321. package/build/server/chunks/nodes/{16.js-Czj9RLaI.js.map → 16.js-BucEkNGe.js.map} +1 -1
  322. package/build/server/chunks/nodes/{17.js-Bn9XETRF.js → 17.js-Cd3sgqM6.js} +3 -3
  323. package/build/server/chunks/nodes/{17.js-Bn9XETRF.js.map → 17.js-Cd3sgqM6.js.map} +1 -1
  324. package/build/server/chunks/nodes/{19.js-DKp4dlCF.js → 19.js-CkZV3CiH.js} +3 -3
  325. package/build/server/chunks/nodes/{19.js-DKp4dlCF.js.map → 19.js-CkZV3CiH.js.map} +1 -1
  326. package/build/server/chunks/nodes/{2.js-yCXi0aPF.js → 2.js-DudR0EMx.js} +3 -3
  327. package/build/server/chunks/nodes/{2.js-yCXi0aPF.js.map → 2.js-DudR0EMx.js.map} +1 -1
  328. package/build/server/chunks/nodes/{20.js-t30blwHC.js → 20.js-CZs3wYJA.js} +3 -3
  329. package/build/server/chunks/nodes/{20.js-t30blwHC.js.map → 20.js-CZs3wYJA.js.map} +1 -1
  330. package/build/server/chunks/nodes/{21.js-i6jFUJp5.js → 21.js-DVb7-LpO.js} +4 -4
  331. package/build/server/chunks/nodes/{21.js-i6jFUJp5.js.map → 21.js-DVb7-LpO.js.map} +1 -1
  332. package/build/server/chunks/nodes/{22.js-DcHakFlO.js → 22.js-BIp9JqE2.js} +3 -3
  333. package/build/server/chunks/nodes/{22.js-DcHakFlO.js.map → 22.js-BIp9JqE2.js.map} +1 -1
  334. package/build/server/chunks/nodes/{24.js-BQcA0QlR.js → 24.js-XpOL870g.js} +3 -3
  335. package/build/server/chunks/nodes/{24.js-BQcA0QlR.js.map → 24.js-XpOL870g.js.map} +1 -1
  336. package/build/server/chunks/nodes/{25.js-Bys8XBIv.js → 25.js-DzbSSBxu.js} +3 -3
  337. package/build/server/chunks/nodes/{25.js-Bys8XBIv.js.map → 25.js-DzbSSBxu.js.map} +1 -1
  338. package/build/server/chunks/nodes/{26.js-D8Caj0nc.js → 26.js-Dgqgzf_R.js} +3 -3
  339. package/build/server/chunks/nodes/{26.js-D8Caj0nc.js.map → 26.js-Dgqgzf_R.js.map} +1 -1
  340. package/build/server/chunks/nodes/{27.js-qprRQQIK.js → 27.js-DMPZ2jQ7.js} +3 -3
  341. package/build/server/chunks/nodes/{27.js-qprRQQIK.js.map → 27.js-DMPZ2jQ7.js.map} +1 -1
  342. package/build/server/chunks/nodes/{28.js-CibXMnYP.js → 28.js-BJmUR_iR.js} +3 -3
  343. package/build/server/chunks/nodes/{28.js-CibXMnYP.js.map → 28.js-BJmUR_iR.js.map} +1 -1
  344. package/build/server/chunks/nodes/{29.js-BhkG7TyY.js → 29.js-Ley5PKAJ.js} +3 -3
  345. package/build/server/chunks/nodes/{29.js-BhkG7TyY.js.map → 29.js-Ley5PKAJ.js.map} +1 -1
  346. package/build/server/chunks/nodes/{3.js-DBxxuND8.js → 3.js-C_CSOlUd.js} +3 -3
  347. package/build/server/chunks/nodes/{3.js-DBxxuND8.js.map → 3.js-C_CSOlUd.js.map} +1 -1
  348. package/build/server/chunks/nodes/{30.js-DSBz3ngD.js → 30.js-B_sbpyXt.js} +3 -3
  349. package/build/server/chunks/nodes/{30.js-DSBz3ngD.js.map → 30.js-B_sbpyXt.js.map} +1 -1
  350. package/build/server/chunks/nodes/{31.js-CxIfn5jO.js → 31.js-D13DKG7u.js} +4 -4
  351. package/build/server/chunks/nodes/{31.js-CxIfn5jO.js.map → 31.js-D13DKG7u.js.map} +1 -1
  352. package/build/server/chunks/nodes/{32.js-1pCX2490.js → 32.js-BPuziAqQ.js} +4 -4
  353. package/build/server/chunks/nodes/{32.js-1pCX2490.js.map → 32.js-BPuziAqQ.js.map} +1 -1
  354. package/build/server/chunks/nodes/{33.js-CvZM6odT.js → 33.js-BiHTX7gf.js} +3 -3
  355. package/build/server/chunks/nodes/{33.js-CvZM6odT.js.map → 33.js-BiHTX7gf.js.map} +1 -1
  356. package/build/server/chunks/nodes/{34.js-BRv6IrQJ.js → 34.js-CbC3t5PK.js} +4 -4
  357. package/build/server/chunks/nodes/{34.js-BRv6IrQJ.js.map → 34.js-CbC3t5PK.js.map} +1 -1
  358. package/build/server/chunks/nodes/{35.js-ZJqHFayc.js → 35.js-CUlhRSXQ.js} +4 -4
  359. package/build/server/chunks/nodes/{35.js-ZJqHFayc.js.map → 35.js-CUlhRSXQ.js.map} +1 -1
  360. package/build/server/chunks/nodes/{5.js-EOJQMEnn.js → 5.js-Cop4dTLv.js} +3 -3
  361. package/build/server/chunks/nodes/{5.js-EOJQMEnn.js.map → 5.js-Cop4dTLv.js.map} +1 -1
  362. package/build/server/chunks/nodes/{6.js-CbMr0sUz.js → 6.js-CbXT7Xcg.js} +3 -3
  363. package/build/server/chunks/nodes/{6.js-CbMr0sUz.js.map → 6.js-CbXT7Xcg.js.map} +1 -1
  364. package/build/server/chunks/nodes/{7.js-CedwBLUY.js → 7.js-BXgUDCb0.js} +3 -3
  365. package/build/server/chunks/nodes/{7.js-CedwBLUY.js.map → 7.js-BXgUDCb0.js.map} +1 -1
  366. package/build/server/chunks/nodes/{8.js-CiQIPQvE.js → 8.js-DQlSkANd.js} +3 -3
  367. package/build/server/chunks/nodes/{8.js-CiQIPQvE.js.map → 8.js-DQlSkANd.js.map} +1 -1
  368. package/build/server/chunks/nodes/{9.js-C58SrzOm.js → 9.js-BVrihz72.js} +5 -5
  369. package/build/server/chunks/nodes/{9.js-C58SrzOm.js.map → 9.js-BVrihz72.js.map} +1 -1
  370. package/package.json +4 -4
  371. package/build/client/_app/immutable/assets/0.BlmlX1YC.css +0 -2
  372. package/build/client/_app/immutable/assets/0.BlmlX1YC.css.br +0 -0
  373. package/build/client/_app/immutable/assets/0.BlmlX1YC.css.gz +0 -0
  374. package/build/client/_app/immutable/assets/21.HXpl75F5.css.br +0 -0
  375. package/build/client/_app/immutable/assets/21.HXpl75F5.css.gz +0 -0
  376. package/build/client/_app/immutable/chunks/B6ovFDn-.js +0 -2
  377. package/build/client/_app/immutable/chunks/B6ovFDn-.js.br +0 -0
  378. package/build/client/_app/immutable/chunks/B6ovFDn-.js.gz +0 -0
  379. package/build/client/_app/immutable/chunks/B7mORn_f.js.br +0 -0
  380. package/build/client/_app/immutable/chunks/B7mORn_f.js.gz +0 -0
  381. package/build/client/_app/immutable/chunks/BjKFlhmK.js.br +0 -0
  382. package/build/client/_app/immutable/chunks/BrMlUZh7.js +0 -1
  383. package/build/client/_app/immutable/chunks/BrMlUZh7.js.br +0 -0
  384. package/build/client/_app/immutable/chunks/BrMlUZh7.js.gz +0 -0
  385. package/build/client/_app/immutable/chunks/BwgcmfQh.js +0 -1
  386. package/build/client/_app/immutable/chunks/BwgcmfQh.js.br +0 -0
  387. package/build/client/_app/immutable/chunks/BwgcmfQh.js.gz +0 -0
  388. package/build/client/_app/immutable/chunks/C9CNnbQ1.js +0 -1
  389. package/build/client/_app/immutable/chunks/C9CNnbQ1.js.br +0 -2
  390. package/build/client/_app/immutable/chunks/C9CNnbQ1.js.gz +0 -0
  391. package/build/client/_app/immutable/chunks/CFXJfIk2.js.br +0 -0
  392. package/build/client/_app/immutable/chunks/CFXJfIk2.js.gz +0 -0
  393. package/build/client/_app/immutable/chunks/CYZs_rfh.js +0 -1
  394. package/build/client/_app/immutable/chunks/CYZs_rfh.js.br +0 -1
  395. package/build/client/_app/immutable/chunks/CYZs_rfh.js.gz +0 -0
  396. package/build/client/_app/immutable/chunks/Cz5OJSV3.js.br +0 -0
  397. package/build/client/_app/immutable/chunks/Cz5OJSV3.js.gz +0 -0
  398. package/build/client/_app/immutable/chunks/Cz8TTWwy.js +0 -1
  399. package/build/client/_app/immutable/chunks/Cz8TTWwy.js.br +0 -0
  400. package/build/client/_app/immutable/chunks/Cz8TTWwy.js.gz +0 -0
  401. package/build/client/_app/immutable/chunks/DSJs6Y5z.js +0 -1
  402. package/build/client/_app/immutable/chunks/DSJs6Y5z.js.br +0 -0
  403. package/build/client/_app/immutable/chunks/DSJs6Y5z.js.gz +0 -0
  404. package/build/client/_app/immutable/chunks/DUXa_NkE.js +0 -1
  405. package/build/client/_app/immutable/chunks/DUXa_NkE.js.br +0 -0
  406. package/build/client/_app/immutable/chunks/DUXa_NkE.js.gz +0 -0
  407. package/build/client/_app/immutable/chunks/DZVj5ZFh.js +0 -1
  408. package/build/client/_app/immutable/chunks/DZVj5ZFh.js.br +0 -0
  409. package/build/client/_app/immutable/chunks/DZVj5ZFh.js.gz +0 -0
  410. package/build/client/_app/immutable/chunks/DfuZJmWN.js.br +0 -2
  411. package/build/client/_app/immutable/chunks/DfuZJmWN.js.gz +0 -0
  412. package/build/client/_app/immutable/chunks/Tduejkoz.js.br +0 -0
  413. package/build/client/_app/immutable/chunks/Tduejkoz.js.gz +0 -0
  414. package/build/client/_app/immutable/chunks/rN5qcVxv.js.br +0 -0
  415. package/build/client/_app/immutable/chunks/rN5qcVxv.js.gz +0 -0
  416. package/build/client/_app/immutable/entry/app.Bk3Fv37J.js +0 -2
  417. package/build/client/_app/immutable/entry/app.Bk3Fv37J.js.br +0 -0
  418. package/build/client/_app/immutable/entry/app.Bk3Fv37J.js.gz +0 -0
  419. package/build/client/_app/immutable/entry/start.BBgNsKAy.js +0 -1
  420. package/build/client/_app/immutable/entry/start.BBgNsKAy.js.br +0 -0
  421. package/build/client/_app/immutable/entry/start.BBgNsKAy.js.gz +0 -0
  422. package/build/client/_app/immutable/nodes/1.ajAR_Ig4.js.br +0 -0
  423. package/build/client/_app/immutable/nodes/1.ajAR_Ig4.js.gz +0 -0
  424. package/build/client/_app/immutable/nodes/10.D-zoD55U.js.br +0 -0
  425. package/build/client/_app/immutable/nodes/10.D-zoD55U.js.gz +0 -0
  426. package/build/client/_app/immutable/nodes/11.p0fQVFO3.js.br +0 -0
  427. package/build/client/_app/immutable/nodes/11.p0fQVFO3.js.gz +0 -0
  428. package/build/client/_app/immutable/nodes/12.CwSkUT3d.js.br +0 -0
  429. package/build/client/_app/immutable/nodes/12.CwSkUT3d.js.gz +0 -0
  430. package/build/client/_app/immutable/nodes/13.WSbyJ472.js.br +0 -0
  431. package/build/client/_app/immutable/nodes/13.WSbyJ472.js.gz +0 -0
  432. package/build/client/_app/immutable/nodes/14.DV-1f7wx.js.br +0 -0
  433. package/build/client/_app/immutable/nodes/14.DV-1f7wx.js.gz +0 -0
  434. package/build/client/_app/immutable/nodes/15.CCJWzwc2.js.br +0 -0
  435. package/build/client/_app/immutable/nodes/15.CCJWzwc2.js.gz +0 -0
  436. package/build/client/_app/immutable/nodes/16.D9CiU6k_.js +0 -5
  437. package/build/client/_app/immutable/nodes/16.D9CiU6k_.js.br +0 -0
  438. package/build/client/_app/immutable/nodes/16.D9CiU6k_.js.gz +0 -0
  439. package/build/client/_app/immutable/nodes/17.DkDum1V5.js +0 -2
  440. package/build/client/_app/immutable/nodes/17.DkDum1V5.js.br +0 -0
  441. package/build/client/_app/immutable/nodes/17.DkDum1V5.js.gz +0 -0
  442. package/build/client/_app/immutable/nodes/19.C99-Bd1i.js.br +0 -0
  443. package/build/client/_app/immutable/nodes/19.C99-Bd1i.js.gz +0 -0
  444. package/build/client/_app/immutable/nodes/2.xqnmwni_.js.br +0 -0
  445. package/build/client/_app/immutable/nodes/2.xqnmwni_.js.gz +0 -0
  446. package/build/client/_app/immutable/nodes/20.zIQxRxN3.js +0 -2
  447. package/build/client/_app/immutable/nodes/20.zIQxRxN3.js.br +0 -0
  448. package/build/client/_app/immutable/nodes/20.zIQxRxN3.js.gz +0 -0
  449. package/build/client/_app/immutable/nodes/21.Cwno45cb.js.br +0 -0
  450. package/build/client/_app/immutable/nodes/21.Cwno45cb.js.gz +0 -0
  451. package/build/client/_app/immutable/nodes/22.CG9Klo8L.js +0 -6
  452. package/build/client/_app/immutable/nodes/22.CG9Klo8L.js.br +0 -0
  453. package/build/client/_app/immutable/nodes/22.CG9Klo8L.js.gz +0 -0
  454. package/build/client/_app/immutable/nodes/24.D3XyrdMq.js.br +0 -0
  455. package/build/client/_app/immutable/nodes/24.D3XyrdMq.js.gz +0 -0
  456. package/build/client/_app/immutable/nodes/25.Ckqa30qu.js +0 -16
  457. package/build/client/_app/immutable/nodes/25.Ckqa30qu.js.br +0 -0
  458. package/build/client/_app/immutable/nodes/25.Ckqa30qu.js.gz +0 -0
  459. package/build/client/_app/immutable/nodes/26.Df3Dz0UH.js +0 -6
  460. package/build/client/_app/immutable/nodes/26.Df3Dz0UH.js.br +0 -0
  461. package/build/client/_app/immutable/nodes/26.Df3Dz0UH.js.gz +0 -0
  462. package/build/client/_app/immutable/nodes/27.2LRvK7sY.js.br +0 -0
  463. package/build/client/_app/immutable/nodes/27.2LRvK7sY.js.gz +0 -0
  464. package/build/client/_app/immutable/nodes/28.TZMdlERc.js.br +0 -0
  465. package/build/client/_app/immutable/nodes/28.TZMdlERc.js.gz +0 -0
  466. package/build/client/_app/immutable/nodes/29.BG8fWa0N.js.br +0 -0
  467. package/build/client/_app/immutable/nodes/29.BG8fWa0N.js.gz +0 -0
  468. package/build/client/_app/immutable/nodes/3.D037EXCR.js.br +0 -0
  469. package/build/client/_app/immutable/nodes/3.D037EXCR.js.gz +0 -0
  470. package/build/client/_app/immutable/nodes/30.CEVB_0i1.js.br +0 -0
  471. package/build/client/_app/immutable/nodes/30.CEVB_0i1.js.gz +0 -0
  472. package/build/client/_app/immutable/nodes/31.Cf_t_EwV.js +0 -2
  473. package/build/client/_app/immutable/nodes/31.Cf_t_EwV.js.br +0 -0
  474. package/build/client/_app/immutable/nodes/31.Cf_t_EwV.js.gz +0 -0
  475. package/build/client/_app/immutable/nodes/32.Cp2NOZgy.js +0 -2
  476. package/build/client/_app/immutable/nodes/32.Cp2NOZgy.js.br +0 -0
  477. package/build/client/_app/immutable/nodes/32.Cp2NOZgy.js.gz +0 -0
  478. package/build/client/_app/immutable/nodes/33.tbtGaEE2.js.br +0 -0
  479. package/build/client/_app/immutable/nodes/33.tbtGaEE2.js.gz +0 -0
  480. package/build/client/_app/immutable/nodes/34.Ynouf9HY.js +0 -1
  481. package/build/client/_app/immutable/nodes/34.Ynouf9HY.js.br +0 -0
  482. package/build/client/_app/immutable/nodes/34.Ynouf9HY.js.gz +0 -0
  483. package/build/client/_app/immutable/nodes/35.DSo_MvQf.js.br +0 -0
  484. package/build/client/_app/immutable/nodes/35.DSo_MvQf.js.gz +0 -0
  485. package/build/client/_app/immutable/nodes/5.DhbxDhFz.js.br +0 -2
  486. package/build/client/_app/immutable/nodes/5.DhbxDhFz.js.gz +0 -0
  487. package/build/client/_app/immutable/nodes/6.C9EISD0j.js.br +0 -0
  488. package/build/client/_app/immutable/nodes/6.C9EISD0j.js.gz +0 -0
  489. package/build/client/_app/immutable/nodes/7.Bop81vWR.js +0 -1
  490. package/build/client/_app/immutable/nodes/7.Bop81vWR.js.br +0 -0
  491. package/build/client/_app/immutable/nodes/7.Bop81vWR.js.gz +0 -0
  492. package/build/client/_app/immutable/nodes/8.DrRswcMr.js.br +0 -0
  493. package/build/client/_app/immutable/nodes/8.DrRswcMr.js.gz +0 -0
  494. package/build/client/_app/immutable/nodes/9.DM0VKWkK.js.br +0 -0
  495. package/build/client/_app/immutable/nodes/9.DM0VKWkK.js.gz +0 -0
  496. package/build/server/chunks/chunks/AppHeader.js-Clv5uxmx.js.map +0 -1
  497. package/build/server/chunks/chunks/DataTable.js-kjk81hZJ.js +0 -27
  498. package/build/server/chunks/chunks/DataTable.js-kjk81hZJ.js.map +0 -1
  499. package/build/server/chunks/chunks/DefinitionCard.js-cWBb-1ZJ.js.map +0 -1
  500. package/build/server/chunks/chunks/ErrorScreen.js-Cr8VUVeK.js.map +0 -1
  501. package/build/server/chunks/chunks/SectionHeader.js-DiptCbfZ.js.map +0 -1
  502. package/build/server/chunks/chunks/SettingsMenu.js-D2JgHHQH.js.map +0 -1
  503. package/build/server/chunks/chunks/SideNav.js-CHU4sxIJ.js.map +0 -1
  504. package/build/server/chunks/chunks/alert-dialog.js-BkZe8aAZ.js.map +0 -1
  505. package/build/server/chunks/chunks/dialog.js-RXbcPNWY.js.map +0 -1
  506. package/build/server/chunks/chunks/forms.js-CJ8fygO0.js +0 -2
  507. package/build/server/chunks/chunks/forms.js-CJ8fygO0.js.map +0 -1
  508. package/build/server/chunks/chunks/navigation.js-CJ8fygO0.js +0 -2
  509. package/build/server/chunks/chunks/navigation.js-CJ8fygO0.js.map +0 -1
  510. package/build/server/chunks/entries/pages/_page.svelte.js-Bharqli3.js.map +0 -1
  511. package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-D50uTD2B.js.map +0 -1
  512. package/build/server/chunks/entries/pages/admin/organizations/_page.svelte.js-BPQGmCi7.js.map +0 -1
  513. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-F9AWmrhN.js.map +0 -1
  514. package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-vSLg5lOZ.js.map +0 -1
  515. package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-DyLJeyUU.js.map +0 -1
  516. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-B9jbyKqk.js.map +0 -1
  517. package/build/server/chunks/entries/pages/library/_page.svelte.js-CboPTS5h.js.map +0 -1
  518. package/build/server/chunks/entries/pages/login/_page.svelte.js-BG-PMYi6.js.map +0 -1
  519. package/build/server/chunks/entries/pages/oauth/authorize/_page.svelte.js-BUIcFh1f.js.map +0 -1
  520. package/build/server/chunks/entries/pages/projects/_page.svelte.js-B7_D6Tc7.js.map +0 -1
  521. package/build/server/chunks/entries/pages/setup/_page.svelte.js-BG-prHGk.js.map +0 -1
  522. package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-CpUPYSr9.js.map +0 -1
  523. package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-DrCNzRIE.js.map +0 -1
  524. package/build/server/chunks/entries/pages/team/shares/_page.svelte.js-CYW1kK7E.js.map +0 -1
  525. package/build/server/chunks/entries/pages/team/tokens/_page.svelte.js-U3kraEYQ.js.map +0 -1
  526. package/build/server/chunks/nodes/12.js-6pHwTf_L.js.map +0 -1
  527. /package/build/client/_app/immutable/nodes/{0.BiBHPU6k.js → 0.B0Ie7GmU.js} +0 -0
  528. /package/build/client/_app/immutable/nodes/{0.BiBHPU6k.js.br → 0.B0Ie7GmU.js.br} +0 -0
  529. /package/build/client/_app/immutable/nodes/{0.BiBHPU6k.js.gz → 0.B0Ie7GmU.js.gz} +0 -0
@@ -1,9 +1,9 @@
1
- import{$ as e,A as t,B as n,Bt as r,Ct as i,D as a,Dt as o,Et as s,F as c,Ft as l,G as u,Ht as d,I as f,It as p,J as m,K as h,L as g,Mt as _,O as v,Ot as y,Pt as b,Q as x,R as S,S as C,Tt as w,U as T,Ut as E,V as D,Vt as O,Wt as k,X as A,Y as j,Z as M,_t as N,a as P,b as F,bt as I,d as L,dt as ee,et as R,f as te,ft as z,g as ne,gt as B,it as V,k as re,mt as ie,n as ae,nt as oe,o as H,ot as se,pt as ce,q as U,r as le,rt as ue,s as W,st as de,tt as fe,v as G,vt as K,xt as pe,y as me,yt as q,z as he,zt as ge}from"../chunks/Ba-r0_-2.js";import{t as _e}from"../chunks/uBIymjUX.js";import"../chunks/xihTtKlq.js";import{c as ve,s as ye,t as be}from"../chunks/DUvhHBbp.js";import{i as xe,r as Se}from"../chunks/DzyQ_co1.js";import{S as Ce,T as we,c as Te,d as J,l as Ee,n as De,o as Oe,p as ke,r as Ae,s as je,t as Me,u as Ne,v as Y}from"../chunks/EqtCgIiZ.js";import{n as Pe,r as Fe,t as Ie}from"../chunks/BTfRz6RN.js";import{a as Le,i as Re,n as ze,o as Be,r as Ve,s as He,t as Ue}from"../chunks/BrMlUZh7.js";import{t as We}from"../chunks/DBSPzQPv.js";import{i as Ge,n as Ke,r as qe,t as Je}from"../chunks/DApx_t3P.js";import{a as Ye,i as Xe,n as Ze,r as Qe,s as $e,t as et}from"../chunks/C4kqvBxK.js";import{t as tt}from"../chunks/DjHi6mXR.js";import{t as nt}from"../chunks/Dv5b2gPp.js";import{t as rt}from"../chunks/iXLKB61w.js";import{t as it}from"../chunks/D3pjwMEy.js";import{a as at,o as ot}from"../chunks/DcZHcdJQ.js";import{a as st,c as ct,d as lt,f as ut,i as dt,l as ft,n as pt,o as mt,p as ht,r as gt,s as _t,t as vt,u as yt}from"../chunks/CqD7l6Cl.js";import{t as bt}from"../chunks/BPGnmEnW.js";import{t as xt}from"../chunks/Dcc5ddMs.js";import{t as St}from"../chunks/eXrDYFg2.js";import{t as Ct}from"../chunks/D7zWW64Z.js";import{t as wt}from"../chunks/D9WemNep.js";import{t as Tt}from"../chunks/HH5LvOUY.js";import{B as Et,C as Dt,E as Ot,G as kt,H as At,I as jt,K as Mt,L as Nt,N as Pt,P as Ft,R as It,T as Lt,W as Rt,_ as zt,a as Bt,c as Vt,f as Ht,g as Ut,h as Wt,j as Gt,k as Kt,m as qt,n as Jt,o as Yt,p as Xt,s as Zt,v as Qt,w as $t,x as en,z as tn}from"../chunks/BOZ5vOAu.js";import{a as nn,c as rn,i as an,n as on,o as sn,r as cn,s as ln,t as un}from"../chunks/CE6epq0x.js";import{a as dn,i as fn,n as pn,r as mn,t as hn}from"../chunks/Tduejkoz.js";import{t as gn}from"../chunks/Dv3-2Xhq.js";import{a as _n,i as vn,n as yn,r as bn,t as xn}from"../chunks/XvwhKzXf.js";import{t as Sn}from"../chunks/DfuZJmWN.js";import{t as Cn}from"../chunks/BI9-w-xL.js";import{t as wn}from"../chunks/BOP3gakV.js";import{n as Tn,t as En}from"../chunks/BGqHu478.js";import{n as Dn}from"../chunks/Uv783rxq.js";import{t as On}from"../chunks/14fs_RYy.js";import{t as kn}from"../chunks/DqR8kuM6.js";var An=new Set([`$$slots`,`$$events`,`$$legacy`]);function jn(e,t){let n=H(t,An),r={name:`box`,size:24,node:[[`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`}],[`path`,{d:`m3.3 7 8.7 5 8.7-5`}],[`path`,{d:`M12 22V12`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Mn=new Set([`$$slots`,`$$events`,`$$legacy`]);function Nn(e,t){let n=H(t,Mn),r={name:`camera`,size:24,node:[[`path`,{d:`M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z`}],[`circle`,{cx:`12`,cy:`13`,r:`3`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Pn=new Set([`$$slots`,`$$events`,`$$legacy`]);function Fn(e,t){let n=H(t,Pn),r={name:`chevrons-down-up`,size:24,node:[[`path`,{d:`m7 20 5-5 5 5`}],[`path`,{d:`m7 4 5 5 5-5`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var In=new Set([`$$slots`,`$$events`,`$$legacy`]);function Ln(e,t){let n=H(t,In),r={name:`chevrons-up-down`,size:24,node:[[`path`,{d:`m7 15 5 5 5-5`}],[`path`,{d:`m7 9 5-5 5 5`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Rn=new Set([`$$slots`,`$$events`,`$$legacy`]);function zn(e,t){let n=H(t,Rn),r={name:`circle-question-mark`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`}],[`path`,{d:`M12 17h.01`}]],aliases:[`help-circle`,`circle-help`]};Fe(e,W(()=>n,{get icon(){return r}}))}var Bn=new Set([`$$slots`,`$$events`,`$$legacy`]);function Vn(e,t){let n=H(t,Bn),r={name:`download`,size:24,node:[[`path`,{d:`M12 15V3`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`}],[`path`,{d:`m7 10 5 5 5-5`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Hn=new Set([`$$slots`,`$$events`,`$$legacy`]);function Un(e,t){let n=H(t,Hn),r={name:`eye-off`,size:24,node:[[`path`,{d:`M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49`}],[`path`,{d:`M14.084 14.158a3 3 0 0 1-4.242-4.242`}],[`path`,{d:`M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143`}],[`path`,{d:`m2 2 20 20`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Wn=new Set([`$$slots`,`$$events`,`$$legacy`]);function Gn(e,t){let n=H(t,Wn),r={name:`eye`,size:24,node:[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Kn=new Set([`$$slots`,`$$events`,`$$legacy`]);function qn(e,t){let n=H(t,Kn),r={name:`file`,size:24,node:[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Jn=new Set([`$$slots`,`$$events`,`$$legacy`]);function Yn(e,t){let n=H(t,Jn),r={name:`folder`,size:24,node:[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Xn=new Set([`$$slots`,`$$events`,`$$legacy`]);function Zn(e,t){let n=H(t,Xn),r={name:`frame`,size:24,node:[[`line`,{x1:`22`,x2:`2`,y1:`6`,y2:`6`}],[`line`,{x1:`22`,x2:`2`,y1:`18`,y2:`18`}],[`line`,{x1:`6`,x2:`6`,y1:`2`,y2:`22`}],[`line`,{x1:`18`,x2:`18`,y1:`2`,y2:`22`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Qn=new Set([`$$slots`,`$$events`,`$$legacy`]);function $n(e,t){let n=H(t,Qn),r={name:`grid-3x3`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`}],[`path`,{d:`M3 9h18`}],[`path`,{d:`M3 15h18`}],[`path`,{d:`M9 3v18`}],[`path`,{d:`M15 3v18`}]],aliases:[`grid`,`grid-3-x-3`]};Fe(e,W(()=>n,{get icon(){return r}}))}var er=new Set([`$$slots`,`$$events`,`$$legacy`]);function tr(e,t){let n=H(t,er),r={name:`inbox`,size:24,node:[[`polyline`,{points:`22 12 16 12 14 15 10 15 8 12 2 12`}],[`path`,{d:`M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var nr=new Set([`$$slots`,`$$events`,`$$legacy`]);function rr(e,t){let n=H(t,nr),r={name:`layers`,size:24,node:[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`}]],aliases:[`layers-3`]};Fe(e,W(()=>n,{get icon(){return r}}))}var ir=new Set([`$$slots`,`$$events`,`$$legacy`]);function ar(e,t){let n=H(t,ir),r={name:`link`,size:24,node:[[`path`,{d:`M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71`}],[`path`,{d:`M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var or=new Set([`$$slots`,`$$events`,`$$legacy`]);function sr(e,t){let n=H(t,or),r={name:`loader-circle`,size:24,node:[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`}]],aliases:[`loader-2`]};Fe(e,W(()=>n,{get icon(){return r}}))}var cr=new Set([`$$slots`,`$$events`,`$$legacy`]);function lr(e,t){let n=H(t,cr),r={name:`loader`,size:24,node:[[`path`,{d:`M12 2v4`}],[`path`,{d:`m16.2 7.8 2.9-2.9`}],[`path`,{d:`M18 12h4`}],[`path`,{d:`m16.2 16.2 2.9 2.9`}],[`path`,{d:`M12 18v4`}],[`path`,{d:`m4.9 19.1 2.9-2.9`}],[`path`,{d:`M2 12h4`}],[`path`,{d:`m4.9 4.9 2.9 2.9`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var ur=new Set([`$$slots`,`$$events`,`$$legacy`]);function dr(e,t){let n=H(t,ur),r={name:`maximize`,size:24,node:[[`path`,{d:`M8 3H5a2 2 0 0 0-2 2v3`}],[`path`,{d:`M21 8V5a2 2 0 0 0-2-2h-3`}],[`path`,{d:`M3 16v3a2 2 0 0 0 2 2h3`}],[`path`,{d:`M16 21h3a2 2 0 0 0 2-2v-3`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var fr=new Set([`$$slots`,`$$events`,`$$legacy`]);function pr(e,t){let n=H(t,fr),r={name:`minimize`,size:24,node:[[`path`,{d:`M8 3v3a2 2 0 0 1-2 2H3`}],[`path`,{d:`M21 8h-3a2 2 0 0 1-2-2V3`}],[`path`,{d:`M3 16h3a2 2 0 0 1 2 2v3`}],[`path`,{d:`M16 21v-3a2 2 0 0 1 2-2h3`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var mr=new Set([`$$slots`,`$$events`,`$$legacy`]);function hr(e,t){let n=H(t,mr),r={name:`palette`,size:24,node:[[`path`,{d:`M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z`}],[`circle`,{cx:`13.5`,cy:`6.5`,r:`.5`,fill:`currentColor`}],[`circle`,{cx:`17.5`,cy:`10.5`,r:`.5`,fill:`currentColor`}],[`circle`,{cx:`6.5`,cy:`12.5`,r:`.5`,fill:`currentColor`}],[`circle`,{cx:`8.5`,cy:`7.5`,r:`.5`,fill:`currentColor`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var gr=new Set([`$$slots`,`$$events`,`$$legacy`]);function _r(e,t){let n=H(t,gr),r={name:`ruler`,size:24,node:[[`path`,{d:`M21.3 15.3a2.4 2.4 0 0 1 0 3.4l-2.6 2.6a2.4 2.4 0 0 1-3.4 0L2.7 8.7a2.41 2.41 0 0 1 0-3.4l2.6-2.6a2.41 2.41 0 0 1 3.4 0Z`}],[`path`,{d:`m14.5 12.5 2-2`}],[`path`,{d:`m11.5 9.5 2-2`}],[`path`,{d:`m8.5 6.5 2-2`}],[`path`,{d:`m17.5 15.5 2-2`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var vr=new Set([`$$slots`,`$$events`,`$$legacy`]);function yr(e,t){let n=H(t,vr),r={name:`scan`,size:24,node:[[`path`,{d:`M3 7V5a2 2 0 0 1 2-2h2`}],[`path`,{d:`M17 3h2a2 2 0 0 1 2 2v2`}],[`path`,{d:`M21 17v2a2 2 0 0 1-2 2h-2`}],[`path`,{d:`M7 21H5a2 2 0 0 1-2-2v-2`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var br=new Set([`$$slots`,`$$events`,`$$legacy`]);function xr(e,t){let n=H(t,br),r={name:`settings-2`,size:24,node:[[`path`,{d:`M14 17H5`}],[`path`,{d:`M19 7h-9`}],[`circle`,{cx:`17`,cy:`17`,r:`3`}],[`circle`,{cx:`7`,cy:`7`,r:`3`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Sr=new Set([`$$slots`,`$$events`,`$$legacy`]);function Cr(e,t){let n=H(t,Sr),r={name:`spline`,size:24,node:[[`circle`,{cx:`19`,cy:`5`,r:`2`}],[`circle`,{cx:`5`,cy:`19`,r:`2`}],[`path`,{d:`M5 17A12 12 0 0 1 17 5`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var wr=new Set([`$$slots`,`$$events`,`$$legacy`]);function Tr(e,t){let n=H(t,wr),r={name:`square`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Er=new Set([`$$slots`,`$$events`,`$$legacy`]);function Dr(e,t){let n=H(t,Er),r={name:`zap`,size:24,node:[[`path`,{d:`M15.914 4a1.5 1.5 0 00-2.474-1.561l-9 9A1.5 1.5 0 005.5 14h4.002a.5.5 0 01.471.666L8.086 20a1.5 1.5 0 002.475 1.56l9-9A1.5 1.5 0 0018.5 10h-3.997a.5.5 0 01-.472-.667z`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Or=new Set([`$$slots`,`$$events`,`$$legacy`]);function kr(e,t){let n=H(t,Or),r={name:`zoom-in`,size:24,node:[[`circle`,{cx:`11`,cy:`11`,r:`8`}],[`line`,{x1:`21`,x2:`16.65`,y1:`21`,y2:`16.65`}],[`line`,{x1:`11`,x2:`11`,y1:`8`,y2:`14`}],[`line`,{x1:`8`,x2:`14`,y1:`11`,y2:`11`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Ar=new Set([`$$slots`,`$$events`,`$$legacy`]);function jr(e,t){let n=H(t,Ar),r={name:`zoom-out`,size:24,node:[[`circle`,{cx:`11`,cy:`11`,r:`8`}],[`line`,{x1:`21`,x2:`16.65`,y1:`21`,y2:`16.65`}],[`line`,{x1:`8`,x2:`14`,y1:`11`,y2:`11`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Mr=class{eventName;options;constructor(e,t={bubbles:!0,cancelable:!0}){this.eventName=e,this.options=t}createEvent(e){return new CustomEvent(this.eventName,{...this.options,detail:e})}dispatch(e,t){let n=this.createEvent(t);return e.dispatchEvent(n),n}listen(e,t,n){return fe(e,this.eventName,e=>{t(e)},n)}},Nr=Oe({component:`checkbox`,parts:[`root`,`group`,`group-label`,`input`]}),Pr=new Mt(`Checkbox.Group`),Fr=new Mt(`Checkbox.Root`),Ir=class e{static create(t,n=null){return Fr.set(new e(t,n))}opts;group;#e=y(()=>this.group&&this.group.opts.name.current?this.group.opts.name.current:this.opts.name.current);get trueName(){return V(this.#e)}set trueName(e){i(this.#e,e)}#t=y(()=>this.group&&this.group.opts.required.current?!0:this.opts.required.current);get trueRequired(){return V(this.#t)}set trueRequired(e){i(this.#t,e)}#n=y(()=>this.group&&this.group.opts.disabled.current?!0:this.opts.disabled.current);get trueDisabled(){return V(this.#n)}set trueDisabled(e){i(this.#n,e)}#r=y(()=>this.group&&this.group.opts.readonly.current?!0:this.opts.readonly.current);get trueReadonly(){return V(this.#r)}set trueReadonly(e){i(this.#r,e)}attachment;constructor(e,t){this.opts=e,this.group=t,this.attachment=Ne(this.opts.ref),this.onkeydown=this.onkeydown.bind(this),this.onclick=this.onclick.bind(this),Rt.pre([()=>ge(this.group?.opts.value.current),()=>this.opts.value.current],([e,t])=>{e&&t&&(this.opts.checked.current=e.includes(t))}),Rt.pre(()=>this.opts.checked.current,e=>{this.group&&(e?this.group?.addValue(this.opts.value.current):this.group?.removeValue(this.opts.value.current))})}onkeydown(e){if(!(this.trueDisabled||this.trueReadonly)){if(e.key===`Enter`){e.preventDefault(),this.opts.type.current===`submit`&&e.currentTarget.closest(`form`)?.requestSubmit();return}e.key===` `&&(e.preventDefault(),this.#i())}}#i(){this.opts.indeterminate.current?(this.opts.indeterminate.current=!1,this.opts.checked.current=!0):this.opts.checked.current=!this.opts.checked.current}onclick(e){if(!(this.trueDisabled||this.trueReadonly)){if(this.opts.type.current===`submit`){this.#i();return}e.preventDefault(),this.#i()}}#a=y(()=>({checked:this.opts.checked.current,indeterminate:this.opts.indeterminate.current}));get snippetProps(){return V(this.#a)}set snippetProps(e){i(this.#a,e)}#o=y(()=>({id:this.opts.id.current,role:`checkbox`,type:this.opts.type.current,disabled:this.trueDisabled,"aria-checked":je(this.opts.checked.current,this.opts.indeterminate.current),"aria-required":Ae(this.trueRequired),"aria-readonly":Ae(this.trueReadonly),"data-disabled":De(this.trueDisabled),"data-readonly":De(this.trueReadonly),"data-state":Rr(this.opts.checked.current,this.opts.indeterminate.current),[Nr.root]:``,onclick:this.onclick,onkeydown:this.onkeydown,...this.attachment}));get props(){return V(this.#o)}set props(e){i(this.#o,e)}},Lr=class e{static create(){return new e(Fr.get())}root;#e=y(()=>this.root.group?!!(this.root.opts.value.current!==void 0&&this.root.group.opts.value.current.includes(this.root.opts.value.current)):this.root.opts.checked.current);get trueChecked(){return V(this.#e)}set trueChecked(e){i(this.#e,e)}#t=y(()=>!!this.root.trueName);get shouldRender(){return V(this.#t)}set shouldRender(e){i(this.#t,e)}constructor(e){this.root=e,this.onfocus=this.onfocus.bind(this)}onfocus(e){Qt(this.root.opts.ref.current)&&this.root.opts.ref.current.focus()}#n=y(()=>({type:`checkbox`,checked:this.root.opts.checked.current===!0,disabled:this.root.trueDisabled,required:this.root.trueRequired,name:this.root.trueName,form:this.root.opts.form.current,value:this.root.opts.value.current,readonly:this.root.trueReadonly,onfocus:this.onfocus}));get props(){return V(this.#n)}set props(e){i(this.#n,e)}};function Rr(e,t){return t?`indeterminate`:e?`checked`:`unchecked`}function zr(e,t){l(t,!0);let n=Lr.create();var r=U(),i=K(r),a=e=>{sn(e,W(()=>n.props))};D(i,e=>{n.shouldRender&&e(a)}),h(e,r),b()}var Br=new Set([`$$slots`,`$$events`,`$$legacy`,`checked`,`ref`,`onCheckedChange`,`children`,`disabled`,`required`,`name`,`form`,`value`,`id`,`indeterminate`,`onIndeterminateChange`,`child`,`type`,`readonly`]),Vr=m(`<button><!></button>`),Hr=m(`<!> <!>`,1);function Ur(e,t){let n=A();l(t,!0);let r=P(t,`checked`,15,!1),i=P(t,`ref`,15,null),a=P(t,`disabled`,3,!1),o=P(t,`required`,3,!1),s=P(t,`name`,3,void 0),c=P(t,`form`,3,void 0),u=P(t,`value`,3,`on`),d=P(t,`id`,19,()=>Me(n)),p=P(t,`indeterminate`,15,!1),m=P(t,`type`,3,`button`),g=H(t,Br),_=Pr.getOr(null);_&&u()&&(_.opts.value.current.includes(u())?r(!0):r(!1)),Rt.pre(()=>u(),()=>{_&&u()&&(_.opts.value.current.includes(u())?r(!0):r(!1))});let v=Ir.create({checked:Y(()=>r(),e=>{r(e),t.onCheckedChange?.(e)}),disabled:Y(()=>a()??!1),required:Y(()=>o()),name:Y(()=>s()),form:Y(()=>c()),value:Y(()=>u()),id:Y(()=>d()),ref:Y(()=>i(),e=>i(e)),indeterminate:Y(()=>p(),e=>{p(e),t.onIndeterminateChange?.(e)}),type:Y(()=>m()),readonly:Y(()=>!!t.readonly)},_),x=y(()=>J({...g},v.props));var S=Hr(),C=K(S),w=e=>{var n=U(),r=K(n);{let e=y(()=>({props:V(x),...v.snippetProps}));f(r,()=>t.child,()=>V(e))}h(e,n)},T=e=>{var n=Vr();G(n,()=>({...V(x)}));var r=N(n);f(r,()=>t.children??E,()=>v.snippetProps),O(n),h(e,n)};D(C,e=>{t.child?e(w):e(T,-1)}),zr(I(C,2),{}),h(e,S),b()}var Wr=[Kt,` `],Gr=[Dt,Ft,Gt],Kr=[Ot,Pt,`End`],qr=[...Gr,...Kr],Jr={ltr:[...Wr,Lt],rtl:[...Wr,$t]},Yr={ltr:[$t],rtl:[Lt]};function Xr(e){return e===`indeterminate`}function Zr(e){return Xr(e)?`indeterminate`:e?`checked`:`unchecked`}function Qr(e){return e.pointerType===`mouse`}function $r(e,{select:t=!1}={}){if(!e||!e.focus)return;let n=Nt(e);if(n.activeElement===e)return;let r=n.activeElement;e.focus({preventScroll:!0}),e!==r&&en(e)&&t&&e.select()}function ei(e,{select:t=!1}={},n){let r=n();for(let i of e)if($r(i,{select:t}),n()!==r)return!0}var ti=w(!1),ni=class e{static _refs=0;static _cleanup;constructor(){ce(()=>(e._refs===0&&(e._cleanup=ee(()=>{let e=[],t=e=>{i(ti,!1)};return e.push(fe(document,`pointerdown`,t,{capture:!0}),fe(document,`keydown`,e=>{i(ti,!0)},{capture:!0})),ce(()=>{if(V(ti))return fe(document,`pointermove`,t,{capture:!0})}),ke(...e)})),e._refs++,()=>{e._refs--,e._refs===0&&(i(ti,!1),e._cleanup?.())}))}get current(){return V(ti)}set current(e){i(ti,e,!0)}};function ri(){return{getShadowRoot:!0,displayCheck:typeof ResizeObserver==`function`&&ResizeObserver.toString().includes(`[native code]`)?`full`:`none`}}function ii(e,t){if(!Zt(e,ri()))return ai(e,t);let n=Nt(e),r=Vt(n.body,ri());t===`prev`&&r.reverse();let i=r.indexOf(e);return i===-1?n.body:r.slice(i+1)[0]}function ai(e,t){let n=Nt(e);if(!Yt(e,ri()))return n.body;let r=Bt(n.body,ri());t===`prev`&&r.reverse();let i=r.indexOf(e);return i===-1?n.body:r.slice(i+1).find(e=>Zt(e,ri()))??n.body}var oi=new Mt(`Menu.Root`),si=new Mt(`Menu.Root | Menu.Sub`),ci=new Mt(`Menu.Content`),li=new Mt(`Menu.Group | Menu.RadioGroup`),ui=new Mt(`Menu.RadioGroup`),di=new Mt(`Menu.CheckboxGroup`),fi=new Mr(`bitsmenuopen`,{bubbles:!1,cancelable:!0}),pi=Oe({component:`menu`,parts:[`trigger`,`content`,`sub-trigger`,`item`,`group`,`group-heading`,`checkbox-group`,`checkbox-item`,`radio-group`,`radio-item`,`separator`,`sub-content`,`arrow`]}),mi=class{#e;#t=null;#n=null;#r=!1;#i=null;#a=null;#o=null;#s=null;constructor(e){this.#e=e,Rt([e.triggerNode,e.contentNode,e.enabled],([e,t,n])=>{if(this.#_(),!e||!t||!n)return;let r=e=>{Qr(e)&&(this.#s={x:e.clientX,y:e.clientY},this.#r||this.#d(e,`content`))},i=e=>{Qr(e)&&this.#f(e,`content`)},a=e=>{Qr(e)&&(this.#r||this.#d(e,`trigger`))},o=e=>{if(Qr(e)){if(Ut(e.relatedTarget)){let n=this.#e.subContentSelector(),r=e.relatedTarget.closest(n);if(r&&r!==t&&r.id&&t.querySelector(`[aria-controls="${r.id}"]`))return}this.#f(e,`trigger`)}},s=e=>{Qr(e)&&this.#m()},c=e=>{Qr(e)&&this.#m()};return e.addEventListener(`pointermove`,r),e.addEventListener(`pointerleave`,i),e.addEventListener(`pointerenter`,s),t.addEventListener(`pointermove`,a),t.addEventListener(`pointerleave`,o),t.addEventListener(`pointerenter`,c),()=>{e.removeEventListener(`pointermove`,r),e.removeEventListener(`pointerleave`,i),e.removeEventListener(`pointerenter`,s),t.removeEventListener(`pointermove`,a),t.removeEventListener(`pointerleave`,o),t.removeEventListener(`pointerenter`,c),this.#_()}}),Et(()=>{this.#_()})}#c(){let e=this.#e.parentContentNode();return e?e.getBoundingClientRect():this.#e.triggerNode()?.getBoundingClientRect()??null}#l(e,t){let n=this.#e.triggerNode(),r=this.#e.contentNode();if(!n||!r)return null;let i=n.getBoundingClientRect(),a=r.getBoundingClientRect(),o=vi(i,a),s,c,l;return t===`content`?(s=this.#r?this.#a??e:e,c=a):(s=this.#s??e,c=this.#c()??i,l=a),this.#a=s,{corridor:yi(i,a,o),intent:bi(s,c,o,t,l),targetRect:c,side:o}}#u(e,t,n){return hi(e,t)||hi(e,n)}#d(e,t){let n={x:e.clientX,y:e.clientY};this.#l(n,t)&&(this.#i=t,this.#o=n)}#f(e,t){if(!this.#e.enabled())return;let n=this.#e.triggerNode(),r=this.#e.contentNode();if(!n||!r)return;let i=e.relatedTarget;if(Ut(i)&&(t===`content`&&r.contains(i)||t===`trigger`&&n.contains(i)))return;let a={x:e.clientX,y:e.clientY},o=this.#l(a,t);if(o){if(!gi(a,o.targetRect)&&!this.#u(a,o.corridor,o.intent)){this.#w();return}this.#r=!0,this.#i=t,this.#o=a,this.#e.setIsPointerInTransit(!0),this.#b(),this.#S()}}#p=null;#m(){if(!this.#r)return;let e=this.#i===`trigger`;this.#x(),this.#C(),this.#r=!1,this.#w(),e?(this.#h(),this.#p=setTimeout(()=>{this.#p=null,this.#e.setIsPointerInTransit(!1)},100)):this.#e.setIsPointerInTransit(!1)}#h(){this.#p!==null&&(clearTimeout(this.#p),this.#p=null)}#g(){let e=this.#o;this.#x(),this.#C(),this.#h(),this.#r=!1,this.#e.setIsPointerInTransit(!1),this.#w(),this.#e.onIntentExit(e)}#_(){this.#x(),this.#C(),this.#h(),this.#r&&this.#e.setIsPointerInTransit(!1),this.#r=!1,this.#i=null,this.#a=null,this.#o=null,this.#s=null}#v(e){let t=this.#e.contentNode();if(!t)return!1;let n=t.ownerDocument.elementFromPoint(e.x,e.y);if(!n)return!1;let r=this.#e.subContentSelector(),i=n.closest(r);return!i||i===t?!1:i.id?!!t.querySelector(`[aria-controls="${i.id}"]`):!1}#y=e=>{if(!this.#r||!this.#i||!Qr(e))return;let t=this.#e.triggerNode(),n=this.#e.contentNode();if(!t||!n){this.#g();return}this.#C();let r={x:e.clientX,y:e.clientY};this.#o=r;let i=t.getBoundingClientRect(),a=n.getBoundingClientRect();if(this.#i===`content`&&gi(r,a)){this.#m();return}if(this.#i===`trigger`&&_i(r,i,4)){this.#m();return}if(this.#v(r)){this.#S();return}let o=this.#l(r,this.#i);if(!o){this.#g();return}if(this.#u(r,o.corridor,o.intent)){this.#S();return}this.#g()};#b(){if(this.#t)return;let e=Nt(this.#e.triggerNode()??this.#e.contentNode());e&&(e.addEventListener(`pointermove`,this.#y,!0),this.#t=()=>{e.removeEventListener(`pointermove`,this.#y,!0),this.#t=null})}#x(){this.#t?.()}#S(){this.#C(),this.#n=setTimeout(()=>{this.#n=null,this.#r&&this.#g()},500)}#C(){this.#n!==null&&(clearTimeout(this.#n),this.#n=null)}#w(){this.#i=null,this.#a=null,this.#o=null}};function hi(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e].x,s=t[e].y,c=t[a].x,l=t[a].y;s>r!=l>r&&n<(c-o)*(r-s)/(l-s)+o&&(i=!i)}return i}function gi(e,t){return e.x>=t.left&&e.x<=t.right&&e.y>=t.top&&e.y<=t.bottom}function _i(e,t,n){return e.x>=t.left+n&&e.x<=t.right-n&&e.y>=t.top+n&&e.y<=t.bottom-n}function vi(e,t){let n=e.left+e.width/2,r=e.top+e.height/2,i=t.left+t.width/2,a=t.top+t.height/2,o=i-n,s=a-r;return Math.abs(o)>Math.abs(s)?o>0?`right`:`left`:s>0?`bottom`:`top`}function yi(e,t,n){switch(n){case`top`:return[{x:Math.min(e.left,t.left)-2,y:e.top},{x:Math.min(e.left,t.left)-2,y:t.bottom},{x:Math.max(e.right,t.right)+2,y:t.bottom},{x:Math.max(e.right,t.right)+2,y:e.top}];case`bottom`:return[{x:Math.min(e.left,t.left)-2,y:e.bottom},{x:Math.min(e.left,t.left)-2,y:t.top},{x:Math.max(e.right,t.right)+2,y:t.top},{x:Math.max(e.right,t.right)+2,y:e.bottom}];case`left`:return[{x:e.left,y:Math.min(e.top,t.top)-2},{x:t.right,y:Math.min(e.top,t.top)-2},{x:t.right,y:Math.max(e.bottom,t.bottom)+2},{x:e.left,y:Math.max(e.bottom,t.bottom)+2}];case`right`:return[{x:e.right,y:Math.min(e.top,t.top)-2},{x:t.left,y:Math.min(e.top,t.top)-2},{x:t.left,y:Math.max(e.bottom,t.bottom)+2},{x:e.right,y:Math.max(e.bottom,t.bottom)+2}]}}function bi(e,t,n,r,i){let a=r===`trigger`?xi(n):n,o=i?Math.min(t.top,i.top)-8:t.top-8,s=i?Math.max(t.bottom,i.bottom)+8:t.bottom+8,c=i?Math.min(t.left,i.left)-8:t.left-8,l=i?Math.max(t.right,i.right)+8:t.right+8;switch(a){case`right`:return[e,{x:t.left,y:o},{x:t.left,y:s}];case`left`:return[e,{x:t.right,y:o},{x:t.right,y:s}];case`bottom`:return[e,{x:c,y:t.top},{x:l,y:t.top}];case`top`:return[e,{x:c,y:t.bottom},{x:l,y:t.bottom}]}}function xi(e){switch(e){case`top`:return`bottom`;case`bottom`:return`top`;case`left`:return`right`;case`right`:return`left`}}var Si=class e{static create(t){let n=new e(t);return oi.set(n)}opts;isUsingKeyboard=new ni;#e=w(!1);get ignoreCloseAutoFocus(){return V(this.#e)}set ignoreCloseAutoFocus(e){i(this.#e,e,!0)}#t=w(!1);get isPointerInTransit(){return V(this.#t)}set isPointerInTransit(e){i(this.#t,e,!0)}constructor(e){this.opts=e}getBitsAttr=e=>pi.getAttr(e,this.opts.variant.current)},Ci=class e{static create(t,n){return si.set(new e(t,n,null))}opts;root;parentMenu;#e=w(Y(()=>``));get contentId(){return V(this.#e)}set contentId(e){i(this.#e,e)}#t=w(null);get contentNode(){return V(this.#t)}set contentNode(e){i(this.#t,e,!0)}contentPresence;#n=w(null);get triggerNode(){return V(this.#n)}set triggerNode(e){i(this.#n,e,!0)}constructor(e,t,n){this.opts=e,this.root=t,this.parentMenu=n,this.contentPresence=new qt({ref:Y(()=>this.contentNode),open:this.opts.open,onComplete:()=>{this.opts.onOpenChangeComplete.current(this.opts.open.current)},shouldSkipExitAnimation:()=>this.root.opts.variant.current!==`menubar`||this.parentMenu!==null?!1:this.root.opts.shouldSkipExitAnimation?.()??!1}),n&&Rt(()=>n.opts.open.current,()=>{n.opts.open.current||(this.opts.open.current=!1)})}toggleOpen(){this.opts.open.current=!this.opts.open.current}onOpen(){this.opts.open.current=!0}onClose(){this.opts.open.current=!1}},wi=class e{static create(t){return ci.set(new e(t,si.get()))}opts;parentMenu;rovingFocusGroup;domContext;attachment;#e=w(``);get search(){return V(this.#e)}set search(e){i(this.#e,e,!0)}#t=0;#n;#r=w(!1);get mounted(){return V(this.#r)}set mounted(e){i(this.#r,e,!0)}#i;constructor(e,t){this.opts=e,this.parentMenu=t,this.domContext=new jt(e.ref),this.attachment=Ne(this.opts.ref,e=>{this.parentMenu.contentNode!==e&&(this.parentMenu.contentNode=e)}),t.contentId=e.id,this.#i=e.isSub??!1,this.onkeydown=this.onkeydown.bind(this),this.onblur=this.onblur.bind(this),this.onfocus=this.onfocus.bind(this),this.handleInteractOutside=this.handleInteractOutside.bind(this),new mi({contentNode:()=>this.parentMenu.contentNode,triggerNode:()=>this.parentMenu.triggerNode,parentContentNode:()=>this.parentMenu.parentMenu?.contentNode??null,subContentSelector:()=>`[${this.parentMenu.root.getBitsAttr(`sub-content`)}]`,enabled:()=>this.parentMenu.opts.open.current&&!!this.parentMenu.triggerNode?.hasAttribute(this.parentMenu.root.getBitsAttr(`sub-trigger`)),onIntentExit:e=>{this.parentMenu.opts.open.current=!1,this.#s(e)},setIsPointerInTransit:e=>{this.parentMenu.root.isPointerInTransit=e}}),this.#n=new nn({getActiveElement:()=>this.domContext.getActiveElement(),getWindow:()=>this.domContext.getWindow()}).handleTypeaheadSearch,this.rovingFocusGroup=new Tt({rootNode:Y(()=>this.parentMenu.contentNode),candidateAttr:this.parentMenu.root.getBitsAttr(`item`),loop:this.opts.loop,orientation:Y(()=>`vertical`)}),Rt(()=>this.parentMenu.contentNode,e=>e?fi.listen(e,()=>{tn(()=>{this.parentMenu.root.isUsingKeyboard.current&&this.rovingFocusGroup.focusFirstCandidate()})}):void 0),ce(()=>{this.parentMenu.opts.open.current||this.domContext.getWindow().clearTimeout(this.#t)})}#a(){let e=this.parentMenu.contentNode;return e?Array.from(e.querySelectorAll(`[${this.parentMenu.root.getBitsAttr(`item`)}]:not([data-disabled])`)):[]}#o(){return this.parentMenu.root.isPointerInTransit}#s(e){if(!e)return;let t=this.parentMenu.parentMenu?.contentNode;if(!t)return;let n=this.domContext.getDocument().elementFromPoint(e.x,e.y);if(!Ut(n))return;let r=n.closest(`[${this.parentMenu.root.getBitsAttr(`sub-trigger`)}]`);r&&t.contains(r)&&r!==this.parentMenu.triggerNode&&r.dispatchEvent(new PointerEvent(`pointermove`,{bubbles:!0,cancelable:!0,pointerType:`mouse`,clientX:e.x,clientY:e.y}))}onCloseAutoFocus=e=>{if(this.opts.onCloseAutoFocus.current?.(e),!(e.defaultPrevented||this.#i)){if(this.parentMenu.root.ignoreCloseAutoFocus){e.preventDefault();return}this.parentMenu.triggerNode&&Zt(this.parentMenu.triggerNode)&&(e.preventDefault(),this.parentMenu.triggerNode.focus())}};handleTabKeyDown(e){let t=this.parentMenu;for(;t.parentMenu!==null;)t=t.parentMenu;if(!t.triggerNode)return;e.preventDefault();let n=ii(t.triggerNode,e.shiftKey?`prev`:`next`);n?(this.parentMenu.root.ignoreCloseAutoFocus=!0,t.onClose(),tn(()=>{n.focus(),tn(()=>{this.parentMenu.root.ignoreCloseAutoFocus=!1})})):this.domContext.getDocument().body.focus()}onkeydown(e){if(e.defaultPrevented)return;if(e.key===`Tab`){this.handleTabKeyDown(e);return}let t=e.target,n=e.currentTarget;if(!Qt(t)||!Qt(n))return;let r=t.closest(`[${this.parentMenu.root.getBitsAttr(`content`)}]`)?.id===this.parentMenu.contentId.current,i=e.ctrlKey||e.altKey||e.metaKey,a=e.key.length===1;if(this.rovingFocusGroup.handleKeydown(t,e)||e.code===`Space`)return;let o=this.#a();r&&!i&&a&&this.#n(e.key,o),e.target?.id===this.parentMenu.contentId.current&&qr.includes(e.key)&&(e.preventDefault(),Kr.includes(e.key)&&o.reverse(),ei(o,{select:!1},()=>this.domContext.getActiveElement()))}onblur(e){Ut(e.currentTarget)&&Ut(e.target)&&(e.currentTarget.contains?.(e.target)||(this.domContext.getWindow().clearTimeout(this.#t),this.search=``))}onfocus(e){this.parentMenu.root.isUsingKeyboard.current&&tn(()=>this.rovingFocusGroup.focusFirstCandidate())}onItemEnter(){return this.#o()}onItemLeave(e){e.currentTarget.hasAttribute(this.parentMenu.root.getBitsAttr(`sub-trigger`))||this.#o()||this.parentMenu.root.isUsingKeyboard.current||(this.parentMenu.contentNode?.focus({preventScroll:!0}),this.rovingFocusGroup.setCurrentTabStopId(``))}onTriggerLeave(){return!!this.#o()}handleInteractOutside(e){if(!zt(e.target))return;let t=this.parentMenu.triggerNode?.id;if(e.target.id===t){e.preventDefault();return}if(e.target.closest(`#${t}`)){e.preventDefault();return}this.parentMenu.root.ignoreCloseAutoFocus=!0,tn(()=>{this.parentMenu.root.ignoreCloseAutoFocus=!1})}get shouldRender(){return this.parentMenu.contentPresence.shouldRender}#c=y(()=>({open:this.parentMenu.opts.open.current}));get snippetProps(){return V(this.#c)}set snippetProps(e){i(this.#c,e)}#l=y(()=>({id:this.opts.id.current,role:`menu`,"aria-orientation":`vertical`,[this.parentMenu.root.getBitsAttr(`content`)]:``,"data-state":Te(this.parentMenu.opts.open.current),...Ee(this.parentMenu.contentPresence.transitionStatus),onkeydown:this.onkeydown,onblur:this.onblur,onfocus:this.onfocus,dir:this.parentMenu.root.opts.dir.current,style:{pointerEvents:`auto`,contain:`layout style`},...this.attachment}));get props(){return V(this.#l)}set props(e){i(this.#l,e)}popperProps={onCloseAutoFocus:e=>this.onCloseAutoFocus(e)}},Ti=class{opts;content;attachment;#e=w(!1);constructor(e,t){this.opts=e,this.content=t,this.attachment=Ne(this.opts.ref),this.onpointermove=this.onpointermove.bind(this),this.onpointerleave=this.onpointerleave.bind(this),this.onfocus=this.onfocus.bind(this),this.onblur=this.onblur.bind(this)}onpointermove(e){if(!e.defaultPrevented&&Qr(e)){if(this.opts.disabled.current)this.content.onItemLeave(e);else{if(this.content.onItemEnter())return;let t=e.currentTarget;if(!Qt(t))return;t.focus({preventScroll:!0})}}}onpointerleave(e){e.defaultPrevented||Qr(e)&&this.content.onItemLeave(e)}onfocus(e){tn(()=>{e.defaultPrevented||this.opts.disabled.current||i(this.#e,!0)})}onblur(e){tn(()=>{e.defaultPrevented||i(this.#e,!1)})}#t=y(()=>({id:this.opts.id.current,tabindex:-1,role:`menuitem`,"aria-disabled":Ae(this.opts.disabled.current),"data-disabled":De(this.opts.disabled.current),"data-highlighted":V(this.#e)?``:void 0,[this.content.parentMenu.root.getBitsAttr(`item`)]:``,onpointermove:this.onpointermove,onpointerleave:this.onpointerleave,onfocus:this.onfocus,onblur:this.onblur,...this.attachment}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},Ei=class e{static create(t){let n=new Ti(t,ci.get());return new e(t,n)}opts;item;root;#e=!1;constructor(e,t){this.opts=e,this.item=t,this.root=t.content.parentMenu.root,this.onkeydown=this.onkeydown.bind(this),this.onclick=this.onclick.bind(this),this.onpointerdown=this.onpointerdown.bind(this),this.onpointerup=this.onpointerup.bind(this)}#t(){if(this.item.opts.disabled.current)return;let e=new CustomEvent(`menuitemselect`,{bubbles:!0,cancelable:!0});if(this.opts.onSelect.current(e),e.defaultPrevented){this.item.content.parentMenu.root.isUsingKeyboard.current=!1;return}this.opts.closeOnSelect.current&&this.item.content.parentMenu.root.opts.onClose()}onkeydown(e){let t=this.item.content.search!==``;if(!(this.item.opts.disabled.current||t&&e.key===` `)&&Wr.includes(e.key)){if(!Qt(e.currentTarget))return;e.currentTarget.click(),e.preventDefault()}}onclick(e){this.item.opts.disabled.current||this.#t()}onpointerup(e){if(!e.defaultPrevented&&!this.#e){if(!Qt(e.currentTarget))return;e.currentTarget?.click()}}onpointerdown(e){this.#e=!0}#n=y(()=>J(this.item.props,{onclick:this.onclick,onpointerdown:this.onpointerdown,onpointerup:this.onpointerup,onkeydown:this.onkeydown}));get props(){return V(this.#n)}set props(e){i(this.#n,e)}},Di=class e{static create(t){let n=ci.get(),r=new Ti(t,n),i=si.get();return new e(t,r,n,i)}opts;item;content;submenu;attachment;#e=null;constructor(e,t,n,r){this.opts=e,this.item=t,this.content=n,this.submenu=r,this.attachment=Ne(this.opts.ref,e=>this.submenu.triggerNode=e),this.onpointerleave=this.onpointerleave.bind(this),this.onpointermove=this.onpointermove.bind(this),this.onkeydown=this.onkeydown.bind(this),this.onclick=this.onclick.bind(this),Et(()=>{this.#t()})}#t(){this.#e!==null&&(this.content.domContext.getWindow().clearTimeout(this.#e),this.#e=null)}onpointermove(e){if(Qr(e)){if(this.submenu.root.isPointerInTransit){this.#e!==null&&this.#t();return}if(!this.item.opts.disabled.current&&!this.submenu.opts.open.current&&!this.#e){let e=this.opts.openDelay.current;if(e<=0){this.submenu.onOpen();return}this.#e=this.content.domContext.setTimeout(()=>{if(this.submenu.root.isPointerInTransit){this.#t();return}this.submenu.onOpen(),this.#t()},e)}}}onpointerleave(e){Qr(e)&&this.#t()}onkeydown(e){let t=this.content.search!==``;this.item.opts.disabled.current||t&&e.key===` `||Jr[this.submenu.root.opts.dir.current].includes(e.key)&&(e.currentTarget.click(),e.preventDefault())}onclick(e){if(this.item.opts.disabled.current||!Qt(e.currentTarget))return;e.currentTarget.focus();let t=new CustomEvent(`menusubtriggerselect`,{bubbles:!0,cancelable:!0});this.opts.onSelect.current(t),this.submenu.opts.open.current||(this.submenu.onOpen(),tn(()=>{let e=this.submenu.contentNode;e&&fi.dispatch(e)}))}#n=y(()=>J({"aria-haspopup":`menu`,"aria-expanded":Ae(this.submenu.opts.open.current),"data-state":Te(this.submenu.opts.open.current),"aria-controls":this.submenu.opts.open.current?this.submenu.contentId.current:void 0,[this.submenu.root.getBitsAttr(`sub-trigger`)]:``,onclick:this.onclick,onpointermove:this.onpointermove,onpointerleave:this.onpointerleave,onkeydown:this.onkeydown,...this.attachment},this.item.props));get props(){return V(this.#n)}set props(e){i(this.#n,e)}},Oi=class e{static create(t,n){let r=new Ei(t,new Ti(t,ci.get()));return new e(t,r,n)}opts;item;group;constructor(e,t,n=null){this.opts=e,this.item=t,this.group=n,this.group&&(Rt(()=>this.group.opts.value.current,e=>{this.opts.checked.current=e.includes(this.opts.value.current)}),Rt(()=>this.opts.checked.current,e=>{e?this.group.addValue(this.opts.value.current):this.group.removeValue(this.opts.value.current)}))}toggleChecked(){this.opts.indeterminate.current?(this.opts.indeterminate.current=!1,this.opts.checked.current=!0):this.opts.checked.current=!this.opts.checked.current}#e=y(()=>({checked:this.opts.checked.current,indeterminate:this.opts.indeterminate.current}));get snippetProps(){return V(this.#e)}set snippetProps(e){i(this.#e,e)}#t=y(()=>({...this.item.props,role:`menuitemcheckbox`,"aria-checked":je(this.opts.checked.current,this.opts.indeterminate.current),"data-state":Zr(this.opts.checked.current),[this.item.root.getBitsAttr(`checkbox-item`)]:``}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},ki=class e{static create(t){return new e(t,oi.get())}opts;root;attachment;constructor(e,t){this.opts=e,this.root=t,this.attachment=Ne(this.opts.ref)}#e=y(()=>({id:this.opts.id.current,role:`separator`,[this.root.getBitsAttr(`separator`)]:``,...this.attachment}));get props(){return V(this.#e)}set props(e){i(this.#e,e)}},Ai=class e{static create(t){return li.set(ui.set(new e(t,ci.get())))}opts;content;attachment;#e=w(null);get groupHeadingId(){return V(this.#e)}set groupHeadingId(e){i(this.#e,e,!0)}root;constructor(e,t){this.opts=e,this.content=t,this.root=t.parentMenu.root,this.attachment=Ne(this.opts.ref)}setValue(e){this.opts.value.current=e}#t=y(()=>({id:this.opts.id.current,[this.root.getBitsAttr(`radio-group`)]:``,role:`group`,"aria-labelledby":this.groupHeadingId,...this.attachment}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},ji=class e{static create(t){let n=ui.get(),r=new Ei(t,new Ti(t,n.content));return new e(t,r,n)}opts;item;group;attachment;#e=y(()=>this.group.opts.value.current===this.opts.value.current);get isChecked(){return V(this.#e)}set isChecked(e){i(this.#e,e)}constructor(e,t,n){this.opts=e,this.item=t,this.group=n,this.attachment=Ne(this.opts.ref)}selectValue(){this.group.setValue(this.opts.value.current)}#t=y(()=>({[this.group.root.getBitsAttr(`radio-item`)]:``,...this.item.props,role:`menuitemradio`,"aria-checked":je(this.isChecked,!1),"data-state":Zr(this.isChecked),...this.attachment}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},Mi=class e{static create(t){return new e(t,si.get())}opts;parentMenu;attachment;constructor(e,t){this.opts=e,this.parentMenu=t,this.attachment=Ne(this.opts.ref,e=>this.parentMenu.triggerNode=e)}onclick=e=>{this.opts.disabled.current||e.detail!==0||(this.parentMenu.toggleOpen(),e.preventDefault())};onpointerdown=e=>{if(!this.opts.disabled.current){if(e.pointerType===`touch`)return e.preventDefault();e.button===0&&e.ctrlKey===!1&&(this.parentMenu.toggleOpen(),this.parentMenu.opts.open.current||e.preventDefault())}};onpointerup=e=>{this.opts.disabled.current||e.pointerType===`touch`&&(e.preventDefault(),this.parentMenu.toggleOpen())};onkeydown=e=>{if(!this.opts.disabled.current){if(e.key===` `||e.key===`Enter`){this.parentMenu.toggleOpen(),e.preventDefault();return}e.key===`ArrowDown`&&(this.parentMenu.onOpen(),e.preventDefault())}};#e=y(()=>{if(this.parentMenu.opts.open.current&&this.parentMenu.contentId.current)return this.parentMenu.contentId.current});#t=y(()=>({id:this.opts.id.current,disabled:this.opts.disabled.current,"aria-haspopup":`menu`,"aria-expanded":Ae(this.parentMenu.opts.open.current),"aria-controls":V(this.#e),"data-disabled":De(this.opts.disabled.current),"data-state":Te(this.parentMenu.opts.open.current),[this.parentMenu.root.getBitsAttr(`trigger`)]:``,onclick:this.onclick,onpointerdown:this.onpointerdown,onpointerup:this.onpointerup,onkeydown:this.onkeydown,...this.attachment}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},Ni=class{static create(e){let t=si.get();return si.set(new Ci(e,t.root,t))}};function Pi(e,t){l(t,!0);let n=P(t,`open`,15,!1),r=P(t,`onOpenChange`,3,Xt),i=P(t,`onOpenChangeComplete`,3,Xt);Ni.create({open:Y(()=>n(),e=>{n(e),r()?.(e)}),onOpenChangeComplete:Y(()=>i())}),Ye(e,{children:(e,n)=>{var r=U(),i=K(r);f(i,()=>t.children??E),h(e,r)},$$slots:{default:!0}}),b()}var Fi=new Set([`$$slots`,`$$events`,`$$legacy`,`child`,`children`,`ref`,`id`,`disabled`,`onSelect`,`closeOnSelect`]),Ii=m(`<div><!></div>`);function Li(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`id`,19,()=>Me(n)),a=P(t,`disabled`,3,!1),o=P(t,`onSelect`,3,Xt),s=P(t,`closeOnSelect`,3,!0),c=H(t,Fi),u=Ei.create({id:Y(()=>i()),disabled:Y(()=>a()),onSelect:Y(()=>o()),ref:Y(()=>r(),e=>r(e)),closeOnSelect:Y(()=>s())}),d=y(()=>J(c,u.props));var p=U(),m=K(p),g=e=>{var n=U(),r=K(n);f(r,()=>t.child,()=>({props:V(d)})),h(e,n)},_=e=>{var n=Ii();G(n,()=>({...V(d)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(m,e=>{t.child?e(g):e(_,-1)}),h(e,p),b()}var Ri=new Set([`$$slots`,`$$events`,`$$legacy`,`children`,`child`,`ref`,`value`,`onSelect`,`id`,`disabled`,`closeOnSelect`]),zi=m(`<div><!></div>`);function Bi(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`onSelect`,3,Xt),a=P(t,`id`,19,()=>Me(n)),o=P(t,`disabled`,3,!1),s=P(t,`closeOnSelect`,3,!0),c=H(t,Ri),u=ji.create({value:Y(()=>t.value),id:Y(()=>a()),disabled:Y(()=>o()),onSelect:Y(()=>d),ref:Y(()=>r(),e=>r(e)),closeOnSelect:Y(()=>s())});function d(e){i()(e),!e.defaultPrevented&&u.selectValue()}let p=y(()=>J(c,u.props));var m=U(),g=K(m),_=e=>{var n=U(),r=K(n);f(r,()=>t.child,()=>({props:V(p),checked:u.isChecked})),h(e,n)},v=e=>{var n=zi();G(n,()=>({...V(p)}));var r=N(n);f(r,()=>t.children??E,()=>({checked:u.isChecked})),O(n),h(e,n)};D(g,e=>{t.child?e(_):e(v,-1)}),h(e,m),b()}var Vi=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`id`,`child`,`children`]),Hi=m(`<div><!></div>`);function Ui(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`id`,19,()=>Me(n)),a=H(t,Vi),o=ki.create({id:Y(()=>i()),ref:Y(()=>r(),e=>r(e))}),s=y(()=>J(a,o.props));var c=U(),u=K(c),d=e=>{var n=U(),r=K(n);f(r,()=>t.child,()=>({props:V(s)})),h(e,n)},p=e=>{var n=Hi();G(n,()=>({...V(s)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(u,e=>{t.child?e(d):e(p,-1)}),h(e,c),b()}var Wi=new Set([`$$slots`,`$$events`,`$$legacy`,`id`,`children`,`child`,`ref`,`value`,`onValueChange`]),Gi=m(`<div><!></div>`);function Ki(e,t){let n=A();l(t,!0);let r=P(t,`id`,19,()=>Me(n)),i=P(t,`ref`,15,null),a=P(t,`value`,15,``),o=P(t,`onValueChange`,3,Xt),s=H(t,Wi),c=Ai.create({value:Y(()=>a(),e=>{a(e),o()(e)}),ref:Y(()=>i(),e=>i(e)),id:Y(()=>r())}),u=y(()=>J(s,c.props));var d=U(),p=K(d),m=e=>{var n=U(),r=K(n);f(r,()=>t.child,()=>({props:V(u)})),h(e,n)},g=e=>{var n=Gi();G(n,()=>({...V(u)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(p,e=>{t.child?e(m):e(g,-1)}),h(e,d),b()}var qi=new Set([`$$slots`,`$$events`,`$$legacy`,`id`,`ref`,`children`,`child`,`loop`,`onInteractOutside`,`forceMount`,`onEscapeKeydown`,`interactOutsideBehavior`,`escapeKeydownBehavior`,`onOpenAutoFocus`,`onCloseAutoFocus`,`onFocusOutside`,`side`,`trapFocus`,`style`]),Ji=m(`<div><div><!></div></div>`);function Yi(e,t){let n=A();l(t,!0);let r=P(t,`id`,19,()=>Me(n)),i=P(t,`ref`,15,null),a=P(t,`loop`,3,!0),o=P(t,`onInteractOutside`,3,Xt),s=P(t,`forceMount`,3,!1),c=P(t,`onEscapeKeydown`,3,Xt),u=P(t,`interactOutsideBehavior`,3,`defer-otherwise-close`),d=P(t,`escapeKeydownBehavior`,3,`defer-otherwise-close`),p=P(t,`onOpenAutoFocus`,3,Xt),m=P(t,`onCloseAutoFocus`,3,Xt),g=P(t,`onFocusOutside`,3,Xt),_=P(t,`side`,3,`right`),v=P(t,`trapFocus`,3,!1),x=H(t,qi),S=wi.create({id:Y(()=>r()),loop:Y(()=>a()),ref:Y(()=>i(),e=>i(e)),isSub:!0,onCloseAutoFocus:Y(()=>j)});function C(e){let t=e.currentTarget.contains(e.target),n=Yr[S.parentMenu.root.opts.dir.current].includes(e.key);t&&n&&(S.parentMenu.onClose(),S.parentMenu.triggerNode?.focus(),e.preventDefault())}let w=y(()=>S.parentMenu.root.getBitsAttr(`sub-content`)),T=y(()=>J(x,S.props,{side:_(),onkeydown:C,[V(w)]:``}));function k(e){p()(e),!e.defaultPrevented&&(e.preventDefault(),S.parentMenu.root.isUsingKeyboard&&S.parentMenu.contentNode&&fi.dispatch(S.parentMenu.contentNode))}function j(e){m()(e),!e.defaultPrevented&&e.preventDefault()}function M(e){o()(e),!e.defaultPrevented&&S.parentMenu.onClose()}function F(e){c()(e),!e.defaultPrevented&&S.parentMenu.onClose()}function I(e){if(g()(e),e.defaultPrevented||!Qt(e.target)||e.target.id===S.parentMenu.triggerNode?.id)return;if((S.parentMenu.parentMenu?.contentNode)?.contains(e.target)){S.parentMenu.onClose(),e.preventDefault();return}let t=`[${S.parentMenu.root.getBitsAttr(`sub-content`)}]`;if(e.target.closest(t)){e.preventDefault();return}S.parentMenu.onClose()}var L=U(),ee=K(L),R=e=>{et(e,W(()=>V(T),{get ref(){return S.opts.ref},get interactOutsideBehavior(){return u()},get escapeKeydownBehavior(){return d()},onOpenAutoFocus:k,get enabled(){return S.parentMenu.opts.open.current},onInteractOutside:M,onEscapeKeydown:F,onFocusOutside:I,preventScroll:!1,get loop(){return a()},get trapFocus(){return v()},get shouldRender(){return S.shouldRender},popper:(e,n)=>{let r=()=>(n?.()).props,i=()=>(n?.()).wrapperProps,a=y(()=>J(r(),V(T),{style:Xe(`menu`)},{style:t.style}));var o=U(),s=K(o),c=e=>{var n=U(),r=K(n);{let e=y(()=>({props:V(a),wrapperProps:i(),...S.snippetProps}));f(r,()=>t.child,()=>V(e))}h(e,n)},l=e=>{var n=Ji();G(n,()=>({...i()}));var r=N(n);G(r,()=>({...V(a)}));var o=N(r);f(o,()=>t.children??E),O(r),O(n),h(e,n)};D(s,e=>{t.child?e(c):e(l,-1)}),h(e,o)},$$slots:{popper:!0}}))},te=e=>{Ze(e,W(()=>V(T),{get ref(){return S.opts.ref},get interactOutsideBehavior(){return u()},get escapeKeydownBehavior(){return d()},onCloseAutoFocus:j,onOpenAutoFocus:k,get open(){return S.parentMenu.opts.open.current},onInteractOutside:M,onEscapeKeydown:F,onFocusOutside:I,preventScroll:!1,get loop(){return a()},get trapFocus(){return v()},get shouldRender(){return S.shouldRender},popper:(e,n)=>{let r=()=>(n?.()).props,i=()=>(n?.()).wrapperProps,a=y(()=>J(r(),V(T),{style:Xe(`menu`)},{style:t.style}));var o=U(),s=K(o),c=e=>{var n=U(),r=K(n);{let e=y(()=>({props:V(a),wrapperProps:i(),...S.snippetProps}));f(r,()=>t.child,()=>V(e))}h(e,n)},l=e=>{var n=Ji();G(n,()=>({...i()}));var r=N(n);G(r,()=>({...V(a)}));var o=N(r);f(o,()=>t.children??E),O(r),O(n),h(e,n)};D(s,e=>{t.child?e(c):e(l,-1)}),h(e,o)},$$slots:{popper:!0}}))};D(ee,e=>{s()?e(R):s()||e(te,1)}),h(e,L),b()}var Xi=new Set([`$$slots`,`$$events`,`$$legacy`,`id`,`disabled`,`ref`,`children`,`child`,`onSelect`,`openDelay`]),Zi=m(`<div><!></div>`);function Qi(e,t){let n=A();l(t,!0);let r=P(t,`id`,19,()=>Me(n)),i=P(t,`disabled`,3,!1),a=P(t,`ref`,15,null),o=P(t,`onSelect`,3,Xt),s=P(t,`openDelay`,3,0),c=H(t,Xi),u=Di.create({disabled:Y(()=>i()),onSelect:Y(()=>o()),id:Y(()=>r()),ref:Y(()=>a(),e=>a(e)),openDelay:Y(()=>s())}),d=y(()=>J(c,u.props));Qe(e,{get id(){return r()},get ref(){return u.opts.ref},children:(e,n)=>{var r=U(),i=K(r),a=e=>{var n=U(),r=K(n);f(r,()=>t.child,()=>({props:V(d)})),h(e,n)},o=e=>{var n=Zi();G(n,()=>({...V(d)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(i,e=>{t.child?e(a):e(o,-1)}),h(e,r)},$$slots:{default:!0}}),b()}var $i=new Set([`$$slots`,`$$events`,`$$legacy`,`child`,`children`,`ref`,`checked`,`id`,`onCheckedChange`,`disabled`,`onSelect`,`closeOnSelect`,`indeterminate`,`onIndeterminateChange`,`value`]),ea=m(`<div><!></div>`);function ta(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`checked`,15,!1),a=P(t,`id`,19,()=>Me(n)),o=P(t,`onCheckedChange`,3,Xt),s=P(t,`disabled`,3,!1),c=P(t,`onSelect`,3,Xt),u=P(t,`closeOnSelect`,3,!0),d=P(t,`indeterminate`,15,!1),p=P(t,`onIndeterminateChange`,3,Xt),m=P(t,`value`,3,``),g=H(t,$i),_=di.getOr(null);_&&m()&&(_.opts.value.current.includes(m())?i(!0):i(!1)),Rt.pre(()=>m(),()=>{_&&m()&&(_.opts.value.current.includes(m())?i(!0):i(!1))});let v=Oi.create({checked:Y(()=>i(),e=>{e!==i()&&(i(e),o()(e))}),id:Y(()=>a()),disabled:Y(()=>s()),onSelect:Y(()=>x),ref:Y(()=>r(),e=>r(e)),closeOnSelect:Y(()=>u()),indeterminate:Y(()=>d(),e=>{e!==d()&&(d(e),p()(e))}),value:Y(()=>m())},_);function x(e){c()(e),!e.defaultPrevented&&v.toggleChecked()}let S=y(()=>J(g,v.props));var C=U(),w=K(C),T=e=>{var n=U(),r=K(n);f(r,()=>t.child,()=>({checked:i(),indeterminate:d(),props:V(S)})),h(e,n)},k=e=>{var n=ea();G(n,()=>({...V(S)}));var r=N(n);f(r,()=>t.children??E,()=>({checked:i(),indeterminate:d()})),O(n),h(e,n)};D(w,e=>{t.child?e(T):e(k,-1)}),h(e,C),b()}function na(e,t){l(t,!0);let n=P(t,`open`,15,!1),r=P(t,`dir`,3,`ltr`),i=P(t,`onOpenChange`,3,Xt),a=P(t,`onOpenChangeComplete`,3,Xt),o=P(t,`_internal_variant`,3,`dropdown-menu`),s=P(t,`_internal_should_skip_exit_animation`,3,void 0),c=Si.create({variant:Y(()=>o()),dir:Y(()=>r()),onClose:()=>{n(!1),i()(!1)},shouldSkipExitAnimation:()=>s()?.()??!1});Ci.create({open:Y(()=>n(),e=>{n(e),i()(e)}),onOpenChangeComplete:Y(()=>a())},c),Ye(e,{children:(e,n)=>{var r=U(),i=K(r);f(i,()=>t.children??E),h(e,r)},$$slots:{default:!0}}),b()}var ra=new Set([`$$slots`,`$$events`,`$$legacy`,`id`,`child`,`children`,`ref`,`loop`,`onInteractOutside`,`onEscapeKeydown`,`onCloseAutoFocus`,`forceMount`,`trapFocus`,`style`]),ia=m(`<div><div><!></div></div>`);function aa(e,t){let n=A();l(t,!0);let r=P(t,`id`,19,()=>Me(n)),i=P(t,`ref`,15,null),a=P(t,`loop`,3,!0),o=P(t,`onInteractOutside`,3,Xt),s=P(t,`onEscapeKeydown`,3,Xt),c=P(t,`onCloseAutoFocus`,3,Xt),u=P(t,`forceMount`,3,!1),d=P(t,`trapFocus`,3,!1),p=H(t,ra),m=wi.create({id:Y(()=>r()),loop:Y(()=>a()),ref:Y(()=>i(),e=>i(e)),onCloseAutoFocus:Y(()=>c())}),g=y(()=>J(p,m.props));function _(e){if(m.handleInteractOutside(e),!e.defaultPrevented&&(o()(e),!e.defaultPrevented)){if(e.target&&e.target instanceof Element){let t=`[${m.parentMenu.root.getBitsAttr(`sub-content`)}]`;if(e.target.closest(t))return}m.parentMenu.onClose()}}function v(e){s()(e),!e.defaultPrevented&&m.parentMenu.onClose()}var x=U(),S=K(x),C=e=>{et(e,W(()=>V(g),()=>m.popperProps,{get ref(){return m.opts.ref},get enabled(){return m.parentMenu.opts.open.current},onInteractOutside:_,onEscapeKeydown:v,get trapFocus(){return d()},get loop(){return a()},forceMount:!0,get id(){return r()},get shouldRender(){return m.shouldRender},popper:(e,n)=>{let r=()=>(n?.()).props,i=()=>(n?.()).wrapperProps,a=y(()=>J(r(),{style:Xe(`dropdown-menu`)},{style:t.style}));var o=U(),s=K(o),c=e=>{var n=U(),r=K(n);{let e=y(()=>({props:V(a),wrapperProps:i(),...m.snippetProps}));f(r,()=>t.child,()=>V(e))}h(e,n)},l=e=>{var n=ia();G(n,()=>({...i()}));var r=N(n);G(r,()=>({...V(a)}));var o=N(r);f(o,()=>t.children??E),O(r),O(n),h(e,n)};D(s,e=>{t.child?e(c):e(l,-1)}),h(e,o)},$$slots:{popper:!0}}))},w=e=>{Ze(e,W(()=>V(g),()=>m.popperProps,{get ref(){return m.opts.ref},get open(){return m.parentMenu.opts.open.current},onInteractOutside:_,onEscapeKeydown:v,get trapFocus(){return d()},get loop(){return a()},forceMount:!1,get id(){return r()},get shouldRender(){return m.shouldRender},popper:(e,n)=>{let r=()=>(n?.()).props,i=()=>(n?.()).wrapperProps,a=y(()=>J(r(),{style:Xe(`dropdown-menu`)},{style:t.style}));var o=U(),s=K(o),c=e=>{var n=U(),r=K(n);{let e=y(()=>({props:V(a),wrapperProps:i(),...m.snippetProps}));f(r,()=>t.child,()=>V(e))}h(e,n)},l=e=>{var n=ia();G(n,()=>({...i()}));var r=N(n);G(r,()=>({...V(a)}));var o=N(r);f(o,()=>t.children??E),O(r),O(n),h(e,n)};D(s,e=>{t.child?e(c):e(l,-1)}),h(e,o)},$$slots:{popper:!0}}))};D(S,e=>{u()?e(C):u()||e(w,1)}),h(e,x),b()}var oa=new Set([`$$slots`,`$$events`,`$$legacy`,`id`,`ref`,`child`,`children`,`disabled`,`type`]),sa=m(`<button><!></button>`);function ca(e,t){let n=A();l(t,!0);let r=P(t,`id`,19,()=>Me(n)),i=P(t,`ref`,15,null),a=P(t,`disabled`,3,!1),o=P(t,`type`,3,`button`),s=H(t,oa),c=Mi.create({id:Y(()=>r()),disabled:Y(()=>a()??!1),ref:Y(()=>i(),e=>i(e))}),u=y(()=>J(s,c.props,{type:o()}));Qe(e,{get id(){return r()},get ref(){return c.opts.ref},children:(e,n)=>{var r=U(),i=K(r),a=e=>{var n=U(),r=K(n);f(r,()=>t.child,()=>({props:V(u)})),h(e,n)},o=e=>{var n=sa();G(n,()=>({...V(u)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(i,e=>{t.child?e(a):e(o,-1)}),h(e,r)},$$slots:{default:!0}}),b()}var la=null,ua=new WeakMap;function da(){return la??=new ResizeObserver(e=>{for(let t of e){let e=ua.get(t.target);if(e)for(let t of[...e])t()}}),la}function fa(e,t){let n=ua.get(e);return n===void 0?(n=new Set,ua.set(e,n),n.add(t),da().observe(e)):(n.add(t),t()),()=>{let n=ua.get(e);n&&(n.delete(t),!n.size&&(ua.delete(e),la?.unobserve(e)))}}var pa=class{#e;#t;constructor(e,t){this.#e=e,this.#t=t,this.handler=this.handler.bind(this),ce(this.handler)}handler(){let e=0,t=this.#e();if(!t)return;let n=fa(t,()=>{cancelAnimationFrame(e),e=window.requestAnimationFrame(this.#t)});return()=>{window.cancelAnimationFrame(e),n()}}},ma=class{opts;present;#e;#t=w(!1);#n=!1;#r=w(void 0);#i=null;constructor(e){this.opts=e,this.present=this.opts.open,i(this.#t,e.open.current,!0),this.#e=new Wt({ref:this.opts.ref,afterTick:this.opts.open}),Et(()=>this.#o()),Rt(()=>this.present.current,e=>{if(!this.#n){this.#n=!0;return}this.#o(),e&&i(this.#t,!0),i(this.#r,e?`starting`:`ending`,!0),e&&(this.#i=window.requestAnimationFrame(()=>{this.#i=null,this.present.current&&i(this.#r,void 0)})),this.#e.run(()=>{e===this.present.current&&(e||i(this.#t,!1),i(this.#r,void 0))})})}#a=y(()=>V(this.#t));get isPresent(){return V(this.#a)}set isPresent(e){i(this.#a,e)}get transitionStatus(){return V(this.#r)}#o(){this.#i!==null&&(window.cancelAnimationFrame(this.#i),this.#i=null)}};function ha(e,t){l(t,!0);let n=new ma({open:Y(()=>t.open),ref:t.ref});var r=U(),i=K(r),a=e=>{var r=U(),i=K(r);f(i,()=>t.presence??E,()=>({present:n.isPresent,transitionStatus:n.transitionStatus})),h(e,r)};D(i,e=>{(t.forceMount||t.open||n.isPresent)&&e(a)}),h(e,r),b()}function ga(e,t,n){return Math.min(n,Math.max(t,e))}var _a=class{state;#e;constructor(e,t){this.state=Ce(e),this.#e=t,this.dispatch=this.dispatch.bind(this)}#t(e){return this.#e[this.state.current][e]??this.state.current}dispatch(e){this.state.current=this.#t(e)}},va=Oe({component:`scroll-area`,parts:[`root`,`viewport`,`corner`,`thumb`,`scrollbar`]}),ya=new Mt(`ScrollArea.Root`),ba=new Mt(`ScrollArea.Scrollbar`),xa=new Mt(`ScrollArea.ScrollbarVisible`),Sa=new Mt(`ScrollArea.ScrollbarAxis`),Ca=new Mt(`ScrollArea.ScrollbarShared`),wa=class e{static create(t){return ya.set(new e(t))}opts;attachment;#e=w(null);get scrollAreaNode(){return V(this.#e)}set scrollAreaNode(e){i(this.#e,e,!0)}#t=w(null);get viewportNode(){return V(this.#t)}set viewportNode(e){i(this.#t,e,!0)}#n=w(null);get contentNode(){return V(this.#n)}set contentNode(e){i(this.#n,e,!0)}#r=w(null);get scrollbarXNode(){return V(this.#r)}set scrollbarXNode(e){i(this.#r,e,!0)}#i=w(null);get scrollbarYNode(){return V(this.#i)}set scrollbarYNode(e){i(this.#i,e,!0)}#a=w(0);get cornerWidth(){return V(this.#a)}set cornerWidth(e){i(this.#a,e,!0)}#o=w(0);get cornerHeight(){return V(this.#o)}set cornerHeight(e){i(this.#o,e,!0)}#s=w(!1);get scrollbarXEnabled(){return V(this.#s)}set scrollbarXEnabled(e){i(this.#s,e,!0)}#c=w(!1);get scrollbarYEnabled(){return V(this.#c)}set scrollbarYEnabled(e){i(this.#c,e,!0)}domContext;constructor(e){this.opts=e,this.attachment=Ne(e.ref,e=>this.scrollAreaNode=e),this.domContext=new jt(e.ref)}#l=y(()=>({id:this.opts.id.current,dir:this.opts.dir.current,style:{position:`relative`,"--bits-scroll-area-corner-height":`${this.cornerHeight}px`,"--bits-scroll-area-corner-width":`${this.cornerWidth}px`},[va.root]:``,...this.attachment}));get props(){return V(this.#l)}set props(e){i(this.#l,e)}},Ta=class e{static create(t){return new e(t,ya.get())}opts;root;attachment;#e=Ce(Jt());#t=Ce(null);contentAttachment=Ne(this.#t,e=>this.root.contentNode=e);constructor(e,t){this.opts=e,this.root=t,this.attachment=Ne(e.ref,e=>this.root.viewportNode=e)}#n=y(()=>({id:this.opts.id.current,style:{overflowX:this.root.scrollbarXEnabled?`scroll`:`hidden`,overflowY:this.root.scrollbarYEnabled?`scroll`:`hidden`},[va.viewport]:``,...this.attachment}));get props(){return V(this.#n)}set props(e){i(this.#n,e)}#r=y(()=>({id:this.#e.current,"data-scroll-area-content":``,style:{minWidth:this.root.scrollbarXEnabled?`fit-content`:void 0},...this.contentAttachment}));get contentProps(){return V(this.#r)}set contentProps(e){i(this.#r,e)}},Ea=class e{static create(t){return ba.set(new e(t,ya.get()))}opts;root;#e=y(()=>this.opts.orientation.current===`horizontal`);get isHorizontal(){return V(this.#e)}set isHorizontal(e){i(this.#e,e)}#t=w(!1);get hasThumb(){return V(this.#t)}set hasThumb(e){i(this.#t,e,!0)}constructor(e,t){this.opts=e,this.root=t,Rt(()=>this.isHorizontal,e=>e?(this.root.scrollbarXEnabled=!0,()=>{this.root.scrollbarXEnabled=!1}):(this.root.scrollbarYEnabled=!0,()=>{this.root.scrollbarYEnabled=!1}))}},Da=class e{static create(){return new e(ba.get())}scrollbar;root;#e=w(!1);get isVisible(){return V(this.#e)}set isVisible(e){i(this.#e,e,!0)}constructor(e){this.scrollbar=e,this.root=e.root,ce(()=>{let e=this.root.scrollAreaNode,t=this.root.opts.scrollHideDelay.current,n=0;if(!e)return;let r=ke(fe(e,`pointerenter`,()=>{this.root.domContext.clearTimeout(n),de(()=>this.isVisible=!0)}),fe(e,`pointerleave`,()=>{n&&this.root.domContext.clearTimeout(n),n=this.root.domContext.setTimeout(()=>{de(()=>{this.scrollbar.hasThumb=!1,this.isVisible=!1})},t)}));return()=>{this.root.domContext.getWindow().clearTimeout(n),r()}})}#t=y(()=>({"data-state":this.isVisible?`visible`:`hidden`}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},Oa=class e{static create(){return new e(ba.get())}scrollbar;root;machine=new _a(`hidden`,{hidden:{SCROLL:`scrolling`},scrolling:{SCROLL_END:`idle`,POINTER_ENTER:`interacting`},interacting:{SCROLL:`interacting`,POINTER_LEAVE:`idle`},idle:{HIDE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`interacting`}});#e=y(()=>this.machine.state.current===`hidden`);get isHidden(){return V(this.#e)}set isHidden(e){i(this.#e,e)}constructor(e){this.scrollbar=e,this.root=e.root;let t=kt(()=>this.machine.dispatch(`SCROLL_END`),100);ce(()=>{let e=this.machine.state.current,t=this.root.opts.scrollHideDelay.current;if(e===`idle`){let e=this.root.domContext.setTimeout(()=>this.machine.dispatch(`HIDE`),t);return()=>this.root.domContext.clearTimeout(e)}}),ce(()=>{let e=this.root.viewportNode;if(!e)return;let n=this.scrollbar.isHorizontal?`scrollLeft`:`scrollTop`,r=e[n];return fe(e,`scroll`,()=>{let i=e[n];r!==i&&(this.machine.dispatch(`SCROLL`),t()),r=i})}),this.onpointerenter=this.onpointerenter.bind(this),this.onpointerleave=this.onpointerleave.bind(this)}onpointerenter(e){this.machine.dispatch(`POINTER_ENTER`)}onpointerleave(e){this.machine.dispatch(`POINTER_LEAVE`)}#t=y(()=>({"data-state":this.machine.state.current===`hidden`?`hidden`:`visible`,onpointerenter:this.onpointerenter,onpointerleave:this.onpointerleave}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},ka=class e{static create(){return new e(ba.get())}scrollbar;root;#e=w(!1);get isVisible(){return V(this.#e)}set isVisible(e){i(this.#e,e,!0)}constructor(e){this.scrollbar=e,this.root=e.root;let t=()=>{let e=this.root.viewportNode;if(!e)return;let t=e.offsetWidth<e.scrollWidth,n=e.offsetHeight<e.scrollHeight;this.isVisible=this.scrollbar.isHorizontal?t:n};new pa(()=>this.root.viewportNode,t),new pa(()=>this.root.contentNode,t)}#t=y(()=>({"data-state":this.isVisible?`visible`:`hidden`}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},Aa=class e{static create(){return xa.set(new e(ba.get()))}scrollbar;root;#e=w(null);get thumbNode(){return V(this.#e)}set thumbNode(e){i(this.#e,e,!0)}#t=w(0);get pointerOffset(){return V(this.#t)}set pointerOffset(e){i(this.#t,e,!0)}#n=w({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}});get sizes(){return V(this.#n)}set sizes(e){i(this.#n,e)}#r=y(()=>La(this.sizes.viewport,this.sizes.content));get thumbRatio(){return V(this.#r)}set thumbRatio(e){i(this.#r,e)}#i=y(()=>this.thumbRatio>0&&this.thumbRatio<1);get hasThumb(){return V(this.#i)}set hasThumb(e){i(this.#i,e)}#a=w(``);get prevTransformStyle(){return V(this.#a)}set prevTransformStyle(e){i(this.#a,e,!0)}constructor(e){this.scrollbar=e,this.root=e.root,ce(()=>{this.scrollbar.hasThumb=this.hasThumb}),ce(()=>{!this.scrollbar.hasThumb&&this.thumbNode&&(this.prevTransformStyle=this.thumbNode.style.transform)})}setSizes(e){this.sizes=e}getScrollPosition(e,t){return za({pointerPos:e,pointerOffset:this.pointerOffset,sizes:this.sizes,dir:t})}onThumbPointerUp(){this.pointerOffset=0}onThumbPointerDown(e){this.pointerOffset=e}xOnThumbPositionChange(){if(!(this.root.viewportNode&&this.thumbNode))return;let e=this.root.viewportNode.scrollLeft,t=`translate3d(${Ba({scrollPos:e,sizes:this.sizes,dir:this.root.opts.dir.current})}px, 0, 0)`;this.thumbNode.style.transform=t,this.prevTransformStyle=t}xOnWheelScroll(e){this.root.viewportNode&&(this.root.viewportNode.scrollLeft=e)}xOnDragScroll(e){this.root.viewportNode&&(this.root.viewportNode.scrollLeft=this.getScrollPosition(e,this.root.opts.dir.current))}yOnThumbPositionChange(){if(!(this.root.viewportNode&&this.thumbNode))return;let e=this.root.viewportNode.scrollTop,t=`translate3d(0, ${Ba({scrollPos:e,sizes:this.sizes})}px, 0)`;this.thumbNode.style.transform=t,this.prevTransformStyle=t}yOnWheelScroll(e){this.root.viewportNode&&(this.root.viewportNode.scrollTop=e)}yOnDragScroll(e){this.root.viewportNode&&(this.root.viewportNode.scrollTop=this.getScrollPosition(e,this.root.opts.dir.current))}},ja=class e{static create(t){return Sa.set(new e(t,xa.get()))}opts;scrollbarVis;root;scrollbar;attachment;#e=w();get computedStyle(){return V(this.#e)}set computedStyle(e){i(this.#e,e,!0)}constructor(e,t){this.opts=e,this.scrollbarVis=t,this.root=t.root,this.scrollbar=t.scrollbar,this.attachment=Ne(this.scrollbar.opts.ref,e=>this.root.scrollbarXNode=e),ce(()=>{this.scrollbar.opts.ref.current&&this.opts.mounted.current&&(this.computedStyle=getComputedStyle(this.scrollbar.opts.ref.current))}),ce(()=>{this.onResize()})}onThumbPointerDown=e=>{this.scrollbarVis.onThumbPointerDown(e.x)};onDragScroll=e=>{this.scrollbarVis.xOnDragScroll(e.x)};onThumbPointerUp=()=>{this.scrollbarVis.onThumbPointerUp()};onThumbPositionChange=()=>{this.scrollbarVis.xOnThumbPositionChange()};onWheelScroll=(e,t)=>{if(!this.root.viewportNode)return;let n=this.root.viewportNode.scrollLeft+e.deltaX;this.scrollbarVis.xOnWheelScroll(n),Ha(n,t)&&e.preventDefault()};onResize=()=>{this.scrollbar.opts.ref.current&&this.root.viewportNode&&this.computedStyle&&this.scrollbarVis.setSizes({content:this.root.viewportNode.scrollWidth,viewport:this.root.viewportNode.offsetWidth,scrollbar:{size:this.scrollbar.opts.ref.current.clientWidth,paddingStart:Ia(this.computedStyle.paddingLeft),paddingEnd:Ia(this.computedStyle.paddingRight)}})};#t=y(()=>Ra(this.scrollbarVis.sizes));get thumbSize(){return V(this.#t)}set thumbSize(e){i(this.#t,e)}#n=y(()=>({id:this.scrollbar.opts.id.current,"data-orientation":`horizontal`,style:{bottom:0,left:this.root.opts.dir.current===`rtl`?`var(--bits-scroll-area-corner-width)`:0,right:this.root.opts.dir.current===`ltr`?`var(--bits-scroll-area-corner-width)`:0,"--bits-scroll-area-thumb-width":`${this.thumbSize}px`},...this.attachment}));get props(){return V(this.#n)}set props(e){i(this.#n,e)}},Ma=class e{static create(t){return Sa.set(new e(t,xa.get()))}opts;scrollbarVis;root;scrollbar;attachment;#e=w();get computedStyle(){return V(this.#e)}set computedStyle(e){i(this.#e,e,!0)}constructor(e,t){this.opts=e,this.scrollbarVis=t,this.root=t.root,this.scrollbar=t.scrollbar,this.attachment=Ne(this.scrollbar.opts.ref,e=>this.root.scrollbarYNode=e),ce(()=>{this.scrollbar.opts.ref.current&&this.opts.mounted.current&&(this.computedStyle=getComputedStyle(this.scrollbar.opts.ref.current))}),ce(()=>{this.onResize()}),this.onThumbPointerDown=this.onThumbPointerDown.bind(this),this.onDragScroll=this.onDragScroll.bind(this),this.onThumbPointerUp=this.onThumbPointerUp.bind(this),this.onThumbPositionChange=this.onThumbPositionChange.bind(this),this.onWheelScroll=this.onWheelScroll.bind(this),this.onResize=this.onResize.bind(this)}onThumbPointerDown(e){this.scrollbarVis.onThumbPointerDown(e.y)}onDragScroll(e){this.scrollbarVis.yOnDragScroll(e.y)}onThumbPointerUp(){this.scrollbarVis.onThumbPointerUp()}onThumbPositionChange(){this.scrollbarVis.yOnThumbPositionChange()}onWheelScroll(e,t){if(!this.root.viewportNode)return;let n=this.root.viewportNode.scrollTop+e.deltaY;this.scrollbarVis.yOnWheelScroll(n),Ha(n,t)&&e.preventDefault()}onResize(){this.scrollbar.opts.ref.current&&this.root.viewportNode&&this.computedStyle&&this.scrollbarVis.setSizes({content:this.root.viewportNode.scrollHeight,viewport:this.root.viewportNode.offsetHeight,scrollbar:{size:this.scrollbar.opts.ref.current.clientHeight,paddingStart:Ia(this.computedStyle.paddingTop),paddingEnd:Ia(this.computedStyle.paddingBottom)}})}#t=y(()=>Ra(this.scrollbarVis.sizes));get thumbSize(){return V(this.#t)}set thumbSize(e){i(this.#t,e)}#n=y(()=>({id:this.scrollbar.opts.id.current,"data-orientation":`vertical`,style:{top:0,right:this.root.opts.dir.current===`ltr`?0:void 0,left:this.root.opts.dir.current===`rtl`?0:void 0,bottom:`var(--bits-scroll-area-corner-height)`,"--bits-scroll-area-thumb-height":`${this.thumbSize}px`},...this.attachment}));get props(){return V(this.#n)}set props(e){i(this.#n,e)}},Na=class e{static create(){return Ca.set(new e(Sa.get()))}scrollbarState;root;scrollbarVis;scrollbar;#e=w(null);get rect(){return V(this.#e)}set rect(e){i(this.#e,e)}#t=w(``);get prevWebkitUserSelect(){return V(this.#t)}set prevWebkitUserSelect(e){i(this.#t,e,!0)}handleResize;handleThumbPositionChange;handleWheelScroll;handleThumbPointerDown;handleThumbPointerUp;#n=y(()=>this.scrollbarVis.sizes.content-this.scrollbarVis.sizes.viewport);get maxScrollPos(){return V(this.#n)}set maxScrollPos(e){i(this.#n,e)}constructor(e){this.scrollbarState=e,this.root=e.root,this.scrollbarVis=e.scrollbarVis,this.scrollbar=e.scrollbarVis.scrollbar,this.handleResize=()=>this.scrollbarState.onResize(),this.handleThumbPositionChange=this.scrollbarState.onThumbPositionChange,this.handleWheelScroll=this.scrollbarState.onWheelScroll,this.handleThumbPointerDown=this.scrollbarState.onThumbPointerDown,this.handleThumbPointerUp=this.scrollbarState.onThumbPointerUp,ce(()=>{let e=this.maxScrollPos,t=this.scrollbar.opts.ref.current;return this.root.viewportNode,fe(this.root.domContext.getDocument(),`wheel`,n=>{let r=n.target;t?.contains(r)&&this.handleWheelScroll(n,e)},{passive:!1})}),ie(()=>{this.scrollbarVis.sizes,de(()=>this.handleThumbPositionChange())}),new pa(()=>this.scrollbar.opts.ref.current,this.handleResize),new pa(()=>this.root.contentNode,this.handleResize),this.onpointerdown=this.onpointerdown.bind(this),this.onpointermove=this.onpointermove.bind(this),this.onpointerup=this.onpointerup.bind(this),this.onlostpointercapture=this.onlostpointercapture.bind(this)}handleDragScroll(e){if(!this.rect)return;let t=e.clientX-this.rect.left,n=e.clientY-this.rect.top;this.scrollbarState.onDragScroll({x:t,y:n})}#r(){this.rect!==null&&(this.root.domContext.getDocument().body.style.webkitUserSelect=this.prevWebkitUserSelect,this.root.viewportNode&&(this.root.viewportNode.style.scrollBehavior=``),this.rect=null)}onpointerdown(e){e.button===0&&(e.target.setPointerCapture(e.pointerId),this.rect=this.scrollbar.opts.ref.current?.getBoundingClientRect()??null,this.prevWebkitUserSelect=this.root.domContext.getDocument().body.style.webkitUserSelect,this.root.domContext.getDocument().body.style.webkitUserSelect=`none`,this.root.viewportNode&&(this.root.viewportNode.style.scrollBehavior=`auto`),this.handleDragScroll(e))}onpointermove(e){this.handleDragScroll(e)}onpointerup(e){let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),this.#r()}onlostpointercapture(e){this.#r()}#i=y(()=>J({...this.scrollbarState.props,style:{position:`absolute`,...this.scrollbarState.props.style},[va.scrollbar]:``,onpointerdown:this.onpointerdown,onpointermove:this.onpointermove,onpointerup:this.onpointerup,onlostpointercapture:this.onlostpointercapture}));get props(){return V(this.#i)}set props(e){i(this.#i,e)}},Pa=class e{static create(t){return new e(t,Ca.get())}opts;scrollbarState;attachment;#e;#t=w();#n=kt(()=>{V(this.#t)&&(V(this.#t)(),i(this.#t,void 0))},100);constructor(e,t){this.opts=e,this.scrollbarState=t,this.#e=t.root,this.attachment=Ne(this.opts.ref,e=>this.scrollbarState.scrollbarVis.thumbNode=e),ce(()=>{let e=this.#e.viewportNode;return e?(de(()=>this.scrollbarState.handleThumbPositionChange()),fe(e,`scroll`,()=>{if(this.#n(),!V(this.#t)){let t=Ua(e,this.scrollbarState.handleThumbPositionChange);i(this.#t,t,!0),this.scrollbarState.handleThumbPositionChange()}})):void 0}),this.onpointerdowncapture=this.onpointerdowncapture.bind(this),this.onpointerup=this.onpointerup.bind(this)}onpointerdowncapture(e){let t=e.target;if(!t)return;let n=t.getBoundingClientRect(),r=e.clientX-n.left,i=e.clientY-n.top;this.scrollbarState.handleThumbPointerDown({x:r,y:i})}onpointerup(e){this.scrollbarState.handleThumbPointerUp()}#r=y(()=>({id:this.opts.id.current,"data-state":this.scrollbarState.scrollbarVis.hasThumb?`visible`:`hidden`,style:{width:`var(--bits-scroll-area-thumb-width)`,height:`var(--bits-scroll-area-thumb-height)`,transform:this.scrollbarState.scrollbarVis.prevTransformStyle},onpointerdowncapture:this.onpointerdowncapture,onpointerup:this.onpointerup,[va.thumb]:``,...this.attachment}));get props(){return V(this.#r)}set props(e){i(this.#r,e)}},Fa=class e{static create(t){return new e(t,ya.get())}opts;root;attachment;#e=w(0);#t=w(0);#n=y(()=>!!(V(this.#e)&&V(this.#t)));get hasSize(){return V(this.#n)}set hasSize(e){i(this.#n,e)}constructor(e,t){this.opts=e,this.root=t,this.attachment=Ne(this.opts.ref),new pa(()=>this.root.scrollbarXNode,()=>{let e=this.root.scrollbarXNode?.offsetHeight||0;this.root.cornerHeight=e,i(this.#t,e,!0)}),new pa(()=>this.root.scrollbarYNode,()=>{let e=this.root.scrollbarYNode?.offsetWidth||0;this.root.cornerWidth=e,i(this.#e,e,!0)})}#r=y(()=>({id:this.opts.id.current,style:{width:V(this.#e),height:V(this.#t),position:`absolute`,right:this.root.opts.dir.current===`ltr`?0:void 0,left:this.root.opts.dir.current===`rtl`?0:void 0,bottom:0},[va.corner]:``,...this.attachment}));get props(){return V(this.#r)}set props(e){i(this.#r,e)}};function Ia(e){return e?Number.parseInt(e,10):0}function La(e,t){let n=e/t;return Number.isNaN(n)?0:n}function Ra(e){let t=La(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}function za({pointerPos:e,pointerOffset:t,sizes:n,dir:r=`ltr`}){let i=Ra(n),a=i/2,o=t||a,s=i-o,c=n.scrollbar.paddingStart+o,l=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,d=r===`ltr`?[0,u]:[u*-1,0];return Va([c,l],d)(e)}function Ba({scrollPos:e,sizes:t,dir:n=`ltr`}){let r=Ra(t),i=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-i,o=t.content-t.viewport,s=a-r,c=n===`ltr`?[0,o]:[o*-1,0],l=ga(e,c[0],c[1]);return Va([0,o],[0,s])(l)}function Va(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function Ha(e,t){return e>0&&e<t}function Ua(e,t){let n={left:e.scrollLeft,top:e.scrollTop},r=0,i=It(e);return(function a(){let o={left:e.scrollLeft,top:e.scrollTop},s=n.left!==o.left,c=n.top!==o.top;(s||c)&&t(),n=o,r=i.requestAnimationFrame(a)})(),()=>i.cancelAnimationFrame(r)}var Wa=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`id`,`type`,`dir`,`scrollHideDelay`,`children`,`child`]),Ga=m(`<div><!></div>`);function Ka(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`id`,19,()=>Me(n)),a=P(t,`type`,3,`hover`),o=P(t,`dir`,3,`ltr`),s=P(t,`scrollHideDelay`,3,600),c=H(t,Wa),u=wa.create({type:Y(()=>a()),dir:Y(()=>o()),scrollHideDelay:Y(()=>s()),id:Y(()=>i()),ref:Y(()=>r(),e=>r(e))}),d=y(()=>J(c,u.props));var p=U(),m=K(p),g=e=>{var n=U(),r=K(n);f(r,()=>t.child,()=>({props:V(d)})),h(e,n)},_=e=>{var n=Ga();G(n,()=>({...V(d)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(m,e=>{t.child?e(g):e(_,-1)}),h(e,p),b()}var qa=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`id`,`children`]),Ja=m(`<div><div><!></div></div>`);function Ya(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`id`,19,()=>Me(n)),a=H(t,qa),o=Ta.create({id:Y(()=>i()),ref:Y(()=>r(),e=>r(e))}),s=y(()=>J(a,o.props)),c=y(()=>J({},o.contentProps));var u=Ja();G(u,()=>({...V(s)}));var d=N(u);G(d,()=>({...V(c)}));var p=N(d);f(p,()=>t.children??E),O(d),O(u),h(e,u),b()}var Xa=new Set([`$$slots`,`$$events`,`$$legacy`,`child`,`children`]),Za=m(`<div><!></div>`);function Qa(e,t){l(t,!0);let n=H(t,Xa),r=Na.create(),i=y(()=>J(n,r.props));var a=U(),o=K(a),s=e=>{var n=U(),r=K(n);f(r,()=>t.child,()=>({props:V(i)})),h(e,n)},c=e=>{var n=Za();G(n,()=>({...V(i)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(o,e=>{t.child?e(s):e(c,-1)}),h(e,a),b()}var $a=new Set([`$$slots`,`$$events`,`$$legacy`]);function eo(e,t){l(t,!0);let n=H(t,$a),r=new At,i=ja.create({mounted:Y(()=>r.current)}),a=y(()=>J(n,i.props));Qa(e,W(()=>V(a))),b()}var to=new Set([`$$slots`,`$$events`,`$$legacy`]);function no(e,t){l(t,!0);let n=H(t,to),r=new At,i=Ma.create({mounted:Y(()=>r.current)}),a=y(()=>J(n,i.props));Qa(e,W(()=>V(a))),b()}var ro=new Set([`$$slots`,`$$events`,`$$legacy`]);function io(e,t){l(t,!0);let n=H(t,ro),r=Aa.create();var i=U(),a=K(i),o=e=>{eo(e,W(()=>n))},s=e=>{no(e,W(()=>n))};D(a,e=>{r.scrollbar.opts.orientation.current===`horizontal`?e(o):e(s,-1)}),h(e,i),b()}var ao=new Set([`$$slots`,`$$events`,`$$legacy`,`forceMount`]);function oo(e,t){l(t,!0);let n=P(t,`forceMount`,3,!1),r=H(t,ao),i=ka.create(),a=y(()=>J(r,i.props));{let t=e=>{io(e,W(()=>V(a)))},r=y(()=>n()||i.isVisible);ha(e,{get open(){return V(r)},get ref(){return i.scrollbar.opts.ref},presence:t,$$slots:{presence:!0}})}b()}var so=new Set([`$$slots`,`$$events`,`$$legacy`,`forceMount`]);function co(e,t){l(t,!0);let n=P(t,`forceMount`,3,!1),r=H(t,so),i=Oa.create(),a=y(()=>J(r,i.props));{let t=e=>{io(e,W(()=>V(a)))},r=y(()=>n()||!i.isHidden);ha(e,W(()=>V(a),{get open(){return V(r)},get ref(){return i.scrollbar.opts.ref},presence:t,$$slots:{presence:!0}}))}b()}var lo=new Set([`$$slots`,`$$events`,`$$legacy`,`forceMount`]);function uo(e,t){l(t,!0);let n=P(t,`forceMount`,3,!1),r=H(t,lo),i=Da.create(),a=ka.create(),o=y(()=>J(r,i.props,a.props,{"data-state":i.isVisible?`visible`:`hidden`})),s=y(()=>n()||i.isVisible&&a.isVisible);ha(e,{get open(){return V(s)},get ref(){return a.scrollbar.opts.ref},presence:e=>{io(e,W(()=>V(o)))},$$slots:{presence:!0}}),b()}var fo=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`id`,`orientation`]);function po(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`id`,19,()=>Me(n)),a=H(t,fo),o=Ea.create({orientation:Y(()=>t.orientation),id:Y(()=>i()),ref:Y(()=>r(),e=>r(e))}),s=y(()=>o.root.opts.type.current);var c=U(),u=K(c),d=e=>{uo(e,W(()=>a,{get id(){return i()}}))},f=e=>{co(e,W(()=>a,{get id(){return i()}}))},p=e=>{oo(e,W(()=>a,{get id(){return i()}}))},m=e=>{io(e,W(()=>a,{get id(){return i()}}))};D(u,e=>{V(s)===`hover`?e(d):V(s)===`scroll`?e(f,1):V(s)===`auto`?e(p,2):V(s)===`always`&&e(m,3)}),h(e,c),b()}var mo=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`id`,`child`,`children`,`present`]),ho=m(`<div><!></div>`);function go(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,mo),i=new At,a=Pa.create({id:Y(()=>t.id),ref:Y(()=>n(),e=>n(e)),mounted:Y(()=>i.current)}),o=y(()=>J(r,a.props,{style:{hidden:!t.present}}));var s=U(),c=K(s),u=e=>{var n=U(),r=K(n);f(r,()=>t.child,()=>({props:V(o)})),h(e,n)},d=e=>{var n=ho();G(n,()=>({...V(o)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(c,e=>{t.child?e(u):e(d,-1)}),h(e,s),b()}var _o=new Set([`$$slots`,`$$events`,`$$legacy`,`id`,`ref`,`forceMount`]);function vo(e,t){let n=A();l(t,!0);let r=P(t,`id`,19,()=>Me(n)),i=P(t,`ref`,15,null),a=P(t,`forceMount`,3,!1),o=H(t,_o),s=xa.get();{let t=(e,t)=>{let n=()=>(t?.()).present;go(e,W(()=>o,{get id(){return r()},get present(){return n()},get ref(){return i()},set ref(e){i(e)}}))},n=y(()=>a()||s.hasThumb);ha(e,{get open(){return V(n)},get ref(){return s.scrollbar.opts.ref},presence:t,$$slots:{presence:!0}})}b()}var yo=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`id`,`children`,`child`]),bo=m(`<div><!></div>`);function xo(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,yo),i=Fa.create({id:Y(()=>t.id),ref:Y(()=>n(),e=>n(e))}),a=y(()=>J(r,i.props));var o=U(),s=K(o),c=e=>{var n=U(),r=K(n);f(r,()=>t.child,()=>({props:V(a)})),h(e,n)},u=e=>{var n=bo();G(n,()=>({...V(a)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(s,e=>{t.child?e(c):e(u,-1)}),h(e,o),b()}var So=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`id`]);function Co(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`id`,19,()=>Me(n)),a=H(t,So),o=ya.get(),s=y(()=>!!(o.scrollbarXNode&&o.scrollbarYNode)),c=y(()=>o.opts.type.current!==`scroll`&&V(s));var u=U(),d=K(u),f=e=>{xo(e,W(()=>a,{get id(){return i()},get ref(){return r()},set ref(e){r(e)}}))};D(d,e=>{V(c)&&e(f)}),h(e,u),b()}function wo(e,t,n){let r={position:`absolute`};return e===`lr`?(r.left=`${t}%`,r.right=`${n}%`):e===`rl`?(r.right=`${t}%`,r.left=`${n}%`):e===`bt`?(r.bottom=`${t}%`,r.top=`${n}%`):(r.top=`${t}%`,r.bottom=`${n}%`),r}function To(e,t){let n={position:`absolute`};return e===`lr`?(n.left=`${t}%`,n.translate=`-50% 0`):e===`rl`?(n.right=`${t}%`,n.translate=`50% 0`):e===`bt`?(n.bottom=`${t}%`,n.translate=`0 50%`):(n.top=`${t}%`,n.translate=`0 -50%`),n}function Eo(e,t,n){let r={position:`absolute`};return e===`lr`?(r.left=`${t}%`,r.translate=`${n}% 0`):e===`rl`?(r.right=`${t}%`,r.translate=`${-n}% 0`):e===`bt`?(r.bottom=`${t}%`,r.translate=`0 ${-n}%`):(r.top=`${t}%`,r.translate=`0 ${n}%`),r}function Do(e){if(Math.floor(e)===e)return 0;let t=e.toString();if(t.indexOf(`.`)!==-1&&t.indexOf(`e-`)===-1)return t.split(`.`)[1].length;if(t.indexOf(`e-`)!==-1){let e=t.split(`e-`);return parseInt(e[1],10)}return 0}function Oo(e,t){let n=10**t;return Math.round(e*n)/n}function ko(e,t,n){if(typeof e==`number`){let r=n-t,i=Math.ceil(r/e),a=Do(e),o=10**a;Math.round(r*o)%Math.round(e*o)===0&&i++;let s=[];for(let n=0;n<i;n++){let r=Oo(t+n*e,a);s.push(r)}return s}return[...new Set(e)].filter(e=>e>=t&&e<=n).sort((e,t)=>e-t)}function Ao(e,t){if(t.length===0)return e;let n=t[0],r=Math.abs(e-n);for(let i of t){let t=Math.abs(e-i);t<r&&(r=t,n=i)}return n}function jo(e,t,n){let r=t.indexOf(e);return r===-1?Ao(e,t):n===`next`?r<t.length-1?t[r+1]:e:r>0?t[r-1]:e}function Mo(e,t,n=!0){let[r,i]=e,[a,o]=t,s=(o-a)/(i-r);return e=>{let t=a+s*(e-r);return n?t>Math.max(a,o)?Math.max(a,o):t<Math.min(a,o)?Math.min(a,o):t:t}}var No=Oe({component:`slider`,parts:[`root`,`thumb`,`range`,`tick`,`tick-label`,`thumb-label`]}),Po=new Mt(`Slider.Root`),Fo=class{opts;attachment;#e=w(!1);get isActive(){return V(this.#e)}set isActive(e){i(this.#e,e,!0)}#t=w(0);#n=y(()=>this.opts.orientation.current===`horizontal`?this.opts.dir.current===`rtl`?`rl`:`lr`:this.opts.dir.current===`rtl`?`tb`:`bt`);get direction(){return V(this.#n)}set direction(e){i(this.#n,e)}#r=y(()=>ko(this.opts.step.current,this.opts.min.current,this.opts.max.current));get normalizedSteps(){return V(this.#r)}set normalizedSteps(e){i(this.#r,e)}domContext;constructor(e){this.opts=e,this.attachment=Ne(e.ref),this.domContext=new jt(this.opts.ref),new pa(()=>this.opts.ref.current,this.#i)}#i=()=>{i(this.#t,V(this.#t)+1)};isThumbActive(e){return this.isActive}#a=y(()=>{if(!this.opts.disabled.current)return this.opts.orientation.current===`horizontal`?`pan-y`:`pan-x`});getAllThumbs=()=>{let e=this.opts.ref.current;return e?Array.from(e.querySelectorAll(No.selector(`thumb`))):[]};getThumbScale=()=>{V(this.#t);let e=this.opts.trackPadding?.current;if(e!==void 0&&e>0)return[e,100-e];if(this.opts.thumbPositioning.current===`exact`)return[0,100];let t=this.opts.orientation.current===`vertical`,n=this.getAllThumbs()[0],r=t?n?.offsetHeight:n?.offsetWidth;if(r===void 0||Number.isNaN(r)||r===0)return[0,100];let i=t?this.opts.ref.current?.offsetHeight:this.opts.ref.current?.offsetWidth;if(i===void 0||Number.isNaN(i)||i===0)return[0,100];let a=r/2/i*100;return[a,100-a]};getPositionFromValue=e=>{let t=this.getThumbScale();return Mo([this.opts.min.current,this.opts.max.current],t)(e)};#o=y(()=>({id:this.opts.id.current,"data-orientation":this.opts.orientation.current,"data-disabled":De(this.opts.disabled.current),style:{touchAction:V(this.#a)},[No.root]:``,...this.attachment}));get props(){return V(this.#o)}set props(e){i(this.#o,e)}},Io=class extends Fo{opts;isMulti=!1;constructor(e){super(e),this.opts=e,rn(()=>ke(fe(this.domContext.getDocument(),`pointerdown`,this.handlePointerDown),fe(this.domContext.getDocument(),`pointerup`,this.handlePointerUp),fe(this.domContext.getDocument(),`pointermove`,this.handlePointerMove),fe(this.domContext.getDocument(),`pointerleave`,this.handlePointerUp))),Rt([()=>this.opts.step.current,()=>this.opts.min.current,()=>this.opts.max.current,()=>this.opts.value.current],([e,t,n,r])=>{let i=ko(e,t,n),a=e=>i.includes(e),o=e=>Ao(e,i);a(r)||(this.opts.value.current=o(r))})}isTickValueSelected=e=>this.opts.value.current===e;applyPosition({clientXY:e,start:t,end:n}){let r=this.opts.min.current,i=this.opts.max.current,a=(e-t)/(n-t)*(i-r)+r;if(a<r)this.updateValue(r);else if(a>i)this.updateValue(i);else{let e=this.normalizedSteps,t=Ao(a,e);this.updateValue(t)}}updateValue=e=>{this.opts.value.current=Ao(e,this.normalizedSteps)};handlePointerMove=e=>{if(!this.isActive||this.opts.disabled.current)return;e.preventDefault(),e.stopPropagation();let t=this.opts.ref.current,n=this.getAllThumbs()[0];if(!t||!n)return;n.focus();let{left:r,right:i,top:a,bottom:o}=t.getBoundingClientRect();this.direction===`lr`?this.applyPosition({clientXY:e.clientX,start:r,end:i}):this.direction===`rl`?this.applyPosition({clientXY:e.clientX,start:i,end:r}):this.direction===`bt`?this.applyPosition({clientXY:e.clientY,start:o,end:a}):this.direction===`tb`&&this.applyPosition({clientXY:e.clientY,start:a,end:o})};handlePointerDown=e=>{if(e.button!==0||this.opts.disabled.current)return;let t=this.opts.ref.current,n=this.getAllThumbs()[0];if(!n||!t)return;let r=e.composedPath()[0]??e.target;zt(r)&&t.contains(r)&&(e.preventDefault(),n.focus(),this.isActive=!0,this.handlePointerMove(e))};handlePointerUp=()=>{this.opts.disabled.current||(this.isActive&&this.opts.onValueCommit.current(de(()=>this.opts.value.current)),this.isActive=!1)};#e=y(()=>{let e=this.opts.value.current;return Array.from({length:1},()=>{let t=e,n=this.getPositionFromValue(t),r=To(this.direction,n);return{role:`slider`,"aria-valuemin":this.opts.min.current,"aria-valuemax":this.opts.max.current,"aria-valuenow":t,"aria-disabled":Ae(this.opts.disabled.current),"aria-orientation":this.opts.orientation.current,"data-value":t,"data-orientation":this.opts.orientation.current,style:r,[No.thumb]:``}})});get thumbsPropsArr(){return V(this.#e)}set thumbsPropsArr(e){i(this.#e,e)}#t=y(()=>this.thumbsPropsArr.map((e,t)=>t));get thumbsRenderArr(){return V(this.#t)}set thumbsRenderArr(e){i(this.#t,e)}#n=y(()=>{let e=this.normalizedSteps,t=this.opts.value.current;return e.map((n,r)=>{let i=this.getPositionFromValue(n),a=r===0,o=r===e.length-1,s=a?0:o?-100:-50,c=Eo(this.direction,i,s),l=n<=t;return{"data-disabled":De(this.opts.disabled.current),"data-orientation":this.opts.orientation.current,"data-bounded":l?``:void 0,"data-value":n,"data-selected":this.isTickValueSelected(n)?``:void 0,style:c,[No.tick]:``}})});get ticksPropsArr(){return V(this.#n)}set ticksPropsArr(e){i(this.#n,e)}#r=y(()=>this.ticksPropsArr.map((e,t)=>t));get ticksRenderArr(){return V(this.#r)}set ticksRenderArr(e){i(this.#r,e)}#i=y(()=>this.ticksPropsArr.map((e,t)=>({value:e[`data-value`],index:t})));get tickItemsArr(){return V(this.#i)}set tickItemsArr(e){i(this.#i,e)}#a=y(()=>[{value:this.opts.value.current,index:0}]);get thumbItemsArr(){return V(this.#a)}set thumbItemsArr(e){i(this.#a,e)}#o=y(()=>({ticks:this.ticksRenderArr,thumbs:this.thumbsRenderArr,tickItems:this.tickItemsArr,thumbItems:this.thumbItemsArr}));get snippetProps(){return V(this.#o)}set snippetProps(e){i(this.#o,e)}},Lo=class extends Fo{opts;isMulti=!0;#e=w(null);get activeThumb(){return V(this.#e)}set activeThumb(e){i(this.#e,e,!0)}#t=w(0);get currentThumbIdx(){return V(this.#t)}set currentThumbIdx(e){i(this.#t,e,!0)}constructor(e){super(e),this.opts=e,rn(()=>ke(fe(this.domContext.getDocument(),`pointerdown`,this.handlePointerDown),fe(this.domContext.getDocument(),`pointerup`,this.handlePointerUp),fe(this.domContext.getDocument(),`pointermove`,this.handlePointerMove),fe(this.domContext.getDocument(),`pointerleave`,this.handlePointerUp))),Rt([()=>this.opts.step.current,()=>this.opts.min.current,()=>this.opts.max.current,()=>this.opts.value.current],([e,t,n,r])=>{let i=ko(e,t,n),a=e=>i.includes(e),o=e=>Ao(e,i);r.some(e=>!a(e))&&(this.opts.value.current=r.map(o))})}isTickValueSelected=e=>this.opts.value.current.includes(e);isThumbActive(e){return this.isActive&&this.activeThumb?.idx===e}applyPosition({clientXY:e,activeThumbIdx:t,start:n,end:r}){let i=this.opts.min.current,a=this.opts.max.current,o=(e-n)/(r-n)*(a-i)+i;if(o<i)this.updateValue(i,t);else if(o>a)this.updateValue(a,t);else{let e=this.normalizedSteps,n=Ao(o,e);this.updateValue(n,t)}}#n=e=>{let t=this.getAllThumbs();if(!t.length)return;for(let e of t)e.blur();let n=t.map(t=>{if(this.opts.orientation.current===`horizontal`){let{left:n,right:r}=t.getBoundingClientRect();return Math.abs(e.clientX-(n+r)/2)}{let{top:n,bottom:r}=t.getBoundingClientRect();return Math.abs(e.clientY-(n+r)/2)}}),r=t[n.indexOf(Math.min(...n))];return{node:r,idx:t.indexOf(r)}};handlePointerMove=e=>{if(!this.isActive||this.opts.disabled.current)return;e.preventDefault(),e.stopPropagation();let t=this.opts.ref.current,n=this.activeThumb;if(!t||!n)return;n.node.focus();let{left:r,right:i,top:a,bottom:o}=t.getBoundingClientRect(),s=this.direction;s===`lr`?this.applyPosition({clientXY:e.clientX,activeThumbIdx:n.idx,start:r,end:i}):s===`rl`?this.applyPosition({clientXY:e.clientX,activeThumbIdx:n.idx,start:i,end:r}):s===`bt`?this.applyPosition({clientXY:e.clientY,activeThumbIdx:n.idx,start:o,end:a}):s===`tb`&&this.applyPosition({clientXY:e.clientY,activeThumbIdx:n.idx,start:a,end:o})};handlePointerDown=e=>{if(e.button!==0||this.opts.disabled.current)return;let t=this.opts.ref.current,n=this.#n(e);if(!n||!t)return;let r=e.composedPath()[0]??e.target;zt(r)&&t.contains(r)&&(e.preventDefault(),this.activeThumb=n,n.node.focus(),this.isActive=!0,this.handlePointerMove(e))};handlePointerUp=()=>{this.opts.disabled.current||(this.isActive&&this.opts.onValueCommit.current(de(()=>this.opts.value.current)),this.isActive=!1)};getAllThumbs=()=>{let e=this.opts.ref.current;return e?Array.from(e.querySelectorAll(No.selector(`thumb`))):[]};updateValue=(e,t)=>{let n=this.opts.value.current;if(!n.length){this.opts.value.current.push(e);return}if(n[t]===e)return;let r=[...n];if(!ln(t,r))return;let i=r[t]>e?-1:1,a=()=>{let n=t+i;r[t]=r[n],r[n]=e;let a=this.getAllThumbs();a.length&&(a[n]?.focus(),this.activeThumb={node:a[n],idx:n})};if(this.opts.autoSort.current&&(i===-1&&e<r[t-1]||i===1&&e>r[t+1])){a(),this.opts.value.current=r;return}let o=this.normalizedSteps;r[t]=Ao(e,o),this.opts.value.current=r};#r=y(()=>{let e=this.opts.value.current;return Array.from({length:e.length||1},(t,n)=>{let r=de(()=>this.currentThumbIdx);r<e.length&&de(()=>{this.currentThumbIdx=r+1});let i=e[n],a=this.getPositionFromValue(i??0),o=To(this.direction,a);return{role:`slider`,"aria-valuemin":this.opts.min.current,"aria-valuemax":this.opts.max.current,"aria-valuenow":i,"aria-disabled":Ae(this.opts.disabled.current),"aria-orientation":this.opts.orientation.current,"data-value":i,"data-orientation":this.opts.orientation.current,style:o,[No.thumb]:``}})});get thumbsPropsArr(){return V(this.#r)}set thumbsPropsArr(e){i(this.#r,e)}#i=y(()=>this.thumbsPropsArr.map((e,t)=>t));get thumbsRenderArr(){return V(this.#i)}set thumbsRenderArr(e){i(this.#i,e)}#a=y(()=>{let e=this.normalizedSteps,t=this.opts.value.current;return e.map((n,r)=>{let i=this.getPositionFromValue(n),a=r===0,o=r===e.length-1,s=a?0:o?-100:-50,c=Eo(this.direction,i,s),l=t.length===1?n<=t[0]:t[0]<=n&&n<=t[t.length-1];return{"data-disabled":De(this.opts.disabled.current),"data-orientation":this.opts.orientation.current,"data-bounded":l?``:void 0,"data-value":n,style:c,[No.tick]:``}})});get ticksPropsArr(){return V(this.#a)}set ticksPropsArr(e){i(this.#a,e)}#o=y(()=>this.ticksPropsArr.map((e,t)=>t));get ticksRenderArr(){return V(this.#o)}set ticksRenderArr(e){i(this.#o,e)}#s=y(()=>this.ticksPropsArr.map((e,t)=>({value:e[`data-value`],index:t})));get tickItemsArr(){return V(this.#s)}set tickItemsArr(e){i(this.#s,e)}#c=y(()=>this.opts.value.current.map((e,t)=>({value:e,index:t})));get thumbItemsArr(){return V(this.#c)}set thumbItemsArr(e){i(this.#c,e)}#l=y(()=>({ticks:this.ticksRenderArr,thumbs:this.thumbsRenderArr,tickItems:this.tickItemsArr,thumbItems:this.thumbItemsArr}));get snippetProps(){return V(this.#l)}set snippetProps(e){i(this.#l,e)}},Ro=class{static create(e){let{type:t,...n}=e,r=t===`single`?new Io(n):new Lo(n);return Po.set(r)}},zo=[$t,Lt,Ot,Dt,Gt,`End`],Bo=class e{static create(t){return new e(t,Po.get())}opts;root;attachment;constructor(e,t){this.opts=e,this.root=t,this.attachment=Ne(e.ref)}#e=y(()=>{if(Array.isArray(this.root.opts.value.current)){let e=this.root.opts.value.current.length>1?this.root.getPositionFromValue(Math.min(...this.root.opts.value.current)??0):0,t=100-this.root.getPositionFromValue(Math.max(...this.root.opts.value.current)??0);return{position:`absolute`,...wo(this.root.direction,e,t)}}{let e=this.root.opts.trackPadding?.current,t=this.root.opts.value.current,n=this.root.opts.max.current,r=e!==void 0&&e>0&&t===n?0:100-this.root.getPositionFromValue(t);return{position:`absolute`,...wo(this.root.direction,0,r)}}});get rangeStyles(){return V(this.#e)}set rangeStyles(e){i(this.#e,e)}#t=y(()=>({id:this.opts.id.current,"data-orientation":this.root.opts.orientation.current,"data-disabled":De(this.root.opts.disabled.current),style:this.rangeStyles,[No.range]:``,...this.attachment}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},Vo=class e{static create(t){return new e(t,Po.get())}opts;root;attachment;#e=y(()=>this.root.opts.disabled.current||this.opts.disabled.current);constructor(e,t){this.opts=e,this.root=t,this.attachment=Ne(e.ref),this.onkeydown=this.onkeydown.bind(this)}#t(e){this.root.isMulti?this.root.updateValue(e,this.opts.index.current):this.root.updateValue(e)}onkeydown(e){if(V(this.#e))return;let t=this.opts.ref.current;if(!t)return;let n=this.root.getAllThumbs();if(!n.length)return;let r=n.indexOf(t);if(this.root.isMulti&&(this.root.currentThumbIdx=r),!zo.includes(e.key))return;e.preventDefault();let i=this.root.opts.min.current,a=this.root.opts.max.current,o=this.root.opts.value.current,s=Array.isArray(o)?o[r]:o,c=this.root.opts.orientation.current,l=this.root.direction,u=this.root.normalizedSteps;switch(e.key){case Gt:this.#t(i);break;case`End`:this.#t(a);break;case $t:if(c!==`horizontal`)break;if(e.metaKey){let e=l===`rl`?a:i;this.#t(e)}else{let e=jo(s,u,l===`rl`?`next`:`prev`);this.#t(e)}break;case Lt:if(c!==`horizontal`)break;if(e.metaKey){let e=l===`rl`?i:a;this.#t(e)}else{let e=jo(s,u,l===`rl`?`prev`:`next`);this.#t(e)}break;case Ot:if(e.metaKey){let e=l===`tb`?i:a;this.#t(e)}else{let e=jo(s,u,l===`tb`?`prev`:`next`);this.#t(e)}break;case Dt:if(e.metaKey){let e=l===`tb`?a:i;this.#t(e)}else{let e=jo(s,u,l===`tb`?`next`:`prev`);this.#t(e)}}this.root.opts.onValueCommit.current(this.root.opts.value.current)}#n=y(()=>({...this.root.thumbsPropsArr[this.opts.index.current],id:this.opts.id.current,onkeydown:this.onkeydown,"data-active":this.root.isThumbActive(this.opts.index.current)?``:void 0,"data-disabled":De(this.opts.disabled.current||this.root.opts.disabled.current),tabindex:this.opts.disabled.current||this.root.opts.disabled.current?-1:0,...this.attachment}));get props(){return V(this.#n)}set props(e){i(this.#n,e)}},Ho=new Set([`$$slots`,`$$events`,`$$legacy`,`children`,`child`,`id`,`ref`,`value`,`type`,`onValueChange`,`onValueCommit`,`disabled`,`min`,`max`,`step`,`dir`,`autoSort`,`orientation`,`thumbPositioning`,`trackPadding`]),Uo=m(`<span><!></span>`);function Wo(e,t){let n=A();l(t,!0);let r=P(t,`id`,19,()=>Me(n)),i=P(t,`ref`,15,null),a=P(t,`value`,15),o=P(t,`onValueChange`,3,Xt),s=P(t,`onValueCommit`,3,Xt),c=P(t,`disabled`,3,!1),u=P(t,`step`,3,1),d=P(t,`dir`,3,`ltr`),p=P(t,`autoSort`,3,!0),m=P(t,`orientation`,3,`horizontal`),g=P(t,`thumbPositioning`,3,`contain`),_=H(t,Ho),v=y(()=>t.min===void 0?Array.isArray(u())?Math.min(...u()):0:t.min),x=y(()=>t.max===void 0?Array.isArray(u())?Math.max(...u()):100:t.max);function S(){if(a()===void 0)return t.type===`single`?V(v):[]}S(),Rt.pre(()=>a(),()=>{S()});let C=Ro.create({id:Y(()=>r()),ref:Y(()=>i(),e=>i(e)),value:Y(()=>a(),e=>{a(e),o()(e)}),onValueCommit:Y(()=>s()),disabled:Y(()=>c()),min:Y(()=>V(v)),max:Y(()=>V(x)),step:Y(()=>u()),dir:Y(()=>d()),autoSort:Y(()=>p()),orientation:Y(()=>m()),thumbPositioning:Y(()=>g()),type:t.type,trackPadding:Y(()=>t.trackPadding)}),w=y(()=>J(_,C.props));var T=U(),k=K(T),j=e=>{var n=U(),r=K(n);{let e=y(()=>({props:V(w),...C.snippetProps}));f(r,()=>t.child,()=>V(e))}h(e,n)},M=e=>{var n=Uo();G(n,()=>({...V(w)}));var r=N(n);f(r,()=>t.children??E,()=>C.snippetProps),O(n),h(e,n)};D(k,e=>{t.child?e(j):e(M,-1)}),h(e,T),b()}var Go=new Set([`$$slots`,`$$events`,`$$legacy`,`children`,`child`,`ref`,`id`]),Ko=m(`<span><!></span>`);function qo(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`id`,19,()=>Me(n)),a=H(t,Go),o=Bo.create({id:Y(()=>i()),ref:Y(()=>r(),e=>r(e))}),s=y(()=>J(a,o.props));var c=U(),u=K(c),d=e=>{var n=U(),r=K(n);f(r,()=>t.child,()=>({props:V(s)})),h(e,n)},p=e=>{var n=Ko();G(n,()=>({...V(s)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(u,e=>{t.child?e(d):e(p,-1)}),h(e,c),b()}var Jo=new Set([`$$slots`,`$$events`,`$$legacy`,`children`,`child`,`ref`,`id`,`index`,`disabled`]),Yo=m(`<span><!></span>`);function Xo(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`id`,19,()=>Me(n)),a=P(t,`disabled`,3,!1),o=H(t,Jo),s=Vo.create({id:Y(()=>i()),ref:Y(()=>r(),e=>r(e)),index:Y(()=>t.index),disabled:Y(()=>a())}),c=y(()=>J(o,s.props));var u=U(),d=K(u),p=e=>{var n=U(),r=K(n);{let e=y(()=>({active:s.root.isThumbActive(s.opts.index.current),props:V(c)}));f(r,()=>t.child,()=>V(e))}h(e,n)},m=e=>{var n=Yo();G(n,()=>({...V(c)}));var r=N(n);{let e=y(()=>({active:s.root.isThumbActive(s.opts.index.current)}));f(r,()=>t.children??E,()=>V(e))}O(n),h(e,n)};D(d,e=>{t.child?e(p):e(m,-1)}),h(e,u),b()}var Zo=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`checked`,`indeterminate`,`class`]),Qo=m(`<div data-slot="checkbox-indicator" class="text-current transition-none"><!></div>`);function $o(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`checked`,15,!1),i=P(t,`indeterminate`,15,!1),a=H(t,Zo);var o=U(),s=K(o);{let e=(e,t)=>{let n=()=>(t?.()).checked,r=()=>(t?.()).indeterminate;var i=Qo(),a=N(i),o=e=>{$e(e,{class:`size-3.5`})},s=e=>{xt(e,{class:`size-3.5`})};D(a,e=>{n()?e(o):r()&&e(s,1)}),O(i),h(e,i)},o=y(()=>Pe(`peer size-4 shadow-xs flex shrink-0 items-center justify-center rounded-sm border border-input transition-shadow outline-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[state=checked]:border-primary data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:bg-input/30 dark:aria-invalid:ring-destructive/40 dark:data-[state=checked]:bg-primary`,t.class));c(s,()=>Ur,(t,s)=>{s(t,W({"data-slot":`checkbox`,get class(){return V(o)}},()=>a,{get ref(){return n()},set ref(e){n(e)},get checked(){return r()},set checked(e){r(e)},get indeterminate(){return i()},set indeterminate(e){i(e)},children:e,$$slots:{default:!0}}))})}h(e,o),b()}var es=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`value`,`orientation`,`class`,`thumbLabelledby`]),ts=m(`<span data-slot="slider-track"><!></span> <!>`,1);function ns(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`value`,15),i=P(t,`orientation`,3,`horizontal`),a=H(t,es);var o=U(),s=K(o);{let e=(e,n)=>{let r=()=>(n?.()).thumbs;var a=ts(),o=K(a),s=N(o);{let e=y(()=>Pe(`absolute bg-primary data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full`));c(s,()=>qo,(t,n)=>{n(t,{"data-slot":`slider-range`,get class(){return V(e)}})})}O(o);var l=I(o,2);S(l,16,r,e=>e,(e,n)=>{var r=U(),i=K(r);c(i,()=>Xo,(e,r)=>{r(e,{"data-slot":`slider-thumb`,get index(){return n},get"aria-labelledby"(){return t.thumbLabelledby},class:`size-4 shadow-sm block shrink-0 rounded-full border border-primary bg-background ring-ring/50 transition hover:ring-4 focus-visible:ring-4 focus-visible:ring-ring focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50`})}),h(e,r)}),z(e=>{F(o,`data-orientation`,i()),v(o,1,e)},[()=>re(Pe(`data-[orientation=horizontal]:h-1.5 data-[orientation=vertical]:w-1.5 relative grow overflow-hidden rounded-full bg-input data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full dark:bg-foreground/15`))]),h(e,a)},o=y(()=>Pe(`data-[orientation=vertical]:min-h-44 relative flex w-full touch-none items-center select-none data-[disabled]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col`,t.class));c(s,()=>Wo,(t,s)=>{s(t,W({"data-slot":`slider`,get orientation(){return i()},get class(){return V(o)}},()=>a,{get ref(){return n()},set ref(e){n(e)},get value(){return r()},set value(e){r(e)},children:e,$$slots:{default:!0}}))})}h(e,o),b()}var rs=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`checked`,`indeterminate`,`class`,`children`,`closeOnSelect`]),is=m(`<span class="right-2 pointer-events-none absolute flex items-center justify-center" data-slot="dropdown-menu-checkbox-item-indicator"><!></span> <!>`,1);function as(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`checked`,15,!1),i=P(t,`indeterminate`,15,!1),a=P(t,`closeOnSelect`,3,!1),o=H(t,rs);var s=U(),u=K(s);{let e=(e,n)=>{let r=()=>(n?.()).checked,i=()=>(n?.()).indeterminate;var a=is(),o=K(a),s=N(o),c=e=>{xt(e,{})},l=e=>{$e(e,{})};D(s,e=>{i()?e(c):r()&&e(l,1)}),O(o);var u=I(o,2);f(u,()=>t.children??E),h(e,a)},s=y(()=>Pe(`gap-1.5 py-1 pr-8 pl-1.5 text-sm data-inset:pl-7 [&_svg:not([class*='size-'])]:size-4 relative flex cursor-default items-center rounded-md outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0`,t.class));c(u,()=>ta,(t,c)=>{c(t,W({get closeOnSelect(){return a()},"data-slot":`dropdown-menu-checkbox-item`,get class(){return V(s)}},()=>o,{get ref(){return n()},set ref(e){n(e)},get checked(){return r()},set checked(e){r(e)},get indeterminate(){return i()},set indeterminate(e){i(e)},children:e,$$slots:{default:!0}}))})}h(e,s),b()}var os=new Set([`$$slots`,`$$events`,`$$legacy`]);function ss(e,t){let n=H(t,os);var r=U(),i=K(r);c(i,()=>Ht,(e,t)=>{t(e,W(()=>n))}),h(e,r)}var cs=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`sideOffset`,`align`,`portalProps`,`class`]);function ls(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`sideOffset`,3,4),i=P(t,`align`,3,`start`),a=H(t,cs);ss(e,W(()=>t.portalProps,{children:(e,o)=>{var s=U(),l=K(s);{let e=y(()=>Pe(`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 min-w-32 p-1 shadow-md z-50 max-h-(--bits-dropdown-menu-content-available-height) w-(--bits-dropdown-menu-anchor-width) origin-(--bits-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover text-popover-foreground ring-1 ring-foreground/10 duration-100 data-[state=closed]:overflow-hidden`,t.class));c(l,()=>aa,(t,o)=>{o(t,W({"data-slot":`dropdown-menu-content`,get sideOffset(){return r()},get align(){return i()},get class(){return V(e)}},()=>a,{get ref(){return n()},set ref(e){n(e)}}))})}h(e,s)},$$slots:{default:!0}})),b()}var us=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`inset`,`variant`]);function ds(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`variant`,3,`default`),i=H(t,us);var a=U(),o=K(a);{let e=y(()=>Pe(`gap-1.5 px-1.5 py-1 text-sm data-inset:pl-7 [&_svg:not([class*='size-'])]:size-4 group/dropdown-menu-item relative flex cursor-default items-center rounded-md outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 data-[variant=destructive]:*:[svg]:text-destructive`,t.class));c(o,()=>Li,(a,o)=>{o(a,W({"data-slot":`dropdown-menu-item`,get"data-inset"(){return t.inset},get"data-variant"(){return r()},get class(){return V(e)}},()=>i,{get ref(){return n()},set ref(e){n(e)}}))})}h(e,a),b()}var fs=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`value`]);function ps(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`value`,15),i=H(t,fs);var a=U(),o=K(a);c(o,()=>Ki,(e,t)=>{t(e,W({"data-slot":`dropdown-menu-radio-group`},()=>i,{get ref(){return n()},set ref(e){n(e)},get value(){return r()},set value(e){r(e)}}))}),h(e,a),b()}var ms=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`children`,`closeOnSelect`]),hs=m(`<span class="right-2 pointer-events-none absolute flex items-center justify-center" data-slot="dropdown-menu-radio-item-indicator"><!></span> <!>`,1);function gs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`closeOnSelect`,3,!1),i=H(t,ms);var a=U(),o=K(a);{let e=(e,n)=>{let r=()=>(n?.()).checked;var i=hs(),a=K(i),o=N(a),s=e=>{$e(e,{})};D(o,e=>{r()&&e(s)}),O(a);var c=I(a,2);f(c,()=>t.children??E,()=>({checked:r()})),h(e,i)},a=y(()=>Pe(`gap-1.5 py-1 pr-8 pl-1.5 text-sm data-inset:pl-7 [&_svg:not([class*='size-'])]:size-4 relative flex cursor-default items-center rounded-md outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0`,t.class));c(o,()=>Bi,(t,o)=>{o(t,W({get closeOnSelect(){return r()},"data-slot":`dropdown-menu-radio-item`,get class(){return V(a)}},()=>i,{get ref(){return n()},set ref(e){n(e)},children:e,$$slots:{default:!0}}))})}h(e,a),b()}var _s=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`]);function vs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,_s);var i=U(),a=K(i);{let e=y(()=>Pe(`-mx-1 my-1 h-px bg-border`,t.class));c(a,()=>Ui,(t,i)=>{i(t,W({"data-slot":`dropdown-menu-separator`,get class(){return V(e)}},()=>r,{get ref(){return n()},set ref(e){n(e)}}))})}h(e,i),b()}var ys=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`align`,`alignOffset`,`portalProps`]);function bs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`align`,3,`start`),i=P(t,`alignOffset`,19,()=>-3),a=H(t,ys);ss(e,W(()=>t.portalProps,{children:(e,o)=>{var s=U(),l=K(s);{let e=y(()=>Pe(`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 min-w-24 p-1 shadow-lg z-50 origin-(--bits-dropdown-menu-content-transform-origin) overflow-hidden rounded-lg bg-popover text-popover-foreground ring-1 ring-foreground/10 duration-100`,t.class));c(l,()=>Yi,(t,o)=>{o(t,W({"data-slot":`dropdown-menu-sub-content`,get align(){return r()},get alignOffset(){return i()},get class(){return V(e)}},()=>a,{get ref(){return n()},set ref(e){n(e)}}))})}h(e,s)},$$slots:{default:!0}})),b()}var xs=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`inset`,`children`]),Ss=m(`<!> <!>`,1);function Cs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,xs);var i=U(),a=K(i);{let e=y(()=>Pe(`gap-1.5 px-1.5 py-1 text-sm data-inset:pl-7 [&_svg:not([class*='size-'])]:size-4 flex cursor-default items-center rounded-md outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0`,t.class));c(a,()=>Qi,(i,a)=>{a(i,W({"data-slot":`dropdown-menu-sub-trigger`,get"data-inset"(){return t.inset},get class(){return V(e)}},()=>r,{get ref(){return n()},set ref(e){n(e)},children:(e,n)=>{var r=Ss(),i=K(r);f(i,()=>t.children??E);var a=I(i,2);rt(a,{class:`ml-auto`}),h(e,r)},$$slots:{default:!0}}))})}h(e,i),b()}var ws=new Set([`$$slots`,`$$events`,`$$legacy`,`open`]);function Ts(e,t){l(t,!0);let n=P(t,`open`,15,!1),r=H(t,ws);var i=U(),a=K(i);c(a,()=>Pi,(e,t)=>{t(e,W(()=>r,{get open(){return n()},set open(e){n(e)}}))}),h(e,i),b()}var Es=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`]);function Ds(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,Es);var i=U(),a=K(i);c(a,()=>ca,(e,t)=>{t(e,W({"data-slot":`dropdown-menu-trigger`},()=>r,{get ref(){return n()},set ref(e){n(e)}}))}),h(e,i),b()}var Os=new Set([`$$slots`,`$$events`,`$$legacy`,`open`]);function ks(e,t){l(t,!0);let n=P(t,`open`,15,!1),r=H(t,Os);var i=U(),a=K(i);c(a,()=>na,(e,t)=>{t(e,W(()=>r,{get open(){return n()},set open(e){n(e)}}))}),h(e,i),b()}var As=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`children`]),js=m(`<div><!></div>`);function Ms(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,As);var i=js();G(i,e=>({"data-slot":`empty-description`,class:e,...r}),[()=>Pe(`text-sm/relaxed text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary`,t.class)]);var a=N(i);f(a,()=>t.children??E),O(i),L(i,e=>n(e),()=>n()),h(e,i),b()}var Ns=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`children`]),Ps=m(`<div><!></div>`);function Fs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,Ns);var i=Ps();G(i,e=>({"data-slot":`empty-header`,class:e,...r}),[()=>Pe(`gap-2 max-w-sm flex flex-col items-center`,t.class)]);var a=N(i);f(a,()=>t.children??E),O(i),L(i,e=>n(e),()=>n()),h(e,i),b()}var Is=Ie({base:`mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0`,variants:{variant:{default:`bg-transparent`,icon:`bg-muted text-foreground flex size-8 shrink-0 items-center justify-center rounded-lg [&_svg:not([class*='size-'])]:size-4`}},defaultVariants:{variant:`default`}}),Ls=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`children`,`variant`]),Rs=m(`<div><!></div>`);function zs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`variant`,3,`default`),i=H(t,Ls);var a=Rs();G(a,e=>({"data-slot":`empty-icon`,"data-variant":r(),class:e,...i}),[()=>Pe(Is({variant:r()}),t.class)]);var o=N(a);f(o,()=>t.children??E),O(a),L(a,e=>n(e),()=>n()),h(e,a),b()}var Bs=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`children`]),Vs=m(`<div><!></div>`);function Hs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,Bs);var i=Vs();G(i,e=>({"data-slot":`empty-title`,class:e,...r}),[()=>Pe(`text-sm font-medium tracking-tight`,t.class)]);var a=N(i);f(a,()=>t.children??E),O(i),L(i,e=>n(e),()=>n()),h(e,i),b()}var Us=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`children`]),Ws=m(`<div><!></div>`);function Gs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,Us);var i=Ws();G(i,e=>({"data-slot":`empty`,class:e,...r}),[()=>Pe(`gap-4 p-6 min-w-0 flex w-full flex-1 flex-col items-center justify-center rounded-xl border-dashed text-center text-balance`,t.class)]);var a=N(i);f(a,()=>t.children??E),O(i),L(i,e=>n(e),()=>n()),h(e,i),b()}var Ks=new Set([`$$slots`,`$$events`,`$$legacy`,`class`,`role`,`name`,`color`,`stroke`,`className`,`aria-label`]);function qs(e,t){l(t,!0);let n=P(t,`role`,3,`status`),r=P(t,`aria-label`,3,`Loading`),i=H(t,Ks);{let a=y(()=>Pe(`size-4 animate-spin`,t.class));sr(e,W({get role(){return n()}},()=>t.name==null?{}:{name:t.name},()=>t.color==null?{}:{color:t.color},()=>t.stroke==null?{}:{stroke:t.stroke},()=>t.className==null?{}:{className:t.className},{get"aria-label"(){return r()},get class(){return V(a)}},()=>i))}b()}var Js=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`orientation`,`children`]),Ys=m(`<!> <!>`,1);function Xs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`orientation`,3,`vertical`),i=H(t,Js);var a=U(),o=K(a);{let e=y(()=>Pe(`flex touch-none p-px transition-colors select-none`,r()===`vertical`&&`w-2.5 h-full border-s border-s-transparent`,r()===`horizontal`&&`h-2.5 flex-col border-t border-t-transparent`,t.class));c(o,()=>po,(a,o)=>{o(a,W({"data-slot":`scroll-area-scrollbar`,get orientation(){return r()},get class(){return V(e)}},()=>i,{get ref(){return n()},set ref(e){n(e)},children:(e,n)=>{var r=Ys(),i=K(r);f(i,()=>t.children??E);var a=I(i,2);c(a,()=>vo,(e,t)=>{t(e,{"data-slot":`scroll-area-thumb`,class:`relative flex-1 rounded-full bg-border`})}),h(e,r)},$$slots:{default:!0}}))})}h(e,a),b()}var Zs=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`viewportRef`,`class`,`orientation`,`scrollbarXClasses`,`scrollbarYClasses`,`children`]),Qs=m(`<!> <!> <!> <!>`,1);function $s(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`viewportRef`,15,null),i=P(t,`orientation`,3,`vertical`),a=P(t,`scrollbarXClasses`,3,``),o=P(t,`scrollbarYClasses`,3,``),s=H(t,Zs);var u=U(),d=K(u);{let e=y(()=>Pe(`relative`,t.class));c(d,()=>Ka,(l,u)=>{u(l,W({"data-slot":`scroll-area`,get class(){return V(e)}},()=>s,{get ref(){return n()},set ref(e){n(e)},children:(e,n)=>{var s=Qs(),l=K(s);c(l,()=>Ya,(e,n)=>{n(e,{"data-slot":`scroll-area-viewport`,class:`size-full rounded-inherit ring-ring/10 outline-ring transition focus-visible:ring-4 focus-visible:outline-1 dark:ring-ring/20`,get ref(){return r()},set ref(e){r(e)},children:(e,n)=>{var r=U(),i=K(r);f(i,()=>t.children??E),h(e,r)},$$slots:{default:!0}})});var u=I(l,2),d=e=>{Xs(e,{orientation:`vertical`,get class(){return o()}})};D(u,e=>{(i()===`vertical`||i()===`both`)&&e(d)});var p=I(u,2),m=e=>{Xs(e,{orientation:`horizontal`,get class(){return a()}})};D(p,e=>{(i()===`horizontal`||i()===`both`)&&e(m)});var g=I(p,2);c(g,()=>Co,(e,t)=>{t(e,{})}),h(e,s)},$$slots:{default:!0}}))})}h(e,u),b()}function ec(e){return typeof e==`function`}function tc(e){return typeof e==`object`&&!!e}var nc=[`string`,`number`,`bigint`,`boolean`];function rc(e){return e==null||nc.includes(typeof e)?!0:Array.isArray(e)?e.every(e=>rc(e)):typeof e==`object`&&Object.getPrototypeOf(e)===Object.prototype}var ic=Symbol(`box`),ac=Symbol(`is-writable`);function oc(e){return tc(e)&&ic in e}function sc(e){return cc.isBox(e)&&ac in e}function cc(e){let t=w(pe(e));return{[ic]:!0,[ac]:!0,get current(){return V(t)},set current(e){i(t,e,!0)}}}function lc(e,t){let n=y(e);return t?{[ic]:!0,[ac]:!0,get current(){return V(n)},set current(e){t(e)}}:{[ic]:!0,get current(){return e()}}}function uc(e){return cc.isBox(e)?e:ec(e)?cc.with(e):cc(e)}function dc(e){return Object.entries(e).reduce((e,[t,n])=>cc.isBox(n)?(cc.isWritableBox(n)?Object.defineProperty(e,t,{get(){return n.current},set(e){n.current=e}}):Object.defineProperty(e,t,{get(){return n.current}}),e):Object.assign(e,{[t]:n}),{})}function fc(e){return cc.isWritableBox(e)?{[ic]:!0,get current(){return e.current}}:e}cc.from=uc,cc.with=lc,cc.flatten=dc,cc.readonly=fc,cc.isBox=oc,cc.isWritableBox=sc;function pc(...e){return function(t){for(let n of e)if(n){if(t.defaultPrevented)return;typeof n==`function`?n.call(this,t):n.current?.call(this,t)}}}var mc=/\d/,hc=[`-`,`_`,`/`,`.`];function gc(e=``){if(!mc.test(e))return e!==e.toLowerCase()}function _c(e){let t=[],n=``,r,i;for(let a of e){let e=hc.includes(a);if(e===!0){t.push(n),n=``,r=void 0;continue}let o=gc(a);if(i===!1){if(r===!1&&o===!0){t.push(n),n=a,r=o;continue}if(r===!0&&o===!1&&n.length>1){let e=n.at(-1);t.push(n.slice(0,Math.max(0,n.length-1))),n=e+a,r=o;continue}}n+=a,r=o,i=e}return t.push(n),t}function vc(e){return e?_c(e).map(e=>bc(e)).join(``):``}function yc(e){return xc(vc(e||``))}function bc(e){return e?e[0].toUpperCase()+e.slice(1):``}function xc(e){return e?e[0].toLowerCase()+e.slice(1):``}function Sc(e){if(!e)return{};let t={};function n(e,n){if(e.startsWith(`-moz-`)||e.startsWith(`-webkit-`)||e.startsWith(`-ms-`)||e.startsWith(`-o-`)){t[vc(e)]=n;return}if(e.startsWith(`--`)){t[e]=n;return}t[yc(e)]=n}return we(e,n),t}function Cc(...e){return(...t)=>{for(let n of e)typeof n==`function`&&n(...t)}}function wc(e,t,n,r){let i=Array.isArray(t)?t:[t];return i.forEach(t=>e.addEventListener(t,n,r)),()=>{i.forEach(t=>e.removeEventListener(t,n,r))}}function Tc(e,t){let n=RegExp(e,`g`);return e=>{if(typeof e!=`string`)throw TypeError(`expected an argument of type string, but got ${typeof e}`);return e.match(n)?e.replace(n,t):e}}var Ec=Tc(/[A-Z]/,e=>`-${e.toLowerCase()}`);function Dc(e){if(!e||typeof e!=`object`||Array.isArray(e))throw TypeError(`expected an argument of type object, but got ${typeof e}`);return Object.keys(e).map(t=>`${Ec(t)}: ${e[t]};`).join(`
1
+ import{$ as e,A as t,B as n,Bt as r,Ct as i,D as a,Dt as o,Et as s,F as c,Ft as l,G as u,Ht as d,I as f,It as p,J as m,K as h,L as g,Mt as _,O as v,Ot as y,Pt as b,Q as x,R as S,S as C,Tt as w,U as T,Ut as E,V as D,Vt as O,Wt as k,X as A,Y as j,Z as M,_t as N,a as P,b as F,bt as I,d as L,dt as ee,et as R,f as te,ft as z,g as ne,gt as B,it as V,k as re,mt as ie,n as ae,nt as oe,o as H,ot as se,pt as ce,q as U,r as le,rt as ue,s as W,st as de,tt as G,v as K,vt as q,xt as fe,y as pe,yt as J,z as me,zt as he}from"../chunks/Ba-r0_-2.js";import{t as ge}from"../chunks/uBIymjUX.js";import"../chunks/xihTtKlq.js";import{c as _e,s as ve,t as ye}from"../chunks/DUvhHBbp.js";import{i as be,r as xe}from"../chunks/DzyQ_co1.js";import{S as Se,T as Ce,c as we,d as Te,l as Ee,n as De,o as Oe,p as ke,r as Ae,s as je,t as Me,u as Ne,v as Y}from"../chunks/EqtCgIiZ.js";import{n as Pe,r as Fe,t as Ie}from"../chunks/BTfRz6RN.js";import{a as Le,i as Re,n as ze,o as Be,r as Ve,s as He,t as Ue}from"../chunks/CvgADDtH.js";import{t as We}from"../chunks/DBSPzQPv.js";import{i as Ge,n as Ke,r as qe,t as Je}from"../chunks/DApx_t3P.js";import{a as Ye,i as Xe,n as Ze,r as Qe,s as $e,t as et}from"../chunks/C4kqvBxK.js";import{t as tt}from"../chunks/DjHi6mXR.js";import{t as nt}from"../chunks/Dv5b2gPp.js";import{t as rt}from"../chunks/iXLKB61w.js";import{t as it}from"../chunks/D3pjwMEy.js";import{a as at,o as ot}from"../chunks/DcZHcdJQ.js";import{a as st,c as ct,d as lt,f as ut,i as dt,l as ft,n as pt,o as mt,p as ht,r as gt,s as _t,t as vt,u as yt}from"../chunks/CqD7l6Cl.js";import{t as bt}from"../chunks/BPGnmEnW.js";import{t as xt}from"../chunks/Dcc5ddMs.js";import{t as St}from"../chunks/eXrDYFg2.js";import{t as Ct}from"../chunks/D7zWW64Z.js";import{t as wt}from"../chunks/D9WemNep.js";import{t as Tt}from"../chunks/HH5LvOUY.js";import{B as Et,C as Dt,E as Ot,G as kt,H as At,I as jt,K as Mt,L as Nt,N as Pt,P as Ft,R as It,T as Lt,W as Rt,_ as zt,a as Bt,c as Vt,f as Ht,g as Ut,h as Wt,j as Gt,k as Kt,m as qt,n as Jt,o as Yt,p as Xt,s as Zt,v as Qt,w as $t,x as en,z as tn}from"../chunks/BOZ5vOAu.js";import{a as nn,c as rn,i as an,n as on,o as sn,r as cn,s as ln,t as un}from"../chunks/CE6epq0x.js";import{a as dn,i as fn,n as pn,r as mn,t as hn}from"../chunks/D8WbMyuC.js";import{t as gn}from"../chunks/Dv3-2Xhq.js";import{a as _n,i as vn,n as yn,r as bn,t as xn}from"../chunks/XvwhKzXf.js";import{t as Sn}from"../chunks/EZBWh3tv.js";import{t as Cn}from"../chunks/BI9-w-xL.js";import{t as wn}from"../chunks/BOP3gakV.js";import{n as Tn,t as En}from"../chunks/BGqHu478.js";import{n as Dn}from"../chunks/Uv783rxq.js";import{t as On}from"../chunks/14fs_RYy.js";import{t as kn}from"../chunks/DqR8kuM6.js";var An=new Set([`$$slots`,`$$events`,`$$legacy`]);function jn(e,t){let n=H(t,An),r={name:`box`,size:24,node:[[`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`}],[`path`,{d:`m3.3 7 8.7 5 8.7-5`}],[`path`,{d:`M12 22V12`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Mn=new Set([`$$slots`,`$$events`,`$$legacy`]);function Nn(e,t){let n=H(t,Mn),r={name:`camera`,size:24,node:[[`path`,{d:`M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z`}],[`circle`,{cx:`12`,cy:`13`,r:`3`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Pn=new Set([`$$slots`,`$$events`,`$$legacy`]);function Fn(e,t){let n=H(t,Pn),r={name:`chevrons-down-up`,size:24,node:[[`path`,{d:`m7 20 5-5 5 5`}],[`path`,{d:`m7 4 5 5 5-5`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var In=new Set([`$$slots`,`$$events`,`$$legacy`]);function Ln(e,t){let n=H(t,In),r={name:`chevrons-up-down`,size:24,node:[[`path`,{d:`m7 15 5 5 5-5`}],[`path`,{d:`m7 9 5-5 5 5`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Rn=new Set([`$$slots`,`$$events`,`$$legacy`]);function zn(e,t){let n=H(t,Rn),r={name:`circle-question-mark`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`}],[`path`,{d:`M12 17h.01`}]],aliases:[`help-circle`,`circle-help`]};Fe(e,W(()=>n,{get icon(){return r}}))}var Bn=new Set([`$$slots`,`$$events`,`$$legacy`]);function Vn(e,t){let n=H(t,Bn),r={name:`download`,size:24,node:[[`path`,{d:`M12 15V3`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`}],[`path`,{d:`m7 10 5 5 5-5`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Hn=new Set([`$$slots`,`$$events`,`$$legacy`]);function Un(e,t){let n=H(t,Hn),r={name:`eye-off`,size:24,node:[[`path`,{d:`M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49`}],[`path`,{d:`M14.084 14.158a3 3 0 0 1-4.242-4.242`}],[`path`,{d:`M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143`}],[`path`,{d:`m2 2 20 20`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Wn=new Set([`$$slots`,`$$events`,`$$legacy`]);function Gn(e,t){let n=H(t,Wn),r={name:`eye`,size:24,node:[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Kn=new Set([`$$slots`,`$$events`,`$$legacy`]);function qn(e,t){let n=H(t,Kn),r={name:`file`,size:24,node:[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Jn=new Set([`$$slots`,`$$events`,`$$legacy`]);function Yn(e,t){let n=H(t,Jn),r={name:`folder`,size:24,node:[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Xn=new Set([`$$slots`,`$$events`,`$$legacy`]);function Zn(e,t){let n=H(t,Xn),r={name:`frame`,size:24,node:[[`line`,{x1:`22`,x2:`2`,y1:`6`,y2:`6`}],[`line`,{x1:`22`,x2:`2`,y1:`18`,y2:`18`}],[`line`,{x1:`6`,x2:`6`,y1:`2`,y2:`22`}],[`line`,{x1:`18`,x2:`18`,y1:`2`,y2:`22`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Qn=new Set([`$$slots`,`$$events`,`$$legacy`]);function $n(e,t){let n=H(t,Qn),r={name:`grid-3x3`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`}],[`path`,{d:`M3 9h18`}],[`path`,{d:`M3 15h18`}],[`path`,{d:`M9 3v18`}],[`path`,{d:`M15 3v18`}]],aliases:[`grid`,`grid-3-x-3`]};Fe(e,W(()=>n,{get icon(){return r}}))}var er=new Set([`$$slots`,`$$events`,`$$legacy`]);function tr(e,t){let n=H(t,er),r={name:`inbox`,size:24,node:[[`polyline`,{points:`22 12 16 12 14 15 10 15 8 12 2 12`}],[`path`,{d:`M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var nr=new Set([`$$slots`,`$$events`,`$$legacy`]);function rr(e,t){let n=H(t,nr),r={name:`layers`,size:24,node:[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`}]],aliases:[`layers-3`]};Fe(e,W(()=>n,{get icon(){return r}}))}var ir=new Set([`$$slots`,`$$events`,`$$legacy`]);function ar(e,t){let n=H(t,ir),r={name:`link`,size:24,node:[[`path`,{d:`M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71`}],[`path`,{d:`M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var or=new Set([`$$slots`,`$$events`,`$$legacy`]);function sr(e,t){let n=H(t,or),r={name:`loader-circle`,size:24,node:[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`}]],aliases:[`loader-2`]};Fe(e,W(()=>n,{get icon(){return r}}))}var cr=new Set([`$$slots`,`$$events`,`$$legacy`]);function lr(e,t){let n=H(t,cr),r={name:`loader`,size:24,node:[[`path`,{d:`M12 2v4`}],[`path`,{d:`m16.2 7.8 2.9-2.9`}],[`path`,{d:`M18 12h4`}],[`path`,{d:`m16.2 16.2 2.9 2.9`}],[`path`,{d:`M12 18v4`}],[`path`,{d:`m4.9 19.1 2.9-2.9`}],[`path`,{d:`M2 12h4`}],[`path`,{d:`m4.9 4.9 2.9 2.9`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var ur=new Set([`$$slots`,`$$events`,`$$legacy`]);function dr(e,t){let n=H(t,ur),r={name:`maximize`,size:24,node:[[`path`,{d:`M8 3H5a2 2 0 0 0-2 2v3`}],[`path`,{d:`M21 8V5a2 2 0 0 0-2-2h-3`}],[`path`,{d:`M3 16v3a2 2 0 0 0 2 2h3`}],[`path`,{d:`M16 21h3a2 2 0 0 0 2-2v-3`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var fr=new Set([`$$slots`,`$$events`,`$$legacy`]);function pr(e,t){let n=H(t,fr),r={name:`minimize`,size:24,node:[[`path`,{d:`M8 3v3a2 2 0 0 1-2 2H3`}],[`path`,{d:`M21 8h-3a2 2 0 0 1-2-2V3`}],[`path`,{d:`M3 16h3a2 2 0 0 1 2 2v3`}],[`path`,{d:`M16 21v-3a2 2 0 0 1 2-2h3`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var mr=new Set([`$$slots`,`$$events`,`$$legacy`]);function hr(e,t){let n=H(t,mr),r={name:`palette`,size:24,node:[[`path`,{d:`M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z`}],[`circle`,{cx:`13.5`,cy:`6.5`,r:`.5`,fill:`currentColor`}],[`circle`,{cx:`17.5`,cy:`10.5`,r:`.5`,fill:`currentColor`}],[`circle`,{cx:`6.5`,cy:`12.5`,r:`.5`,fill:`currentColor`}],[`circle`,{cx:`8.5`,cy:`7.5`,r:`.5`,fill:`currentColor`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var gr=new Set([`$$slots`,`$$events`,`$$legacy`]);function _r(e,t){let n=H(t,gr),r={name:`ruler`,size:24,node:[[`path`,{d:`M21.3 15.3a2.4 2.4 0 0 1 0 3.4l-2.6 2.6a2.4 2.4 0 0 1-3.4 0L2.7 8.7a2.41 2.41 0 0 1 0-3.4l2.6-2.6a2.41 2.41 0 0 1 3.4 0Z`}],[`path`,{d:`m14.5 12.5 2-2`}],[`path`,{d:`m11.5 9.5 2-2`}],[`path`,{d:`m8.5 6.5 2-2`}],[`path`,{d:`m17.5 15.5 2-2`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var vr=new Set([`$$slots`,`$$events`,`$$legacy`]);function yr(e,t){let n=H(t,vr),r={name:`scan`,size:24,node:[[`path`,{d:`M3 7V5a2 2 0 0 1 2-2h2`}],[`path`,{d:`M17 3h2a2 2 0 0 1 2 2v2`}],[`path`,{d:`M21 17v2a2 2 0 0 1-2 2h-2`}],[`path`,{d:`M7 21H5a2 2 0 0 1-2-2v-2`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var br=new Set([`$$slots`,`$$events`,`$$legacy`]);function xr(e,t){let n=H(t,br),r={name:`settings-2`,size:24,node:[[`path`,{d:`M14 17H5`}],[`path`,{d:`M19 7h-9`}],[`circle`,{cx:`17`,cy:`17`,r:`3`}],[`circle`,{cx:`7`,cy:`7`,r:`3`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Sr=new Set([`$$slots`,`$$events`,`$$legacy`]);function Cr(e,t){let n=H(t,Sr),r={name:`spline`,size:24,node:[[`circle`,{cx:`19`,cy:`5`,r:`2`}],[`circle`,{cx:`5`,cy:`19`,r:`2`}],[`path`,{d:`M5 17A12 12 0 0 1 17 5`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var wr=new Set([`$$slots`,`$$events`,`$$legacy`]);function Tr(e,t){let n=H(t,wr),r={name:`square`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Er=new Set([`$$slots`,`$$events`,`$$legacy`]);function Dr(e,t){let n=H(t,Er),r={name:`zap`,size:24,node:[[`path`,{d:`M15.914 4a1.5 1.5 0 00-2.474-1.561l-9 9A1.5 1.5 0 005.5 14h4.002a.5.5 0 01.471.666L8.086 20a1.5 1.5 0 002.475 1.56l9-9A1.5 1.5 0 0018.5 10h-3.997a.5.5 0 01-.472-.667z`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Or=new Set([`$$slots`,`$$events`,`$$legacy`]);function kr(e,t){let n=H(t,Or),r={name:`zoom-in`,size:24,node:[[`circle`,{cx:`11`,cy:`11`,r:`8`}],[`line`,{x1:`21`,x2:`16.65`,y1:`21`,y2:`16.65`}],[`line`,{x1:`11`,x2:`11`,y1:`8`,y2:`14`}],[`line`,{x1:`8`,x2:`14`,y1:`11`,y2:`11`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Ar=new Set([`$$slots`,`$$events`,`$$legacy`]);function jr(e,t){let n=H(t,Ar),r={name:`zoom-out`,size:24,node:[[`circle`,{cx:`11`,cy:`11`,r:`8`}],[`line`,{x1:`21`,x2:`16.65`,y1:`21`,y2:`16.65`}],[`line`,{x1:`8`,x2:`14`,y1:`11`,y2:`11`}]]};Fe(e,W(()=>n,{get icon(){return r}}))}var Mr=class{eventName;options;constructor(e,t={bubbles:!0,cancelable:!0}){this.eventName=e,this.options=t}createEvent(e){return new CustomEvent(this.eventName,{...this.options,detail:e})}dispatch(e,t){let n=this.createEvent(t);return e.dispatchEvent(n),n}listen(e,t,n){return G(e,this.eventName,e=>{t(e)},n)}},Nr=Oe({component:`checkbox`,parts:[`root`,`group`,`group-label`,`input`]}),Pr=new Mt(`Checkbox.Group`),Fr=new Mt(`Checkbox.Root`),Ir=class e{static create(t,n=null){return Fr.set(new e(t,n))}opts;group;#e=y(()=>this.group&&this.group.opts.name.current?this.group.opts.name.current:this.opts.name.current);get trueName(){return V(this.#e)}set trueName(e){i(this.#e,e)}#t=y(()=>this.group&&this.group.opts.required.current?!0:this.opts.required.current);get trueRequired(){return V(this.#t)}set trueRequired(e){i(this.#t,e)}#n=y(()=>this.group&&this.group.opts.disabled.current?!0:this.opts.disabled.current);get trueDisabled(){return V(this.#n)}set trueDisabled(e){i(this.#n,e)}#r=y(()=>this.group&&this.group.opts.readonly.current?!0:this.opts.readonly.current);get trueReadonly(){return V(this.#r)}set trueReadonly(e){i(this.#r,e)}attachment;constructor(e,t){this.opts=e,this.group=t,this.attachment=Ne(this.opts.ref),this.onkeydown=this.onkeydown.bind(this),this.onclick=this.onclick.bind(this),Rt.pre([()=>he(this.group?.opts.value.current),()=>this.opts.value.current],([e,t])=>{e&&t&&(this.opts.checked.current=e.includes(t))}),Rt.pre(()=>this.opts.checked.current,e=>{this.group&&(e?this.group?.addValue(this.opts.value.current):this.group?.removeValue(this.opts.value.current))})}onkeydown(e){if(!(this.trueDisabled||this.trueReadonly)){if(e.key===`Enter`){e.preventDefault(),this.opts.type.current===`submit`&&e.currentTarget.closest(`form`)?.requestSubmit();return}e.key===` `&&(e.preventDefault(),this.#i())}}#i(){this.opts.indeterminate.current?(this.opts.indeterminate.current=!1,this.opts.checked.current=!0):this.opts.checked.current=!this.opts.checked.current}onclick(e){if(!(this.trueDisabled||this.trueReadonly)){if(this.opts.type.current===`submit`){this.#i();return}e.preventDefault(),this.#i()}}#a=y(()=>({checked:this.opts.checked.current,indeterminate:this.opts.indeterminate.current}));get snippetProps(){return V(this.#a)}set snippetProps(e){i(this.#a,e)}#o=y(()=>({id:this.opts.id.current,role:`checkbox`,type:this.opts.type.current,disabled:this.trueDisabled,"aria-checked":je(this.opts.checked.current,this.opts.indeterminate.current),"aria-required":Ae(this.trueRequired),"aria-readonly":Ae(this.trueReadonly),"data-disabled":De(this.trueDisabled),"data-readonly":De(this.trueReadonly),"data-state":Rr(this.opts.checked.current,this.opts.indeterminate.current),[Nr.root]:``,onclick:this.onclick,onkeydown:this.onkeydown,...this.attachment}));get props(){return V(this.#o)}set props(e){i(this.#o,e)}},Lr=class e{static create(){return new e(Fr.get())}root;#e=y(()=>this.root.group?!!(this.root.opts.value.current!==void 0&&this.root.group.opts.value.current.includes(this.root.opts.value.current)):this.root.opts.checked.current);get trueChecked(){return V(this.#e)}set trueChecked(e){i(this.#e,e)}#t=y(()=>!!this.root.trueName);get shouldRender(){return V(this.#t)}set shouldRender(e){i(this.#t,e)}constructor(e){this.root=e,this.onfocus=this.onfocus.bind(this)}onfocus(e){Qt(this.root.opts.ref.current)&&this.root.opts.ref.current.focus()}#n=y(()=>({type:`checkbox`,checked:this.root.opts.checked.current===!0,disabled:this.root.trueDisabled,required:this.root.trueRequired,name:this.root.trueName,form:this.root.opts.form.current,value:this.root.opts.value.current,readonly:this.root.trueReadonly,onfocus:this.onfocus}));get props(){return V(this.#n)}set props(e){i(this.#n,e)}};function Rr(e,t){return t?`indeterminate`:e?`checked`:`unchecked`}function zr(e,t){l(t,!0);let n=Lr.create();var r=U(),i=q(r),a=e=>{sn(e,W(()=>n.props))};D(i,e=>{n.shouldRender&&e(a)}),h(e,r),b()}var Br=new Set([`$$slots`,`$$events`,`$$legacy`,`checked`,`ref`,`onCheckedChange`,`children`,`disabled`,`required`,`name`,`form`,`value`,`id`,`indeterminate`,`onIndeterminateChange`,`child`,`type`,`readonly`]),Vr=m(`<button><!></button>`),Hr=m(`<!> <!>`,1);function Ur(e,t){let n=A();l(t,!0);let r=P(t,`checked`,15,!1),i=P(t,`ref`,15,null),a=P(t,`disabled`,3,!1),o=P(t,`required`,3,!1),s=P(t,`name`,3,void 0),c=P(t,`form`,3,void 0),u=P(t,`value`,3,`on`),d=P(t,`id`,19,()=>Me(n)),p=P(t,`indeterminate`,15,!1),m=P(t,`type`,3,`button`),g=H(t,Br),_=Pr.getOr(null);_&&u()&&(_.opts.value.current.includes(u())?r(!0):r(!1)),Rt.pre(()=>u(),()=>{_&&u()&&(_.opts.value.current.includes(u())?r(!0):r(!1))});let v=Ir.create({checked:Y(()=>r(),e=>{r(e),t.onCheckedChange?.(e)}),disabled:Y(()=>a()??!1),required:Y(()=>o()),name:Y(()=>s()),form:Y(()=>c()),value:Y(()=>u()),id:Y(()=>d()),ref:Y(()=>i(),e=>i(e)),indeterminate:Y(()=>p(),e=>{p(e),t.onIndeterminateChange?.(e)}),type:Y(()=>m()),readonly:Y(()=>!!t.readonly)},_),x=y(()=>Te({...g},v.props));var S=Hr(),C=q(S),w=e=>{var n=U(),r=q(n);{let e=y(()=>({props:V(x),...v.snippetProps}));f(r,()=>t.child,()=>V(e))}h(e,n)},T=e=>{var n=Vr();K(n,()=>({...V(x)}));var r=N(n);f(r,()=>t.children??E,()=>v.snippetProps),O(n),h(e,n)};D(C,e=>{t.child?e(w):e(T,-1)}),zr(I(C,2),{}),h(e,S),b()}var Wr=[Kt,` `],Gr=[Dt,Ft,Gt],Kr=[Ot,Pt,`End`],qr=[...Gr,...Kr],Jr={ltr:[...Wr,Lt],rtl:[...Wr,$t]},Yr={ltr:[$t],rtl:[Lt]};function Xr(e){return e===`indeterminate`}function Zr(e){return Xr(e)?`indeterminate`:e?`checked`:`unchecked`}function Qr(e){return e.pointerType===`mouse`}function $r(e,{select:t=!1}={}){if(!e||!e.focus)return;let n=Nt(e);if(n.activeElement===e)return;let r=n.activeElement;e.focus({preventScroll:!0}),e!==r&&en(e)&&t&&e.select()}function ei(e,{select:t=!1}={},n){let r=n();for(let i of e)if($r(i,{select:t}),n()!==r)return!0}var ti=w(!1),ni=class e{static _refs=0;static _cleanup;constructor(){ce(()=>(e._refs===0&&(e._cleanup=ee(()=>{let e=[],t=e=>{i(ti,!1)};return e.push(G(document,`pointerdown`,t,{capture:!0}),G(document,`keydown`,e=>{i(ti,!0)},{capture:!0})),ce(()=>{if(V(ti))return G(document,`pointermove`,t,{capture:!0})}),ke(...e)})),e._refs++,()=>{e._refs--,e._refs===0&&(i(ti,!1),e._cleanup?.())}))}get current(){return V(ti)}set current(e){i(ti,e,!0)}};function ri(){return{getShadowRoot:!0,displayCheck:typeof ResizeObserver==`function`&&ResizeObserver.toString().includes(`[native code]`)?`full`:`none`}}function ii(e,t){if(!Zt(e,ri()))return ai(e,t);let n=Nt(e),r=Vt(n.body,ri());t===`prev`&&r.reverse();let i=r.indexOf(e);return i===-1?n.body:r.slice(i+1)[0]}function ai(e,t){let n=Nt(e);if(!Yt(e,ri()))return n.body;let r=Bt(n.body,ri());t===`prev`&&r.reverse();let i=r.indexOf(e);return i===-1?n.body:r.slice(i+1).find(e=>Zt(e,ri()))??n.body}var oi=new Mt(`Menu.Root`),si=new Mt(`Menu.Root | Menu.Sub`),ci=new Mt(`Menu.Content`),li=new Mt(`Menu.Group | Menu.RadioGroup`),ui=new Mt(`Menu.RadioGroup`),di=new Mt(`Menu.CheckboxGroup`),fi=new Mr(`bitsmenuopen`,{bubbles:!1,cancelable:!0}),pi=Oe({component:`menu`,parts:[`trigger`,`content`,`sub-trigger`,`item`,`group`,`group-heading`,`checkbox-group`,`checkbox-item`,`radio-group`,`radio-item`,`separator`,`sub-content`,`arrow`]}),mi=class{#e;#t=null;#n=null;#r=!1;#i=null;#a=null;#o=null;#s=null;constructor(e){this.#e=e,Rt([e.triggerNode,e.contentNode,e.enabled],([e,t,n])=>{if(this.#_(),!e||!t||!n)return;let r=e=>{Qr(e)&&(this.#s={x:e.clientX,y:e.clientY},this.#r||this.#d(e,`content`))},i=e=>{Qr(e)&&this.#f(e,`content`)},a=e=>{Qr(e)&&(this.#r||this.#d(e,`trigger`))},o=e=>{if(Qr(e)){if(Ut(e.relatedTarget)){let n=this.#e.subContentSelector(),r=e.relatedTarget.closest(n);if(r&&r!==t&&r.id&&t.querySelector(`[aria-controls="${r.id}"]`))return}this.#f(e,`trigger`)}},s=e=>{Qr(e)&&this.#m()},c=e=>{Qr(e)&&this.#m()};return e.addEventListener(`pointermove`,r),e.addEventListener(`pointerleave`,i),e.addEventListener(`pointerenter`,s),t.addEventListener(`pointermove`,a),t.addEventListener(`pointerleave`,o),t.addEventListener(`pointerenter`,c),()=>{e.removeEventListener(`pointermove`,r),e.removeEventListener(`pointerleave`,i),e.removeEventListener(`pointerenter`,s),t.removeEventListener(`pointermove`,a),t.removeEventListener(`pointerleave`,o),t.removeEventListener(`pointerenter`,c),this.#_()}}),Et(()=>{this.#_()})}#c(){let e=this.#e.parentContentNode();return e?e.getBoundingClientRect():this.#e.triggerNode()?.getBoundingClientRect()??null}#l(e,t){let n=this.#e.triggerNode(),r=this.#e.contentNode();if(!n||!r)return null;let i=n.getBoundingClientRect(),a=r.getBoundingClientRect(),o=vi(i,a),s,c,l;return t===`content`?(s=this.#r?this.#a??e:e,c=a):(s=this.#s??e,c=this.#c()??i,l=a),this.#a=s,{corridor:yi(i,a,o),intent:bi(s,c,o,t,l),targetRect:c,side:o}}#u(e,t,n){return hi(e,t)||hi(e,n)}#d(e,t){let n={x:e.clientX,y:e.clientY};this.#l(n,t)&&(this.#i=t,this.#o=n)}#f(e,t){if(!this.#e.enabled())return;let n=this.#e.triggerNode(),r=this.#e.contentNode();if(!n||!r)return;let i=e.relatedTarget;if(Ut(i)&&(t===`content`&&r.contains(i)||t===`trigger`&&n.contains(i)))return;let a={x:e.clientX,y:e.clientY},o=this.#l(a,t);if(o){if(!gi(a,o.targetRect)&&!this.#u(a,o.corridor,o.intent)){this.#w();return}this.#r=!0,this.#i=t,this.#o=a,this.#e.setIsPointerInTransit(!0),this.#b(),this.#S()}}#p=null;#m(){if(!this.#r)return;let e=this.#i===`trigger`;this.#x(),this.#C(),this.#r=!1,this.#w(),e?(this.#h(),this.#p=setTimeout(()=>{this.#p=null,this.#e.setIsPointerInTransit(!1)},100)):this.#e.setIsPointerInTransit(!1)}#h(){this.#p!==null&&(clearTimeout(this.#p),this.#p=null)}#g(){let e=this.#o;this.#x(),this.#C(),this.#h(),this.#r=!1,this.#e.setIsPointerInTransit(!1),this.#w(),this.#e.onIntentExit(e)}#_(){this.#x(),this.#C(),this.#h(),this.#r&&this.#e.setIsPointerInTransit(!1),this.#r=!1,this.#i=null,this.#a=null,this.#o=null,this.#s=null}#v(e){let t=this.#e.contentNode();if(!t)return!1;let n=t.ownerDocument.elementFromPoint(e.x,e.y);if(!n)return!1;let r=this.#e.subContentSelector(),i=n.closest(r);return!i||i===t?!1:i.id?!!t.querySelector(`[aria-controls="${i.id}"]`):!1}#y=e=>{if(!this.#r||!this.#i||!Qr(e))return;let t=this.#e.triggerNode(),n=this.#e.contentNode();if(!t||!n){this.#g();return}this.#C();let r={x:e.clientX,y:e.clientY};this.#o=r;let i=t.getBoundingClientRect(),a=n.getBoundingClientRect();if(this.#i===`content`&&gi(r,a)){this.#m();return}if(this.#i===`trigger`&&_i(r,i,4)){this.#m();return}if(this.#v(r)){this.#S();return}let o=this.#l(r,this.#i);if(!o){this.#g();return}if(this.#u(r,o.corridor,o.intent)){this.#S();return}this.#g()};#b(){if(this.#t)return;let e=Nt(this.#e.triggerNode()??this.#e.contentNode());e&&(e.addEventListener(`pointermove`,this.#y,!0),this.#t=()=>{e.removeEventListener(`pointermove`,this.#y,!0),this.#t=null})}#x(){this.#t?.()}#S(){this.#C(),this.#n=setTimeout(()=>{this.#n=null,this.#r&&this.#g()},500)}#C(){this.#n!==null&&(clearTimeout(this.#n),this.#n=null)}#w(){this.#i=null,this.#a=null,this.#o=null}};function hi(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e].x,s=t[e].y,c=t[a].x,l=t[a].y;s>r!=l>r&&n<(c-o)*(r-s)/(l-s)+o&&(i=!i)}return i}function gi(e,t){return e.x>=t.left&&e.x<=t.right&&e.y>=t.top&&e.y<=t.bottom}function _i(e,t,n){return e.x>=t.left+n&&e.x<=t.right-n&&e.y>=t.top+n&&e.y<=t.bottom-n}function vi(e,t){let n=e.left+e.width/2,r=e.top+e.height/2,i=t.left+t.width/2,a=t.top+t.height/2,o=i-n,s=a-r;return Math.abs(o)>Math.abs(s)?o>0?`right`:`left`:s>0?`bottom`:`top`}function yi(e,t,n){switch(n){case`top`:return[{x:Math.min(e.left,t.left)-2,y:e.top},{x:Math.min(e.left,t.left)-2,y:t.bottom},{x:Math.max(e.right,t.right)+2,y:t.bottom},{x:Math.max(e.right,t.right)+2,y:e.top}];case`bottom`:return[{x:Math.min(e.left,t.left)-2,y:e.bottom},{x:Math.min(e.left,t.left)-2,y:t.top},{x:Math.max(e.right,t.right)+2,y:t.top},{x:Math.max(e.right,t.right)+2,y:e.bottom}];case`left`:return[{x:e.left,y:Math.min(e.top,t.top)-2},{x:t.right,y:Math.min(e.top,t.top)-2},{x:t.right,y:Math.max(e.bottom,t.bottom)+2},{x:e.left,y:Math.max(e.bottom,t.bottom)+2}];case`right`:return[{x:e.right,y:Math.min(e.top,t.top)-2},{x:t.left,y:Math.min(e.top,t.top)-2},{x:t.left,y:Math.max(e.bottom,t.bottom)+2},{x:e.right,y:Math.max(e.bottom,t.bottom)+2}]}}function bi(e,t,n,r,i){let a=r===`trigger`?xi(n):n,o=i?Math.min(t.top,i.top)-8:t.top-8,s=i?Math.max(t.bottom,i.bottom)+8:t.bottom+8,c=i?Math.min(t.left,i.left)-8:t.left-8,l=i?Math.max(t.right,i.right)+8:t.right+8;switch(a){case`right`:return[e,{x:t.left,y:o},{x:t.left,y:s}];case`left`:return[e,{x:t.right,y:o},{x:t.right,y:s}];case`bottom`:return[e,{x:c,y:t.top},{x:l,y:t.top}];case`top`:return[e,{x:c,y:t.bottom},{x:l,y:t.bottom}]}}function xi(e){switch(e){case`top`:return`bottom`;case`bottom`:return`top`;case`left`:return`right`;case`right`:return`left`}}var Si=class e{static create(t){let n=new e(t);return oi.set(n)}opts;isUsingKeyboard=new ni;#e=w(!1);get ignoreCloseAutoFocus(){return V(this.#e)}set ignoreCloseAutoFocus(e){i(this.#e,e,!0)}#t=w(!1);get isPointerInTransit(){return V(this.#t)}set isPointerInTransit(e){i(this.#t,e,!0)}constructor(e){this.opts=e}getBitsAttr=e=>pi.getAttr(e,this.opts.variant.current)},Ci=class e{static create(t,n){return si.set(new e(t,n,null))}opts;root;parentMenu;#e=w(Y(()=>``));get contentId(){return V(this.#e)}set contentId(e){i(this.#e,e)}#t=w(null);get contentNode(){return V(this.#t)}set contentNode(e){i(this.#t,e,!0)}contentPresence;#n=w(null);get triggerNode(){return V(this.#n)}set triggerNode(e){i(this.#n,e,!0)}constructor(e,t,n){this.opts=e,this.root=t,this.parentMenu=n,this.contentPresence=new qt({ref:Y(()=>this.contentNode),open:this.opts.open,onComplete:()=>{this.opts.onOpenChangeComplete.current(this.opts.open.current)},shouldSkipExitAnimation:()=>this.root.opts.variant.current!==`menubar`||this.parentMenu!==null?!1:this.root.opts.shouldSkipExitAnimation?.()??!1}),n&&Rt(()=>n.opts.open.current,()=>{n.opts.open.current||(this.opts.open.current=!1)})}toggleOpen(){this.opts.open.current=!this.opts.open.current}onOpen(){this.opts.open.current=!0}onClose(){this.opts.open.current=!1}},wi=class e{static create(t){return ci.set(new e(t,si.get()))}opts;parentMenu;rovingFocusGroup;domContext;attachment;#e=w(``);get search(){return V(this.#e)}set search(e){i(this.#e,e,!0)}#t=0;#n;#r=w(!1);get mounted(){return V(this.#r)}set mounted(e){i(this.#r,e,!0)}#i;constructor(e,t){this.opts=e,this.parentMenu=t,this.domContext=new jt(e.ref),this.attachment=Ne(this.opts.ref,e=>{this.parentMenu.contentNode!==e&&(this.parentMenu.contentNode=e)}),t.contentId=e.id,this.#i=e.isSub??!1,this.onkeydown=this.onkeydown.bind(this),this.onblur=this.onblur.bind(this),this.onfocus=this.onfocus.bind(this),this.handleInteractOutside=this.handleInteractOutside.bind(this),new mi({contentNode:()=>this.parentMenu.contentNode,triggerNode:()=>this.parentMenu.triggerNode,parentContentNode:()=>this.parentMenu.parentMenu?.contentNode??null,subContentSelector:()=>`[${this.parentMenu.root.getBitsAttr(`sub-content`)}]`,enabled:()=>this.parentMenu.opts.open.current&&!!this.parentMenu.triggerNode?.hasAttribute(this.parentMenu.root.getBitsAttr(`sub-trigger`)),onIntentExit:e=>{this.parentMenu.opts.open.current=!1,this.#s(e)},setIsPointerInTransit:e=>{this.parentMenu.root.isPointerInTransit=e}}),this.#n=new nn({getActiveElement:()=>this.domContext.getActiveElement(),getWindow:()=>this.domContext.getWindow()}).handleTypeaheadSearch,this.rovingFocusGroup=new Tt({rootNode:Y(()=>this.parentMenu.contentNode),candidateAttr:this.parentMenu.root.getBitsAttr(`item`),loop:this.opts.loop,orientation:Y(()=>`vertical`)}),Rt(()=>this.parentMenu.contentNode,e=>e?fi.listen(e,()=>{tn(()=>{this.parentMenu.root.isUsingKeyboard.current&&this.rovingFocusGroup.focusFirstCandidate()})}):void 0),ce(()=>{this.parentMenu.opts.open.current||this.domContext.getWindow().clearTimeout(this.#t)})}#a(){let e=this.parentMenu.contentNode;return e?Array.from(e.querySelectorAll(`[${this.parentMenu.root.getBitsAttr(`item`)}]:not([data-disabled])`)):[]}#o(){return this.parentMenu.root.isPointerInTransit}#s(e){if(!e)return;let t=this.parentMenu.parentMenu?.contentNode;if(!t)return;let n=this.domContext.getDocument().elementFromPoint(e.x,e.y);if(!Ut(n))return;let r=n.closest(`[${this.parentMenu.root.getBitsAttr(`sub-trigger`)}]`);r&&t.contains(r)&&r!==this.parentMenu.triggerNode&&r.dispatchEvent(new PointerEvent(`pointermove`,{bubbles:!0,cancelable:!0,pointerType:`mouse`,clientX:e.x,clientY:e.y}))}onCloseAutoFocus=e=>{if(this.opts.onCloseAutoFocus.current?.(e),!(e.defaultPrevented||this.#i)){if(this.parentMenu.root.ignoreCloseAutoFocus){e.preventDefault();return}this.parentMenu.triggerNode&&Zt(this.parentMenu.triggerNode)&&(e.preventDefault(),this.parentMenu.triggerNode.focus())}};handleTabKeyDown(e){let t=this.parentMenu;for(;t.parentMenu!==null;)t=t.parentMenu;if(!t.triggerNode)return;e.preventDefault();let n=ii(t.triggerNode,e.shiftKey?`prev`:`next`);n?(this.parentMenu.root.ignoreCloseAutoFocus=!0,t.onClose(),tn(()=>{n.focus(),tn(()=>{this.parentMenu.root.ignoreCloseAutoFocus=!1})})):this.domContext.getDocument().body.focus()}onkeydown(e){if(e.defaultPrevented)return;if(e.key===`Tab`){this.handleTabKeyDown(e);return}let t=e.target,n=e.currentTarget;if(!Qt(t)||!Qt(n))return;let r=t.closest(`[${this.parentMenu.root.getBitsAttr(`content`)}]`)?.id===this.parentMenu.contentId.current,i=e.ctrlKey||e.altKey||e.metaKey,a=e.key.length===1;if(this.rovingFocusGroup.handleKeydown(t,e)||e.code===`Space`)return;let o=this.#a();r&&!i&&a&&this.#n(e.key,o),e.target?.id===this.parentMenu.contentId.current&&qr.includes(e.key)&&(e.preventDefault(),Kr.includes(e.key)&&o.reverse(),ei(o,{select:!1},()=>this.domContext.getActiveElement()))}onblur(e){Ut(e.currentTarget)&&Ut(e.target)&&(e.currentTarget.contains?.(e.target)||(this.domContext.getWindow().clearTimeout(this.#t),this.search=``))}onfocus(e){this.parentMenu.root.isUsingKeyboard.current&&tn(()=>this.rovingFocusGroup.focusFirstCandidate())}onItemEnter(){return this.#o()}onItemLeave(e){e.currentTarget.hasAttribute(this.parentMenu.root.getBitsAttr(`sub-trigger`))||this.#o()||this.parentMenu.root.isUsingKeyboard.current||(this.parentMenu.contentNode?.focus({preventScroll:!0}),this.rovingFocusGroup.setCurrentTabStopId(``))}onTriggerLeave(){return!!this.#o()}handleInteractOutside(e){if(!zt(e.target))return;let t=this.parentMenu.triggerNode?.id;if(e.target.id===t){e.preventDefault();return}if(e.target.closest(`#${t}`)){e.preventDefault();return}this.parentMenu.root.ignoreCloseAutoFocus=!0,tn(()=>{this.parentMenu.root.ignoreCloseAutoFocus=!1})}get shouldRender(){return this.parentMenu.contentPresence.shouldRender}#c=y(()=>({open:this.parentMenu.opts.open.current}));get snippetProps(){return V(this.#c)}set snippetProps(e){i(this.#c,e)}#l=y(()=>({id:this.opts.id.current,role:`menu`,"aria-orientation":`vertical`,[this.parentMenu.root.getBitsAttr(`content`)]:``,"data-state":we(this.parentMenu.opts.open.current),...Ee(this.parentMenu.contentPresence.transitionStatus),onkeydown:this.onkeydown,onblur:this.onblur,onfocus:this.onfocus,dir:this.parentMenu.root.opts.dir.current,style:{pointerEvents:`auto`,contain:`layout style`},...this.attachment}));get props(){return V(this.#l)}set props(e){i(this.#l,e)}popperProps={onCloseAutoFocus:e=>this.onCloseAutoFocus(e)}},Ti=class{opts;content;attachment;#e=w(!1);constructor(e,t){this.opts=e,this.content=t,this.attachment=Ne(this.opts.ref),this.onpointermove=this.onpointermove.bind(this),this.onpointerleave=this.onpointerleave.bind(this),this.onfocus=this.onfocus.bind(this),this.onblur=this.onblur.bind(this)}onpointermove(e){if(!e.defaultPrevented&&Qr(e)){if(this.opts.disabled.current)this.content.onItemLeave(e);else{if(this.content.onItemEnter())return;let t=e.currentTarget;if(!Qt(t))return;t.focus({preventScroll:!0})}}}onpointerleave(e){e.defaultPrevented||Qr(e)&&this.content.onItemLeave(e)}onfocus(e){tn(()=>{e.defaultPrevented||this.opts.disabled.current||i(this.#e,!0)})}onblur(e){tn(()=>{e.defaultPrevented||i(this.#e,!1)})}#t=y(()=>({id:this.opts.id.current,tabindex:-1,role:`menuitem`,"aria-disabled":Ae(this.opts.disabled.current),"data-disabled":De(this.opts.disabled.current),"data-highlighted":V(this.#e)?``:void 0,[this.content.parentMenu.root.getBitsAttr(`item`)]:``,onpointermove:this.onpointermove,onpointerleave:this.onpointerleave,onfocus:this.onfocus,onblur:this.onblur,...this.attachment}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},Ei=class e{static create(t){let n=new Ti(t,ci.get());return new e(t,n)}opts;item;root;#e=!1;constructor(e,t){this.opts=e,this.item=t,this.root=t.content.parentMenu.root,this.onkeydown=this.onkeydown.bind(this),this.onclick=this.onclick.bind(this),this.onpointerdown=this.onpointerdown.bind(this),this.onpointerup=this.onpointerup.bind(this)}#t(){if(this.item.opts.disabled.current)return;let e=new CustomEvent(`menuitemselect`,{bubbles:!0,cancelable:!0});if(this.opts.onSelect.current(e),e.defaultPrevented){this.item.content.parentMenu.root.isUsingKeyboard.current=!1;return}this.opts.closeOnSelect.current&&this.item.content.parentMenu.root.opts.onClose()}onkeydown(e){let t=this.item.content.search!==``;if(!(this.item.opts.disabled.current||t&&e.key===` `)&&Wr.includes(e.key)){if(!Qt(e.currentTarget))return;e.currentTarget.click(),e.preventDefault()}}onclick(e){this.item.opts.disabled.current||this.#t()}onpointerup(e){if(!e.defaultPrevented&&!this.#e){if(!Qt(e.currentTarget))return;e.currentTarget?.click()}}onpointerdown(e){this.#e=!0}#n=y(()=>Te(this.item.props,{onclick:this.onclick,onpointerdown:this.onpointerdown,onpointerup:this.onpointerup,onkeydown:this.onkeydown}));get props(){return V(this.#n)}set props(e){i(this.#n,e)}},Di=class e{static create(t){let n=ci.get(),r=new Ti(t,n),i=si.get();return new e(t,r,n,i)}opts;item;content;submenu;attachment;#e=null;constructor(e,t,n,r){this.opts=e,this.item=t,this.content=n,this.submenu=r,this.attachment=Ne(this.opts.ref,e=>this.submenu.triggerNode=e),this.onpointerleave=this.onpointerleave.bind(this),this.onpointermove=this.onpointermove.bind(this),this.onkeydown=this.onkeydown.bind(this),this.onclick=this.onclick.bind(this),Et(()=>{this.#t()})}#t(){this.#e!==null&&(this.content.domContext.getWindow().clearTimeout(this.#e),this.#e=null)}onpointermove(e){if(Qr(e)){if(this.submenu.root.isPointerInTransit){this.#e!==null&&this.#t();return}if(!this.item.opts.disabled.current&&!this.submenu.opts.open.current&&!this.#e){let e=this.opts.openDelay.current;if(e<=0){this.submenu.onOpen();return}this.#e=this.content.domContext.setTimeout(()=>{if(this.submenu.root.isPointerInTransit){this.#t();return}this.submenu.onOpen(),this.#t()},e)}}}onpointerleave(e){Qr(e)&&this.#t()}onkeydown(e){let t=this.content.search!==``;this.item.opts.disabled.current||t&&e.key===` `||Jr[this.submenu.root.opts.dir.current].includes(e.key)&&(e.currentTarget.click(),e.preventDefault())}onclick(e){if(this.item.opts.disabled.current||!Qt(e.currentTarget))return;e.currentTarget.focus();let t=new CustomEvent(`menusubtriggerselect`,{bubbles:!0,cancelable:!0});this.opts.onSelect.current(t),this.submenu.opts.open.current||(this.submenu.onOpen(),tn(()=>{let e=this.submenu.contentNode;e&&fi.dispatch(e)}))}#n=y(()=>Te({"aria-haspopup":`menu`,"aria-expanded":Ae(this.submenu.opts.open.current),"data-state":we(this.submenu.opts.open.current),"aria-controls":this.submenu.opts.open.current?this.submenu.contentId.current:void 0,[this.submenu.root.getBitsAttr(`sub-trigger`)]:``,onclick:this.onclick,onpointermove:this.onpointermove,onpointerleave:this.onpointerleave,onkeydown:this.onkeydown,...this.attachment},this.item.props));get props(){return V(this.#n)}set props(e){i(this.#n,e)}},Oi=class e{static create(t,n){let r=new Ei(t,new Ti(t,ci.get()));return new e(t,r,n)}opts;item;group;constructor(e,t,n=null){this.opts=e,this.item=t,this.group=n,this.group&&(Rt(()=>this.group.opts.value.current,e=>{this.opts.checked.current=e.includes(this.opts.value.current)}),Rt(()=>this.opts.checked.current,e=>{e?this.group.addValue(this.opts.value.current):this.group.removeValue(this.opts.value.current)}))}toggleChecked(){this.opts.indeterminate.current?(this.opts.indeterminate.current=!1,this.opts.checked.current=!0):this.opts.checked.current=!this.opts.checked.current}#e=y(()=>({checked:this.opts.checked.current,indeterminate:this.opts.indeterminate.current}));get snippetProps(){return V(this.#e)}set snippetProps(e){i(this.#e,e)}#t=y(()=>({...this.item.props,role:`menuitemcheckbox`,"aria-checked":je(this.opts.checked.current,this.opts.indeterminate.current),"data-state":Zr(this.opts.checked.current),[this.item.root.getBitsAttr(`checkbox-item`)]:``}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},ki=class e{static create(t){return new e(t,oi.get())}opts;root;attachment;constructor(e,t){this.opts=e,this.root=t,this.attachment=Ne(this.opts.ref)}#e=y(()=>({id:this.opts.id.current,role:`separator`,[this.root.getBitsAttr(`separator`)]:``,...this.attachment}));get props(){return V(this.#e)}set props(e){i(this.#e,e)}},Ai=class e{static create(t){return li.set(ui.set(new e(t,ci.get())))}opts;content;attachment;#e=w(null);get groupHeadingId(){return V(this.#e)}set groupHeadingId(e){i(this.#e,e,!0)}root;constructor(e,t){this.opts=e,this.content=t,this.root=t.parentMenu.root,this.attachment=Ne(this.opts.ref)}setValue(e){this.opts.value.current=e}#t=y(()=>({id:this.opts.id.current,[this.root.getBitsAttr(`radio-group`)]:``,role:`group`,"aria-labelledby":this.groupHeadingId,...this.attachment}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},ji=class e{static create(t){let n=ui.get(),r=new Ei(t,new Ti(t,n.content));return new e(t,r,n)}opts;item;group;attachment;#e=y(()=>this.group.opts.value.current===this.opts.value.current);get isChecked(){return V(this.#e)}set isChecked(e){i(this.#e,e)}constructor(e,t,n){this.opts=e,this.item=t,this.group=n,this.attachment=Ne(this.opts.ref)}selectValue(){this.group.setValue(this.opts.value.current)}#t=y(()=>({[this.group.root.getBitsAttr(`radio-item`)]:``,...this.item.props,role:`menuitemradio`,"aria-checked":je(this.isChecked,!1),"data-state":Zr(this.isChecked),...this.attachment}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},Mi=class e{static create(t){return new e(t,si.get())}opts;parentMenu;attachment;constructor(e,t){this.opts=e,this.parentMenu=t,this.attachment=Ne(this.opts.ref,e=>this.parentMenu.triggerNode=e)}onclick=e=>{this.opts.disabled.current||e.detail!==0||(this.parentMenu.toggleOpen(),e.preventDefault())};onpointerdown=e=>{if(!this.opts.disabled.current){if(e.pointerType===`touch`)return e.preventDefault();e.button===0&&e.ctrlKey===!1&&(this.parentMenu.toggleOpen(),this.parentMenu.opts.open.current||e.preventDefault())}};onpointerup=e=>{this.opts.disabled.current||e.pointerType===`touch`&&(e.preventDefault(),this.parentMenu.toggleOpen())};onkeydown=e=>{if(!this.opts.disabled.current){if(e.key===` `||e.key===`Enter`){this.parentMenu.toggleOpen(),e.preventDefault();return}e.key===`ArrowDown`&&(this.parentMenu.onOpen(),e.preventDefault())}};#e=y(()=>{if(this.parentMenu.opts.open.current&&this.parentMenu.contentId.current)return this.parentMenu.contentId.current});#t=y(()=>({id:this.opts.id.current,disabled:this.opts.disabled.current,"aria-haspopup":`menu`,"aria-expanded":Ae(this.parentMenu.opts.open.current),"aria-controls":V(this.#e),"data-disabled":De(this.opts.disabled.current),"data-state":we(this.parentMenu.opts.open.current),[this.parentMenu.root.getBitsAttr(`trigger`)]:``,onclick:this.onclick,onpointerdown:this.onpointerdown,onpointerup:this.onpointerup,onkeydown:this.onkeydown,...this.attachment}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},Ni=class{static create(e){let t=si.get();return si.set(new Ci(e,t.root,t))}};function Pi(e,t){l(t,!0);let n=P(t,`open`,15,!1),r=P(t,`onOpenChange`,3,Xt),i=P(t,`onOpenChangeComplete`,3,Xt);Ni.create({open:Y(()=>n(),e=>{n(e),r()?.(e)}),onOpenChangeComplete:Y(()=>i())}),Ye(e,{children:(e,n)=>{var r=U(),i=q(r);f(i,()=>t.children??E),h(e,r)},$$slots:{default:!0}}),b()}var Fi=new Set([`$$slots`,`$$events`,`$$legacy`,`child`,`children`,`ref`,`id`,`disabled`,`onSelect`,`closeOnSelect`]),Ii=m(`<div><!></div>`);function Li(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`id`,19,()=>Me(n)),a=P(t,`disabled`,3,!1),o=P(t,`onSelect`,3,Xt),s=P(t,`closeOnSelect`,3,!0),c=H(t,Fi),u=Ei.create({id:Y(()=>i()),disabled:Y(()=>a()),onSelect:Y(()=>o()),ref:Y(()=>r(),e=>r(e)),closeOnSelect:Y(()=>s())}),d=y(()=>Te(c,u.props));var p=U(),m=q(p),g=e=>{var n=U(),r=q(n);f(r,()=>t.child,()=>({props:V(d)})),h(e,n)},_=e=>{var n=Ii();K(n,()=>({...V(d)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(m,e=>{t.child?e(g):e(_,-1)}),h(e,p),b()}var Ri=new Set([`$$slots`,`$$events`,`$$legacy`,`children`,`child`,`ref`,`value`,`onSelect`,`id`,`disabled`,`closeOnSelect`]),zi=m(`<div><!></div>`);function Bi(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`onSelect`,3,Xt),a=P(t,`id`,19,()=>Me(n)),o=P(t,`disabled`,3,!1),s=P(t,`closeOnSelect`,3,!0),c=H(t,Ri),u=ji.create({value:Y(()=>t.value),id:Y(()=>a()),disabled:Y(()=>o()),onSelect:Y(()=>d),ref:Y(()=>r(),e=>r(e)),closeOnSelect:Y(()=>s())});function d(e){i()(e),!e.defaultPrevented&&u.selectValue()}let p=y(()=>Te(c,u.props));var m=U(),g=q(m),_=e=>{var n=U(),r=q(n);f(r,()=>t.child,()=>({props:V(p),checked:u.isChecked})),h(e,n)},v=e=>{var n=zi();K(n,()=>({...V(p)}));var r=N(n);f(r,()=>t.children??E,()=>({checked:u.isChecked})),O(n),h(e,n)};D(g,e=>{t.child?e(_):e(v,-1)}),h(e,m),b()}var Vi=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`id`,`child`,`children`]),Hi=m(`<div><!></div>`);function Ui(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`id`,19,()=>Me(n)),a=H(t,Vi),o=ki.create({id:Y(()=>i()),ref:Y(()=>r(),e=>r(e))}),s=y(()=>Te(a,o.props));var c=U(),u=q(c),d=e=>{var n=U(),r=q(n);f(r,()=>t.child,()=>({props:V(s)})),h(e,n)},p=e=>{var n=Hi();K(n,()=>({...V(s)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(u,e=>{t.child?e(d):e(p,-1)}),h(e,c),b()}var Wi=new Set([`$$slots`,`$$events`,`$$legacy`,`id`,`children`,`child`,`ref`,`value`,`onValueChange`]),Gi=m(`<div><!></div>`);function Ki(e,t){let n=A();l(t,!0);let r=P(t,`id`,19,()=>Me(n)),i=P(t,`ref`,15,null),a=P(t,`value`,15,``),o=P(t,`onValueChange`,3,Xt),s=H(t,Wi),c=Ai.create({value:Y(()=>a(),e=>{a(e),o()(e)}),ref:Y(()=>i(),e=>i(e)),id:Y(()=>r())}),u=y(()=>Te(s,c.props));var d=U(),p=q(d),m=e=>{var n=U(),r=q(n);f(r,()=>t.child,()=>({props:V(u)})),h(e,n)},g=e=>{var n=Gi();K(n,()=>({...V(u)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(p,e=>{t.child?e(m):e(g,-1)}),h(e,d),b()}var qi=new Set([`$$slots`,`$$events`,`$$legacy`,`id`,`ref`,`children`,`child`,`loop`,`onInteractOutside`,`forceMount`,`onEscapeKeydown`,`interactOutsideBehavior`,`escapeKeydownBehavior`,`onOpenAutoFocus`,`onCloseAutoFocus`,`onFocusOutside`,`side`,`trapFocus`,`style`]),Ji=m(`<div><div><!></div></div>`);function Yi(e,t){let n=A();l(t,!0);let r=P(t,`id`,19,()=>Me(n)),i=P(t,`ref`,15,null),a=P(t,`loop`,3,!0),o=P(t,`onInteractOutside`,3,Xt),s=P(t,`forceMount`,3,!1),c=P(t,`onEscapeKeydown`,3,Xt),u=P(t,`interactOutsideBehavior`,3,`defer-otherwise-close`),d=P(t,`escapeKeydownBehavior`,3,`defer-otherwise-close`),p=P(t,`onOpenAutoFocus`,3,Xt),m=P(t,`onCloseAutoFocus`,3,Xt),g=P(t,`onFocusOutside`,3,Xt),_=P(t,`side`,3,`right`),v=P(t,`trapFocus`,3,!1),x=H(t,qi),S=wi.create({id:Y(()=>r()),loop:Y(()=>a()),ref:Y(()=>i(),e=>i(e)),isSub:!0,onCloseAutoFocus:Y(()=>j)});function C(e){let t=e.currentTarget.contains(e.target),n=Yr[S.parentMenu.root.opts.dir.current].includes(e.key);t&&n&&(S.parentMenu.onClose(),S.parentMenu.triggerNode?.focus(),e.preventDefault())}let w=y(()=>S.parentMenu.root.getBitsAttr(`sub-content`)),T=y(()=>Te(x,S.props,{side:_(),onkeydown:C,[V(w)]:``}));function k(e){p()(e),!e.defaultPrevented&&(e.preventDefault(),S.parentMenu.root.isUsingKeyboard&&S.parentMenu.contentNode&&fi.dispatch(S.parentMenu.contentNode))}function j(e){m()(e),!e.defaultPrevented&&e.preventDefault()}function M(e){o()(e),!e.defaultPrevented&&S.parentMenu.onClose()}function F(e){c()(e),!e.defaultPrevented&&S.parentMenu.onClose()}function I(e){if(g()(e),e.defaultPrevented||!Qt(e.target)||e.target.id===S.parentMenu.triggerNode?.id)return;if((S.parentMenu.parentMenu?.contentNode)?.contains(e.target)){S.parentMenu.onClose(),e.preventDefault();return}let t=`[${S.parentMenu.root.getBitsAttr(`sub-content`)}]`;if(e.target.closest(t)){e.preventDefault();return}S.parentMenu.onClose()}var L=U(),ee=q(L),R=e=>{et(e,W(()=>V(T),{get ref(){return S.opts.ref},get interactOutsideBehavior(){return u()},get escapeKeydownBehavior(){return d()},onOpenAutoFocus:k,get enabled(){return S.parentMenu.opts.open.current},onInteractOutside:M,onEscapeKeydown:F,onFocusOutside:I,preventScroll:!1,get loop(){return a()},get trapFocus(){return v()},get shouldRender(){return S.shouldRender},popper:(e,n)=>{let r=()=>(n?.()).props,i=()=>(n?.()).wrapperProps,a=y(()=>Te(r(),V(T),{style:Xe(`menu`)},{style:t.style}));var o=U(),s=q(o),c=e=>{var n=U(),r=q(n);{let e=y(()=>({props:V(a),wrapperProps:i(),...S.snippetProps}));f(r,()=>t.child,()=>V(e))}h(e,n)},l=e=>{var n=Ji();K(n,()=>({...i()}));var r=N(n);K(r,()=>({...V(a)}));var o=N(r);f(o,()=>t.children??E),O(r),O(n),h(e,n)};D(s,e=>{t.child?e(c):e(l,-1)}),h(e,o)},$$slots:{popper:!0}}))},te=e=>{Ze(e,W(()=>V(T),{get ref(){return S.opts.ref},get interactOutsideBehavior(){return u()},get escapeKeydownBehavior(){return d()},onCloseAutoFocus:j,onOpenAutoFocus:k,get open(){return S.parentMenu.opts.open.current},onInteractOutside:M,onEscapeKeydown:F,onFocusOutside:I,preventScroll:!1,get loop(){return a()},get trapFocus(){return v()},get shouldRender(){return S.shouldRender},popper:(e,n)=>{let r=()=>(n?.()).props,i=()=>(n?.()).wrapperProps,a=y(()=>Te(r(),V(T),{style:Xe(`menu`)},{style:t.style}));var o=U(),s=q(o),c=e=>{var n=U(),r=q(n);{let e=y(()=>({props:V(a),wrapperProps:i(),...S.snippetProps}));f(r,()=>t.child,()=>V(e))}h(e,n)},l=e=>{var n=Ji();K(n,()=>({...i()}));var r=N(n);K(r,()=>({...V(a)}));var o=N(r);f(o,()=>t.children??E),O(r),O(n),h(e,n)};D(s,e=>{t.child?e(c):e(l,-1)}),h(e,o)},$$slots:{popper:!0}}))};D(ee,e=>{s()?e(R):s()||e(te,1)}),h(e,L),b()}var Xi=new Set([`$$slots`,`$$events`,`$$legacy`,`id`,`disabled`,`ref`,`children`,`child`,`onSelect`,`openDelay`]),Zi=m(`<div><!></div>`);function Qi(e,t){let n=A();l(t,!0);let r=P(t,`id`,19,()=>Me(n)),i=P(t,`disabled`,3,!1),a=P(t,`ref`,15,null),o=P(t,`onSelect`,3,Xt),s=P(t,`openDelay`,3,0),c=H(t,Xi),u=Di.create({disabled:Y(()=>i()),onSelect:Y(()=>o()),id:Y(()=>r()),ref:Y(()=>a(),e=>a(e)),openDelay:Y(()=>s())}),d=y(()=>Te(c,u.props));Qe(e,{get id(){return r()},get ref(){return u.opts.ref},children:(e,n)=>{var r=U(),i=q(r),a=e=>{var n=U(),r=q(n);f(r,()=>t.child,()=>({props:V(d)})),h(e,n)},o=e=>{var n=Zi();K(n,()=>({...V(d)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(i,e=>{t.child?e(a):e(o,-1)}),h(e,r)},$$slots:{default:!0}}),b()}var $i=new Set([`$$slots`,`$$events`,`$$legacy`,`child`,`children`,`ref`,`checked`,`id`,`onCheckedChange`,`disabled`,`onSelect`,`closeOnSelect`,`indeterminate`,`onIndeterminateChange`,`value`]),ea=m(`<div><!></div>`);function ta(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`checked`,15,!1),a=P(t,`id`,19,()=>Me(n)),o=P(t,`onCheckedChange`,3,Xt),s=P(t,`disabled`,3,!1),c=P(t,`onSelect`,3,Xt),u=P(t,`closeOnSelect`,3,!0),d=P(t,`indeterminate`,15,!1),p=P(t,`onIndeterminateChange`,3,Xt),m=P(t,`value`,3,``),g=H(t,$i),_=di.getOr(null);_&&m()&&(_.opts.value.current.includes(m())?i(!0):i(!1)),Rt.pre(()=>m(),()=>{_&&m()&&(_.opts.value.current.includes(m())?i(!0):i(!1))});let v=Oi.create({checked:Y(()=>i(),e=>{e!==i()&&(i(e),o()(e))}),id:Y(()=>a()),disabled:Y(()=>s()),onSelect:Y(()=>x),ref:Y(()=>r(),e=>r(e)),closeOnSelect:Y(()=>u()),indeterminate:Y(()=>d(),e=>{e!==d()&&(d(e),p()(e))}),value:Y(()=>m())},_);function x(e){c()(e),!e.defaultPrevented&&v.toggleChecked()}let S=y(()=>Te(g,v.props));var C=U(),w=q(C),T=e=>{var n=U(),r=q(n);f(r,()=>t.child,()=>({checked:i(),indeterminate:d(),props:V(S)})),h(e,n)},k=e=>{var n=ea();K(n,()=>({...V(S)}));var r=N(n);f(r,()=>t.children??E,()=>({checked:i(),indeterminate:d()})),O(n),h(e,n)};D(w,e=>{t.child?e(T):e(k,-1)}),h(e,C),b()}function na(e,t){l(t,!0);let n=P(t,`open`,15,!1),r=P(t,`dir`,3,`ltr`),i=P(t,`onOpenChange`,3,Xt),a=P(t,`onOpenChangeComplete`,3,Xt),o=P(t,`_internal_variant`,3,`dropdown-menu`),s=P(t,`_internal_should_skip_exit_animation`,3,void 0),c=Si.create({variant:Y(()=>o()),dir:Y(()=>r()),onClose:()=>{n(!1),i()(!1)},shouldSkipExitAnimation:()=>s()?.()??!1});Ci.create({open:Y(()=>n(),e=>{n(e),i()(e)}),onOpenChangeComplete:Y(()=>a())},c),Ye(e,{children:(e,n)=>{var r=U(),i=q(r);f(i,()=>t.children??E),h(e,r)},$$slots:{default:!0}}),b()}var ra=new Set([`$$slots`,`$$events`,`$$legacy`,`id`,`child`,`children`,`ref`,`loop`,`onInteractOutside`,`onEscapeKeydown`,`onCloseAutoFocus`,`forceMount`,`trapFocus`,`style`]),ia=m(`<div><div><!></div></div>`);function aa(e,t){let n=A();l(t,!0);let r=P(t,`id`,19,()=>Me(n)),i=P(t,`ref`,15,null),a=P(t,`loop`,3,!0),o=P(t,`onInteractOutside`,3,Xt),s=P(t,`onEscapeKeydown`,3,Xt),c=P(t,`onCloseAutoFocus`,3,Xt),u=P(t,`forceMount`,3,!1),d=P(t,`trapFocus`,3,!1),p=H(t,ra),m=wi.create({id:Y(()=>r()),loop:Y(()=>a()),ref:Y(()=>i(),e=>i(e)),onCloseAutoFocus:Y(()=>c())}),g=y(()=>Te(p,m.props));function _(e){if(m.handleInteractOutside(e),!e.defaultPrevented&&(o()(e),!e.defaultPrevented)){if(e.target&&e.target instanceof Element){let t=`[${m.parentMenu.root.getBitsAttr(`sub-content`)}]`;if(e.target.closest(t))return}m.parentMenu.onClose()}}function v(e){s()(e),!e.defaultPrevented&&m.parentMenu.onClose()}var x=U(),S=q(x),C=e=>{et(e,W(()=>V(g),()=>m.popperProps,{get ref(){return m.opts.ref},get enabled(){return m.parentMenu.opts.open.current},onInteractOutside:_,onEscapeKeydown:v,get trapFocus(){return d()},get loop(){return a()},forceMount:!0,get id(){return r()},get shouldRender(){return m.shouldRender},popper:(e,n)=>{let r=()=>(n?.()).props,i=()=>(n?.()).wrapperProps,a=y(()=>Te(r(),{style:Xe(`dropdown-menu`)},{style:t.style}));var o=U(),s=q(o),c=e=>{var n=U(),r=q(n);{let e=y(()=>({props:V(a),wrapperProps:i(),...m.snippetProps}));f(r,()=>t.child,()=>V(e))}h(e,n)},l=e=>{var n=ia();K(n,()=>({...i()}));var r=N(n);K(r,()=>({...V(a)}));var o=N(r);f(o,()=>t.children??E),O(r),O(n),h(e,n)};D(s,e=>{t.child?e(c):e(l,-1)}),h(e,o)},$$slots:{popper:!0}}))},w=e=>{Ze(e,W(()=>V(g),()=>m.popperProps,{get ref(){return m.opts.ref},get open(){return m.parentMenu.opts.open.current},onInteractOutside:_,onEscapeKeydown:v,get trapFocus(){return d()},get loop(){return a()},forceMount:!1,get id(){return r()},get shouldRender(){return m.shouldRender},popper:(e,n)=>{let r=()=>(n?.()).props,i=()=>(n?.()).wrapperProps,a=y(()=>Te(r(),{style:Xe(`dropdown-menu`)},{style:t.style}));var o=U(),s=q(o),c=e=>{var n=U(),r=q(n);{let e=y(()=>({props:V(a),wrapperProps:i(),...m.snippetProps}));f(r,()=>t.child,()=>V(e))}h(e,n)},l=e=>{var n=ia();K(n,()=>({...i()}));var r=N(n);K(r,()=>({...V(a)}));var o=N(r);f(o,()=>t.children??E),O(r),O(n),h(e,n)};D(s,e=>{t.child?e(c):e(l,-1)}),h(e,o)},$$slots:{popper:!0}}))};D(S,e=>{u()?e(C):u()||e(w,1)}),h(e,x),b()}var oa=new Set([`$$slots`,`$$events`,`$$legacy`,`id`,`ref`,`child`,`children`,`disabled`,`type`]),sa=m(`<button><!></button>`);function ca(e,t){let n=A();l(t,!0);let r=P(t,`id`,19,()=>Me(n)),i=P(t,`ref`,15,null),a=P(t,`disabled`,3,!1),o=P(t,`type`,3,`button`),s=H(t,oa),c=Mi.create({id:Y(()=>r()),disabled:Y(()=>a()??!1),ref:Y(()=>i(),e=>i(e))}),u=y(()=>Te(s,c.props,{type:o()}));Qe(e,{get id(){return r()},get ref(){return c.opts.ref},children:(e,n)=>{var r=U(),i=q(r),a=e=>{var n=U(),r=q(n);f(r,()=>t.child,()=>({props:V(u)})),h(e,n)},o=e=>{var n=sa();K(n,()=>({...V(u)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(i,e=>{t.child?e(a):e(o,-1)}),h(e,r)},$$slots:{default:!0}}),b()}var la=null,ua=new WeakMap;function da(){return la??=new ResizeObserver(e=>{for(let t of e){let e=ua.get(t.target);if(e)for(let t of[...e])t()}}),la}function fa(e,t){let n=ua.get(e);return n===void 0?(n=new Set,ua.set(e,n),n.add(t),da().observe(e)):(n.add(t),t()),()=>{let n=ua.get(e);n&&(n.delete(t),!n.size&&(ua.delete(e),la?.unobserve(e)))}}var pa=class{#e;#t;constructor(e,t){this.#e=e,this.#t=t,this.handler=this.handler.bind(this),ce(this.handler)}handler(){let e=0,t=this.#e();if(!t)return;let n=fa(t,()=>{cancelAnimationFrame(e),e=window.requestAnimationFrame(this.#t)});return()=>{window.cancelAnimationFrame(e),n()}}},ma=class{opts;present;#e;#t=w(!1);#n=!1;#r=w(void 0);#i=null;constructor(e){this.opts=e,this.present=this.opts.open,i(this.#t,e.open.current,!0),this.#e=new Wt({ref:this.opts.ref,afterTick:this.opts.open}),Et(()=>this.#o()),Rt(()=>this.present.current,e=>{if(!this.#n){this.#n=!0;return}this.#o(),e&&i(this.#t,!0),i(this.#r,e?`starting`:`ending`,!0),e&&(this.#i=window.requestAnimationFrame(()=>{this.#i=null,this.present.current&&i(this.#r,void 0)})),this.#e.run(()=>{e===this.present.current&&(e||i(this.#t,!1),i(this.#r,void 0))})})}#a=y(()=>V(this.#t));get isPresent(){return V(this.#a)}set isPresent(e){i(this.#a,e)}get transitionStatus(){return V(this.#r)}#o(){this.#i!==null&&(window.cancelAnimationFrame(this.#i),this.#i=null)}};function ha(e,t){l(t,!0);let n=new ma({open:Y(()=>t.open),ref:t.ref});var r=U(),i=q(r),a=e=>{var r=U(),i=q(r);f(i,()=>t.presence??E,()=>({present:n.isPresent,transitionStatus:n.transitionStatus})),h(e,r)};D(i,e=>{(t.forceMount||t.open||n.isPresent)&&e(a)}),h(e,r),b()}function ga(e,t,n){return Math.min(n,Math.max(t,e))}var _a=class{state;#e;constructor(e,t){this.state=Se(e),this.#e=t,this.dispatch=this.dispatch.bind(this)}#t(e){return this.#e[this.state.current][e]??this.state.current}dispatch(e){this.state.current=this.#t(e)}},va=Oe({component:`scroll-area`,parts:[`root`,`viewport`,`corner`,`thumb`,`scrollbar`]}),ya=new Mt(`ScrollArea.Root`),ba=new Mt(`ScrollArea.Scrollbar`),xa=new Mt(`ScrollArea.ScrollbarVisible`),Sa=new Mt(`ScrollArea.ScrollbarAxis`),Ca=new Mt(`ScrollArea.ScrollbarShared`),wa=class e{static create(t){return ya.set(new e(t))}opts;attachment;#e=w(null);get scrollAreaNode(){return V(this.#e)}set scrollAreaNode(e){i(this.#e,e,!0)}#t=w(null);get viewportNode(){return V(this.#t)}set viewportNode(e){i(this.#t,e,!0)}#n=w(null);get contentNode(){return V(this.#n)}set contentNode(e){i(this.#n,e,!0)}#r=w(null);get scrollbarXNode(){return V(this.#r)}set scrollbarXNode(e){i(this.#r,e,!0)}#i=w(null);get scrollbarYNode(){return V(this.#i)}set scrollbarYNode(e){i(this.#i,e,!0)}#a=w(0);get cornerWidth(){return V(this.#a)}set cornerWidth(e){i(this.#a,e,!0)}#o=w(0);get cornerHeight(){return V(this.#o)}set cornerHeight(e){i(this.#o,e,!0)}#s=w(!1);get scrollbarXEnabled(){return V(this.#s)}set scrollbarXEnabled(e){i(this.#s,e,!0)}#c=w(!1);get scrollbarYEnabled(){return V(this.#c)}set scrollbarYEnabled(e){i(this.#c,e,!0)}domContext;constructor(e){this.opts=e,this.attachment=Ne(e.ref,e=>this.scrollAreaNode=e),this.domContext=new jt(e.ref)}#l=y(()=>({id:this.opts.id.current,dir:this.opts.dir.current,style:{position:`relative`,"--bits-scroll-area-corner-height":`${this.cornerHeight}px`,"--bits-scroll-area-corner-width":`${this.cornerWidth}px`},[va.root]:``,...this.attachment}));get props(){return V(this.#l)}set props(e){i(this.#l,e)}},Ta=class e{static create(t){return new e(t,ya.get())}opts;root;attachment;#e=Se(Jt());#t=Se(null);contentAttachment=Ne(this.#t,e=>this.root.contentNode=e);constructor(e,t){this.opts=e,this.root=t,this.attachment=Ne(e.ref,e=>this.root.viewportNode=e)}#n=y(()=>({id:this.opts.id.current,style:{overflowX:this.root.scrollbarXEnabled?`scroll`:`hidden`,overflowY:this.root.scrollbarYEnabled?`scroll`:`hidden`},[va.viewport]:``,...this.attachment}));get props(){return V(this.#n)}set props(e){i(this.#n,e)}#r=y(()=>({id:this.#e.current,"data-scroll-area-content":``,style:{minWidth:this.root.scrollbarXEnabled?`fit-content`:void 0},...this.contentAttachment}));get contentProps(){return V(this.#r)}set contentProps(e){i(this.#r,e)}},Ea=class e{static create(t){return ba.set(new e(t,ya.get()))}opts;root;#e=y(()=>this.opts.orientation.current===`horizontal`);get isHorizontal(){return V(this.#e)}set isHorizontal(e){i(this.#e,e)}#t=w(!1);get hasThumb(){return V(this.#t)}set hasThumb(e){i(this.#t,e,!0)}constructor(e,t){this.opts=e,this.root=t,Rt(()=>this.isHorizontal,e=>e?(this.root.scrollbarXEnabled=!0,()=>{this.root.scrollbarXEnabled=!1}):(this.root.scrollbarYEnabled=!0,()=>{this.root.scrollbarYEnabled=!1}))}},Da=class e{static create(){return new e(ba.get())}scrollbar;root;#e=w(!1);get isVisible(){return V(this.#e)}set isVisible(e){i(this.#e,e,!0)}constructor(e){this.scrollbar=e,this.root=e.root,ce(()=>{let e=this.root.scrollAreaNode,t=this.root.opts.scrollHideDelay.current,n=0;if(!e)return;let r=ke(G(e,`pointerenter`,()=>{this.root.domContext.clearTimeout(n),de(()=>this.isVisible=!0)}),G(e,`pointerleave`,()=>{n&&this.root.domContext.clearTimeout(n),n=this.root.domContext.setTimeout(()=>{de(()=>{this.scrollbar.hasThumb=!1,this.isVisible=!1})},t)}));return()=>{this.root.domContext.getWindow().clearTimeout(n),r()}})}#t=y(()=>({"data-state":this.isVisible?`visible`:`hidden`}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},Oa=class e{static create(){return new e(ba.get())}scrollbar;root;machine=new _a(`hidden`,{hidden:{SCROLL:`scrolling`},scrolling:{SCROLL_END:`idle`,POINTER_ENTER:`interacting`},interacting:{SCROLL:`interacting`,POINTER_LEAVE:`idle`},idle:{HIDE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`interacting`}});#e=y(()=>this.machine.state.current===`hidden`);get isHidden(){return V(this.#e)}set isHidden(e){i(this.#e,e)}constructor(e){this.scrollbar=e,this.root=e.root;let t=kt(()=>this.machine.dispatch(`SCROLL_END`),100);ce(()=>{let e=this.machine.state.current,t=this.root.opts.scrollHideDelay.current;if(e===`idle`){let e=this.root.domContext.setTimeout(()=>this.machine.dispatch(`HIDE`),t);return()=>this.root.domContext.clearTimeout(e)}}),ce(()=>{let e=this.root.viewportNode;if(!e)return;let n=this.scrollbar.isHorizontal?`scrollLeft`:`scrollTop`,r=e[n];return G(e,`scroll`,()=>{let i=e[n];r!==i&&(this.machine.dispatch(`SCROLL`),t()),r=i})}),this.onpointerenter=this.onpointerenter.bind(this),this.onpointerleave=this.onpointerleave.bind(this)}onpointerenter(e){this.machine.dispatch(`POINTER_ENTER`)}onpointerleave(e){this.machine.dispatch(`POINTER_LEAVE`)}#t=y(()=>({"data-state":this.machine.state.current===`hidden`?`hidden`:`visible`,onpointerenter:this.onpointerenter,onpointerleave:this.onpointerleave}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},ka=class e{static create(){return new e(ba.get())}scrollbar;root;#e=w(!1);get isVisible(){return V(this.#e)}set isVisible(e){i(this.#e,e,!0)}constructor(e){this.scrollbar=e,this.root=e.root;let t=()=>{let e=this.root.viewportNode;if(!e)return;let t=e.offsetWidth<e.scrollWidth,n=e.offsetHeight<e.scrollHeight;this.isVisible=this.scrollbar.isHorizontal?t:n};new pa(()=>this.root.viewportNode,t),new pa(()=>this.root.contentNode,t)}#t=y(()=>({"data-state":this.isVisible?`visible`:`hidden`}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},Aa=class e{static create(){return xa.set(new e(ba.get()))}scrollbar;root;#e=w(null);get thumbNode(){return V(this.#e)}set thumbNode(e){i(this.#e,e,!0)}#t=w(0);get pointerOffset(){return V(this.#t)}set pointerOffset(e){i(this.#t,e,!0)}#n=w({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}});get sizes(){return V(this.#n)}set sizes(e){i(this.#n,e)}#r=y(()=>La(this.sizes.viewport,this.sizes.content));get thumbRatio(){return V(this.#r)}set thumbRatio(e){i(this.#r,e)}#i=y(()=>this.thumbRatio>0&&this.thumbRatio<1);get hasThumb(){return V(this.#i)}set hasThumb(e){i(this.#i,e)}#a=w(``);get prevTransformStyle(){return V(this.#a)}set prevTransformStyle(e){i(this.#a,e,!0)}constructor(e){this.scrollbar=e,this.root=e.root,ce(()=>{this.scrollbar.hasThumb=this.hasThumb}),ce(()=>{!this.scrollbar.hasThumb&&this.thumbNode&&(this.prevTransformStyle=this.thumbNode.style.transform)})}setSizes(e){this.sizes=e}getScrollPosition(e,t){return za({pointerPos:e,pointerOffset:this.pointerOffset,sizes:this.sizes,dir:t})}onThumbPointerUp(){this.pointerOffset=0}onThumbPointerDown(e){this.pointerOffset=e}xOnThumbPositionChange(){if(!(this.root.viewportNode&&this.thumbNode))return;let e=this.root.viewportNode.scrollLeft,t=`translate3d(${Ba({scrollPos:e,sizes:this.sizes,dir:this.root.opts.dir.current})}px, 0, 0)`;this.thumbNode.style.transform=t,this.prevTransformStyle=t}xOnWheelScroll(e){this.root.viewportNode&&(this.root.viewportNode.scrollLeft=e)}xOnDragScroll(e){this.root.viewportNode&&(this.root.viewportNode.scrollLeft=this.getScrollPosition(e,this.root.opts.dir.current))}yOnThumbPositionChange(){if(!(this.root.viewportNode&&this.thumbNode))return;let e=this.root.viewportNode.scrollTop,t=`translate3d(0, ${Ba({scrollPos:e,sizes:this.sizes})}px, 0)`;this.thumbNode.style.transform=t,this.prevTransformStyle=t}yOnWheelScroll(e){this.root.viewportNode&&(this.root.viewportNode.scrollTop=e)}yOnDragScroll(e){this.root.viewportNode&&(this.root.viewportNode.scrollTop=this.getScrollPosition(e,this.root.opts.dir.current))}},ja=class e{static create(t){return Sa.set(new e(t,xa.get()))}opts;scrollbarVis;root;scrollbar;attachment;#e=w();get computedStyle(){return V(this.#e)}set computedStyle(e){i(this.#e,e,!0)}constructor(e,t){this.opts=e,this.scrollbarVis=t,this.root=t.root,this.scrollbar=t.scrollbar,this.attachment=Ne(this.scrollbar.opts.ref,e=>this.root.scrollbarXNode=e),ce(()=>{this.scrollbar.opts.ref.current&&this.opts.mounted.current&&(this.computedStyle=getComputedStyle(this.scrollbar.opts.ref.current))}),ce(()=>{this.onResize()})}onThumbPointerDown=e=>{this.scrollbarVis.onThumbPointerDown(e.x)};onDragScroll=e=>{this.scrollbarVis.xOnDragScroll(e.x)};onThumbPointerUp=()=>{this.scrollbarVis.onThumbPointerUp()};onThumbPositionChange=()=>{this.scrollbarVis.xOnThumbPositionChange()};onWheelScroll=(e,t)=>{if(!this.root.viewportNode)return;let n=this.root.viewportNode.scrollLeft+e.deltaX;this.scrollbarVis.xOnWheelScroll(n),Ha(n,t)&&e.preventDefault()};onResize=()=>{this.scrollbar.opts.ref.current&&this.root.viewportNode&&this.computedStyle&&this.scrollbarVis.setSizes({content:this.root.viewportNode.scrollWidth,viewport:this.root.viewportNode.offsetWidth,scrollbar:{size:this.scrollbar.opts.ref.current.clientWidth,paddingStart:Ia(this.computedStyle.paddingLeft),paddingEnd:Ia(this.computedStyle.paddingRight)}})};#t=y(()=>Ra(this.scrollbarVis.sizes));get thumbSize(){return V(this.#t)}set thumbSize(e){i(this.#t,e)}#n=y(()=>({id:this.scrollbar.opts.id.current,"data-orientation":`horizontal`,style:{bottom:0,left:this.root.opts.dir.current===`rtl`?`var(--bits-scroll-area-corner-width)`:0,right:this.root.opts.dir.current===`ltr`?`var(--bits-scroll-area-corner-width)`:0,"--bits-scroll-area-thumb-width":`${this.thumbSize}px`},...this.attachment}));get props(){return V(this.#n)}set props(e){i(this.#n,e)}},Ma=class e{static create(t){return Sa.set(new e(t,xa.get()))}opts;scrollbarVis;root;scrollbar;attachment;#e=w();get computedStyle(){return V(this.#e)}set computedStyle(e){i(this.#e,e,!0)}constructor(e,t){this.opts=e,this.scrollbarVis=t,this.root=t.root,this.scrollbar=t.scrollbar,this.attachment=Ne(this.scrollbar.opts.ref,e=>this.root.scrollbarYNode=e),ce(()=>{this.scrollbar.opts.ref.current&&this.opts.mounted.current&&(this.computedStyle=getComputedStyle(this.scrollbar.opts.ref.current))}),ce(()=>{this.onResize()}),this.onThumbPointerDown=this.onThumbPointerDown.bind(this),this.onDragScroll=this.onDragScroll.bind(this),this.onThumbPointerUp=this.onThumbPointerUp.bind(this),this.onThumbPositionChange=this.onThumbPositionChange.bind(this),this.onWheelScroll=this.onWheelScroll.bind(this),this.onResize=this.onResize.bind(this)}onThumbPointerDown(e){this.scrollbarVis.onThumbPointerDown(e.y)}onDragScroll(e){this.scrollbarVis.yOnDragScroll(e.y)}onThumbPointerUp(){this.scrollbarVis.onThumbPointerUp()}onThumbPositionChange(){this.scrollbarVis.yOnThumbPositionChange()}onWheelScroll(e,t){if(!this.root.viewportNode)return;let n=this.root.viewportNode.scrollTop+e.deltaY;this.scrollbarVis.yOnWheelScroll(n),Ha(n,t)&&e.preventDefault()}onResize(){this.scrollbar.opts.ref.current&&this.root.viewportNode&&this.computedStyle&&this.scrollbarVis.setSizes({content:this.root.viewportNode.scrollHeight,viewport:this.root.viewportNode.offsetHeight,scrollbar:{size:this.scrollbar.opts.ref.current.clientHeight,paddingStart:Ia(this.computedStyle.paddingTop),paddingEnd:Ia(this.computedStyle.paddingBottom)}})}#t=y(()=>Ra(this.scrollbarVis.sizes));get thumbSize(){return V(this.#t)}set thumbSize(e){i(this.#t,e)}#n=y(()=>({id:this.scrollbar.opts.id.current,"data-orientation":`vertical`,style:{top:0,right:this.root.opts.dir.current===`ltr`?0:void 0,left:this.root.opts.dir.current===`rtl`?0:void 0,bottom:`var(--bits-scroll-area-corner-height)`,"--bits-scroll-area-thumb-height":`${this.thumbSize}px`},...this.attachment}));get props(){return V(this.#n)}set props(e){i(this.#n,e)}},Na=class e{static create(){return Ca.set(new e(Sa.get()))}scrollbarState;root;scrollbarVis;scrollbar;#e=w(null);get rect(){return V(this.#e)}set rect(e){i(this.#e,e)}#t=w(``);get prevWebkitUserSelect(){return V(this.#t)}set prevWebkitUserSelect(e){i(this.#t,e,!0)}handleResize;handleThumbPositionChange;handleWheelScroll;handleThumbPointerDown;handleThumbPointerUp;#n=y(()=>this.scrollbarVis.sizes.content-this.scrollbarVis.sizes.viewport);get maxScrollPos(){return V(this.#n)}set maxScrollPos(e){i(this.#n,e)}constructor(e){this.scrollbarState=e,this.root=e.root,this.scrollbarVis=e.scrollbarVis,this.scrollbar=e.scrollbarVis.scrollbar,this.handleResize=()=>this.scrollbarState.onResize(),this.handleThumbPositionChange=this.scrollbarState.onThumbPositionChange,this.handleWheelScroll=this.scrollbarState.onWheelScroll,this.handleThumbPointerDown=this.scrollbarState.onThumbPointerDown,this.handleThumbPointerUp=this.scrollbarState.onThumbPointerUp,ce(()=>{let e=this.maxScrollPos,t=this.scrollbar.opts.ref.current;return this.root.viewportNode,G(this.root.domContext.getDocument(),`wheel`,n=>{let r=n.target;t?.contains(r)&&this.handleWheelScroll(n,e)},{passive:!1})}),ie(()=>{this.scrollbarVis.sizes,de(()=>this.handleThumbPositionChange())}),new pa(()=>this.scrollbar.opts.ref.current,this.handleResize),new pa(()=>this.root.contentNode,this.handleResize),this.onpointerdown=this.onpointerdown.bind(this),this.onpointermove=this.onpointermove.bind(this),this.onpointerup=this.onpointerup.bind(this),this.onlostpointercapture=this.onlostpointercapture.bind(this)}handleDragScroll(e){if(!this.rect)return;let t=e.clientX-this.rect.left,n=e.clientY-this.rect.top;this.scrollbarState.onDragScroll({x:t,y:n})}#r(){this.rect!==null&&(this.root.domContext.getDocument().body.style.webkitUserSelect=this.prevWebkitUserSelect,this.root.viewportNode&&(this.root.viewportNode.style.scrollBehavior=``),this.rect=null)}onpointerdown(e){e.button===0&&(e.target.setPointerCapture(e.pointerId),this.rect=this.scrollbar.opts.ref.current?.getBoundingClientRect()??null,this.prevWebkitUserSelect=this.root.domContext.getDocument().body.style.webkitUserSelect,this.root.domContext.getDocument().body.style.webkitUserSelect=`none`,this.root.viewportNode&&(this.root.viewportNode.style.scrollBehavior=`auto`),this.handleDragScroll(e))}onpointermove(e){this.handleDragScroll(e)}onpointerup(e){let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),this.#r()}onlostpointercapture(e){this.#r()}#i=y(()=>Te({...this.scrollbarState.props,style:{position:`absolute`,...this.scrollbarState.props.style},[va.scrollbar]:``,onpointerdown:this.onpointerdown,onpointermove:this.onpointermove,onpointerup:this.onpointerup,onlostpointercapture:this.onlostpointercapture}));get props(){return V(this.#i)}set props(e){i(this.#i,e)}},Pa=class e{static create(t){return new e(t,Ca.get())}opts;scrollbarState;attachment;#e;#t=w();#n=kt(()=>{V(this.#t)&&(V(this.#t)(),i(this.#t,void 0))},100);constructor(e,t){this.opts=e,this.scrollbarState=t,this.#e=t.root,this.attachment=Ne(this.opts.ref,e=>this.scrollbarState.scrollbarVis.thumbNode=e),ce(()=>{let e=this.#e.viewportNode;return e?(de(()=>this.scrollbarState.handleThumbPositionChange()),G(e,`scroll`,()=>{if(this.#n(),!V(this.#t)){let t=Ua(e,this.scrollbarState.handleThumbPositionChange);i(this.#t,t,!0),this.scrollbarState.handleThumbPositionChange()}})):void 0}),this.onpointerdowncapture=this.onpointerdowncapture.bind(this),this.onpointerup=this.onpointerup.bind(this)}onpointerdowncapture(e){let t=e.target;if(!t)return;let n=t.getBoundingClientRect(),r=e.clientX-n.left,i=e.clientY-n.top;this.scrollbarState.handleThumbPointerDown({x:r,y:i})}onpointerup(e){this.scrollbarState.handleThumbPointerUp()}#r=y(()=>({id:this.opts.id.current,"data-state":this.scrollbarState.scrollbarVis.hasThumb?`visible`:`hidden`,style:{width:`var(--bits-scroll-area-thumb-width)`,height:`var(--bits-scroll-area-thumb-height)`,transform:this.scrollbarState.scrollbarVis.prevTransformStyle},onpointerdowncapture:this.onpointerdowncapture,onpointerup:this.onpointerup,[va.thumb]:``,...this.attachment}));get props(){return V(this.#r)}set props(e){i(this.#r,e)}},Fa=class e{static create(t){return new e(t,ya.get())}opts;root;attachment;#e=w(0);#t=w(0);#n=y(()=>!!(V(this.#e)&&V(this.#t)));get hasSize(){return V(this.#n)}set hasSize(e){i(this.#n,e)}constructor(e,t){this.opts=e,this.root=t,this.attachment=Ne(this.opts.ref),new pa(()=>this.root.scrollbarXNode,()=>{let e=this.root.scrollbarXNode?.offsetHeight||0;this.root.cornerHeight=e,i(this.#t,e,!0)}),new pa(()=>this.root.scrollbarYNode,()=>{let e=this.root.scrollbarYNode?.offsetWidth||0;this.root.cornerWidth=e,i(this.#e,e,!0)})}#r=y(()=>({id:this.opts.id.current,style:{width:V(this.#e),height:V(this.#t),position:`absolute`,right:this.root.opts.dir.current===`ltr`?0:void 0,left:this.root.opts.dir.current===`rtl`?0:void 0,bottom:0},[va.corner]:``,...this.attachment}));get props(){return V(this.#r)}set props(e){i(this.#r,e)}};function Ia(e){return e?Number.parseInt(e,10):0}function La(e,t){let n=e/t;return Number.isNaN(n)?0:n}function Ra(e){let t=La(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}function za({pointerPos:e,pointerOffset:t,sizes:n,dir:r=`ltr`}){let i=Ra(n),a=i/2,o=t||a,s=i-o,c=n.scrollbar.paddingStart+o,l=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,d=r===`ltr`?[0,u]:[u*-1,0];return Va([c,l],d)(e)}function Ba({scrollPos:e,sizes:t,dir:n=`ltr`}){let r=Ra(t),i=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-i,o=t.content-t.viewport,s=a-r,c=n===`ltr`?[0,o]:[o*-1,0],l=ga(e,c[0],c[1]);return Va([0,o],[0,s])(l)}function Va(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function Ha(e,t){return e>0&&e<t}function Ua(e,t){let n={left:e.scrollLeft,top:e.scrollTop},r=0,i=It(e);return(function a(){let o={left:e.scrollLeft,top:e.scrollTop},s=n.left!==o.left,c=n.top!==o.top;(s||c)&&t(),n=o,r=i.requestAnimationFrame(a)})(),()=>i.cancelAnimationFrame(r)}var Wa=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`id`,`type`,`dir`,`scrollHideDelay`,`children`,`child`]),Ga=m(`<div><!></div>`);function Ka(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`id`,19,()=>Me(n)),a=P(t,`type`,3,`hover`),o=P(t,`dir`,3,`ltr`),s=P(t,`scrollHideDelay`,3,600),c=H(t,Wa),u=wa.create({type:Y(()=>a()),dir:Y(()=>o()),scrollHideDelay:Y(()=>s()),id:Y(()=>i()),ref:Y(()=>r(),e=>r(e))}),d=y(()=>Te(c,u.props));var p=U(),m=q(p),g=e=>{var n=U(),r=q(n);f(r,()=>t.child,()=>({props:V(d)})),h(e,n)},_=e=>{var n=Ga();K(n,()=>({...V(d)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(m,e=>{t.child?e(g):e(_,-1)}),h(e,p),b()}var qa=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`id`,`children`]),Ja=m(`<div><div><!></div></div>`);function Ya(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`id`,19,()=>Me(n)),a=H(t,qa),o=Ta.create({id:Y(()=>i()),ref:Y(()=>r(),e=>r(e))}),s=y(()=>Te(a,o.props)),c=y(()=>Te({},o.contentProps));var u=Ja();K(u,()=>({...V(s)}));var d=N(u);K(d,()=>({...V(c)}));var p=N(d);f(p,()=>t.children??E),O(d),O(u),h(e,u),b()}var Xa=new Set([`$$slots`,`$$events`,`$$legacy`,`child`,`children`]),Za=m(`<div><!></div>`);function Qa(e,t){l(t,!0);let n=H(t,Xa),r=Na.create(),i=y(()=>Te(n,r.props));var a=U(),o=q(a),s=e=>{var n=U(),r=q(n);f(r,()=>t.child,()=>({props:V(i)})),h(e,n)},c=e=>{var n=Za();K(n,()=>({...V(i)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(o,e=>{t.child?e(s):e(c,-1)}),h(e,a),b()}var $a=new Set([`$$slots`,`$$events`,`$$legacy`]);function eo(e,t){l(t,!0);let n=H(t,$a),r=new At,i=ja.create({mounted:Y(()=>r.current)}),a=y(()=>Te(n,i.props));Qa(e,W(()=>V(a))),b()}var to=new Set([`$$slots`,`$$events`,`$$legacy`]);function no(e,t){l(t,!0);let n=H(t,to),r=new At,i=Ma.create({mounted:Y(()=>r.current)}),a=y(()=>Te(n,i.props));Qa(e,W(()=>V(a))),b()}var ro=new Set([`$$slots`,`$$events`,`$$legacy`]);function io(e,t){l(t,!0);let n=H(t,ro),r=Aa.create();var i=U(),a=q(i),o=e=>{eo(e,W(()=>n))},s=e=>{no(e,W(()=>n))};D(a,e=>{r.scrollbar.opts.orientation.current===`horizontal`?e(o):e(s,-1)}),h(e,i),b()}var ao=new Set([`$$slots`,`$$events`,`$$legacy`,`forceMount`]);function oo(e,t){l(t,!0);let n=P(t,`forceMount`,3,!1),r=H(t,ao),i=ka.create(),a=y(()=>Te(r,i.props));{let t=e=>{io(e,W(()=>V(a)))},r=y(()=>n()||i.isVisible);ha(e,{get open(){return V(r)},get ref(){return i.scrollbar.opts.ref},presence:t,$$slots:{presence:!0}})}b()}var so=new Set([`$$slots`,`$$events`,`$$legacy`,`forceMount`]);function co(e,t){l(t,!0);let n=P(t,`forceMount`,3,!1),r=H(t,so),i=Oa.create(),a=y(()=>Te(r,i.props));{let t=e=>{io(e,W(()=>V(a)))},r=y(()=>n()||!i.isHidden);ha(e,W(()=>V(a),{get open(){return V(r)},get ref(){return i.scrollbar.opts.ref},presence:t,$$slots:{presence:!0}}))}b()}var lo=new Set([`$$slots`,`$$events`,`$$legacy`,`forceMount`]);function uo(e,t){l(t,!0);let n=P(t,`forceMount`,3,!1),r=H(t,lo),i=Da.create(),a=ka.create(),o=y(()=>Te(r,i.props,a.props,{"data-state":i.isVisible?`visible`:`hidden`})),s=y(()=>n()||i.isVisible&&a.isVisible);ha(e,{get open(){return V(s)},get ref(){return a.scrollbar.opts.ref},presence:e=>{io(e,W(()=>V(o)))},$$slots:{presence:!0}}),b()}var fo=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`id`,`orientation`]);function po(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`id`,19,()=>Me(n)),a=H(t,fo),o=Ea.create({orientation:Y(()=>t.orientation),id:Y(()=>i()),ref:Y(()=>r(),e=>r(e))}),s=y(()=>o.root.opts.type.current);var c=U(),u=q(c),d=e=>{uo(e,W(()=>a,{get id(){return i()}}))},f=e=>{co(e,W(()=>a,{get id(){return i()}}))},p=e=>{oo(e,W(()=>a,{get id(){return i()}}))},m=e=>{io(e,W(()=>a,{get id(){return i()}}))};D(u,e=>{V(s)===`hover`?e(d):V(s)===`scroll`?e(f,1):V(s)===`auto`?e(p,2):V(s)===`always`&&e(m,3)}),h(e,c),b()}var mo=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`id`,`child`,`children`,`present`]),ho=m(`<div><!></div>`);function go(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,mo),i=new At,a=Pa.create({id:Y(()=>t.id),ref:Y(()=>n(),e=>n(e)),mounted:Y(()=>i.current)}),o=y(()=>Te(r,a.props,{style:{hidden:!t.present}}));var s=U(),c=q(s),u=e=>{var n=U(),r=q(n);f(r,()=>t.child,()=>({props:V(o)})),h(e,n)},d=e=>{var n=ho();K(n,()=>({...V(o)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(c,e=>{t.child?e(u):e(d,-1)}),h(e,s),b()}var _o=new Set([`$$slots`,`$$events`,`$$legacy`,`id`,`ref`,`forceMount`]);function vo(e,t){let n=A();l(t,!0);let r=P(t,`id`,19,()=>Me(n)),i=P(t,`ref`,15,null),a=P(t,`forceMount`,3,!1),o=H(t,_o),s=xa.get();{let t=(e,t)=>{let n=()=>(t?.()).present;go(e,W(()=>o,{get id(){return r()},get present(){return n()},get ref(){return i()},set ref(e){i(e)}}))},n=y(()=>a()||s.hasThumb);ha(e,{get open(){return V(n)},get ref(){return s.scrollbar.opts.ref},presence:t,$$slots:{presence:!0}})}b()}var yo=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`id`,`children`,`child`]),bo=m(`<div><!></div>`);function xo(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,yo),i=Fa.create({id:Y(()=>t.id),ref:Y(()=>n(),e=>n(e))}),a=y(()=>Te(r,i.props));var o=U(),s=q(o),c=e=>{var n=U(),r=q(n);f(r,()=>t.child,()=>({props:V(a)})),h(e,n)},u=e=>{var n=bo();K(n,()=>({...V(a)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(s,e=>{t.child?e(c):e(u,-1)}),h(e,o),b()}var So=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`id`]);function Co(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`id`,19,()=>Me(n)),a=H(t,So),o=ya.get(),s=y(()=>!!(o.scrollbarXNode&&o.scrollbarYNode)),c=y(()=>o.opts.type.current!==`scroll`&&V(s));var u=U(),d=q(u),f=e=>{xo(e,W(()=>a,{get id(){return i()},get ref(){return r()},set ref(e){r(e)}}))};D(d,e=>{V(c)&&e(f)}),h(e,u),b()}function wo(e,t,n){let r={position:`absolute`};return e===`lr`?(r.left=`${t}%`,r.right=`${n}%`):e===`rl`?(r.right=`${t}%`,r.left=`${n}%`):e===`bt`?(r.bottom=`${t}%`,r.top=`${n}%`):(r.top=`${t}%`,r.bottom=`${n}%`),r}function To(e,t){let n={position:`absolute`};return e===`lr`?(n.left=`${t}%`,n.translate=`-50% 0`):e===`rl`?(n.right=`${t}%`,n.translate=`50% 0`):e===`bt`?(n.bottom=`${t}%`,n.translate=`0 50%`):(n.top=`${t}%`,n.translate=`0 -50%`),n}function Eo(e,t,n){let r={position:`absolute`};return e===`lr`?(r.left=`${t}%`,r.translate=`${n}% 0`):e===`rl`?(r.right=`${t}%`,r.translate=`${-n}% 0`):e===`bt`?(r.bottom=`${t}%`,r.translate=`0 ${-n}%`):(r.top=`${t}%`,r.translate=`0 ${n}%`),r}function Do(e){if(Math.floor(e)===e)return 0;let t=e.toString();if(t.indexOf(`.`)!==-1&&t.indexOf(`e-`)===-1)return t.split(`.`)[1].length;if(t.indexOf(`e-`)!==-1){let e=t.split(`e-`);return parseInt(e[1],10)}return 0}function Oo(e,t){let n=10**t;return Math.round(e*n)/n}function ko(e,t,n){if(typeof e==`number`){let r=n-t,i=Math.ceil(r/e),a=Do(e),o=10**a;Math.round(r*o)%Math.round(e*o)===0&&i++;let s=[];for(let n=0;n<i;n++){let r=Oo(t+n*e,a);s.push(r)}return s}return[...new Set(e)].filter(e=>e>=t&&e<=n).sort((e,t)=>e-t)}function Ao(e,t){if(t.length===0)return e;let n=t[0],r=Math.abs(e-n);for(let i of t){let t=Math.abs(e-i);t<r&&(r=t,n=i)}return n}function jo(e,t,n){let r=t.indexOf(e);return r===-1?Ao(e,t):n===`next`?r<t.length-1?t[r+1]:e:r>0?t[r-1]:e}function Mo(e,t,n=!0){let[r,i]=e,[a,o]=t,s=(o-a)/(i-r);return e=>{let t=a+s*(e-r);return n?t>Math.max(a,o)?Math.max(a,o):t<Math.min(a,o)?Math.min(a,o):t:t}}var No=Oe({component:`slider`,parts:[`root`,`thumb`,`range`,`tick`,`tick-label`,`thumb-label`]}),Po=new Mt(`Slider.Root`),Fo=class{opts;attachment;#e=w(!1);get isActive(){return V(this.#e)}set isActive(e){i(this.#e,e,!0)}#t=w(0);#n=y(()=>this.opts.orientation.current===`horizontal`?this.opts.dir.current===`rtl`?`rl`:`lr`:this.opts.dir.current===`rtl`?`tb`:`bt`);get direction(){return V(this.#n)}set direction(e){i(this.#n,e)}#r=y(()=>ko(this.opts.step.current,this.opts.min.current,this.opts.max.current));get normalizedSteps(){return V(this.#r)}set normalizedSteps(e){i(this.#r,e)}domContext;constructor(e){this.opts=e,this.attachment=Ne(e.ref),this.domContext=new jt(this.opts.ref),new pa(()=>this.opts.ref.current,this.#i)}#i=()=>{i(this.#t,V(this.#t)+1)};isThumbActive(e){return this.isActive}#a=y(()=>{if(!this.opts.disabled.current)return this.opts.orientation.current===`horizontal`?`pan-y`:`pan-x`});getAllThumbs=()=>{let e=this.opts.ref.current;return e?Array.from(e.querySelectorAll(No.selector(`thumb`))):[]};getThumbScale=()=>{V(this.#t);let e=this.opts.trackPadding?.current;if(e!==void 0&&e>0)return[e,100-e];if(this.opts.thumbPositioning.current===`exact`)return[0,100];let t=this.opts.orientation.current===`vertical`,n=this.getAllThumbs()[0],r=t?n?.offsetHeight:n?.offsetWidth;if(r===void 0||Number.isNaN(r)||r===0)return[0,100];let i=t?this.opts.ref.current?.offsetHeight:this.opts.ref.current?.offsetWidth;if(i===void 0||Number.isNaN(i)||i===0)return[0,100];let a=r/2/i*100;return[a,100-a]};getPositionFromValue=e=>{let t=this.getThumbScale();return Mo([this.opts.min.current,this.opts.max.current],t)(e)};#o=y(()=>({id:this.opts.id.current,"data-orientation":this.opts.orientation.current,"data-disabled":De(this.opts.disabled.current),style:{touchAction:V(this.#a)},[No.root]:``,...this.attachment}));get props(){return V(this.#o)}set props(e){i(this.#o,e)}},Io=class extends Fo{opts;isMulti=!1;constructor(e){super(e),this.opts=e,rn(()=>ke(G(this.domContext.getDocument(),`pointerdown`,this.handlePointerDown),G(this.domContext.getDocument(),`pointerup`,this.handlePointerUp),G(this.domContext.getDocument(),`pointermove`,this.handlePointerMove),G(this.domContext.getDocument(),`pointerleave`,this.handlePointerUp))),Rt([()=>this.opts.step.current,()=>this.opts.min.current,()=>this.opts.max.current,()=>this.opts.value.current],([e,t,n,r])=>{let i=ko(e,t,n),a=e=>i.includes(e),o=e=>Ao(e,i);a(r)||(this.opts.value.current=o(r))})}isTickValueSelected=e=>this.opts.value.current===e;applyPosition({clientXY:e,start:t,end:n}){let r=this.opts.min.current,i=this.opts.max.current,a=(e-t)/(n-t)*(i-r)+r;if(a<r)this.updateValue(r);else if(a>i)this.updateValue(i);else{let e=this.normalizedSteps,t=Ao(a,e);this.updateValue(t)}}updateValue=e=>{this.opts.value.current=Ao(e,this.normalizedSteps)};handlePointerMove=e=>{if(!this.isActive||this.opts.disabled.current)return;e.preventDefault(),e.stopPropagation();let t=this.opts.ref.current,n=this.getAllThumbs()[0];if(!t||!n)return;n.focus();let{left:r,right:i,top:a,bottom:o}=t.getBoundingClientRect();this.direction===`lr`?this.applyPosition({clientXY:e.clientX,start:r,end:i}):this.direction===`rl`?this.applyPosition({clientXY:e.clientX,start:i,end:r}):this.direction===`bt`?this.applyPosition({clientXY:e.clientY,start:o,end:a}):this.direction===`tb`&&this.applyPosition({clientXY:e.clientY,start:a,end:o})};handlePointerDown=e=>{if(e.button!==0||this.opts.disabled.current)return;let t=this.opts.ref.current,n=this.getAllThumbs()[0];if(!n||!t)return;let r=e.composedPath()[0]??e.target;zt(r)&&t.contains(r)&&(e.preventDefault(),n.focus(),this.isActive=!0,this.handlePointerMove(e))};handlePointerUp=()=>{this.opts.disabled.current||(this.isActive&&this.opts.onValueCommit.current(de(()=>this.opts.value.current)),this.isActive=!1)};#e=y(()=>{let e=this.opts.value.current;return Array.from({length:1},()=>{let t=e,n=this.getPositionFromValue(t),r=To(this.direction,n);return{role:`slider`,"aria-valuemin":this.opts.min.current,"aria-valuemax":this.opts.max.current,"aria-valuenow":t,"aria-disabled":Ae(this.opts.disabled.current),"aria-orientation":this.opts.orientation.current,"data-value":t,"data-orientation":this.opts.orientation.current,style:r,[No.thumb]:``}})});get thumbsPropsArr(){return V(this.#e)}set thumbsPropsArr(e){i(this.#e,e)}#t=y(()=>this.thumbsPropsArr.map((e,t)=>t));get thumbsRenderArr(){return V(this.#t)}set thumbsRenderArr(e){i(this.#t,e)}#n=y(()=>{let e=this.normalizedSteps,t=this.opts.value.current;return e.map((n,r)=>{let i=this.getPositionFromValue(n),a=r===0,o=r===e.length-1,s=a?0:o?-100:-50,c=Eo(this.direction,i,s),l=n<=t;return{"data-disabled":De(this.opts.disabled.current),"data-orientation":this.opts.orientation.current,"data-bounded":l?``:void 0,"data-value":n,"data-selected":this.isTickValueSelected(n)?``:void 0,style:c,[No.tick]:``}})});get ticksPropsArr(){return V(this.#n)}set ticksPropsArr(e){i(this.#n,e)}#r=y(()=>this.ticksPropsArr.map((e,t)=>t));get ticksRenderArr(){return V(this.#r)}set ticksRenderArr(e){i(this.#r,e)}#i=y(()=>this.ticksPropsArr.map((e,t)=>({value:e[`data-value`],index:t})));get tickItemsArr(){return V(this.#i)}set tickItemsArr(e){i(this.#i,e)}#a=y(()=>[{value:this.opts.value.current,index:0}]);get thumbItemsArr(){return V(this.#a)}set thumbItemsArr(e){i(this.#a,e)}#o=y(()=>({ticks:this.ticksRenderArr,thumbs:this.thumbsRenderArr,tickItems:this.tickItemsArr,thumbItems:this.thumbItemsArr}));get snippetProps(){return V(this.#o)}set snippetProps(e){i(this.#o,e)}},Lo=class extends Fo{opts;isMulti=!0;#e=w(null);get activeThumb(){return V(this.#e)}set activeThumb(e){i(this.#e,e,!0)}#t=w(0);get currentThumbIdx(){return V(this.#t)}set currentThumbIdx(e){i(this.#t,e,!0)}constructor(e){super(e),this.opts=e,rn(()=>ke(G(this.domContext.getDocument(),`pointerdown`,this.handlePointerDown),G(this.domContext.getDocument(),`pointerup`,this.handlePointerUp),G(this.domContext.getDocument(),`pointermove`,this.handlePointerMove),G(this.domContext.getDocument(),`pointerleave`,this.handlePointerUp))),Rt([()=>this.opts.step.current,()=>this.opts.min.current,()=>this.opts.max.current,()=>this.opts.value.current],([e,t,n,r])=>{let i=ko(e,t,n),a=e=>i.includes(e),o=e=>Ao(e,i);r.some(e=>!a(e))&&(this.opts.value.current=r.map(o))})}isTickValueSelected=e=>this.opts.value.current.includes(e);isThumbActive(e){return this.isActive&&this.activeThumb?.idx===e}applyPosition({clientXY:e,activeThumbIdx:t,start:n,end:r}){let i=this.opts.min.current,a=this.opts.max.current,o=(e-n)/(r-n)*(a-i)+i;if(o<i)this.updateValue(i,t);else if(o>a)this.updateValue(a,t);else{let e=this.normalizedSteps,n=Ao(o,e);this.updateValue(n,t)}}#n=e=>{let t=this.getAllThumbs();if(!t.length)return;for(let e of t)e.blur();let n=t.map(t=>{if(this.opts.orientation.current===`horizontal`){let{left:n,right:r}=t.getBoundingClientRect();return Math.abs(e.clientX-(n+r)/2)}{let{top:n,bottom:r}=t.getBoundingClientRect();return Math.abs(e.clientY-(n+r)/2)}}),r=t[n.indexOf(Math.min(...n))];return{node:r,idx:t.indexOf(r)}};handlePointerMove=e=>{if(!this.isActive||this.opts.disabled.current)return;e.preventDefault(),e.stopPropagation();let t=this.opts.ref.current,n=this.activeThumb;if(!t||!n)return;n.node.focus();let{left:r,right:i,top:a,bottom:o}=t.getBoundingClientRect(),s=this.direction;s===`lr`?this.applyPosition({clientXY:e.clientX,activeThumbIdx:n.idx,start:r,end:i}):s===`rl`?this.applyPosition({clientXY:e.clientX,activeThumbIdx:n.idx,start:i,end:r}):s===`bt`?this.applyPosition({clientXY:e.clientY,activeThumbIdx:n.idx,start:o,end:a}):s===`tb`&&this.applyPosition({clientXY:e.clientY,activeThumbIdx:n.idx,start:a,end:o})};handlePointerDown=e=>{if(e.button!==0||this.opts.disabled.current)return;let t=this.opts.ref.current,n=this.#n(e);if(!n||!t)return;let r=e.composedPath()[0]??e.target;zt(r)&&t.contains(r)&&(e.preventDefault(),this.activeThumb=n,n.node.focus(),this.isActive=!0,this.handlePointerMove(e))};handlePointerUp=()=>{this.opts.disabled.current||(this.isActive&&this.opts.onValueCommit.current(de(()=>this.opts.value.current)),this.isActive=!1)};getAllThumbs=()=>{let e=this.opts.ref.current;return e?Array.from(e.querySelectorAll(No.selector(`thumb`))):[]};updateValue=(e,t)=>{let n=this.opts.value.current;if(!n.length){this.opts.value.current.push(e);return}if(n[t]===e)return;let r=[...n];if(!ln(t,r))return;let i=r[t]>e?-1:1,a=()=>{let n=t+i;r[t]=r[n],r[n]=e;let a=this.getAllThumbs();a.length&&(a[n]?.focus(),this.activeThumb={node:a[n],idx:n})};if(this.opts.autoSort.current&&(i===-1&&e<r[t-1]||i===1&&e>r[t+1])){a(),this.opts.value.current=r;return}let o=this.normalizedSteps;r[t]=Ao(e,o),this.opts.value.current=r};#r=y(()=>{let e=this.opts.value.current;return Array.from({length:e.length||1},(t,n)=>{let r=de(()=>this.currentThumbIdx);r<e.length&&de(()=>{this.currentThumbIdx=r+1});let i=e[n],a=this.getPositionFromValue(i??0),o=To(this.direction,a);return{role:`slider`,"aria-valuemin":this.opts.min.current,"aria-valuemax":this.opts.max.current,"aria-valuenow":i,"aria-disabled":Ae(this.opts.disabled.current),"aria-orientation":this.opts.orientation.current,"data-value":i,"data-orientation":this.opts.orientation.current,style:o,[No.thumb]:``}})});get thumbsPropsArr(){return V(this.#r)}set thumbsPropsArr(e){i(this.#r,e)}#i=y(()=>this.thumbsPropsArr.map((e,t)=>t));get thumbsRenderArr(){return V(this.#i)}set thumbsRenderArr(e){i(this.#i,e)}#a=y(()=>{let e=this.normalizedSteps,t=this.opts.value.current;return e.map((n,r)=>{let i=this.getPositionFromValue(n),a=r===0,o=r===e.length-1,s=a?0:o?-100:-50,c=Eo(this.direction,i,s),l=t.length===1?n<=t[0]:t[0]<=n&&n<=t[t.length-1];return{"data-disabled":De(this.opts.disabled.current),"data-orientation":this.opts.orientation.current,"data-bounded":l?``:void 0,"data-value":n,style:c,[No.tick]:``}})});get ticksPropsArr(){return V(this.#a)}set ticksPropsArr(e){i(this.#a,e)}#o=y(()=>this.ticksPropsArr.map((e,t)=>t));get ticksRenderArr(){return V(this.#o)}set ticksRenderArr(e){i(this.#o,e)}#s=y(()=>this.ticksPropsArr.map((e,t)=>({value:e[`data-value`],index:t})));get tickItemsArr(){return V(this.#s)}set tickItemsArr(e){i(this.#s,e)}#c=y(()=>this.opts.value.current.map((e,t)=>({value:e,index:t})));get thumbItemsArr(){return V(this.#c)}set thumbItemsArr(e){i(this.#c,e)}#l=y(()=>({ticks:this.ticksRenderArr,thumbs:this.thumbsRenderArr,tickItems:this.tickItemsArr,thumbItems:this.thumbItemsArr}));get snippetProps(){return V(this.#l)}set snippetProps(e){i(this.#l,e)}},Ro=class{static create(e){let{type:t,...n}=e,r=t===`single`?new Io(n):new Lo(n);return Po.set(r)}},zo=[$t,Lt,Ot,Dt,Gt,`End`],Bo=class e{static create(t){return new e(t,Po.get())}opts;root;attachment;constructor(e,t){this.opts=e,this.root=t,this.attachment=Ne(e.ref)}#e=y(()=>{if(Array.isArray(this.root.opts.value.current)){let e=this.root.opts.value.current.length>1?this.root.getPositionFromValue(Math.min(...this.root.opts.value.current)??0):0,t=100-this.root.getPositionFromValue(Math.max(...this.root.opts.value.current)??0);return{position:`absolute`,...wo(this.root.direction,e,t)}}{let e=this.root.opts.trackPadding?.current,t=this.root.opts.value.current,n=this.root.opts.max.current,r=e!==void 0&&e>0&&t===n?0:100-this.root.getPositionFromValue(t);return{position:`absolute`,...wo(this.root.direction,0,r)}}});get rangeStyles(){return V(this.#e)}set rangeStyles(e){i(this.#e,e)}#t=y(()=>({id:this.opts.id.current,"data-orientation":this.root.opts.orientation.current,"data-disabled":De(this.root.opts.disabled.current),style:this.rangeStyles,[No.range]:``,...this.attachment}));get props(){return V(this.#t)}set props(e){i(this.#t,e)}},Vo=class e{static create(t){return new e(t,Po.get())}opts;root;attachment;#e=y(()=>this.root.opts.disabled.current||this.opts.disabled.current);constructor(e,t){this.opts=e,this.root=t,this.attachment=Ne(e.ref),this.onkeydown=this.onkeydown.bind(this)}#t(e){this.root.isMulti?this.root.updateValue(e,this.opts.index.current):this.root.updateValue(e)}onkeydown(e){if(V(this.#e))return;let t=this.opts.ref.current;if(!t)return;let n=this.root.getAllThumbs();if(!n.length)return;let r=n.indexOf(t);if(this.root.isMulti&&(this.root.currentThumbIdx=r),!zo.includes(e.key))return;e.preventDefault();let i=this.root.opts.min.current,a=this.root.opts.max.current,o=this.root.opts.value.current,s=Array.isArray(o)?o[r]:o,c=this.root.opts.orientation.current,l=this.root.direction,u=this.root.normalizedSteps;switch(e.key){case Gt:this.#t(i);break;case`End`:this.#t(a);break;case $t:if(c!==`horizontal`)break;if(e.metaKey){let e=l===`rl`?a:i;this.#t(e)}else{let e=jo(s,u,l===`rl`?`next`:`prev`);this.#t(e)}break;case Lt:if(c!==`horizontal`)break;if(e.metaKey){let e=l===`rl`?i:a;this.#t(e)}else{let e=jo(s,u,l===`rl`?`prev`:`next`);this.#t(e)}break;case Ot:if(e.metaKey){let e=l===`tb`?i:a;this.#t(e)}else{let e=jo(s,u,l===`tb`?`prev`:`next`);this.#t(e)}break;case Dt:if(e.metaKey){let e=l===`tb`?a:i;this.#t(e)}else{let e=jo(s,u,l===`tb`?`next`:`prev`);this.#t(e)}}this.root.opts.onValueCommit.current(this.root.opts.value.current)}#n=y(()=>({...this.root.thumbsPropsArr[this.opts.index.current],id:this.opts.id.current,onkeydown:this.onkeydown,"data-active":this.root.isThumbActive(this.opts.index.current)?``:void 0,"data-disabled":De(this.opts.disabled.current||this.root.opts.disabled.current),tabindex:this.opts.disabled.current||this.root.opts.disabled.current?-1:0,...this.attachment}));get props(){return V(this.#n)}set props(e){i(this.#n,e)}},Ho=new Set([`$$slots`,`$$events`,`$$legacy`,`children`,`child`,`id`,`ref`,`value`,`type`,`onValueChange`,`onValueCommit`,`disabled`,`min`,`max`,`step`,`dir`,`autoSort`,`orientation`,`thumbPositioning`,`trackPadding`]),Uo=m(`<span><!></span>`);function Wo(e,t){let n=A();l(t,!0);let r=P(t,`id`,19,()=>Me(n)),i=P(t,`ref`,15,null),a=P(t,`value`,15),o=P(t,`onValueChange`,3,Xt),s=P(t,`onValueCommit`,3,Xt),c=P(t,`disabled`,3,!1),u=P(t,`step`,3,1),d=P(t,`dir`,3,`ltr`),p=P(t,`autoSort`,3,!0),m=P(t,`orientation`,3,`horizontal`),g=P(t,`thumbPositioning`,3,`contain`),_=H(t,Ho),v=y(()=>t.min===void 0?Array.isArray(u())?Math.min(...u()):0:t.min),x=y(()=>t.max===void 0?Array.isArray(u())?Math.max(...u()):100:t.max);function S(){if(a()===void 0)return t.type===`single`?V(v):[]}S(),Rt.pre(()=>a(),()=>{S()});let C=Ro.create({id:Y(()=>r()),ref:Y(()=>i(),e=>i(e)),value:Y(()=>a(),e=>{a(e),o()(e)}),onValueCommit:Y(()=>s()),disabled:Y(()=>c()),min:Y(()=>V(v)),max:Y(()=>V(x)),step:Y(()=>u()),dir:Y(()=>d()),autoSort:Y(()=>p()),orientation:Y(()=>m()),thumbPositioning:Y(()=>g()),type:t.type,trackPadding:Y(()=>t.trackPadding)}),w=y(()=>Te(_,C.props));var T=U(),k=q(T),j=e=>{var n=U(),r=q(n);{let e=y(()=>({props:V(w),...C.snippetProps}));f(r,()=>t.child,()=>V(e))}h(e,n)},M=e=>{var n=Uo();K(n,()=>({...V(w)}));var r=N(n);f(r,()=>t.children??E,()=>C.snippetProps),O(n),h(e,n)};D(k,e=>{t.child?e(j):e(M,-1)}),h(e,T),b()}var Go=new Set([`$$slots`,`$$events`,`$$legacy`,`children`,`child`,`ref`,`id`]),Ko=m(`<span><!></span>`);function qo(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`id`,19,()=>Me(n)),a=H(t,Go),o=Bo.create({id:Y(()=>i()),ref:Y(()=>r(),e=>r(e))}),s=y(()=>Te(a,o.props));var c=U(),u=q(c),d=e=>{var n=U(),r=q(n);f(r,()=>t.child,()=>({props:V(s)})),h(e,n)},p=e=>{var n=Ko();K(n,()=>({...V(s)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(u,e=>{t.child?e(d):e(p,-1)}),h(e,c),b()}var Jo=new Set([`$$slots`,`$$events`,`$$legacy`,`children`,`child`,`ref`,`id`,`index`,`disabled`]),Yo=m(`<span><!></span>`);function Xo(e,t){let n=A();l(t,!0);let r=P(t,`ref`,15,null),i=P(t,`id`,19,()=>Me(n)),a=P(t,`disabled`,3,!1),o=H(t,Jo),s=Vo.create({id:Y(()=>i()),ref:Y(()=>r(),e=>r(e)),index:Y(()=>t.index),disabled:Y(()=>a())}),c=y(()=>Te(o,s.props));var u=U(),d=q(u),p=e=>{var n=U(),r=q(n);{let e=y(()=>({active:s.root.isThumbActive(s.opts.index.current),props:V(c)}));f(r,()=>t.child,()=>V(e))}h(e,n)},m=e=>{var n=Yo();K(n,()=>({...V(c)}));var r=N(n);{let e=y(()=>({active:s.root.isThumbActive(s.opts.index.current)}));f(r,()=>t.children??E,()=>V(e))}O(n),h(e,n)};D(d,e=>{t.child?e(p):e(m,-1)}),h(e,u),b()}var Zo=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`checked`,`indeterminate`,`class`]),Qo=m(`<div data-slot="checkbox-indicator" class="text-current transition-none"><!></div>`);function $o(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`checked`,15,!1),i=P(t,`indeterminate`,15,!1),a=H(t,Zo);var o=U(),s=q(o);{let e=(e,t)=>{let n=()=>(t?.()).checked,r=()=>(t?.()).indeterminate;var i=Qo(),a=N(i),o=e=>{$e(e,{class:`size-3.5`})},s=e=>{xt(e,{class:`size-3.5`})};D(a,e=>{n()?e(o):r()&&e(s,1)}),O(i),h(e,i)},o=y(()=>Pe(`peer size-4 shadow-xs flex shrink-0 items-center justify-center rounded-sm border border-input transition-shadow outline-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[state=checked]:border-primary data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:bg-input/30 dark:aria-invalid:ring-destructive/40 dark:data-[state=checked]:bg-primary`,t.class));c(s,()=>Ur,(t,s)=>{s(t,W({"data-slot":`checkbox`,get class(){return V(o)}},()=>a,{get ref(){return n()},set ref(e){n(e)},get checked(){return r()},set checked(e){r(e)},get indeterminate(){return i()},set indeterminate(e){i(e)},children:e,$$slots:{default:!0}}))})}h(e,o),b()}var es=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`value`,`orientation`,`class`,`thumbLabelledby`]),ts=m(`<span data-slot="slider-track"><!></span> <!>`,1);function ns(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`value`,15),i=P(t,`orientation`,3,`horizontal`),a=H(t,es);var o=U(),s=q(o);{let e=(e,n)=>{let r=()=>(n?.()).thumbs;var a=ts(),o=q(a),s=N(o);{let e=y(()=>Pe(`absolute bg-primary data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full`));c(s,()=>qo,(t,n)=>{n(t,{"data-slot":`slider-range`,get class(){return V(e)}})})}O(o);var l=I(o,2);S(l,16,r,e=>e,(e,n)=>{var r=U(),i=q(r);c(i,()=>Xo,(e,r)=>{r(e,{"data-slot":`slider-thumb`,get index(){return n},get"aria-labelledby"(){return t.thumbLabelledby},class:`size-4 shadow-sm block shrink-0 rounded-full border border-primary bg-background ring-ring/50 transition hover:ring-4 focus-visible:ring-4 focus-visible:ring-ring focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50`})}),h(e,r)}),z(e=>{F(o,`data-orientation`,i()),v(o,1,e)},[()=>re(Pe(`data-[orientation=horizontal]:h-1.5 data-[orientation=vertical]:w-1.5 relative grow overflow-hidden rounded-full bg-input data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full dark:bg-foreground/15`))]),h(e,a)},o=y(()=>Pe(`data-[orientation=vertical]:min-h-44 relative flex w-full touch-none items-center select-none data-[disabled]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col`,t.class));c(s,()=>Wo,(t,s)=>{s(t,W({"data-slot":`slider`,get orientation(){return i()},get class(){return V(o)}},()=>a,{get ref(){return n()},set ref(e){n(e)},get value(){return r()},set value(e){r(e)},children:e,$$slots:{default:!0}}))})}h(e,o),b()}var rs=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`checked`,`indeterminate`,`class`,`children`,`closeOnSelect`]),is=m(`<span class="right-2 pointer-events-none absolute flex items-center justify-center" data-slot="dropdown-menu-checkbox-item-indicator"><!></span> <!>`,1);function as(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`checked`,15,!1),i=P(t,`indeterminate`,15,!1),a=P(t,`closeOnSelect`,3,!1),o=H(t,rs);var s=U(),u=q(s);{let e=(e,n)=>{let r=()=>(n?.()).checked,i=()=>(n?.()).indeterminate;var a=is(),o=q(a),s=N(o),c=e=>{xt(e,{})},l=e=>{$e(e,{})};D(s,e=>{i()?e(c):r()&&e(l,1)}),O(o);var u=I(o,2);f(u,()=>t.children??E),h(e,a)},s=y(()=>Pe(`gap-1.5 py-1 pr-8 pl-1.5 text-sm data-inset:pl-7 [&_svg:not([class*='size-'])]:size-4 relative flex cursor-default items-center rounded-md outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0`,t.class));c(u,()=>ta,(t,c)=>{c(t,W({get closeOnSelect(){return a()},"data-slot":`dropdown-menu-checkbox-item`,get class(){return V(s)}},()=>o,{get ref(){return n()},set ref(e){n(e)},get checked(){return r()},set checked(e){r(e)},get indeterminate(){return i()},set indeterminate(e){i(e)},children:e,$$slots:{default:!0}}))})}h(e,s),b()}var os=new Set([`$$slots`,`$$events`,`$$legacy`]);function ss(e,t){let n=H(t,os);var r=U(),i=q(r);c(i,()=>Ht,(e,t)=>{t(e,W(()=>n))}),h(e,r)}var cs=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`sideOffset`,`align`,`portalProps`,`class`]);function ls(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`sideOffset`,3,4),i=P(t,`align`,3,`start`),a=H(t,cs);ss(e,W(()=>t.portalProps,{children:(e,o)=>{var s=U(),l=q(s);{let e=y(()=>Pe(`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 min-w-32 p-1 shadow-md z-50 max-h-(--bits-dropdown-menu-content-available-height) w-(--bits-dropdown-menu-anchor-width) origin-(--bits-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover text-popover-foreground ring-1 ring-foreground/10 duration-100 data-[state=closed]:overflow-hidden`,t.class));c(l,()=>aa,(t,o)=>{o(t,W({"data-slot":`dropdown-menu-content`,get sideOffset(){return r()},get align(){return i()},get class(){return V(e)}},()=>a,{get ref(){return n()},set ref(e){n(e)}}))})}h(e,s)},$$slots:{default:!0}})),b()}var us=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`inset`,`variant`]);function ds(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`variant`,3,`default`),i=H(t,us);var a=U(),o=q(a);{let e=y(()=>Pe(`gap-1.5 px-1.5 py-1 text-sm data-inset:pl-7 [&_svg:not([class*='size-'])]:size-4 group/dropdown-menu-item relative flex cursor-default items-center rounded-md outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 data-[variant=destructive]:*:[svg]:text-destructive`,t.class));c(o,()=>Li,(a,o)=>{o(a,W({"data-slot":`dropdown-menu-item`,get"data-inset"(){return t.inset},get"data-variant"(){return r()},get class(){return V(e)}},()=>i,{get ref(){return n()},set ref(e){n(e)}}))})}h(e,a),b()}var fs=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`value`]);function ps(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`value`,15),i=H(t,fs);var a=U(),o=q(a);c(o,()=>Ki,(e,t)=>{t(e,W({"data-slot":`dropdown-menu-radio-group`},()=>i,{get ref(){return n()},set ref(e){n(e)},get value(){return r()},set value(e){r(e)}}))}),h(e,a),b()}var ms=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`children`,`closeOnSelect`]),hs=m(`<span class="right-2 pointer-events-none absolute flex items-center justify-center" data-slot="dropdown-menu-radio-item-indicator"><!></span> <!>`,1);function gs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`closeOnSelect`,3,!1),i=H(t,ms);var a=U(),o=q(a);{let e=(e,n)=>{let r=()=>(n?.()).checked;var i=hs(),a=q(i),o=N(a),s=e=>{$e(e,{})};D(o,e=>{r()&&e(s)}),O(a);var c=I(a,2);f(c,()=>t.children??E,()=>({checked:r()})),h(e,i)},a=y(()=>Pe(`gap-1.5 py-1 pr-8 pl-1.5 text-sm data-inset:pl-7 [&_svg:not([class*='size-'])]:size-4 relative flex cursor-default items-center rounded-md outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0`,t.class));c(o,()=>Bi,(t,o)=>{o(t,W({get closeOnSelect(){return r()},"data-slot":`dropdown-menu-radio-item`,get class(){return V(a)}},()=>i,{get ref(){return n()},set ref(e){n(e)},children:e,$$slots:{default:!0}}))})}h(e,a),b()}var _s=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`]);function vs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,_s);var i=U(),a=q(i);{let e=y(()=>Pe(`-mx-1 my-1 h-px bg-border`,t.class));c(a,()=>Ui,(t,i)=>{i(t,W({"data-slot":`dropdown-menu-separator`,get class(){return V(e)}},()=>r,{get ref(){return n()},set ref(e){n(e)}}))})}h(e,i),b()}var ys=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`align`,`alignOffset`,`portalProps`]);function bs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`align`,3,`start`),i=P(t,`alignOffset`,19,()=>-3),a=H(t,ys);ss(e,W(()=>t.portalProps,{children:(e,o)=>{var s=U(),l=q(s);{let e=y(()=>Pe(`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 min-w-24 p-1 shadow-lg z-50 origin-(--bits-dropdown-menu-content-transform-origin) overflow-hidden rounded-lg bg-popover text-popover-foreground ring-1 ring-foreground/10 duration-100`,t.class));c(l,()=>Yi,(t,o)=>{o(t,W({"data-slot":`dropdown-menu-sub-content`,get align(){return r()},get alignOffset(){return i()},get class(){return V(e)}},()=>a,{get ref(){return n()},set ref(e){n(e)}}))})}h(e,s)},$$slots:{default:!0}})),b()}var xs=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`inset`,`children`]),Ss=m(`<!> <!>`,1);function Cs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,xs);var i=U(),a=q(i);{let e=y(()=>Pe(`gap-1.5 px-1.5 py-1 text-sm data-inset:pl-7 [&_svg:not([class*='size-'])]:size-4 flex cursor-default items-center rounded-md outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0`,t.class));c(a,()=>Qi,(i,a)=>{a(i,W({"data-slot":`dropdown-menu-sub-trigger`,get"data-inset"(){return t.inset},get class(){return V(e)}},()=>r,{get ref(){return n()},set ref(e){n(e)},children:(e,n)=>{var r=Ss(),i=q(r);f(i,()=>t.children??E);var a=I(i,2);rt(a,{class:`ml-auto`}),h(e,r)},$$slots:{default:!0}}))})}h(e,i),b()}var ws=new Set([`$$slots`,`$$events`,`$$legacy`,`open`]);function Ts(e,t){l(t,!0);let n=P(t,`open`,15,!1),r=H(t,ws);var i=U(),a=q(i);c(a,()=>Pi,(e,t)=>{t(e,W(()=>r,{get open(){return n()},set open(e){n(e)}}))}),h(e,i),b()}var Es=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`]);function Ds(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,Es);var i=U(),a=q(i);c(a,()=>ca,(e,t)=>{t(e,W({"data-slot":`dropdown-menu-trigger`},()=>r,{get ref(){return n()},set ref(e){n(e)}}))}),h(e,i),b()}var Os=new Set([`$$slots`,`$$events`,`$$legacy`,`open`]);function ks(e,t){l(t,!0);let n=P(t,`open`,15,!1),r=H(t,Os);var i=U(),a=q(i);c(a,()=>na,(e,t)=>{t(e,W(()=>r,{get open(){return n()},set open(e){n(e)}}))}),h(e,i),b()}var As=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`children`]),js=m(`<div><!></div>`);function Ms(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,As);var i=js();K(i,e=>({"data-slot":`empty-description`,class:e,...r}),[()=>Pe(`text-sm/relaxed text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary`,t.class)]);var a=N(i);f(a,()=>t.children??E),O(i),L(i,e=>n(e),()=>n()),h(e,i),b()}var Ns=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`children`]),Ps=m(`<div><!></div>`);function Fs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,Ns);var i=Ps();K(i,e=>({"data-slot":`empty-header`,class:e,...r}),[()=>Pe(`gap-2 max-w-sm flex flex-col items-center`,t.class)]);var a=N(i);f(a,()=>t.children??E),O(i),L(i,e=>n(e),()=>n()),h(e,i),b()}var Is=Ie({base:`mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0`,variants:{variant:{default:`bg-transparent`,icon:`bg-muted text-foreground flex size-8 shrink-0 items-center justify-center rounded-lg [&_svg:not([class*='size-'])]:size-4`}},defaultVariants:{variant:`default`}}),Ls=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`children`,`variant`]),Rs=m(`<div><!></div>`);function zs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`variant`,3,`default`),i=H(t,Ls);var a=Rs();K(a,e=>({"data-slot":`empty-icon`,"data-variant":r(),class:e,...i}),[()=>Pe(Is({variant:r()}),t.class)]);var o=N(a);f(o,()=>t.children??E),O(a),L(a,e=>n(e),()=>n()),h(e,a),b()}var Bs=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`children`]),Vs=m(`<div><!></div>`);function Hs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,Bs);var i=Vs();K(i,e=>({"data-slot":`empty-title`,class:e,...r}),[()=>Pe(`text-sm font-medium tracking-tight`,t.class)]);var a=N(i);f(a,()=>t.children??E),O(i),L(i,e=>n(e),()=>n()),h(e,i),b()}var Us=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`children`]),Ws=m(`<div><!></div>`);function Gs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,Us);var i=Ws();K(i,e=>({"data-slot":`empty`,class:e,...r}),[()=>Pe(`gap-4 p-6 min-w-0 flex w-full flex-1 flex-col items-center justify-center rounded-xl border-dashed text-center text-balance`,t.class)]);var a=N(i);f(a,()=>t.children??E),O(i),L(i,e=>n(e),()=>n()),h(e,i),b()}var Ks=new Set([`$$slots`,`$$events`,`$$legacy`,`class`,`role`,`name`,`color`,`stroke`,`className`,`aria-label`]);function qs(e,t){l(t,!0);let n=P(t,`role`,3,`status`),r=P(t,`aria-label`,3,`Loading`),i=H(t,Ks);{let a=y(()=>Pe(`size-4 animate-spin`,t.class));sr(e,W({get role(){return n()}},()=>t.name==null?{}:{name:t.name},()=>t.color==null?{}:{color:t.color},()=>t.stroke==null?{}:{stroke:t.stroke},()=>t.className==null?{}:{className:t.className},{get"aria-label"(){return r()},get class(){return V(a)}},()=>i))}b()}var Js=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`orientation`,`children`]),Ys=m(`<!> <!>`,1);function Xs(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`orientation`,3,`vertical`),i=H(t,Js);var a=U(),o=q(a);{let e=y(()=>Pe(`flex touch-none p-px transition-colors select-none`,r()===`vertical`&&`w-2.5 h-full border-s border-s-transparent`,r()===`horizontal`&&`h-2.5 flex-col border-t border-t-transparent`,t.class));c(o,()=>po,(a,o)=>{o(a,W({"data-slot":`scroll-area-scrollbar`,get orientation(){return r()},get class(){return V(e)}},()=>i,{get ref(){return n()},set ref(e){n(e)},children:(e,n)=>{var r=Ys(),i=q(r);f(i,()=>t.children??E);var a=I(i,2);c(a,()=>vo,(e,t)=>{t(e,{"data-slot":`scroll-area-thumb`,class:`relative flex-1 rounded-full bg-border`})}),h(e,r)},$$slots:{default:!0}}))})}h(e,a),b()}var Zs=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`viewportRef`,`class`,`orientation`,`scrollbarXClasses`,`scrollbarYClasses`,`children`]),Qs=m(`<!> <!> <!> <!>`,1);function $s(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`viewportRef`,15,null),i=P(t,`orientation`,3,`vertical`),a=P(t,`scrollbarXClasses`,3,``),o=P(t,`scrollbarYClasses`,3,``),s=H(t,Zs);var u=U(),d=q(u);{let e=y(()=>Pe(`relative`,t.class));c(d,()=>Ka,(l,u)=>{u(l,W({"data-slot":`scroll-area`,get class(){return V(e)}},()=>s,{get ref(){return n()},set ref(e){n(e)},children:(e,n)=>{var s=Qs(),l=q(s);c(l,()=>Ya,(e,n)=>{n(e,{"data-slot":`scroll-area-viewport`,class:`size-full rounded-inherit ring-ring/10 outline-ring transition focus-visible:ring-4 focus-visible:outline-1 dark:ring-ring/20`,get ref(){return r()},set ref(e){r(e)},children:(e,n)=>{var r=U(),i=q(r);f(i,()=>t.children??E),h(e,r)},$$slots:{default:!0}})});var u=I(l,2),d=e=>{Xs(e,{orientation:`vertical`,get class(){return o()}})};D(u,e=>{(i()===`vertical`||i()===`both`)&&e(d)});var p=I(u,2),m=e=>{Xs(e,{orientation:`horizontal`,get class(){return a()}})};D(p,e=>{(i()===`horizontal`||i()===`both`)&&e(m)});var g=I(p,2);c(g,()=>Co,(e,t)=>{t(e,{})}),h(e,s)},$$slots:{default:!0}}))})}h(e,u),b()}function ec(e){return typeof e==`function`}function tc(e){return typeof e==`object`&&!!e}var nc=[`string`,`number`,`bigint`,`boolean`];function rc(e){return e==null||nc.includes(typeof e)?!0:Array.isArray(e)?e.every(e=>rc(e)):typeof e==`object`&&Object.getPrototypeOf(e)===Object.prototype}var ic=Symbol(`box`),ac=Symbol(`is-writable`);function oc(e){return tc(e)&&ic in e}function sc(e){return cc.isBox(e)&&ac in e}function cc(e){let t=w(fe(e));return{[ic]:!0,[ac]:!0,get current(){return V(t)},set current(e){i(t,e,!0)}}}function lc(e,t){let n=y(e);return t?{[ic]:!0,[ac]:!0,get current(){return V(n)},set current(e){t(e)}}:{[ic]:!0,get current(){return e()}}}function uc(e){return cc.isBox(e)?e:ec(e)?cc.with(e):cc(e)}function dc(e){return Object.entries(e).reduce((e,[t,n])=>cc.isBox(n)?(cc.isWritableBox(n)?Object.defineProperty(e,t,{get(){return n.current},set(e){n.current=e}}):Object.defineProperty(e,t,{get(){return n.current}}),e):Object.assign(e,{[t]:n}),{})}function fc(e){return cc.isWritableBox(e)?{[ic]:!0,get current(){return e.current}}:e}cc.from=uc,cc.with=lc,cc.flatten=dc,cc.readonly=fc,cc.isBox=oc,cc.isWritableBox=sc;function pc(...e){return function(t){for(let n of e)if(n){if(t.defaultPrevented)return;typeof n==`function`?n.call(this,t):n.current?.call(this,t)}}}var mc=/\d/,hc=[`-`,`_`,`/`,`.`];function gc(e=``){if(!mc.test(e))return e!==e.toLowerCase()}function _c(e){let t=[],n=``,r,i;for(let a of e){let e=hc.includes(a);if(e===!0){t.push(n),n=``,r=void 0;continue}let o=gc(a);if(i===!1){if(r===!1&&o===!0){t.push(n),n=a,r=o;continue}if(r===!0&&o===!1&&n.length>1){let e=n.at(-1);t.push(n.slice(0,Math.max(0,n.length-1))),n=e+a,r=o;continue}}n+=a,r=o,i=e}return t.push(n),t}function vc(e){return e?_c(e).map(e=>bc(e)).join(``):``}function yc(e){return xc(vc(e||``))}function bc(e){return e?e[0].toUpperCase()+e.slice(1):``}function xc(e){return e?e[0].toLowerCase()+e.slice(1):``}function Sc(e){if(!e)return{};let t={};function n(e,n){if(e.startsWith(`-moz-`)||e.startsWith(`-webkit-`)||e.startsWith(`-ms-`)||e.startsWith(`-o-`)){t[vc(e)]=n;return}if(e.startsWith(`--`)){t[e]=n;return}t[yc(e)]=n}return Ce(e,n),t}function Cc(...e){return(...t)=>{for(let n of e)typeof n==`function`&&n(...t)}}function wc(e,t,n,r){let i=Array.isArray(t)?t:[t];return i.forEach(t=>e.addEventListener(t,n,r)),()=>{i.forEach(t=>e.removeEventListener(t,n,r))}}function Tc(e,t){let n=RegExp(e,`g`);return e=>{if(typeof e!=`string`)throw TypeError(`expected an argument of type string, but got ${typeof e}`);return e.match(n)?e.replace(n,t):e}}var Ec=Tc(/[A-Z]/,e=>`-${e.toLowerCase()}`);function Dc(e){if(!e||typeof e!=`object`||Array.isArray(e))throw TypeError(`expected an argument of type object, but got ${typeof e}`);return Object.keys(e).map(t=>`${Ec(t)}: ${e[t]};`).join(`
2
2
  `)}function Oc(e={}){return Dc(e).replace(`
3
3
  `,` `)}Oc({position:`absolute`,width:`1px`,height:`1px`,padding:`0`,margin:`-1px`,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,borderWidth:`0`,transform:`translateX(-100%)`});var kc=new Set(`onabort.onanimationcancel.onanimationend.onanimationiteration.onanimationstart.onauxclick.onbeforeinput.onbeforetoggle.onblur.oncancel.oncanplay.oncanplaythrough.onchange.onclick.onclose.oncompositionend.oncompositionstart.oncompositionupdate.oncontextlost.oncontextmenu.oncontextrestored.oncopy.oncuechange.oncut.ondblclick.ondrag.ondragend.ondragenter.ondragleave.ondragover.ondragstart.ondrop.ondurationchange.onemptied.onended.onerror.onfocus.onfocusin.onfocusout.onformdata.ongotpointercapture.oninput.oninvalid.onkeydown.onkeypress.onkeyup.onload.onloadeddata.onloadedmetadata.onloadstart.onlostpointercapture.onmousedown.onmouseenter.onmouseleave.onmousemove.onmouseout.onmouseover.onmouseup.onpaste.onpause.onplay.onplaying.onpointercancel.onpointerdown.onpointerenter.onpointerleave.onpointermove.onpointerout.onpointerover.onpointerup.onprogress.onratechange.onreset.onresize.onscroll.onscrollend.onsecuritypolicyviolation.onseeked.onseeking.onselect.onselectionchange.onselectstart.onslotchange.onstalled.onsubmit.onsuspend.ontimeupdate.ontoggle.ontouchcancel.ontouchend.ontouchmove.ontouchstart.ontransitioncancel.ontransitionend.ontransitionrun.ontransitionstart.onvolumechange.onwaiting.onwebkitanimationend.onwebkitanimationiteration.onwebkitanimationstart.onwebkittransitionend.onwheel`.split(`.`));function Ac(e){return kc.has(e)}function jc(...e){let n={...e[0]};for(let r=1;r<e.length;r++){let i=e[r];if(i){for(let e of Object.keys(i)){let r=n[e],a=i[e],o=typeof r==`function`,s=typeof a==`function`;if(o&&typeof s&&Ac(e))n[e]=pc(r,a);else if(o&&s)n[e]=Cc(r,a);else if(e===`class`){let i=rc(r),o=rc(a);i&&o?n[e]=t(r,a):i?n[e]=t(r):o&&(n[e]=t(a))}else if(e===`style`){let t=typeof r==`object`,i=typeof a==`object`,o=typeof r==`string`,s=typeof a==`string`;if(t&&i)n[e]={...r,...a};else if(t&&s){let t=Sc(a);n[e]={...r,...t}}else if(o&&i)n[e]={...Sc(r),...a};else if(o&&s){let t=Sc(r),i=Sc(a);n[e]={...t,...i}}else t?n[e]=r:i?n[e]=a:o?n[e]=r:s&&(n[e]=a)}else n[e]=a===void 0?r:a}for(let e of Object.getOwnPropertySymbols(i)){let t=n[e],r=i[e];n[e]=r===void 0?t:r}}}return typeof n.style==`object`&&(n.style=Oc(n.style).replaceAll(`
4
- `,` `)),n.hidden!==!0&&(n.hidden=void 0,delete n.hidden),n.disabled!==!0&&(n.disabled=void 0,delete n.disabled),n}var Mc=typeof window<`u`?window:void 0;typeof window<`u`&&window.document,typeof window<`u`&&window.navigator,typeof window<`u`&&window.location;function Nc(e){let t=e.activeElement;for(;t?.shadowRoot;){let e=t.shadowRoot.activeElement;if(e===t)break;t=e}return t}new class{#e;#t;constructor(e={}){let{window:t=Mc,document:n=t?.document}=e;t!==void 0&&(this.#e=n,this.#t=u(e=>{let n=fe(t,`focusin`,e),r=fe(t,`focusout`,e);return()=>{n(),r()}}))}get current(){return this.#t?.(),this.#e?Nc(this.#e):null}};function Pc(e){se().then(e)}var Fc=9;function Ic(e){return tc(e)&&e.nodeType===Fc}function Lc(e){return tc(e)&&e.constructor?.name===`VisualViewport`}function Rc(e){return Ic(e)?e:Lc(e)?e.document:e?.ownerDocument??document}function zc(e){let t=e.activeElement;for(;t?.shadowRoot;){let e=t.shadowRoot.activeElement;if(e===t)break;t=e}return t}var Bc=class{element;#e=y(()=>this.element.current?this.element.current.getRootNode()??document:document);get root(){return V(this.#e)}set root(e){i(this.#e,e)}constructor(e){this.element=typeof e==`function`?cc.with(e):e}getDocument=()=>Rc(this.root);getWindow=()=>this.getDocument().defaultView??window;getActiveElement=()=>zc(this.root);isActiveElement=e=>e===this.getActiveElement();getElementById(e){return this.root.getElementById(e)}querySelector=e=>this.root?this.root.querySelector(e):null;querySelectorAll=e=>this.root?this.root.querySelectorAll(e):[];setTimeout=(e,t)=>this.getWindow().setTimeout(e,t);clearTimeout=e=>this.getWindow().clearTimeout(e)};function Vc(e,t){return{[ue()]:n=>cc.isBox(e)?(e.current=n,de(()=>t?.(n)),()=>{`isConnected`in n&&n.isConnected||(e.current=null,t?.(null))}):(e(n),de(()=>t?.(n)),()=>{`isConnected`in n&&n.isConnected||(e(null),t?.(null))})}}function Hc({layout:e,panesArray:t,pivotIndices:n}){let r=0,i=100,a=0,o=0,s=n[0];for(let e=0;e<t.length;e++){let{maxSize:n=100,minSize:c=0}=t[e].constraints;e===s?(r=c,i=n):(a+=c,o+=n)}return{valueMax:Math.min(i,100-a),valueMin:Math.max(r,100-o),valueNow:e[s]}}function Uc(e,t=`Assertion failed!`){if(!e)throw console.error(t),Error(t)}function Wc(e,t,n=10){return Gc(e,t,n)===0}function Gc(e,t,n=10){let r=qc(e,n),i=qc(t,n);return Math.sign(r-i)}function Kc(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function qc(e,t){return Number.parseFloat(e.toFixed(t))}var Jc=typeof document<`u`;function Yc(e){return e instanceof HTMLElement}function Xc(e){return e.type===`keydown`}function Zc(e){return e.type.startsWith(`mouse`)}function Qc(e){return e.type.startsWith(`touch`)}function $c({paneConstraints:e,paneIndex:t,initialSize:n}){let r=e[t];Uc(r!=null,`Pane constraints should not be null.`);let{collapsedSize:i=0,collapsible:a,maxSize:o=100,minSize:s=0}=r,c=n;return Gc(c,s)<0&&(c=el(c,a,i,s)),c=Math.min(o,c),Number.parseFloat(c.toFixed(10))}function el(e,t,n,r){return t&&Gc(e,(n+r)/2)<0?n:r}function tl(){}function nl({groupId:e,layout:t,panesArray:n,domContext:r}){let i=rl(e,r);for(let e=0;e<n.length-1;e++){let{valueMax:r,valueMin:a,valueNow:o}=Hc({layout:t,panesArray:n,pivotIndices:[e,e+1]}),s=i[e];if(Yc(s)){let t=n[e];s.setAttribute(`aria-controls`,t.opts.id.current),s.setAttribute(`aria-valuemax`,`${Math.round(r)}`),s.setAttribute(`aria-valuemin`,`${Math.round(a)}`),s.setAttribute(`aria-valuenow`,o==null?``:`${Math.round(o)}`)}}return()=>{for(let e of i)e.removeAttribute(`aria-controls`),e.removeAttribute(`aria-valuemax`),e.removeAttribute(`aria-valuemin`),e.removeAttribute(`aria-valuenow`)}}function rl(e,t){return Jc?Array.from(t.querySelectorAll(`[data-pane-resizer-id][data-pane-group-id="${e}"]`)):[]}function il({groupId:e,id:t,domContext:n}){return Jc?rl(e,n).findIndex(e=>e.getAttribute(`data-pane-resizer-id`)===t)??null:null}function al({groupId:e,dragHandleId:t,domContext:n}){let r=il({groupId:e,id:t,domContext:n});return r==null?[-1,-1]:[r,r+1]}function ol(e,t,n){let r=e.map(e=>e.constraints),i=sl(e,t),a=r[i],o=i===e.length-1?[i-1,i]:[i,i+1],s=n[i];return{...a,paneSize:s,pivotIndices:o}}function sl(e,t){return e.findIndex(e=>e.opts.id.current===t.opts.id.current)}function cl(e,t,n){for(let r=0;r<t.length;r++){let i=t[r],a=e[r];Uc(a);let{collapsedSize:o=0,collapsible:s}=a.constraints,c=n[a.opts.id.current];if(c!=null&&i===c)continue;n[a.opts.id.current]=i;let{onCollapse:l,onExpand:u,onResize:d}=a.callbacks;d?.(i,c),s&&(l||u)&&(u&&(c==null||c===o)&&i!==o&&u(),l&&(c==null||c!==o)&&i===o&&l())}}function ll({panesArray:e}){let t=Array(e.length),n=e.map(e=>e.constraints),r=0,i=100;for(let a=0;a<e.length;a++){let e=n[a];Uc(e);let{defaultSize:o}=e;o!=null&&(r++,t[a]=o,i-=o)}for(let a=0;a<e.length;a++){let o=n[a];Uc(o);let{defaultSize:s}=o;if(s!=null)continue;let c=e.length-r,l=i/c;r++,t[a]=l,i-=l}return t}function ul({layout:e,paneConstraints:t}){let n=[...e],r=n.reduce((e,t)=>e+t,0);if(n.length!==t.length)throw Error(`Invalid ${t.length} pane layout: ${n.map(e=>`${e}%`).join(`, `)}`);if(!Wc(r,100))for(let e=0;e<t.length;e++){let t=n[e];Uc(t!=null);let i=100/r*t;n[e]=i}let i=0;for(let e=0;e<t.length;e++){let r=n[e];Uc(r!=null);let a=$c({paneConstraints:t,paneIndex:e,initialSize:r});r!==a&&(i+=r-a,n[e]=a)}if(!Wc(i,0))for(let e=0;e<t.length;e++){let r=n[e];Uc(r!=null);let a=r+i,o=$c({paneConstraints:t,paneIndex:e,initialSize:a});if(r!==o&&(i-=o-r,n[e]=o,Wc(i,0)))break}return n}function dl(e,t){return Jc&&t.querySelector(`[data-pane-group][data-pane-group-id="${e}"]`)||null}function fl(e,t){return Jc&&t.querySelector(`[data-pane-resizer-id="${e}"]`)||null}function pl({event:e,dragHandleId:t,dir:n,initialDragState:r,domContext:i}){let a=n===`horizontal`,o=fl(t,i);Uc(o);let s=o.getAttribute(`data-pane-group-id`);Uc(s);let{initialCursorPosition:c}=r,l=hl(n,e),u=dl(s,i);Uc(u);let d=u.getBoundingClientRect(),f=a?d.width:d.height;return(l-c)/f*100}function ml({event:e,dragHandleId:t,dir:n,initialDragState:r,keyboardResizeBy:i,domContext:a}){if(Xc(e)){let t=n===`horizontal`,r=0;r=e.shiftKey?100:i??10;let a=0;switch(e.key){case`ArrowDown`:a=t?0:r;break;case`ArrowLeft`:a=t?-r:0;break;case`ArrowRight`:a=t?r:0;break;case`ArrowUp`:a=t?0:-r;break;case`End`:a=100;break;case`Home`:a=-100}return a}return r==null?0:pl({event:e,dragHandleId:t,dir:n,initialDragState:r,domContext:a})}function hl(e,t){let n=e===`horizontal`;if(Zc(t))return n?t.clientX:t.clientY;if(Qc(t)){let e=t.touches[0];return Uc(e),n?e.screenX:e.screenY}throw Error(`Unsupported event type "${t.type}"`)}function gl({groupId:e,handleId:t,panesArray:n,domContext:r}){let i=fl(t,r),a=rl(e,r),o=i?a.indexOf(i):-1;return[n[o]?.opts.id.current??null,n[o+1]?.opts.id.current??null]}function _l({delta:e,layout:t,paneConstraints:n,pivotIndices:r,trigger:i}){if(Wc(e,0))return t;let a=[...t],[o,s]=r,c=0;if(i===`keyboard`){{let r=e<0?s:o,i=n[r];if(Uc(i),i.collapsible){let i=t[r];Uc(i!=null);let a=n[r];Uc(a);let{collapsedSize:o=0,minSize:s=0}=a;if(Wc(i,o)){let t=s-i;Gc(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}{let r=e<0?o:s,i=n[r];Uc(i);let{collapsible:a}=i;if(a){let i=t[r];Uc(i!=null);let a=n[r];Uc(a);let{collapsedSize:o=0,minSize:s=0}=a;if(Wc(i,s)){let t=i-o;Gc(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}}{let r=e<0?1:-1,i=e<0?s:o,a=0;for(;;){let e=t[i];Uc(e!=null);let o=$c({paneConstraints:n,paneIndex:i,initialSize:100})-e;if(a+=o,i+=r,i<0||i>=n.length)break}let c=Math.min(Math.abs(e),Math.abs(a));e=e<0?0-c:c}{let r=e<0?o:s;for(;r>=0&&r<n.length;){let i=Math.abs(e)-Math.abs(c),o=t[r];Uc(o!=null);let s=o-i,l=$c({paneConstraints:n,paneIndex:r,initialSize:s});if(!Wc(o,l)&&(c+=o-l,a[r]=l,c.toPrecision(3).localeCompare(Math.abs(e).toPrecision(3),void 0,{numeric:!0})>=0))break;e<0?r--:r++}}if(Wc(c,0))return t;{let r=e<0?s:o,i=t[r];Uc(i!=null);let l=i+c,u=$c({paneConstraints:n,paneIndex:r,initialSize:l});if(a[r]=u,!Wc(u,l)){let t=l-u,r=e<0?s:o;for(;r>=0&&r<n.length;){let i=a[r];Uc(i!=null);let o=i+t,s=$c({paneConstraints:n,paneIndex:r,initialSize:o});if(Wc(i,s)||(t-=s-i,a[r]=s),Wc(t,0))break;e>0?r--:r++}}}return Wc(a.reduce((e,t)=>t+e,0),100)?a:t}var vl=null,yl=null;function bl(e){switch(e){case`horizontal`:return`ew-resize`;case`horizontal-max`:return`w-resize`;case`horizontal-min`:return`e-resize`;case`vertical`:return`ns-resize`;case`vertical-max`:return`n-resize`;case`vertical-min`:return`s-resize`}}function xl(){yl!==null&&(document.head.removeChild(yl),vl=null,yl=null)}function Sl(e,t){if(vl===e)return;vl=e;let n=bl(e);yl===null&&(yl=t.createElement(`style`),t.head.appendChild(yl)),yl.innerHTML=`*{cursor: ${n}!important;}`}function Cl({defaultSize:e,dragState:t,layout:n,panesArray:r,paneIndex:i,precision:a=3}){let o=n[i],s;return s=o==null?e??`1`:r.length===1?`1`:o.toPrecision(a),{flexBasis:0,flexGrow:s,flexShrink:1,overflow:`hidden`,pointerEvents:t===null?void 0:`none`}}function wl(e){try{if(typeof localStorage>`u`)throw TypeError(`localStorage is not supported in this environment`);e.getItem=e=>localStorage.getItem(e),e.setItem=(e,t)=>localStorage.setItem(e,t)}catch(t){console.error(t),e.getItem=()=>null,e.setItem=()=>{}}}function Tl(e){return`paneforge:${e}`}function El(e){return e.map(e=>e.opts.order.current?`${e.opts.order.current}:${JSON.stringify(e.constraints)}`:JSON.stringify(e.constraints)).sort().join(`,`)}function Dl(e,t){try{let n=Tl(e),r=t.getItem(n),i=JSON.parse(r||``);if(typeof i==`object`&&i)return i}catch{}return null}function Ol(e,t,n){return(Dl(e,n)||{})[El(t)]||null}function kl(e,t,n,r,i){let a=Tl(e),o=El(t),s=Dl(e,i)||{};s[o]={expandToSizes:Object.fromEntries(n.entries()),layout:r};try{i.setItem(a,JSON.stringify(s))}catch(e){console.error(e)}}var Al={};function jl(e,t=10){let n=null;return(...r)=>{n!==null&&clearTimeout(n),n=setTimeout(()=>{e(...r)},t)}}function Ml({autoSaveId:e,layout:t,storage:n,panesArray:r,paneSizeBeforeCollapse:i}){if(t.length===0||t.length!==r.length)return;let a=Al[e];a??(a=jl(kl,100),Al[e]=a);let o=[...r],s=new Map(i);a(e,o,s,t,n)}var Nl={getItem:e=>(wl(Nl),Nl.getItem(e)),setItem:(e,t)=>{wl(Nl),Nl.setItem(e,t)}},Pl=new ye(`PaneGroup`),Fl=class e{static create(t){return Pl.set(new e(t))}opts;attachment;domContext;#e=w(null);get dragState(){return V(this.#e)}set dragState(e){i(this.#e,e)}#t=w([]);get layout(){return V(this.#t)}set layout(e){i(this.#t,e)}#n=w([]);get panesArray(){return V(this.#n)}set panesArray(e){i(this.#n,e)}#r=w(!1);get panesArrayChanged(){return V(this.#r)}set panesArrayChanged(e){i(this.#r,e,!0)}#i=w(pe({}));get paneIdToLastNotifiedSizeMap(){return V(this.#i)}set paneIdToLastNotifiedSizeMap(e){i(this.#i,e,!0)}paneSizeBeforeCollapseMap=new Map;prevDelta=0;constructor(e){this.opts=e,this.attachment=Vc(this.opts.ref),this.domContext=new Bc(this.opts.ref),ve([()=>this.opts.id.current,()=>this.layout,()=>this.panesArray],()=>nl({groupId:this.opts.id.current,layout:this.layout,panesArray:this.panesArray,domContext:this.domContext})),ce(()=>de(()=>this.#a())),ve([()=>this.opts.autoSaveId.current,()=>this.layout,()=>this.opts.storage.current],()=>{this.opts.autoSaveId.current&&Ml({autoSaveId:this.opts.autoSaveId.current,layout:this.layout,storage:this.opts.storage.current,panesArray:this.panesArray,paneSizeBeforeCollapse:this.paneSizeBeforeCollapseMap})}),ve(()=>this.panesArrayChanged,()=>{if(!this.panesArrayChanged)return;this.panesArrayChanged=!1;let e=this.layout,t=null;if(this.opts.autoSaveId.current){let e=Ol(this.opts.autoSaveId.current,this.panesArray,this.opts.storage.current);e&&(this.paneSizeBeforeCollapseMap=new Map(Object.entries(e.expandToSizes)),t=e.layout)}t??=ll({panesArray:this.panesArray});let n=ul({layout:t,paneConstraints:this.panesArray.map(e=>e.constraints)});Kc(e,n)||(this.layout=n,this.opts.onLayout.current?.(n),cl(this.panesArray,n,this.paneIdToLastNotifiedSizeMap))})}setLayout=e=>{this.layout=e};registerResizeHandle=e=>t=>{t.preventDefault();let n=this.opts.direction.current,r=this.dragState,i=this.opts.id.current,a=this.opts.keyboardResizeBy.current,o=this.layout,s=this.panesArray,{initialLayout:c}=r??{},l=this.domContext.getDocument(),u=al({groupId:i,dragHandleId:e,domContext:this.domContext}),d=ml({event:t,dragHandleId:e,dir:n,initialDragState:r,keyboardResizeBy:a,domContext:this.domContext});if(d===0)return;let f=n===`horizontal`;l.dir===`rtl`&&f&&(d=-d);let p=s.map(e=>e.constraints),m=_l({delta:d,layout:c??o,paneConstraints:p,pivotIndices:u,trigger:Xc(t)?`keyboard`:`mouse-or-touch`}),h=!Kc(o,m);(Zc(t)||Qc(t))&&this.prevDelta!==d&&(this.prevDelta=d,Sl(h?f?`horizontal`:`vertical`:f?d<0?`horizontal-min`:`horizontal-max`:d<0?`vertical-min`:`vertical-max`,l)),h&&(this.setLayout(m),this.opts.onLayout.current?.(m),cl(s,m,this.paneIdToLastNotifiedSizeMap))};resizePane=(e,t)=>{let n=this.layout,r=this.panesArray,i=r.map(e=>e.constraints),{paneSize:a,pivotIndices:o}=ol(r,e,n);Uc(a!=null);let s=_l({delta:sl(r,e)===r.length-1?a-t:t-a,layout:n,paneConstraints:i,pivotIndices:o,trigger:`imperative-api`});Kc(n,s)||(this.setLayout(s),this.opts.onLayout.current?.(s),cl(r,s,this.paneIdToLastNotifiedSizeMap))};startDragging=(e,t)=>{let n=this.opts.direction.current,r=this.layout,i=fl(e,this.domContext);Uc(i);let a=hl(n,t);this.dragState={dragHandleId:e,dragHandleRect:i.getBoundingClientRect(),initialCursorPosition:a,initialLayout:r}};stopDragging=()=>{xl(),this.dragState=null};isPaneCollapsed=e=>{let t=this.panesArray,n=this.layout,{collapsedSize:r=0,collapsible:i,paneSize:a}=ol(t,e,n);return typeof a!=`number`||typeof r!=`number`?!1:i===!0&&Wc(a,r)};expandPane=e=>{let t=this.layout,n=this.panesArray;if(!e.constraints.collapsible)return;let r=n.map(e=>e.constraints),{collapsedSize:i=0,paneSize:a,minSize:o=0,pivotIndices:s}=ol(n,e,t);if(a!==i)return;let c=this.paneSizeBeforeCollapseMap.get(e.opts.id.current),l=c!=null&&c>=o?c:o,u=_l({delta:sl(n,e)===n.length-1?a-l:l-a,layout:t,paneConstraints:r,pivotIndices:s,trigger:`imperative-api`});Kc(t,u)||(this.setLayout(u),this.opts.onLayout.current?.(u),cl(n,u,this.paneIdToLastNotifiedSizeMap))};collapsePane=e=>{let t=this.layout,n=this.panesArray;if(!e.constraints.collapsible)return;let r=n.map(e=>e.constraints),{collapsedSize:i=0,paneSize:a,pivotIndices:o}=ol(n,e,t);if(Uc(a!=null),a===i)return;this.paneSizeBeforeCollapseMap.set(e.opts.id.current,a);let s=_l({delta:sl(n,e)===n.length-1?a-i:i-a,layout:t,paneConstraints:r,pivotIndices:o,trigger:`imperative-api`});Kc(t,s)||(this.layout=s,this.opts.onLayout.current?.(s),cl(n,s,this.paneIdToLastNotifiedSizeMap))};getPaneSize=e=>ol(this.panesArray,e,this.layout).paneSize;getPaneStyle=(e,t)=>{let n=this.panesArray,r=this.layout,i=this.dragState;return Cl({defaultSize:t,dragState:i,layout:r,panesArray:n,paneIndex:sl(n,e)})};isPaneExpanded=e=>{let{collapsedSize:t=0,collapsible:n,paneSize:r}=ol(this.panesArray,e,this.layout);return!n||r>t};registerPane=e=>{let t=[...this.panesArray,e];return t.sort((e,t)=>{let n=e.opts.order.current,r=t.opts.order.current;return n==null&&r==null?0:n==null?-1:r==null?1:n-r}),this.panesArray=t,this.panesArrayChanged=!0,()=>{let t=[...this.panesArray],n=sl(this.panesArray,e);n<0||(t.splice(n,1),this.panesArray=t,delete this.paneIdToLastNotifiedSizeMap[e.opts.id.current],this.panesArrayChanged=!0)}};#a=()=>{let e=this.opts.id.current,t=rl(e,this.domContext),n=this.panesArray,r=t.map(t=>{let r=t.getAttribute(`data-pane-resizer-id`);if(!r)return tl;let[i,a]=gl({groupId:e,handleId:r,panesArray:n,domContext:this.domContext});if(i==null||a==null)return tl;let o=wc(t,`keydown`,t=>{if(t.defaultPrevented||t.key!==`Enter`)return;t.preventDefault();let n=this.panesArray,a=n.findIndex(e=>e.opts.id.current===i);if(a<0)return;let o=n[a];Uc(o);let s=this.layout,c=s[a],{collapsedSize:l=0,collapsible:u,minSize:d=0}=o.constraints;if(!(c!=null&&u))return;let f=_l({delta:Wc(c,l)?d-c:l-c,layout:s,paneConstraints:n.map(e=>e.constraints),pivotIndices:al({groupId:e,dragHandleId:r,domContext:this.domContext}),trigger:`keyboard`});s!==f&&(this.layout=f)});return()=>{o()}});return()=>{for(let e of r)e()}};#o=y(()=>({id:this.opts.id.current,"data-pane-group":``,"data-direction":this.opts.direction.current,"data-pane-group-id":this.opts.id.current,style:{display:`flex`,flexDirection:this.opts.direction.current===`horizontal`?`row`:`column`,height:`100%`,overflow:`hidden`,width:`100%`},...this.attachment}));get props(){return V(this.#o)}set props(e){i(this.#o,e)}},Il=[`ArrowDown`,`ArrowLeft`,`ArrowRight`,`ArrowUp`,`End`,`Home`],Ll=class e{static create(t){return new e(t,Pl.get())}opts;#e;attachment;domContext;#t=y(()=>this.#e.dragState?.dragHandleId===this.opts.id.current);#n=w(!1);resizeHandler=null;constructor(e,t){this.opts=e,this.#e=t,this.attachment=Vc(this.opts.ref),this.domContext=new Bc(this.opts.ref),ce(()=>{this.resizeHandler=this.opts.disabled.current?null:this.#e.registerResizeHandle(this.opts.id.current)}),ce(()=>{let e=this.opts.ref.current;if(!e)return;let t=this.opts.disabled.current,n=this.resizeHandler,r=V(this.#t);if(t||n===null||!r)return;let i=e=>{n(e)},a=e=>{n(e)},o=()=>{e.blur(),this.#e.stopDragging(),this.opts.onDraggingChange.current(!1)},s=this.domContext.getDocument().body,c=this.domContext.getWindow();return Cc(fe(s,`contextmenu`,o),fe(s,`mousemove`,i),fe(s,`touchmove`,i,{passive:!1}),fe(s,`mouseleave`,a),fe(c,`mouseup`,o),fe(c,`touchend`,o))})}#r=e=>{e.preventDefault(),!this.opts.disabled.current&&(this.#e.startDragging(this.opts.id.current,e),this.opts.onDraggingChange.current(!0))};#i=()=>{let e=this.opts.ref.current;e&&(e.blur(),this.#e.stopDragging(),this.opts.onDraggingChange.current(!1))};#a=e=>{if(this.opts.disabled.current||!this.resizeHandler||e.defaultPrevented)return;if(Il.includes(e.key)){e.preventDefault(),this.resizeHandler(e);return}if(e.key!==`F6`)return;e.preventDefault();let t=rl(this.#e.opts.id.current,this.domContext),n=il({groupId:this.#e.opts.id.current,id:this.opts.id.current,domContext:this.domContext});if(n===null)return;let r=0;r=e.shiftKey?n>0?n-1:t.length-1:n+1<t.length?n+1:0,t[r].focus()};#o=()=>{i(this.#n,!1)};#s=()=>{i(this.#n,!0)};#c=e=>{this.#r(e)};#l=()=>{this.#i()};#u=()=>{this.#i()};#d=()=>{this.#i()};#f=e=>{this.#r(e)};#p=y(()=>({id:this.opts.id.current,role:`separator`,"data-direction":this.#e.opts.direction.current,"data-pane-group-id":this.#e.opts.id.current,"data-active":V(this.#t)?`pointer`:V(this.#n)?`keyboard`:void 0,"data-enabled":!this.opts.disabled.current,"data-pane-resizer-id":this.opts.id.current,"data-pane-resizer":``,tabIndex:this.opts.tabIndex.current,style:{cursor:bl(this.#e.opts.direction.current),touchAction:`none`,userSelect:`none`,"-webkit-user-select":`none`,"-webkit-touch-callout":`none`},onkeydown:this.#a,onblur:this.#o,onfocus:this.#s,onmousedown:this.#c,onmouseup:this.#l,ontouchcancel:this.#u,ontouchend:this.#d,ontouchstart:this.#f,...this.attachment}));get props(){return V(this.#p)}set props(e){i(this.#p,e)}},Rl=class e{static create(t){return new e(t,Pl.get())}opts;group;attachment;domContext;#e=w(``);#t=y(()=>({onCollapse:this.opts.onCollapse.current,onExpand:this.opts.onExpand.current,onResize:this.opts.onResize.current}));get callbacks(){return V(this.#t)}set callbacks(e){i(this.#t,e)}#n=y(()=>({collapsedSize:this.opts.collapsedSize.current,collapsible:this.opts.collapsible.current,defaultSize:this.opts.defaultSize.current,maxSize:this.opts.maxSize.current,minSize:this.opts.minSize.current}));get constraints(){return V(this.#n)}set constraints(e){i(this.#n,e)}#r=e=>{i(this.#e,e,!0),Pc(()=>{if(this.opts.ref.current){let e=this.opts.ref.current;if(getComputedStyle(e).transitionDuration===`0s`){i(this.#e,``);return}let t=n=>{n.propertyName===`flex-grow`&&(i(this.#e,``),e.removeEventListener(`transitionend`,t))};e.addEventListener(`transitionend`,t)}else i(this.#e,``)})};pane={collapse:()=>{this.#r(`collapsing`),this.group.collapsePane(this)},expand:()=>{this.#r(`expanding`),this.group.expandPane(this)},getSize:()=>this.group.getPaneSize(this),isCollapsed:()=>this.group.isPaneCollapsed(this),isExpanded:()=>this.group.isPaneExpanded(this),resize:e=>this.group.resizePane(this,e),getId:()=>this.opts.id.current};constructor(e,t){this.opts=e,this.group=t,this.attachment=Vc(this.opts.ref),this.domContext=new Bc(this.opts.ref),le(()=>this.group.registerPane(this)),ve(()=>ge(this.constraints),()=>{this.group.panesArrayChanged=!0})}#i=y(()=>this.group.isPaneCollapsed(this));#a=y(()=>V(this.#e)===``?V(this.#i)?`collapsed`:`expanded`:V(this.#e));#o=y(()=>({id:this.opts.id.current,style:this.group.getPaneStyle(this,this.opts.defaultSize.current),"data-pane":``,"data-pane-id":this.opts.id.current,"data-pane-group-id":this.group.opts.id.current,"data-collapsed":V(this.#i)?``:void 0,"data-expanded":V(this.#i)?void 0:``,"data-pane-state":V(this.#a),...this.attachment}));get props(){return V(this.#o)}set props(e){i(this.#o,e)}},zl=new Set([`$$slots`,`$$events`,`$$legacy`,`autoSaveId`,`direction`,`id`,`keyboardResizeBy`,`onLayoutChange`,`storage`,`ref`,`child`,`children`]),Bl=m(`<div><!></div>`);function Vl(e,t){let n=A();l(t,!0);let r=P(t,`autoSaveId`,3,null),i=P(t,`id`,3,n),a=P(t,`keyboardResizeBy`,3,null),o=P(t,`onLayoutChange`,3,tl),s=P(t,`storage`,3,Nl),c=P(t,`ref`,15,null),u=H(t,zl),d=Fl.create({id:cc.with(()=>i()??n),ref:cc.with(()=>c(),e=>c(e)),autoSaveId:cc.with(()=>r()),direction:cc.with(()=>t.direction),keyboardResizeBy:cc.with(()=>a()),onLayout:cc.with(()=>o()),storage:cc.with(()=>s())}),p=()=>d.layout,m=d.setLayout,g=()=>d.opts.id.current,_=y(()=>jc(u,d.props));var v={getLayout:p,setLayout:m,getId:g},x=U(),S=K(x),C=e=>{var n=U(),r=K(n);f(r,()=>t.child,()=>({props:V(_)})),h(e,n)},w=e=>{var n=Bl();G(n,()=>({...V(_)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};return D(S,e=>{t.child?e(C):e(w,-1)}),h(e,x),b(v)}var Hl=new Set([`$$slots`,`$$events`,`$$legacy`,`id`,`ref`,`collapsedSize`,`collapsible`,`defaultSize`,`maxSize`,`minSize`,`onCollapse`,`onExpand`,`onResize`,`order`,`child`,`children`]),Ul=m(`<div><!></div>`);function Wl(e,t){let n=A();l(t,!0);let r=P(t,`id`,3,n),i=P(t,`ref`,15,null),a=P(t,`onCollapse`,3,tl),o=P(t,`onExpand`,3,tl),s=P(t,`onResize`,3,tl),c=H(t,Hl),u=Rl.create({id:cc.with(()=>r()),ref:cc.with(()=>i(),e=>i(e)),collapsedSize:cc.with(()=>t.collapsedSize),collapsible:cc.with(()=>t.collapsible),defaultSize:cc.with(()=>t.defaultSize),maxSize:cc.with(()=>t.maxSize),minSize:cc.with(()=>t.minSize),onCollapse:cc.with(()=>a()),onExpand:cc.with(()=>o()),onResize:cc.with(()=>s()),order:cc.with(()=>t.order)}),d=u.pane.collapse,p=u.pane.expand,m=u.pane.getSize,g=u.pane.isCollapsed,_=u.pane.isExpanded,v=u.pane.resize,x=u.pane.getId,S=y(()=>jc(c,u.props));var C={collapse:d,expand:p,getSize:m,isCollapsed:g,isExpanded:_,resize:v,getId:x},w=U(),T=K(w),k=e=>{var n=U(),r=K(n);f(r,()=>t.child,()=>({props:V(S)})),h(e,n)},j=e=>{var n=Ul();G(n,()=>({...V(S)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};return D(T,e=>{t.child?e(k):e(j,-1)}),h(e,w),b(C)}var Gl=new Set([`$$slots`,`$$events`,`$$legacy`,`id`,`ref`,`disabled`,`onDraggingChange`,`tabindex`,`child`,`children`]),Kl=m(`<div><!></div>`);function ql(e,t){let n=A();l(t,!0);let r=P(t,`id`,3,n),i=P(t,`ref`,15,null),a=P(t,`disabled`,3,!1),o=P(t,`onDraggingChange`,3,tl),s=P(t,`tabindex`,3,0),c=H(t,Gl),u=Ll.create({id:cc.with(()=>r()),ref:cc.with(()=>i(),e=>i(e)),disabled:cc.with(()=>a()),onDraggingChange:cc.with(()=>o()),tabIndex:cc.with(()=>s())}),d=y(()=>jc(c,u.props));var p=U(),m=K(p),g=e=>{var n=U(),r=K(n);f(r,()=>t.child,()=>({props:V(d)})),h(e,n)},_=e=>{var n=Kl();G(n,()=>({...V(d)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(m,e=>{t.child?e(g):e(_,-1)}),h(e,p),b()}var Jl=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`withHandle`,`line`]),Yl=m(`<div class="h-10 w-1 z-10 flex shrink-0 rounded-lg bg-border transition duration-150 group-hover/handle:scale-y-110 group-hover/handle:bg-foreground/40 group-active/handle:bg-foreground/60"></div>`);function Xl(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`withHandle`,3,!1),i=P(t,`line`,3,!0),a=H(t,Jl);var o=U(),s=K(o);{let e=y(()=>Pe(`group/handle after:inset-y-0 after:w-1 data-[direction=vertical]:after:left-0 data-[direction=vertical]:after:h-1 data-[direction=vertical]:after:translate-x-0 relative flex w-px items-center justify-center after:absolute after:left-1/2 after:-translate-x-1/2 focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:outline-hidden data-[direction=vertical]:h-px data-[direction=vertical]:w-full data-[direction=vertical]:after:w-full data-[direction=vertical]:after:-translate-y-1/2 [&[data-direction=vertical]>div]:rotate-90`,i()?`bg-border`:`bg-transparent`,t.class));c(s,()=>ql,(t,i)=>{i(t,W({"data-slot":`resizable-handle`,get class(){return V(e)}},()=>a,{get ref(){return n()},set ref(e){n(e)},children:(e,t)=>{var n=U(),i=K(n),a=e=>{var t=Yl();h(e,t)};D(i,e=>{r()&&e(a)}),h(e,n)},$$slots:{default:!0}}))})}h(e,o),b()}var Zl=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`this`,`class`]);function Ql(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`this`,15),i=H(t,Zl);var a=U(),o=K(a);{let e=y(()=>Pe(`flex h-full w-full data-[direction=vertical]:flex-col`,t.class));c(o,()=>Vl,(t,a)=>{L(a(t,W({"data-slot":`resizable-pane-group`,get class(){return V(e)}},()=>i,{get ref(){return n()},set ref(e){n(e)}})),e=>r(e),()=>r())})}h(e,a),b()}var $l=m(`<!> <!> <!>`,1);function eu(e,t){l(t,!0);let n=P(t,`message`,3,``),i=P(t,`size`,3,`medium`),a=P(t,`class`,3,``),o={small:`p-4`,medium:`p-8`,large:`p-12`};var s=U(),u=K(s);{let e=y(()=>Pe(o[i()],a()));c(u,()=>Gs,(i,a)=>{a(i,{get class(){return V(e)},children:(e,i)=>{var a=U(),o=K(a);c(o,()=>Fs,(e,i)=>{i(e,{children:(e,i)=>{var a=$l(),o=K(a);c(o,()=>zs,(e,n)=>{n(e,{variant:`icon`,children:(e,n)=>{var r=U(),i=K(r),a=e=>{qs(e,{})},o=e=>{tr(e,{})},s=e=>{Be(e,{get severity(){return t.type}})};D(i,e=>{t.type===`loading`?e(a):t.type===`empty`?e(o,1):e(s,-1)}),h(e,r)},$$slots:{default:!0}})});var s=I(o,2),l=e=>{var n=U(),i=K(n);c(i,()=>Hs,(e,n)=>{n(e,{children:(e,n)=>{r();var i=M();z(()=>T(i,t.title)),h(e,i)},$$slots:{default:!0}})}),h(e,n)};D(s,e=>{t.title&&e(l)});var u=I(s,2),d=e=>{var t=U(),i=K(t);c(i,()=>Ms,(e,t)=>{t(e,{children:(e,t)=>{r();var i=M();z(()=>T(i,n())),h(e,i)},$$slots:{default:!0}})}),h(e,t)};D(u,e=>{n()&&e(d)}),h(e,a)},$$slots:{default:!0}})}),h(e,a)},$$slots:{default:!0}})})}h(e,s),b()}var tu=m(`<!> `,1),nu=m(`<div class="bottom-0 mt-3 pb-3 pt-2 backdrop-blur-sm px-2 sticky border-t border-border/50"><span class="sr-only" role="status" aria-live="polite"> </span> <div class="gap-2 flex"><!> <!></div></div>`);function ru(e,t){l(t,!0);let n=Je(),r=y(()=>n.messages),a=P(t,`hasNeverSolved`,3,!1),o=w(``),s=!1;ce(()=>{let e=t.isSolving;de(()=>{e?i(o,V(r).solvingEllipsis,!0):s&&i(o,t.hasPendingChanges?``:V(r).upToDate,!0),s=e})});var c=nu(),u=N(c),d=q(u,!0),p=I(u,2),m=N(p);{let e=y(()=>t.hasPendingChanges?`default`:`ghost`),n=y(()=>!t.hasPendingChanges&&!t.isSolving),i=y(()=>t.hasPendingChanges&&!t.isSolving?`shadow-md`:``),o=y(()=>!t.hasPendingChanges&&!t.isSolving?`text-muted-foreground`:``);We(m,{get variant(){return V(e)},size:`lg`,onclick:()=>!t.isSolving&&t.oncalculate(),get disabled(){return V(n)},get"aria-busy"(){return t.isSolving},get class(){return`gap-2 font-medium min-w-0 flex-1 transition-all duration-200
4
+ `,` `)),n.hidden!==!0&&(n.hidden=void 0,delete n.hidden),n.disabled!==!0&&(n.disabled=void 0,delete n.disabled),n}var Mc=typeof window<`u`?window:void 0;typeof window<`u`&&window.document,typeof window<`u`&&window.navigator,typeof window<`u`&&window.location;function Nc(e){let t=e.activeElement;for(;t?.shadowRoot;){let e=t.shadowRoot.activeElement;if(e===t)break;t=e}return t}new class{#e;#t;constructor(e={}){let{window:t=Mc,document:n=t?.document}=e;t!==void 0&&(this.#e=n,this.#t=u(e=>{let n=G(t,`focusin`,e),r=G(t,`focusout`,e);return()=>{n(),r()}}))}get current(){return this.#t?.(),this.#e?Nc(this.#e):null}};function Pc(e){se().then(e)}var Fc=9;function Ic(e){return tc(e)&&e.nodeType===Fc}function Lc(e){return tc(e)&&e.constructor?.name===`VisualViewport`}function Rc(e){return Ic(e)?e:Lc(e)?e.document:e?.ownerDocument??document}function zc(e){let t=e.activeElement;for(;t?.shadowRoot;){let e=t.shadowRoot.activeElement;if(e===t)break;t=e}return t}var Bc=class{element;#e=y(()=>this.element.current?this.element.current.getRootNode()??document:document);get root(){return V(this.#e)}set root(e){i(this.#e,e)}constructor(e){this.element=typeof e==`function`?cc.with(e):e}getDocument=()=>Rc(this.root);getWindow=()=>this.getDocument().defaultView??window;getActiveElement=()=>zc(this.root);isActiveElement=e=>e===this.getActiveElement();getElementById(e){return this.root.getElementById(e)}querySelector=e=>this.root?this.root.querySelector(e):null;querySelectorAll=e=>this.root?this.root.querySelectorAll(e):[];setTimeout=(e,t)=>this.getWindow().setTimeout(e,t);clearTimeout=e=>this.getWindow().clearTimeout(e)};function Vc(e,t){return{[ue()]:n=>cc.isBox(e)?(e.current=n,de(()=>t?.(n)),()=>{`isConnected`in n&&n.isConnected||(e.current=null,t?.(null))}):(e(n),de(()=>t?.(n)),()=>{`isConnected`in n&&n.isConnected||(e(null),t?.(null))})}}function Hc({layout:e,panesArray:t,pivotIndices:n}){let r=0,i=100,a=0,o=0,s=n[0];for(let e=0;e<t.length;e++){let{maxSize:n=100,minSize:c=0}=t[e].constraints;e===s?(r=c,i=n):(a+=c,o+=n)}return{valueMax:Math.min(i,100-a),valueMin:Math.max(r,100-o),valueNow:e[s]}}function Uc(e,t=`Assertion failed!`){if(!e)throw console.error(t),Error(t)}function Wc(e,t,n=10){return Gc(e,t,n)===0}function Gc(e,t,n=10){let r=qc(e,n),i=qc(t,n);return Math.sign(r-i)}function Kc(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function qc(e,t){return Number.parseFloat(e.toFixed(t))}var Jc=typeof document<`u`;function Yc(e){return e instanceof HTMLElement}function Xc(e){return e.type===`keydown`}function Zc(e){return e.type.startsWith(`mouse`)}function Qc(e){return e.type.startsWith(`touch`)}function $c({paneConstraints:e,paneIndex:t,initialSize:n}){let r=e[t];Uc(r!=null,`Pane constraints should not be null.`);let{collapsedSize:i=0,collapsible:a,maxSize:o=100,minSize:s=0}=r,c=n;return Gc(c,s)<0&&(c=el(c,a,i,s)),c=Math.min(o,c),Number.parseFloat(c.toFixed(10))}function el(e,t,n,r){return t&&Gc(e,(n+r)/2)<0?n:r}function tl(){}function nl({groupId:e,layout:t,panesArray:n,domContext:r}){let i=rl(e,r);for(let e=0;e<n.length-1;e++){let{valueMax:r,valueMin:a,valueNow:o}=Hc({layout:t,panesArray:n,pivotIndices:[e,e+1]}),s=i[e];if(Yc(s)){let t=n[e];s.setAttribute(`aria-controls`,t.opts.id.current),s.setAttribute(`aria-valuemax`,`${Math.round(r)}`),s.setAttribute(`aria-valuemin`,`${Math.round(a)}`),s.setAttribute(`aria-valuenow`,o==null?``:`${Math.round(o)}`)}}return()=>{for(let e of i)e.removeAttribute(`aria-controls`),e.removeAttribute(`aria-valuemax`),e.removeAttribute(`aria-valuemin`),e.removeAttribute(`aria-valuenow`)}}function rl(e,t){return Jc?Array.from(t.querySelectorAll(`[data-pane-resizer-id][data-pane-group-id="${e}"]`)):[]}function il({groupId:e,id:t,domContext:n}){return Jc?rl(e,n).findIndex(e=>e.getAttribute(`data-pane-resizer-id`)===t)??null:null}function al({groupId:e,dragHandleId:t,domContext:n}){let r=il({groupId:e,id:t,domContext:n});return r==null?[-1,-1]:[r,r+1]}function ol(e,t,n){let r=e.map(e=>e.constraints),i=sl(e,t),a=r[i],o=i===e.length-1?[i-1,i]:[i,i+1],s=n[i];return{...a,paneSize:s,pivotIndices:o}}function sl(e,t){return e.findIndex(e=>e.opts.id.current===t.opts.id.current)}function cl(e,t,n){for(let r=0;r<t.length;r++){let i=t[r],a=e[r];Uc(a);let{collapsedSize:o=0,collapsible:s}=a.constraints,c=n[a.opts.id.current];if(c!=null&&i===c)continue;n[a.opts.id.current]=i;let{onCollapse:l,onExpand:u,onResize:d}=a.callbacks;d?.(i,c),s&&(l||u)&&(u&&(c==null||c===o)&&i!==o&&u(),l&&(c==null||c!==o)&&i===o&&l())}}function ll({panesArray:e}){let t=Array(e.length),n=e.map(e=>e.constraints),r=0,i=100;for(let a=0;a<e.length;a++){let e=n[a];Uc(e);let{defaultSize:o}=e;o!=null&&(r++,t[a]=o,i-=o)}for(let a=0;a<e.length;a++){let o=n[a];Uc(o);let{defaultSize:s}=o;if(s!=null)continue;let c=e.length-r,l=i/c;r++,t[a]=l,i-=l}return t}function ul({layout:e,paneConstraints:t}){let n=[...e],r=n.reduce((e,t)=>e+t,0);if(n.length!==t.length)throw Error(`Invalid ${t.length} pane layout: ${n.map(e=>`${e}%`).join(`, `)}`);if(!Wc(r,100))for(let e=0;e<t.length;e++){let t=n[e];Uc(t!=null);let i=100/r*t;n[e]=i}let i=0;for(let e=0;e<t.length;e++){let r=n[e];Uc(r!=null);let a=$c({paneConstraints:t,paneIndex:e,initialSize:r});r!==a&&(i+=r-a,n[e]=a)}if(!Wc(i,0))for(let e=0;e<t.length;e++){let r=n[e];Uc(r!=null);let a=r+i,o=$c({paneConstraints:t,paneIndex:e,initialSize:a});if(r!==o&&(i-=o-r,n[e]=o,Wc(i,0)))break}return n}function dl(e,t){return Jc&&t.querySelector(`[data-pane-group][data-pane-group-id="${e}"]`)||null}function fl(e,t){return Jc&&t.querySelector(`[data-pane-resizer-id="${e}"]`)||null}function pl({event:e,dragHandleId:t,dir:n,initialDragState:r,domContext:i}){let a=n===`horizontal`,o=fl(t,i);Uc(o);let s=o.getAttribute(`data-pane-group-id`);Uc(s);let{initialCursorPosition:c}=r,l=hl(n,e),u=dl(s,i);Uc(u);let d=u.getBoundingClientRect(),f=a?d.width:d.height;return(l-c)/f*100}function ml({event:e,dragHandleId:t,dir:n,initialDragState:r,keyboardResizeBy:i,domContext:a}){if(Xc(e)){let t=n===`horizontal`,r=0;r=e.shiftKey?100:i??10;let a=0;switch(e.key){case`ArrowDown`:a=t?0:r;break;case`ArrowLeft`:a=t?-r:0;break;case`ArrowRight`:a=t?r:0;break;case`ArrowUp`:a=t?0:-r;break;case`End`:a=100;break;case`Home`:a=-100}return a}return r==null?0:pl({event:e,dragHandleId:t,dir:n,initialDragState:r,domContext:a})}function hl(e,t){let n=e===`horizontal`;if(Zc(t))return n?t.clientX:t.clientY;if(Qc(t)){let e=t.touches[0];return Uc(e),n?e.screenX:e.screenY}throw Error(`Unsupported event type "${t.type}"`)}function gl({groupId:e,handleId:t,panesArray:n,domContext:r}){let i=fl(t,r),a=rl(e,r),o=i?a.indexOf(i):-1;return[n[o]?.opts.id.current??null,n[o+1]?.opts.id.current??null]}function _l({delta:e,layout:t,paneConstraints:n,pivotIndices:r,trigger:i}){if(Wc(e,0))return t;let a=[...t],[o,s]=r,c=0;if(i===`keyboard`){{let r=e<0?s:o,i=n[r];if(Uc(i),i.collapsible){let i=t[r];Uc(i!=null);let a=n[r];Uc(a);let{collapsedSize:o=0,minSize:s=0}=a;if(Wc(i,o)){let t=s-i;Gc(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}{let r=e<0?o:s,i=n[r];Uc(i);let{collapsible:a}=i;if(a){let i=t[r];Uc(i!=null);let a=n[r];Uc(a);let{collapsedSize:o=0,minSize:s=0}=a;if(Wc(i,s)){let t=i-o;Gc(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}}{let r=e<0?1:-1,i=e<0?s:o,a=0;for(;;){let e=t[i];Uc(e!=null);let o=$c({paneConstraints:n,paneIndex:i,initialSize:100})-e;if(a+=o,i+=r,i<0||i>=n.length)break}let c=Math.min(Math.abs(e),Math.abs(a));e=e<0?0-c:c}{let r=e<0?o:s;for(;r>=0&&r<n.length;){let i=Math.abs(e)-Math.abs(c),o=t[r];Uc(o!=null);let s=o-i,l=$c({paneConstraints:n,paneIndex:r,initialSize:s});if(!Wc(o,l)&&(c+=o-l,a[r]=l,c.toPrecision(3).localeCompare(Math.abs(e).toPrecision(3),void 0,{numeric:!0})>=0))break;e<0?r--:r++}}if(Wc(c,0))return t;{let r=e<0?s:o,i=t[r];Uc(i!=null);let l=i+c,u=$c({paneConstraints:n,paneIndex:r,initialSize:l});if(a[r]=u,!Wc(u,l)){let t=l-u,r=e<0?s:o;for(;r>=0&&r<n.length;){let i=a[r];Uc(i!=null);let o=i+t,s=$c({paneConstraints:n,paneIndex:r,initialSize:o});if(Wc(i,s)||(t-=s-i,a[r]=s),Wc(t,0))break;e>0?r--:r++}}}return Wc(a.reduce((e,t)=>t+e,0),100)?a:t}var vl=null,yl=null;function bl(e){switch(e){case`horizontal`:return`ew-resize`;case`horizontal-max`:return`w-resize`;case`horizontal-min`:return`e-resize`;case`vertical`:return`ns-resize`;case`vertical-max`:return`n-resize`;case`vertical-min`:return`s-resize`}}function xl(){yl!==null&&(document.head.removeChild(yl),vl=null,yl=null)}function Sl(e,t){if(vl===e)return;vl=e;let n=bl(e);yl===null&&(yl=t.createElement(`style`),t.head.appendChild(yl)),yl.innerHTML=`*{cursor: ${n}!important;}`}function Cl({defaultSize:e,dragState:t,layout:n,panesArray:r,paneIndex:i,precision:a=3}){let o=n[i],s;return s=o==null?e??`1`:r.length===1?`1`:o.toPrecision(a),{flexBasis:0,flexGrow:s,flexShrink:1,overflow:`hidden`,pointerEvents:t===null?void 0:`none`}}function wl(e){try{if(typeof localStorage>`u`)throw TypeError(`localStorage is not supported in this environment`);e.getItem=e=>localStorage.getItem(e),e.setItem=(e,t)=>localStorage.setItem(e,t)}catch(t){console.error(t),e.getItem=()=>null,e.setItem=()=>{}}}function Tl(e){return`paneforge:${e}`}function El(e){return e.map(e=>e.opts.order.current?`${e.opts.order.current}:${JSON.stringify(e.constraints)}`:JSON.stringify(e.constraints)).sort().join(`,`)}function Dl(e,t){try{let n=Tl(e),r=t.getItem(n),i=JSON.parse(r||``);if(typeof i==`object`&&i)return i}catch{}return null}function Ol(e,t,n){return(Dl(e,n)||{})[El(t)]||null}function kl(e,t,n,r,i){let a=Tl(e),o=El(t),s=Dl(e,i)||{};s[o]={expandToSizes:Object.fromEntries(n.entries()),layout:r};try{i.setItem(a,JSON.stringify(s))}catch(e){console.error(e)}}var Al={};function jl(e,t=10){let n=null;return(...r)=>{n!==null&&clearTimeout(n),n=setTimeout(()=>{e(...r)},t)}}function Ml({autoSaveId:e,layout:t,storage:n,panesArray:r,paneSizeBeforeCollapse:i}){if(t.length===0||t.length!==r.length)return;let a=Al[e];a??(a=jl(kl,100),Al[e]=a);let o=[...r],s=new Map(i);a(e,o,s,t,n)}var Nl={getItem:e=>(wl(Nl),Nl.getItem(e)),setItem:(e,t)=>{wl(Nl),Nl.setItem(e,t)}},Pl=new ve(`PaneGroup`),Fl=class e{static create(t){return Pl.set(new e(t))}opts;attachment;domContext;#e=w(null);get dragState(){return V(this.#e)}set dragState(e){i(this.#e,e)}#t=w([]);get layout(){return V(this.#t)}set layout(e){i(this.#t,e)}#n=w([]);get panesArray(){return V(this.#n)}set panesArray(e){i(this.#n,e)}#r=w(!1);get panesArrayChanged(){return V(this.#r)}set panesArrayChanged(e){i(this.#r,e,!0)}#i=w(fe({}));get paneIdToLastNotifiedSizeMap(){return V(this.#i)}set paneIdToLastNotifiedSizeMap(e){i(this.#i,e,!0)}paneSizeBeforeCollapseMap=new Map;prevDelta=0;constructor(e){this.opts=e,this.attachment=Vc(this.opts.ref),this.domContext=new Bc(this.opts.ref),_e([()=>this.opts.id.current,()=>this.layout,()=>this.panesArray],()=>nl({groupId:this.opts.id.current,layout:this.layout,panesArray:this.panesArray,domContext:this.domContext})),ce(()=>de(()=>this.#a())),_e([()=>this.opts.autoSaveId.current,()=>this.layout,()=>this.opts.storage.current],()=>{this.opts.autoSaveId.current&&Ml({autoSaveId:this.opts.autoSaveId.current,layout:this.layout,storage:this.opts.storage.current,panesArray:this.panesArray,paneSizeBeforeCollapse:this.paneSizeBeforeCollapseMap})}),_e(()=>this.panesArrayChanged,()=>{if(!this.panesArrayChanged)return;this.panesArrayChanged=!1;let e=this.layout,t=null;if(this.opts.autoSaveId.current){let e=Ol(this.opts.autoSaveId.current,this.panesArray,this.opts.storage.current);e&&(this.paneSizeBeforeCollapseMap=new Map(Object.entries(e.expandToSizes)),t=e.layout)}t??=ll({panesArray:this.panesArray});let n=ul({layout:t,paneConstraints:this.panesArray.map(e=>e.constraints)});Kc(e,n)||(this.layout=n,this.opts.onLayout.current?.(n),cl(this.panesArray,n,this.paneIdToLastNotifiedSizeMap))})}setLayout=e=>{this.layout=e};registerResizeHandle=e=>t=>{t.preventDefault();let n=this.opts.direction.current,r=this.dragState,i=this.opts.id.current,a=this.opts.keyboardResizeBy.current,o=this.layout,s=this.panesArray,{initialLayout:c}=r??{},l=this.domContext.getDocument(),u=al({groupId:i,dragHandleId:e,domContext:this.domContext}),d=ml({event:t,dragHandleId:e,dir:n,initialDragState:r,keyboardResizeBy:a,domContext:this.domContext});if(d===0)return;let f=n===`horizontal`;l.dir===`rtl`&&f&&(d=-d);let p=s.map(e=>e.constraints),m=_l({delta:d,layout:c??o,paneConstraints:p,pivotIndices:u,trigger:Xc(t)?`keyboard`:`mouse-or-touch`}),h=!Kc(o,m);(Zc(t)||Qc(t))&&this.prevDelta!==d&&(this.prevDelta=d,Sl(h?f?`horizontal`:`vertical`:f?d<0?`horizontal-min`:`horizontal-max`:d<0?`vertical-min`:`vertical-max`,l)),h&&(this.setLayout(m),this.opts.onLayout.current?.(m),cl(s,m,this.paneIdToLastNotifiedSizeMap))};resizePane=(e,t)=>{let n=this.layout,r=this.panesArray,i=r.map(e=>e.constraints),{paneSize:a,pivotIndices:o}=ol(r,e,n);Uc(a!=null);let s=_l({delta:sl(r,e)===r.length-1?a-t:t-a,layout:n,paneConstraints:i,pivotIndices:o,trigger:`imperative-api`});Kc(n,s)||(this.setLayout(s),this.opts.onLayout.current?.(s),cl(r,s,this.paneIdToLastNotifiedSizeMap))};startDragging=(e,t)=>{let n=this.opts.direction.current,r=this.layout,i=fl(e,this.domContext);Uc(i);let a=hl(n,t);this.dragState={dragHandleId:e,dragHandleRect:i.getBoundingClientRect(),initialCursorPosition:a,initialLayout:r}};stopDragging=()=>{xl(),this.dragState=null};isPaneCollapsed=e=>{let t=this.panesArray,n=this.layout,{collapsedSize:r=0,collapsible:i,paneSize:a}=ol(t,e,n);return typeof a!=`number`||typeof r!=`number`?!1:i===!0&&Wc(a,r)};expandPane=e=>{let t=this.layout,n=this.panesArray;if(!e.constraints.collapsible)return;let r=n.map(e=>e.constraints),{collapsedSize:i=0,paneSize:a,minSize:o=0,pivotIndices:s}=ol(n,e,t);if(a!==i)return;let c=this.paneSizeBeforeCollapseMap.get(e.opts.id.current),l=c!=null&&c>=o?c:o,u=_l({delta:sl(n,e)===n.length-1?a-l:l-a,layout:t,paneConstraints:r,pivotIndices:s,trigger:`imperative-api`});Kc(t,u)||(this.setLayout(u),this.opts.onLayout.current?.(u),cl(n,u,this.paneIdToLastNotifiedSizeMap))};collapsePane=e=>{let t=this.layout,n=this.panesArray;if(!e.constraints.collapsible)return;let r=n.map(e=>e.constraints),{collapsedSize:i=0,paneSize:a,pivotIndices:o}=ol(n,e,t);if(Uc(a!=null),a===i)return;this.paneSizeBeforeCollapseMap.set(e.opts.id.current,a);let s=_l({delta:sl(n,e)===n.length-1?a-i:i-a,layout:t,paneConstraints:r,pivotIndices:o,trigger:`imperative-api`});Kc(t,s)||(this.layout=s,this.opts.onLayout.current?.(s),cl(n,s,this.paneIdToLastNotifiedSizeMap))};getPaneSize=e=>ol(this.panesArray,e,this.layout).paneSize;getPaneStyle=(e,t)=>{let n=this.panesArray,r=this.layout,i=this.dragState;return Cl({defaultSize:t,dragState:i,layout:r,panesArray:n,paneIndex:sl(n,e)})};isPaneExpanded=e=>{let{collapsedSize:t=0,collapsible:n,paneSize:r}=ol(this.panesArray,e,this.layout);return!n||r>t};registerPane=e=>{let t=[...this.panesArray,e];return t.sort((e,t)=>{let n=e.opts.order.current,r=t.opts.order.current;return n==null&&r==null?0:n==null?-1:r==null?1:n-r}),this.panesArray=t,this.panesArrayChanged=!0,()=>{let t=[...this.panesArray],n=sl(this.panesArray,e);n<0||(t.splice(n,1),this.panesArray=t,delete this.paneIdToLastNotifiedSizeMap[e.opts.id.current],this.panesArrayChanged=!0)}};#a=()=>{let e=this.opts.id.current,t=rl(e,this.domContext),n=this.panesArray,r=t.map(t=>{let r=t.getAttribute(`data-pane-resizer-id`);if(!r)return tl;let[i,a]=gl({groupId:e,handleId:r,panesArray:n,domContext:this.domContext});if(i==null||a==null)return tl;let o=wc(t,`keydown`,t=>{if(t.defaultPrevented||t.key!==`Enter`)return;t.preventDefault();let n=this.panesArray,a=n.findIndex(e=>e.opts.id.current===i);if(a<0)return;let o=n[a];Uc(o);let s=this.layout,c=s[a],{collapsedSize:l=0,collapsible:u,minSize:d=0}=o.constraints;if(!(c!=null&&u))return;let f=_l({delta:Wc(c,l)?d-c:l-c,layout:s,paneConstraints:n.map(e=>e.constraints),pivotIndices:al({groupId:e,dragHandleId:r,domContext:this.domContext}),trigger:`keyboard`});s!==f&&(this.layout=f)});return()=>{o()}});return()=>{for(let e of r)e()}};#o=y(()=>({id:this.opts.id.current,"data-pane-group":``,"data-direction":this.opts.direction.current,"data-pane-group-id":this.opts.id.current,style:{display:`flex`,flexDirection:this.opts.direction.current===`horizontal`?`row`:`column`,height:`100%`,overflow:`hidden`,width:`100%`},...this.attachment}));get props(){return V(this.#o)}set props(e){i(this.#o,e)}},Il=[`ArrowDown`,`ArrowLeft`,`ArrowRight`,`ArrowUp`,`End`,`Home`],Ll=class e{static create(t){return new e(t,Pl.get())}opts;#e;attachment;domContext;#t=y(()=>this.#e.dragState?.dragHandleId===this.opts.id.current);#n=w(!1);resizeHandler=null;constructor(e,t){this.opts=e,this.#e=t,this.attachment=Vc(this.opts.ref),this.domContext=new Bc(this.opts.ref),ce(()=>{this.resizeHandler=this.opts.disabled.current?null:this.#e.registerResizeHandle(this.opts.id.current)}),ce(()=>{let e=this.opts.ref.current;if(!e)return;let t=this.opts.disabled.current,n=this.resizeHandler,r=V(this.#t);if(t||n===null||!r)return;let i=e=>{n(e)},a=e=>{n(e)},o=()=>{e.blur(),this.#e.stopDragging(),this.opts.onDraggingChange.current(!1)},s=this.domContext.getDocument().body,c=this.domContext.getWindow();return Cc(G(s,`contextmenu`,o),G(s,`mousemove`,i),G(s,`touchmove`,i,{passive:!1}),G(s,`mouseleave`,a),G(c,`mouseup`,o),G(c,`touchend`,o))})}#r=e=>{e.preventDefault(),!this.opts.disabled.current&&(this.#e.startDragging(this.opts.id.current,e),this.opts.onDraggingChange.current(!0))};#i=()=>{let e=this.opts.ref.current;e&&(e.blur(),this.#e.stopDragging(),this.opts.onDraggingChange.current(!1))};#a=e=>{if(this.opts.disabled.current||!this.resizeHandler||e.defaultPrevented)return;if(Il.includes(e.key)){e.preventDefault(),this.resizeHandler(e);return}if(e.key!==`F6`)return;e.preventDefault();let t=rl(this.#e.opts.id.current,this.domContext),n=il({groupId:this.#e.opts.id.current,id:this.opts.id.current,domContext:this.domContext});if(n===null)return;let r=0;r=e.shiftKey?n>0?n-1:t.length-1:n+1<t.length?n+1:0,t[r].focus()};#o=()=>{i(this.#n,!1)};#s=()=>{i(this.#n,!0)};#c=e=>{this.#r(e)};#l=()=>{this.#i()};#u=()=>{this.#i()};#d=()=>{this.#i()};#f=e=>{this.#r(e)};#p=y(()=>({id:this.opts.id.current,role:`separator`,"data-direction":this.#e.opts.direction.current,"data-pane-group-id":this.#e.opts.id.current,"data-active":V(this.#t)?`pointer`:V(this.#n)?`keyboard`:void 0,"data-enabled":!this.opts.disabled.current,"data-pane-resizer-id":this.opts.id.current,"data-pane-resizer":``,tabIndex:this.opts.tabIndex.current,style:{cursor:bl(this.#e.opts.direction.current),touchAction:`none`,userSelect:`none`,"-webkit-user-select":`none`,"-webkit-touch-callout":`none`},onkeydown:this.#a,onblur:this.#o,onfocus:this.#s,onmousedown:this.#c,onmouseup:this.#l,ontouchcancel:this.#u,ontouchend:this.#d,ontouchstart:this.#f,...this.attachment}));get props(){return V(this.#p)}set props(e){i(this.#p,e)}},Rl=class e{static create(t){return new e(t,Pl.get())}opts;group;attachment;domContext;#e=w(``);#t=y(()=>({onCollapse:this.opts.onCollapse.current,onExpand:this.opts.onExpand.current,onResize:this.opts.onResize.current}));get callbacks(){return V(this.#t)}set callbacks(e){i(this.#t,e)}#n=y(()=>({collapsedSize:this.opts.collapsedSize.current,collapsible:this.opts.collapsible.current,defaultSize:this.opts.defaultSize.current,maxSize:this.opts.maxSize.current,minSize:this.opts.minSize.current}));get constraints(){return V(this.#n)}set constraints(e){i(this.#n,e)}#r=e=>{i(this.#e,e,!0),Pc(()=>{if(this.opts.ref.current){let e=this.opts.ref.current;if(getComputedStyle(e).transitionDuration===`0s`){i(this.#e,``);return}let t=n=>{n.propertyName===`flex-grow`&&(i(this.#e,``),e.removeEventListener(`transitionend`,t))};e.addEventListener(`transitionend`,t)}else i(this.#e,``)})};pane={collapse:()=>{this.#r(`collapsing`),this.group.collapsePane(this)},expand:()=>{this.#r(`expanding`),this.group.expandPane(this)},getSize:()=>this.group.getPaneSize(this),isCollapsed:()=>this.group.isPaneCollapsed(this),isExpanded:()=>this.group.isPaneExpanded(this),resize:e=>this.group.resizePane(this,e),getId:()=>this.opts.id.current};constructor(e,t){this.opts=e,this.group=t,this.attachment=Vc(this.opts.ref),this.domContext=new Bc(this.opts.ref),le(()=>this.group.registerPane(this)),_e(()=>he(this.constraints),()=>{this.group.panesArrayChanged=!0})}#i=y(()=>this.group.isPaneCollapsed(this));#a=y(()=>V(this.#e)===``?V(this.#i)?`collapsed`:`expanded`:V(this.#e));#o=y(()=>({id:this.opts.id.current,style:this.group.getPaneStyle(this,this.opts.defaultSize.current),"data-pane":``,"data-pane-id":this.opts.id.current,"data-pane-group-id":this.group.opts.id.current,"data-collapsed":V(this.#i)?``:void 0,"data-expanded":V(this.#i)?void 0:``,"data-pane-state":V(this.#a),...this.attachment}));get props(){return V(this.#o)}set props(e){i(this.#o,e)}},zl=new Set([`$$slots`,`$$events`,`$$legacy`,`autoSaveId`,`direction`,`id`,`keyboardResizeBy`,`onLayoutChange`,`storage`,`ref`,`child`,`children`]),Bl=m(`<div><!></div>`);function Vl(e,t){let n=A();l(t,!0);let r=P(t,`autoSaveId`,3,null),i=P(t,`id`,3,n),a=P(t,`keyboardResizeBy`,3,null),o=P(t,`onLayoutChange`,3,tl),s=P(t,`storage`,3,Nl),c=P(t,`ref`,15,null),u=H(t,zl),d=Fl.create({id:cc.with(()=>i()??n),ref:cc.with(()=>c(),e=>c(e)),autoSaveId:cc.with(()=>r()),direction:cc.with(()=>t.direction),keyboardResizeBy:cc.with(()=>a()),onLayout:cc.with(()=>o()),storage:cc.with(()=>s())}),p=()=>d.layout,m=d.setLayout,g=()=>d.opts.id.current,_=y(()=>jc(u,d.props));var v={getLayout:p,setLayout:m,getId:g},x=U(),S=q(x),C=e=>{var n=U(),r=q(n);f(r,()=>t.child,()=>({props:V(_)})),h(e,n)},w=e=>{var n=Bl();K(n,()=>({...V(_)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};return D(S,e=>{t.child?e(C):e(w,-1)}),h(e,x),b(v)}var Hl=new Set([`$$slots`,`$$events`,`$$legacy`,`id`,`ref`,`collapsedSize`,`collapsible`,`defaultSize`,`maxSize`,`minSize`,`onCollapse`,`onExpand`,`onResize`,`order`,`child`,`children`]),Ul=m(`<div><!></div>`);function Wl(e,t){let n=A();l(t,!0);let r=P(t,`id`,3,n),i=P(t,`ref`,15,null),a=P(t,`onCollapse`,3,tl),o=P(t,`onExpand`,3,tl),s=P(t,`onResize`,3,tl),c=H(t,Hl),u=Rl.create({id:cc.with(()=>r()),ref:cc.with(()=>i(),e=>i(e)),collapsedSize:cc.with(()=>t.collapsedSize),collapsible:cc.with(()=>t.collapsible),defaultSize:cc.with(()=>t.defaultSize),maxSize:cc.with(()=>t.maxSize),minSize:cc.with(()=>t.minSize),onCollapse:cc.with(()=>a()),onExpand:cc.with(()=>o()),onResize:cc.with(()=>s()),order:cc.with(()=>t.order)}),d=u.pane.collapse,p=u.pane.expand,m=u.pane.getSize,g=u.pane.isCollapsed,_=u.pane.isExpanded,v=u.pane.resize,x=u.pane.getId,S=y(()=>jc(c,u.props));var C={collapse:d,expand:p,getSize:m,isCollapsed:g,isExpanded:_,resize:v,getId:x},w=U(),T=q(w),k=e=>{var n=U(),r=q(n);f(r,()=>t.child,()=>({props:V(S)})),h(e,n)},j=e=>{var n=Ul();K(n,()=>({...V(S)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};return D(T,e=>{t.child?e(k):e(j,-1)}),h(e,w),b(C)}var Gl=new Set([`$$slots`,`$$events`,`$$legacy`,`id`,`ref`,`disabled`,`onDraggingChange`,`tabindex`,`child`,`children`]),Kl=m(`<div><!></div>`);function ql(e,t){let n=A();l(t,!0);let r=P(t,`id`,3,n),i=P(t,`ref`,15,null),a=P(t,`disabled`,3,!1),o=P(t,`onDraggingChange`,3,tl),s=P(t,`tabindex`,3,0),c=H(t,Gl),u=Ll.create({id:cc.with(()=>r()),ref:cc.with(()=>i(),e=>i(e)),disabled:cc.with(()=>a()),onDraggingChange:cc.with(()=>o()),tabIndex:cc.with(()=>s())}),d=y(()=>jc(c,u.props));var p=U(),m=q(p),g=e=>{var n=U(),r=q(n);f(r,()=>t.child,()=>({props:V(d)})),h(e,n)},_=e=>{var n=Kl();K(n,()=>({...V(d)}));var r=N(n);f(r,()=>t.children??E),O(n),h(e,n)};D(m,e=>{t.child?e(g):e(_,-1)}),h(e,p),b()}var Jl=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`withHandle`,`line`]),Yl=m(`<div class="h-10 w-1 z-10 flex shrink-0 rounded-lg bg-border transition duration-150 group-hover/handle:scale-y-110 group-hover/handle:bg-foreground/40 group-active/handle:bg-foreground/60"></div>`);function Xl(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`withHandle`,3,!1),i=P(t,`line`,3,!0),a=H(t,Jl);var o=U(),s=q(o);{let e=y(()=>Pe(`group/handle after:inset-y-0 after:w-1 data-[direction=vertical]:after:left-0 data-[direction=vertical]:after:h-1 data-[direction=vertical]:after:translate-x-0 relative flex w-px items-center justify-center after:absolute after:left-1/2 after:-translate-x-1/2 focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:outline-hidden data-[direction=vertical]:h-px data-[direction=vertical]:w-full data-[direction=vertical]:after:w-full data-[direction=vertical]:after:-translate-y-1/2 [&[data-direction=vertical]>div]:rotate-90`,i()?`bg-border`:`bg-transparent`,t.class));c(s,()=>ql,(t,i)=>{i(t,W({"data-slot":`resizable-handle`,get class(){return V(e)}},()=>a,{get ref(){return n()},set ref(e){n(e)},children:(e,t)=>{var n=U(),i=q(n),a=e=>{var t=Yl();h(e,t)};D(i,e=>{r()&&e(a)}),h(e,n)},$$slots:{default:!0}}))})}h(e,o),b()}var Zl=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`this`,`class`]);function Ql(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=P(t,`this`,15),i=H(t,Zl);var a=U(),o=q(a);{let e=y(()=>Pe(`flex h-full w-full data-[direction=vertical]:flex-col`,t.class));c(o,()=>Vl,(t,a)=>{L(a(t,W({"data-slot":`resizable-pane-group`,get class(){return V(e)}},()=>i,{get ref(){return n()},set ref(e){n(e)}})),e=>r(e),()=>r())})}h(e,a),b()}var $l=m(`<!> <!> <!>`,1);function eu(e,t){l(t,!0);let n=P(t,`message`,3,``),i=P(t,`size`,3,`medium`),a=P(t,`class`,3,``),o={small:`p-4`,medium:`p-8`,large:`p-12`};var s=U(),u=q(s);{let e=y(()=>Pe(o[i()],a()));c(u,()=>Gs,(i,a)=>{a(i,{get class(){return V(e)},children:(e,i)=>{var a=U(),o=q(a);c(o,()=>Fs,(e,i)=>{i(e,{children:(e,i)=>{var a=$l(),o=q(a);c(o,()=>zs,(e,n)=>{n(e,{variant:`icon`,children:(e,n)=>{var r=U(),i=q(r),a=e=>{qs(e,{})},o=e=>{tr(e,{})},s=e=>{Be(e,{get severity(){return t.type}})};D(i,e=>{t.type===`loading`?e(a):t.type===`empty`?e(o,1):e(s,-1)}),h(e,r)},$$slots:{default:!0}})});var s=I(o,2),l=e=>{var n=U(),i=q(n);c(i,()=>Hs,(e,n)=>{n(e,{children:(e,n)=>{r();var i=M();z(()=>T(i,t.title)),h(e,i)},$$slots:{default:!0}})}),h(e,n)};D(s,e=>{t.title&&e(l)});var u=I(s,2),d=e=>{var t=U(),i=q(t);c(i,()=>Ms,(e,t)=>{t(e,{children:(e,t)=>{r();var i=M();z(()=>T(i,n())),h(e,i)},$$slots:{default:!0}})}),h(e,t)};D(u,e=>{n()&&e(d)}),h(e,a)},$$slots:{default:!0}})}),h(e,a)},$$slots:{default:!0}})})}h(e,s),b()}var tu=m(`<!> `,1),nu=m(`<div class="bottom-0 mt-3 pb-3 pt-2 backdrop-blur-sm px-2 sticky border-t border-border/50"><span class="sr-only" role="status" aria-live="polite"> </span> <div class="gap-2 flex"><!> <!></div></div>`);function ru(e,t){l(t,!0);let n=Je(),r=y(()=>n.messages),a=P(t,`hasNeverSolved`,3,!1),o=w(``),s=!1;ce(()=>{let e=t.isSolving;de(()=>{e?i(o,V(r).solvingEllipsis,!0):s&&i(o,t.hasPendingChanges?``:V(r).upToDate,!0),s=e})});var c=nu(),u=N(c),d=J(u,!0),p=I(u,2),m=N(p);{let e=y(()=>t.hasPendingChanges?`default`:`ghost`),n=y(()=>!t.hasPendingChanges&&!t.isSolving),i=y(()=>t.hasPendingChanges&&!t.isSolving?`shadow-md`:``),o=y(()=>!t.hasPendingChanges&&!t.isSolving?`text-muted-foreground`:``);We(m,{get variant(){return V(e)},size:`lg`,onclick:()=>!t.isSolving&&t.oncalculate(),get disabled(){return V(n)},get"aria-busy"(){return t.isSolving},get class(){return`gap-2 font-medium min-w-0 flex-1 transition-all duration-200
5
5
  ${V(i)??``}
6
- ${V(o)??``}`},children:(e,n)=>{var i=U(),o=K(i),s=e=>{var t=tu(),n=K(t);lr(n,{class:`h-4 w-4 animate-spin`});var i=I(n);z(()=>T(i,` ${V(r).solvingEllipsis??``}`)),h(e,t)},c=e=>{var t=tu(),n=K(t);lt(n,{class:`h-4 w-4`});var i=I(n);z(()=>T(i,` ${V(r).pressToCalculate??``}`)),h(e,t)},l=e=>{var t=tu(),n=K(t);Dr(n,{class:`h-4 w-4`});var i=I(n);z(()=>T(i,` ${V(r).calculate??``}`)),h(e,t)},u=e=>{var t=tu(),n=K(t);$e(n,{class:`h-4 w-4`});var i=I(n);z(()=>T(i,` ${V(r).upToDate??``}`)),h(e,t)};D(o,e=>{t.isSolving?e(s):a()?e(c,1):t.hasPendingChanges?e(l,2):e(u,-1)}),h(e,i)},$$slots:{default:!0}})}var g=I(m,2);f(g,()=>t.trailing??E),O(p),O(c),z(()=>T(d,V(o))),h(e,c),b()}var iu={FILE_UPLOAD:{MAX_SIZE_MB:300,MAX_SIZE_BYTES:314572800},TIMEOUTS:{SOLVE_STATE_DURATION:3500,DRAWER_ANIMATION_MS:350},SOLVING_INDICATOR:{FAST_THRESHOLD_MS:200,SLOW_THRESHOLD_MS:600,ANIMATION_DELAY:300,HISTORY_SIZE:3},FILE_SIZE:{BYTES_PER_KB:1024}},au={LEFT:0,MIDDLE:1,RIGHT:2,ROTATE:0,DOLLY:1,PAN:2},ou={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3},su=1e3,cu=1001,lu=1002,uu=1003,du=1004,fu=1005,pu=1006,mu=1007,hu=1008,gu=1009,_u=1010,vu=1011,yu=1012,bu=1013,xu=1014,Su=1015,Cu=1016,wu=1017,Tu=1018,Eu=1020,Du=35902,Ou=35899,ku=1021,Au=1022,ju=1023,Mu=1026,Nu=1027,Pu=1028,Fu=1029,Iu=1030,Lu=1031,Ru=1033,zu=33776,Bu=33777,Vu=33778,Hu=33779,Uu=35840,Wu=35841,Gu=35842,Ku=35843,qu=36196,Ju=37492,Yu=37496,Xu=37488,Zu=37489,Qu=37490,$u=37491,ed=37808,td=37809,nd=37810,rd=37811,id=37812,ad=37813,od=37814,sd=37815,cd=37816,ld=37817,ud=37818,dd=37819,fd=37820,pd=37821,md=36492,hd=36494,gd=36495,_d=36283,vd=36284,yd=36285,bd=36286,xd=2300,Sd=2301,Cd=2302,wd=2303,Td=2400,Ed=2401,Dd=2402,Od=3200,kd=`srgb`,Ad=`srgb-linear`,jd=`linear`,Md=`srgb`,Nd=7680,Pd=35044,Fd=2e3;function Id(e){for(let t=e.length-1;t>=0;--t)if(e[t]>=65535)return!0;return!1}function Ld(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function Rd(e){return document.createElementNS(`http://www.w3.org/1999/xhtml`,e)}function zd(){let e=Rd(`canvas`);return e.style.display=`block`,e}var Bd={};function Vd(...e){let t=`THREE.`+e.shift();console.log(t,...e)}function Hd(e){let t=e[0];if(typeof t==`string`&&t.startsWith(`TSL:`)){let t=e[1];t&&t.isStackTrace?e[0]+=` `+t.getLocation():e[1]=`Stack trace not available. Enable "THREE.Node.captureStackTrace" to capture stack traces.`}return e}function Ud(...e){e=Hd(e);let t=`THREE.`+e.shift();{let n=e[0];n&&n.isStackTrace?console.warn(n.getError(t)):console.warn(t,...e)}}function Wd(...e){e=Hd(e);let t=`THREE.`+e.shift();{let n=e[0];n&&n.isStackTrace?console.error(n.getError(t)):console.error(t,...e)}}function Gd(...e){let t=e.join(` `);t in Bd||(Bd[t]=!0,Ud(...e))}function Kd(e,t,n){return new Promise(function(r,i){function a(){switch(e.clientWaitSync(t,e.SYNC_FLUSH_COMMANDS_BIT,0)){case e.WAIT_FAILED:i();break;case e.TIMEOUT_EXPIRED:setTimeout(a,n);break;default:r()}}setTimeout(a,n)})}var qd={0:1,2:6,4:7,3:5,1:0,6:2,7:4,5:3},Jd=class{addEventListener(e,t){this._listeners===void 0&&(this._listeners={});let n=this._listeners;n[e]===void 0&&(n[e]=[]),n[e].indexOf(t)===-1&&n[e].push(t)}hasEventListener(e,t){let n=this._listeners;return n!==void 0&&n[e]!==void 0&&n[e].indexOf(t)!==-1}removeEventListener(e,t){let n=this._listeners;if(n===void 0)return;let r=n[e];if(r!==void 0){let e=r.indexOf(t);e!==-1&&r.splice(e,1)}}dispatchEvent(e){let t=this._listeners;if(t===void 0)return;let n=t[e.type];if(n!==void 0){e.target=this;let t=n.slice(0);for(let n=0,r=t.length;n<r;n++)t[n].call(this,e);e.target=null}}},Yd=`00.01.02.03.04.05.06.07.08.09.0a.0b.0c.0d.0e.0f.10.11.12.13.14.15.16.17.18.19.1a.1b.1c.1d.1e.1f.20.21.22.23.24.25.26.27.28.29.2a.2b.2c.2d.2e.2f.30.31.32.33.34.35.36.37.38.39.3a.3b.3c.3d.3e.3f.40.41.42.43.44.45.46.47.48.49.4a.4b.4c.4d.4e.4f.50.51.52.53.54.55.56.57.58.59.5a.5b.5c.5d.5e.5f.60.61.62.63.64.65.66.67.68.69.6a.6b.6c.6d.6e.6f.70.71.72.73.74.75.76.77.78.79.7a.7b.7c.7d.7e.7f.80.81.82.83.84.85.86.87.88.89.8a.8b.8c.8d.8e.8f.90.91.92.93.94.95.96.97.98.99.9a.9b.9c.9d.9e.9f.a0.a1.a2.a3.a4.a5.a6.a7.a8.a9.aa.ab.ac.ad.ae.af.b0.b1.b2.b3.b4.b5.b6.b7.b8.b9.ba.bb.bc.bd.be.bf.c0.c1.c2.c3.c4.c5.c6.c7.c8.c9.ca.cb.cc.cd.ce.cf.d0.d1.d2.d3.d4.d5.d6.d7.d8.d9.da.db.dc.dd.de.df.e0.e1.e2.e3.e4.e5.e6.e7.e8.e9.ea.eb.ec.ed.ee.ef.f0.f1.f2.f3.f4.f5.f6.f7.f8.f9.fa.fb.fc.fd.fe.ff`.split(`.`),Xd=1234567,Zd=Math.PI/180,Qd=180/Math.PI;function $d(){let e=Math.random()*4294967295|0,t=Math.random()*4294967295|0,n=Math.random()*4294967295|0,r=Math.random()*4294967295|0;return(Yd[e&255]+Yd[e>>8&255]+Yd[e>>16&255]+Yd[e>>24&255]+`-`+Yd[t&255]+Yd[t>>8&255]+`-`+Yd[t>>16&15|64]+Yd[t>>24&255]+`-`+Yd[n&63|128]+Yd[n>>8&255]+`-`+Yd[n>>16&255]+Yd[n>>24&255]+Yd[r&255]+Yd[r>>8&255]+Yd[r>>16&255]+Yd[r>>24&255]).toLowerCase()}function ef(e,t,n){return Math.max(t,Math.min(n,e))}function tf(e,t){return(e%t+t)%t}function nf(e,t,n,r,i){return r+(e-t)*(i-r)/(n-t)}function rf(e,t,n){return e===t?0:(n-e)/(t-e)}function af(e,t,n){return(1-n)*e+n*t}function of(e,t,n,r){return af(e,t,1-Math.exp(-n*r))}function sf(e,t=1){return t-Math.abs(tf(e,t*2)-t)}function cf(e,t,n){return e<=t?0:e>=n?1:(e=(e-t)/(n-t),e*e*(3-2*e))}function lf(e,t,n){return e<=t?0:e>=n?1:(e=(e-t)/(n-t),e*e*e*(e*(e*6-15)+10))}function uf(e,t){return e+Math.floor(Math.random()*(t-e+1))}function df(e,t){return e+Math.random()*(t-e)}function ff(e){return e*(.5-Math.random())}function pf(e){e!==void 0&&(Xd=e);let t=Xd+=1831565813;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}function mf(e){return e*Zd}function hf(e){return e*Qd}function gf(e){return e>0&&Number.isInteger(e)&&2**Math.round(Math.log2(e))===e}function _f(e){return 2**Math.ceil(Math.log(e)/Math.LN2)}function vf(e){return 2**Math.floor(Math.log(e)/Math.LN2)}function yf(e,t,n,r,i){let a=Math.cos,o=Math.sin,s=a(n/2),c=o(n/2),l=a((t+r)/2),u=o((t+r)/2),d=a((t-r)/2),f=o((t-r)/2),p=a((r-t)/2),m=o((r-t)/2);switch(i){case`XYX`:e.set(s*u,c*d,c*f,s*l);break;case`YZY`:e.set(c*f,s*u,c*d,s*l);break;case`ZXZ`:e.set(c*d,c*f,s*u,s*l);break;case`XZX`:e.set(s*u,c*m,c*p,s*l);break;case`YXY`:e.set(c*p,s*u,c*m,s*l);break;case`ZYZ`:e.set(c*m,c*p,s*u,s*l);break;default:Ud(`MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: `+i)}}function bf(e,t){switch(t.constructor){case Float32Array:return e;case Uint32Array:return e/4294967295;case Uint16Array:return e/65535;case Uint8Array:case Uint8ClampedArray:return e/255;case Int32Array:return Math.max(e/2147483647,-1);case Int16Array:return Math.max(e/32767,-1);case Int8Array:return Math.max(e/127,-1);default:throw Error(`THREE.MathUtils: Invalid component type.`)}}function xf(e,t){switch(t.constructor){case Float32Array:return e;case Uint32Array:return Math.round(e*4294967295);case Uint16Array:return Math.round(e*65535);case Uint8Array:case Uint8ClampedArray:return Math.round(e*255);case Int32Array:return Math.round(e*2147483647);case Int16Array:return Math.round(e*32767);case Int8Array:return Math.round(e*127);default:throw Error(`THREE.MathUtils: Invalid component type.`)}}var Sf={DEG2RAD:Zd,RAD2DEG:Qd,generateUUID:$d,clamp:ef,euclideanModulo:tf,mapLinear:nf,inverseLerp:rf,lerp:af,damp:of,pingpong:sf,smoothstep:cf,smootherstep:lf,randInt:uf,randFloat:df,randFloatSpread:ff,seededRandom:pf,degToRad:mf,radToDeg:hf,isPowerOfTwo:gf,ceilPowerOfTwo:_f,floorPowerOfTwo:vf,setQuaternionFromProperEuler:yf,normalize:xf,denormalize:bf},X=class e{static{e.prototype.isVector2=!0}constructor(e=0,t=0){this.x=e,this.y=t}get width(){return this.x}set width(e){this.x=e}get height(){return this.y}set height(e){this.y=e}set(e,t){return this.x=e,this.y=t,this}setScalar(e){return this.x=e,this.y=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;default:throw Error(`THREE.Vector2: index is out of range: `+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;default:throw Error(`THREE.Vector2: index is out of range: `+e)}}clone(){return new this.constructor(this.x,this.y)}copy(e){return this.x=e.x,this.y=e.y,this}add(e){return this.x+=e.x,this.y+=e.y,this}addScalar(e){return this.x+=e,this.y+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this}subScalar(e){return this.x-=e,this.y-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this}multiply(e){return this.x*=e.x,this.y*=e.y,this}multiplyScalar(e){return this.x*=e,this.y*=e,this}divide(e){return this.x/=e.x,this.y/=e.y,this}divideScalar(e){return this.multiplyScalar(1/e)}applyMatrix3(e){let t=this.x,n=this.y,r=e.elements;return this.x=r[0]*t+r[3]*n+r[6],this.y=r[1]*t+r[4]*n+r[7],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this}clamp(e,t){return this.x=ef(this.x,e.x,t.x),this.y=ef(this.y,e.y,t.y),this}clampScalar(e,t){return this.x=ef(this.x,e,t),this.y=ef(this.y,e,t),this}clampLength(e,t){let n=this.length();return this.divideScalar(n||1).multiplyScalar(ef(n,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(e){return this.x*e.x+this.y*e.y}cross(e){return this.x*e.y-this.y*e.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(e){let t=Math.sqrt(this.lengthSq()*e.lengthSq());if(t===0)return Math.PI/2;let n=this.dot(e)/t;return Math.acos(ef(n,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let t=this.x-e.x,n=this.y-e.y;return t*t+n*n}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this}equals(e){return e.x===this.x&&e.y===this.y}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this}rotateAround(e,t){let n=Math.cos(t),r=Math.sin(t),i=this.x-e.x,a=this.y-e.y;return this.x=i*n-a*r+e.x,this.y=i*r+a*n+e.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}},Cf=class{constructor(e=0,t=0,n=0,r=1){this.isQuaternion=!0,this._x=e,this._y=t,this._z=n,this._w=r}static slerpFlat(e,t,n,r,i,a,o){let s=n[r+0],c=n[r+1],l=n[r+2],u=n[r+3],d=i[a+0],f=i[a+1],p=i[a+2],m=i[a+3];if(u!==m||s!==d||c!==f||l!==p){let e=s*d+c*f+l*p+u*m;e<0&&(d=-d,f=-f,p=-p,m=-m,e=-e);let t=1-o;if(e<.9995){let n=Math.acos(e),r=Math.sin(n);t=Math.sin(t*n)/r,o=Math.sin(o*n)/r,s=s*t+d*o,c=c*t+f*o,l=l*t+p*o,u=u*t+m*o}else{s=s*t+d*o,c=c*t+f*o,l=l*t+p*o,u=u*t+m*o;let e=1/Math.sqrt(s*s+c*c+l*l+u*u);s*=e,c*=e,l*=e,u*=e}}e[t]=s,e[t+1]=c,e[t+2]=l,e[t+3]=u}static multiplyQuaternionsFlat(e,t,n,r,i,a){let o=n[r],s=n[r+1],c=n[r+2],l=n[r+3],u=i[a],d=i[a+1],f=i[a+2],p=i[a+3];return e[t]=o*p+l*u+s*f-c*d,e[t+1]=s*p+l*d+c*u-o*f,e[t+2]=c*p+l*f+o*d-s*u,e[t+3]=l*p-o*u-s*d-c*f,e}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get w(){return this._w}set w(e){this._w=e,this._onChangeCallback()}set(e,t,n,r){return this._x=e,this._y=t,this._z=n,this._w=r,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(e){return this._x=e.x,this._y=e.y,this._z=e.z,this._w=e.w,this._onChangeCallback(),this}setFromEuler(e,t=!0){let n=e._x,r=e._y,i=e._z,a=e._order,o=Math.cos,s=Math.sin,c=o(n/2),l=o(r/2),u=o(i/2),d=s(n/2),f=s(r/2),p=s(i/2);switch(a){case`XYZ`:this._x=d*l*u+c*f*p,this._y=c*f*u-d*l*p,this._z=c*l*p+d*f*u,this._w=c*l*u-d*f*p;break;case`YXZ`:this._x=d*l*u+c*f*p,this._y=c*f*u-d*l*p,this._z=c*l*p-d*f*u,this._w=c*l*u+d*f*p;break;case`ZXY`:this._x=d*l*u-c*f*p,this._y=c*f*u+d*l*p,this._z=c*l*p+d*f*u,this._w=c*l*u-d*f*p;break;case`ZYX`:this._x=d*l*u-c*f*p,this._y=c*f*u+d*l*p,this._z=c*l*p-d*f*u,this._w=c*l*u+d*f*p;break;case`YZX`:this._x=d*l*u+c*f*p,this._y=c*f*u+d*l*p,this._z=c*l*p-d*f*u,this._w=c*l*u-d*f*p;break;case`XZY`:this._x=d*l*u-c*f*p,this._y=c*f*u-d*l*p,this._z=c*l*p+d*f*u,this._w=c*l*u+d*f*p;break;default:Ud(`Quaternion: .setFromEuler() encountered an unknown order: `+a)}return t===!0&&this._onChangeCallback(),this}setFromAxisAngle(e,t){let n=t/2,r=Math.sin(n);return this._x=e.x*r,this._y=e.y*r,this._z=e.z*r,this._w=Math.cos(n),this._onChangeCallback(),this}setFromRotationMatrix(e){let t=e.elements,n=t[0],r=t[4],i=t[8],a=t[1],o=t[5],s=t[9],c=t[2],l=t[6],u=t[10],d=n+o+u;if(d>0){let e=.5/Math.sqrt(d+1);this._w=.25/e,this._x=(l-s)*e,this._y=(i-c)*e,this._z=(a-r)*e}else if(n>o&&n>u){let e=2*Math.sqrt(1+n-o-u);this._w=(l-s)/e,this._x=.25*e,this._y=(r+a)/e,this._z=(i+c)/e}else if(o>u){let e=2*Math.sqrt(1+o-n-u);this._w=(i-c)/e,this._x=(r+a)/e,this._y=.25*e,this._z=(s+l)/e}else{let e=2*Math.sqrt(1+u-n-o);this._w=(a-r)/e,this._x=(i+c)/e,this._y=(s+l)/e,this._z=.25*e}return this._onChangeCallback(),this}setFromUnitVectors(e,t){let n=e.dot(t)+1;return n<1e-8?(n=0,Math.abs(e.x)>Math.abs(e.z)?(this._x=-e.y,this._y=e.x,this._z=0,this._w=n):(this._x=0,this._y=-e.z,this._z=e.y,this._w=n)):(this._x=e.y*t.z-e.z*t.y,this._y=e.z*t.x-e.x*t.z,this._z=e.x*t.y-e.y*t.x,this._w=n),this.normalize()}angleTo(e){return 2*Math.acos(Math.abs(ef(this.dot(e),-1,1)))}rotateTowards(e,t){let n=this.angleTo(e);if(n===0)return this;let r=Math.min(1,t/n);return this.slerp(e,r),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(e){return this._x*e._x+this._y*e._y+this._z*e._z+this._w*e._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let e=this.length();return e===0?(this._x=0,this._y=0,this._z=0,this._w=1):(e=1/e,this._x*=e,this._y*=e,this._z*=e,this._w*=e),this._onChangeCallback(),this}multiply(e){return this.multiplyQuaternions(this,e)}premultiply(e){return this.multiplyQuaternions(e,this)}multiplyQuaternions(e,t){let n=e._x,r=e._y,i=e._z,a=e._w,o=t._x,s=t._y,c=t._z,l=t._w;return this._x=n*l+a*o+r*c-i*s,this._y=r*l+a*s+i*o-n*c,this._z=i*l+a*c+n*s-r*o,this._w=a*l-n*o-r*s-i*c,this._onChangeCallback(),this}slerp(e,t){let n=e._x,r=e._y,i=e._z,a=e._w,o=this.dot(e);o<0&&(n=-n,r=-r,i=-i,a=-a,o=-o);let s=1-t;if(o<.9995){let e=Math.acos(o),c=Math.sin(e);s=Math.sin(s*e)/c,t=Math.sin(t*e)/c,this._x=this._x*s+n*t,this._y=this._y*s+r*t,this._z=this._z*s+i*t,this._w=this._w*s+a*t,this._onChangeCallback()}else this._x=this._x*s+n*t,this._y=this._y*s+r*t,this._z=this._z*s+i*t,this._w=this._w*s+a*t,this.normalize();return this}slerpQuaternions(e,t,n){return this.copy(e).slerp(t,n)}random(){let e=2*Math.PI*Math.random(),t=2*Math.PI*Math.random(),n=Math.random(),r=Math.sqrt(1-n),i=Math.sqrt(n);return this.set(r*Math.sin(e),r*Math.cos(e),i*Math.sin(t),i*Math.cos(t))}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._w===this._w}fromArray(e,t=0){return this._x=e[t],this._y=e[t+1],this._z=e[t+2],this._w=e[t+3],this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._w,e}fromBufferAttribute(e,t){return this._x=e.getX(t),this._y=e.getY(t),this._z=e.getZ(t),this._w=e.getW(t),this._onChangeCallback(),this}toJSON(){return this.toArray()}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}},Z=class e{static{e.prototype.isVector3=!0}constructor(e=0,t=0,n=0){this.x=e,this.y=t,this.z=n}set(e,t,n){return n===void 0&&(n=this.z),this.x=e,this.y=t,this.z=n,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;default:throw Error(`THREE.Vector3: index is out of range: `+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw Error(`THREE.Vector3: index is out of range: `+e)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this}multiplyVectors(e,t){return this.x=e.x*t.x,this.y=e.y*t.y,this.z=e.z*t.z,this}applyEuler(e){return this.applyQuaternion(Tf.setFromEuler(e))}applyAxisAngle(e,t){return this.applyQuaternion(Tf.setFromAxisAngle(e,t))}applyMatrix3(e){let t=this.x,n=this.y,r=this.z,i=e.elements;return this.x=i[0]*t+i[3]*n+i[6]*r,this.y=i[1]*t+i[4]*n+i[7]*r,this.z=i[2]*t+i[5]*n+i[8]*r,this}applyNormalMatrix(e){return this.applyMatrix3(e).normalize()}applyMatrix4(e){let t=this.x,n=this.y,r=this.z,i=e.elements,a=1/(i[3]*t+i[7]*n+i[11]*r+i[15]);return this.x=(i[0]*t+i[4]*n+i[8]*r+i[12])*a,this.y=(i[1]*t+i[5]*n+i[9]*r+i[13])*a,this.z=(i[2]*t+i[6]*n+i[10]*r+i[14])*a,this}applyQuaternion(e){let t=this.x,n=this.y,r=this.z,i=e.x,a=e.y,o=e.z,s=e.w,c=2*(a*r-o*n),l=2*(o*t-i*r),u=2*(i*n-a*t);return this.x=t+s*c+a*u-o*l,this.y=n+s*l+o*c-i*u,this.z=r+s*u+i*l-a*c,this}project(e){return this.applyMatrix4(e.matrixWorldInverse).applyMatrix4(e.projectionMatrix)}unproject(e){return this.applyMatrix4(e.projectionMatrixInverse).applyMatrix4(e.matrixWorld)}transformDirection(e){let t=this.x,n=this.y,r=this.z,i=e.elements;return this.x=i[0]*t+i[4]*n+i[8]*r,this.y=i[1]*t+i[5]*n+i[9]*r,this.z=i[2]*t+i[6]*n+i[10]*r,this.normalize()}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this}divideScalar(e){return this.multiplyScalar(1/e)}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this}clamp(e,t){return this.x=ef(this.x,e.x,t.x),this.y=ef(this.y,e.y,t.y),this.z=ef(this.z,e.z,t.z),this}clampScalar(e,t){return this.x=ef(this.x,e,t),this.y=ef(this.y,e,t),this.z=ef(this.z,e,t),this}clampLength(e,t){let n=this.length();return this.divideScalar(n||1).multiplyScalar(ef(n,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this.z=e.z+(t.z-e.z)*n,this}cross(e){return this.crossVectors(this,e)}crossVectors(e,t){let n=e.x,r=e.y,i=e.z,a=t.x,o=t.y,s=t.z;return this.x=r*s-i*o,this.y=i*a-n*s,this.z=n*o-r*a,this}projectOnVector(e){let t=e.lengthSq();if(t===0)return this.set(0,0,0);let n=e.dot(this)/t;return this.copy(e).multiplyScalar(n)}projectOnPlane(e){return wf.copy(this).projectOnVector(e),this.sub(wf)}reflect(e){return this.sub(wf.copy(e).multiplyScalar(2*this.dot(e)))}angleTo(e){let t=Math.sqrt(this.lengthSq()*e.lengthSq());if(t===0)return Math.PI/2;let n=this.dot(e)/t;return Math.acos(ef(n,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let t=this.x-e.x,n=this.y-e.y,r=this.z-e.z;return t*t+n*n+r*r}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)+Math.abs(this.z-e.z)}setFromSpherical(e){return this.setFromSphericalCoords(e.radius,e.phi,e.theta)}setFromSphericalCoords(e,t,n){let r=Math.sin(t)*e;return this.x=r*Math.sin(n),this.y=Math.cos(t)*e,this.z=r*Math.cos(n),this}setFromCylindrical(e){return this.setFromCylindricalCoords(e.radius,e.theta,e.y)}setFromCylindricalCoords(e,t,n){return this.x=e*Math.sin(t),this.y=n,this.z=e*Math.cos(t),this}setFromMatrixPosition(e){let t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this}setFromMatrixScale(e){let t=this.setFromMatrixColumn(e,0).length(),n=this.setFromMatrixColumn(e,1).length(),r=this.setFromMatrixColumn(e,2).length();return this.x=t,this.y=n,this.z=r,this}setFromMatrixColumn(e,t){return this.fromArray(e.elements,t*4)}setFromMatrix3Column(e,t){return this.fromArray(e.elements,t*3)}setFromEuler(e){return this.x=e._x,this.y=e._y,this.z=e._z,this}setFromColor(e){return this.x=e.r,this.y=e.g,this.z=e.b,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this.z=e.getZ(t),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){let e=Math.random()*Math.PI*2,t=Math.random()*2-1,n=Math.sqrt(1-t*t);return this.x=n*Math.cos(e),this.y=t,this.z=n*Math.sin(e),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}},wf=new Z,Tf=new Cf,Ef=class e{static{e.prototype.isMatrix3=!0}constructor(e,t,n,r,i,a,o,s,c){this.elements=[1,0,0,0,1,0,0,0,1],e!==void 0&&this.set(e,t,n,r,i,a,o,s,c)}set(e,t,n,r,i,a,o,s,c){let l=this.elements;return l[0]=e,l[1]=r,l[2]=o,l[3]=t,l[4]=i,l[5]=s,l[6]=n,l[7]=a,l[8]=c,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(e){let t=this.elements,n=e.elements;return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],this}extractBasis(e,t,n){return e.setFromMatrix3Column(this,0),t.setFromMatrix3Column(this,1),n.setFromMatrix3Column(this,2),this}setFromMatrix4(e){let t=e.elements;return this.set(t[0],t[4],t[8],t[1],t[5],t[9],t[2],t[6],t[10]),this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){let n=e.elements,r=t.elements,i=this.elements,a=n[0],o=n[3],s=n[6],c=n[1],l=n[4],u=n[7],d=n[2],f=n[5],p=n[8],m=r[0],h=r[3],g=r[6],_=r[1],v=r[4],y=r[7],b=r[2],x=r[5],S=r[8];return i[0]=a*m+o*_+s*b,i[3]=a*h+o*v+s*x,i[6]=a*g+o*y+s*S,i[1]=c*m+l*_+u*b,i[4]=c*h+l*v+u*x,i[7]=c*g+l*y+u*S,i[2]=d*m+f*_+p*b,i[5]=d*h+f*v+p*x,i[8]=d*g+f*y+p*S,this}multiplyScalar(e){let t=this.elements;return t[0]*=e,t[3]*=e,t[6]*=e,t[1]*=e,t[4]*=e,t[7]*=e,t[2]*=e,t[5]*=e,t[8]*=e,this}determinant(){let e=this.elements,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8];return t*a*l-t*o*c-n*i*l+n*o*s+r*i*c-r*a*s}invert(){let e=this.elements,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8],u=l*a-o*c,d=o*s-l*i,f=c*i-a*s,p=t*u+n*d+r*f;if(p===0)return this.set(0,0,0,0,0,0,0,0,0);let m=1/p;return e[0]=u*m,e[1]=(r*c-l*n)*m,e[2]=(o*n-r*a)*m,e[3]=d*m,e[4]=(l*t-r*s)*m,e[5]=(r*i-o*t)*m,e[6]=f*m,e[7]=(n*s-c*t)*m,e[8]=(a*t-n*i)*m,this}transpose(){let e,t=this.elements;return e=t[1],t[1]=t[3],t[3]=e,e=t[2],t[2]=t[6],t[6]=e,e=t[5],t[5]=t[7],t[7]=e,this}getNormalMatrix(e){return this.setFromMatrix4(e).invert().transpose()}transposeIntoArray(e){let t=this.elements;return e[0]=t[0],e[1]=t[3],e[2]=t[6],e[3]=t[1],e[4]=t[4],e[5]=t[7],e[6]=t[2],e[7]=t[5],e[8]=t[8],this}setUvTransform(e,t,n,r,i,a,o){let s=Math.cos(i),c=Math.sin(i);return this.set(n*s,n*c,-n*(s*a+c*o)+a+e,-r*c,r*s,-r*(-c*a+s*o)+o+t,0,0,1),this}scale(e,t){return Gd(`Matrix3: .scale() is deprecated. Use .makeScale() instead.`),this.premultiply(Df.makeScale(e,t)),this}rotate(e){return Gd(`Matrix3: .rotate() is deprecated. Use .makeRotation() instead.`),this.premultiply(Df.makeRotation(-e)),this}translate(e,t){return Gd(`Matrix3: .translate() is deprecated. Use .makeTranslation() instead.`),this.premultiply(Df.makeTranslation(e,t)),this}makeTranslation(e,t){return e.isVector2?this.set(1,0,e.x,0,1,e.y,0,0,1):this.set(1,0,e,0,1,t,0,0,1),this}makeRotation(e){let t=Math.cos(e),n=Math.sin(e);return this.set(t,-n,0,n,t,0,0,0,1),this}makeScale(e,t){return this.set(e,0,0,0,t,0,0,0,1),this}equals(e){let t=this.elements,n=e.elements;for(let e=0;e<9;e++)if(t[e]!==n[e])return!1;return!0}fromArray(e,t=0){for(let n=0;n<9;n++)this.elements[n]=e[n+t];return this}toArray(e=[],t=0){let n=this.elements;return e[t]=n[0],e[t+1]=n[1],e[t+2]=n[2],e[t+3]=n[3],e[t+4]=n[4],e[t+5]=n[5],e[t+6]=n[6],e[t+7]=n[7],e[t+8]=n[8],e}clone(){return new this.constructor().fromArray(this.elements)}},Df=new Ef,Of=new Ef().set(.4123908,.3575843,.1804808,.212639,.7151687,.0721923,.0193308,.1191948,.9505322),kf=new Ef().set(3.2409699,-1.5373832,-.4986108,-.9692436,1.8759675,.0415551,.0556301,-.203977,1.0569715);function Af(){let e={enabled:!0,workingColorSpace:Ad,spaces:{},convert:function(e,t,n){return this.enabled===!1||t===n||!t||!n?e:(this.spaces[t].transfer===`srgb`&&(e.r=Mf(e.r),e.g=Mf(e.g),e.b=Mf(e.b)),this.spaces[t].primaries!==this.spaces[n].primaries&&(e.applyMatrix3(this.spaces[t].toXYZ),e.applyMatrix3(this.spaces[n].fromXYZ)),this.spaces[n].transfer===`srgb`&&(e.r=Nf(e.r),e.g=Nf(e.g),e.b=Nf(e.b)),e)},workingToColorSpace:function(e,t){return this.convert(e,this.workingColorSpace,t)},colorSpaceToWorking:function(e,t){return this.convert(e,t,this.workingColorSpace)},getPrimaries:function(e){return this.spaces[e].primaries},getTransfer:function(e){return e===``?jd:this.spaces[e].transfer},getToneMappingMode:function(e){return this.spaces[e].outputColorSpaceConfig.toneMappingMode||`standard`},getLuminanceCoefficients:function(e,t=this.workingColorSpace){return e.fromArray(this.spaces[t].luminanceCoefficients)},define:function(e){Object.assign(this.spaces,e)},_getMatrix:function(e,t,n){return e.copy(this.spaces[t].toXYZ).multiply(this.spaces[n].fromXYZ)},_getDrawingBufferColorSpace:function(e){return this.spaces[e].outputColorSpaceConfig.drawingBufferColorSpace},_getUnpackColorSpace:function(e=this.workingColorSpace){return this.spaces[e].workingColorSpaceConfig.unpackColorSpace},fromWorkingColorSpace:function(t,n){return Gd(`ColorManagement: .fromWorkingColorSpace() has been renamed to .workingToColorSpace().`),e.workingToColorSpace(t,n)},toWorkingColorSpace:function(t,n){return Gd(`ColorManagement: .toWorkingColorSpace() has been renamed to .colorSpaceToWorking().`),e.colorSpaceToWorking(t,n)}},t=[.64,.33,.3,.6,.15,.06],n=[.2126,.7152,.0722],r=[.3127,.329];return e.define({[Ad]:{primaries:t,whitePoint:r,transfer:jd,toXYZ:Of,fromXYZ:kf,luminanceCoefficients:n,workingColorSpaceConfig:{unpackColorSpace:kd},outputColorSpaceConfig:{drawingBufferColorSpace:kd}},[kd]:{primaries:t,whitePoint:r,transfer:Md,toXYZ:Of,fromXYZ:kf,luminanceCoefficients:n,outputColorSpaceConfig:{drawingBufferColorSpace:kd}}}),e}var jf=Af();function Mf(e){return e<.04045?e*.0773993808:(e*.9478672986+.0521327014)**2.4}function Nf(e){return e<.0031308?e*12.92:1.055*e**.41666-.055}var Pf,Ff=class{static getDataURL(e,t=`image/png`){if(/^data:/i.test(e.src)||typeof HTMLCanvasElement>`u`)return e.src;let n;if(e instanceof HTMLCanvasElement)n=e;else{Pf===void 0&&(Pf=Rd(`canvas`)),Pf.width=e.width,Pf.height=e.height;let t=Pf.getContext(`2d`);e instanceof ImageData?t.putImageData(e,0,0):t.drawImage(e,0,0,e.width,e.height),n=Pf}return n.toDataURL(t)}static sRGBToLinear(e){if(typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement||typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||typeof ImageBitmap<`u`&&e instanceof ImageBitmap){let t=Rd(`canvas`);t.width=e.width,t.height=e.height;let n=t.getContext(`2d`);n.drawImage(e,0,0,e.width,e.height);let r=n.getImageData(0,0,e.width,e.height),i=r.data;for(let e=0;e<i.length;e++)i[e]=Mf(i[e]/255)*255;return n.putImageData(r,0,0),t}if(e.data){let t=e.data.slice(0);for(let e=0;e<t.length;e++)t instanceof Uint8Array||t instanceof Uint8ClampedArray?t[e]=Math.floor(Mf(t[e]/255)*255):t[e]=Mf(t[e]);return{data:t,width:e.width,height:e.height}}return Ud(`ImageUtils.sRGBToLinear(): Unsupported image type. No color space conversion applied.`),e}},If=0,Lf=class{constructor(e=null){this.isTextureSource=!0,Object.defineProperty(this,"id",{value:If++}),this.uuid=$d(),this.data=e,this.dataReady=!0,this.version=0}getSize(e){let t=this.data;return typeof HTMLVideoElement<`u`&&t instanceof HTMLVideoElement?e.set(t.videoWidth,t.videoHeight,0):typeof VideoFrame<`u`&&t instanceof VideoFrame?e.set(t.displayWidth,t.displayHeight,0):t===null?e.set(0,0,0):e.set(t.width,t.height,t.depth||0),e}set needsUpdate(e){e===!0&&this.version++}toJSON(e){let t=e===void 0||typeof e==`string`;if(!t&&e.images[this.uuid]!==void 0)return e.images[this.uuid];let n={uuid:this.uuid,url:``},r=this.data;if(r!==null){let e;if(Array.isArray(r)){e=[];for(let t=0,n=r.length;t<n;t++)r[t].isDataTexture?e.push(Rf(r[t].image)):e.push(Rf(r[t]))}else e=Rf(r);n.url=e}return t||(e.images[this.uuid]=n),n}};function Rf(e){return typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement||typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||typeof ImageBitmap<`u`&&e instanceof ImageBitmap?Ff.getDataURL(e):e.data?{data:Array.from(e.data),width:e.width,height:e.height,type:e.data.constructor.name}:(Ud(`Texture: Unable to serialize Texture.`),{})}var zf=0,Bf=new Z,Vf=class e extends Jd{constructor(t=e.DEFAULT_IMAGE,n=e.DEFAULT_MAPPING,r=cu,i=cu,a=pu,o=hu,s=ju,c=gu,l=e.DEFAULT_ANISOTROPY,u=``){super(),this.isTexture=!0,Object.defineProperty(this,"id",{value:zf++}),this.uuid=$d(),this.name=``,this.source=new Lf(t),this.mipmaps=[],this.mapping=n,this.channel=0,this.wrapS=r,this.wrapT=i,this.magFilter=a,this.minFilter=o,this.anisotropy=l,this.format=s,this.internalFormat=null,this.type=c,this.offset=new X(0,0),this.repeat=new X(1,1),this.center=new X(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new Ef,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.colorSpace=u,this.userData={},this.updateRanges=[],this.version=0,this.onUpdate=null,this.renderTarget=null,this.isRenderTargetTexture=!1,this.isArrayTexture=!!(t&&t.depth&&t.depth>1),this.pmremVersion=0,this.normalized=!1}get width(){return this.source.getSize(Bf).x}get height(){return this.source.getSize(Bf).y}get depth(){return this.source.getSize(Bf).z}get image(){return this.source.data}set image(e){this.source.data=e}updateMatrix(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}clone(){return new this.constructor().copy(this)}copy(e){return this.name=e.name,this.source=e.source,this.mipmaps=e.mipmaps.slice(0),this.mapping=e.mapping,this.channel=e.channel,this.wrapS=e.wrapS,this.wrapT=e.wrapT,this.magFilter=e.magFilter,this.minFilter=e.minFilter,this.anisotropy=e.anisotropy,this.format=e.format,this.internalFormat=e.internalFormat,this.type=e.type,this.normalized=e.normalized,this.offset.copy(e.offset),this.repeat.copy(e.repeat),this.center.copy(e.center),this.rotation=e.rotation,this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrix.copy(e.matrix),this.generateMipmaps=e.generateMipmaps,this.premultiplyAlpha=e.premultiplyAlpha,this.flipY=e.flipY,this.unpackAlignment=e.unpackAlignment,this.colorSpace=e.colorSpace,this.renderTarget=e.renderTarget,this.isRenderTargetTexture=e.isRenderTargetTexture,this.isArrayTexture=e.isArrayTexture,this.userData=JSON.parse(JSON.stringify(e.userData)),this.needsUpdate=!0,this}setValues(e){for(let t in e){let n=e[t];if(n===void 0){Ud(`Texture.setValues(): parameter '${t}' has value of undefined.`);continue}let r=this[t];if(r===void 0){Ud(`Texture.setValues(): property '${t}' does not exist.`);continue}r&&n&&r.isVector2&&n.isVector2||r&&n&&r.isVector3&&n.isVector3||r&&n&&r.isMatrix3&&n.isMatrix3?r.copy(n):this[t]=n}}toJSON(e){let t=e===void 0||typeof e==`string`;if(!t&&e.textures[this.uuid]!==void 0)return e.textures[this.uuid];let n={metadata:{version:4.7,type:`Texture`,generator:`Texture.toJSON`},uuid:this.uuid,name:this.name,image:this.source.toJSON(e).uuid,mapping:this.mapping,channel:this.channel,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,internalFormat:this.internalFormat,type:this.type,normalized:this.normalized,colorSpace:this.colorSpace,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,generateMipmaps:this.generateMipmaps,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};return Object.keys(this.userData).length>0&&(n.userData=this.userData),t||(e.textures[this.uuid]=n),n}dispose(){this.dispatchEvent({type:`dispose`})}transformUv(e){if(this.mapping!==300)return e;if(e.applyMatrix3(this.matrix),e.x<0||e.x>1)switch(this.wrapS){case su:e.x-=Math.floor(e.x);break;case cu:e.x=e.x<0?0:1;break;case lu:Math.abs(Math.floor(e.x)%2)===1?e.x=Math.ceil(e.x)-e.x:e.x-=Math.floor(e.x)}if(e.y<0||e.y>1)switch(this.wrapT){case su:e.y-=Math.floor(e.y);break;case cu:e.y=e.y<0?0:1;break;case lu:Math.abs(Math.floor(e.y)%2)===1?e.y=Math.ceil(e.y)-e.y:e.y-=Math.floor(e.y)}return this.flipY&&(e.y=1-e.y),e}set needsUpdate(e){e===!0&&(this.version++,this.source.needsUpdate=!0)}set needsPMREMUpdate(e){e===!0&&this.pmremVersion++}};Vf.DEFAULT_IMAGE=null,Vf.DEFAULT_MAPPING=300,Vf.DEFAULT_ANISOTROPY=1;var Hf=class e{static{e.prototype.isVector4=!0}constructor(e=0,t=0,n=0,r=1){this.x=e,this.y=t,this.z=n,this.w=r}get width(){return this.z}set width(e){this.z=e}get height(){return this.w}set height(e){this.w=e}set(e,t,n,r){return this.x=e,this.y=t,this.z=n,this.w=r,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this.w=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setW(e){return this.w=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;case 3:this.w=t;break;default:throw Error(`THREE.Vector4: index is out of range: `+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw Error(`THREE.Vector4: index is out of range: `+e)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this.w=e.w===void 0?1:e.w,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this.w+=e.w,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this.w+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this.w=e.w+t.w,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this.w+=e.w*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this.w-=e.w,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this.w-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this.w=e.w-t.w,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this.w*=e.w,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this.w*=e,this}applyMatrix4(e){let t=this.x,n=this.y,r=this.z,i=this.w,a=e.elements;return this.x=a[0]*t+a[4]*n+a[8]*r+a[12]*i,this.y=a[1]*t+a[5]*n+a[9]*r+a[13]*i,this.z=a[2]*t+a[6]*n+a[10]*r+a[14]*i,this.w=a[3]*t+a[7]*n+a[11]*r+a[15]*i,this}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this.w/=e.w,this}divideScalar(e){return this.multiplyScalar(1/e)}setAxisAngleFromQuaternion(e){this.w=2*Math.acos(e.w);let t=Math.sqrt(1-e.w*e.w);return t<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=e.x/t,this.y=e.y/t,this.z=e.z/t),this}setAxisAngleFromRotationMatrix(e){let t,n,r,i,a=.01,o=.1,s=e.elements,c=s[0],l=s[4],u=s[8],d=s[1],f=s[5],p=s[9],m=s[2],h=s[6],g=s[10];if(Math.abs(l-d)<a&&Math.abs(u-m)<a&&Math.abs(p-h)<a){if(Math.abs(l+d)<o&&Math.abs(u+m)<o&&Math.abs(p+h)<o&&Math.abs(c+f+g-3)<o)return this.set(1,0,0,0),this;t=Math.PI;let e=(c+1)/2,s=(f+1)/2,_=(g+1)/2,v=(l+d)/4,y=(u+m)/4,b=(p+h)/4;return e>s&&e>_?e<a?(n=0,r=.707106781,i=.707106781):(n=Math.sqrt(e),r=v/n,i=y/n):s>_?s<a?(n=.707106781,r=0,i=.707106781):(r=Math.sqrt(s),n=v/r,i=b/r):_<a?(n=.707106781,r=.707106781,i=0):(i=Math.sqrt(_),n=y/i,r=b/i),this.set(n,r,i,t),this}let _=Math.sqrt((h-p)*(h-p)+(u-m)*(u-m)+(d-l)*(d-l));return Math.abs(_)<.001&&(_=1),this.x=(h-p)/_,this.y=(u-m)/_,this.z=(d-l)/_,this.w=Math.acos((c+f+g-1)/2),this}setFromMatrixPosition(e){let t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this.w=t[15],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this.w=Math.min(this.w,e.w),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this.w=Math.max(this.w,e.w),this}clamp(e,t){return this.x=ef(this.x,e.x,t.x),this.y=ef(this.y,e.y,t.y),this.z=ef(this.z,e.z,t.z),this.w=ef(this.w,e.w,t.w),this}clampScalar(e,t){return this.x=ef(this.x,e,t),this.y=ef(this.y,e,t),this.z=ef(this.z,e,t),this.w=ef(this.w,e,t),this}clampLength(e,t){let n=this.length();return this.divideScalar(n||1).multiplyScalar(ef(n,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this.w=Math.trunc(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z+this.w*e.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this.w+=(e.w-this.w)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this.z=e.z+(t.z-e.z)*n,this.w=e.w+(t.w-e.w)*n,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z&&e.w===this.w}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this.w=e[t+3],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e[t+3]=this.w,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this.z=e.getZ(t),this.w=e.getW(t),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}},Uf=class extends Jd{constructor(e=1,t=1,n={}){super(),n=Object.assign({generateMipmaps:!1,internalFormat:null,minFilter:pu,depthBuffer:!0,stencilBuffer:!1,resolveColorBuffer:!0,resolveDepthBuffer:!0,resolveStencilBuffer:!0,storeMultisampledColorBuffer:!0,storeMultisampledDepthBuffer:!0,storeMultisampledStencilBuffer:!0,depthTexture:null,samples:0,count:1,depth:1,multiview:!1,useArrayDepthTexture:!1},n),this.isRenderTarget=!0,this.width=e,this.height=t,this.depth=n.depth,this.scissor=new Hf(0,0,e,t),this.scissorTest=!1,this.viewport=new Hf(0,0,e,t),this.textures=[];let r=new Vf({width:e,height:t,depth:n.depth}),i=n.count;for(let e=0;e<i;e++)this.textures[e]=r.clone(),this.textures[e].isRenderTargetTexture=!0,this.textures[e].renderTarget=this;this._setTextureOptions(n),this.depthBuffer=n.depthBuffer,this.stencilBuffer=n.stencilBuffer,this.resolveColorBuffer=n.resolveColorBuffer,this.resolveDepthBuffer=n.resolveDepthBuffer,this.resolveStencilBuffer=n.resolveStencilBuffer,this.storeMultisampledColorBuffer=n.storeMultisampledColorBuffer,this.storeMultisampledDepthBuffer=n.storeMultisampledDepthBuffer,this.storeMultisampledStencilBuffer=n.storeMultisampledStencilBuffer,this._depthTexture=null,this.depthTexture=n.depthTexture,this.samples=n.samples,this.multiview=n.multiview,this.useArrayDepthTexture=n.useArrayDepthTexture}_setTextureOptions(e={}){let t={minFilter:pu,generateMipmaps:!1,flipY:!1,internalFormat:null};e.mapping!==void 0&&(t.mapping=e.mapping),e.wrapS!==void 0&&(t.wrapS=e.wrapS),e.wrapT!==void 0&&(t.wrapT=e.wrapT),e.wrapR!==void 0&&(t.wrapR=e.wrapR),e.magFilter!==void 0&&(t.magFilter=e.magFilter),e.minFilter!==void 0&&(t.minFilter=e.minFilter),e.format!==void 0&&(t.format=e.format),e.type!==void 0&&(t.type=e.type),e.anisotropy!==void 0&&(t.anisotropy=e.anisotropy),e.colorSpace!==void 0&&(t.colorSpace=e.colorSpace),e.flipY!==void 0&&(t.flipY=e.flipY),e.generateMipmaps!==void 0&&(t.generateMipmaps=e.generateMipmaps),e.internalFormat!==void 0&&(t.internalFormat=e.internalFormat);for(let e=0;e<this.textures.length;e++)this.textures[e].setValues(t)}get texture(){return this.textures[0]}set texture(e){this.textures[0]=e}set depthTexture(e){this._depthTexture!==null&&this._depthTexture.renderTarget===this&&(this._depthTexture.renderTarget=null),e!==null&&e.renderTarget===null&&(e.renderTarget=this),this._depthTexture=e}get depthTexture(){return this._depthTexture}setSize(e,t,n=1){if(this.width!==e||this.height!==t||this.depth!==n){this.width=e,this.height=t,this.depth=n;for(let r=0,i=this.textures.length;r<i;r++)this.textures[r].image.width=e,this.textures[r].image.height=t,this.textures[r].image.depth=n,this.textures[r].isData3DTexture!==!0&&(this.textures[r].isArrayTexture=this.textures[r].image.depth>1);this.dispose()}this.viewport.set(0,0,e,t),this.scissor.set(0,0,e,t)}clone(){return new this.constructor().copy(this)}copy(e){this.width=e.width,this.height=e.height,this.depth=e.depth,this.scissor.copy(e.scissor),this.scissorTest=e.scissorTest,this.viewport.copy(e.viewport),this.textures.length=0;for(let t=0,n=e.textures.length;t<n;t++){this.textures[t]=e.textures[t].clone(),this.textures[t].isRenderTargetTexture=!0,this.textures[t].renderTarget=this;let n=Object.assign({},e.textures[t].image);this.textures[t].source=new Lf(n)}if(this.depthBuffer=e.depthBuffer,this.stencilBuffer=e.stencilBuffer,this.resolveColorBuffer=e.resolveColorBuffer,this.resolveDepthBuffer=e.resolveDepthBuffer,this.resolveStencilBuffer=e.resolveStencilBuffer,this.storeMultisampledColorBuffer=e.storeMultisampledColorBuffer,this.storeMultisampledDepthBuffer=e.storeMultisampledDepthBuffer,this.storeMultisampledStencilBuffer=e.storeMultisampledStencilBuffer,e.depthTexture!==null){if(e.depthTexture.renderTarget===e){let t=e.depthTexture.clone();t.renderTarget=null,this.depthTexture=t}else this.depthTexture=e.depthTexture}return this.samples=e.samples,this.multiview=e.multiview,this.useArrayDepthTexture=e.useArrayDepthTexture,this}dispose(){this.dispatchEvent({type:`dispose`})}},Wf=class extends Uf{constructor(e=1,t=1,n={}){super(e,t,n),this.isWebGLRenderTarget=!0}},Gf=class extends Vf{constructor(e=null,t=1,n=1,r=1){super(null),this.isDataArrayTexture=!0,this.image={data:e,width:t,height:n,depth:r},this.magFilter=uu,this.minFilter=uu,this.wrapR=cu,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.layerUpdates=new Set}copy(e){return super.copy(e),this.wrapR=e.wrapR,this}addLayerUpdate(e){this.layerUpdates.add(e)}clearLayerUpdates(){this.layerUpdates.clear()}},Kf=class extends Vf{constructor(e=null,t=1,n=1,r=1){super(null),this.isData3DTexture=!0,this.image={data:e,width:t,height:n,depth:r},this.magFilter=uu,this.minFilter=uu,this.wrapR=cu,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}copy(e){return super.copy(e),this.wrapR=e.wrapR,this}},qf=class e{static{e.prototype.isMatrix4=!0}constructor(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],e!==void 0&&this.set(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h)}set(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){let g=this.elements;return g[0]=e,g[4]=t,g[8]=n,g[12]=r,g[1]=i,g[5]=a,g[9]=o,g[13]=s,g[2]=c,g[6]=l,g[10]=u,g[14]=d,g[3]=f,g[7]=p,g[11]=m,g[15]=h,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return new e().fromArray(this.elements)}copy(e){let t=this.elements,n=e.elements;return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],t[9]=n[9],t[10]=n[10],t[11]=n[11],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15],this}copyPosition(e){let t=this.elements,n=e.elements;return t[12]=n[12],t[13]=n[13],t[14]=n[14],this}setFromMatrix3(e){let t=e.elements;return this.set(t[0],t[3],t[6],0,t[1],t[4],t[7],0,t[2],t[5],t[8],0,0,0,0,1),this}extractBasis(e,t,n){return this.determinantAffine()===0?(e.set(1,0,0),t.set(0,1,0),n.set(0,0,1),this):(e.setFromMatrixColumn(this,0),t.setFromMatrixColumn(this,1),n.setFromMatrixColumn(this,2),this)}makeBasis(e,t,n){return this.set(e.x,t.x,n.x,0,e.y,t.y,n.y,0,e.z,t.z,n.z,0,0,0,0,1),this}extractRotation(e){if(e.determinantAffine()===0)return this.identity();let t=this.elements,n=e.elements,r=1/Jf.setFromMatrixColumn(e,0).length(),i=1/Jf.setFromMatrixColumn(e,1).length(),a=1/Jf.setFromMatrixColumn(e,2).length();return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=0,t[4]=n[4]*i,t[5]=n[5]*i,t[6]=n[6]*i,t[7]=0,t[8]=n[8]*a,t[9]=n[9]*a,t[10]=n[10]*a,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}makeRotationFromEuler(e){let t=this.elements,n=e.x,r=e.y,i=e.z,a=Math.cos(n),o=Math.sin(n),s=Math.cos(r),c=Math.sin(r),l=Math.cos(i),u=Math.sin(i);if(e.order===`XYZ`){let e=a*l,n=a*u,r=o*l,i=o*u;t[0]=s*l,t[4]=-s*u,t[8]=c,t[1]=n+r*c,t[5]=e-i*c,t[9]=-o*s,t[2]=i-e*c,t[6]=r+n*c,t[10]=a*s}else if(e.order===`YXZ`){let e=s*l,n=s*u,r=c*l,i=c*u;t[0]=e+i*o,t[4]=r*o-n,t[8]=a*c,t[1]=a*u,t[5]=a*l,t[9]=-o,t[2]=n*o-r,t[6]=i+e*o,t[10]=a*s}else if(e.order===`ZXY`){let e=s*l,n=s*u,r=c*l,i=c*u;t[0]=e-i*o,t[4]=-a*u,t[8]=r+n*o,t[1]=n+r*o,t[5]=a*l,t[9]=i-e*o,t[2]=-a*c,t[6]=o,t[10]=a*s}else if(e.order===`ZYX`){let e=a*l,n=a*u,r=o*l,i=o*u;t[0]=s*l,t[4]=r*c-n,t[8]=e*c+i,t[1]=s*u,t[5]=i*c+e,t[9]=n*c-r,t[2]=-c,t[6]=o*s,t[10]=a*s}else if(e.order===`YZX`){let e=a*s,n=a*c,r=o*s,i=o*c;t[0]=s*l,t[4]=i-e*u,t[8]=r*u+n,t[1]=u,t[5]=a*l,t[9]=-o*l,t[2]=-c*l,t[6]=n*u+r,t[10]=e-i*u}else if(e.order===`XZY`){let e=a*s,n=a*c,r=o*s,i=o*c;t[0]=s*l,t[4]=-u,t[8]=c*l,t[1]=e*u+i,t[5]=a*l,t[9]=n*u-r,t[2]=r*u-n,t[6]=o*l,t[10]=i*u+e}return t[3]=0,t[7]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}makeRotationFromQuaternion(e){return this.compose(Xf,e,Zf)}lookAt(e,t,n){let r=this.elements;return ep.subVectors(e,t),ep.lengthSq()===0&&(ep.z=1),ep.normalize(),Qf.crossVectors(n,ep),Qf.lengthSq()===0&&(Math.abs(n.z)===1?ep.x+=1e-4:ep.z+=1e-4,ep.normalize(),Qf.crossVectors(n,ep)),Qf.normalize(),$f.crossVectors(ep,Qf),r[0]=Qf.x,r[4]=$f.x,r[8]=ep.x,r[1]=Qf.y,r[5]=$f.y,r[9]=ep.y,r[2]=Qf.z,r[6]=$f.z,r[10]=ep.z,this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){let n=e.elements,r=t.elements,i=this.elements,a=n[0],o=n[4],s=n[8],c=n[12],l=n[1],u=n[5],d=n[9],f=n[13],p=n[2],m=n[6],h=n[10],g=n[14],_=n[3],v=n[7],y=n[11],b=n[15],x=r[0],S=r[4],C=r[8],w=r[12],T=r[1],E=r[5],D=r[9],O=r[13],k=r[2],A=r[6],j=r[10],M=r[14],N=r[3],P=r[7],F=r[11],I=r[15];return i[0]=a*x+o*T+s*k+c*N,i[4]=a*S+o*E+s*A+c*P,i[8]=a*C+o*D+s*j+c*F,i[12]=a*w+o*O+s*M+c*I,i[1]=l*x+u*T+d*k+f*N,i[5]=l*S+u*E+d*A+f*P,i[9]=l*C+u*D+d*j+f*F,i[13]=l*w+u*O+d*M+f*I,i[2]=p*x+m*T+h*k+g*N,i[6]=p*S+m*E+h*A+g*P,i[10]=p*C+m*D+h*j+g*F,i[14]=p*w+m*O+h*M+g*I,i[3]=_*x+v*T+y*k+b*N,i[7]=_*S+v*E+y*A+b*P,i[11]=_*C+v*D+y*j+b*F,i[15]=_*w+v*O+y*M+b*I,this}multiplyScalar(e){let t=this.elements;return t[0]*=e,t[4]*=e,t[8]*=e,t[12]*=e,t[1]*=e,t[5]*=e,t[9]*=e,t[13]*=e,t[2]*=e,t[6]*=e,t[10]*=e,t[14]*=e,t[3]*=e,t[7]*=e,t[11]*=e,t[15]*=e,this}determinant(){let e=this.elements,t=e[0],n=e[4],r=e[8],i=e[12],a=e[1],o=e[5],s=e[9],c=e[13],l=e[2],u=e[6],d=e[10],f=e[14],p=e[3],m=e[7],h=e[11],g=e[15],_=s*f-c*d,v=o*f-c*u,y=o*d-s*u,b=a*f-c*l,x=a*d-s*l,S=a*u-o*l;return t*(m*_-h*v+g*y)-n*(p*_-h*b+g*x)+r*(p*v-m*b+g*S)-i*(p*y-m*x+h*S)}determinantAffine(){let e=this.elements,t=e[0],n=e[4],r=e[8],i=e[1],a=e[5],o=e[9],s=e[2],c=e[6],l=e[10];return t*(a*l-o*c)-n*(i*l-o*s)+r*(i*c-a*s)}transpose(){let e=this.elements,t;return t=e[1],e[1]=e[4],e[4]=t,t=e[2],e[2]=e[8],e[8]=t,t=e[6],e[6]=e[9],e[9]=t,t=e[3],e[3]=e[12],e[12]=t,t=e[7],e[7]=e[13],e[13]=t,t=e[11],e[11]=e[14],e[14]=t,this}setPosition(e,t,n){let r=this.elements;return e.isVector3?(r[12]=e.x,r[13]=e.y,r[14]=e.z):(r[12]=e,r[13]=t,r[14]=n),this}invert(){let e=this.elements,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8],u=e[9],d=e[10],f=e[11],p=e[12],m=e[13],h=e[14],g=e[15],_=t*o-n*a,v=t*s-r*a,y=t*c-i*a,b=n*s-r*o,x=n*c-i*o,S=r*c-i*s,C=l*m-u*p,w=l*h-d*p,T=l*g-f*p,E=u*h-d*m,D=u*g-f*m,O=d*g-f*h,k=_*O-v*D+y*E+b*T-x*w+S*C;if(k===0)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);let A=1/k;return e[0]=(o*O-s*D+c*E)*A,e[1]=(r*D-n*O-i*E)*A,e[2]=(m*S-h*x+g*b)*A,e[3]=(d*x-u*S-f*b)*A,e[4]=(s*T-a*O-c*w)*A,e[5]=(t*O-r*T+i*w)*A,e[6]=(h*y-p*S-g*v)*A,e[7]=(l*S-d*y+f*v)*A,e[8]=(a*D-o*T+c*C)*A,e[9]=(n*T-t*D-i*C)*A,e[10]=(p*x-m*y+g*_)*A,e[11]=(u*y-l*x-f*_)*A,e[12]=(o*w-a*E-s*C)*A,e[13]=(t*E-n*w+r*C)*A,e[14]=(m*v-p*b-h*_)*A,e[15]=(l*b-u*v+d*_)*A,this}scale(e){let t=this.elements,n=e.x,r=e.y,i=e.z;return t[0]*=n,t[4]*=r,t[8]*=i,t[1]*=n,t[5]*=r,t[9]*=i,t[2]*=n,t[6]*=r,t[10]*=i,t[3]*=n,t[7]*=r,t[11]*=i,this}getMaxScaleOnAxis(){let e=this.elements,t=e[0]*e[0]+e[1]*e[1]+e[2]*e[2],n=e[4]*e[4]+e[5]*e[5]+e[6]*e[6],r=e[8]*e[8]+e[9]*e[9]+e[10]*e[10];return Math.sqrt(Math.max(t,n,r))}makeTranslation(e,t,n){return e.isVector3?this.set(1,0,0,e.x,0,1,0,e.y,0,0,1,e.z,0,0,0,1):this.set(1,0,0,e,0,1,0,t,0,0,1,n,0,0,0,1),this}makeRotationX(e){let t=Math.cos(e),n=Math.sin(e);return this.set(1,0,0,0,0,t,-n,0,0,n,t,0,0,0,0,1),this}makeRotationY(e){let t=Math.cos(e),n=Math.sin(e);return this.set(t,0,n,0,0,1,0,0,-n,0,t,0,0,0,0,1),this}makeRotationZ(e){let t=Math.cos(e),n=Math.sin(e);return this.set(t,-n,0,0,n,t,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(e,t){let n=Math.cos(t),r=Math.sin(t),i=1-n,a=e.x,o=e.y,s=e.z,c=i*a,l=i*o;return this.set(c*a+n,c*o-r*s,c*s+r*o,0,c*o+r*s,l*o+n,l*s-r*a,0,c*s-r*o,l*s+r*a,i*s*s+n,0,0,0,0,1),this}makeScale(e,t,n){return this.set(e,0,0,0,0,t,0,0,0,0,n,0,0,0,0,1),this}makeShear(e,t,n,r,i,a){return this.set(1,n,i,0,e,1,a,0,t,r,1,0,0,0,0,1),this}compose(e,t,n){let r=this.elements,i=t._x,a=t._y,o=t._z,s=t._w,c=i+i,l=a+a,u=o+o,d=i*c,f=i*l,p=i*u,m=a*l,h=a*u,g=o*u,_=s*c,v=s*l,y=s*u,b=n.x,x=n.y,S=n.z;return r[0]=(1-(m+g))*b,r[1]=(f+y)*b,r[2]=(p-v)*b,r[3]=0,r[4]=(f-y)*x,r[5]=(1-(d+g))*x,r[6]=(h+_)*x,r[7]=0,r[8]=(p+v)*S,r[9]=(h-_)*S,r[10]=(1-(d+m))*S,r[11]=0,r[12]=e.x,r[13]=e.y,r[14]=e.z,r[15]=1,this}decompose(e,t,n){let r=this.elements;e.x=r[12],e.y=r[13],e.z=r[14];let i=this.determinantAffine();if(i===0)return n.set(1,1,1),t.identity(),this;let a=Jf.set(r[0],r[1],r[2]).length(),o=Jf.set(r[4],r[5],r[6]).length(),s=Jf.set(r[8],r[9],r[10]).length();i<0&&(a=-a),Yf.copy(this);let c=1/a,l=1/o,u=1/s;return Yf.elements[0]*=c,Yf.elements[1]*=c,Yf.elements[2]*=c,Yf.elements[4]*=l,Yf.elements[5]*=l,Yf.elements[6]*=l,Yf.elements[8]*=u,Yf.elements[9]*=u,Yf.elements[10]*=u,t.setFromRotationMatrix(Yf),n.x=a,n.y=o,n.z=s,this}makePerspective(e,t,n,r,i,a,o=Fd,s=!1){let c=this.elements,l=2*i/(t-e),u=2*i/(n-r),d=(t+e)/(t-e),f=(n+r)/(n-r),p,m;if(s)p=i/(a-i),m=a*i/(a-i);else if(o===2e3)p=-(a+i)/(a-i),m=-2*a*i/(a-i);else if(o===2001)p=-a/(a-i),m=-a*i/(a-i);else throw Error(`THREE.Matrix4.makePerspective(): Invalid coordinate system: `+o);return c[0]=l,c[4]=0,c[8]=d,c[12]=0,c[1]=0,c[5]=u,c[9]=f,c[13]=0,c[2]=0,c[6]=0,c[10]=p,c[14]=m,c[3]=0,c[7]=0,c[11]=-1,c[15]=0,this}makeOrthographic(e,t,n,r,i,a,o=Fd,s=!1){let c=this.elements,l=2/(t-e),u=2/(n-r),d=-(t+e)/(t-e),f=-(n+r)/(n-r),p,m;if(s)p=1/(a-i),m=a/(a-i);else if(o===2e3)p=-2/(a-i),m=-(a+i)/(a-i);else if(o===2001)p=-1/(a-i),m=-i/(a-i);else throw Error(`THREE.Matrix4.makeOrthographic(): Invalid coordinate system: `+o);return c[0]=l,c[4]=0,c[8]=0,c[12]=d,c[1]=0,c[5]=u,c[9]=0,c[13]=f,c[2]=0,c[6]=0,c[10]=p,c[14]=m,c[3]=0,c[7]=0,c[11]=0,c[15]=1,this}equals(e){let t=this.elements,n=e.elements;for(let e=0;e<16;e++)if(t[e]!==n[e])return!1;return!0}fromArray(e,t=0){for(let n=0;n<16;n++)this.elements[n]=e[n+t];return this}toArray(e=[],t=0){let n=this.elements;return e[t]=n[0],e[t+1]=n[1],e[t+2]=n[2],e[t+3]=n[3],e[t+4]=n[4],e[t+5]=n[5],e[t+6]=n[6],e[t+7]=n[7],e[t+8]=n[8],e[t+9]=n[9],e[t+10]=n[10],e[t+11]=n[11],e[t+12]=n[12],e[t+13]=n[13],e[t+14]=n[14],e[t+15]=n[15],e}},Jf=new Z,Yf=new qf,Xf=new Z(0,0,0),Zf=new Z(1,1,1),Qf=new Z,$f=new Z,ep=new Z,tp=new qf,np=new Cf,rp=class e{constructor(t=0,n=0,r=0,i=e.DEFAULT_ORDER){this.isEuler=!0,this._x=t,this._y=n,this._z=r,this._order=i}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get order(){return this._order}set order(e){this._order=e,this._onChangeCallback()}set(e,t,n,r=this._order){return this._x=e,this._y=t,this._z=n,this._order=r,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(e){return this._x=e._x,this._y=e._y,this._z=e._z,this._order=e._order,this._onChangeCallback(),this}setFromRotationMatrix(e,t=this._order,n=!0){let r=e.elements,i=r[0],a=r[4],o=r[8],s=r[1],c=r[5],l=r[9],u=r[2],d=r[6],f=r[10];switch(t){case`XYZ`:this._y=Math.asin(ef(o,-1,1)),Math.abs(o)<.9999999?(this._x=Math.atan2(-l,f),this._z=Math.atan2(-a,i)):(this._x=Math.atan2(d,c),this._z=0);break;case`YXZ`:this._x=Math.asin(-ef(l,-1,1)),Math.abs(l)<.9999999?(this._y=Math.atan2(o,f),this._z=Math.atan2(s,c)):(this._y=Math.atan2(-u,i),this._z=0);break;case`ZXY`:this._x=Math.asin(ef(d,-1,1)),Math.abs(d)<.9999999?(this._y=Math.atan2(-u,f),this._z=Math.atan2(-a,c)):(this._y=0,this._z=Math.atan2(s,i));break;case`ZYX`:this._y=Math.asin(-ef(u,-1,1)),Math.abs(u)<.9999999?(this._x=Math.atan2(d,f),this._z=Math.atan2(s,i)):(this._x=0,this._z=Math.atan2(-a,c));break;case`YZX`:this._z=Math.asin(ef(s,-1,1)),Math.abs(s)<.9999999?(this._x=Math.atan2(-l,c),this._y=Math.atan2(-u,i)):(this._x=0,this._y=Math.atan2(o,f));break;case`XZY`:this._z=Math.asin(-ef(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(d,c),this._y=Math.atan2(o,i)):(this._x=Math.atan2(-l,f),this._y=0);break;default:Ud(`Euler: .setFromRotationMatrix() encountered an unknown order: `+t)}return this._order=t,n===!0&&this._onChangeCallback(),this}setFromQuaternion(e,t,n){return tp.makeRotationFromQuaternion(e),this.setFromRotationMatrix(tp,t,n)}setFromVector3(e,t=this._order){return this.set(e.x,e.y,e.z,t)}reorder(e){return np.setFromEuler(this),this.setFromQuaternion(np,e)}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._order===this._order}fromArray(e){return this._x=e[0],this._y=e[1],this._z=e[2],e[3]!==void 0&&(this._order=e[3]),this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._order,e}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}};rp.DEFAULT_ORDER=`XYZ`;var ip=class{constructor(){this.mask=1}set(e){this.mask=(1<<e|0)>>>0}enable(e){this.mask|=1<<e|0}enableAll(){this.mask=-1}toggle(e){this.mask^=1<<e|0}disable(e){this.mask&=~(1<<e|0)}disableAll(){this.mask=0}test(e){return(this.mask&e.mask)!==0}isEnabled(e){return!!(this.mask&(1<<e|0))}},ap=0,op=new Z,sp=new Cf,cp=new qf,lp=new Z,up=new Z,dp=new Z,fp=new Cf,pp=new Z(1,0,0),mp=new Z(0,1,0),hp=new Z(0,0,1),gp={type:`added`},_p={type:`removed`},vp={type:`childadded`,child:null},yp={type:`childremoved`,child:null},bp=class e extends Jd{constructor(){super(),this.isObject3D=!0,Object.defineProperty(this,"id",{value:ap++}),this.uuid=$d(),this.name=``,this.type=`Object3D`,this.parent=null,this.children=[],this.up=e.DEFAULT_UP.clone();let t=new Z,n=new rp,r=new Cf,i=new Z(1,1,1);function a(){r.setFromEuler(n,!1)}function o(){n.setFromQuaternion(r,void 0,!1)}n._onChange(a),r._onChange(o),Object.defineProperties(this,{position:{configurable:!0,enumerable:!0,value:t},rotation:{configurable:!0,enumerable:!0,value:n},quaternion:{configurable:!0,enumerable:!0,value:r},scale:{configurable:!0,enumerable:!0,value:i},modelViewMatrix:{value:new qf},normalMatrix:{value:new Ef}}),this.matrix=new qf,this.matrixWorld=new qf,this.matrixAutoUpdate=e.DEFAULT_MATRIX_AUTO_UPDATE,this.matrixWorldAutoUpdate=e.DEFAULT_MATRIX_WORLD_AUTO_UPDATE,this.matrixWorldNeedsUpdate=!1,this.layers=new ip,this.visible=!0,this.castShadow=!1,this.receiveShadow=!1,this.frustumCulled=!0,this.renderOrder=0,this.animations=[],this.customDepthMaterial=void 0,this.customDistanceMaterial=void 0,this.static=!1,this.userData={},this.pivot=null}onBeforeShadow(){}onAfterShadow(){}onBeforeRender(){}onAfterRender(){}applyMatrix4(e){this.matrixAutoUpdate&&this.updateMatrix(),this.matrix.premultiply(e),this.matrix.decompose(this.position,this.quaternion,this.scale)}applyQuaternion(e){return this.quaternion.premultiply(e),this}setRotationFromAxisAngle(e,t){this.quaternion.setFromAxisAngle(e,t)}setRotationFromEuler(e){this.quaternion.setFromEuler(e,!0)}setRotationFromMatrix(e){this.quaternion.setFromRotationMatrix(e)}setRotationFromQuaternion(e){this.quaternion.copy(e)}rotateOnAxis(e,t){return sp.setFromAxisAngle(e,t),this.quaternion.multiply(sp),this}rotateOnWorldAxis(e,t){return sp.setFromAxisAngle(e,t),this.quaternion.premultiply(sp),this}rotateX(e){return this.rotateOnAxis(pp,e)}rotateY(e){return this.rotateOnAxis(mp,e)}rotateZ(e){return this.rotateOnAxis(hp,e)}translateOnAxis(e,t){return op.copy(e).applyQuaternion(this.quaternion),this.position.add(op.multiplyScalar(t)),this}translateX(e){return this.translateOnAxis(pp,e)}translateY(e){return this.translateOnAxis(mp,e)}translateZ(e){return this.translateOnAxis(hp,e)}localToWorld(e){return this.updateWorldMatrix(!0,!1),e.applyMatrix4(this.matrixWorld)}worldToLocal(e){return this.updateWorldMatrix(!0,!1),e.applyMatrix4(cp.copy(this.matrixWorld).invert())}lookAt(e,t,n){e.isVector3?lp.copy(e):lp.set(e,t,n);let r=this.parent;this.updateWorldMatrix(!0,!1),up.setFromMatrixPosition(this.matrixWorld),this.isCamera||this.isLight?cp.lookAt(up,lp,this.up):cp.lookAt(lp,up,this.up),this.quaternion.setFromRotationMatrix(cp),r&&(cp.extractRotation(r.matrixWorld),sp.setFromRotationMatrix(cp),this.quaternion.premultiply(sp.invert()))}add(e){if(arguments.length>1){for(let e=0;e<arguments.length;e++)this.add(arguments[e]);return this}return e===this?(Wd(`Object3D.add: object can't be added as a child of itself.`,e),this):(e&&e.isObject3D?(e.removeFromParent(),e.parent=this,this.children.push(e),e.dispatchEvent(gp),vp.child=e,this.dispatchEvent(vp),vp.child=null):Wd(`Object3D.add: object not an instance of THREE.Object3D.`,e),this)}remove(e){if(arguments.length>1){for(let e=0;e<arguments.length;e++)this.remove(arguments[e]);return this}let t=this.children.indexOf(e);return t!==-1&&(e.parent=null,this.children.splice(t,1),e.dispatchEvent(_p),yp.child=e,this.dispatchEvent(yp),yp.child=null),this}removeFromParent(){let e=this.parent;return e!==null&&e.remove(this),this}clear(){return this.remove(...this.children)}attach(e){return this.updateWorldMatrix(!0,!1),cp.copy(this.matrixWorld).invert(),e.parent!==null&&(e.parent.updateWorldMatrix(!0,!1),cp.multiply(e.parent.matrixWorld)),e.applyMatrix4(cp),e.removeFromParent(),e.parent=this,this.children.push(e),e.updateWorldMatrix(!1,!0),e.dispatchEvent(gp),vp.child=e,this.dispatchEvent(vp),vp.child=null,this}getObjectById(e){return this.getObjectByProperty(`id`,e)}getObjectByName(e){return this.getObjectByProperty(`name`,e)}getObjectByProperty(e,t){if(this[e]===t)return this;for(let n=0,r=this.children.length;n<r;n++){let r=this.children[n].getObjectByProperty(e,t);if(r!==void 0)return r}}getObjectsByProperty(e,t,n=[]){this[e]===t&&n.push(this);let r=this.children;for(let i=0,a=r.length;i<a;i++)r[i].getObjectsByProperty(e,t,n);return n}getWorldPosition(e){return this.updateWorldMatrix(!0,!1),e.setFromMatrixPosition(this.matrixWorld)}getWorldQuaternion(e){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(up,e,dp),e}getWorldScale(e){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(up,fp,e),e}getWorldDirection(e){this.updateWorldMatrix(!0,!1);let t=this.matrixWorld.elements;return e.set(t[8],t[9],t[10]).normalize()}raycast(){}intersectsFrustum(){}traverse(e){e(this);let t=this.children;for(let n=0,r=t.length;n<r;n++)t[n].traverse(e)}traverseVisible(e){if(this.visible===!1)return;e(this);let t=this.children;for(let n=0,r=t.length;n<r;n++)t[n].traverseVisible(e)}traverseAncestors(e){let t=this.parent;t!==null&&(e(t),t.traverseAncestors(e))}updateMatrix(){this.matrix.compose(this.position,this.quaternion,this.scale);let e=this.pivot;if(e!==null){let t=e.x,n=e.y,r=e.z,i=this.matrix.elements;i[12]+=t-i[0]*t-i[4]*n-i[8]*r,i[13]+=n-i[1]*t-i[5]*n-i[9]*r,i[14]+=r-i[2]*t-i[6]*n-i[10]*r}this.matrixWorldNeedsUpdate=!0}updateMatrixWorld(e){this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||e)&&(this.matrixWorldAutoUpdate===!0&&(this.parent===null?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix)),this.matrixWorldNeedsUpdate=!1,e=!0);let t=this.children;for(let n=0,r=t.length;n<r;n++)t[n].updateMatrixWorld(e)}updateWorldMatrix(e,t,n=!1){let r=this.parent;if(e===!0&&r!==null&&r.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||n)&&(this.matrixWorldAutoUpdate===!0&&(this.parent===null?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix)),this.matrixWorldNeedsUpdate=!1,n=!0),t===!0){let e=this.children;for(let t=0,r=e.length;t<r;t++)e[t].updateWorldMatrix(!1,!0,n)}}toJSON(e){let t=e===void 0||typeof e==`string`,n={};t&&(e={geometries:{},materials:{},textures:{},images:{},shapes:{},skeletons:{},animations:{},nodes:{}},n.metadata={version:4.7,type:`Object`,generator:`Object3D.toJSON`});let r={};r.uuid=this.uuid,r.type=this.type,r.name=this.name,r.castShadow=this.castShadow,r.receiveShadow=this.receiveShadow,r.visible=this.visible,r.frustumCulled=this.frustumCulled,r.renderOrder=this.renderOrder,r.static=this.static,r.matrixAutoUpdate=this.matrixAutoUpdate,Object.keys(this.userData).length>0&&(r.userData=this.userData),r.layers=this.layers.mask,r.matrix=this.matrix.toArray(),r.up=this.up.toArray(),this.pivot!==null&&(r.pivot=this.pivot.toArray()),this.morphTargetDictionary!==void 0&&(r.morphTargetDictionary=Object.assign({},this.morphTargetDictionary)),this.morphTargetInfluences!==void 0&&(r.morphTargetInfluences=this.morphTargetInfluences.slice()),this.isInstancedMesh&&(r.type=`InstancedMesh`,r.count=this.count,r.instanceMatrix=this.instanceMatrix.toJSON(),this.instanceColor!==null&&(r.instanceColor=this.instanceColor.toJSON())),this.isBatchedMesh&&(r.type=`BatchedMesh`,r.perObjectFrustumCulled=this.perObjectFrustumCulled,r.sortObjects=this.sortObjects,r.drawRanges=this._drawRanges,r.reservedRanges=this._reservedRanges,r.geometryInfo=this._geometryInfo.map(e=>({...e,boundingBox:e.boundingBox?e.boundingBox.toJSON():void 0,boundingSphere:e.boundingSphere?e.boundingSphere.toJSON():void 0})),r.instanceInfo=this._instanceInfo.map(e=>({...e})),r.availableInstanceIds=this._availableInstanceIds.slice(),r.availableGeometryIds=this._availableGeometryIds.slice(),r.nextIndexStart=this._nextIndexStart,r.nextVertexStart=this._nextVertexStart,r.geometryCount=this._geometryCount,r.maxInstanceCount=this._maxInstanceCount,r.maxVertexCount=this._maxVertexCount,r.maxIndexCount=this._maxIndexCount,r.geometryInitialized=this._geometryInitialized,r.matricesTexture=this._matricesTexture.toJSON(e),r.indirectTexture=this._indirectTexture.toJSON(e),this._colorsTexture!==null&&(r.colorsTexture=this._colorsTexture.toJSON(e)),this.boundingSphere!==null&&(r.boundingSphere=this.boundingSphere.toJSON()),this.boundingBox!==null&&(r.boundingBox=this.boundingBox.toJSON()));function i(t,n){return t[n.uuid]===void 0&&(t[n.uuid]=n.toJSON(e)),n.uuid}if(this.isScene)this.background&&(this.background.isColor?r.background=this.background.toJSON():this.background.isTexture&&(r.background=this.background.toJSON(e).uuid)),this.environment&&this.environment.isTexture&&this.environment.isRenderTargetTexture!==!0&&(r.environment=this.environment.toJSON(e).uuid);else if(this.isMesh||this.isLine||this.isPoints){r.geometry=i(e.geometries,this.geometry);let t=this.geometry.parameters;if(t!==void 0&&t.shapes!==void 0){let n=t.shapes;if(Array.isArray(n))for(let t=0,r=n.length;t<r;t++){let r=n[t];i(e.shapes,r)}else i(e.shapes,n)}}if(this.isSkinnedMesh&&(r.bindMode=this.bindMode,r.bindMatrix=this.bindMatrix.toArray(),this.skeleton!==void 0&&(i(e.skeletons,this.skeleton),r.skeleton=this.skeleton.uuid)),this.material!==void 0){if(Array.isArray(this.material)){let t=[];for(let n=0,r=this.material.length;n<r;n++)t.push(i(e.materials,this.material[n]));r.material=t}else r.material=i(e.materials,this.material)}if(this.children.length>0){r.children=[];for(let t=0;t<this.children.length;t++)r.children.push(this.children[t].toJSON(e).object)}if(this.animations.length>0){r.animations=[];for(let t=0;t<this.animations.length;t++){let n=this.animations[t];r.animations.push(i(e.animations,n))}}if(t){let t=a(e.geometries),r=a(e.materials),i=a(e.textures),o=a(e.images),s=a(e.shapes),c=a(e.skeletons),l=a(e.animations),u=a(e.nodes);t.length>0&&(n.geometries=t),r.length>0&&(n.materials=r),i.length>0&&(n.textures=i),o.length>0&&(n.images=o),s.length>0&&(n.shapes=s),c.length>0&&(n.skeletons=c),l.length>0&&(n.animations=l),u.length>0&&(n.nodes=u)}return n.object=r,n;function a(e){let t=[];for(let n in e){let r=e[n];delete r.metadata,t.push(r)}return t}}clone(e){return new this.constructor().copy(this,e)}copy(e,t=!0){if(this.name=e.name,this.up.copy(e.up),this.position.copy(e.position),this.rotation.order=e.rotation.order,this.quaternion.copy(e.quaternion),this.scale.copy(e.scale),this.pivot=e.pivot===null?null:e.pivot.clone(),this.matrix.copy(e.matrix),this.matrixWorld.copy(e.matrixWorld),this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrixWorldAutoUpdate=e.matrixWorldAutoUpdate,this.matrixWorldNeedsUpdate=e.matrixWorldNeedsUpdate,this.layers.mask=e.layers.mask,this.visible=e.visible,this.castShadow=e.castShadow,this.receiveShadow=e.receiveShadow,this.frustumCulled=e.frustumCulled,this.renderOrder=e.renderOrder,this.static=e.static,this.animations=e.animations.slice(),this.userData=JSON.parse(JSON.stringify(e.userData)),t===!0)for(let t=0;t<e.children.length;t++){let n=e.children[t];this.add(n.clone())}return this}dispose(){this.dispatchEvent({type:`dispose`})}};bp.DEFAULT_UP=new Z(0,1,0),bp.DEFAULT_MATRIX_AUTO_UPDATE=!0,bp.DEFAULT_MATRIX_WORLD_AUTO_UPDATE=!0;var xp=class extends bp{constructor(){super(),this.isGroup=!0,this.type=`Group`}},Sp={type:`move`},Cp=class{constructor(){this._targetRay=null,this._grip=null,this._hand=null}getHandSpace(){return this._hand===null&&(this._hand=new xp,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand}getTargetRaySpace(){return this._targetRay===null&&(this._targetRay=new xp,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new Z,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new Z),this._targetRay}getGripSpace(){return this._grip===null&&(this._grip=new xp,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new Z,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new Z,this._grip.eventsEnabled=!1),this._grip}dispatchEvent(e){return this._targetRay!==null&&this._targetRay.dispatchEvent(e),this._grip!==null&&this._grip.dispatchEvent(e),this._hand!==null&&this._hand.dispatchEvent(e),this}connect(e){if(e&&e.hand){let t=this._hand;if(t)for(let n of e.hand.values())this._getHandJoint(t,n)}return this.dispatchEvent({type:`connected`,data:e}),this}disconnect(e){return this.dispatchEvent({type:`disconnected`,data:e}),this._targetRay!==null&&(this._targetRay.visible=!1),this._grip!==null&&(this._grip.visible=!1),this._hand!==null&&(this._hand.visible=!1),this}update(e,t,n){let r=null,i=null,a=null,o=this._targetRay,s=this._grip,c=this._hand;if(e&&t.session.visibilityState!==`visible-blurred`){if(c&&e.hand){a=!0;for(let r of e.hand.values()){let e=t.getJointPose(r,n),i=this._getHandJoint(c,r);e!==null&&(i.matrix.fromArray(e.transform.matrix),i.matrix.decompose(i.position,i.rotation,i.scale),i.matrixWorldNeedsUpdate=!0,i.jointRadius=e.radius),i.visible=e!==null}let r=c.joints[`index-finger-tip`],i=c.joints[`thumb-tip`],o=r.position.distanceTo(i.position);c.inputState.pinching&&o>.025?(c.inputState.pinching=!1,this.dispatchEvent({type:`pinchend`,handedness:e.handedness,target:this})):!c.inputState.pinching&&o<=.015&&(c.inputState.pinching=!0,this.dispatchEvent({type:`pinchstart`,handedness:e.handedness,target:this}))}else s!==null&&e.gripSpace&&(i=t.getPose(e.gripSpace,n),i!==null&&(s.matrix.fromArray(i.transform.matrix),s.matrix.decompose(s.position,s.rotation,s.scale),s.matrixWorldNeedsUpdate=!0,i.linearVelocity?(s.hasLinearVelocity=!0,s.linearVelocity.copy(i.linearVelocity)):s.hasLinearVelocity=!1,i.angularVelocity?(s.hasAngularVelocity=!0,s.angularVelocity.copy(i.angularVelocity)):s.hasAngularVelocity=!1,s.eventsEnabled&&s.dispatchEvent({type:`gripUpdated`,data:e,target:this})));o!==null&&(r=t.getPose(e.targetRaySpace,n),r===null&&i!==null&&(r=i),r!==null&&(o.matrix.fromArray(r.transform.matrix),o.matrix.decompose(o.position,o.rotation,o.scale),o.matrixWorldNeedsUpdate=!0,r.linearVelocity?(o.hasLinearVelocity=!0,o.linearVelocity.copy(r.linearVelocity)):o.hasLinearVelocity=!1,r.angularVelocity?(o.hasAngularVelocity=!0,o.angularVelocity.copy(r.angularVelocity)):o.hasAngularVelocity=!1,this.dispatchEvent(Sp)))}return o!==null&&(o.visible=r!==null),s!==null&&(s.visible=i!==null),c!==null&&(c.visible=a!==null),this}_getHandJoint(e,t){if(e.joints[t.jointName]===void 0){let n=new xp;n.matrixAutoUpdate=!1,n.visible=!1,e.joints[t.jointName]=n,e.add(n)}return e.joints[t.jointName]}},wp={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},Tp={h:0,s:0,l:0},Ep={h:0,s:0,l:0};function Dp(e,t,n){return n<0&&(n+=1),n>1&&--n,n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*6*(2/3-n):e}var Q=class{constructor(e,t,n){return this.isColor=!0,this.r=1,this.g=1,this.b=1,this.set(e,t,n)}set(e,t,n){if(t===void 0&&n===void 0){let t=e;t&&t.isColor?this.copy(t):typeof t==`number`?this.setHex(t):typeof t==`string`&&this.setStyle(t)}else this.setRGB(e,t,n);return this}setScalar(e){return this.r=e,this.g=e,this.b=e,this}setHex(e,t=kd){return e=Math.floor(e),this.r=(e>>16&255)/255,this.g=(e>>8&255)/255,this.b=(e&255)/255,jf.colorSpaceToWorking(this,t),this}setRGB(e,t,n,r=jf.workingColorSpace){return this.r=e,this.g=t,this.b=n,jf.colorSpaceToWorking(this,r),this}setHSL(e,t,n,r=jf.workingColorSpace){if(e=tf(e,1),t=ef(t,0,1),n=ef(n,0,1),t===0)this.r=this.g=this.b=n;else{let r=n<=.5?n*(1+t):n+t-n*t,i=2*n-r;this.r=Dp(i,r,e+1/3),this.g=Dp(i,r,e),this.b=Dp(i,r,e-1/3)}return jf.colorSpaceToWorking(this,r),this}setStyle(e,t=kd){function n(t){t!==void 0&&parseFloat(t)<1&&Ud(`Color: Alpha component of `+e+` will be ignored.`)}let r;if(r=/^(\w+)\(([^\)]*)\)/.exec(e)){let i,a=r[1],o=r[2];switch(a){case`rgb`:case`rgba`:if(i=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(i[4]),this.setRGB(Math.min(255,parseInt(i[1],10))/255,Math.min(255,parseInt(i[2],10))/255,Math.min(255,parseInt(i[3],10))/255,t);if(i=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(i[4]),this.setRGB(Math.min(100,parseInt(i[1],10))/100,Math.min(100,parseInt(i[2],10))/100,Math.min(100,parseInt(i[3],10))/100,t);break;case`hsl`:case`hsla`:if(i=/^\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\%\s*,\s*(\d*\.?\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(i[4]),this.setHSL(parseFloat(i[1])/360,parseFloat(i[2])/100,parseFloat(i[3])/100,t);break;default:Ud(`Color: Unknown color model `+e)}}else if(r=/^\#([A-Fa-f\d]+)$/.exec(e)){let n=r[1],i=n.length;if(i===3)return this.setRGB(parseInt(n.charAt(0),16)/15,parseInt(n.charAt(1),16)/15,parseInt(n.charAt(2),16)/15,t);if(i===6)return this.setHex(parseInt(n,16),t);Ud(`Color: Invalid hex color `+e)}else if(e&&e.length>0)return this.setColorName(e,t);return this}setColorName(e,t=kd){let n=wp[e.toLowerCase()];return n===void 0?Ud(`Color: Unknown color `+e):this.setHex(n,t),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(e){return this.r=e.r,this.g=e.g,this.b=e.b,this}copySRGBToLinear(e){return this.r=Mf(e.r),this.g=Mf(e.g),this.b=Mf(e.b),this}copyLinearToSRGB(e){return this.r=Nf(e.r),this.g=Nf(e.g),this.b=Nf(e.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(e=kd){return jf.workingToColorSpace(Op.copy(this),e),Math.round(ef(Op.r*255,0,255))*65536+Math.round(ef(Op.g*255,0,255))*256+Math.round(ef(Op.b*255,0,255))}getHexString(e=kd){return(`000000`+this.getHex(e).toString(16)).slice(-6)}getHSL(e,t=jf.workingColorSpace){jf.workingToColorSpace(Op.copy(this),t);let n=Op.r,r=Op.g,i=Op.b,a=Math.max(n,r,i),o=Math.min(n,r,i),s,c,l=(o+a)/2;if(o===a)s=0,c=0;else{let e=a-o;switch(c=l<=.5?e/(a+o):e/(2-a-o),a){case n:s=(r-i)/e+(r<i?6:0);break;case r:s=(i-n)/e+2;break;case i:s=(n-r)/e+4}s/=6}return e.h=s,e.s=c,e.l=l,e}getRGB(e,t=jf.workingColorSpace){return jf.workingToColorSpace(Op.copy(this),t),e.r=Op.r,e.g=Op.g,e.b=Op.b,e}getStyle(e=kd){jf.workingToColorSpace(Op.copy(this),e);let t=Op.r,n=Op.g,r=Op.b;return e===`srgb`?`rgb(${Math.round(t*255)},${Math.round(n*255)},${Math.round(r*255)})`:`color(${e} ${t.toFixed(3)} ${n.toFixed(3)} ${r.toFixed(3)})`}offsetHSL(e,t,n){return this.getHSL(Tp),this.setHSL(Tp.h+e,Tp.s+t,Tp.l+n)}add(e){return this.r+=e.r,this.g+=e.g,this.b+=e.b,this}addColors(e,t){return this.r=e.r+t.r,this.g=e.g+t.g,this.b=e.b+t.b,this}addScalar(e){return this.r+=e,this.g+=e,this.b+=e,this}sub(e){return this.r=Math.max(0,this.r-e.r),this.g=Math.max(0,this.g-e.g),this.b=Math.max(0,this.b-e.b),this}multiply(e){return this.r*=e.r,this.g*=e.g,this.b*=e.b,this}multiplyScalar(e){return this.r*=e,this.g*=e,this.b*=e,this}lerp(e,t){return this.r+=(e.r-this.r)*t,this.g+=(e.g-this.g)*t,this.b+=(e.b-this.b)*t,this}lerpColors(e,t,n){return this.r=e.r+(t.r-e.r)*n,this.g=e.g+(t.g-e.g)*n,this.b=e.b+(t.b-e.b)*n,this}lerpHSL(e,t){this.getHSL(Tp),e.getHSL(Ep);let n=af(Tp.h,Ep.h,t),r=af(Tp.s,Ep.s,t),i=af(Tp.l,Ep.l,t);return this.setHSL(n,r,i),this}setFromVector3(e){return this.r=e.x,this.g=e.y,this.b=e.z,this}applyMatrix3(e){let t=this.r,n=this.g,r=this.b,i=e.elements;return this.r=i[0]*t+i[3]*n+i[6]*r,this.g=i[1]*t+i[4]*n+i[7]*r,this.b=i[2]*t+i[5]*n+i[8]*r,this}equals(e){return e.r===this.r&&e.g===this.g&&e.b===this.b}fromArray(e,t=0){return this.r=e[t],this.g=e[t+1],this.b=e[t+2],this}toArray(e=[],t=0){return e[t]=this.r,e[t+1]=this.g,e[t+2]=this.b,e}fromBufferAttribute(e,t){return this.r=e.getX(t),this.g=e.getY(t),this.b=e.getZ(t),this}toJSON(){return this.getHex()}*[Symbol.iterator](){yield this.r,yield this.g,yield this.b}},Op=new Q;Q.NAMES=wp;var kp=class extends bp{constructor(){super(),this.isScene=!0,this.type=`Scene`,this.background=null,this.environment=null,this.fog=null,this.backgroundBlurriness=0,this.backgroundIntensity=1,this.backgroundRotation=new rp,this.environmentIntensity=1,this.environmentRotation=new rp,this.overrideMaterial=null,typeof __THREE_DEVTOOLS__<`u`&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(`observe`,{detail:this}))}copy(e,t){return super.copy(e,t),e.background!==null&&(this.background=e.background.clone()),e.environment!==null&&(this.environment=e.environment.clone()),e.fog!==null&&(this.fog=e.fog.clone()),this.backgroundBlurriness=e.backgroundBlurriness,this.backgroundIntensity=e.backgroundIntensity,this.backgroundRotation.copy(e.backgroundRotation),this.environmentIntensity=e.environmentIntensity,this.environmentRotation.copy(e.environmentRotation),e.overrideMaterial!==null&&(this.overrideMaterial=e.overrideMaterial.clone()),this.matrixAutoUpdate=e.matrixAutoUpdate,this}toJSON(e){let t=super.toJSON(e);return this.fog!==null&&(t.object.fog=this.fog.toJSON()),t.object.backgroundBlurriness=this.backgroundBlurriness,t.object.backgroundIntensity=this.backgroundIntensity,t.object.backgroundRotation=this.backgroundRotation.toArray(),t.object.environmentIntensity=this.environmentIntensity,t.object.environmentRotation=this.environmentRotation.toArray(),t}},Ap=new Z,jp=new Z,Mp=new Z,Np=new Z,Pp=new Z,Fp=new Z,Ip=new Z,Lp=new Z,Rp=new Z,zp=new Z,Bp=new Hf,Vp=new Hf,Hp=new Hf,Up=class e{constructor(e=new Z,t=new Z,n=new Z){this.a=e,this.b=t,this.c=n}static getNormal(e,t,n,r){r.subVectors(n,t),Ap.subVectors(e,t),r.cross(Ap);let i=r.lengthSq();return i>0?r.multiplyScalar(1/Math.sqrt(i)):r.set(0,0,0)}static getBarycoord(e,t,n,r,i){Ap.subVectors(r,t),jp.subVectors(n,t),Mp.subVectors(e,t);let a=Ap.dot(Ap),o=Ap.dot(jp),s=Ap.dot(Mp),c=jp.dot(jp),l=jp.dot(Mp),u=a*c-o*o;if(u===0)return i.set(0,0,0),null;let d=1/u,f=(c*s-o*l)*d,p=(a*l-o*s)*d;return i.set(1-f-p,p,f)}static containsPoint(e,t,n,r){return this.getBarycoord(e,t,n,r,Np)!==null&&Np.x>=0&&Np.y>=0&&Np.x+Np.y<=1}static getInterpolation(e,t,n,r,i,a,o,s){return this.getBarycoord(e,t,n,r,Np)===null?(s.x=0,s.y=0,`z`in s&&(s.z=0),`w`in s&&(s.w=0),null):(s.setScalar(0),s.addScaledVector(i,Np.x),s.addScaledVector(a,Np.y),s.addScaledVector(o,Np.z),s)}static getInterpolatedAttribute(e,t,n,r,i,a){return Bp.setScalar(0),Vp.setScalar(0),Hp.setScalar(0),Bp.fromBufferAttribute(e,t),Vp.fromBufferAttribute(e,n),Hp.fromBufferAttribute(e,r),a.setScalar(0),a.addScaledVector(Bp,i.x),a.addScaledVector(Vp,i.y),a.addScaledVector(Hp,i.z),a}static isFrontFacing(e,t,n,r){return Ap.subVectors(n,t),jp.subVectors(e,t),Ap.cross(jp).dot(r)<0}set(e,t,n){return this.a.copy(e),this.b.copy(t),this.c.copy(n),this}setFromPointsAndIndices(e,t,n,r){return this.a.copy(e[t]),this.b.copy(e[n]),this.c.copy(e[r]),this}setFromAttributeAndIndices(e,t,n,r){return this.a.fromBufferAttribute(e,t),this.b.fromBufferAttribute(e,n),this.c.fromBufferAttribute(e,r),this}clone(){return new this.constructor().copy(this)}copy(e){return this.a.copy(e.a),this.b.copy(e.b),this.c.copy(e.c),this}getArea(){return Ap.subVectors(this.c,this.b),jp.subVectors(this.a,this.b),Ap.cross(jp).length()*.5}getMidpoint(e){return e.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(t){return e.getNormal(this.a,this.b,this.c,t)}getPlane(e){return e.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(t,n){return e.getBarycoord(t,this.a,this.b,this.c,n)}getInterpolation(t,n,r,i,a){return e.getInterpolation(t,this.a,this.b,this.c,n,r,i,a)}containsPoint(t){return e.containsPoint(t,this.a,this.b,this.c)}isFrontFacing(t){return e.isFrontFacing(this.a,this.b,this.c,t)}intersectsBox(e){return e.intersectsTriangle(this)}closestPointToPoint(e,t){let n=this.a,r=this.b,i=this.c,a,o;Pp.subVectors(r,n),Fp.subVectors(i,n),Lp.subVectors(e,n);let s=Pp.dot(Lp),c=Fp.dot(Lp);if(s<=0&&c<=0)return t.copy(n);Rp.subVectors(e,r);let l=Pp.dot(Rp),u=Fp.dot(Rp);if(l>=0&&u<=l)return t.copy(r);let d=s*u-l*c;if(d<=0&&s>=0&&l<=0)return a=s/(s-l),t.copy(n).addScaledVector(Pp,a);zp.subVectors(e,i);let f=Pp.dot(zp),p=Fp.dot(zp);if(p>=0&&f<=p)return t.copy(i);let m=f*c-s*p;if(m<=0&&c>=0&&p<=0)return o=c/(c-p),t.copy(n).addScaledVector(Fp,o);let h=l*p-f*u;if(h<=0&&u-l>=0&&f-p>=0)return Ip.subVectors(i,r),o=(u-l)/(u-l+(f-p)),t.copy(r).addScaledVector(Ip,o);let g=1/(h+m+d);return a=m*g,o=d*g,t.copy(n).addScaledVector(Pp,a).addScaledVector(Fp,o)}equals(e){return e.a.equals(this.a)&&e.b.equals(this.b)&&e.c.equals(this.c)}},Wp=class{constructor(e=new Z(1/0,1/0,1/0),t=new Z(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=e,this.max=t}set(e,t){return this.min.copy(e),this.max.copy(t),this}setFromArray(e){this.makeEmpty();for(let t=0,n=e.length;t<n;t+=3)this.expandByPoint(Kp.fromArray(e,t));return this}setFromBufferAttribute(e){this.makeEmpty();for(let t=0,n=e.count;t<n;t++)this.expandByPoint(Kp.fromBufferAttribute(e,t));return this}setFromPoints(e){this.makeEmpty();for(let t=0,n=e.length;t<n;t++)this.expandByPoint(e[t]);return this}setFromCenterAndSize(e,t){let n=Kp.copy(t).multiplyScalar(.5);return this.min.copy(e).sub(n),this.max.copy(e).add(n),this}setFromObject(e,t=!1){return this.makeEmpty(),this.expandByObject(e,t)}clone(){return new this.constructor().copy(this)}copy(e){return this.min.copy(e.min),this.max.copy(e.max),this}makeEmpty(){return this.min.x=this.min.y=this.min.z=1/0,this.max.x=this.max.y=this.max.z=-1/0,this}isEmpty(){return this.max.x<this.min.x||this.max.y<this.min.y||this.max.z<this.min.z}getCenter(e){return this.isEmpty()?e.set(0,0,0):e.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(e){return this.isEmpty()?e.set(0,0,0):e.subVectors(this.max,this.min)}expandByPoint(e){return this.min.min(e),this.max.max(e),this}expandByVector(e){return this.min.sub(e),this.max.add(e),this}expandByScalar(e){return this.min.addScalar(-e),this.max.addScalar(e),this}expandByObject(e,t=!1){e.updateWorldMatrix(!1,!1);let n=e.geometry;if(n!==void 0){let r=n.getAttribute(`position`);if(t===!0&&r!==void 0&&e.isInstancedMesh!==!0)for(let t=0,n=r.count;t<n;t++)e.isMesh===!0?e.getVertexPosition(t,Kp):Kp.fromBufferAttribute(r,t),Kp.applyMatrix4(e.matrixWorld),this.expandByPoint(Kp);else e.boundingBox===void 0?(n.boundingBox===null&&n.computeBoundingBox(),qp.copy(n.boundingBox)):(e.boundingBox===null&&e.computeBoundingBox(),qp.copy(e.boundingBox)),qp.applyMatrix4(e.matrixWorld),this.union(qp)}let r=e.children;for(let e=0,n=r.length;e<n;e++)this.expandByObject(r[e],t);return this}containsPoint(e){return e.x>=this.min.x&&e.x<=this.max.x&&e.y>=this.min.y&&e.y<=this.max.y&&e.z>=this.min.z&&e.z<=this.max.z}containsBox(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y&&this.min.z<=e.min.z&&e.max.z<=this.max.z}getParameter(e,t){return t.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y),(e.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(e){return e.max.x>=this.min.x&&e.min.x<=this.max.x&&e.max.y>=this.min.y&&e.min.y<=this.max.y&&e.max.z>=this.min.z&&e.min.z<=this.max.z}intersectsSphere(e){return this.clampPoint(e.center,Kp),Kp.distanceToSquared(e.center)<=e.radius*e.radius}intersectsPlane(e){let t,n;return e.normal.x>0?(t=e.normal.x*this.min.x,n=e.normal.x*this.max.x):(t=e.normal.x*this.max.x,n=e.normal.x*this.min.x),e.normal.y>0?(t+=e.normal.y*this.min.y,n+=e.normal.y*this.max.y):(t+=e.normal.y*this.max.y,n+=e.normal.y*this.min.y),e.normal.z>0?(t+=e.normal.z*this.min.z,n+=e.normal.z*this.max.z):(t+=e.normal.z*this.max.z,n+=e.normal.z*this.min.z),t<=-e.constant&&n>=-e.constant}intersectsTriangle(e){if(this.isEmpty())return!1;this.getCenter(em),tm.subVectors(this.max,em),Jp.subVectors(e.a,em),Yp.subVectors(e.b,em),Xp.subVectors(e.c,em),Zp.subVectors(Yp,Jp),Qp.subVectors(Xp,Yp),$p.subVectors(Jp,Xp);let t=[0,-Zp.z,Zp.y,0,-Qp.z,Qp.y,0,-$p.z,$p.y,Zp.z,0,-Zp.x,Qp.z,0,-Qp.x,$p.z,0,-$p.x,-Zp.y,Zp.x,0,-Qp.y,Qp.x,0,-$p.y,$p.x,0];return!im(t,Jp,Yp,Xp,tm)||(t=[1,0,0,0,1,0,0,0,1],!im(t,Jp,Yp,Xp,tm))?!1:(nm.crossVectors(Zp,Qp),t=[nm.x,nm.y,nm.z],im(t,Jp,Yp,Xp,tm))}clampPoint(e,t){return t.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return this.clampPoint(e,Kp).distanceTo(e)}getBoundingSphere(e){return this.isEmpty()?e.makeEmpty():(this.getCenter(e.center),e.radius=this.getSize(Kp).length()*.5),e}intersect(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this}union(e){return this.min.min(e.min),this.max.max(e.max),this}applyMatrix4(e){return this.isEmpty()?this:(Gp[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(e),Gp[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(e),Gp[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(e),Gp[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(e),Gp[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(e),Gp[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(e),Gp[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(e),Gp[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(e),this.setFromPoints(Gp),this)}translate(e){return this.min.add(e),this.max.add(e),this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}toJSON(){return{min:this.min.toArray(),max:this.max.toArray()}}fromJSON(e){return this.min.fromArray(e.min),this.max.fromArray(e.max),this}},Gp=[new Z,new Z,new Z,new Z,new Z,new Z,new Z,new Z],Kp=new Z,qp=new Wp,Jp=new Z,Yp=new Z,Xp=new Z,Zp=new Z,Qp=new Z,$p=new Z,em=new Z,tm=new Z,nm=new Z,rm=new Z;function im(e,t,n,r,i){for(let a=0,o=e.length-3;a<=o;a+=3){rm.fromArray(e,a);let o=i.x*Math.abs(rm.x)+i.y*Math.abs(rm.y)+i.z*Math.abs(rm.z),s=t.dot(rm),c=n.dot(rm),l=r.dot(rm);if(Math.max(-Math.max(s,c,l),Math.min(s,c,l))>o)return!1}return!0}var am=om();function om(){let e=new ArrayBuffer(4),t=new Float32Array(e),n=new Uint32Array(e),r=new Uint32Array(512),i=new Uint32Array(512);for(let e=0;e<256;++e){let t=e-127;t<-27?(r[e]=0,r[e|256]=32768,i[e]=24,i[e|256]=24):t<-14?(r[e]=1024>>-t-14,r[e|256]=1024>>-t-14|32768,i[e]=-t-1,i[e|256]=-t-1):t<=15?(r[e]=t+15<<10,r[e|256]=t+15<<10|32768,i[e]=13,i[e|256]=13):t<128?(r[e]=31744,r[e|256]=64512,i[e]=24,i[e|256]=24):(r[e]=31744,r[e|256]=64512,i[e]=13,i[e|256]=13)}let a=new Uint32Array(2048),o=new Uint32Array(64),s=new Uint32Array(64);for(let e=1;e<1024;++e){let t=e<<13,n=0;for(;!(t&8388608);)t<<=1,n-=8388608;t&=-8388609,n+=947912704,a[e]=t|n}for(let e=1024;e<2048;++e)a[e]=939524096+(e-1024<<13);for(let e=1;e<31;++e)o[e]=e<<23;o[31]=1199570944,o[32]=2147483648;for(let e=33;e<63;++e)o[e]=2147483648+(e-32<<23);o[63]=3347054592;for(let e=1;e<64;++e)e!==32&&(s[e]=1024);return{floatView:t,uint32View:n,baseTable:r,shiftTable:i,mantissaTable:a,exponentTable:o,offsetTable:s}}function sm(e){Math.abs(e)>65504&&Ud(`DataUtils.toHalfFloat(): Value out of range.`),e=ef(e,-65504,65504),am.floatView[0]=e;let t=am.uint32View[0],n=t>>23&511;return am.baseTable[n]+((t&8388607)>>am.shiftTable[n])}function cm(e){let t=e>>10;return am.uint32View[0]=am.mantissaTable[am.offsetTable[t]+(e&1023)]+am.exponentTable[t],am.floatView[0]}var lm=class{static toHalfFloat(e){return sm(e)}static fromHalfFloat(e){return cm(e)}},um=new Z,dm=new X,fm=0,pm=class extends Jd{constructor(e,t,n=!1){if(super(),Array.isArray(e))throw TypeError(`THREE.BufferAttribute: array should be a Typed Array.`);this.isBufferAttribute=!0,Object.defineProperty(this,"id",{value:fm++}),this.name=``,this.array=e,this.itemSize=t,this.count=e===void 0?0:e.length/t,this.normalized=n,this.usage=Pd,this.updateRanges=[],this.gpuType=Su,this.version=0}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}copy(e){return this.name=e.name,this.array=new e.array.constructor(e.array),this.itemSize=e.itemSize,this.count=e.count,this.normalized=e.normalized,this.usage=e.usage,this.gpuType=e.gpuType,this}copyAt(e,t,n){e*=this.itemSize,n*=t.itemSize;for(let r=0,i=this.itemSize;r<i;r++)this.array[e+r]=t.array[n+r];return this}copyArray(e){return this.array.set(e),this}applyMatrix3(e){if(this.itemSize===2)for(let t=0,n=this.count;t<n;t++)dm.fromBufferAttribute(this,t),dm.applyMatrix3(e),this.setXY(t,dm.x,dm.y);else if(this.itemSize===3)for(let t=0,n=this.count;t<n;t++)um.fromBufferAttribute(this,t),um.applyMatrix3(e),this.setXYZ(t,um.x,um.y,um.z);return this}applyMatrix4(e){for(let t=0,n=this.count;t<n;t++)um.fromBufferAttribute(this,t),um.applyMatrix4(e),this.setXYZ(t,um.x,um.y,um.z);return this}applyNormalMatrix(e){for(let t=0,n=this.count;t<n;t++)um.fromBufferAttribute(this,t),um.applyNormalMatrix(e),this.setXYZ(t,um.x,um.y,um.z);return this}transformDirection(e){for(let t=0,n=this.count;t<n;t++)um.fromBufferAttribute(this,t),um.transformDirection(e),this.setXYZ(t,um.x,um.y,um.z);return this}set(e,t=0){return this.array.set(e,t),this}getComponent(e,t){let n=this.array[e*this.itemSize+t];return this.normalized&&(n=bf(n,this.array)),n}setComponent(e,t,n){return this.normalized&&(n=xf(n,this.array)),this.array[e*this.itemSize+t]=n,this}getX(e){let t=this.array[e*this.itemSize];return this.normalized&&(t=bf(t,this.array)),t}setX(e,t){return this.normalized&&(t=xf(t,this.array)),this.array[e*this.itemSize]=t,this}getY(e){let t=this.array[e*this.itemSize+1];return this.normalized&&(t=bf(t,this.array)),t}setY(e,t){return this.normalized&&(t=xf(t,this.array)),this.array[e*this.itemSize+1]=t,this}getZ(e){let t=this.array[e*this.itemSize+2];return this.normalized&&(t=bf(t,this.array)),t}setZ(e,t){return this.normalized&&(t=xf(t,this.array)),this.array[e*this.itemSize+2]=t,this}getW(e){let t=this.array[e*this.itemSize+3];return this.normalized&&(t=bf(t,this.array)),t}setW(e,t){return this.normalized&&(t=xf(t,this.array)),this.array[e*this.itemSize+3]=t,this}setXY(e,t,n){return e*=this.itemSize,this.normalized&&(t=xf(t,this.array),n=xf(n,this.array)),this.array[e+0]=t,this.array[e+1]=n,this}setXYZ(e,t,n,r){return e*=this.itemSize,this.normalized&&(t=xf(t,this.array),n=xf(n,this.array),r=xf(r,this.array)),this.array[e+0]=t,this.array[e+1]=n,this.array[e+2]=r,this}setXYZW(e,t,n,r,i){return e*=this.itemSize,this.normalized&&(t=xf(t,this.array),n=xf(n,this.array),r=xf(r,this.array),i=xf(i,this.array)),this.array[e+0]=t,this.array[e+1]=n,this.array[e+2]=r,this.array[e+3]=i,this}onUpload(e){return this.onUploadCallback=e,this}clone(){return new this.constructor(this.array,this.itemSize).copy(this)}toJSON(){let e={itemSize:this.itemSize,type:this.array.constructor.name,array:Array.from(this.array),normalized:this.normalized};return e.name=this.name,e.usage=this.usage,e.gpuType=this.gpuType,e}dispose(){this.dispatchEvent({type:`dispose`})}},mm=class extends pm{constructor(e,t,n){super(new Uint16Array(e),t,n)}},hm=class extends pm{constructor(e,t,n){super(new Uint32Array(e),t,n)}},gm=class extends pm{constructor(e,t,n){super(new Float32Array(e),t,n)}},_m=new Wp,vm=new Z,ym=new Z,bm=class{constructor(e=new Z,t=-1){this.isSphere=!0,this.center=e,this.radius=t}set(e,t){return this.center.copy(e),this.radius=t,this}setFromPoints(e,t){let n=this.center;t===void 0?_m.setFromPoints(e).getCenter(n):n.copy(t);let r=0;for(let t=0,i=e.length;t<i;t++)r=Math.max(r,n.distanceToSquared(e[t]));return this.radius=Math.sqrt(r),this}copy(e){return this.center.copy(e.center),this.radius=e.radius,this}isEmpty(){return this.radius<0}makeEmpty(){return this.center.set(0,0,0),this.radius=-1,this}containsPoint(e){return e.distanceToSquared(this.center)<=this.radius*this.radius}distanceToPoint(e){return e.distanceTo(this.center)-this.radius}intersectsSphere(e){let t=this.radius+e.radius;return e.center.distanceToSquared(this.center)<=t*t}intersectsBox(e){return e.intersectsSphere(this)}intersectsPlane(e){return Math.abs(e.distanceToPoint(this.center))<=this.radius}clampPoint(e,t){let n=this.center.distanceToSquared(e);return t.copy(e),n>this.radius*this.radius&&(t.sub(this.center).normalize(),t.multiplyScalar(this.radius).add(this.center)),t}getBoundingBox(e){return this.isEmpty()?(e.makeEmpty(),e):(e.set(this.center,this.center),e.expandByScalar(this.radius),e)}applyMatrix4(e){return this.center.applyMatrix4(e),this.radius*=e.getMaxScaleOnAxis(),this}translate(e){return this.center.add(e),this}expandByPoint(e){if(this.isEmpty())return this.center.copy(e),this.radius=0,this;vm.subVectors(e,this.center);let t=vm.lengthSq();if(t>this.radius*this.radius){let e=Math.sqrt(t),n=(e-this.radius)*.5;this.center.addScaledVector(vm,n/e),this.radius+=n}return this}union(e){return e.isEmpty()?this:this.isEmpty()?(this.copy(e),this):(this.center.equals(e.center)===!0?this.radius=Math.max(this.radius,e.radius):(ym.subVectors(e.center,this.center).setLength(e.radius),this.expandByPoint(vm.copy(e.center).add(ym)),this.expandByPoint(vm.copy(e.center).sub(ym))),this)}equals(e){return e.center.equals(this.center)&&e.radius===this.radius}clone(){return new this.constructor().copy(this)}toJSON(){return{radius:this.radius,center:this.center.toArray()}}fromJSON(e){return this.radius=e.radius,this.center.fromArray(e.center),this}},xm=0,Sm=new qf,Cm=new bp,wm=new Z,Tm=new Wp,Em=new Wp,Dm=new Z,Om=class e extends Jd{constructor(){super(),this.isBufferGeometry=!0,Object.defineProperty(this,"id",{value:xm++}),this.uuid=$d(),this.name=``,this.type=`BufferGeometry`,this.index=null,this.indirect=null,this.indirectOffset=0,this.attributes={},this.morphAttributes={},this.morphTargetsRelative=!1,this.groups=[],this.boundingBox=null,this.boundingSphere=null,this.drawRange={start:0,count:1/0},this.userData={},this._transformed=!1}getIndex(){return this.index}setIndex(e){return this.index=Array.isArray(e)?new(Id(e)?hm:mm)(e,1):e,this}setIndirect(e,t=0){return this.indirect=e,this.indirectOffset=t,this}getIndirect(){return this.indirect}getAttribute(e){return this.attributes[e]}setAttribute(e,t){return this.attributes[e]=t,this}deleteAttribute(e){return delete this.attributes[e],this}hasAttribute(e){return this.attributes[e]!==void 0}addGroup(e,t,n=0){this.groups.push({start:e,count:t,materialIndex:n})}clearGroups(){this.groups=[]}setDrawRange(e,t){this.drawRange.start=e,this.drawRange.count=t}applyMatrix4(e){let t=this.attributes.position;t!==void 0&&(t.applyMatrix4(e),t.needsUpdate=!0);let n=this.attributes.normal;if(n!==void 0){let t=new Ef().getNormalMatrix(e);n.applyNormalMatrix(t),n.needsUpdate=!0}let r=this.attributes.tangent;return r!==void 0&&(r.transformDirection(e),r.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this._transformed=!0,this}applyQuaternion(e){return Sm.makeRotationFromQuaternion(e),this.applyMatrix4(Sm),this}rotateX(e){return Sm.makeRotationX(e),this.applyMatrix4(Sm),this}rotateY(e){return Sm.makeRotationY(e),this.applyMatrix4(Sm),this}rotateZ(e){return Sm.makeRotationZ(e),this.applyMatrix4(Sm),this}translate(e,t,n){return Sm.makeTranslation(e,t,n),this.applyMatrix4(Sm),this}scale(e,t,n){return Sm.makeScale(e,t,n),this.applyMatrix4(Sm),this}lookAt(e){return Cm.lookAt(e),Cm.updateMatrix(),this.applyMatrix4(Cm.matrix),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(wm).negate(),this.translate(wm.x,wm.y,wm.z),this}setFromPoints(e){let t=this.getAttribute(`position`);if(t===void 0){let t=[];for(let n=0,r=e.length;n<r;n++){let r=e[n];t.push(r.x,r.y,r.z||0)}this.setAttribute(`position`,new gm(t,3))}else{let n=Math.min(e.length,t.count);for(let r=0;r<n;r++){let n=e[r];t.setXYZ(r,n.x,n.y,n.z||0)}e.length>t.count&&Ud(`BufferGeometry: Buffer size too small for points data. Use .dispose() and create a new geometry.`),t.needsUpdate=!0}return this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new Wp);let e=this.attributes.position,t=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){Wd(`BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box.`,this),this.boundingBox.set(new Z(-1/0,-1/0,-1/0),new Z(1/0,1/0,1/0));return}if(e!==void 0){if(this.boundingBox.setFromBufferAttribute(e),t)for(let e=0,n=t.length;e<n;e++){let n=t[e];Tm.setFromBufferAttribute(n),this.morphTargetsRelative?(Dm.addVectors(this.boundingBox.min,Tm.min),this.boundingBox.expandByPoint(Dm),Dm.addVectors(this.boundingBox.max,Tm.max),this.boundingBox.expandByPoint(Dm)):(this.boundingBox.expandByPoint(Tm.min),this.boundingBox.expandByPoint(Tm.max))}}else this.boundingBox.makeEmpty();(isNaN(this.boundingBox.min.x)||isNaN(this.boundingBox.min.y)||isNaN(this.boundingBox.min.z))&&Wd(`BufferGeometry.computeBoundingBox(): Computed min/max have NaN values. The "position" attribute is likely to have NaN values.`,this)}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new bm);let e=this.attributes.position,t=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){Wd(`BufferGeometry.computeBoundingSphere(): GLBufferAttribute requires a manual bounding sphere.`,this),this.boundingSphere.set(new Z,1/0);return}if(e){let n=this.boundingSphere.center;if(Tm.setFromBufferAttribute(e),t)for(let e=0,n=t.length;e<n;e++){let n=t[e];Em.setFromBufferAttribute(n),this.morphTargetsRelative?(Dm.addVectors(Tm.min,Em.min),Tm.expandByPoint(Dm),Dm.addVectors(Tm.max,Em.max),Tm.expandByPoint(Dm)):(Tm.expandByPoint(Em.min),Tm.expandByPoint(Em.max))}Tm.getCenter(n);let r=0;for(let t=0,i=e.count;t<i;t++)Dm.fromBufferAttribute(e,t),r=Math.max(r,n.distanceToSquared(Dm));if(t)for(let i=0,a=t.length;i<a;i++){let a=t[i],o=this.morphTargetsRelative;for(let t=0,i=a.count;t<i;t++)Dm.fromBufferAttribute(a,t),o&&(wm.fromBufferAttribute(e,t),Dm.add(wm)),r=Math.max(r,n.distanceToSquared(Dm))}this.boundingSphere.radius=Math.sqrt(r),isNaN(this.boundingSphere.radius)&&Wd(`BufferGeometry.computeBoundingSphere(): Computed radius is NaN. The "position" attribute is likely to have NaN values.`,this)}}computeTangents(){let e=this.index,t=this.attributes;if(e===null||t.position===void 0||t.normal===void 0||t.uv===void 0){Wd(`BufferGeometry: .computeTangents() failed. Missing required attributes (index, position, normal or uv)`);return}let n=t.position,r=t.normal,i=t.uv,a=this.getAttribute(`tangent`);(a===void 0||a.count!==n.count)&&(a=new pm(new Float32Array(4*n.count),4),this.setAttribute(`tangent`,a));let o=[],s=[];for(let e=0;e<n.count;e++)o[e]=new Z,s[e]=new Z;let c=new Z,l=new Z,u=new Z,d=new X,f=new X,p=new X,m=new Z,h=new Z;function g(e,t,r){c.fromBufferAttribute(n,e),l.fromBufferAttribute(n,t),u.fromBufferAttribute(n,r),d.fromBufferAttribute(i,e),f.fromBufferAttribute(i,t),p.fromBufferAttribute(i,r),l.sub(c),u.sub(c),f.sub(d),p.sub(d);let a=1/(f.x*p.y-p.x*f.y);isFinite(a)&&(m.copy(l).multiplyScalar(p.y).addScaledVector(u,-f.y).multiplyScalar(a),h.copy(u).multiplyScalar(f.x).addScaledVector(l,-p.x).multiplyScalar(a),o[e].add(m),o[t].add(m),o[r].add(m),s[e].add(h),s[t].add(h),s[r].add(h))}let _=this.groups;_.length===0&&(_=[{start:0,count:e.count}]);for(let t=0,n=_.length;t<n;++t){let n=_[t],r=n.start,i=n.count;for(let t=r,n=r+i;t<n;t+=3)g(e.getX(t+0),e.getX(t+1),e.getX(t+2))}let v=new Z,y=new Z,b=new Z,x=new Z;function S(e){b.fromBufferAttribute(r,e),x.copy(b);let t=o[e];v.copy(t),v.sub(b.multiplyScalar(b.dot(t))).normalize(),y.crossVectors(x,t);let n=y.dot(s[e])<0?-1:1;a.setXYZW(e,v.x,v.y,v.z,n)}for(let t=0,n=_.length;t<n;++t){let n=_[t],r=n.start,i=n.count;for(let t=r,n=r+i;t<n;t+=3)S(e.getX(t+0)),S(e.getX(t+1)),S(e.getX(t+2))}this._transformed=!0}computeVertexNormals(){let e=this.index,t=this.getAttribute(`position`);if(t!==void 0){let n=this.getAttribute(`normal`);if(n===void 0||n.count!==t.count)n=new pm(new Float32Array(t.count*3),3),this.setAttribute(`normal`,n);else for(let e=0,t=n.count;e<t;e++)n.setXYZ(e,0,0,0);let r=new Z,i=new Z,a=new Z,o=new Z,s=new Z,c=new Z,l=new Z,u=new Z;if(e)for(let d=0,f=e.count;d<f;d+=3){let f=e.getX(d+0),p=e.getX(d+1),m=e.getX(d+2);r.fromBufferAttribute(t,f),i.fromBufferAttribute(t,p),a.fromBufferAttribute(t,m),l.subVectors(a,i),u.subVectors(r,i),l.cross(u),o.fromBufferAttribute(n,f),s.fromBufferAttribute(n,p),c.fromBufferAttribute(n,m),o.add(l),s.add(l),c.add(l),n.setXYZ(f,o.x,o.y,o.z),n.setXYZ(p,s.x,s.y,s.z),n.setXYZ(m,c.x,c.y,c.z)}else for(let e=0,o=t.count;e<o;e+=3)r.fromBufferAttribute(t,e+0),i.fromBufferAttribute(t,e+1),a.fromBufferAttribute(t,e+2),l.subVectors(a,i),u.subVectors(r,i),l.cross(u),n.setXYZ(e+0,l.x,l.y,l.z),n.setXYZ(e+1,l.x,l.y,l.z),n.setXYZ(e+2,l.x,l.y,l.z);this.normalizeNormals(),n.needsUpdate=!0}}normalizeNormals(){let e=this.attributes.normal;for(let t=0,n=e.count;t<n;t++)Dm.fromBufferAttribute(e,t),Dm.normalize(),e.setXYZ(t,Dm.x,Dm.y,Dm.z)}toNonIndexed(){function t(e,t){let n=e.array,r=e.itemSize,i=e.normalized,a=new n.constructor(t.length*r),o=0,s=0;for(let i=0,c=t.length;i<c;i++){o=e.isInterleavedBufferAttribute?t[i]*e.data.stride+e.offset:t[i]*r;for(let e=0;e<r;e++)a[s++]=n[o++]}return new pm(a,r,i)}if(this.index===null)return Ud(`BufferGeometry.toNonIndexed(): BufferGeometry is already non-indexed.`),this;let n=new e,r=this.index.array,i=this.attributes;for(let e in i){let a=i[e],o=t(a,r);n.setAttribute(e,o)}let a=this.morphAttributes;for(let e in a){let i=[],o=a[e];for(let e=0,n=o.length;e<n;e++){let n=o[e],a=t(n,r);i.push(a)}n.morphAttributes[e]=i}n.morphTargetsRelative=this.morphTargetsRelative;let o=this.groups;for(let e=0,t=o.length;e<t;e++){let t=o[e];n.addGroup(t.start,t.count,t.materialIndex)}return n}toJSON(){let e={metadata:{version:4.7,type:`BufferGeometry`,generator:`BufferGeometry.toJSON`}};if(e.uuid=this.uuid,e.type=this.parameters!==void 0&&this._transformed===!0?`BufferGeometry`:this.type,e.name=this.name,Object.keys(this.userData).length>0&&(e.userData=this.userData),this.parameters!==void 0&&this._transformed!==!0){let t=this.parameters;for(let n in t)t[n]!==void 0&&(e[n]=t[n]);return e}e.data={attributes:{}};let t=this.index;t!==null&&(e.data.index={type:t.array.constructor.name,array:Array.prototype.slice.call(t.array)});let n=this.attributes;for(let t in n){let r=n[t];e.data.attributes[t]=r.toJSON(e.data)}let r={},i=!1;for(let t in this.morphAttributes){let n=this.morphAttributes[t],a=[];for(let t=0,r=n.length;t<r;t++){let r=n[t];a.push(r.toJSON(e.data))}a.length>0&&(r[t]=a,i=!0)}i&&(e.data.morphAttributes=r,e.data.morphTargetsRelative=this.morphTargetsRelative);let a=this.groups;a.length>0&&(e.data.groups=JSON.parse(JSON.stringify(a)));let o=this.boundingSphere;return o!==null&&(e.data.boundingSphere=o.toJSON()),e}clone(){return new this.constructor().copy(this)}copy(e){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;let t={};this.name=e.name;let n=e.index;n!==null&&this.setIndex(n.clone());let r=e.attributes;for(let e in r){let n=r[e];this.setAttribute(e,n.clone(t))}let i=e.morphAttributes;for(let e in i){let n=[],r=i[e];for(let e=0,i=r.length;e<i;e++)n.push(r[e].clone(t));this.morphAttributes[e]=n}this.morphTargetsRelative=e.morphTargetsRelative;let a=e.groups;for(let e=0,t=a.length;e<t;e++){let t=a[e];this.addGroup(t.start,t.count,t.materialIndex)}let o=e.boundingBox;o!==null&&(this.boundingBox=o.clone());let s=e.boundingSphere;return s!==null&&(this.boundingSphere=s.clone()),this.drawRange.start=e.drawRange.start,this.drawRange.count=e.drawRange.count,this.userData=e.userData,this._transformed=e._transformed,this}dispose(){this.dispatchEvent({type:`dispose`})}},km=class{constructor(e,t){this.isInterleavedBuffer=!0,this.array=e,this.stride=t,this.count=e===void 0?0:e.length/t,this.usage=Pd,this.updateRanges=[],this.version=0,this.uuid=$d()}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}copy(e){return this.array=new e.array.constructor(e.array),this.count=e.count,this.stride=e.stride,this.usage=e.usage,this}copyAt(e,t,n){e*=this.stride,n*=t.stride;for(let r=0,i=this.stride;r<i;r++)this.array[e+r]=t.array[n+r];return this}set(e,t=0){return this.array.set(e,t),this}clone(e){e.arrayBuffers===void 0&&(e.arrayBuffers={}),this.array.buffer._uuid===void 0&&(this.array.buffer._uuid=$d()),e.arrayBuffers[this.array.buffer._uuid]===void 0&&(e.arrayBuffers[this.array.buffer._uuid]=this.array.slice(0).buffer);let t=new this.array.constructor(e.arrayBuffers[this.array.buffer._uuid]),n=new this.constructor(t,this.stride);return n.setUsage(this.usage),n}onUpload(e){return this.onUploadCallback=e,this}toJSON(e){e.arrayBuffers===void 0&&(e.arrayBuffers={}),this.array.buffer._uuid===void 0&&(this.array.buffer._uuid=$d()),e.arrayBuffers[this.array.buffer._uuid]===void 0&&(e.arrayBuffers[this.array.buffer._uuid]=Array.from(new Uint32Array(this.array.buffer)));let t={uuid:this.uuid,buffer:this.array.buffer._uuid,type:this.array.constructor.name,stride:this.stride};return t.usage=this.usage,t}},Am=new Z,jm=class e{constructor(e,t,n,r=!1){this.isInterleavedBufferAttribute=!0,this.name=``,this.data=e,this.itemSize=t,this.offset=n,this.normalized=r}get count(){return this.data.count}get array(){return this.data.array}set needsUpdate(e){this.data.needsUpdate=e}applyMatrix4(e){for(let t=0,n=this.data.count;t<n;t++)Am.fromBufferAttribute(this,t),Am.applyMatrix4(e),this.setXYZ(t,Am.x,Am.y,Am.z);return this}applyNormalMatrix(e){for(let t=0,n=this.count;t<n;t++)Am.fromBufferAttribute(this,t),Am.applyNormalMatrix(e),this.setXYZ(t,Am.x,Am.y,Am.z);return this}transformDirection(e){for(let t=0,n=this.count;t<n;t++)Am.fromBufferAttribute(this,t),Am.transformDirection(e),this.setXYZ(t,Am.x,Am.y,Am.z);return this}getComponent(e,t){let n=this.array[e*this.data.stride+this.offset+t];return this.normalized&&(n=bf(n,this.array)),n}setComponent(e,t,n){return this.normalized&&(n=xf(n,this.array)),this.data.array[e*this.data.stride+this.offset+t]=n,this}setX(e,t){return this.normalized&&(t=xf(t,this.array)),this.data.array[e*this.data.stride+this.offset]=t,this}setY(e,t){return this.normalized&&(t=xf(t,this.array)),this.data.array[e*this.data.stride+this.offset+1]=t,this}setZ(e,t){return this.normalized&&(t=xf(t,this.array)),this.data.array[e*this.data.stride+this.offset+2]=t,this}setW(e,t){return this.normalized&&(t=xf(t,this.array)),this.data.array[e*this.data.stride+this.offset+3]=t,this}getX(e){let t=this.data.array[e*this.data.stride+this.offset];return this.normalized&&(t=bf(t,this.array)),t}getY(e){let t=this.data.array[e*this.data.stride+this.offset+1];return this.normalized&&(t=bf(t,this.array)),t}getZ(e){let t=this.data.array[e*this.data.stride+this.offset+2];return this.normalized&&(t=bf(t,this.array)),t}getW(e){let t=this.data.array[e*this.data.stride+this.offset+3];return this.normalized&&(t=bf(t,this.array)),t}setXY(e,t,n){return e=e*this.data.stride+this.offset,this.normalized&&(t=xf(t,this.array),n=xf(n,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=n,this}setXYZ(e,t,n,r){return e=e*this.data.stride+this.offset,this.normalized&&(t=xf(t,this.array),n=xf(n,this.array),r=xf(r,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=n,this.data.array[e+2]=r,this}setXYZW(e,t,n,r,i){return e=e*this.data.stride+this.offset,this.normalized&&(t=xf(t,this.array),n=xf(n,this.array),r=xf(r,this.array),i=xf(i,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=n,this.data.array[e+2]=r,this.data.array[e+3]=i,this}clone(t){if(t===void 0){Vd(`InterleavedBufferAttribute.clone(): Cloning an interleaved buffer attribute will de-interleave buffer data.`);let e=[];for(let t=0;t<this.count;t++){let n=t*this.data.stride+this.offset;for(let t=0;t<this.itemSize;t++)e.push(this.data.array[n+t])}return new pm(new this.array.constructor(e),this.itemSize,this.normalized)}return t.interleavedBuffers===void 0&&(t.interleavedBuffers={}),t.interleavedBuffers[this.data.uuid]===void 0&&(t.interleavedBuffers[this.data.uuid]=this.data.clone(t)),new e(t.interleavedBuffers[this.data.uuid],this.itemSize,this.offset,this.normalized)}toJSON(e){if(e===void 0){Vd(`InterleavedBufferAttribute.toJSON(): Serializing an interleaved buffer attribute will de-interleave buffer data.`);let e=[];for(let t=0;t<this.count;t++){let n=t*this.data.stride+this.offset;for(let t=0;t<this.itemSize;t++)e.push(this.data.array[n+t])}return{itemSize:this.itemSize,type:this.array.constructor.name,array:e,normalized:this.normalized}}return e.interleavedBuffers===void 0&&(e.interleavedBuffers={}),e.interleavedBuffers[this.data.uuid]===void 0&&(e.interleavedBuffers[this.data.uuid]=this.data.toJSON(e)),{isInterleavedBufferAttribute:!0,itemSize:this.itemSize,data:this.data.uuid,offset:this.offset,normalized:this.normalized}}},Mm=new Z,Nm=new Z,Pm=new Ef,Fm=class{constructor(e=new Z(1,0,0),t=0){this.isPlane=!0,this.normal=e,this.constant=t}set(e,t){return this.normal.copy(e),this.constant=t,this}setComponents(e,t,n,r){return this.normal.set(e,t,n),this.constant=r,this}setFromNormalAndCoplanarPoint(e,t){return this.normal.copy(e),this.constant=-t.dot(this.normal),this}setFromCoplanarPoints(e,t,n){let r=Mm.subVectors(n,t).cross(Nm.subVectors(e,t)).normalize();return this.setFromNormalAndCoplanarPoint(r,e),this}copy(e){return this.normal.copy(e.normal),this.constant=e.constant,this}normalize(){let e=1/this.normal.length();return this.normal.multiplyScalar(e),this.constant*=e,this}negate(){return this.constant*=-1,this.normal.negate(),this}distanceToPoint(e){return this.normal.dot(e)+this.constant}distanceToSphere(e){return this.distanceToPoint(e.center)-e.radius}projectPoint(e,t){return t.copy(e).addScaledVector(this.normal,-this.distanceToPoint(e))}intersectLine(e,t,n=!0){let r=e.delta(Mm),i=this.normal.dot(r);if(i===0)return this.distanceToPoint(e.start)===0?t.copy(e.start):null;let a=-(e.start.dot(this.normal)+this.constant)/i;return n===!0&&(a<0||a>1)?null:t.copy(e.start).addScaledVector(r,a)}intersectsLine(e){let t=this.distanceToPoint(e.start),n=this.distanceToPoint(e.end);return t<0&&n>0||n<0&&t>0}intersectsBox(e){return e.intersectsPlane(this)}intersectsSphere(e){return e.intersectsPlane(this)}coplanarPoint(e){return e.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(e,t){let n=t||Pm.getNormalMatrix(e),r=this.coplanarPoint(Mm).applyMatrix4(e),i=this.normal.applyMatrix3(n).normalize();return this.constant=-r.dot(i),this}translate(e){return this.constant-=e.dot(this.normal),this}equals(e){return e.normal.equals(this.normal)&&e.constant===this.constant}clone(){return new this.constructor().copy(this)}toJSON(){return{normal:this.normal.toArray(),constant:this.constant}}fromJSON(e){return this.normal.fromArray(e.normal),this.constant=e.constant,this}},Im=0,Lm=class extends Jd{constructor(){super(),this.isMaterial=!0,Object.defineProperty(this,"id",{value:Im++}),this.uuid=$d(),this.name=``,this.type=`Material`,this.blending=1,this.side=0,this.vertexColors=!1,this.opacity=1,this.transparent=!1,this.alphaHash=!1,this.blendSrc=204,this.blendDst=205,this.blendEquation=100,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.blendColor=new Q(0,0,0),this.blendAlpha=0,this.depthFunc=3,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=519,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=Nd,this.stencilZFail=Nd,this.stencilZPass=Nd,this.stencilWrite=!1,this.clippingPlanes=null,this.clipIntersection=!1,this.clipShadows=!1,this.shadowSide=null,this.colorWrite=!0,this.precision=null,this.polygonOffset=!1,this.polygonOffsetFactor=0,this.polygonOffsetUnits=0,this.dithering=!1,this.alphaToCoverage=!1,this.premultipliedAlpha=!1,this.forceSinglePass=!1,this.allowOverride=!0,this.visible=!0,this.toneMapped=!0,this.userData={},this.version=0,this._alphaTest=0}get alphaTest(){return this._alphaTest}set alphaTest(e){this._alphaTest>0!=e>0&&this.version++,this._alphaTest=e}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(e){if(e!==void 0)for(let t in e){let n=e[t];if(n===void 0){Ud(`Material: parameter '${t}' has value of undefined.`);continue}let r=this[t];if(r===void 0){Ud(`Material: '${t}' is not a property of THREE.${this.type}.`);continue}r&&r.isColor?r.set(n):r&&r.isVector2&&n&&n.isVector2||r&&r.isEuler&&n&&n.isEuler||r&&r.isVector3&&n&&n.isVector3?r.copy(n):this[t]=n}}toJSON(e){let t=e===void 0||typeof e==`string`;t&&(e={textures:{},images:{}});let n={metadata:{version:4.7,type:`Material`,generator:`Material.toJSON`}};n.uuid=this.uuid,n.type=this.type,n.blending=this.blending,n.side=this.side,n.shadowSide=this.shadowSide,n.vertexColors=this.vertexColors,n.opacity=this.opacity,n.transparent=this.transparent,n.blendSrc=this.blendSrc,n.blendDst=this.blendDst,n.blendEquation=this.blendEquation,n.blendSrcAlpha=this.blendSrcAlpha,n.blendDstAlpha=this.blendDstAlpha,n.blendEquationAlpha=this.blendEquationAlpha,n.blendColor=this.blendColor.getHex(),n.blendAlpha=this.blendAlpha,n.depthFunc=this.depthFunc,n.depthTest=this.depthTest,n.depthWrite=this.depthWrite,n.colorWrite=this.colorWrite,n.clipIntersection=this.clipIntersection,n.clipShadows=this.clipShadows,n.stencilWriteMask=this.stencilWriteMask,n.stencilFunc=this.stencilFunc,n.stencilRef=this.stencilRef,n.stencilFuncMask=this.stencilFuncMask,n.stencilFail=this.stencilFail,n.stencilZFail=this.stencilZFail,n.stencilZPass=this.stencilZPass,n.stencilWrite=this.stencilWrite,n.polygonOffset=this.polygonOffset,n.polygonOffsetFactor=this.polygonOffsetFactor,n.polygonOffsetUnits=this.polygonOffsetUnits,n.dithering=this.dithering,n.alphaTest=this.alphaTest,n.alphaHash=this.alphaHash,n.alphaToCoverage=this.alphaToCoverage,n.premultipliedAlpha=this.premultipliedAlpha,n.forceSinglePass=this.forceSinglePass,n.allowOverride=this.allowOverride,n.visible=this.visible,n.toneMapped=this.toneMapped,n.name=this.name,this.color&&this.color.isColor&&(n.color=this.color.getHex()),this.roughness!==void 0&&(n.roughness=this.roughness),this.metalness!==void 0&&(n.metalness=this.metalness),this.sheen!==void 0&&(n.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(n.sheenColor=this.sheenColor.getHex()),this.sheenRoughness!==void 0&&(n.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex()),this.emissiveIntensity!==void 0&&(n.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex()),this.specularIntensity!==void 0&&(n.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(n.specularColor=this.specularColor.getHex()),this.shininess!==void 0&&(n.shininess=this.shininess),this.clearcoat!==void 0&&(n.clearcoat=this.clearcoat),this.clearcoatRoughness!==void 0&&(n.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(n.clearcoatMap=this.clearcoatMap.toJSON(e).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(n.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(e).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(n.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(e).uuid,n.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.sheenColorMap&&this.sheenColorMap.isTexture&&(n.sheenColorMap=this.sheenColorMap.toJSON(e).uuid),this.sheenRoughnessMap&&this.sheenRoughnessMap.isTexture&&(n.sheenRoughnessMap=this.sheenRoughnessMap.toJSON(e).uuid),this.dispersion!==void 0&&(n.dispersion=this.dispersion),this.retroreflectivity!==void 0&&(n.retroreflectivity=this.retroreflectivity),this.iridescence!==void 0&&(n.iridescence=this.iridescence),this.iridescenceIOR!==void 0&&(n.iridescenceIOR=this.iridescenceIOR),this.iridescenceThicknessRange!==void 0&&(n.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(n.iridescenceMap=this.iridescenceMap.toJSON(e).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(n.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(e).uuid),this.anisotropy!==void 0&&(n.anisotropy=this.anisotropy),this.anisotropyRotation!==void 0&&(n.anisotropyRotation=this.anisotropyRotation),this.anisotropyMap&&this.anisotropyMap.isTexture&&(n.anisotropyMap=this.anisotropyMap.toJSON(e).uuid),this.map&&this.map.isTexture&&(n.map=this.map.toJSON(e).uuid),this.matcap&&this.matcap.isTexture&&(n.matcap=this.matcap.toJSON(e).uuid),this.alphaMap&&this.alphaMap.isTexture&&(n.alphaMap=this.alphaMap.toJSON(e).uuid),this.lightMap&&this.lightMap.isTexture&&(n.lightMap=this.lightMap.toJSON(e).uuid,n.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(n.aoMap=this.aoMap.toJSON(e).uuid,n.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(n.bumpMap=this.bumpMap.toJSON(e).uuid,n.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(n.normalMap=this.normalMap.toJSON(e).uuid,n.normalMapType=this.normalMapType,n.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(n.displacementMap=this.displacementMap.toJSON(e).uuid,n.displacementScale=this.displacementScale,n.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(n.roughnessMap=this.roughnessMap.toJSON(e).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(n.metalnessMap=this.metalnessMap.toJSON(e).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(n.emissiveMap=this.emissiveMap.toJSON(e).uuid),this.specularMap&&this.specularMap.isTexture&&(n.specularMap=this.specularMap.toJSON(e).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(n.specularIntensityMap=this.specularIntensityMap.toJSON(e).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(n.specularColorMap=this.specularColorMap.toJSON(e).uuid),this.envMap&&this.envMap.isTexture&&(n.envMap=this.envMap.toJSON(e).uuid,this.combine!==void 0&&(n.combine=this.combine)),this.envMapRotation!==void 0&&(n.envMapRotation=this.envMapRotation.toArray()),this.envMapIntensity!==void 0&&(n.envMapIntensity=this.envMapIntensity),this.reflectivity!==void 0&&(n.reflectivity=this.reflectivity),this.refractionRatio!==void 0&&(n.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(e).uuid),this.transmission!==void 0&&(n.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(n.transmissionMap=this.transmissionMap.toJSON(e).uuid),this.thickness!==void 0&&(n.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(n.thicknessMap=this.thicknessMap.toJSON(e).uuid),this.attenuationDistance!==void 0&&(n.attenuationDistance=this.attenuationDistance),this.attenuationColor!==void 0&&(n.attenuationColor=this.attenuationColor.getHex()),this.size!==void 0&&(n.size=this.size),this.sizeAttenuation!==void 0&&(n.sizeAttenuation=this.sizeAttenuation),Array.isArray(this.clippingPlanes)&&this.clippingPlanes.length>0&&(n.clippingPlanes=this.clippingPlanes.map(e=>e.toJSON())),this.rotation!==void 0&&(n.rotation=this.rotation),this.depthPacking!==void 0&&(n.depthPacking=this.depthPacking),this.linewidth!==void 0&&(n.linewidth=this.linewidth),this.linecap!==void 0&&(n.linecap=this.linecap),this.linejoin!==void 0&&(n.linejoin=this.linejoin),this.dashSize!==void 0&&(n.dashSize=this.dashSize),this.gapSize!==void 0&&(n.gapSize=this.gapSize),this.scale!==void 0&&(n.scale=this.scale),this.wireframe!==void 0&&(n.wireframe=this.wireframe),this.wireframeLinewidth!==void 0&&(n.wireframeLinewidth=this.wireframeLinewidth),this.wireframeLinecap!==void 0&&(n.wireframeLinecap=this.wireframeLinecap),this.wireframeLinejoin!==void 0&&(n.wireframeLinejoin=this.wireframeLinejoin),this.flatShading!==void 0&&(n.flatShading=this.flatShading),this.fog!==void 0&&(n.fog=this.fog),Object.keys(this.userData).length>0&&(n.userData=this.userData);function r(e){let t=[];for(let n in e){let r=e[n];delete r.metadata,t.push(r)}return t}if(t){let t=r(e.textures),i=r(e.images);t.length>0&&(n.textures=t),i.length>0&&(n.images=i)}return n}fromJSON(e,t){if(e.uuid!==void 0&&(this.uuid=e.uuid),e.name!==void 0&&(this.name=e.name),e.color!==void 0&&this.color!==void 0&&this.color.setHex(e.color),e.roughness!==void 0&&(this.roughness=e.roughness),e.metalness!==void 0&&(this.metalness=e.metalness),e.sheen!==void 0&&(this.sheen=e.sheen),e.sheenColor!==void 0&&(this.sheenColor=new Q().setHex(e.sheenColor)),e.sheenRoughness!==void 0&&(this.sheenRoughness=e.sheenRoughness),e.emissive!==void 0&&this.emissive!==void 0&&this.emissive.setHex(e.emissive),e.specular!==void 0&&this.specular!==void 0&&this.specular.setHex(e.specular),e.specularIntensity!==void 0&&(this.specularIntensity=e.specularIntensity),e.specularColor!==void 0&&this.specularColor!==void 0&&this.specularColor.setHex(e.specularColor),e.shininess!==void 0&&(this.shininess=e.shininess),e.clearcoat!==void 0&&(this.clearcoat=e.clearcoat),e.clearcoatRoughness!==void 0&&(this.clearcoatRoughness=e.clearcoatRoughness),e.dispersion!==void 0&&(this.dispersion=e.dispersion),e.retroreflectivity!==void 0&&(this.retroreflectivity=e.retroreflectivity),e.iridescence!==void 0&&(this.iridescence=e.iridescence),e.iridescenceIOR!==void 0&&(this.iridescenceIOR=e.iridescenceIOR),e.iridescenceThicknessRange!==void 0&&(this.iridescenceThicknessRange=e.iridescenceThicknessRange),e.transmission!==void 0&&(this.transmission=e.transmission),e.thickness!==void 0&&(this.thickness=e.thickness),e.attenuationDistance!==void 0&&(this.attenuationDistance=e.attenuationDistance),e.attenuationColor!==void 0&&this.attenuationColor!==void 0&&this.attenuationColor.setHex(e.attenuationColor),e.anisotropy!==void 0&&(this.anisotropy=e.anisotropy),e.anisotropyRotation!==void 0&&(this.anisotropyRotation=e.anisotropyRotation),e.fog!==void 0&&(this.fog=e.fog),e.flatShading!==void 0&&(this.flatShading=e.flatShading),e.blending!==void 0&&(this.blending=e.blending),e.combine!==void 0&&(this.combine=e.combine),e.side!==void 0&&(this.side=e.side),e.shadowSide!==void 0&&(this.shadowSide=e.shadowSide),e.opacity!==void 0&&(this.opacity=e.opacity),e.transparent!==void 0&&(this.transparent=e.transparent),e.alphaTest!==void 0&&(this.alphaTest=e.alphaTest),e.alphaHash!==void 0&&(this.alphaHash=e.alphaHash),e.depthFunc!==void 0&&(this.depthFunc=e.depthFunc),e.depthTest!==void 0&&(this.depthTest=e.depthTest),e.depthWrite!==void 0&&(this.depthWrite=e.depthWrite),e.colorWrite!==void 0&&(this.colorWrite=e.colorWrite),e.clippingPlanes!==void 0&&(this.clippingPlanes=e.clippingPlanes.map(e=>new Fm().fromJSON(e))),e.clipIntersection!==void 0&&(this.clipIntersection=e.clipIntersection),e.clipShadows!==void 0&&(this.clipShadows=e.clipShadows),e.depthPacking!==void 0&&(this.depthPacking=e.depthPacking),e.blendSrc!==void 0&&(this.blendSrc=e.blendSrc),e.blendDst!==void 0&&(this.blendDst=e.blendDst),e.blendEquation!==void 0&&(this.blendEquation=e.blendEquation),e.blendSrcAlpha!==void 0&&(this.blendSrcAlpha=e.blendSrcAlpha),e.blendDstAlpha!==void 0&&(this.blendDstAlpha=e.blendDstAlpha),e.blendEquationAlpha!==void 0&&(this.blendEquationAlpha=e.blendEquationAlpha),e.blendColor!==void 0&&this.blendColor!==void 0&&this.blendColor.setHex(e.blendColor),e.blendAlpha!==void 0&&(this.blendAlpha=e.blendAlpha),e.stencilWriteMask!==void 0&&(this.stencilWriteMask=e.stencilWriteMask),e.stencilFunc!==void 0&&(this.stencilFunc=e.stencilFunc),e.stencilRef!==void 0&&(this.stencilRef=e.stencilRef),e.stencilFuncMask!==void 0&&(this.stencilFuncMask=e.stencilFuncMask),e.stencilFail!==void 0&&(this.stencilFail=e.stencilFail),e.stencilZFail!==void 0&&(this.stencilZFail=e.stencilZFail),e.stencilZPass!==void 0&&(this.stencilZPass=e.stencilZPass),e.stencilWrite!==void 0&&(this.stencilWrite=e.stencilWrite),e.wireframe!==void 0&&(this.wireframe=e.wireframe),e.wireframeLinewidth!==void 0&&(this.wireframeLinewidth=e.wireframeLinewidth),e.wireframeLinecap!==void 0&&(this.wireframeLinecap=e.wireframeLinecap),e.wireframeLinejoin!==void 0&&(this.wireframeLinejoin=e.wireframeLinejoin),e.rotation!==void 0&&(this.rotation=e.rotation),e.linewidth!==void 0&&(this.linewidth=e.linewidth),e.linecap!==void 0&&(this.linecap=e.linecap),e.linejoin!==void 0&&(this.linejoin=e.linejoin),e.dashSize!==void 0&&(this.dashSize=e.dashSize),e.gapSize!==void 0&&(this.gapSize=e.gapSize),e.scale!==void 0&&(this.scale=e.scale),e.polygonOffset!==void 0&&(this.polygonOffset=e.polygonOffset),e.polygonOffsetFactor!==void 0&&(this.polygonOffsetFactor=e.polygonOffsetFactor),e.polygonOffsetUnits!==void 0&&(this.polygonOffsetUnits=e.polygonOffsetUnits),e.dithering!==void 0&&(this.dithering=e.dithering),e.alphaToCoverage!==void 0&&(this.alphaToCoverage=e.alphaToCoverage),e.premultipliedAlpha!==void 0&&(this.premultipliedAlpha=e.premultipliedAlpha),e.forceSinglePass!==void 0&&(this.forceSinglePass=e.forceSinglePass),e.allowOverride!==void 0&&(this.allowOverride=e.allowOverride),e.visible!==void 0&&(this.visible=e.visible),e.toneMapped!==void 0&&(this.toneMapped=e.toneMapped),e.userData!==void 0&&(this.userData=e.userData),e.vertexColors!==void 0&&(this.vertexColors=typeof e.vertexColors==`number`?e.vertexColors>0:e.vertexColors),e.size!==void 0&&(this.size=e.size),e.sizeAttenuation!==void 0&&(this.sizeAttenuation=e.sizeAttenuation),e.map!==void 0&&(this.map=t[e.map]||null),e.matcap!==void 0&&(this.matcap=t[e.matcap]||null),e.alphaMap!==void 0&&(this.alphaMap=t[e.alphaMap]||null),e.bumpMap!==void 0&&(this.bumpMap=t[e.bumpMap]||null),e.bumpScale!==void 0&&(this.bumpScale=e.bumpScale),e.normalMap!==void 0&&(this.normalMap=t[e.normalMap]||null),e.normalMapType!==void 0&&(this.normalMapType=e.normalMapType),e.normalScale!==void 0){let t=e.normalScale;Array.isArray(t)===!1&&(t=[t,t]),this.normalScale=new X().fromArray(t)}return e.displacementMap!==void 0&&(this.displacementMap=t[e.displacementMap]||null),e.displacementScale!==void 0&&(this.displacementScale=e.displacementScale),e.displacementBias!==void 0&&(this.displacementBias=e.displacementBias),e.roughnessMap!==void 0&&(this.roughnessMap=t[e.roughnessMap]||null),e.metalnessMap!==void 0&&(this.metalnessMap=t[e.metalnessMap]||null),e.emissiveMap!==void 0&&(this.emissiveMap=t[e.emissiveMap]||null),e.emissiveIntensity!==void 0&&(this.emissiveIntensity=e.emissiveIntensity),e.specularMap!==void 0&&(this.specularMap=t[e.specularMap]||null),e.specularIntensityMap!==void 0&&(this.specularIntensityMap=t[e.specularIntensityMap]||null),e.specularColorMap!==void 0&&(this.specularColorMap=t[e.specularColorMap]||null),e.envMap!==void 0&&(this.envMap=t[e.envMap]||null),e.envMapRotation!==void 0&&this.envMapRotation.fromArray(e.envMapRotation),e.envMapIntensity!==void 0&&(this.envMapIntensity=e.envMapIntensity),e.reflectivity!==void 0&&(this.reflectivity=e.reflectivity),e.refractionRatio!==void 0&&(this.refractionRatio=e.refractionRatio),e.lightMap!==void 0&&(this.lightMap=t[e.lightMap]||null),e.lightMapIntensity!==void 0&&(this.lightMapIntensity=e.lightMapIntensity),e.aoMap!==void 0&&(this.aoMap=t[e.aoMap]||null),e.aoMapIntensity!==void 0&&(this.aoMapIntensity=e.aoMapIntensity),e.gradientMap!==void 0&&(this.gradientMap=t[e.gradientMap]||null),e.clearcoatMap!==void 0&&(this.clearcoatMap=t[e.clearcoatMap]||null),e.clearcoatRoughnessMap!==void 0&&(this.clearcoatRoughnessMap=t[e.clearcoatRoughnessMap]||null),e.clearcoatNormalMap!==void 0&&(this.clearcoatNormalMap=t[e.clearcoatNormalMap]||null),e.clearcoatNormalScale!==void 0&&(this.clearcoatNormalScale=new X().fromArray(e.clearcoatNormalScale)),e.iridescenceMap!==void 0&&(this.iridescenceMap=t[e.iridescenceMap]||null),e.iridescenceThicknessMap!==void 0&&(this.iridescenceThicknessMap=t[e.iridescenceThicknessMap]||null),e.transmissionMap!==void 0&&(this.transmissionMap=t[e.transmissionMap]||null),e.thicknessMap!==void 0&&(this.thicknessMap=t[e.thicknessMap]||null),e.anisotropyMap!==void 0&&(this.anisotropyMap=t[e.anisotropyMap]||null),e.sheenColorMap!==void 0&&(this.sheenColorMap=t[e.sheenColorMap]||null),e.sheenRoughnessMap!==void 0&&(this.sheenRoughnessMap=t[e.sheenRoughnessMap]||null),this}clone(){return new this.constructor().copy(this)}copy(e){this.name=e.name,this.blending=e.blending,this.side=e.side,this.vertexColors=e.vertexColors,this.opacity=e.opacity,this.transparent=e.transparent,this.blendSrc=e.blendSrc,this.blendDst=e.blendDst,this.blendEquation=e.blendEquation,this.blendSrcAlpha=e.blendSrcAlpha,this.blendDstAlpha=e.blendDstAlpha,this.blendEquationAlpha=e.blendEquationAlpha,this.blendColor.copy(e.blendColor),this.blendAlpha=e.blendAlpha,this.depthFunc=e.depthFunc,this.depthTest=e.depthTest,this.depthWrite=e.depthWrite,this.stencilWriteMask=e.stencilWriteMask,this.stencilFunc=e.stencilFunc,this.stencilRef=e.stencilRef,this.stencilFuncMask=e.stencilFuncMask,this.stencilFail=e.stencilFail,this.stencilZFail=e.stencilZFail,this.stencilZPass=e.stencilZPass,this.stencilWrite=e.stencilWrite;let t=e.clippingPlanes,n=null;if(t!==null){let e=t.length;n=Array(e);for(let r=0;r!==e;++r)n[r]=t[r].clone()}return this.clippingPlanes=n,this.clipIntersection=e.clipIntersection,this.clipShadows=e.clipShadows,this.shadowSide=e.shadowSide,this.colorWrite=e.colorWrite,this.precision=e.precision,this.polygonOffset=e.polygonOffset,this.polygonOffsetFactor=e.polygonOffsetFactor,this.polygonOffsetUnits=e.polygonOffsetUnits,this.dithering=e.dithering,this.alphaTest=e.alphaTest,this.alphaHash=e.alphaHash,this.alphaToCoverage=e.alphaToCoverage,this.premultipliedAlpha=e.premultipliedAlpha,this.forceSinglePass=e.forceSinglePass,this.allowOverride=e.allowOverride,this.visible=e.visible,this.toneMapped=e.toneMapped,this.userData=JSON.parse(JSON.stringify(e.userData)),this}dispose(){this.dispatchEvent({type:`dispose`})}set needsUpdate(e){e===!0&&this.version++}},Rm=class extends Lm{constructor(e){super(),this.isSpriteMaterial=!0,this.type=`SpriteMaterial`,this.color=new Q(16777215),this.map=null,this.alphaMap=null,this.rotation=0,this.sizeAttenuation=!0,this.transparent=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.alphaMap=e.alphaMap,this.rotation=e.rotation,this.sizeAttenuation=e.sizeAttenuation,this.fog=e.fog,this}},zm,Bm=new Z,Vm=new Z,Hm=new Z,Um=new X,Wm=new X,Gm=new qf,Km=new Z,qm=new Z,Jm=new Z,Ym=new X,Xm=new X,Zm=new X,Qm=class extends bp{constructor(e=new Rm){if(super(),this.isSprite=!0,this.type=`Sprite`,zm===void 0){zm=new Om;let e=new km(new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]),5);zm.setIndex([0,1,2,0,2,3]),zm.setAttribute(`position`,new jm(e,3,0,!1)),zm.setAttribute(`uv`,new jm(e,2,3,!1))}this.geometry=zm,this.material=e,this.center=new X(.5,.5),this.count=1}intersectsFrustum(e){return e.intersectsSprite(this)}raycast(e,t){e.camera===null&&Wd(`Sprite: "Raycaster.camera" needs to be set in order to raycast against sprites.`),Vm.setFromMatrixScale(this.matrixWorld),Gm.copy(e.camera.matrixWorld),this.modelViewMatrix.multiplyMatrices(e.camera.matrixWorldInverse,this.matrixWorld),Hm.setFromMatrixPosition(this.modelViewMatrix),e.camera.isPerspectiveCamera&&this.material.sizeAttenuation===!1&&Vm.multiplyScalar(-Hm.z);let n=this.material.rotation,r,i;n!==0&&(i=Math.cos(n),r=Math.sin(n));let a=this.center;$m(Km.set(-.5,-.5,0),Hm,a,Vm,r,i),$m(qm.set(.5,-.5,0),Hm,a,Vm,r,i),$m(Jm.set(.5,.5,0),Hm,a,Vm,r,i),Ym.set(0,0),Xm.set(1,0),Zm.set(1,1);let o=e.ray.intersectTriangle(Km,qm,Jm,!1,Bm);if(o===null&&($m(qm.set(-.5,.5,0),Hm,a,Vm,r,i),Xm.set(0,1),o=e.ray.intersectTriangle(Km,Jm,qm,!1,Bm),o===null))return;let s=e.ray.origin.distanceTo(Bm);s<e.near||s>e.far||t.push({distance:s,point:Bm.clone(),uv:Up.getInterpolation(Bm,Km,qm,Jm,Ym,Xm,Zm,new X),face:null,object:this})}copy(e,t){return super.copy(e,t),e.center!==void 0&&this.center.copy(e.center),this.material=e.material,this}};function $m(e,t,n,r,i,a){Um.subVectors(e,n).addScalar(.5).multiply(r),i===void 0?Wm.copy(Um):(Wm.x=a*Um.x-i*Um.y,Wm.y=i*Um.x+a*Um.y),e.copy(t),e.x+=Wm.x,e.y+=Wm.y,e.applyMatrix4(Gm)}var eh=new Z,th=new Z,nh=new Z,rh=new Z,ih=class{constructor(e=new Z,t=new Z(0,0,-1)){this.origin=e,this.direction=t}set(e,t){return this.origin.copy(e),this.direction.copy(t),this}copy(e){return this.origin.copy(e.origin),this.direction.copy(e.direction),this}at(e,t){return t.copy(this.origin).addScaledVector(this.direction,e)}lookAt(e){return this.direction.copy(e).sub(this.origin).normalize(),this}recast(e){return this.origin.copy(this.at(e,eh)),this}closestPointToPoint(e,t){t.subVectors(e,this.origin);let n=t.dot(this.direction);return n<0?t.copy(this.origin):t.copy(this.origin).addScaledVector(this.direction,n)}distanceToPoint(e){return Math.sqrt(this.distanceSqToPoint(e))}distanceSqToPoint(e){let t=eh.subVectors(e,this.origin).dot(this.direction);return t<0?this.origin.distanceToSquared(e):(eh.copy(this.origin).addScaledVector(this.direction,t),eh.distanceToSquared(e))}distanceSqToSegment(e,t,n,r){th.copy(e).add(t).multiplyScalar(.5),nh.copy(t).sub(e).normalize(),rh.copy(this.origin).sub(th);let i=e.distanceTo(t)*.5,a=-this.direction.dot(nh),o=rh.dot(this.direction),s=-rh.dot(nh),c=rh.lengthSq(),l=Math.abs(1-a*a),u,d,f,p;if(l>0){if(u=a*s-o,d=a*o-s,p=i*l,u>=0){if(d>=-p){if(d<=p){let e=1/l;u*=e,d*=e,f=u*(u+a*d+2*o)+d*(a*u+d+2*s)+c}else d=i,u=Math.max(0,-(a*d+o)),f=-u*u+d*(d+2*s)+c}else d=-i,u=Math.max(0,-(a*d+o)),f=-u*u+d*(d+2*s)+c}else d<=-p?(u=Math.max(0,-(-a*i+o)),d=u>0?-i:Math.min(Math.max(-i,-s),i),f=-u*u+d*(d+2*s)+c):d<=p?(u=0,d=Math.min(Math.max(-i,-s),i),f=d*(d+2*s)+c):(u=Math.max(0,-(a*i+o)),d=u>0?i:Math.min(Math.max(-i,-s),i),f=-u*u+d*(d+2*s)+c)}else d=a>0?-i:i,u=Math.max(0,-(a*d+o)),f=-u*u+d*(d+2*s)+c;return n&&n.copy(this.origin).addScaledVector(this.direction,u),r&&r.copy(th).addScaledVector(nh,d),f}intersectSphere(e,t){if(e.radius<0)return null;eh.subVectors(e.center,this.origin);let n=eh.dot(this.direction),r=eh.dot(eh)-n*n,i=e.radius*e.radius;if(r>i)return null;let a=Math.sqrt(i-r),o=n-a,s=n+a;return s<0?null:o<0?this.at(s,t):this.at(o,t)}intersectsSphere(e){return e.radius<0?!1:this.distanceSqToPoint(e.center)<=e.radius*e.radius}distanceToPlane(e){let t=e.normal.dot(this.direction);if(t===0)return e.distanceToPoint(this.origin)===0?0:null;let n=-(this.origin.dot(e.normal)+e.constant)/t;return n>=0?n:null}intersectPlane(e,t){let n=this.distanceToPlane(e);return n===null?null:this.at(n,t)}intersectsPlane(e){let t=e.distanceToPoint(this.origin);return t===0||e.normal.dot(this.direction)*t<0}intersectBox(e,t){let n,r,i,a,o,s,c=1/this.direction.x,l=1/this.direction.y,u=1/this.direction.z,d=this.origin;return c>=0?(n=(e.min.x-d.x)*c,r=(e.max.x-d.x)*c):(n=(e.max.x-d.x)*c,r=(e.min.x-d.x)*c),l>=0?(i=(e.min.y-d.y)*l,a=(e.max.y-d.y)*l):(i=(e.max.y-d.y)*l,a=(e.min.y-d.y)*l),n>a||i>r||((i>n||isNaN(n))&&(n=i),(a<r||isNaN(r))&&(r=a),u>=0?(o=(e.min.z-d.z)*u,s=(e.max.z-d.z)*u):(o=(e.max.z-d.z)*u,s=(e.min.z-d.z)*u),n>s||o>r)||((o>n||n!==n)&&(n=o),(s<r||r!==r)&&(r=s),r<0)?null:this.at(n>=0?n:r,t)}intersectsBox(e){return this.intersectBox(e,eh)!==null}intersectTriangle(e,t,n,r,i){let a=this.origin,o=this.direction,s=o.x,c=o.y,l=o.z,u=e.x-a.x,d=e.y-a.y,f=e.z-a.z,p=t.x-a.x,m=t.y-a.y,h=t.z-a.z,g=n.x-a.x,_=n.y-a.y,v=n.z-a.z,y=Math.abs(s),b=Math.abs(c),x=Math.abs(l),S,C,w,T,E,D,O,k,A,j,M,N;if(y>=b&&y>=x?(w=s,D=u,A=p,N=g,s>=0?(S=c,C=l,T=d,E=f,O=m,k=h,j=_,M=v):(S=l,C=c,T=f,E=d,O=h,k=m,j=v,M=_)):b>=x?(w=c,D=d,A=m,N=_,c>=0?(S=l,C=s,T=f,E=u,O=h,k=p,j=v,M=g):(S=s,C=l,T=u,E=f,O=p,k=h,j=g,M=v)):(w=l,D=f,A=h,N=v,l>=0?(S=s,C=c,T=u,E=d,O=p,k=m,j=g,M=_):(S=c,C=s,T=d,E=u,O=m,k=p,j=_,M=g)),w===0)return null;let P=S/w,F=C/w,I=1/w,L=T-P*D,ee=E-F*D,R=O-P*A,te=k-F*A,z=j-P*N,ne=M-F*N,B=z*te-ne*R,V=L*ne-ee*z,re=R*ee-te*L;if(r){if(B<0||V<0||re<0)return null}else if((B<0||V<0||re<0)&&(B>0||V>0||re>0))return null;let ie=B+V+re;if(ie===0)return null;let ae=I*(B*D+V*A+re*N);return(ie>0?ae<0:ae>0)?null:this.at(ae/ie,i)}applyMatrix4(e){return this.origin.applyMatrix4(e),this.direction.transformDirection(e),this}equals(e){return e.origin.equals(this.origin)&&e.direction.equals(this.direction)}clone(){return new this.constructor().copy(this)}},ah=class extends Lm{constructor(e){super(),this.isMeshBasicMaterial=!0,this.type=`MeshBasicMaterial`,this.color=new Q(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new rp,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=`round`,this.wireframeLinejoin=`round`,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.fog=e.fog,this}},oh=new qf,sh=new ih,ch=new bm,lh=new Z,uh=new Z,dh=new Z,fh=new Z,ph=new Z,mh=new Z,hh=new Z,gh=new Z,_h=class extends bp{constructor(e=new Om,t=new ah){super(),this.isMesh=!0,this.type=`Mesh`,this.geometry=e,this.material=t,this.morphTargetDictionary=void 0,this.morphTargetInfluences=void 0,this.count=1,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),e.morphTargetInfluences!==void 0&&(this.morphTargetInfluences=e.morphTargetInfluences.slice()),e.morphTargetDictionary!==void 0&&(this.morphTargetDictionary=Object.assign({},e.morphTargetDictionary)),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}updateMorphTargets(){let e=this.geometry.morphAttributes,t=Object.keys(e);if(t.length>0){let n=e[t[0]];if(n!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;e<t;e++){let t=n[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[t]=e}}}}getVertexPosition(e,t){let n=this.geometry,r=n.attributes.position,i=n.morphAttributes.position,a=n.morphTargetsRelative;t.fromBufferAttribute(r,e);let o=this.morphTargetInfluences;if(i&&o){mh.set(0,0,0);for(let n=0,r=i.length;n<r;n++){let r=o[n],s=i[n];r!==0&&(ph.fromBufferAttribute(s,e),a?mh.addScaledVector(ph,r):mh.addScaledVector(ph.sub(t),r))}t.add(mh)}return t}intersectsFrustum(e){return e.intersectsObject(this)}raycast(e,t){let n=this.geometry,r=this.material,i=this.matrixWorld;r!==void 0&&(n.boundingSphere===null&&n.computeBoundingSphere(),ch.copy(n.boundingSphere),ch.applyMatrix4(i),sh.copy(e.ray).recast(e.near),!(ch.containsPoint(sh.origin)===!1&&(sh.intersectSphere(ch,lh)===null||sh.origin.distanceToSquared(lh)>(e.far-e.near)**2))&&(oh.copy(i).invert(),sh.copy(e.ray).applyMatrix4(oh),(n.boundingBox===null||sh.intersectsBox(n.boundingBox)!==!1)&&this._computeIntersections(e,t,sh)))}_computeIntersections(e,t,n){let r,i=this.geometry,a=this.material,o=i.index,s=i.attributes.position,c=i.attributes.uv,l=i.attributes.uv1,u=i.attributes.normal,d=i.groups,f=i.drawRange;if(o!==null){if(Array.isArray(a))for(let i=0,s=d.length;i<s;i++){let s=d[i],p=a[s.materialIndex],m=Math.max(s.start,f.start),h=Math.min(o.count,Math.min(s.start+s.count,f.start+f.count));for(let i=m,a=h;i<a;i+=3){let a=o.getX(i),d=o.getX(i+1),f=o.getX(i+2);r=yh(this,p,e,n,c,l,u,a,d,f),r&&(r.faceIndex=Math.floor(i/3),r.face.materialIndex=s.materialIndex,t.push(r))}}else{let i=Math.max(0,f.start),s=Math.min(o.count,f.start+f.count);for(let d=i,f=s;d<f;d+=3){let i=o.getX(d),s=o.getX(d+1),f=o.getX(d+2);r=yh(this,a,e,n,c,l,u,i,s,f),r&&(r.faceIndex=Math.floor(d/3),t.push(r))}}}else if(s!==void 0){if(Array.isArray(a))for(let i=0,o=d.length;i<o;i++){let o=d[i],p=a[o.materialIndex],m=Math.max(o.start,f.start),h=Math.min(s.count,Math.min(o.start+o.count,f.start+f.count));for(let i=m,a=h;i<a;i+=3){let a=i,s=i+1,d=i+2;r=yh(this,p,e,n,c,l,u,a,s,d),r&&(r.faceIndex=Math.floor(i/3),r.face.materialIndex=o.materialIndex,t.push(r))}}else{let i=Math.max(0,f.start),o=Math.min(s.count,f.start+f.count);for(let s=i,d=o;s<d;s+=3){let i=s,o=s+1,d=s+2;r=yh(this,a,e,n,c,l,u,i,o,d),r&&(r.faceIndex=Math.floor(s/3),t.push(r))}}}}};function vh(e,t,n,r,i,a,o,s){let c;if(c=t.side===1?r.intersectTriangle(o,a,i,!0,s):r.intersectTriangle(i,a,o,t.side===0,s),c===null)return null;gh.copy(s),gh.applyMatrix4(e.matrixWorld);let l=n.ray.origin.distanceTo(gh);return l<n.near||l>n.far?null:{distance:l,point:gh.clone(),object:e}}function yh(e,t,n,r,i,a,o,s,c,l){e.getVertexPosition(s,uh),e.getVertexPosition(c,dh),e.getVertexPosition(l,fh);let u=vh(e,t,n,r,uh,dh,fh,hh);if(u){let e=new Z;Up.getBarycoord(hh,uh,dh,fh,e),i&&(u.uv=Up.getInterpolatedAttribute(i,s,c,l,e,new X)),a&&(u.uv1=Up.getInterpolatedAttribute(a,s,c,l,e,new X)),o&&(u.normal=Up.getInterpolatedAttribute(o,s,c,l,e,new Z),u.normal.dot(r.direction)>0&&u.normal.multiplyScalar(-1));let t={a:s,b:c,c:l,normal:new Z,materialIndex:0};Up.getNormal(uh,dh,fh,t.normal),u.face=t,u.barycoord=e}return u}var bh=class extends Vf{constructor(e=null,t=1,n=1,r,i,a,o,s,c=uu,l=uu,u,d){super(null,a,o,s,c,l,r,i,u,d),this.isDataTexture=!0,this.image={data:e,width:t,height:n},this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}},xh=class extends pm{constructor(e,t,n,r=1){super(e,t,n),this.isInstancedBufferAttribute=!0,this.meshPerAttribute=r}copy(e){return super.copy(e),this.meshPerAttribute=e.meshPerAttribute,this}toJSON(){let e=super.toJSON();return e.meshPerAttribute=this.meshPerAttribute,e.isInstancedBufferAttribute=!0,e}},Sh=new qf,Ch=new qf,wh=[],Th=new Wp,Eh=new qf,Dh=new _h,Oh=new bm,kh=class extends _h{constructor(e,t,n){super(e,t),this.isInstancedMesh=!0,this.instanceMatrix=new xh(new Float32Array(n*16),16),this.instanceColor=null,this.morphTexture=null,this.count=n,this.boundingBox=null,this.boundingSphere=null;for(let e=0;e<n;e++)this.setMatrixAt(e,Eh)}computeBoundingBox(){let e=this.geometry,t=this.count;this.boundingBox===null&&(this.boundingBox=new Wp),e.boundingBox===null&&e.computeBoundingBox(),this.boundingBox.makeEmpty();for(let n=0;n<t;n++)this.getMatrixAt(n,Sh),Th.copy(e.boundingBox).applyMatrix4(Sh),this.boundingBox.union(Th)}computeBoundingSphere(){let e=this.geometry,t=this.count;this.boundingSphere===null&&(this.boundingSphere=new bm),e.boundingSphere===null&&e.computeBoundingSphere(),this.boundingSphere.makeEmpty();for(let n=0;n<t;n++)this.getMatrixAt(n,Sh),Oh.copy(e.boundingSphere).applyMatrix4(Sh),this.boundingSphere.union(Oh)}copy(e,t){return super.copy(e,t),this.instanceMatrix.copy(e.instanceMatrix),e.morphTexture!==null&&(this.morphTexture=e.morphTexture.clone()),e.instanceColor!==null&&(this.instanceColor=e.instanceColor.clone()),this.count=e.count,e.boundingBox!==null&&(this.boundingBox=e.boundingBox.clone()),e.boundingSphere!==null&&(this.boundingSphere=e.boundingSphere.clone()),this}getColorAt(e,t){return this.instanceColor===null?t.setRGB(1,1,1):t.fromArray(this.instanceColor.array,e*3)}getMatrixAt(e,t){return t.fromArray(this.instanceMatrix.array,e*16)}getMorphAt(e,t){let n=t.morphTargetInfluences,r=this.morphTexture.source.data.data,i=e*(n.length+1)+1;for(let e=0;e<n.length;e++)n[e]=r[i+e]}raycast(e,t){let n=this.matrixWorld,r=this.count;if(Dh.geometry=this.geometry,Dh.material=this.material,Dh.material!==void 0&&(this.boundingSphere===null&&this.computeBoundingSphere(),Oh.copy(this.boundingSphere),Oh.applyMatrix4(n),e.ray.intersectsSphere(Oh)!==!1))for(let i=0;i<r;i++){this.getMatrixAt(i,Sh),Ch.multiplyMatrices(n,Sh),Dh.matrixWorld=Ch,Dh.raycast(e,wh);for(let e=0,n=wh.length;e<n;e++){let n=wh[e];n.instanceId=i,n.object=this,t.push(n)}wh.length=0}}setColorAt(e,t){return this.instanceColor===null&&(this.instanceColor=new xh(new Float32Array(this.instanceMatrix.count*3).fill(1),3)),t.toArray(this.instanceColor.array,e*3),this}setMatrixAt(e,t){return t.toArray(this.instanceMatrix.array,e*16),this}setMorphAt(e,t){let n=t.morphTargetInfluences,r=n.length+1;this.morphTexture===null&&(this.morphTexture=new bh(new Float32Array(r*this.count),r,this.count,Pu,Su));let i=this.morphTexture.source.data.data,a=0;for(let e=0;e<n.length;e++)a+=n[e];let o=this.geometry.morphTargetsRelative?1:1-a,s=r*e;return i[s]=o,i.set(n,s+1),this}updateMorphTargets(){}dispose(){super.dispose(),this.morphTexture!==null&&(this.morphTexture.dispose(),this.morphTexture=null)}},Ah=new bm,jh=new X(.5,.5),Mh=new Z,Nh=class{constructor(e=new Fm,t=new Fm,n=new Fm,r=new Fm,i=new Fm,a=new Fm){this.planes=[e,t,n,r,i,a]}set(e,t,n,r,i,a){let o=this.planes;return o[0].copy(e),o[1].copy(t),o[2].copy(n),o[3].copy(r),o[4].copy(i),o[5].copy(a),this}copy(e){let t=this.planes;for(let n=0;n<6;n++)t[n].copy(e.planes[n]);return this}setFromProjectionMatrix(e,t=Fd,n=!1){let r=this.planes,i=e.elements,a=i[0],o=i[1],s=i[2],c=i[3],l=i[4],u=i[5],d=i[6],f=i[7],p=i[8],m=i[9],h=i[10],g=i[11],_=i[12],v=i[13],y=i[14],b=i[15];if(r[0].setComponents(c-a,f-l,g-p,b-_).normalize(),r[1].setComponents(c+a,f+l,g+p,b+_).normalize(),r[2].setComponents(c+o,f+u,g+m,b+v).normalize(),r[3].setComponents(c-o,f-u,g-m,b-v).normalize(),n)r[4].setComponents(s,d,h,y).normalize(),r[5].setComponents(c-s,f-d,g-h,b-y).normalize();else if(r[4].setComponents(c-s,f-d,g-h,b-y).normalize(),t===2e3)r[5].setComponents(c+s,f+d,g+h,b+y).normalize();else if(t===2001)r[5].setComponents(s,d,h,y).normalize();else throw Error(`THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: `+t);return this}intersectsObject(e){if(e.boundingSphere!==void 0)e.boundingSphere===null&&e.computeBoundingSphere(),Ah.copy(e.boundingSphere).applyMatrix4(e.matrixWorld);else{let t=e.geometry;t.boundingSphere===null&&t.computeBoundingSphere(),Ah.copy(t.boundingSphere).applyMatrix4(e.matrixWorld)}return this.intersectsSphere(Ah)}intersectsSprite(e){return Ah.center.set(0,0,0),Ah.radius=.7071067811865476+jh.distanceTo(e.center),Ah.applyMatrix4(e.matrixWorld),this.intersectsSphere(Ah)}intersectsSphere(e){let t=this.planes,n=e.center,r=-e.radius;for(let e=0;e<6;e++)if(t[e].distanceToPoint(n)<r)return!1;return!0}intersectsBox(e){let t=this.planes;for(let n=0;n<6;n++){let r=t[n];if(Mh.x=r.normal.x>0?e.max.x:e.min.x,Mh.y=r.normal.y>0?e.max.y:e.min.y,Mh.z=r.normal.z>0?e.max.z:e.min.z,r.distanceToPoint(Mh)<0)return!1}return!0}containsPoint(e){let t=this.planes;for(let n=0;n<6;n++)if(t[n].distanceToPoint(e)<0)return!1;return!0}clone(){return new this.constructor().copy(this)}},Ph=class extends Lm{constructor(e){super(),this.isLineBasicMaterial=!0,this.type=`LineBasicMaterial`,this.color=new Q(16777215),this.map=null,this.linewidth=1,this.linecap=`round`,this.linejoin=`round`,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.linewidth=e.linewidth,this.linecap=e.linecap,this.linejoin=e.linejoin,this.fog=e.fog,this}},Fh=new Z,Ih=new Z,Lh=new qf,Rh=new ih,zh=new bm,Bh=new Z,Vh=new Z,Hh=class extends bp{constructor(e=new Om,t=new Ph){super(),this.isLine=!0,this.type=`Line`,this.geometry=e,this.material=t,this.morphTargetDictionary=void 0,this.morphTargetInfluences=void 0,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}computeLineDistances(){let e=this.geometry;if(e.index===null){let t=e.attributes.position,n=[0];for(let e=1,r=t.count;e<r;e++)Fh.fromBufferAttribute(t,e-1),Ih.fromBufferAttribute(t,e),n[e]=n[e-1],n[e]+=Fh.distanceTo(Ih);e.setAttribute(`lineDistance`,new gm(n,1))}else Ud(`Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.`);return this}intersectsFrustum(e){return e.intersectsObject(this)}raycast(e,t){let n=this.geometry,r=this.matrixWorld,i=e.params.Line.threshold,a=n.drawRange;if(n.boundingSphere===null&&n.computeBoundingSphere(),zh.copy(n.boundingSphere),zh.applyMatrix4(r),zh.radius+=i,e.ray.intersectsSphere(zh)===!1)return;Lh.copy(r).invert(),Rh.copy(e.ray).applyMatrix4(Lh);let o=i/((this.scale.x+this.scale.y+this.scale.z)/3),s=o*o,c=this.isLineSegments?2:1,l=n.index,u=n.attributes.position;if(l!==null){let n=Math.max(0,a.start),r=Math.min(l.count,a.start+a.count);for(let i=n,a=r-1;i<a;i+=c){let n=l.getX(i),r=l.getX(i+1),a=Uh(this,e,Rh,s,n,r,i);a&&t.push(a)}if(this.isLineLoop){let i=l.getX(r-1),a=l.getX(n),o=Uh(this,e,Rh,s,i,a,r-1);o&&t.push(o)}}else{let n=Math.max(0,a.start),r=Math.min(u.count,a.start+a.count);for(let i=n,a=r-1;i<a;i+=c){let n=Uh(this,e,Rh,s,i,i+1,i);n&&t.push(n)}if(this.isLineLoop){let i=Uh(this,e,Rh,s,r-1,n,r-1);i&&t.push(i)}}}updateMorphTargets(){let e=this.geometry.morphAttributes,t=Object.keys(e);if(t.length>0){let n=e[t[0]];if(n!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;e<t;e++){let t=n[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[t]=e}}}}};function Uh(e,t,n,r,i,a,o){let s=e.geometry.attributes.position;if(Fh.fromBufferAttribute(s,i),Ih.fromBufferAttribute(s,a),n.distanceSqToSegment(Fh,Ih,Bh,Vh)>r)return;Bh.applyMatrix4(e.matrixWorld);let c=t.ray.origin.distanceTo(Bh);if(!(c<t.near||c>t.far))return{distance:c,point:Vh.clone().applyMatrix4(e.matrixWorld),index:o,face:null,faceIndex:null,barycoord:null,object:e}}var Wh=class extends Lm{constructor(e){super(),this.isPointsMaterial=!0,this.type=`PointsMaterial`,this.color=new Q(16777215),this.map=null,this.alphaMap=null,this.size=1,this.sizeAttenuation=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.alphaMap=e.alphaMap,this.size=e.size,this.sizeAttenuation=e.sizeAttenuation,this.fog=e.fog,this}},Gh=new qf,Kh=new ih,qh=new bm,Jh=new Z,Yh=class extends bp{constructor(e=new Om,t=new Wh){super(),this.isPoints=!0,this.type=`Points`,this.geometry=e,this.material=t,this.morphTargetDictionary=void 0,this.morphTargetInfluences=void 0,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}intersectsFrustum(e){return e.intersectsObject(this)}raycast(e,t){let n=this.geometry,r=this.matrixWorld,i=e.params.Points.threshold,a=n.drawRange;if(n.boundingSphere===null&&n.computeBoundingSphere(),qh.copy(n.boundingSphere),qh.applyMatrix4(r),qh.radius+=i,e.ray.intersectsSphere(qh)===!1)return;Gh.copy(r).invert(),Kh.copy(e.ray).applyMatrix4(Gh);let o=i/((this.scale.x+this.scale.y+this.scale.z)/3),s=o*o,c=n.index,l=n.attributes.position;if(c!==null){let n=Math.max(0,a.start),i=Math.min(c.count,a.start+a.count);for(let a=n,o=i;a<o;a++){let n=c.getX(a);Jh.fromBufferAttribute(l,n),Xh(Jh,n,s,r,e,t,this)}}else{let n=Math.max(0,a.start),i=Math.min(l.count,a.start+a.count);for(let a=n,o=i;a<o;a++)Jh.fromBufferAttribute(l,a),Xh(Jh,a,s,r,e,t,this)}}updateMorphTargets(){let e=this.geometry.morphAttributes,t=Object.keys(e);if(t.length>0){let n=e[t[0]];if(n!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;e<t;e++){let t=n[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[t]=e}}}}};function Xh(e,t,n,r,i,a,o){let s=Kh.distanceSqToPoint(e);if(s<n){let n=new Z;Kh.closestPointToPoint(e,n),n.applyMatrix4(r);let c=i.ray.origin.distanceTo(n);if(c<i.near||c>i.far)return;a.push({distance:c,distanceToRay:Math.sqrt(s),point:n,index:t,face:null,faceIndex:null,barycoord:null,object:o})}}var Zh=class extends Vf{constructor(e=[],t=301,n,r,i,a,o,s,c,l){super(e,t,n,r,i,a,o,s,c,l),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(e){this.image=e}},Qh=class extends Vf{constructor(e,t,n,r,i,a,o,s,c){super(e,t,n,r,i,a,o,s,c),this.isCanvasTexture=!0,this.needsUpdate=!0}},$h=class extends Vf{constructor(e,t,n=xu,r,i,a,o=uu,s=uu,c,l=Mu,u=1){if(l!==1026&&l!==1027)throw Error(`THREE.DepthTexture: format must be either THREE.DepthFormat or THREE.DepthStencilFormat`);super({width:e,height:t,depth:u},r,i,a,o,s,l,n,c),this.isDepthTexture=!0,this.flipY=!1,this.generateMipmaps=!1,this.compareFunction=null}copy(e){return super.copy(e),this.source=new Lf(Object.assign({},e.image)),this.compareFunction=e.compareFunction,this}toJSON(e){let t=super.toJSON(e);return t.compareFunction=this.compareFunction,t}},eg=class extends $h{constructor(e,t=xu,n=301,r,i,a=uu,o=uu,s,c=Mu){let l={width:e,height:e,depth:1},u=[l,l,l,l,l,l];super(e,e,t,n,r,i,a,o,s,c),this.image=u,this.isCubeDepthTexture=!0,this.isCubeTexture=!0}get images(){return this.image}set images(e){this.image=e}},tg=class extends Vf{constructor(e=null){super(),this.sourceTexture=e,this.isExternalTexture=!0}copy(e){return super.copy(e),this.sourceTexture=e.sourceTexture,this}},ng=class e extends Om{constructor(e=1,t=1,n=1,r=1,i=1,a=1){super(),this.type=`BoxGeometry`,this.parameters={width:e,height:t,depth:n,widthSegments:r,heightSegments:i,depthSegments:a};let o=this;r=Math.floor(r),i=Math.floor(i),a=Math.floor(a);let s=[],c=[],l=[],u=[],d=0,f=0;p(`z`,`y`,`x`,-1,-1,n,t,e,a,i,0),p(`z`,`y`,`x`,1,-1,n,t,-e,a,i,1),p(`x`,`z`,`y`,1,1,e,n,t,r,a,2),p(`x`,`z`,`y`,1,-1,e,n,-t,r,a,3),p(`x`,`y`,`z`,1,-1,e,t,n,r,i,4),p(`x`,`y`,`z`,-1,-1,e,t,-n,r,i,5),this.setIndex(s),this.setAttribute(`position`,new gm(c,3)),this.setAttribute(`normal`,new gm(l,3)),this.setAttribute(`uv`,new gm(u,2));function p(e,t,n,r,i,a,p,m,h,g,_){let v=a/h,y=p/g,b=a/2,x=p/2,S=m/2,C=h+1,w=g+1,T=0,E=0,D=new Z;for(let a=0;a<w;a++){let o=a*y-x;for(let s=0;s<C;s++)D[e]=(s*v-b)*r,D[t]=o*i,D[n]=S,c.push(D.x,D.y,D.z),D[e]=0,D[t]=0,D[n]=m>0?1:-1,l.push(D.x,D.y,D.z),u.push(s/h),u.push(1-a/g),T+=1}for(let e=0;e<g;e++)for(let t=0;t<h;t++){let n=d+t+C*e,r=d+t+C*(e+1),i=d+(t+1)+C*(e+1),a=d+(t+1)+C*e;s.push(n,r,a),s.push(r,i,a),E+=6}o.addGroup(f,E,_),f+=E,d+=T}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.width,t.height,t.depth,t.widthSegments,t.heightSegments,t.depthSegments)}},rg=class e extends Om{constructor(e=1,t=1,n=1,r=32,i=1,a=!1,o=0,s=Math.PI*2){super(),this.type=`CylinderGeometry`,this.parameters={radiusTop:e,radiusBottom:t,height:n,radialSegments:r,heightSegments:i,openEnded:a,thetaStart:o,thetaLength:s};let c=this;r=Math.floor(r),i=Math.floor(i);let l=[],u=[],d=[],f=[],p=0,m=[],h=n/2,g=0;_(),a===!1&&(e>0&&v(!0),t>0&&v(!1)),this.setIndex(l),this.setAttribute(`position`,new gm(u,3)),this.setAttribute(`normal`,new gm(d,3)),this.setAttribute(`uv`,new gm(f,2));function _(){let a=new Z,_=new Z,v=0,y=(t-e)/n;for(let c=0;c<=i;c++){let l=[],g=c/i,v=g*(t-e)+e;for(let e=0;e<=r;e++){let t=e/r,i=t*s+o,c=Math.sin(i),m=Math.cos(i);_.x=v*c,_.y=-g*n+h,_.z=v*m,u.push(_.x,_.y,_.z),a.set(c,y,m).normalize(),d.push(a.x,a.y,a.z),f.push(t,1-g),l.push(p++)}m.push(l)}for(let n=0;n<r;n++)for(let r=0;r<i;r++){let a=m[r][n],o=m[r+1][n],s=m[r+1][n+1],c=m[r][n+1];(e>0||r!==0)&&(l.push(a,o,c),v+=3),(t>0||r!==i-1)&&(l.push(o,s,c),v+=3)}c.addGroup(g,v,0),g+=v}function v(n){let i=p,a=new X,m=new Z,_=0,v=n===!0?e:t,y=n===!0?1:-1;for(let e=1;e<=r;e++)u.push(0,h*y,0),d.push(0,y,0),f.push(.5,.5),p++;let b=p;for(let e=0;e<=r;e++){let t=e/r*s+o,n=Math.cos(t),i=Math.sin(t);m.x=v*i,m.y=h*y,m.z=v*n,u.push(m.x,m.y,m.z),d.push(0,y,0),a.x=n*.5+.5,a.y=i*.5*y+.5,f.push(a.x,a.y),p++}for(let e=0;e<r;e++){let t=i+e,r=b+e;n===!0?l.push(r,r+1,t):l.push(r+1,r,t),_+=3}c.addGroup(g,_,n===!0?1:2),g+=_}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.radiusTop,t.radiusBottom,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}},ig=new Z,ag=new Z,og=new Z,sg=new Up,cg=class extends Om{constructor(e=null,t=1){if(super(),this.type=`EdgesGeometry`,this.parameters={geometry:e,thresholdAngle:t},e!==null){let n=1e4,r=Math.cos(Zd*t),i=e.getIndex(),a=e.getAttribute(`position`),o=i?i.count:a.count,s=[0,0,0],c=[`a`,`b`,`c`],l=[,,,],u={},d=[];for(let e=0;e<o;e+=3){i?(s[0]=i.getX(e),s[1]=i.getX(e+1),s[2]=i.getX(e+2)):(s[0]=e,s[1]=e+1,s[2]=e+2);let{a:t,b:o,c:f}=sg;if(t.fromBufferAttribute(a,s[0]),o.fromBufferAttribute(a,s[1]),f.fromBufferAttribute(a,s[2]),sg.getNormal(og),l[0]=`${Math.round(t.x*n)},${Math.round(t.y*n)},${Math.round(t.z*n)}`,l[1]=`${Math.round(o.x*n)},${Math.round(o.y*n)},${Math.round(o.z*n)}`,l[2]=`${Math.round(f.x*n)},${Math.round(f.y*n)},${Math.round(f.z*n)}`,l[0]!==l[1]&&l[1]!==l[2]&&l[2]!==l[0])for(let e=0;e<3;e++){let t=(e+1)%3,n=l[e],i=l[t],a=sg[c[e]],o=sg[c[t]],f=`${n}_${i}`,p=`${i}_${n}`;p in u&&u[p]?(og.dot(u[p].normal)<=r&&(d.push(a.x,a.y,a.z),d.push(o.x,o.y,o.z)),u[p]=null):f in u||(u[f]={index0:s[e],index1:s[t],normal:og.clone()})}}for(let e in u)if(u[e]){let{index0:t,index1:n}=u[e];ig.fromBufferAttribute(a,t),ag.fromBufferAttribute(a,n),d.push(ig.x,ig.y,ig.z),d.push(ag.x,ag.y,ag.z)}this.setAttribute(`position`,new gm(d,3))}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}},lg=class e extends Om{constructor(e=1,t=1,n=1,r=1){super(),this.type=`PlaneGeometry`,this.parameters={width:e,height:t,widthSegments:n,heightSegments:r};let i=e/2,a=t/2,o=Math.floor(n),s=Math.floor(r),c=o+1,l=s+1,u=e/o,d=t/s,f=[],p=[],m=[],h=[];for(let e=0;e<l;e++){let t=e*d-a;for(let n=0;n<c;n++){let r=n*u-i;p.push(r,-t,0),m.push(0,0,1),h.push(n/o),h.push(1-e/s)}}for(let e=0;e<s;e++)for(let t=0;t<o;t++){let n=t+c*e,r=t+c*(e+1),i=t+1+c*(e+1),a=t+1+c*e;f.push(n,r,a),f.push(r,i,a)}this.setIndex(f),this.setAttribute(`position`,new gm(p,3)),this.setAttribute(`normal`,new gm(m,3)),this.setAttribute(`uv`,new gm(h,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.width,t.height,t.widthSegments,t.heightSegments)}},ug=class extends Om{constructor(e=null){if(super(),this.type=`WireframeGeometry`,this.parameters={geometry:e},e!==null){let t=[],n=new Set,r=new Z,i=new Z;if(e.index!==null){let a=e.attributes.position,o=e.index,s=e.groups;s.length===0&&(s=[{start:0,count:o.count,materialIndex:0}]);for(let e=0,c=s.length;e<c;++e){let c=s[e],l=c.start,u=c.count;for(let e=l,s=l+u;e<s;e+=3)for(let s=0;s<3;s++){let c=o.getX(e+s),l=o.getX(e+(s+1)%3);r.fromBufferAttribute(a,c),i.fromBufferAttribute(a,l),dg(r,i,n)===!0&&(t.push(r.x,r.y,r.z),t.push(i.x,i.y,i.z))}}}else{let a=e.attributes.position;for(let e=0,o=a.count/3;e<o;e++)for(let o=0;o<3;o++){let s=3*e+o,c=3*e+(o+1)%3;r.fromBufferAttribute(a,s),i.fromBufferAttribute(a,c),dg(r,i,n)===!0&&(t.push(r.x,r.y,r.z),t.push(i.x,i.y,i.z))}}this.setAttribute(`position`,new gm(t,3))}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}};function dg(e,t,n){let r=`${e.x},${e.y},${e.z}-${t.x},${t.y},${t.z}`,i=`${t.x},${t.y},${t.z}-${e.x},${e.y},${e.z}`;return n.has(r)===!0||n.has(i)===!0?!1:(n.add(r),n.add(i),!0)}function fg(e){let t={};for(let n in e){t[n]={};for(let r in e[n]){let i=e[n][r];if(mg(i))i.isRenderTargetTexture?(Ud(`UniformsUtils: Textures of render targets cannot be cloned via cloneUniforms() or mergeUniforms().`),t[n][r]=null):t[n][r]=i.clone();else if(Array.isArray(i)){if(mg(i[0])){let e=[];for(let t=0,n=i.length;t<n;t++)e[t]=i[t].clone();t[n][r]=e}else t[n][r]=i.slice()}else t[n][r]=i}}return t}function pg(e){let t={};for(let n=0;n<e.length;n++){let r=fg(e[n]);for(let e in r)t[e]=r[e]}return t}function mg(e){return e&&(e.isColor||e.isMatrix3||e.isMatrix4||e.isVector2||e.isVector3||e.isVector4||e.isTexture||e.isQuaternion)}function hg(e){let t=[];for(let n=0;n<e.length;n++)t.push(e[n].clone());return t}function gg(e){let t=e.getRenderTarget();return t===null?e.outputColorSpace:t.isXRRenderTarget===!0?t.texture.colorSpace:jf.workingColorSpace}var _g={clone:fg,merge:pg},vg=`void main() {
6
+ ${V(o)??``}`},children:(e,n)=>{var i=U(),o=q(i),s=e=>{var t=tu(),n=q(t);lr(n,{class:`h-4 w-4 animate-spin`});var i=I(n);z(()=>T(i,` ${V(r).solvingEllipsis??``}`)),h(e,t)},c=e=>{var t=tu(),n=q(t);lt(n,{class:`h-4 w-4`});var i=I(n);z(()=>T(i,` ${V(r).pressToCalculate??``}`)),h(e,t)},l=e=>{var t=tu(),n=q(t);Dr(n,{class:`h-4 w-4`});var i=I(n);z(()=>T(i,` ${V(r).calculate??``}`)),h(e,t)},u=e=>{var t=tu(),n=q(t);$e(n,{class:`h-4 w-4`});var i=I(n);z(()=>T(i,` ${V(r).upToDate??``}`)),h(e,t)};D(o,e=>{t.isSolving?e(s):a()?e(c,1):t.hasPendingChanges?e(l,2):e(u,-1)}),h(e,i)},$$slots:{default:!0}})}var g=I(m,2);f(g,()=>t.trailing??E),O(p),O(c),z(()=>T(d,V(o))),h(e,c),b()}var iu={FILE_UPLOAD:{MAX_SIZE_MB:300,MAX_SIZE_BYTES:314572800},TIMEOUTS:{SOLVE_STATE_DURATION:3500,DRAWER_ANIMATION_MS:350},SOLVING_INDICATOR:{FAST_THRESHOLD_MS:200,SLOW_THRESHOLD_MS:600,ANIMATION_DELAY:300,HISTORY_SIZE:3},FILE_SIZE:{BYTES_PER_KB:1024}},au={LEFT:0,MIDDLE:1,RIGHT:2,ROTATE:0,DOLLY:1,PAN:2},ou={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3},su=1e3,cu=1001,lu=1002,uu=1003,du=1004,fu=1005,pu=1006,mu=1007,hu=1008,gu=1009,_u=1010,vu=1011,yu=1012,bu=1013,xu=1014,Su=1015,Cu=1016,wu=1017,Tu=1018,Eu=1020,Du=35902,Ou=35899,ku=1021,Au=1022,ju=1023,Mu=1026,Nu=1027,Pu=1028,Fu=1029,Iu=1030,Lu=1031,Ru=1033,zu=33776,Bu=33777,Vu=33778,Hu=33779,Uu=35840,Wu=35841,Gu=35842,Ku=35843,qu=36196,Ju=37492,Yu=37496,Xu=37488,Zu=37489,Qu=37490,$u=37491,ed=37808,td=37809,nd=37810,rd=37811,id=37812,ad=37813,od=37814,sd=37815,cd=37816,ld=37817,ud=37818,dd=37819,fd=37820,pd=37821,md=36492,hd=36494,gd=36495,_d=36283,vd=36284,yd=36285,bd=36286,xd=2300,Sd=2301,Cd=2302,wd=2303,Td=2400,Ed=2401,Dd=2402,Od=3200,kd=`srgb`,Ad=`srgb-linear`,jd=`linear`,Md=`srgb`,Nd=7680,Pd=35044,Fd=2e3;function Id(e){for(let t=e.length-1;t>=0;--t)if(e[t]>=65535)return!0;return!1}function Ld(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function Rd(e){return document.createElementNS(`http://www.w3.org/1999/xhtml`,e)}function zd(){let e=Rd(`canvas`);return e.style.display=`block`,e}var Bd={};function Vd(...e){let t=`THREE.`+e.shift();console.log(t,...e)}function Hd(e){let t=e[0];if(typeof t==`string`&&t.startsWith(`TSL:`)){let t=e[1];t&&t.isStackTrace?e[0]+=` `+t.getLocation():e[1]=`Stack trace not available. Enable "THREE.Node.captureStackTrace" to capture stack traces.`}return e}function Ud(...e){e=Hd(e);let t=`THREE.`+e.shift();{let n=e[0];n&&n.isStackTrace?console.warn(n.getError(t)):console.warn(t,...e)}}function Wd(...e){e=Hd(e);let t=`THREE.`+e.shift();{let n=e[0];n&&n.isStackTrace?console.error(n.getError(t)):console.error(t,...e)}}function Gd(...e){let t=e.join(` `);t in Bd||(Bd[t]=!0,Ud(...e))}function Kd(e,t,n){return new Promise(function(r,i){function a(){switch(e.clientWaitSync(t,e.SYNC_FLUSH_COMMANDS_BIT,0)){case e.WAIT_FAILED:i();break;case e.TIMEOUT_EXPIRED:setTimeout(a,n);break;default:r()}}setTimeout(a,n)})}var qd={0:1,2:6,4:7,3:5,1:0,6:2,7:4,5:3},Jd=class{addEventListener(e,t){this._listeners===void 0&&(this._listeners={});let n=this._listeners;n[e]===void 0&&(n[e]=[]),n[e].indexOf(t)===-1&&n[e].push(t)}hasEventListener(e,t){let n=this._listeners;return n!==void 0&&n[e]!==void 0&&n[e].indexOf(t)!==-1}removeEventListener(e,t){let n=this._listeners;if(n===void 0)return;let r=n[e];if(r!==void 0){let e=r.indexOf(t);e!==-1&&r.splice(e,1)}}dispatchEvent(e){let t=this._listeners;if(t===void 0)return;let n=t[e.type];if(n!==void 0){e.target=this;let t=n.slice(0);for(let n=0,r=t.length;n<r;n++)t[n].call(this,e);e.target=null}}},Yd=`00.01.02.03.04.05.06.07.08.09.0a.0b.0c.0d.0e.0f.10.11.12.13.14.15.16.17.18.19.1a.1b.1c.1d.1e.1f.20.21.22.23.24.25.26.27.28.29.2a.2b.2c.2d.2e.2f.30.31.32.33.34.35.36.37.38.39.3a.3b.3c.3d.3e.3f.40.41.42.43.44.45.46.47.48.49.4a.4b.4c.4d.4e.4f.50.51.52.53.54.55.56.57.58.59.5a.5b.5c.5d.5e.5f.60.61.62.63.64.65.66.67.68.69.6a.6b.6c.6d.6e.6f.70.71.72.73.74.75.76.77.78.79.7a.7b.7c.7d.7e.7f.80.81.82.83.84.85.86.87.88.89.8a.8b.8c.8d.8e.8f.90.91.92.93.94.95.96.97.98.99.9a.9b.9c.9d.9e.9f.a0.a1.a2.a3.a4.a5.a6.a7.a8.a9.aa.ab.ac.ad.ae.af.b0.b1.b2.b3.b4.b5.b6.b7.b8.b9.ba.bb.bc.bd.be.bf.c0.c1.c2.c3.c4.c5.c6.c7.c8.c9.ca.cb.cc.cd.ce.cf.d0.d1.d2.d3.d4.d5.d6.d7.d8.d9.da.db.dc.dd.de.df.e0.e1.e2.e3.e4.e5.e6.e7.e8.e9.ea.eb.ec.ed.ee.ef.f0.f1.f2.f3.f4.f5.f6.f7.f8.f9.fa.fb.fc.fd.fe.ff`.split(`.`),Xd=1234567,Zd=Math.PI/180,Qd=180/Math.PI;function $d(){let e=Math.random()*4294967295|0,t=Math.random()*4294967295|0,n=Math.random()*4294967295|0,r=Math.random()*4294967295|0;return(Yd[e&255]+Yd[e>>8&255]+Yd[e>>16&255]+Yd[e>>24&255]+`-`+Yd[t&255]+Yd[t>>8&255]+`-`+Yd[t>>16&15|64]+Yd[t>>24&255]+`-`+Yd[n&63|128]+Yd[n>>8&255]+`-`+Yd[n>>16&255]+Yd[n>>24&255]+Yd[r&255]+Yd[r>>8&255]+Yd[r>>16&255]+Yd[r>>24&255]).toLowerCase()}function ef(e,t,n){return Math.max(t,Math.min(n,e))}function tf(e,t){return(e%t+t)%t}function nf(e,t,n,r,i){return r+(e-t)*(i-r)/(n-t)}function rf(e,t,n){return e===t?0:(n-e)/(t-e)}function af(e,t,n){return(1-n)*e+n*t}function of(e,t,n,r){return af(e,t,1-Math.exp(-n*r))}function sf(e,t=1){return t-Math.abs(tf(e,t*2)-t)}function cf(e,t,n){return e<=t?0:e>=n?1:(e=(e-t)/(n-t),e*e*(3-2*e))}function lf(e,t,n){return e<=t?0:e>=n?1:(e=(e-t)/(n-t),e*e*e*(e*(e*6-15)+10))}function uf(e,t){return e+Math.floor(Math.random()*(t-e+1))}function df(e,t){return e+Math.random()*(t-e)}function ff(e){return e*(.5-Math.random())}function pf(e){e!==void 0&&(Xd=e);let t=Xd+=1831565813;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}function mf(e){return e*Zd}function hf(e){return e*Qd}function gf(e){return e>0&&Number.isInteger(e)&&2**Math.round(Math.log2(e))===e}function _f(e){return 2**Math.ceil(Math.log(e)/Math.LN2)}function vf(e){return 2**Math.floor(Math.log(e)/Math.LN2)}function yf(e,t,n,r,i){let a=Math.cos,o=Math.sin,s=a(n/2),c=o(n/2),l=a((t+r)/2),u=o((t+r)/2),d=a((t-r)/2),f=o((t-r)/2),p=a((r-t)/2),m=o((r-t)/2);switch(i){case`XYX`:e.set(s*u,c*d,c*f,s*l);break;case`YZY`:e.set(c*f,s*u,c*d,s*l);break;case`ZXZ`:e.set(c*d,c*f,s*u,s*l);break;case`XZX`:e.set(s*u,c*m,c*p,s*l);break;case`YXY`:e.set(c*p,s*u,c*m,s*l);break;case`ZYZ`:e.set(c*m,c*p,s*u,s*l);break;default:Ud(`MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: `+i)}}function bf(e,t){switch(t.constructor){case Float32Array:return e;case Uint32Array:return e/4294967295;case Uint16Array:return e/65535;case Uint8Array:case Uint8ClampedArray:return e/255;case Int32Array:return Math.max(e/2147483647,-1);case Int16Array:return Math.max(e/32767,-1);case Int8Array:return Math.max(e/127,-1);default:throw Error(`THREE.MathUtils: Invalid component type.`)}}function xf(e,t){switch(t.constructor){case Float32Array:return e;case Uint32Array:return Math.round(e*4294967295);case Uint16Array:return Math.round(e*65535);case Uint8Array:case Uint8ClampedArray:return Math.round(e*255);case Int32Array:return Math.round(e*2147483647);case Int16Array:return Math.round(e*32767);case Int8Array:return Math.round(e*127);default:throw Error(`THREE.MathUtils: Invalid component type.`)}}var Sf={DEG2RAD:Zd,RAD2DEG:Qd,generateUUID:$d,clamp:ef,euclideanModulo:tf,mapLinear:nf,inverseLerp:rf,lerp:af,damp:of,pingpong:sf,smoothstep:cf,smootherstep:lf,randInt:uf,randFloat:df,randFloatSpread:ff,seededRandom:pf,degToRad:mf,radToDeg:hf,isPowerOfTwo:gf,ceilPowerOfTwo:_f,floorPowerOfTwo:vf,setQuaternionFromProperEuler:yf,normalize:xf,denormalize:bf},X=class e{static{e.prototype.isVector2=!0}constructor(e=0,t=0){this.x=e,this.y=t}get width(){return this.x}set width(e){this.x=e}get height(){return this.y}set height(e){this.y=e}set(e,t){return this.x=e,this.y=t,this}setScalar(e){return this.x=e,this.y=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;default:throw Error(`THREE.Vector2: index is out of range: `+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;default:throw Error(`THREE.Vector2: index is out of range: `+e)}}clone(){return new this.constructor(this.x,this.y)}copy(e){return this.x=e.x,this.y=e.y,this}add(e){return this.x+=e.x,this.y+=e.y,this}addScalar(e){return this.x+=e,this.y+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this}subScalar(e){return this.x-=e,this.y-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this}multiply(e){return this.x*=e.x,this.y*=e.y,this}multiplyScalar(e){return this.x*=e,this.y*=e,this}divide(e){return this.x/=e.x,this.y/=e.y,this}divideScalar(e){return this.multiplyScalar(1/e)}applyMatrix3(e){let t=this.x,n=this.y,r=e.elements;return this.x=r[0]*t+r[3]*n+r[6],this.y=r[1]*t+r[4]*n+r[7],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this}clamp(e,t){return this.x=ef(this.x,e.x,t.x),this.y=ef(this.y,e.y,t.y),this}clampScalar(e,t){return this.x=ef(this.x,e,t),this.y=ef(this.y,e,t),this}clampLength(e,t){let n=this.length();return this.divideScalar(n||1).multiplyScalar(ef(n,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(e){return this.x*e.x+this.y*e.y}cross(e){return this.x*e.y-this.y*e.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(e){let t=Math.sqrt(this.lengthSq()*e.lengthSq());if(t===0)return Math.PI/2;let n=this.dot(e)/t;return Math.acos(ef(n,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let t=this.x-e.x,n=this.y-e.y;return t*t+n*n}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this}equals(e){return e.x===this.x&&e.y===this.y}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this}rotateAround(e,t){let n=Math.cos(t),r=Math.sin(t),i=this.x-e.x,a=this.y-e.y;return this.x=i*n-a*r+e.x,this.y=i*r+a*n+e.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}},Cf=class{constructor(e=0,t=0,n=0,r=1){this.isQuaternion=!0,this._x=e,this._y=t,this._z=n,this._w=r}static slerpFlat(e,t,n,r,i,a,o){let s=n[r+0],c=n[r+1],l=n[r+2],u=n[r+3],d=i[a+0],f=i[a+1],p=i[a+2],m=i[a+3];if(u!==m||s!==d||c!==f||l!==p){let e=s*d+c*f+l*p+u*m;e<0&&(d=-d,f=-f,p=-p,m=-m,e=-e);let t=1-o;if(e<.9995){let n=Math.acos(e),r=Math.sin(n);t=Math.sin(t*n)/r,o=Math.sin(o*n)/r,s=s*t+d*o,c=c*t+f*o,l=l*t+p*o,u=u*t+m*o}else{s=s*t+d*o,c=c*t+f*o,l=l*t+p*o,u=u*t+m*o;let e=1/Math.sqrt(s*s+c*c+l*l+u*u);s*=e,c*=e,l*=e,u*=e}}e[t]=s,e[t+1]=c,e[t+2]=l,e[t+3]=u}static multiplyQuaternionsFlat(e,t,n,r,i,a){let o=n[r],s=n[r+1],c=n[r+2],l=n[r+3],u=i[a],d=i[a+1],f=i[a+2],p=i[a+3];return e[t]=o*p+l*u+s*f-c*d,e[t+1]=s*p+l*d+c*u-o*f,e[t+2]=c*p+l*f+o*d-s*u,e[t+3]=l*p-o*u-s*d-c*f,e}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get w(){return this._w}set w(e){this._w=e,this._onChangeCallback()}set(e,t,n,r){return this._x=e,this._y=t,this._z=n,this._w=r,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(e){return this._x=e.x,this._y=e.y,this._z=e.z,this._w=e.w,this._onChangeCallback(),this}setFromEuler(e,t=!0){let n=e._x,r=e._y,i=e._z,a=e._order,o=Math.cos,s=Math.sin,c=o(n/2),l=o(r/2),u=o(i/2),d=s(n/2),f=s(r/2),p=s(i/2);switch(a){case`XYZ`:this._x=d*l*u+c*f*p,this._y=c*f*u-d*l*p,this._z=c*l*p+d*f*u,this._w=c*l*u-d*f*p;break;case`YXZ`:this._x=d*l*u+c*f*p,this._y=c*f*u-d*l*p,this._z=c*l*p-d*f*u,this._w=c*l*u+d*f*p;break;case`ZXY`:this._x=d*l*u-c*f*p,this._y=c*f*u+d*l*p,this._z=c*l*p+d*f*u,this._w=c*l*u-d*f*p;break;case`ZYX`:this._x=d*l*u-c*f*p,this._y=c*f*u+d*l*p,this._z=c*l*p-d*f*u,this._w=c*l*u+d*f*p;break;case`YZX`:this._x=d*l*u+c*f*p,this._y=c*f*u+d*l*p,this._z=c*l*p-d*f*u,this._w=c*l*u-d*f*p;break;case`XZY`:this._x=d*l*u-c*f*p,this._y=c*f*u-d*l*p,this._z=c*l*p+d*f*u,this._w=c*l*u+d*f*p;break;default:Ud(`Quaternion: .setFromEuler() encountered an unknown order: `+a)}return t===!0&&this._onChangeCallback(),this}setFromAxisAngle(e,t){let n=t/2,r=Math.sin(n);return this._x=e.x*r,this._y=e.y*r,this._z=e.z*r,this._w=Math.cos(n),this._onChangeCallback(),this}setFromRotationMatrix(e){let t=e.elements,n=t[0],r=t[4],i=t[8],a=t[1],o=t[5],s=t[9],c=t[2],l=t[6],u=t[10],d=n+o+u;if(d>0){let e=.5/Math.sqrt(d+1);this._w=.25/e,this._x=(l-s)*e,this._y=(i-c)*e,this._z=(a-r)*e}else if(n>o&&n>u){let e=2*Math.sqrt(1+n-o-u);this._w=(l-s)/e,this._x=.25*e,this._y=(r+a)/e,this._z=(i+c)/e}else if(o>u){let e=2*Math.sqrt(1+o-n-u);this._w=(i-c)/e,this._x=(r+a)/e,this._y=.25*e,this._z=(s+l)/e}else{let e=2*Math.sqrt(1+u-n-o);this._w=(a-r)/e,this._x=(i+c)/e,this._y=(s+l)/e,this._z=.25*e}return this._onChangeCallback(),this}setFromUnitVectors(e,t){let n=e.dot(t)+1;return n<1e-8?(n=0,Math.abs(e.x)>Math.abs(e.z)?(this._x=-e.y,this._y=e.x,this._z=0,this._w=n):(this._x=0,this._y=-e.z,this._z=e.y,this._w=n)):(this._x=e.y*t.z-e.z*t.y,this._y=e.z*t.x-e.x*t.z,this._z=e.x*t.y-e.y*t.x,this._w=n),this.normalize()}angleTo(e){return 2*Math.acos(Math.abs(ef(this.dot(e),-1,1)))}rotateTowards(e,t){let n=this.angleTo(e);if(n===0)return this;let r=Math.min(1,t/n);return this.slerp(e,r),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(e){return this._x*e._x+this._y*e._y+this._z*e._z+this._w*e._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let e=this.length();return e===0?(this._x=0,this._y=0,this._z=0,this._w=1):(e=1/e,this._x*=e,this._y*=e,this._z*=e,this._w*=e),this._onChangeCallback(),this}multiply(e){return this.multiplyQuaternions(this,e)}premultiply(e){return this.multiplyQuaternions(e,this)}multiplyQuaternions(e,t){let n=e._x,r=e._y,i=e._z,a=e._w,o=t._x,s=t._y,c=t._z,l=t._w;return this._x=n*l+a*o+r*c-i*s,this._y=r*l+a*s+i*o-n*c,this._z=i*l+a*c+n*s-r*o,this._w=a*l-n*o-r*s-i*c,this._onChangeCallback(),this}slerp(e,t){let n=e._x,r=e._y,i=e._z,a=e._w,o=this.dot(e);o<0&&(n=-n,r=-r,i=-i,a=-a,o=-o);let s=1-t;if(o<.9995){let e=Math.acos(o),c=Math.sin(e);s=Math.sin(s*e)/c,t=Math.sin(t*e)/c,this._x=this._x*s+n*t,this._y=this._y*s+r*t,this._z=this._z*s+i*t,this._w=this._w*s+a*t,this._onChangeCallback()}else this._x=this._x*s+n*t,this._y=this._y*s+r*t,this._z=this._z*s+i*t,this._w=this._w*s+a*t,this.normalize();return this}slerpQuaternions(e,t,n){return this.copy(e).slerp(t,n)}random(){let e=2*Math.PI*Math.random(),t=2*Math.PI*Math.random(),n=Math.random(),r=Math.sqrt(1-n),i=Math.sqrt(n);return this.set(r*Math.sin(e),r*Math.cos(e),i*Math.sin(t),i*Math.cos(t))}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._w===this._w}fromArray(e,t=0){return this._x=e[t],this._y=e[t+1],this._z=e[t+2],this._w=e[t+3],this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._w,e}fromBufferAttribute(e,t){return this._x=e.getX(t),this._y=e.getY(t),this._z=e.getZ(t),this._w=e.getW(t),this._onChangeCallback(),this}toJSON(){return this.toArray()}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}},Z=class e{static{e.prototype.isVector3=!0}constructor(e=0,t=0,n=0){this.x=e,this.y=t,this.z=n}set(e,t,n){return n===void 0&&(n=this.z),this.x=e,this.y=t,this.z=n,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;default:throw Error(`THREE.Vector3: index is out of range: `+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw Error(`THREE.Vector3: index is out of range: `+e)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this}multiplyVectors(e,t){return this.x=e.x*t.x,this.y=e.y*t.y,this.z=e.z*t.z,this}applyEuler(e){return this.applyQuaternion(Tf.setFromEuler(e))}applyAxisAngle(e,t){return this.applyQuaternion(Tf.setFromAxisAngle(e,t))}applyMatrix3(e){let t=this.x,n=this.y,r=this.z,i=e.elements;return this.x=i[0]*t+i[3]*n+i[6]*r,this.y=i[1]*t+i[4]*n+i[7]*r,this.z=i[2]*t+i[5]*n+i[8]*r,this}applyNormalMatrix(e){return this.applyMatrix3(e).normalize()}applyMatrix4(e){let t=this.x,n=this.y,r=this.z,i=e.elements,a=1/(i[3]*t+i[7]*n+i[11]*r+i[15]);return this.x=(i[0]*t+i[4]*n+i[8]*r+i[12])*a,this.y=(i[1]*t+i[5]*n+i[9]*r+i[13])*a,this.z=(i[2]*t+i[6]*n+i[10]*r+i[14])*a,this}applyQuaternion(e){let t=this.x,n=this.y,r=this.z,i=e.x,a=e.y,o=e.z,s=e.w,c=2*(a*r-o*n),l=2*(o*t-i*r),u=2*(i*n-a*t);return this.x=t+s*c+a*u-o*l,this.y=n+s*l+o*c-i*u,this.z=r+s*u+i*l-a*c,this}project(e){return this.applyMatrix4(e.matrixWorldInverse).applyMatrix4(e.projectionMatrix)}unproject(e){return this.applyMatrix4(e.projectionMatrixInverse).applyMatrix4(e.matrixWorld)}transformDirection(e){let t=this.x,n=this.y,r=this.z,i=e.elements;return this.x=i[0]*t+i[4]*n+i[8]*r,this.y=i[1]*t+i[5]*n+i[9]*r,this.z=i[2]*t+i[6]*n+i[10]*r,this.normalize()}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this}divideScalar(e){return this.multiplyScalar(1/e)}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this}clamp(e,t){return this.x=ef(this.x,e.x,t.x),this.y=ef(this.y,e.y,t.y),this.z=ef(this.z,e.z,t.z),this}clampScalar(e,t){return this.x=ef(this.x,e,t),this.y=ef(this.y,e,t),this.z=ef(this.z,e,t),this}clampLength(e,t){let n=this.length();return this.divideScalar(n||1).multiplyScalar(ef(n,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this.z=e.z+(t.z-e.z)*n,this}cross(e){return this.crossVectors(this,e)}crossVectors(e,t){let n=e.x,r=e.y,i=e.z,a=t.x,o=t.y,s=t.z;return this.x=r*s-i*o,this.y=i*a-n*s,this.z=n*o-r*a,this}projectOnVector(e){let t=e.lengthSq();if(t===0)return this.set(0,0,0);let n=e.dot(this)/t;return this.copy(e).multiplyScalar(n)}projectOnPlane(e){return wf.copy(this).projectOnVector(e),this.sub(wf)}reflect(e){return this.sub(wf.copy(e).multiplyScalar(2*this.dot(e)))}angleTo(e){let t=Math.sqrt(this.lengthSq()*e.lengthSq());if(t===0)return Math.PI/2;let n=this.dot(e)/t;return Math.acos(ef(n,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let t=this.x-e.x,n=this.y-e.y,r=this.z-e.z;return t*t+n*n+r*r}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)+Math.abs(this.z-e.z)}setFromSpherical(e){return this.setFromSphericalCoords(e.radius,e.phi,e.theta)}setFromSphericalCoords(e,t,n){let r=Math.sin(t)*e;return this.x=r*Math.sin(n),this.y=Math.cos(t)*e,this.z=r*Math.cos(n),this}setFromCylindrical(e){return this.setFromCylindricalCoords(e.radius,e.theta,e.y)}setFromCylindricalCoords(e,t,n){return this.x=e*Math.sin(t),this.y=n,this.z=e*Math.cos(t),this}setFromMatrixPosition(e){let t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this}setFromMatrixScale(e){let t=this.setFromMatrixColumn(e,0).length(),n=this.setFromMatrixColumn(e,1).length(),r=this.setFromMatrixColumn(e,2).length();return this.x=t,this.y=n,this.z=r,this}setFromMatrixColumn(e,t){return this.fromArray(e.elements,t*4)}setFromMatrix3Column(e,t){return this.fromArray(e.elements,t*3)}setFromEuler(e){return this.x=e._x,this.y=e._y,this.z=e._z,this}setFromColor(e){return this.x=e.r,this.y=e.g,this.z=e.b,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this.z=e.getZ(t),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){let e=Math.random()*Math.PI*2,t=Math.random()*2-1,n=Math.sqrt(1-t*t);return this.x=n*Math.cos(e),this.y=t,this.z=n*Math.sin(e),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}},wf=new Z,Tf=new Cf,Ef=class e{static{e.prototype.isMatrix3=!0}constructor(e,t,n,r,i,a,o,s,c){this.elements=[1,0,0,0,1,0,0,0,1],e!==void 0&&this.set(e,t,n,r,i,a,o,s,c)}set(e,t,n,r,i,a,o,s,c){let l=this.elements;return l[0]=e,l[1]=r,l[2]=o,l[3]=t,l[4]=i,l[5]=s,l[6]=n,l[7]=a,l[8]=c,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(e){let t=this.elements,n=e.elements;return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],this}extractBasis(e,t,n){return e.setFromMatrix3Column(this,0),t.setFromMatrix3Column(this,1),n.setFromMatrix3Column(this,2),this}setFromMatrix4(e){let t=e.elements;return this.set(t[0],t[4],t[8],t[1],t[5],t[9],t[2],t[6],t[10]),this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){let n=e.elements,r=t.elements,i=this.elements,a=n[0],o=n[3],s=n[6],c=n[1],l=n[4],u=n[7],d=n[2],f=n[5],p=n[8],m=r[0],h=r[3],g=r[6],_=r[1],v=r[4],y=r[7],b=r[2],x=r[5],S=r[8];return i[0]=a*m+o*_+s*b,i[3]=a*h+o*v+s*x,i[6]=a*g+o*y+s*S,i[1]=c*m+l*_+u*b,i[4]=c*h+l*v+u*x,i[7]=c*g+l*y+u*S,i[2]=d*m+f*_+p*b,i[5]=d*h+f*v+p*x,i[8]=d*g+f*y+p*S,this}multiplyScalar(e){let t=this.elements;return t[0]*=e,t[3]*=e,t[6]*=e,t[1]*=e,t[4]*=e,t[7]*=e,t[2]*=e,t[5]*=e,t[8]*=e,this}determinant(){let e=this.elements,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8];return t*a*l-t*o*c-n*i*l+n*o*s+r*i*c-r*a*s}invert(){let e=this.elements,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8],u=l*a-o*c,d=o*s-l*i,f=c*i-a*s,p=t*u+n*d+r*f;if(p===0)return this.set(0,0,0,0,0,0,0,0,0);let m=1/p;return e[0]=u*m,e[1]=(r*c-l*n)*m,e[2]=(o*n-r*a)*m,e[3]=d*m,e[4]=(l*t-r*s)*m,e[5]=(r*i-o*t)*m,e[6]=f*m,e[7]=(n*s-c*t)*m,e[8]=(a*t-n*i)*m,this}transpose(){let e,t=this.elements;return e=t[1],t[1]=t[3],t[3]=e,e=t[2],t[2]=t[6],t[6]=e,e=t[5],t[5]=t[7],t[7]=e,this}getNormalMatrix(e){return this.setFromMatrix4(e).invert().transpose()}transposeIntoArray(e){let t=this.elements;return e[0]=t[0],e[1]=t[3],e[2]=t[6],e[3]=t[1],e[4]=t[4],e[5]=t[7],e[6]=t[2],e[7]=t[5],e[8]=t[8],this}setUvTransform(e,t,n,r,i,a,o){let s=Math.cos(i),c=Math.sin(i);return this.set(n*s,n*c,-n*(s*a+c*o)+a+e,-r*c,r*s,-r*(-c*a+s*o)+o+t,0,0,1),this}scale(e,t){return Gd(`Matrix3: .scale() is deprecated. Use .makeScale() instead.`),this.premultiply(Df.makeScale(e,t)),this}rotate(e){return Gd(`Matrix3: .rotate() is deprecated. Use .makeRotation() instead.`),this.premultiply(Df.makeRotation(-e)),this}translate(e,t){return Gd(`Matrix3: .translate() is deprecated. Use .makeTranslation() instead.`),this.premultiply(Df.makeTranslation(e,t)),this}makeTranslation(e,t){return e.isVector2?this.set(1,0,e.x,0,1,e.y,0,0,1):this.set(1,0,e,0,1,t,0,0,1),this}makeRotation(e){let t=Math.cos(e),n=Math.sin(e);return this.set(t,-n,0,n,t,0,0,0,1),this}makeScale(e,t){return this.set(e,0,0,0,t,0,0,0,1),this}equals(e){let t=this.elements,n=e.elements;for(let e=0;e<9;e++)if(t[e]!==n[e])return!1;return!0}fromArray(e,t=0){for(let n=0;n<9;n++)this.elements[n]=e[n+t];return this}toArray(e=[],t=0){let n=this.elements;return e[t]=n[0],e[t+1]=n[1],e[t+2]=n[2],e[t+3]=n[3],e[t+4]=n[4],e[t+5]=n[5],e[t+6]=n[6],e[t+7]=n[7],e[t+8]=n[8],e}clone(){return new this.constructor().fromArray(this.elements)}},Df=new Ef,Of=new Ef().set(.4123908,.3575843,.1804808,.212639,.7151687,.0721923,.0193308,.1191948,.9505322),kf=new Ef().set(3.2409699,-1.5373832,-.4986108,-.9692436,1.8759675,.0415551,.0556301,-.203977,1.0569715);function Af(){let e={enabled:!0,workingColorSpace:Ad,spaces:{},convert:function(e,t,n){return this.enabled===!1||t===n||!t||!n?e:(this.spaces[t].transfer===`srgb`&&(e.r=Mf(e.r),e.g=Mf(e.g),e.b=Mf(e.b)),this.spaces[t].primaries!==this.spaces[n].primaries&&(e.applyMatrix3(this.spaces[t].toXYZ),e.applyMatrix3(this.spaces[n].fromXYZ)),this.spaces[n].transfer===`srgb`&&(e.r=Nf(e.r),e.g=Nf(e.g),e.b=Nf(e.b)),e)},workingToColorSpace:function(e,t){return this.convert(e,this.workingColorSpace,t)},colorSpaceToWorking:function(e,t){return this.convert(e,t,this.workingColorSpace)},getPrimaries:function(e){return this.spaces[e].primaries},getTransfer:function(e){return e===``?jd:this.spaces[e].transfer},getToneMappingMode:function(e){return this.spaces[e].outputColorSpaceConfig.toneMappingMode||`standard`},getLuminanceCoefficients:function(e,t=this.workingColorSpace){return e.fromArray(this.spaces[t].luminanceCoefficients)},define:function(e){Object.assign(this.spaces,e)},_getMatrix:function(e,t,n){return e.copy(this.spaces[t].toXYZ).multiply(this.spaces[n].fromXYZ)},_getDrawingBufferColorSpace:function(e){return this.spaces[e].outputColorSpaceConfig.drawingBufferColorSpace},_getUnpackColorSpace:function(e=this.workingColorSpace){return this.spaces[e].workingColorSpaceConfig.unpackColorSpace},fromWorkingColorSpace:function(t,n){return Gd(`ColorManagement: .fromWorkingColorSpace() has been renamed to .workingToColorSpace().`),e.workingToColorSpace(t,n)},toWorkingColorSpace:function(t,n){return Gd(`ColorManagement: .toWorkingColorSpace() has been renamed to .colorSpaceToWorking().`),e.colorSpaceToWorking(t,n)}},t=[.64,.33,.3,.6,.15,.06],n=[.2126,.7152,.0722],r=[.3127,.329];return e.define({[Ad]:{primaries:t,whitePoint:r,transfer:jd,toXYZ:Of,fromXYZ:kf,luminanceCoefficients:n,workingColorSpaceConfig:{unpackColorSpace:kd},outputColorSpaceConfig:{drawingBufferColorSpace:kd}},[kd]:{primaries:t,whitePoint:r,transfer:Md,toXYZ:Of,fromXYZ:kf,luminanceCoefficients:n,outputColorSpaceConfig:{drawingBufferColorSpace:kd}}}),e}var jf=Af();function Mf(e){return e<.04045?e*.0773993808:(e*.9478672986+.0521327014)**2.4}function Nf(e){return e<.0031308?e*12.92:1.055*e**.41666-.055}var Pf,Ff=class{static getDataURL(e,t=`image/png`){if(/^data:/i.test(e.src)||typeof HTMLCanvasElement>`u`)return e.src;let n;if(e instanceof HTMLCanvasElement)n=e;else{Pf===void 0&&(Pf=Rd(`canvas`)),Pf.width=e.width,Pf.height=e.height;let t=Pf.getContext(`2d`);e instanceof ImageData?t.putImageData(e,0,0):t.drawImage(e,0,0,e.width,e.height),n=Pf}return n.toDataURL(t)}static sRGBToLinear(e){if(typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement||typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||typeof ImageBitmap<`u`&&e instanceof ImageBitmap){let t=Rd(`canvas`);t.width=e.width,t.height=e.height;let n=t.getContext(`2d`);n.drawImage(e,0,0,e.width,e.height);let r=n.getImageData(0,0,e.width,e.height),i=r.data;for(let e=0;e<i.length;e++)i[e]=Mf(i[e]/255)*255;return n.putImageData(r,0,0),t}if(e.data){let t=e.data.slice(0);for(let e=0;e<t.length;e++)t instanceof Uint8Array||t instanceof Uint8ClampedArray?t[e]=Math.floor(Mf(t[e]/255)*255):t[e]=Mf(t[e]);return{data:t,width:e.width,height:e.height}}return Ud(`ImageUtils.sRGBToLinear(): Unsupported image type. No color space conversion applied.`),e}},If=0,Lf=class{constructor(e=null){this.isTextureSource=!0,Object.defineProperty(this,"id",{value:If++}),this.uuid=$d(),this.data=e,this.dataReady=!0,this.version=0}getSize(e){let t=this.data;return typeof HTMLVideoElement<`u`&&t instanceof HTMLVideoElement?e.set(t.videoWidth,t.videoHeight,0):typeof VideoFrame<`u`&&t instanceof VideoFrame?e.set(t.displayWidth,t.displayHeight,0):t===null?e.set(0,0,0):e.set(t.width,t.height,t.depth||0),e}set needsUpdate(e){e===!0&&this.version++}toJSON(e){let t=e===void 0||typeof e==`string`;if(!t&&e.images[this.uuid]!==void 0)return e.images[this.uuid];let n={uuid:this.uuid,url:``},r=this.data;if(r!==null){let e;if(Array.isArray(r)){e=[];for(let t=0,n=r.length;t<n;t++)r[t].isDataTexture?e.push(Rf(r[t].image)):e.push(Rf(r[t]))}else e=Rf(r);n.url=e}return t||(e.images[this.uuid]=n),n}};function Rf(e){return typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement||typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||typeof ImageBitmap<`u`&&e instanceof ImageBitmap?Ff.getDataURL(e):e.data?{data:Array.from(e.data),width:e.width,height:e.height,type:e.data.constructor.name}:(Ud(`Texture: Unable to serialize Texture.`),{})}var zf=0,Bf=new Z,Vf=class e extends Jd{constructor(t=e.DEFAULT_IMAGE,n=e.DEFAULT_MAPPING,r=cu,i=cu,a=pu,o=hu,s=ju,c=gu,l=e.DEFAULT_ANISOTROPY,u=``){super(),this.isTexture=!0,Object.defineProperty(this,"id",{value:zf++}),this.uuid=$d(),this.name=``,this.source=new Lf(t),this.mipmaps=[],this.mapping=n,this.channel=0,this.wrapS=r,this.wrapT=i,this.magFilter=a,this.minFilter=o,this.anisotropy=l,this.format=s,this.internalFormat=null,this.type=c,this.offset=new X(0,0),this.repeat=new X(1,1),this.center=new X(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new Ef,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.colorSpace=u,this.userData={},this.updateRanges=[],this.version=0,this.onUpdate=null,this.renderTarget=null,this.isRenderTargetTexture=!1,this.isArrayTexture=!!(t&&t.depth&&t.depth>1),this.pmremVersion=0,this.normalized=!1}get width(){return this.source.getSize(Bf).x}get height(){return this.source.getSize(Bf).y}get depth(){return this.source.getSize(Bf).z}get image(){return this.source.data}set image(e){this.source.data=e}updateMatrix(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}clone(){return new this.constructor().copy(this)}copy(e){return this.name=e.name,this.source=e.source,this.mipmaps=e.mipmaps.slice(0),this.mapping=e.mapping,this.channel=e.channel,this.wrapS=e.wrapS,this.wrapT=e.wrapT,this.magFilter=e.magFilter,this.minFilter=e.minFilter,this.anisotropy=e.anisotropy,this.format=e.format,this.internalFormat=e.internalFormat,this.type=e.type,this.normalized=e.normalized,this.offset.copy(e.offset),this.repeat.copy(e.repeat),this.center.copy(e.center),this.rotation=e.rotation,this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrix.copy(e.matrix),this.generateMipmaps=e.generateMipmaps,this.premultiplyAlpha=e.premultiplyAlpha,this.flipY=e.flipY,this.unpackAlignment=e.unpackAlignment,this.colorSpace=e.colorSpace,this.renderTarget=e.renderTarget,this.isRenderTargetTexture=e.isRenderTargetTexture,this.isArrayTexture=e.isArrayTexture,this.userData=JSON.parse(JSON.stringify(e.userData)),this.needsUpdate=!0,this}setValues(e){for(let t in e){let n=e[t];if(n===void 0){Ud(`Texture.setValues(): parameter '${t}' has value of undefined.`);continue}let r=this[t];if(r===void 0){Ud(`Texture.setValues(): property '${t}' does not exist.`);continue}r&&n&&r.isVector2&&n.isVector2||r&&n&&r.isVector3&&n.isVector3||r&&n&&r.isMatrix3&&n.isMatrix3?r.copy(n):this[t]=n}}toJSON(e){let t=e===void 0||typeof e==`string`;if(!t&&e.textures[this.uuid]!==void 0)return e.textures[this.uuid];let n={metadata:{version:4.7,type:`Texture`,generator:`Texture.toJSON`},uuid:this.uuid,name:this.name,image:this.source.toJSON(e).uuid,mapping:this.mapping,channel:this.channel,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,internalFormat:this.internalFormat,type:this.type,normalized:this.normalized,colorSpace:this.colorSpace,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,generateMipmaps:this.generateMipmaps,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};return Object.keys(this.userData).length>0&&(n.userData=this.userData),t||(e.textures[this.uuid]=n),n}dispose(){this.dispatchEvent({type:`dispose`})}transformUv(e){if(this.mapping!==300)return e;if(e.applyMatrix3(this.matrix),e.x<0||e.x>1)switch(this.wrapS){case su:e.x-=Math.floor(e.x);break;case cu:e.x=e.x<0?0:1;break;case lu:Math.abs(Math.floor(e.x)%2)===1?e.x=Math.ceil(e.x)-e.x:e.x-=Math.floor(e.x)}if(e.y<0||e.y>1)switch(this.wrapT){case su:e.y-=Math.floor(e.y);break;case cu:e.y=e.y<0?0:1;break;case lu:Math.abs(Math.floor(e.y)%2)===1?e.y=Math.ceil(e.y)-e.y:e.y-=Math.floor(e.y)}return this.flipY&&(e.y=1-e.y),e}set needsUpdate(e){e===!0&&(this.version++,this.source.needsUpdate=!0)}set needsPMREMUpdate(e){e===!0&&this.pmremVersion++}};Vf.DEFAULT_IMAGE=null,Vf.DEFAULT_MAPPING=300,Vf.DEFAULT_ANISOTROPY=1;var Hf=class e{static{e.prototype.isVector4=!0}constructor(e=0,t=0,n=0,r=1){this.x=e,this.y=t,this.z=n,this.w=r}get width(){return this.z}set width(e){this.z=e}get height(){return this.w}set height(e){this.w=e}set(e,t,n,r){return this.x=e,this.y=t,this.z=n,this.w=r,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this.w=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setW(e){return this.w=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;case 3:this.w=t;break;default:throw Error(`THREE.Vector4: index is out of range: `+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw Error(`THREE.Vector4: index is out of range: `+e)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this.w=e.w===void 0?1:e.w,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this.w+=e.w,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this.w+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this.w=e.w+t.w,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this.w+=e.w*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this.w-=e.w,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this.w-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this.w=e.w-t.w,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this.w*=e.w,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this.w*=e,this}applyMatrix4(e){let t=this.x,n=this.y,r=this.z,i=this.w,a=e.elements;return this.x=a[0]*t+a[4]*n+a[8]*r+a[12]*i,this.y=a[1]*t+a[5]*n+a[9]*r+a[13]*i,this.z=a[2]*t+a[6]*n+a[10]*r+a[14]*i,this.w=a[3]*t+a[7]*n+a[11]*r+a[15]*i,this}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this.w/=e.w,this}divideScalar(e){return this.multiplyScalar(1/e)}setAxisAngleFromQuaternion(e){this.w=2*Math.acos(e.w);let t=Math.sqrt(1-e.w*e.w);return t<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=e.x/t,this.y=e.y/t,this.z=e.z/t),this}setAxisAngleFromRotationMatrix(e){let t,n,r,i,a=.01,o=.1,s=e.elements,c=s[0],l=s[4],u=s[8],d=s[1],f=s[5],p=s[9],m=s[2],h=s[6],g=s[10];if(Math.abs(l-d)<a&&Math.abs(u-m)<a&&Math.abs(p-h)<a){if(Math.abs(l+d)<o&&Math.abs(u+m)<o&&Math.abs(p+h)<o&&Math.abs(c+f+g-3)<o)return this.set(1,0,0,0),this;t=Math.PI;let e=(c+1)/2,s=(f+1)/2,_=(g+1)/2,v=(l+d)/4,y=(u+m)/4,b=(p+h)/4;return e>s&&e>_?e<a?(n=0,r=.707106781,i=.707106781):(n=Math.sqrt(e),r=v/n,i=y/n):s>_?s<a?(n=.707106781,r=0,i=.707106781):(r=Math.sqrt(s),n=v/r,i=b/r):_<a?(n=.707106781,r=.707106781,i=0):(i=Math.sqrt(_),n=y/i,r=b/i),this.set(n,r,i,t),this}let _=Math.sqrt((h-p)*(h-p)+(u-m)*(u-m)+(d-l)*(d-l));return Math.abs(_)<.001&&(_=1),this.x=(h-p)/_,this.y=(u-m)/_,this.z=(d-l)/_,this.w=Math.acos((c+f+g-1)/2),this}setFromMatrixPosition(e){let t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this.w=t[15],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this.w=Math.min(this.w,e.w),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this.w=Math.max(this.w,e.w),this}clamp(e,t){return this.x=ef(this.x,e.x,t.x),this.y=ef(this.y,e.y,t.y),this.z=ef(this.z,e.z,t.z),this.w=ef(this.w,e.w,t.w),this}clampScalar(e,t){return this.x=ef(this.x,e,t),this.y=ef(this.y,e,t),this.z=ef(this.z,e,t),this.w=ef(this.w,e,t),this}clampLength(e,t){let n=this.length();return this.divideScalar(n||1).multiplyScalar(ef(n,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this.w=Math.trunc(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z+this.w*e.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this.w+=(e.w-this.w)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this.z=e.z+(t.z-e.z)*n,this.w=e.w+(t.w-e.w)*n,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z&&e.w===this.w}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this.w=e[t+3],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e[t+3]=this.w,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this.z=e.getZ(t),this.w=e.getW(t),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}},Uf=class extends Jd{constructor(e=1,t=1,n={}){super(),n=Object.assign({generateMipmaps:!1,internalFormat:null,minFilter:pu,depthBuffer:!0,stencilBuffer:!1,resolveColorBuffer:!0,resolveDepthBuffer:!0,resolveStencilBuffer:!0,storeMultisampledColorBuffer:!0,storeMultisampledDepthBuffer:!0,storeMultisampledStencilBuffer:!0,depthTexture:null,samples:0,count:1,depth:1,multiview:!1,useArrayDepthTexture:!1},n),this.isRenderTarget=!0,this.width=e,this.height=t,this.depth=n.depth,this.scissor=new Hf(0,0,e,t),this.scissorTest=!1,this.viewport=new Hf(0,0,e,t),this.textures=[];let r=new Vf({width:e,height:t,depth:n.depth}),i=n.count;for(let e=0;e<i;e++)this.textures[e]=r.clone(),this.textures[e].isRenderTargetTexture=!0,this.textures[e].renderTarget=this;this._setTextureOptions(n),this.depthBuffer=n.depthBuffer,this.stencilBuffer=n.stencilBuffer,this.resolveColorBuffer=n.resolveColorBuffer,this.resolveDepthBuffer=n.resolveDepthBuffer,this.resolveStencilBuffer=n.resolveStencilBuffer,this.storeMultisampledColorBuffer=n.storeMultisampledColorBuffer,this.storeMultisampledDepthBuffer=n.storeMultisampledDepthBuffer,this.storeMultisampledStencilBuffer=n.storeMultisampledStencilBuffer,this._depthTexture=null,this.depthTexture=n.depthTexture,this.samples=n.samples,this.multiview=n.multiview,this.useArrayDepthTexture=n.useArrayDepthTexture}_setTextureOptions(e={}){let t={minFilter:pu,generateMipmaps:!1,flipY:!1,internalFormat:null};e.mapping!==void 0&&(t.mapping=e.mapping),e.wrapS!==void 0&&(t.wrapS=e.wrapS),e.wrapT!==void 0&&(t.wrapT=e.wrapT),e.wrapR!==void 0&&(t.wrapR=e.wrapR),e.magFilter!==void 0&&(t.magFilter=e.magFilter),e.minFilter!==void 0&&(t.minFilter=e.minFilter),e.format!==void 0&&(t.format=e.format),e.type!==void 0&&(t.type=e.type),e.anisotropy!==void 0&&(t.anisotropy=e.anisotropy),e.colorSpace!==void 0&&(t.colorSpace=e.colorSpace),e.flipY!==void 0&&(t.flipY=e.flipY),e.generateMipmaps!==void 0&&(t.generateMipmaps=e.generateMipmaps),e.internalFormat!==void 0&&(t.internalFormat=e.internalFormat);for(let e=0;e<this.textures.length;e++)this.textures[e].setValues(t)}get texture(){return this.textures[0]}set texture(e){this.textures[0]=e}set depthTexture(e){this._depthTexture!==null&&this._depthTexture.renderTarget===this&&(this._depthTexture.renderTarget=null),e!==null&&e.renderTarget===null&&(e.renderTarget=this),this._depthTexture=e}get depthTexture(){return this._depthTexture}setSize(e,t,n=1){if(this.width!==e||this.height!==t||this.depth!==n){this.width=e,this.height=t,this.depth=n;for(let r=0,i=this.textures.length;r<i;r++)this.textures[r].image.width=e,this.textures[r].image.height=t,this.textures[r].image.depth=n,this.textures[r].isData3DTexture!==!0&&(this.textures[r].isArrayTexture=this.textures[r].image.depth>1);this.dispose()}this.viewport.set(0,0,e,t),this.scissor.set(0,0,e,t)}clone(){return new this.constructor().copy(this)}copy(e){this.width=e.width,this.height=e.height,this.depth=e.depth,this.scissor.copy(e.scissor),this.scissorTest=e.scissorTest,this.viewport.copy(e.viewport),this.textures.length=0;for(let t=0,n=e.textures.length;t<n;t++){this.textures[t]=e.textures[t].clone(),this.textures[t].isRenderTargetTexture=!0,this.textures[t].renderTarget=this;let n=Object.assign({},e.textures[t].image);this.textures[t].source=new Lf(n)}if(this.depthBuffer=e.depthBuffer,this.stencilBuffer=e.stencilBuffer,this.resolveColorBuffer=e.resolveColorBuffer,this.resolveDepthBuffer=e.resolveDepthBuffer,this.resolveStencilBuffer=e.resolveStencilBuffer,this.storeMultisampledColorBuffer=e.storeMultisampledColorBuffer,this.storeMultisampledDepthBuffer=e.storeMultisampledDepthBuffer,this.storeMultisampledStencilBuffer=e.storeMultisampledStencilBuffer,e.depthTexture!==null){if(e.depthTexture.renderTarget===e){let t=e.depthTexture.clone();t.renderTarget=null,this.depthTexture=t}else this.depthTexture=e.depthTexture}return this.samples=e.samples,this.multiview=e.multiview,this.useArrayDepthTexture=e.useArrayDepthTexture,this}dispose(){this.dispatchEvent({type:`dispose`})}},Wf=class extends Uf{constructor(e=1,t=1,n={}){super(e,t,n),this.isWebGLRenderTarget=!0}},Gf=class extends Vf{constructor(e=null,t=1,n=1,r=1){super(null),this.isDataArrayTexture=!0,this.image={data:e,width:t,height:n,depth:r},this.magFilter=uu,this.minFilter=uu,this.wrapR=cu,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.layerUpdates=new Set}copy(e){return super.copy(e),this.wrapR=e.wrapR,this}addLayerUpdate(e){this.layerUpdates.add(e)}clearLayerUpdates(){this.layerUpdates.clear()}},Kf=class extends Vf{constructor(e=null,t=1,n=1,r=1){super(null),this.isData3DTexture=!0,this.image={data:e,width:t,height:n,depth:r},this.magFilter=uu,this.minFilter=uu,this.wrapR=cu,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}copy(e){return super.copy(e),this.wrapR=e.wrapR,this}},qf=class e{static{e.prototype.isMatrix4=!0}constructor(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],e!==void 0&&this.set(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h)}set(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){let g=this.elements;return g[0]=e,g[4]=t,g[8]=n,g[12]=r,g[1]=i,g[5]=a,g[9]=o,g[13]=s,g[2]=c,g[6]=l,g[10]=u,g[14]=d,g[3]=f,g[7]=p,g[11]=m,g[15]=h,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return new e().fromArray(this.elements)}copy(e){let t=this.elements,n=e.elements;return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],t[9]=n[9],t[10]=n[10],t[11]=n[11],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15],this}copyPosition(e){let t=this.elements,n=e.elements;return t[12]=n[12],t[13]=n[13],t[14]=n[14],this}setFromMatrix3(e){let t=e.elements;return this.set(t[0],t[3],t[6],0,t[1],t[4],t[7],0,t[2],t[5],t[8],0,0,0,0,1),this}extractBasis(e,t,n){return this.determinantAffine()===0?(e.set(1,0,0),t.set(0,1,0),n.set(0,0,1),this):(e.setFromMatrixColumn(this,0),t.setFromMatrixColumn(this,1),n.setFromMatrixColumn(this,2),this)}makeBasis(e,t,n){return this.set(e.x,t.x,n.x,0,e.y,t.y,n.y,0,e.z,t.z,n.z,0,0,0,0,1),this}extractRotation(e){if(e.determinantAffine()===0)return this.identity();let t=this.elements,n=e.elements,r=1/Jf.setFromMatrixColumn(e,0).length(),i=1/Jf.setFromMatrixColumn(e,1).length(),a=1/Jf.setFromMatrixColumn(e,2).length();return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=0,t[4]=n[4]*i,t[5]=n[5]*i,t[6]=n[6]*i,t[7]=0,t[8]=n[8]*a,t[9]=n[9]*a,t[10]=n[10]*a,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}makeRotationFromEuler(e){let t=this.elements,n=e.x,r=e.y,i=e.z,a=Math.cos(n),o=Math.sin(n),s=Math.cos(r),c=Math.sin(r),l=Math.cos(i),u=Math.sin(i);if(e.order===`XYZ`){let e=a*l,n=a*u,r=o*l,i=o*u;t[0]=s*l,t[4]=-s*u,t[8]=c,t[1]=n+r*c,t[5]=e-i*c,t[9]=-o*s,t[2]=i-e*c,t[6]=r+n*c,t[10]=a*s}else if(e.order===`YXZ`){let e=s*l,n=s*u,r=c*l,i=c*u;t[0]=e+i*o,t[4]=r*o-n,t[8]=a*c,t[1]=a*u,t[5]=a*l,t[9]=-o,t[2]=n*o-r,t[6]=i+e*o,t[10]=a*s}else if(e.order===`ZXY`){let e=s*l,n=s*u,r=c*l,i=c*u;t[0]=e-i*o,t[4]=-a*u,t[8]=r+n*o,t[1]=n+r*o,t[5]=a*l,t[9]=i-e*o,t[2]=-a*c,t[6]=o,t[10]=a*s}else if(e.order===`ZYX`){let e=a*l,n=a*u,r=o*l,i=o*u;t[0]=s*l,t[4]=r*c-n,t[8]=e*c+i,t[1]=s*u,t[5]=i*c+e,t[9]=n*c-r,t[2]=-c,t[6]=o*s,t[10]=a*s}else if(e.order===`YZX`){let e=a*s,n=a*c,r=o*s,i=o*c;t[0]=s*l,t[4]=i-e*u,t[8]=r*u+n,t[1]=u,t[5]=a*l,t[9]=-o*l,t[2]=-c*l,t[6]=n*u+r,t[10]=e-i*u}else if(e.order===`XZY`){let e=a*s,n=a*c,r=o*s,i=o*c;t[0]=s*l,t[4]=-u,t[8]=c*l,t[1]=e*u+i,t[5]=a*l,t[9]=n*u-r,t[2]=r*u-n,t[6]=o*l,t[10]=i*u+e}return t[3]=0,t[7]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}makeRotationFromQuaternion(e){return this.compose(Xf,e,Zf)}lookAt(e,t,n){let r=this.elements;return ep.subVectors(e,t),ep.lengthSq()===0&&(ep.z=1),ep.normalize(),Qf.crossVectors(n,ep),Qf.lengthSq()===0&&(Math.abs(n.z)===1?ep.x+=1e-4:ep.z+=1e-4,ep.normalize(),Qf.crossVectors(n,ep)),Qf.normalize(),$f.crossVectors(ep,Qf),r[0]=Qf.x,r[4]=$f.x,r[8]=ep.x,r[1]=Qf.y,r[5]=$f.y,r[9]=ep.y,r[2]=Qf.z,r[6]=$f.z,r[10]=ep.z,this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){let n=e.elements,r=t.elements,i=this.elements,a=n[0],o=n[4],s=n[8],c=n[12],l=n[1],u=n[5],d=n[9],f=n[13],p=n[2],m=n[6],h=n[10],g=n[14],_=n[3],v=n[7],y=n[11],b=n[15],x=r[0],S=r[4],C=r[8],w=r[12],T=r[1],E=r[5],D=r[9],O=r[13],k=r[2],A=r[6],j=r[10],M=r[14],N=r[3],P=r[7],F=r[11],I=r[15];return i[0]=a*x+o*T+s*k+c*N,i[4]=a*S+o*E+s*A+c*P,i[8]=a*C+o*D+s*j+c*F,i[12]=a*w+o*O+s*M+c*I,i[1]=l*x+u*T+d*k+f*N,i[5]=l*S+u*E+d*A+f*P,i[9]=l*C+u*D+d*j+f*F,i[13]=l*w+u*O+d*M+f*I,i[2]=p*x+m*T+h*k+g*N,i[6]=p*S+m*E+h*A+g*P,i[10]=p*C+m*D+h*j+g*F,i[14]=p*w+m*O+h*M+g*I,i[3]=_*x+v*T+y*k+b*N,i[7]=_*S+v*E+y*A+b*P,i[11]=_*C+v*D+y*j+b*F,i[15]=_*w+v*O+y*M+b*I,this}multiplyScalar(e){let t=this.elements;return t[0]*=e,t[4]*=e,t[8]*=e,t[12]*=e,t[1]*=e,t[5]*=e,t[9]*=e,t[13]*=e,t[2]*=e,t[6]*=e,t[10]*=e,t[14]*=e,t[3]*=e,t[7]*=e,t[11]*=e,t[15]*=e,this}determinant(){let e=this.elements,t=e[0],n=e[4],r=e[8],i=e[12],a=e[1],o=e[5],s=e[9],c=e[13],l=e[2],u=e[6],d=e[10],f=e[14],p=e[3],m=e[7],h=e[11],g=e[15],_=s*f-c*d,v=o*f-c*u,y=o*d-s*u,b=a*f-c*l,x=a*d-s*l,S=a*u-o*l;return t*(m*_-h*v+g*y)-n*(p*_-h*b+g*x)+r*(p*v-m*b+g*S)-i*(p*y-m*x+h*S)}determinantAffine(){let e=this.elements,t=e[0],n=e[4],r=e[8],i=e[1],a=e[5],o=e[9],s=e[2],c=e[6],l=e[10];return t*(a*l-o*c)-n*(i*l-o*s)+r*(i*c-a*s)}transpose(){let e=this.elements,t;return t=e[1],e[1]=e[4],e[4]=t,t=e[2],e[2]=e[8],e[8]=t,t=e[6],e[6]=e[9],e[9]=t,t=e[3],e[3]=e[12],e[12]=t,t=e[7],e[7]=e[13],e[13]=t,t=e[11],e[11]=e[14],e[14]=t,this}setPosition(e,t,n){let r=this.elements;return e.isVector3?(r[12]=e.x,r[13]=e.y,r[14]=e.z):(r[12]=e,r[13]=t,r[14]=n),this}invert(){let e=this.elements,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8],u=e[9],d=e[10],f=e[11],p=e[12],m=e[13],h=e[14],g=e[15],_=t*o-n*a,v=t*s-r*a,y=t*c-i*a,b=n*s-r*o,x=n*c-i*o,S=r*c-i*s,C=l*m-u*p,w=l*h-d*p,T=l*g-f*p,E=u*h-d*m,D=u*g-f*m,O=d*g-f*h,k=_*O-v*D+y*E+b*T-x*w+S*C;if(k===0)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);let A=1/k;return e[0]=(o*O-s*D+c*E)*A,e[1]=(r*D-n*O-i*E)*A,e[2]=(m*S-h*x+g*b)*A,e[3]=(d*x-u*S-f*b)*A,e[4]=(s*T-a*O-c*w)*A,e[5]=(t*O-r*T+i*w)*A,e[6]=(h*y-p*S-g*v)*A,e[7]=(l*S-d*y+f*v)*A,e[8]=(a*D-o*T+c*C)*A,e[9]=(n*T-t*D-i*C)*A,e[10]=(p*x-m*y+g*_)*A,e[11]=(u*y-l*x-f*_)*A,e[12]=(o*w-a*E-s*C)*A,e[13]=(t*E-n*w+r*C)*A,e[14]=(m*v-p*b-h*_)*A,e[15]=(l*b-u*v+d*_)*A,this}scale(e){let t=this.elements,n=e.x,r=e.y,i=e.z;return t[0]*=n,t[4]*=r,t[8]*=i,t[1]*=n,t[5]*=r,t[9]*=i,t[2]*=n,t[6]*=r,t[10]*=i,t[3]*=n,t[7]*=r,t[11]*=i,this}getMaxScaleOnAxis(){let e=this.elements,t=e[0]*e[0]+e[1]*e[1]+e[2]*e[2],n=e[4]*e[4]+e[5]*e[5]+e[6]*e[6],r=e[8]*e[8]+e[9]*e[9]+e[10]*e[10];return Math.sqrt(Math.max(t,n,r))}makeTranslation(e,t,n){return e.isVector3?this.set(1,0,0,e.x,0,1,0,e.y,0,0,1,e.z,0,0,0,1):this.set(1,0,0,e,0,1,0,t,0,0,1,n,0,0,0,1),this}makeRotationX(e){let t=Math.cos(e),n=Math.sin(e);return this.set(1,0,0,0,0,t,-n,0,0,n,t,0,0,0,0,1),this}makeRotationY(e){let t=Math.cos(e),n=Math.sin(e);return this.set(t,0,n,0,0,1,0,0,-n,0,t,0,0,0,0,1),this}makeRotationZ(e){let t=Math.cos(e),n=Math.sin(e);return this.set(t,-n,0,0,n,t,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(e,t){let n=Math.cos(t),r=Math.sin(t),i=1-n,a=e.x,o=e.y,s=e.z,c=i*a,l=i*o;return this.set(c*a+n,c*o-r*s,c*s+r*o,0,c*o+r*s,l*o+n,l*s-r*a,0,c*s-r*o,l*s+r*a,i*s*s+n,0,0,0,0,1),this}makeScale(e,t,n){return this.set(e,0,0,0,0,t,0,0,0,0,n,0,0,0,0,1),this}makeShear(e,t,n,r,i,a){return this.set(1,n,i,0,e,1,a,0,t,r,1,0,0,0,0,1),this}compose(e,t,n){let r=this.elements,i=t._x,a=t._y,o=t._z,s=t._w,c=i+i,l=a+a,u=o+o,d=i*c,f=i*l,p=i*u,m=a*l,h=a*u,g=o*u,_=s*c,v=s*l,y=s*u,b=n.x,x=n.y,S=n.z;return r[0]=(1-(m+g))*b,r[1]=(f+y)*b,r[2]=(p-v)*b,r[3]=0,r[4]=(f-y)*x,r[5]=(1-(d+g))*x,r[6]=(h+_)*x,r[7]=0,r[8]=(p+v)*S,r[9]=(h-_)*S,r[10]=(1-(d+m))*S,r[11]=0,r[12]=e.x,r[13]=e.y,r[14]=e.z,r[15]=1,this}decompose(e,t,n){let r=this.elements;e.x=r[12],e.y=r[13],e.z=r[14];let i=this.determinantAffine();if(i===0)return n.set(1,1,1),t.identity(),this;let a=Jf.set(r[0],r[1],r[2]).length(),o=Jf.set(r[4],r[5],r[6]).length(),s=Jf.set(r[8],r[9],r[10]).length();i<0&&(a=-a),Yf.copy(this);let c=1/a,l=1/o,u=1/s;return Yf.elements[0]*=c,Yf.elements[1]*=c,Yf.elements[2]*=c,Yf.elements[4]*=l,Yf.elements[5]*=l,Yf.elements[6]*=l,Yf.elements[8]*=u,Yf.elements[9]*=u,Yf.elements[10]*=u,t.setFromRotationMatrix(Yf),n.x=a,n.y=o,n.z=s,this}makePerspective(e,t,n,r,i,a,o=Fd,s=!1){let c=this.elements,l=2*i/(t-e),u=2*i/(n-r),d=(t+e)/(t-e),f=(n+r)/(n-r),p,m;if(s)p=i/(a-i),m=a*i/(a-i);else if(o===2e3)p=-(a+i)/(a-i),m=-2*a*i/(a-i);else if(o===2001)p=-a/(a-i),m=-a*i/(a-i);else throw Error(`THREE.Matrix4.makePerspective(): Invalid coordinate system: `+o);return c[0]=l,c[4]=0,c[8]=d,c[12]=0,c[1]=0,c[5]=u,c[9]=f,c[13]=0,c[2]=0,c[6]=0,c[10]=p,c[14]=m,c[3]=0,c[7]=0,c[11]=-1,c[15]=0,this}makeOrthographic(e,t,n,r,i,a,o=Fd,s=!1){let c=this.elements,l=2/(t-e),u=2/(n-r),d=-(t+e)/(t-e),f=-(n+r)/(n-r),p,m;if(s)p=1/(a-i),m=a/(a-i);else if(o===2e3)p=-2/(a-i),m=-(a+i)/(a-i);else if(o===2001)p=-1/(a-i),m=-i/(a-i);else throw Error(`THREE.Matrix4.makeOrthographic(): Invalid coordinate system: `+o);return c[0]=l,c[4]=0,c[8]=0,c[12]=d,c[1]=0,c[5]=u,c[9]=0,c[13]=f,c[2]=0,c[6]=0,c[10]=p,c[14]=m,c[3]=0,c[7]=0,c[11]=0,c[15]=1,this}equals(e){let t=this.elements,n=e.elements;for(let e=0;e<16;e++)if(t[e]!==n[e])return!1;return!0}fromArray(e,t=0){for(let n=0;n<16;n++)this.elements[n]=e[n+t];return this}toArray(e=[],t=0){let n=this.elements;return e[t]=n[0],e[t+1]=n[1],e[t+2]=n[2],e[t+3]=n[3],e[t+4]=n[4],e[t+5]=n[5],e[t+6]=n[6],e[t+7]=n[7],e[t+8]=n[8],e[t+9]=n[9],e[t+10]=n[10],e[t+11]=n[11],e[t+12]=n[12],e[t+13]=n[13],e[t+14]=n[14],e[t+15]=n[15],e}},Jf=new Z,Yf=new qf,Xf=new Z(0,0,0),Zf=new Z(1,1,1),Qf=new Z,$f=new Z,ep=new Z,tp=new qf,np=new Cf,rp=class e{constructor(t=0,n=0,r=0,i=e.DEFAULT_ORDER){this.isEuler=!0,this._x=t,this._y=n,this._z=r,this._order=i}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get order(){return this._order}set order(e){this._order=e,this._onChangeCallback()}set(e,t,n,r=this._order){return this._x=e,this._y=t,this._z=n,this._order=r,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(e){return this._x=e._x,this._y=e._y,this._z=e._z,this._order=e._order,this._onChangeCallback(),this}setFromRotationMatrix(e,t=this._order,n=!0){let r=e.elements,i=r[0],a=r[4],o=r[8],s=r[1],c=r[5],l=r[9],u=r[2],d=r[6],f=r[10];switch(t){case`XYZ`:this._y=Math.asin(ef(o,-1,1)),Math.abs(o)<.9999999?(this._x=Math.atan2(-l,f),this._z=Math.atan2(-a,i)):(this._x=Math.atan2(d,c),this._z=0);break;case`YXZ`:this._x=Math.asin(-ef(l,-1,1)),Math.abs(l)<.9999999?(this._y=Math.atan2(o,f),this._z=Math.atan2(s,c)):(this._y=Math.atan2(-u,i),this._z=0);break;case`ZXY`:this._x=Math.asin(ef(d,-1,1)),Math.abs(d)<.9999999?(this._y=Math.atan2(-u,f),this._z=Math.atan2(-a,c)):(this._y=0,this._z=Math.atan2(s,i));break;case`ZYX`:this._y=Math.asin(-ef(u,-1,1)),Math.abs(u)<.9999999?(this._x=Math.atan2(d,f),this._z=Math.atan2(s,i)):(this._x=0,this._z=Math.atan2(-a,c));break;case`YZX`:this._z=Math.asin(ef(s,-1,1)),Math.abs(s)<.9999999?(this._x=Math.atan2(-l,c),this._y=Math.atan2(-u,i)):(this._x=0,this._y=Math.atan2(o,f));break;case`XZY`:this._z=Math.asin(-ef(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(d,c),this._y=Math.atan2(o,i)):(this._x=Math.atan2(-l,f),this._y=0);break;default:Ud(`Euler: .setFromRotationMatrix() encountered an unknown order: `+t)}return this._order=t,n===!0&&this._onChangeCallback(),this}setFromQuaternion(e,t,n){return tp.makeRotationFromQuaternion(e),this.setFromRotationMatrix(tp,t,n)}setFromVector3(e,t=this._order){return this.set(e.x,e.y,e.z,t)}reorder(e){return np.setFromEuler(this),this.setFromQuaternion(np,e)}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._order===this._order}fromArray(e){return this._x=e[0],this._y=e[1],this._z=e[2],e[3]!==void 0&&(this._order=e[3]),this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._order,e}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}};rp.DEFAULT_ORDER=`XYZ`;var ip=class{constructor(){this.mask=1}set(e){this.mask=(1<<e|0)>>>0}enable(e){this.mask|=1<<e|0}enableAll(){this.mask=-1}toggle(e){this.mask^=1<<e|0}disable(e){this.mask&=~(1<<e|0)}disableAll(){this.mask=0}test(e){return(this.mask&e.mask)!==0}isEnabled(e){return!!(this.mask&(1<<e|0))}},ap=0,op=new Z,sp=new Cf,cp=new qf,lp=new Z,up=new Z,dp=new Z,fp=new Cf,pp=new Z(1,0,0),mp=new Z(0,1,0),hp=new Z(0,0,1),gp={type:`added`},_p={type:`removed`},vp={type:`childadded`,child:null},yp={type:`childremoved`,child:null},bp=class e extends Jd{constructor(){super(),this.isObject3D=!0,Object.defineProperty(this,"id",{value:ap++}),this.uuid=$d(),this.name=``,this.type=`Object3D`,this.parent=null,this.children=[],this.up=e.DEFAULT_UP.clone();let t=new Z,n=new rp,r=new Cf,i=new Z(1,1,1);function a(){r.setFromEuler(n,!1)}function o(){n.setFromQuaternion(r,void 0,!1)}n._onChange(a),r._onChange(o),Object.defineProperties(this,{position:{configurable:!0,enumerable:!0,value:t},rotation:{configurable:!0,enumerable:!0,value:n},quaternion:{configurable:!0,enumerable:!0,value:r},scale:{configurable:!0,enumerable:!0,value:i},modelViewMatrix:{value:new qf},normalMatrix:{value:new Ef}}),this.matrix=new qf,this.matrixWorld=new qf,this.matrixAutoUpdate=e.DEFAULT_MATRIX_AUTO_UPDATE,this.matrixWorldAutoUpdate=e.DEFAULT_MATRIX_WORLD_AUTO_UPDATE,this.matrixWorldNeedsUpdate=!1,this.layers=new ip,this.visible=!0,this.castShadow=!1,this.receiveShadow=!1,this.frustumCulled=!0,this.renderOrder=0,this.animations=[],this.customDepthMaterial=void 0,this.customDistanceMaterial=void 0,this.static=!1,this.userData={},this.pivot=null}onBeforeShadow(){}onAfterShadow(){}onBeforeRender(){}onAfterRender(){}applyMatrix4(e){this.matrixAutoUpdate&&this.updateMatrix(),this.matrix.premultiply(e),this.matrix.decompose(this.position,this.quaternion,this.scale)}applyQuaternion(e){return this.quaternion.premultiply(e),this}setRotationFromAxisAngle(e,t){this.quaternion.setFromAxisAngle(e,t)}setRotationFromEuler(e){this.quaternion.setFromEuler(e,!0)}setRotationFromMatrix(e){this.quaternion.setFromRotationMatrix(e)}setRotationFromQuaternion(e){this.quaternion.copy(e)}rotateOnAxis(e,t){return sp.setFromAxisAngle(e,t),this.quaternion.multiply(sp),this}rotateOnWorldAxis(e,t){return sp.setFromAxisAngle(e,t),this.quaternion.premultiply(sp),this}rotateX(e){return this.rotateOnAxis(pp,e)}rotateY(e){return this.rotateOnAxis(mp,e)}rotateZ(e){return this.rotateOnAxis(hp,e)}translateOnAxis(e,t){return op.copy(e).applyQuaternion(this.quaternion),this.position.add(op.multiplyScalar(t)),this}translateX(e){return this.translateOnAxis(pp,e)}translateY(e){return this.translateOnAxis(mp,e)}translateZ(e){return this.translateOnAxis(hp,e)}localToWorld(e){return this.updateWorldMatrix(!0,!1),e.applyMatrix4(this.matrixWorld)}worldToLocal(e){return this.updateWorldMatrix(!0,!1),e.applyMatrix4(cp.copy(this.matrixWorld).invert())}lookAt(e,t,n){e.isVector3?lp.copy(e):lp.set(e,t,n);let r=this.parent;this.updateWorldMatrix(!0,!1),up.setFromMatrixPosition(this.matrixWorld),this.isCamera||this.isLight?cp.lookAt(up,lp,this.up):cp.lookAt(lp,up,this.up),this.quaternion.setFromRotationMatrix(cp),r&&(cp.extractRotation(r.matrixWorld),sp.setFromRotationMatrix(cp),this.quaternion.premultiply(sp.invert()))}add(e){if(arguments.length>1){for(let e=0;e<arguments.length;e++)this.add(arguments[e]);return this}return e===this?(Wd(`Object3D.add: object can't be added as a child of itself.`,e),this):(e&&e.isObject3D?(e.removeFromParent(),e.parent=this,this.children.push(e),e.dispatchEvent(gp),vp.child=e,this.dispatchEvent(vp),vp.child=null):Wd(`Object3D.add: object not an instance of THREE.Object3D.`,e),this)}remove(e){if(arguments.length>1){for(let e=0;e<arguments.length;e++)this.remove(arguments[e]);return this}let t=this.children.indexOf(e);return t!==-1&&(e.parent=null,this.children.splice(t,1),e.dispatchEvent(_p),yp.child=e,this.dispatchEvent(yp),yp.child=null),this}removeFromParent(){let e=this.parent;return e!==null&&e.remove(this),this}clear(){return this.remove(...this.children)}attach(e){return this.updateWorldMatrix(!0,!1),cp.copy(this.matrixWorld).invert(),e.parent!==null&&(e.parent.updateWorldMatrix(!0,!1),cp.multiply(e.parent.matrixWorld)),e.applyMatrix4(cp),e.removeFromParent(),e.parent=this,this.children.push(e),e.updateWorldMatrix(!1,!0),e.dispatchEvent(gp),vp.child=e,this.dispatchEvent(vp),vp.child=null,this}getObjectById(e){return this.getObjectByProperty(`id`,e)}getObjectByName(e){return this.getObjectByProperty(`name`,e)}getObjectByProperty(e,t){if(this[e]===t)return this;for(let n=0,r=this.children.length;n<r;n++){let r=this.children[n].getObjectByProperty(e,t);if(r!==void 0)return r}}getObjectsByProperty(e,t,n=[]){this[e]===t&&n.push(this);let r=this.children;for(let i=0,a=r.length;i<a;i++)r[i].getObjectsByProperty(e,t,n);return n}getWorldPosition(e){return this.updateWorldMatrix(!0,!1),e.setFromMatrixPosition(this.matrixWorld)}getWorldQuaternion(e){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(up,e,dp),e}getWorldScale(e){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(up,fp,e),e}getWorldDirection(e){this.updateWorldMatrix(!0,!1);let t=this.matrixWorld.elements;return e.set(t[8],t[9],t[10]).normalize()}raycast(){}intersectsFrustum(){}traverse(e){e(this);let t=this.children;for(let n=0,r=t.length;n<r;n++)t[n].traverse(e)}traverseVisible(e){if(this.visible===!1)return;e(this);let t=this.children;for(let n=0,r=t.length;n<r;n++)t[n].traverseVisible(e)}traverseAncestors(e){let t=this.parent;t!==null&&(e(t),t.traverseAncestors(e))}updateMatrix(){this.matrix.compose(this.position,this.quaternion,this.scale);let e=this.pivot;if(e!==null){let t=e.x,n=e.y,r=e.z,i=this.matrix.elements;i[12]+=t-i[0]*t-i[4]*n-i[8]*r,i[13]+=n-i[1]*t-i[5]*n-i[9]*r,i[14]+=r-i[2]*t-i[6]*n-i[10]*r}this.matrixWorldNeedsUpdate=!0}updateMatrixWorld(e){this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||e)&&(this.matrixWorldAutoUpdate===!0&&(this.parent===null?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix)),this.matrixWorldNeedsUpdate=!1,e=!0);let t=this.children;for(let n=0,r=t.length;n<r;n++)t[n].updateMatrixWorld(e)}updateWorldMatrix(e,t,n=!1){let r=this.parent;if(e===!0&&r!==null&&r.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||n)&&(this.matrixWorldAutoUpdate===!0&&(this.parent===null?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix)),this.matrixWorldNeedsUpdate=!1,n=!0),t===!0){let e=this.children;for(let t=0,r=e.length;t<r;t++)e[t].updateWorldMatrix(!1,!0,n)}}toJSON(e){let t=e===void 0||typeof e==`string`,n={};t&&(e={geometries:{},materials:{},textures:{},images:{},shapes:{},skeletons:{},animations:{},nodes:{}},n.metadata={version:4.7,type:`Object`,generator:`Object3D.toJSON`});let r={};r.uuid=this.uuid,r.type=this.type,r.name=this.name,r.castShadow=this.castShadow,r.receiveShadow=this.receiveShadow,r.visible=this.visible,r.frustumCulled=this.frustumCulled,r.renderOrder=this.renderOrder,r.static=this.static,r.matrixAutoUpdate=this.matrixAutoUpdate,Object.keys(this.userData).length>0&&(r.userData=this.userData),r.layers=this.layers.mask,r.matrix=this.matrix.toArray(),r.up=this.up.toArray(),this.pivot!==null&&(r.pivot=this.pivot.toArray()),this.morphTargetDictionary!==void 0&&(r.morphTargetDictionary=Object.assign({},this.morphTargetDictionary)),this.morphTargetInfluences!==void 0&&(r.morphTargetInfluences=this.morphTargetInfluences.slice()),this.isInstancedMesh&&(r.type=`InstancedMesh`,r.count=this.count,r.instanceMatrix=this.instanceMatrix.toJSON(),this.instanceColor!==null&&(r.instanceColor=this.instanceColor.toJSON())),this.isBatchedMesh&&(r.type=`BatchedMesh`,r.perObjectFrustumCulled=this.perObjectFrustumCulled,r.sortObjects=this.sortObjects,r.drawRanges=this._drawRanges,r.reservedRanges=this._reservedRanges,r.geometryInfo=this._geometryInfo.map(e=>({...e,boundingBox:e.boundingBox?e.boundingBox.toJSON():void 0,boundingSphere:e.boundingSphere?e.boundingSphere.toJSON():void 0})),r.instanceInfo=this._instanceInfo.map(e=>({...e})),r.availableInstanceIds=this._availableInstanceIds.slice(),r.availableGeometryIds=this._availableGeometryIds.slice(),r.nextIndexStart=this._nextIndexStart,r.nextVertexStart=this._nextVertexStart,r.geometryCount=this._geometryCount,r.maxInstanceCount=this._maxInstanceCount,r.maxVertexCount=this._maxVertexCount,r.maxIndexCount=this._maxIndexCount,r.geometryInitialized=this._geometryInitialized,r.matricesTexture=this._matricesTexture.toJSON(e),r.indirectTexture=this._indirectTexture.toJSON(e),this._colorsTexture!==null&&(r.colorsTexture=this._colorsTexture.toJSON(e)),this.boundingSphere!==null&&(r.boundingSphere=this.boundingSphere.toJSON()),this.boundingBox!==null&&(r.boundingBox=this.boundingBox.toJSON()));function i(t,n){return t[n.uuid]===void 0&&(t[n.uuid]=n.toJSON(e)),n.uuid}if(this.isScene)this.background&&(this.background.isColor?r.background=this.background.toJSON():this.background.isTexture&&(r.background=this.background.toJSON(e).uuid)),this.environment&&this.environment.isTexture&&this.environment.isRenderTargetTexture!==!0&&(r.environment=this.environment.toJSON(e).uuid);else if(this.isMesh||this.isLine||this.isPoints){r.geometry=i(e.geometries,this.geometry);let t=this.geometry.parameters;if(t!==void 0&&t.shapes!==void 0){let n=t.shapes;if(Array.isArray(n))for(let t=0,r=n.length;t<r;t++){let r=n[t];i(e.shapes,r)}else i(e.shapes,n)}}if(this.isSkinnedMesh&&(r.bindMode=this.bindMode,r.bindMatrix=this.bindMatrix.toArray(),this.skeleton!==void 0&&(i(e.skeletons,this.skeleton),r.skeleton=this.skeleton.uuid)),this.material!==void 0){if(Array.isArray(this.material)){let t=[];for(let n=0,r=this.material.length;n<r;n++)t.push(i(e.materials,this.material[n]));r.material=t}else r.material=i(e.materials,this.material)}if(this.children.length>0){r.children=[];for(let t=0;t<this.children.length;t++)r.children.push(this.children[t].toJSON(e).object)}if(this.animations.length>0){r.animations=[];for(let t=0;t<this.animations.length;t++){let n=this.animations[t];r.animations.push(i(e.animations,n))}}if(t){let t=a(e.geometries),r=a(e.materials),i=a(e.textures),o=a(e.images),s=a(e.shapes),c=a(e.skeletons),l=a(e.animations),u=a(e.nodes);t.length>0&&(n.geometries=t),r.length>0&&(n.materials=r),i.length>0&&(n.textures=i),o.length>0&&(n.images=o),s.length>0&&(n.shapes=s),c.length>0&&(n.skeletons=c),l.length>0&&(n.animations=l),u.length>0&&(n.nodes=u)}return n.object=r,n;function a(e){let t=[];for(let n in e){let r=e[n];delete r.metadata,t.push(r)}return t}}clone(e){return new this.constructor().copy(this,e)}copy(e,t=!0){if(this.name=e.name,this.up.copy(e.up),this.position.copy(e.position),this.rotation.order=e.rotation.order,this.quaternion.copy(e.quaternion),this.scale.copy(e.scale),this.pivot=e.pivot===null?null:e.pivot.clone(),this.matrix.copy(e.matrix),this.matrixWorld.copy(e.matrixWorld),this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrixWorldAutoUpdate=e.matrixWorldAutoUpdate,this.matrixWorldNeedsUpdate=e.matrixWorldNeedsUpdate,this.layers.mask=e.layers.mask,this.visible=e.visible,this.castShadow=e.castShadow,this.receiveShadow=e.receiveShadow,this.frustumCulled=e.frustumCulled,this.renderOrder=e.renderOrder,this.static=e.static,this.animations=e.animations.slice(),this.userData=JSON.parse(JSON.stringify(e.userData)),t===!0)for(let t=0;t<e.children.length;t++){let n=e.children[t];this.add(n.clone())}return this}dispose(){this.dispatchEvent({type:`dispose`})}};bp.DEFAULT_UP=new Z(0,1,0),bp.DEFAULT_MATRIX_AUTO_UPDATE=!0,bp.DEFAULT_MATRIX_WORLD_AUTO_UPDATE=!0;var xp=class extends bp{constructor(){super(),this.isGroup=!0,this.type=`Group`}},Sp={type:`move`},Cp=class{constructor(){this._targetRay=null,this._grip=null,this._hand=null}getHandSpace(){return this._hand===null&&(this._hand=new xp,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand}getTargetRaySpace(){return this._targetRay===null&&(this._targetRay=new xp,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new Z,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new Z),this._targetRay}getGripSpace(){return this._grip===null&&(this._grip=new xp,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new Z,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new Z,this._grip.eventsEnabled=!1),this._grip}dispatchEvent(e){return this._targetRay!==null&&this._targetRay.dispatchEvent(e),this._grip!==null&&this._grip.dispatchEvent(e),this._hand!==null&&this._hand.dispatchEvent(e),this}connect(e){if(e&&e.hand){let t=this._hand;if(t)for(let n of e.hand.values())this._getHandJoint(t,n)}return this.dispatchEvent({type:`connected`,data:e}),this}disconnect(e){return this.dispatchEvent({type:`disconnected`,data:e}),this._targetRay!==null&&(this._targetRay.visible=!1),this._grip!==null&&(this._grip.visible=!1),this._hand!==null&&(this._hand.visible=!1),this}update(e,t,n){let r=null,i=null,a=null,o=this._targetRay,s=this._grip,c=this._hand;if(e&&t.session.visibilityState!==`visible-blurred`){if(c&&e.hand){a=!0;for(let r of e.hand.values()){let e=t.getJointPose(r,n),i=this._getHandJoint(c,r);e!==null&&(i.matrix.fromArray(e.transform.matrix),i.matrix.decompose(i.position,i.rotation,i.scale),i.matrixWorldNeedsUpdate=!0,i.jointRadius=e.radius),i.visible=e!==null}let r=c.joints[`index-finger-tip`],i=c.joints[`thumb-tip`],o=r.position.distanceTo(i.position);c.inputState.pinching&&o>.025?(c.inputState.pinching=!1,this.dispatchEvent({type:`pinchend`,handedness:e.handedness,target:this})):!c.inputState.pinching&&o<=.015&&(c.inputState.pinching=!0,this.dispatchEvent({type:`pinchstart`,handedness:e.handedness,target:this}))}else s!==null&&e.gripSpace&&(i=t.getPose(e.gripSpace,n),i!==null&&(s.matrix.fromArray(i.transform.matrix),s.matrix.decompose(s.position,s.rotation,s.scale),s.matrixWorldNeedsUpdate=!0,i.linearVelocity?(s.hasLinearVelocity=!0,s.linearVelocity.copy(i.linearVelocity)):s.hasLinearVelocity=!1,i.angularVelocity?(s.hasAngularVelocity=!0,s.angularVelocity.copy(i.angularVelocity)):s.hasAngularVelocity=!1,s.eventsEnabled&&s.dispatchEvent({type:`gripUpdated`,data:e,target:this})));o!==null&&(r=t.getPose(e.targetRaySpace,n),r===null&&i!==null&&(r=i),r!==null&&(o.matrix.fromArray(r.transform.matrix),o.matrix.decompose(o.position,o.rotation,o.scale),o.matrixWorldNeedsUpdate=!0,r.linearVelocity?(o.hasLinearVelocity=!0,o.linearVelocity.copy(r.linearVelocity)):o.hasLinearVelocity=!1,r.angularVelocity?(o.hasAngularVelocity=!0,o.angularVelocity.copy(r.angularVelocity)):o.hasAngularVelocity=!1,this.dispatchEvent(Sp)))}return o!==null&&(o.visible=r!==null),s!==null&&(s.visible=i!==null),c!==null&&(c.visible=a!==null),this}_getHandJoint(e,t){if(e.joints[t.jointName]===void 0){let n=new xp;n.matrixAutoUpdate=!1,n.visible=!1,e.joints[t.jointName]=n,e.add(n)}return e.joints[t.jointName]}},wp={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},Tp={h:0,s:0,l:0},Ep={h:0,s:0,l:0};function Dp(e,t,n){return n<0&&(n+=1),n>1&&--n,n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*6*(2/3-n):e}var Q=class{constructor(e,t,n){return this.isColor=!0,this.r=1,this.g=1,this.b=1,this.set(e,t,n)}set(e,t,n){if(t===void 0&&n===void 0){let t=e;t&&t.isColor?this.copy(t):typeof t==`number`?this.setHex(t):typeof t==`string`&&this.setStyle(t)}else this.setRGB(e,t,n);return this}setScalar(e){return this.r=e,this.g=e,this.b=e,this}setHex(e,t=kd){return e=Math.floor(e),this.r=(e>>16&255)/255,this.g=(e>>8&255)/255,this.b=(e&255)/255,jf.colorSpaceToWorking(this,t),this}setRGB(e,t,n,r=jf.workingColorSpace){return this.r=e,this.g=t,this.b=n,jf.colorSpaceToWorking(this,r),this}setHSL(e,t,n,r=jf.workingColorSpace){if(e=tf(e,1),t=ef(t,0,1),n=ef(n,0,1),t===0)this.r=this.g=this.b=n;else{let r=n<=.5?n*(1+t):n+t-n*t,i=2*n-r;this.r=Dp(i,r,e+1/3),this.g=Dp(i,r,e),this.b=Dp(i,r,e-1/3)}return jf.colorSpaceToWorking(this,r),this}setStyle(e,t=kd){function n(t){t!==void 0&&parseFloat(t)<1&&Ud(`Color: Alpha component of `+e+` will be ignored.`)}let r;if(r=/^(\w+)\(([^\)]*)\)/.exec(e)){let i,a=r[1],o=r[2];switch(a){case`rgb`:case`rgba`:if(i=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(i[4]),this.setRGB(Math.min(255,parseInt(i[1],10))/255,Math.min(255,parseInt(i[2],10))/255,Math.min(255,parseInt(i[3],10))/255,t);if(i=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(i[4]),this.setRGB(Math.min(100,parseInt(i[1],10))/100,Math.min(100,parseInt(i[2],10))/100,Math.min(100,parseInt(i[3],10))/100,t);break;case`hsl`:case`hsla`:if(i=/^\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\%\s*,\s*(\d*\.?\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(i[4]),this.setHSL(parseFloat(i[1])/360,parseFloat(i[2])/100,parseFloat(i[3])/100,t);break;default:Ud(`Color: Unknown color model `+e)}}else if(r=/^\#([A-Fa-f\d]+)$/.exec(e)){let n=r[1],i=n.length;if(i===3)return this.setRGB(parseInt(n.charAt(0),16)/15,parseInt(n.charAt(1),16)/15,parseInt(n.charAt(2),16)/15,t);if(i===6)return this.setHex(parseInt(n,16),t);Ud(`Color: Invalid hex color `+e)}else if(e&&e.length>0)return this.setColorName(e,t);return this}setColorName(e,t=kd){let n=wp[e.toLowerCase()];return n===void 0?Ud(`Color: Unknown color `+e):this.setHex(n,t),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(e){return this.r=e.r,this.g=e.g,this.b=e.b,this}copySRGBToLinear(e){return this.r=Mf(e.r),this.g=Mf(e.g),this.b=Mf(e.b),this}copyLinearToSRGB(e){return this.r=Nf(e.r),this.g=Nf(e.g),this.b=Nf(e.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(e=kd){return jf.workingToColorSpace(Op.copy(this),e),Math.round(ef(Op.r*255,0,255))*65536+Math.round(ef(Op.g*255,0,255))*256+Math.round(ef(Op.b*255,0,255))}getHexString(e=kd){return(`000000`+this.getHex(e).toString(16)).slice(-6)}getHSL(e,t=jf.workingColorSpace){jf.workingToColorSpace(Op.copy(this),t);let n=Op.r,r=Op.g,i=Op.b,a=Math.max(n,r,i),o=Math.min(n,r,i),s,c,l=(o+a)/2;if(o===a)s=0,c=0;else{let e=a-o;switch(c=l<=.5?e/(a+o):e/(2-a-o),a){case n:s=(r-i)/e+(r<i?6:0);break;case r:s=(i-n)/e+2;break;case i:s=(n-r)/e+4}s/=6}return e.h=s,e.s=c,e.l=l,e}getRGB(e,t=jf.workingColorSpace){return jf.workingToColorSpace(Op.copy(this),t),e.r=Op.r,e.g=Op.g,e.b=Op.b,e}getStyle(e=kd){jf.workingToColorSpace(Op.copy(this),e);let t=Op.r,n=Op.g,r=Op.b;return e===`srgb`?`rgb(${Math.round(t*255)},${Math.round(n*255)},${Math.round(r*255)})`:`color(${e} ${t.toFixed(3)} ${n.toFixed(3)} ${r.toFixed(3)})`}offsetHSL(e,t,n){return this.getHSL(Tp),this.setHSL(Tp.h+e,Tp.s+t,Tp.l+n)}add(e){return this.r+=e.r,this.g+=e.g,this.b+=e.b,this}addColors(e,t){return this.r=e.r+t.r,this.g=e.g+t.g,this.b=e.b+t.b,this}addScalar(e){return this.r+=e,this.g+=e,this.b+=e,this}sub(e){return this.r=Math.max(0,this.r-e.r),this.g=Math.max(0,this.g-e.g),this.b=Math.max(0,this.b-e.b),this}multiply(e){return this.r*=e.r,this.g*=e.g,this.b*=e.b,this}multiplyScalar(e){return this.r*=e,this.g*=e,this.b*=e,this}lerp(e,t){return this.r+=(e.r-this.r)*t,this.g+=(e.g-this.g)*t,this.b+=(e.b-this.b)*t,this}lerpColors(e,t,n){return this.r=e.r+(t.r-e.r)*n,this.g=e.g+(t.g-e.g)*n,this.b=e.b+(t.b-e.b)*n,this}lerpHSL(e,t){this.getHSL(Tp),e.getHSL(Ep);let n=af(Tp.h,Ep.h,t),r=af(Tp.s,Ep.s,t),i=af(Tp.l,Ep.l,t);return this.setHSL(n,r,i),this}setFromVector3(e){return this.r=e.x,this.g=e.y,this.b=e.z,this}applyMatrix3(e){let t=this.r,n=this.g,r=this.b,i=e.elements;return this.r=i[0]*t+i[3]*n+i[6]*r,this.g=i[1]*t+i[4]*n+i[7]*r,this.b=i[2]*t+i[5]*n+i[8]*r,this}equals(e){return e.r===this.r&&e.g===this.g&&e.b===this.b}fromArray(e,t=0){return this.r=e[t],this.g=e[t+1],this.b=e[t+2],this}toArray(e=[],t=0){return e[t]=this.r,e[t+1]=this.g,e[t+2]=this.b,e}fromBufferAttribute(e,t){return this.r=e.getX(t),this.g=e.getY(t),this.b=e.getZ(t),this}toJSON(){return this.getHex()}*[Symbol.iterator](){yield this.r,yield this.g,yield this.b}},Op=new Q;Q.NAMES=wp;var kp=class extends bp{constructor(){super(),this.isScene=!0,this.type=`Scene`,this.background=null,this.environment=null,this.fog=null,this.backgroundBlurriness=0,this.backgroundIntensity=1,this.backgroundRotation=new rp,this.environmentIntensity=1,this.environmentRotation=new rp,this.overrideMaterial=null,typeof __THREE_DEVTOOLS__<`u`&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(`observe`,{detail:this}))}copy(e,t){return super.copy(e,t),e.background!==null&&(this.background=e.background.clone()),e.environment!==null&&(this.environment=e.environment.clone()),e.fog!==null&&(this.fog=e.fog.clone()),this.backgroundBlurriness=e.backgroundBlurriness,this.backgroundIntensity=e.backgroundIntensity,this.backgroundRotation.copy(e.backgroundRotation),this.environmentIntensity=e.environmentIntensity,this.environmentRotation.copy(e.environmentRotation),e.overrideMaterial!==null&&(this.overrideMaterial=e.overrideMaterial.clone()),this.matrixAutoUpdate=e.matrixAutoUpdate,this}toJSON(e){let t=super.toJSON(e);return this.fog!==null&&(t.object.fog=this.fog.toJSON()),t.object.backgroundBlurriness=this.backgroundBlurriness,t.object.backgroundIntensity=this.backgroundIntensity,t.object.backgroundRotation=this.backgroundRotation.toArray(),t.object.environmentIntensity=this.environmentIntensity,t.object.environmentRotation=this.environmentRotation.toArray(),t}},Ap=new Z,jp=new Z,Mp=new Z,Np=new Z,Pp=new Z,Fp=new Z,Ip=new Z,Lp=new Z,Rp=new Z,zp=new Z,Bp=new Hf,Vp=new Hf,Hp=new Hf,Up=class e{constructor(e=new Z,t=new Z,n=new Z){this.a=e,this.b=t,this.c=n}static getNormal(e,t,n,r){r.subVectors(n,t),Ap.subVectors(e,t),r.cross(Ap);let i=r.lengthSq();return i>0?r.multiplyScalar(1/Math.sqrt(i)):r.set(0,0,0)}static getBarycoord(e,t,n,r,i){Ap.subVectors(r,t),jp.subVectors(n,t),Mp.subVectors(e,t);let a=Ap.dot(Ap),o=Ap.dot(jp),s=Ap.dot(Mp),c=jp.dot(jp),l=jp.dot(Mp),u=a*c-o*o;if(u===0)return i.set(0,0,0),null;let d=1/u,f=(c*s-o*l)*d,p=(a*l-o*s)*d;return i.set(1-f-p,p,f)}static containsPoint(e,t,n,r){return this.getBarycoord(e,t,n,r,Np)!==null&&Np.x>=0&&Np.y>=0&&Np.x+Np.y<=1}static getInterpolation(e,t,n,r,i,a,o,s){return this.getBarycoord(e,t,n,r,Np)===null?(s.x=0,s.y=0,`z`in s&&(s.z=0),`w`in s&&(s.w=0),null):(s.setScalar(0),s.addScaledVector(i,Np.x),s.addScaledVector(a,Np.y),s.addScaledVector(o,Np.z),s)}static getInterpolatedAttribute(e,t,n,r,i,a){return Bp.setScalar(0),Vp.setScalar(0),Hp.setScalar(0),Bp.fromBufferAttribute(e,t),Vp.fromBufferAttribute(e,n),Hp.fromBufferAttribute(e,r),a.setScalar(0),a.addScaledVector(Bp,i.x),a.addScaledVector(Vp,i.y),a.addScaledVector(Hp,i.z),a}static isFrontFacing(e,t,n,r){return Ap.subVectors(n,t),jp.subVectors(e,t),Ap.cross(jp).dot(r)<0}set(e,t,n){return this.a.copy(e),this.b.copy(t),this.c.copy(n),this}setFromPointsAndIndices(e,t,n,r){return this.a.copy(e[t]),this.b.copy(e[n]),this.c.copy(e[r]),this}setFromAttributeAndIndices(e,t,n,r){return this.a.fromBufferAttribute(e,t),this.b.fromBufferAttribute(e,n),this.c.fromBufferAttribute(e,r),this}clone(){return new this.constructor().copy(this)}copy(e){return this.a.copy(e.a),this.b.copy(e.b),this.c.copy(e.c),this}getArea(){return Ap.subVectors(this.c,this.b),jp.subVectors(this.a,this.b),Ap.cross(jp).length()*.5}getMidpoint(e){return e.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(t){return e.getNormal(this.a,this.b,this.c,t)}getPlane(e){return e.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(t,n){return e.getBarycoord(t,this.a,this.b,this.c,n)}getInterpolation(t,n,r,i,a){return e.getInterpolation(t,this.a,this.b,this.c,n,r,i,a)}containsPoint(t){return e.containsPoint(t,this.a,this.b,this.c)}isFrontFacing(t){return e.isFrontFacing(this.a,this.b,this.c,t)}intersectsBox(e){return e.intersectsTriangle(this)}closestPointToPoint(e,t){let n=this.a,r=this.b,i=this.c,a,o;Pp.subVectors(r,n),Fp.subVectors(i,n),Lp.subVectors(e,n);let s=Pp.dot(Lp),c=Fp.dot(Lp);if(s<=0&&c<=0)return t.copy(n);Rp.subVectors(e,r);let l=Pp.dot(Rp),u=Fp.dot(Rp);if(l>=0&&u<=l)return t.copy(r);let d=s*u-l*c;if(d<=0&&s>=0&&l<=0)return a=s/(s-l),t.copy(n).addScaledVector(Pp,a);zp.subVectors(e,i);let f=Pp.dot(zp),p=Fp.dot(zp);if(p>=0&&f<=p)return t.copy(i);let m=f*c-s*p;if(m<=0&&c>=0&&p<=0)return o=c/(c-p),t.copy(n).addScaledVector(Fp,o);let h=l*p-f*u;if(h<=0&&u-l>=0&&f-p>=0)return Ip.subVectors(i,r),o=(u-l)/(u-l+(f-p)),t.copy(r).addScaledVector(Ip,o);let g=1/(h+m+d);return a=m*g,o=d*g,t.copy(n).addScaledVector(Pp,a).addScaledVector(Fp,o)}equals(e){return e.a.equals(this.a)&&e.b.equals(this.b)&&e.c.equals(this.c)}},Wp=class{constructor(e=new Z(1/0,1/0,1/0),t=new Z(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=e,this.max=t}set(e,t){return this.min.copy(e),this.max.copy(t),this}setFromArray(e){this.makeEmpty();for(let t=0,n=e.length;t<n;t+=3)this.expandByPoint(Kp.fromArray(e,t));return this}setFromBufferAttribute(e){this.makeEmpty();for(let t=0,n=e.count;t<n;t++)this.expandByPoint(Kp.fromBufferAttribute(e,t));return this}setFromPoints(e){this.makeEmpty();for(let t=0,n=e.length;t<n;t++)this.expandByPoint(e[t]);return this}setFromCenterAndSize(e,t){let n=Kp.copy(t).multiplyScalar(.5);return this.min.copy(e).sub(n),this.max.copy(e).add(n),this}setFromObject(e,t=!1){return this.makeEmpty(),this.expandByObject(e,t)}clone(){return new this.constructor().copy(this)}copy(e){return this.min.copy(e.min),this.max.copy(e.max),this}makeEmpty(){return this.min.x=this.min.y=this.min.z=1/0,this.max.x=this.max.y=this.max.z=-1/0,this}isEmpty(){return this.max.x<this.min.x||this.max.y<this.min.y||this.max.z<this.min.z}getCenter(e){return this.isEmpty()?e.set(0,0,0):e.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(e){return this.isEmpty()?e.set(0,0,0):e.subVectors(this.max,this.min)}expandByPoint(e){return this.min.min(e),this.max.max(e),this}expandByVector(e){return this.min.sub(e),this.max.add(e),this}expandByScalar(e){return this.min.addScalar(-e),this.max.addScalar(e),this}expandByObject(e,t=!1){e.updateWorldMatrix(!1,!1);let n=e.geometry;if(n!==void 0){let r=n.getAttribute(`position`);if(t===!0&&r!==void 0&&e.isInstancedMesh!==!0)for(let t=0,n=r.count;t<n;t++)e.isMesh===!0?e.getVertexPosition(t,Kp):Kp.fromBufferAttribute(r,t),Kp.applyMatrix4(e.matrixWorld),this.expandByPoint(Kp);else e.boundingBox===void 0?(n.boundingBox===null&&n.computeBoundingBox(),qp.copy(n.boundingBox)):(e.boundingBox===null&&e.computeBoundingBox(),qp.copy(e.boundingBox)),qp.applyMatrix4(e.matrixWorld),this.union(qp)}let r=e.children;for(let e=0,n=r.length;e<n;e++)this.expandByObject(r[e],t);return this}containsPoint(e){return e.x>=this.min.x&&e.x<=this.max.x&&e.y>=this.min.y&&e.y<=this.max.y&&e.z>=this.min.z&&e.z<=this.max.z}containsBox(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y&&this.min.z<=e.min.z&&e.max.z<=this.max.z}getParameter(e,t){return t.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y),(e.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(e){return e.max.x>=this.min.x&&e.min.x<=this.max.x&&e.max.y>=this.min.y&&e.min.y<=this.max.y&&e.max.z>=this.min.z&&e.min.z<=this.max.z}intersectsSphere(e){return this.clampPoint(e.center,Kp),Kp.distanceToSquared(e.center)<=e.radius*e.radius}intersectsPlane(e){let t,n;return e.normal.x>0?(t=e.normal.x*this.min.x,n=e.normal.x*this.max.x):(t=e.normal.x*this.max.x,n=e.normal.x*this.min.x),e.normal.y>0?(t+=e.normal.y*this.min.y,n+=e.normal.y*this.max.y):(t+=e.normal.y*this.max.y,n+=e.normal.y*this.min.y),e.normal.z>0?(t+=e.normal.z*this.min.z,n+=e.normal.z*this.max.z):(t+=e.normal.z*this.max.z,n+=e.normal.z*this.min.z),t<=-e.constant&&n>=-e.constant}intersectsTriangle(e){if(this.isEmpty())return!1;this.getCenter(em),tm.subVectors(this.max,em),Jp.subVectors(e.a,em),Yp.subVectors(e.b,em),Xp.subVectors(e.c,em),Zp.subVectors(Yp,Jp),Qp.subVectors(Xp,Yp),$p.subVectors(Jp,Xp);let t=[0,-Zp.z,Zp.y,0,-Qp.z,Qp.y,0,-$p.z,$p.y,Zp.z,0,-Zp.x,Qp.z,0,-Qp.x,$p.z,0,-$p.x,-Zp.y,Zp.x,0,-Qp.y,Qp.x,0,-$p.y,$p.x,0];return!im(t,Jp,Yp,Xp,tm)||(t=[1,0,0,0,1,0,0,0,1],!im(t,Jp,Yp,Xp,tm))?!1:(nm.crossVectors(Zp,Qp),t=[nm.x,nm.y,nm.z],im(t,Jp,Yp,Xp,tm))}clampPoint(e,t){return t.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return this.clampPoint(e,Kp).distanceTo(e)}getBoundingSphere(e){return this.isEmpty()?e.makeEmpty():(this.getCenter(e.center),e.radius=this.getSize(Kp).length()*.5),e}intersect(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this}union(e){return this.min.min(e.min),this.max.max(e.max),this}applyMatrix4(e){return this.isEmpty()?this:(Gp[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(e),Gp[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(e),Gp[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(e),Gp[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(e),Gp[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(e),Gp[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(e),Gp[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(e),Gp[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(e),this.setFromPoints(Gp),this)}translate(e){return this.min.add(e),this.max.add(e),this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}toJSON(){return{min:this.min.toArray(),max:this.max.toArray()}}fromJSON(e){return this.min.fromArray(e.min),this.max.fromArray(e.max),this}},Gp=[new Z,new Z,new Z,new Z,new Z,new Z,new Z,new Z],Kp=new Z,qp=new Wp,Jp=new Z,Yp=new Z,Xp=new Z,Zp=new Z,Qp=new Z,$p=new Z,em=new Z,tm=new Z,nm=new Z,rm=new Z;function im(e,t,n,r,i){for(let a=0,o=e.length-3;a<=o;a+=3){rm.fromArray(e,a);let o=i.x*Math.abs(rm.x)+i.y*Math.abs(rm.y)+i.z*Math.abs(rm.z),s=t.dot(rm),c=n.dot(rm),l=r.dot(rm);if(Math.max(-Math.max(s,c,l),Math.min(s,c,l))>o)return!1}return!0}var am=om();function om(){let e=new ArrayBuffer(4),t=new Float32Array(e),n=new Uint32Array(e),r=new Uint32Array(512),i=new Uint32Array(512);for(let e=0;e<256;++e){let t=e-127;t<-27?(r[e]=0,r[e|256]=32768,i[e]=24,i[e|256]=24):t<-14?(r[e]=1024>>-t-14,r[e|256]=1024>>-t-14|32768,i[e]=-t-1,i[e|256]=-t-1):t<=15?(r[e]=t+15<<10,r[e|256]=t+15<<10|32768,i[e]=13,i[e|256]=13):t<128?(r[e]=31744,r[e|256]=64512,i[e]=24,i[e|256]=24):(r[e]=31744,r[e|256]=64512,i[e]=13,i[e|256]=13)}let a=new Uint32Array(2048),o=new Uint32Array(64),s=new Uint32Array(64);for(let e=1;e<1024;++e){let t=e<<13,n=0;for(;!(t&8388608);)t<<=1,n-=8388608;t&=-8388609,n+=947912704,a[e]=t|n}for(let e=1024;e<2048;++e)a[e]=939524096+(e-1024<<13);for(let e=1;e<31;++e)o[e]=e<<23;o[31]=1199570944,o[32]=2147483648;for(let e=33;e<63;++e)o[e]=2147483648+(e-32<<23);o[63]=3347054592;for(let e=1;e<64;++e)e!==32&&(s[e]=1024);return{floatView:t,uint32View:n,baseTable:r,shiftTable:i,mantissaTable:a,exponentTable:o,offsetTable:s}}function sm(e){Math.abs(e)>65504&&Ud(`DataUtils.toHalfFloat(): Value out of range.`),e=ef(e,-65504,65504),am.floatView[0]=e;let t=am.uint32View[0],n=t>>23&511;return am.baseTable[n]+((t&8388607)>>am.shiftTable[n])}function cm(e){let t=e>>10;return am.uint32View[0]=am.mantissaTable[am.offsetTable[t]+(e&1023)]+am.exponentTable[t],am.floatView[0]}var lm=class{static toHalfFloat(e){return sm(e)}static fromHalfFloat(e){return cm(e)}},um=new Z,dm=new X,fm=0,pm=class extends Jd{constructor(e,t,n=!1){if(super(),Array.isArray(e))throw TypeError(`THREE.BufferAttribute: array should be a Typed Array.`);this.isBufferAttribute=!0,Object.defineProperty(this,"id",{value:fm++}),this.name=``,this.array=e,this.itemSize=t,this.count=e===void 0?0:e.length/t,this.normalized=n,this.usage=Pd,this.updateRanges=[],this.gpuType=Su,this.version=0}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}copy(e){return this.name=e.name,this.array=new e.array.constructor(e.array),this.itemSize=e.itemSize,this.count=e.count,this.normalized=e.normalized,this.usage=e.usage,this.gpuType=e.gpuType,this}copyAt(e,t,n){e*=this.itemSize,n*=t.itemSize;for(let r=0,i=this.itemSize;r<i;r++)this.array[e+r]=t.array[n+r];return this}copyArray(e){return this.array.set(e),this}applyMatrix3(e){if(this.itemSize===2)for(let t=0,n=this.count;t<n;t++)dm.fromBufferAttribute(this,t),dm.applyMatrix3(e),this.setXY(t,dm.x,dm.y);else if(this.itemSize===3)for(let t=0,n=this.count;t<n;t++)um.fromBufferAttribute(this,t),um.applyMatrix3(e),this.setXYZ(t,um.x,um.y,um.z);return this}applyMatrix4(e){for(let t=0,n=this.count;t<n;t++)um.fromBufferAttribute(this,t),um.applyMatrix4(e),this.setXYZ(t,um.x,um.y,um.z);return this}applyNormalMatrix(e){for(let t=0,n=this.count;t<n;t++)um.fromBufferAttribute(this,t),um.applyNormalMatrix(e),this.setXYZ(t,um.x,um.y,um.z);return this}transformDirection(e){for(let t=0,n=this.count;t<n;t++)um.fromBufferAttribute(this,t),um.transformDirection(e),this.setXYZ(t,um.x,um.y,um.z);return this}set(e,t=0){return this.array.set(e,t),this}getComponent(e,t){let n=this.array[e*this.itemSize+t];return this.normalized&&(n=bf(n,this.array)),n}setComponent(e,t,n){return this.normalized&&(n=xf(n,this.array)),this.array[e*this.itemSize+t]=n,this}getX(e){let t=this.array[e*this.itemSize];return this.normalized&&(t=bf(t,this.array)),t}setX(e,t){return this.normalized&&(t=xf(t,this.array)),this.array[e*this.itemSize]=t,this}getY(e){let t=this.array[e*this.itemSize+1];return this.normalized&&(t=bf(t,this.array)),t}setY(e,t){return this.normalized&&(t=xf(t,this.array)),this.array[e*this.itemSize+1]=t,this}getZ(e){let t=this.array[e*this.itemSize+2];return this.normalized&&(t=bf(t,this.array)),t}setZ(e,t){return this.normalized&&(t=xf(t,this.array)),this.array[e*this.itemSize+2]=t,this}getW(e){let t=this.array[e*this.itemSize+3];return this.normalized&&(t=bf(t,this.array)),t}setW(e,t){return this.normalized&&(t=xf(t,this.array)),this.array[e*this.itemSize+3]=t,this}setXY(e,t,n){return e*=this.itemSize,this.normalized&&(t=xf(t,this.array),n=xf(n,this.array)),this.array[e+0]=t,this.array[e+1]=n,this}setXYZ(e,t,n,r){return e*=this.itemSize,this.normalized&&(t=xf(t,this.array),n=xf(n,this.array),r=xf(r,this.array)),this.array[e+0]=t,this.array[e+1]=n,this.array[e+2]=r,this}setXYZW(e,t,n,r,i){return e*=this.itemSize,this.normalized&&(t=xf(t,this.array),n=xf(n,this.array),r=xf(r,this.array),i=xf(i,this.array)),this.array[e+0]=t,this.array[e+1]=n,this.array[e+2]=r,this.array[e+3]=i,this}onUpload(e){return this.onUploadCallback=e,this}clone(){return new this.constructor(this.array,this.itemSize).copy(this)}toJSON(){let e={itemSize:this.itemSize,type:this.array.constructor.name,array:Array.from(this.array),normalized:this.normalized};return e.name=this.name,e.usage=this.usage,e.gpuType=this.gpuType,e}dispose(){this.dispatchEvent({type:`dispose`})}},mm=class extends pm{constructor(e,t,n){super(new Uint16Array(e),t,n)}},hm=class extends pm{constructor(e,t,n){super(new Uint32Array(e),t,n)}},gm=class extends pm{constructor(e,t,n){super(new Float32Array(e),t,n)}},_m=new Wp,vm=new Z,ym=new Z,bm=class{constructor(e=new Z,t=-1){this.isSphere=!0,this.center=e,this.radius=t}set(e,t){return this.center.copy(e),this.radius=t,this}setFromPoints(e,t){let n=this.center;t===void 0?_m.setFromPoints(e).getCenter(n):n.copy(t);let r=0;for(let t=0,i=e.length;t<i;t++)r=Math.max(r,n.distanceToSquared(e[t]));return this.radius=Math.sqrt(r),this}copy(e){return this.center.copy(e.center),this.radius=e.radius,this}isEmpty(){return this.radius<0}makeEmpty(){return this.center.set(0,0,0),this.radius=-1,this}containsPoint(e){return e.distanceToSquared(this.center)<=this.radius*this.radius}distanceToPoint(e){return e.distanceTo(this.center)-this.radius}intersectsSphere(e){let t=this.radius+e.radius;return e.center.distanceToSquared(this.center)<=t*t}intersectsBox(e){return e.intersectsSphere(this)}intersectsPlane(e){return Math.abs(e.distanceToPoint(this.center))<=this.radius}clampPoint(e,t){let n=this.center.distanceToSquared(e);return t.copy(e),n>this.radius*this.radius&&(t.sub(this.center).normalize(),t.multiplyScalar(this.radius).add(this.center)),t}getBoundingBox(e){return this.isEmpty()?(e.makeEmpty(),e):(e.set(this.center,this.center),e.expandByScalar(this.radius),e)}applyMatrix4(e){return this.center.applyMatrix4(e),this.radius*=e.getMaxScaleOnAxis(),this}translate(e){return this.center.add(e),this}expandByPoint(e){if(this.isEmpty())return this.center.copy(e),this.radius=0,this;vm.subVectors(e,this.center);let t=vm.lengthSq();if(t>this.radius*this.radius){let e=Math.sqrt(t),n=(e-this.radius)*.5;this.center.addScaledVector(vm,n/e),this.radius+=n}return this}union(e){return e.isEmpty()?this:this.isEmpty()?(this.copy(e),this):(this.center.equals(e.center)===!0?this.radius=Math.max(this.radius,e.radius):(ym.subVectors(e.center,this.center).setLength(e.radius),this.expandByPoint(vm.copy(e.center).add(ym)),this.expandByPoint(vm.copy(e.center).sub(ym))),this)}equals(e){return e.center.equals(this.center)&&e.radius===this.radius}clone(){return new this.constructor().copy(this)}toJSON(){return{radius:this.radius,center:this.center.toArray()}}fromJSON(e){return this.radius=e.radius,this.center.fromArray(e.center),this}},xm=0,Sm=new qf,Cm=new bp,wm=new Z,Tm=new Wp,Em=new Wp,Dm=new Z,Om=class e extends Jd{constructor(){super(),this.isBufferGeometry=!0,Object.defineProperty(this,"id",{value:xm++}),this.uuid=$d(),this.name=``,this.type=`BufferGeometry`,this.index=null,this.indirect=null,this.indirectOffset=0,this.attributes={},this.morphAttributes={},this.morphTargetsRelative=!1,this.groups=[],this.boundingBox=null,this.boundingSphere=null,this.drawRange={start:0,count:1/0},this.userData={},this._transformed=!1}getIndex(){return this.index}setIndex(e){return this.index=Array.isArray(e)?new(Id(e)?hm:mm)(e,1):e,this}setIndirect(e,t=0){return this.indirect=e,this.indirectOffset=t,this}getIndirect(){return this.indirect}getAttribute(e){return this.attributes[e]}setAttribute(e,t){return this.attributes[e]=t,this}deleteAttribute(e){return delete this.attributes[e],this}hasAttribute(e){return this.attributes[e]!==void 0}addGroup(e,t,n=0){this.groups.push({start:e,count:t,materialIndex:n})}clearGroups(){this.groups=[]}setDrawRange(e,t){this.drawRange.start=e,this.drawRange.count=t}applyMatrix4(e){let t=this.attributes.position;t!==void 0&&(t.applyMatrix4(e),t.needsUpdate=!0);let n=this.attributes.normal;if(n!==void 0){let t=new Ef().getNormalMatrix(e);n.applyNormalMatrix(t),n.needsUpdate=!0}let r=this.attributes.tangent;return r!==void 0&&(r.transformDirection(e),r.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this._transformed=!0,this}applyQuaternion(e){return Sm.makeRotationFromQuaternion(e),this.applyMatrix4(Sm),this}rotateX(e){return Sm.makeRotationX(e),this.applyMatrix4(Sm),this}rotateY(e){return Sm.makeRotationY(e),this.applyMatrix4(Sm),this}rotateZ(e){return Sm.makeRotationZ(e),this.applyMatrix4(Sm),this}translate(e,t,n){return Sm.makeTranslation(e,t,n),this.applyMatrix4(Sm),this}scale(e,t,n){return Sm.makeScale(e,t,n),this.applyMatrix4(Sm),this}lookAt(e){return Cm.lookAt(e),Cm.updateMatrix(),this.applyMatrix4(Cm.matrix),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(wm).negate(),this.translate(wm.x,wm.y,wm.z),this}setFromPoints(e){let t=this.getAttribute(`position`);if(t===void 0){let t=[];for(let n=0,r=e.length;n<r;n++){let r=e[n];t.push(r.x,r.y,r.z||0)}this.setAttribute(`position`,new gm(t,3))}else{let n=Math.min(e.length,t.count);for(let r=0;r<n;r++){let n=e[r];t.setXYZ(r,n.x,n.y,n.z||0)}e.length>t.count&&Ud(`BufferGeometry: Buffer size too small for points data. Use .dispose() and create a new geometry.`),t.needsUpdate=!0}return this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new Wp);let e=this.attributes.position,t=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){Wd(`BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box.`,this),this.boundingBox.set(new Z(-1/0,-1/0,-1/0),new Z(1/0,1/0,1/0));return}if(e!==void 0){if(this.boundingBox.setFromBufferAttribute(e),t)for(let e=0,n=t.length;e<n;e++){let n=t[e];Tm.setFromBufferAttribute(n),this.morphTargetsRelative?(Dm.addVectors(this.boundingBox.min,Tm.min),this.boundingBox.expandByPoint(Dm),Dm.addVectors(this.boundingBox.max,Tm.max),this.boundingBox.expandByPoint(Dm)):(this.boundingBox.expandByPoint(Tm.min),this.boundingBox.expandByPoint(Tm.max))}}else this.boundingBox.makeEmpty();(isNaN(this.boundingBox.min.x)||isNaN(this.boundingBox.min.y)||isNaN(this.boundingBox.min.z))&&Wd(`BufferGeometry.computeBoundingBox(): Computed min/max have NaN values. The "position" attribute is likely to have NaN values.`,this)}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new bm);let e=this.attributes.position,t=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){Wd(`BufferGeometry.computeBoundingSphere(): GLBufferAttribute requires a manual bounding sphere.`,this),this.boundingSphere.set(new Z,1/0);return}if(e){let n=this.boundingSphere.center;if(Tm.setFromBufferAttribute(e),t)for(let e=0,n=t.length;e<n;e++){let n=t[e];Em.setFromBufferAttribute(n),this.morphTargetsRelative?(Dm.addVectors(Tm.min,Em.min),Tm.expandByPoint(Dm),Dm.addVectors(Tm.max,Em.max),Tm.expandByPoint(Dm)):(Tm.expandByPoint(Em.min),Tm.expandByPoint(Em.max))}Tm.getCenter(n);let r=0;for(let t=0,i=e.count;t<i;t++)Dm.fromBufferAttribute(e,t),r=Math.max(r,n.distanceToSquared(Dm));if(t)for(let i=0,a=t.length;i<a;i++){let a=t[i],o=this.morphTargetsRelative;for(let t=0,i=a.count;t<i;t++)Dm.fromBufferAttribute(a,t),o&&(wm.fromBufferAttribute(e,t),Dm.add(wm)),r=Math.max(r,n.distanceToSquared(Dm))}this.boundingSphere.radius=Math.sqrt(r),isNaN(this.boundingSphere.radius)&&Wd(`BufferGeometry.computeBoundingSphere(): Computed radius is NaN. The "position" attribute is likely to have NaN values.`,this)}}computeTangents(){let e=this.index,t=this.attributes;if(e===null||t.position===void 0||t.normal===void 0||t.uv===void 0){Wd(`BufferGeometry: .computeTangents() failed. Missing required attributes (index, position, normal or uv)`);return}let n=t.position,r=t.normal,i=t.uv,a=this.getAttribute(`tangent`);(a===void 0||a.count!==n.count)&&(a=new pm(new Float32Array(4*n.count),4),this.setAttribute(`tangent`,a));let o=[],s=[];for(let e=0;e<n.count;e++)o[e]=new Z,s[e]=new Z;let c=new Z,l=new Z,u=new Z,d=new X,f=new X,p=new X,m=new Z,h=new Z;function g(e,t,r){c.fromBufferAttribute(n,e),l.fromBufferAttribute(n,t),u.fromBufferAttribute(n,r),d.fromBufferAttribute(i,e),f.fromBufferAttribute(i,t),p.fromBufferAttribute(i,r),l.sub(c),u.sub(c),f.sub(d),p.sub(d);let a=1/(f.x*p.y-p.x*f.y);isFinite(a)&&(m.copy(l).multiplyScalar(p.y).addScaledVector(u,-f.y).multiplyScalar(a),h.copy(u).multiplyScalar(f.x).addScaledVector(l,-p.x).multiplyScalar(a),o[e].add(m),o[t].add(m),o[r].add(m),s[e].add(h),s[t].add(h),s[r].add(h))}let _=this.groups;_.length===0&&(_=[{start:0,count:e.count}]);for(let t=0,n=_.length;t<n;++t){let n=_[t],r=n.start,i=n.count;for(let t=r,n=r+i;t<n;t+=3)g(e.getX(t+0),e.getX(t+1),e.getX(t+2))}let v=new Z,y=new Z,b=new Z,x=new Z;function S(e){b.fromBufferAttribute(r,e),x.copy(b);let t=o[e];v.copy(t),v.sub(b.multiplyScalar(b.dot(t))).normalize(),y.crossVectors(x,t);let n=y.dot(s[e])<0?-1:1;a.setXYZW(e,v.x,v.y,v.z,n)}for(let t=0,n=_.length;t<n;++t){let n=_[t],r=n.start,i=n.count;for(let t=r,n=r+i;t<n;t+=3)S(e.getX(t+0)),S(e.getX(t+1)),S(e.getX(t+2))}this._transformed=!0}computeVertexNormals(){let e=this.index,t=this.getAttribute(`position`);if(t!==void 0){let n=this.getAttribute(`normal`);if(n===void 0||n.count!==t.count)n=new pm(new Float32Array(t.count*3),3),this.setAttribute(`normal`,n);else for(let e=0,t=n.count;e<t;e++)n.setXYZ(e,0,0,0);let r=new Z,i=new Z,a=new Z,o=new Z,s=new Z,c=new Z,l=new Z,u=new Z;if(e)for(let d=0,f=e.count;d<f;d+=3){let f=e.getX(d+0),p=e.getX(d+1),m=e.getX(d+2);r.fromBufferAttribute(t,f),i.fromBufferAttribute(t,p),a.fromBufferAttribute(t,m),l.subVectors(a,i),u.subVectors(r,i),l.cross(u),o.fromBufferAttribute(n,f),s.fromBufferAttribute(n,p),c.fromBufferAttribute(n,m),o.add(l),s.add(l),c.add(l),n.setXYZ(f,o.x,o.y,o.z),n.setXYZ(p,s.x,s.y,s.z),n.setXYZ(m,c.x,c.y,c.z)}else for(let e=0,o=t.count;e<o;e+=3)r.fromBufferAttribute(t,e+0),i.fromBufferAttribute(t,e+1),a.fromBufferAttribute(t,e+2),l.subVectors(a,i),u.subVectors(r,i),l.cross(u),n.setXYZ(e+0,l.x,l.y,l.z),n.setXYZ(e+1,l.x,l.y,l.z),n.setXYZ(e+2,l.x,l.y,l.z);this.normalizeNormals(),n.needsUpdate=!0}}normalizeNormals(){let e=this.attributes.normal;for(let t=0,n=e.count;t<n;t++)Dm.fromBufferAttribute(e,t),Dm.normalize(),e.setXYZ(t,Dm.x,Dm.y,Dm.z)}toNonIndexed(){function t(e,t){let n=e.array,r=e.itemSize,i=e.normalized,a=new n.constructor(t.length*r),o=0,s=0;for(let i=0,c=t.length;i<c;i++){o=e.isInterleavedBufferAttribute?t[i]*e.data.stride+e.offset:t[i]*r;for(let e=0;e<r;e++)a[s++]=n[o++]}return new pm(a,r,i)}if(this.index===null)return Ud(`BufferGeometry.toNonIndexed(): BufferGeometry is already non-indexed.`),this;let n=new e,r=this.index.array,i=this.attributes;for(let e in i){let a=i[e],o=t(a,r);n.setAttribute(e,o)}let a=this.morphAttributes;for(let e in a){let i=[],o=a[e];for(let e=0,n=o.length;e<n;e++){let n=o[e],a=t(n,r);i.push(a)}n.morphAttributes[e]=i}n.morphTargetsRelative=this.morphTargetsRelative;let o=this.groups;for(let e=0,t=o.length;e<t;e++){let t=o[e];n.addGroup(t.start,t.count,t.materialIndex)}return n}toJSON(){let e={metadata:{version:4.7,type:`BufferGeometry`,generator:`BufferGeometry.toJSON`}};if(e.uuid=this.uuid,e.type=this.parameters!==void 0&&this._transformed===!0?`BufferGeometry`:this.type,e.name=this.name,Object.keys(this.userData).length>0&&(e.userData=this.userData),this.parameters!==void 0&&this._transformed!==!0){let t=this.parameters;for(let n in t)t[n]!==void 0&&(e[n]=t[n]);return e}e.data={attributes:{}};let t=this.index;t!==null&&(e.data.index={type:t.array.constructor.name,array:Array.prototype.slice.call(t.array)});let n=this.attributes;for(let t in n){let r=n[t];e.data.attributes[t]=r.toJSON(e.data)}let r={},i=!1;for(let t in this.morphAttributes){let n=this.morphAttributes[t],a=[];for(let t=0,r=n.length;t<r;t++){let r=n[t];a.push(r.toJSON(e.data))}a.length>0&&(r[t]=a,i=!0)}i&&(e.data.morphAttributes=r,e.data.morphTargetsRelative=this.morphTargetsRelative);let a=this.groups;a.length>0&&(e.data.groups=JSON.parse(JSON.stringify(a)));let o=this.boundingSphere;return o!==null&&(e.data.boundingSphere=o.toJSON()),e}clone(){return new this.constructor().copy(this)}copy(e){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;let t={};this.name=e.name;let n=e.index;n!==null&&this.setIndex(n.clone());let r=e.attributes;for(let e in r){let n=r[e];this.setAttribute(e,n.clone(t))}let i=e.morphAttributes;for(let e in i){let n=[],r=i[e];for(let e=0,i=r.length;e<i;e++)n.push(r[e].clone(t));this.morphAttributes[e]=n}this.morphTargetsRelative=e.morphTargetsRelative;let a=e.groups;for(let e=0,t=a.length;e<t;e++){let t=a[e];this.addGroup(t.start,t.count,t.materialIndex)}let o=e.boundingBox;o!==null&&(this.boundingBox=o.clone());let s=e.boundingSphere;return s!==null&&(this.boundingSphere=s.clone()),this.drawRange.start=e.drawRange.start,this.drawRange.count=e.drawRange.count,this.userData=e.userData,this._transformed=e._transformed,this}dispose(){this.dispatchEvent({type:`dispose`})}},km=class{constructor(e,t){this.isInterleavedBuffer=!0,this.array=e,this.stride=t,this.count=e===void 0?0:e.length/t,this.usage=Pd,this.updateRanges=[],this.version=0,this.uuid=$d()}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}copy(e){return this.array=new e.array.constructor(e.array),this.count=e.count,this.stride=e.stride,this.usage=e.usage,this}copyAt(e,t,n){e*=this.stride,n*=t.stride;for(let r=0,i=this.stride;r<i;r++)this.array[e+r]=t.array[n+r];return this}set(e,t=0){return this.array.set(e,t),this}clone(e){e.arrayBuffers===void 0&&(e.arrayBuffers={}),this.array.buffer._uuid===void 0&&(this.array.buffer._uuid=$d()),e.arrayBuffers[this.array.buffer._uuid]===void 0&&(e.arrayBuffers[this.array.buffer._uuid]=this.array.slice(0).buffer);let t=new this.array.constructor(e.arrayBuffers[this.array.buffer._uuid]),n=new this.constructor(t,this.stride);return n.setUsage(this.usage),n}onUpload(e){return this.onUploadCallback=e,this}toJSON(e){e.arrayBuffers===void 0&&(e.arrayBuffers={}),this.array.buffer._uuid===void 0&&(this.array.buffer._uuid=$d()),e.arrayBuffers[this.array.buffer._uuid]===void 0&&(e.arrayBuffers[this.array.buffer._uuid]=Array.from(new Uint32Array(this.array.buffer)));let t={uuid:this.uuid,buffer:this.array.buffer._uuid,type:this.array.constructor.name,stride:this.stride};return t.usage=this.usage,t}},Am=new Z,jm=class e{constructor(e,t,n,r=!1){this.isInterleavedBufferAttribute=!0,this.name=``,this.data=e,this.itemSize=t,this.offset=n,this.normalized=r}get count(){return this.data.count}get array(){return this.data.array}set needsUpdate(e){this.data.needsUpdate=e}applyMatrix4(e){for(let t=0,n=this.data.count;t<n;t++)Am.fromBufferAttribute(this,t),Am.applyMatrix4(e),this.setXYZ(t,Am.x,Am.y,Am.z);return this}applyNormalMatrix(e){for(let t=0,n=this.count;t<n;t++)Am.fromBufferAttribute(this,t),Am.applyNormalMatrix(e),this.setXYZ(t,Am.x,Am.y,Am.z);return this}transformDirection(e){for(let t=0,n=this.count;t<n;t++)Am.fromBufferAttribute(this,t),Am.transformDirection(e),this.setXYZ(t,Am.x,Am.y,Am.z);return this}getComponent(e,t){let n=this.array[e*this.data.stride+this.offset+t];return this.normalized&&(n=bf(n,this.array)),n}setComponent(e,t,n){return this.normalized&&(n=xf(n,this.array)),this.data.array[e*this.data.stride+this.offset+t]=n,this}setX(e,t){return this.normalized&&(t=xf(t,this.array)),this.data.array[e*this.data.stride+this.offset]=t,this}setY(e,t){return this.normalized&&(t=xf(t,this.array)),this.data.array[e*this.data.stride+this.offset+1]=t,this}setZ(e,t){return this.normalized&&(t=xf(t,this.array)),this.data.array[e*this.data.stride+this.offset+2]=t,this}setW(e,t){return this.normalized&&(t=xf(t,this.array)),this.data.array[e*this.data.stride+this.offset+3]=t,this}getX(e){let t=this.data.array[e*this.data.stride+this.offset];return this.normalized&&(t=bf(t,this.array)),t}getY(e){let t=this.data.array[e*this.data.stride+this.offset+1];return this.normalized&&(t=bf(t,this.array)),t}getZ(e){let t=this.data.array[e*this.data.stride+this.offset+2];return this.normalized&&(t=bf(t,this.array)),t}getW(e){let t=this.data.array[e*this.data.stride+this.offset+3];return this.normalized&&(t=bf(t,this.array)),t}setXY(e,t,n){return e=e*this.data.stride+this.offset,this.normalized&&(t=xf(t,this.array),n=xf(n,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=n,this}setXYZ(e,t,n,r){return e=e*this.data.stride+this.offset,this.normalized&&(t=xf(t,this.array),n=xf(n,this.array),r=xf(r,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=n,this.data.array[e+2]=r,this}setXYZW(e,t,n,r,i){return e=e*this.data.stride+this.offset,this.normalized&&(t=xf(t,this.array),n=xf(n,this.array),r=xf(r,this.array),i=xf(i,this.array)),this.data.array[e+0]=t,this.data.array[e+1]=n,this.data.array[e+2]=r,this.data.array[e+3]=i,this}clone(t){if(t===void 0){Vd(`InterleavedBufferAttribute.clone(): Cloning an interleaved buffer attribute will de-interleave buffer data.`);let e=[];for(let t=0;t<this.count;t++){let n=t*this.data.stride+this.offset;for(let t=0;t<this.itemSize;t++)e.push(this.data.array[n+t])}return new pm(new this.array.constructor(e),this.itemSize,this.normalized)}return t.interleavedBuffers===void 0&&(t.interleavedBuffers={}),t.interleavedBuffers[this.data.uuid]===void 0&&(t.interleavedBuffers[this.data.uuid]=this.data.clone(t)),new e(t.interleavedBuffers[this.data.uuid],this.itemSize,this.offset,this.normalized)}toJSON(e){if(e===void 0){Vd(`InterleavedBufferAttribute.toJSON(): Serializing an interleaved buffer attribute will de-interleave buffer data.`);let e=[];for(let t=0;t<this.count;t++){let n=t*this.data.stride+this.offset;for(let t=0;t<this.itemSize;t++)e.push(this.data.array[n+t])}return{itemSize:this.itemSize,type:this.array.constructor.name,array:e,normalized:this.normalized}}return e.interleavedBuffers===void 0&&(e.interleavedBuffers={}),e.interleavedBuffers[this.data.uuid]===void 0&&(e.interleavedBuffers[this.data.uuid]=this.data.toJSON(e)),{isInterleavedBufferAttribute:!0,itemSize:this.itemSize,data:this.data.uuid,offset:this.offset,normalized:this.normalized}}},Mm=new Z,Nm=new Z,Pm=new Ef,Fm=class{constructor(e=new Z(1,0,0),t=0){this.isPlane=!0,this.normal=e,this.constant=t}set(e,t){return this.normal.copy(e),this.constant=t,this}setComponents(e,t,n,r){return this.normal.set(e,t,n),this.constant=r,this}setFromNormalAndCoplanarPoint(e,t){return this.normal.copy(e),this.constant=-t.dot(this.normal),this}setFromCoplanarPoints(e,t,n){let r=Mm.subVectors(n,t).cross(Nm.subVectors(e,t)).normalize();return this.setFromNormalAndCoplanarPoint(r,e),this}copy(e){return this.normal.copy(e.normal),this.constant=e.constant,this}normalize(){let e=1/this.normal.length();return this.normal.multiplyScalar(e),this.constant*=e,this}negate(){return this.constant*=-1,this.normal.negate(),this}distanceToPoint(e){return this.normal.dot(e)+this.constant}distanceToSphere(e){return this.distanceToPoint(e.center)-e.radius}projectPoint(e,t){return t.copy(e).addScaledVector(this.normal,-this.distanceToPoint(e))}intersectLine(e,t,n=!0){let r=e.delta(Mm),i=this.normal.dot(r);if(i===0)return this.distanceToPoint(e.start)===0?t.copy(e.start):null;let a=-(e.start.dot(this.normal)+this.constant)/i;return n===!0&&(a<0||a>1)?null:t.copy(e.start).addScaledVector(r,a)}intersectsLine(e){let t=this.distanceToPoint(e.start),n=this.distanceToPoint(e.end);return t<0&&n>0||n<0&&t>0}intersectsBox(e){return e.intersectsPlane(this)}intersectsSphere(e){return e.intersectsPlane(this)}coplanarPoint(e){return e.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(e,t){let n=t||Pm.getNormalMatrix(e),r=this.coplanarPoint(Mm).applyMatrix4(e),i=this.normal.applyMatrix3(n).normalize();return this.constant=-r.dot(i),this}translate(e){return this.constant-=e.dot(this.normal),this}equals(e){return e.normal.equals(this.normal)&&e.constant===this.constant}clone(){return new this.constructor().copy(this)}toJSON(){return{normal:this.normal.toArray(),constant:this.constant}}fromJSON(e){return this.normal.fromArray(e.normal),this.constant=e.constant,this}},Im=0,Lm=class extends Jd{constructor(){super(),this.isMaterial=!0,Object.defineProperty(this,"id",{value:Im++}),this.uuid=$d(),this.name=``,this.type=`Material`,this.blending=1,this.side=0,this.vertexColors=!1,this.opacity=1,this.transparent=!1,this.alphaHash=!1,this.blendSrc=204,this.blendDst=205,this.blendEquation=100,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.blendColor=new Q(0,0,0),this.blendAlpha=0,this.depthFunc=3,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=519,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=Nd,this.stencilZFail=Nd,this.stencilZPass=Nd,this.stencilWrite=!1,this.clippingPlanes=null,this.clipIntersection=!1,this.clipShadows=!1,this.shadowSide=null,this.colorWrite=!0,this.precision=null,this.polygonOffset=!1,this.polygonOffsetFactor=0,this.polygonOffsetUnits=0,this.dithering=!1,this.alphaToCoverage=!1,this.premultipliedAlpha=!1,this.forceSinglePass=!1,this.allowOverride=!0,this.visible=!0,this.toneMapped=!0,this.userData={},this.version=0,this._alphaTest=0}get alphaTest(){return this._alphaTest}set alphaTest(e){this._alphaTest>0!=e>0&&this.version++,this._alphaTest=e}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(e){if(e!==void 0)for(let t in e){let n=e[t];if(n===void 0){Ud(`Material: parameter '${t}' has value of undefined.`);continue}let r=this[t];if(r===void 0){Ud(`Material: '${t}' is not a property of THREE.${this.type}.`);continue}r&&r.isColor?r.set(n):r&&r.isVector2&&n&&n.isVector2||r&&r.isEuler&&n&&n.isEuler||r&&r.isVector3&&n&&n.isVector3?r.copy(n):this[t]=n}}toJSON(e){let t=e===void 0||typeof e==`string`;t&&(e={textures:{},images:{}});let n={metadata:{version:4.7,type:`Material`,generator:`Material.toJSON`}};n.uuid=this.uuid,n.type=this.type,n.blending=this.blending,n.side=this.side,n.shadowSide=this.shadowSide,n.vertexColors=this.vertexColors,n.opacity=this.opacity,n.transparent=this.transparent,n.blendSrc=this.blendSrc,n.blendDst=this.blendDst,n.blendEquation=this.blendEquation,n.blendSrcAlpha=this.blendSrcAlpha,n.blendDstAlpha=this.blendDstAlpha,n.blendEquationAlpha=this.blendEquationAlpha,n.blendColor=this.blendColor.getHex(),n.blendAlpha=this.blendAlpha,n.depthFunc=this.depthFunc,n.depthTest=this.depthTest,n.depthWrite=this.depthWrite,n.colorWrite=this.colorWrite,n.clipIntersection=this.clipIntersection,n.clipShadows=this.clipShadows,n.stencilWriteMask=this.stencilWriteMask,n.stencilFunc=this.stencilFunc,n.stencilRef=this.stencilRef,n.stencilFuncMask=this.stencilFuncMask,n.stencilFail=this.stencilFail,n.stencilZFail=this.stencilZFail,n.stencilZPass=this.stencilZPass,n.stencilWrite=this.stencilWrite,n.polygonOffset=this.polygonOffset,n.polygonOffsetFactor=this.polygonOffsetFactor,n.polygonOffsetUnits=this.polygonOffsetUnits,n.dithering=this.dithering,n.alphaTest=this.alphaTest,n.alphaHash=this.alphaHash,n.alphaToCoverage=this.alphaToCoverage,n.premultipliedAlpha=this.premultipliedAlpha,n.forceSinglePass=this.forceSinglePass,n.allowOverride=this.allowOverride,n.visible=this.visible,n.toneMapped=this.toneMapped,n.name=this.name,this.color&&this.color.isColor&&(n.color=this.color.getHex()),this.roughness!==void 0&&(n.roughness=this.roughness),this.metalness!==void 0&&(n.metalness=this.metalness),this.sheen!==void 0&&(n.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(n.sheenColor=this.sheenColor.getHex()),this.sheenRoughness!==void 0&&(n.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex()),this.emissiveIntensity!==void 0&&(n.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex()),this.specularIntensity!==void 0&&(n.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(n.specularColor=this.specularColor.getHex()),this.shininess!==void 0&&(n.shininess=this.shininess),this.clearcoat!==void 0&&(n.clearcoat=this.clearcoat),this.clearcoatRoughness!==void 0&&(n.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(n.clearcoatMap=this.clearcoatMap.toJSON(e).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(n.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(e).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(n.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(e).uuid,n.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.sheenColorMap&&this.sheenColorMap.isTexture&&(n.sheenColorMap=this.sheenColorMap.toJSON(e).uuid),this.sheenRoughnessMap&&this.sheenRoughnessMap.isTexture&&(n.sheenRoughnessMap=this.sheenRoughnessMap.toJSON(e).uuid),this.dispersion!==void 0&&(n.dispersion=this.dispersion),this.retroreflectivity!==void 0&&(n.retroreflectivity=this.retroreflectivity),this.iridescence!==void 0&&(n.iridescence=this.iridescence),this.iridescenceIOR!==void 0&&(n.iridescenceIOR=this.iridescenceIOR),this.iridescenceThicknessRange!==void 0&&(n.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(n.iridescenceMap=this.iridescenceMap.toJSON(e).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(n.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(e).uuid),this.anisotropy!==void 0&&(n.anisotropy=this.anisotropy),this.anisotropyRotation!==void 0&&(n.anisotropyRotation=this.anisotropyRotation),this.anisotropyMap&&this.anisotropyMap.isTexture&&(n.anisotropyMap=this.anisotropyMap.toJSON(e).uuid),this.map&&this.map.isTexture&&(n.map=this.map.toJSON(e).uuid),this.matcap&&this.matcap.isTexture&&(n.matcap=this.matcap.toJSON(e).uuid),this.alphaMap&&this.alphaMap.isTexture&&(n.alphaMap=this.alphaMap.toJSON(e).uuid),this.lightMap&&this.lightMap.isTexture&&(n.lightMap=this.lightMap.toJSON(e).uuid,n.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(n.aoMap=this.aoMap.toJSON(e).uuid,n.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(n.bumpMap=this.bumpMap.toJSON(e).uuid,n.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(n.normalMap=this.normalMap.toJSON(e).uuid,n.normalMapType=this.normalMapType,n.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(n.displacementMap=this.displacementMap.toJSON(e).uuid,n.displacementScale=this.displacementScale,n.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(n.roughnessMap=this.roughnessMap.toJSON(e).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(n.metalnessMap=this.metalnessMap.toJSON(e).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(n.emissiveMap=this.emissiveMap.toJSON(e).uuid),this.specularMap&&this.specularMap.isTexture&&(n.specularMap=this.specularMap.toJSON(e).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(n.specularIntensityMap=this.specularIntensityMap.toJSON(e).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(n.specularColorMap=this.specularColorMap.toJSON(e).uuid),this.envMap&&this.envMap.isTexture&&(n.envMap=this.envMap.toJSON(e).uuid,this.combine!==void 0&&(n.combine=this.combine)),this.envMapRotation!==void 0&&(n.envMapRotation=this.envMapRotation.toArray()),this.envMapIntensity!==void 0&&(n.envMapIntensity=this.envMapIntensity),this.reflectivity!==void 0&&(n.reflectivity=this.reflectivity),this.refractionRatio!==void 0&&(n.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(e).uuid),this.transmission!==void 0&&(n.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(n.transmissionMap=this.transmissionMap.toJSON(e).uuid),this.thickness!==void 0&&(n.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(n.thicknessMap=this.thicknessMap.toJSON(e).uuid),this.attenuationDistance!==void 0&&(n.attenuationDistance=this.attenuationDistance),this.attenuationColor!==void 0&&(n.attenuationColor=this.attenuationColor.getHex()),this.size!==void 0&&(n.size=this.size),this.sizeAttenuation!==void 0&&(n.sizeAttenuation=this.sizeAttenuation),Array.isArray(this.clippingPlanes)&&this.clippingPlanes.length>0&&(n.clippingPlanes=this.clippingPlanes.map(e=>e.toJSON())),this.rotation!==void 0&&(n.rotation=this.rotation),this.depthPacking!==void 0&&(n.depthPacking=this.depthPacking),this.linewidth!==void 0&&(n.linewidth=this.linewidth),this.linecap!==void 0&&(n.linecap=this.linecap),this.linejoin!==void 0&&(n.linejoin=this.linejoin),this.dashSize!==void 0&&(n.dashSize=this.dashSize),this.gapSize!==void 0&&(n.gapSize=this.gapSize),this.scale!==void 0&&(n.scale=this.scale),this.wireframe!==void 0&&(n.wireframe=this.wireframe),this.wireframeLinewidth!==void 0&&(n.wireframeLinewidth=this.wireframeLinewidth),this.wireframeLinecap!==void 0&&(n.wireframeLinecap=this.wireframeLinecap),this.wireframeLinejoin!==void 0&&(n.wireframeLinejoin=this.wireframeLinejoin),this.flatShading!==void 0&&(n.flatShading=this.flatShading),this.fog!==void 0&&(n.fog=this.fog),Object.keys(this.userData).length>0&&(n.userData=this.userData);function r(e){let t=[];for(let n in e){let r=e[n];delete r.metadata,t.push(r)}return t}if(t){let t=r(e.textures),i=r(e.images);t.length>0&&(n.textures=t),i.length>0&&(n.images=i)}return n}fromJSON(e,t){if(e.uuid!==void 0&&(this.uuid=e.uuid),e.name!==void 0&&(this.name=e.name),e.color!==void 0&&this.color!==void 0&&this.color.setHex(e.color),e.roughness!==void 0&&(this.roughness=e.roughness),e.metalness!==void 0&&(this.metalness=e.metalness),e.sheen!==void 0&&(this.sheen=e.sheen),e.sheenColor!==void 0&&(this.sheenColor=new Q().setHex(e.sheenColor)),e.sheenRoughness!==void 0&&(this.sheenRoughness=e.sheenRoughness),e.emissive!==void 0&&this.emissive!==void 0&&this.emissive.setHex(e.emissive),e.specular!==void 0&&this.specular!==void 0&&this.specular.setHex(e.specular),e.specularIntensity!==void 0&&(this.specularIntensity=e.specularIntensity),e.specularColor!==void 0&&this.specularColor!==void 0&&this.specularColor.setHex(e.specularColor),e.shininess!==void 0&&(this.shininess=e.shininess),e.clearcoat!==void 0&&(this.clearcoat=e.clearcoat),e.clearcoatRoughness!==void 0&&(this.clearcoatRoughness=e.clearcoatRoughness),e.dispersion!==void 0&&(this.dispersion=e.dispersion),e.retroreflectivity!==void 0&&(this.retroreflectivity=e.retroreflectivity),e.iridescence!==void 0&&(this.iridescence=e.iridescence),e.iridescenceIOR!==void 0&&(this.iridescenceIOR=e.iridescenceIOR),e.iridescenceThicknessRange!==void 0&&(this.iridescenceThicknessRange=e.iridescenceThicknessRange),e.transmission!==void 0&&(this.transmission=e.transmission),e.thickness!==void 0&&(this.thickness=e.thickness),e.attenuationDistance!==void 0&&(this.attenuationDistance=e.attenuationDistance),e.attenuationColor!==void 0&&this.attenuationColor!==void 0&&this.attenuationColor.setHex(e.attenuationColor),e.anisotropy!==void 0&&(this.anisotropy=e.anisotropy),e.anisotropyRotation!==void 0&&(this.anisotropyRotation=e.anisotropyRotation),e.fog!==void 0&&(this.fog=e.fog),e.flatShading!==void 0&&(this.flatShading=e.flatShading),e.blending!==void 0&&(this.blending=e.blending),e.combine!==void 0&&(this.combine=e.combine),e.side!==void 0&&(this.side=e.side),e.shadowSide!==void 0&&(this.shadowSide=e.shadowSide),e.opacity!==void 0&&(this.opacity=e.opacity),e.transparent!==void 0&&(this.transparent=e.transparent),e.alphaTest!==void 0&&(this.alphaTest=e.alphaTest),e.alphaHash!==void 0&&(this.alphaHash=e.alphaHash),e.depthFunc!==void 0&&(this.depthFunc=e.depthFunc),e.depthTest!==void 0&&(this.depthTest=e.depthTest),e.depthWrite!==void 0&&(this.depthWrite=e.depthWrite),e.colorWrite!==void 0&&(this.colorWrite=e.colorWrite),e.clippingPlanes!==void 0&&(this.clippingPlanes=e.clippingPlanes.map(e=>new Fm().fromJSON(e))),e.clipIntersection!==void 0&&(this.clipIntersection=e.clipIntersection),e.clipShadows!==void 0&&(this.clipShadows=e.clipShadows),e.depthPacking!==void 0&&(this.depthPacking=e.depthPacking),e.blendSrc!==void 0&&(this.blendSrc=e.blendSrc),e.blendDst!==void 0&&(this.blendDst=e.blendDst),e.blendEquation!==void 0&&(this.blendEquation=e.blendEquation),e.blendSrcAlpha!==void 0&&(this.blendSrcAlpha=e.blendSrcAlpha),e.blendDstAlpha!==void 0&&(this.blendDstAlpha=e.blendDstAlpha),e.blendEquationAlpha!==void 0&&(this.blendEquationAlpha=e.blendEquationAlpha),e.blendColor!==void 0&&this.blendColor!==void 0&&this.blendColor.setHex(e.blendColor),e.blendAlpha!==void 0&&(this.blendAlpha=e.blendAlpha),e.stencilWriteMask!==void 0&&(this.stencilWriteMask=e.stencilWriteMask),e.stencilFunc!==void 0&&(this.stencilFunc=e.stencilFunc),e.stencilRef!==void 0&&(this.stencilRef=e.stencilRef),e.stencilFuncMask!==void 0&&(this.stencilFuncMask=e.stencilFuncMask),e.stencilFail!==void 0&&(this.stencilFail=e.stencilFail),e.stencilZFail!==void 0&&(this.stencilZFail=e.stencilZFail),e.stencilZPass!==void 0&&(this.stencilZPass=e.stencilZPass),e.stencilWrite!==void 0&&(this.stencilWrite=e.stencilWrite),e.wireframe!==void 0&&(this.wireframe=e.wireframe),e.wireframeLinewidth!==void 0&&(this.wireframeLinewidth=e.wireframeLinewidth),e.wireframeLinecap!==void 0&&(this.wireframeLinecap=e.wireframeLinecap),e.wireframeLinejoin!==void 0&&(this.wireframeLinejoin=e.wireframeLinejoin),e.rotation!==void 0&&(this.rotation=e.rotation),e.linewidth!==void 0&&(this.linewidth=e.linewidth),e.linecap!==void 0&&(this.linecap=e.linecap),e.linejoin!==void 0&&(this.linejoin=e.linejoin),e.dashSize!==void 0&&(this.dashSize=e.dashSize),e.gapSize!==void 0&&(this.gapSize=e.gapSize),e.scale!==void 0&&(this.scale=e.scale),e.polygonOffset!==void 0&&(this.polygonOffset=e.polygonOffset),e.polygonOffsetFactor!==void 0&&(this.polygonOffsetFactor=e.polygonOffsetFactor),e.polygonOffsetUnits!==void 0&&(this.polygonOffsetUnits=e.polygonOffsetUnits),e.dithering!==void 0&&(this.dithering=e.dithering),e.alphaToCoverage!==void 0&&(this.alphaToCoverage=e.alphaToCoverage),e.premultipliedAlpha!==void 0&&(this.premultipliedAlpha=e.premultipliedAlpha),e.forceSinglePass!==void 0&&(this.forceSinglePass=e.forceSinglePass),e.allowOverride!==void 0&&(this.allowOverride=e.allowOverride),e.visible!==void 0&&(this.visible=e.visible),e.toneMapped!==void 0&&(this.toneMapped=e.toneMapped),e.userData!==void 0&&(this.userData=e.userData),e.vertexColors!==void 0&&(this.vertexColors=typeof e.vertexColors==`number`?e.vertexColors>0:e.vertexColors),e.size!==void 0&&(this.size=e.size),e.sizeAttenuation!==void 0&&(this.sizeAttenuation=e.sizeAttenuation),e.map!==void 0&&(this.map=t[e.map]||null),e.matcap!==void 0&&(this.matcap=t[e.matcap]||null),e.alphaMap!==void 0&&(this.alphaMap=t[e.alphaMap]||null),e.bumpMap!==void 0&&(this.bumpMap=t[e.bumpMap]||null),e.bumpScale!==void 0&&(this.bumpScale=e.bumpScale),e.normalMap!==void 0&&(this.normalMap=t[e.normalMap]||null),e.normalMapType!==void 0&&(this.normalMapType=e.normalMapType),e.normalScale!==void 0){let t=e.normalScale;Array.isArray(t)===!1&&(t=[t,t]),this.normalScale=new X().fromArray(t)}return e.displacementMap!==void 0&&(this.displacementMap=t[e.displacementMap]||null),e.displacementScale!==void 0&&(this.displacementScale=e.displacementScale),e.displacementBias!==void 0&&(this.displacementBias=e.displacementBias),e.roughnessMap!==void 0&&(this.roughnessMap=t[e.roughnessMap]||null),e.metalnessMap!==void 0&&(this.metalnessMap=t[e.metalnessMap]||null),e.emissiveMap!==void 0&&(this.emissiveMap=t[e.emissiveMap]||null),e.emissiveIntensity!==void 0&&(this.emissiveIntensity=e.emissiveIntensity),e.specularMap!==void 0&&(this.specularMap=t[e.specularMap]||null),e.specularIntensityMap!==void 0&&(this.specularIntensityMap=t[e.specularIntensityMap]||null),e.specularColorMap!==void 0&&(this.specularColorMap=t[e.specularColorMap]||null),e.envMap!==void 0&&(this.envMap=t[e.envMap]||null),e.envMapRotation!==void 0&&this.envMapRotation.fromArray(e.envMapRotation),e.envMapIntensity!==void 0&&(this.envMapIntensity=e.envMapIntensity),e.reflectivity!==void 0&&(this.reflectivity=e.reflectivity),e.refractionRatio!==void 0&&(this.refractionRatio=e.refractionRatio),e.lightMap!==void 0&&(this.lightMap=t[e.lightMap]||null),e.lightMapIntensity!==void 0&&(this.lightMapIntensity=e.lightMapIntensity),e.aoMap!==void 0&&(this.aoMap=t[e.aoMap]||null),e.aoMapIntensity!==void 0&&(this.aoMapIntensity=e.aoMapIntensity),e.gradientMap!==void 0&&(this.gradientMap=t[e.gradientMap]||null),e.clearcoatMap!==void 0&&(this.clearcoatMap=t[e.clearcoatMap]||null),e.clearcoatRoughnessMap!==void 0&&(this.clearcoatRoughnessMap=t[e.clearcoatRoughnessMap]||null),e.clearcoatNormalMap!==void 0&&(this.clearcoatNormalMap=t[e.clearcoatNormalMap]||null),e.clearcoatNormalScale!==void 0&&(this.clearcoatNormalScale=new X().fromArray(e.clearcoatNormalScale)),e.iridescenceMap!==void 0&&(this.iridescenceMap=t[e.iridescenceMap]||null),e.iridescenceThicknessMap!==void 0&&(this.iridescenceThicknessMap=t[e.iridescenceThicknessMap]||null),e.transmissionMap!==void 0&&(this.transmissionMap=t[e.transmissionMap]||null),e.thicknessMap!==void 0&&(this.thicknessMap=t[e.thicknessMap]||null),e.anisotropyMap!==void 0&&(this.anisotropyMap=t[e.anisotropyMap]||null),e.sheenColorMap!==void 0&&(this.sheenColorMap=t[e.sheenColorMap]||null),e.sheenRoughnessMap!==void 0&&(this.sheenRoughnessMap=t[e.sheenRoughnessMap]||null),this}clone(){return new this.constructor().copy(this)}copy(e){this.name=e.name,this.blending=e.blending,this.side=e.side,this.vertexColors=e.vertexColors,this.opacity=e.opacity,this.transparent=e.transparent,this.blendSrc=e.blendSrc,this.blendDst=e.blendDst,this.blendEquation=e.blendEquation,this.blendSrcAlpha=e.blendSrcAlpha,this.blendDstAlpha=e.blendDstAlpha,this.blendEquationAlpha=e.blendEquationAlpha,this.blendColor.copy(e.blendColor),this.blendAlpha=e.blendAlpha,this.depthFunc=e.depthFunc,this.depthTest=e.depthTest,this.depthWrite=e.depthWrite,this.stencilWriteMask=e.stencilWriteMask,this.stencilFunc=e.stencilFunc,this.stencilRef=e.stencilRef,this.stencilFuncMask=e.stencilFuncMask,this.stencilFail=e.stencilFail,this.stencilZFail=e.stencilZFail,this.stencilZPass=e.stencilZPass,this.stencilWrite=e.stencilWrite;let t=e.clippingPlanes,n=null;if(t!==null){let e=t.length;n=Array(e);for(let r=0;r!==e;++r)n[r]=t[r].clone()}return this.clippingPlanes=n,this.clipIntersection=e.clipIntersection,this.clipShadows=e.clipShadows,this.shadowSide=e.shadowSide,this.colorWrite=e.colorWrite,this.precision=e.precision,this.polygonOffset=e.polygonOffset,this.polygonOffsetFactor=e.polygonOffsetFactor,this.polygonOffsetUnits=e.polygonOffsetUnits,this.dithering=e.dithering,this.alphaTest=e.alphaTest,this.alphaHash=e.alphaHash,this.alphaToCoverage=e.alphaToCoverage,this.premultipliedAlpha=e.premultipliedAlpha,this.forceSinglePass=e.forceSinglePass,this.allowOverride=e.allowOverride,this.visible=e.visible,this.toneMapped=e.toneMapped,this.userData=JSON.parse(JSON.stringify(e.userData)),this}dispose(){this.dispatchEvent({type:`dispose`})}set needsUpdate(e){e===!0&&this.version++}},Rm=class extends Lm{constructor(e){super(),this.isSpriteMaterial=!0,this.type=`SpriteMaterial`,this.color=new Q(16777215),this.map=null,this.alphaMap=null,this.rotation=0,this.sizeAttenuation=!0,this.transparent=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.alphaMap=e.alphaMap,this.rotation=e.rotation,this.sizeAttenuation=e.sizeAttenuation,this.fog=e.fog,this}},zm,Bm=new Z,Vm=new Z,Hm=new Z,Um=new X,Wm=new X,Gm=new qf,Km=new Z,qm=new Z,Jm=new Z,Ym=new X,Xm=new X,Zm=new X,Qm=class extends bp{constructor(e=new Rm){if(super(),this.isSprite=!0,this.type=`Sprite`,zm===void 0){zm=new Om;let e=new km(new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]),5);zm.setIndex([0,1,2,0,2,3]),zm.setAttribute(`position`,new jm(e,3,0,!1)),zm.setAttribute(`uv`,new jm(e,2,3,!1))}this.geometry=zm,this.material=e,this.center=new X(.5,.5),this.count=1}intersectsFrustum(e){return e.intersectsSprite(this)}raycast(e,t){e.camera===null&&Wd(`Sprite: "Raycaster.camera" needs to be set in order to raycast against sprites.`),Vm.setFromMatrixScale(this.matrixWorld),Gm.copy(e.camera.matrixWorld),this.modelViewMatrix.multiplyMatrices(e.camera.matrixWorldInverse,this.matrixWorld),Hm.setFromMatrixPosition(this.modelViewMatrix),e.camera.isPerspectiveCamera&&this.material.sizeAttenuation===!1&&Vm.multiplyScalar(-Hm.z);let n=this.material.rotation,r,i;n!==0&&(i=Math.cos(n),r=Math.sin(n));let a=this.center;$m(Km.set(-.5,-.5,0),Hm,a,Vm,r,i),$m(qm.set(.5,-.5,0),Hm,a,Vm,r,i),$m(Jm.set(.5,.5,0),Hm,a,Vm,r,i),Ym.set(0,0),Xm.set(1,0),Zm.set(1,1);let o=e.ray.intersectTriangle(Km,qm,Jm,!1,Bm);if(o===null&&($m(qm.set(-.5,.5,0),Hm,a,Vm,r,i),Xm.set(0,1),o=e.ray.intersectTriangle(Km,Jm,qm,!1,Bm),o===null))return;let s=e.ray.origin.distanceTo(Bm);s<e.near||s>e.far||t.push({distance:s,point:Bm.clone(),uv:Up.getInterpolation(Bm,Km,qm,Jm,Ym,Xm,Zm,new X),face:null,object:this})}copy(e,t){return super.copy(e,t),e.center!==void 0&&this.center.copy(e.center),this.material=e.material,this}};function $m(e,t,n,r,i,a){Um.subVectors(e,n).addScalar(.5).multiply(r),i===void 0?Wm.copy(Um):(Wm.x=a*Um.x-i*Um.y,Wm.y=i*Um.x+a*Um.y),e.copy(t),e.x+=Wm.x,e.y+=Wm.y,e.applyMatrix4(Gm)}var eh=new Z,th=new Z,nh=new Z,rh=new Z,ih=class{constructor(e=new Z,t=new Z(0,0,-1)){this.origin=e,this.direction=t}set(e,t){return this.origin.copy(e),this.direction.copy(t),this}copy(e){return this.origin.copy(e.origin),this.direction.copy(e.direction),this}at(e,t){return t.copy(this.origin).addScaledVector(this.direction,e)}lookAt(e){return this.direction.copy(e).sub(this.origin).normalize(),this}recast(e){return this.origin.copy(this.at(e,eh)),this}closestPointToPoint(e,t){t.subVectors(e,this.origin);let n=t.dot(this.direction);return n<0?t.copy(this.origin):t.copy(this.origin).addScaledVector(this.direction,n)}distanceToPoint(e){return Math.sqrt(this.distanceSqToPoint(e))}distanceSqToPoint(e){let t=eh.subVectors(e,this.origin).dot(this.direction);return t<0?this.origin.distanceToSquared(e):(eh.copy(this.origin).addScaledVector(this.direction,t),eh.distanceToSquared(e))}distanceSqToSegment(e,t,n,r){th.copy(e).add(t).multiplyScalar(.5),nh.copy(t).sub(e).normalize(),rh.copy(this.origin).sub(th);let i=e.distanceTo(t)*.5,a=-this.direction.dot(nh),o=rh.dot(this.direction),s=-rh.dot(nh),c=rh.lengthSq(),l=Math.abs(1-a*a),u,d,f,p;if(l>0){if(u=a*s-o,d=a*o-s,p=i*l,u>=0){if(d>=-p){if(d<=p){let e=1/l;u*=e,d*=e,f=u*(u+a*d+2*o)+d*(a*u+d+2*s)+c}else d=i,u=Math.max(0,-(a*d+o)),f=-u*u+d*(d+2*s)+c}else d=-i,u=Math.max(0,-(a*d+o)),f=-u*u+d*(d+2*s)+c}else d<=-p?(u=Math.max(0,-(-a*i+o)),d=u>0?-i:Math.min(Math.max(-i,-s),i),f=-u*u+d*(d+2*s)+c):d<=p?(u=0,d=Math.min(Math.max(-i,-s),i),f=d*(d+2*s)+c):(u=Math.max(0,-(a*i+o)),d=u>0?i:Math.min(Math.max(-i,-s),i),f=-u*u+d*(d+2*s)+c)}else d=a>0?-i:i,u=Math.max(0,-(a*d+o)),f=-u*u+d*(d+2*s)+c;return n&&n.copy(this.origin).addScaledVector(this.direction,u),r&&r.copy(th).addScaledVector(nh,d),f}intersectSphere(e,t){if(e.radius<0)return null;eh.subVectors(e.center,this.origin);let n=eh.dot(this.direction),r=eh.dot(eh)-n*n,i=e.radius*e.radius;if(r>i)return null;let a=Math.sqrt(i-r),o=n-a,s=n+a;return s<0?null:o<0?this.at(s,t):this.at(o,t)}intersectsSphere(e){return e.radius<0?!1:this.distanceSqToPoint(e.center)<=e.radius*e.radius}distanceToPlane(e){let t=e.normal.dot(this.direction);if(t===0)return e.distanceToPoint(this.origin)===0?0:null;let n=-(this.origin.dot(e.normal)+e.constant)/t;return n>=0?n:null}intersectPlane(e,t){let n=this.distanceToPlane(e);return n===null?null:this.at(n,t)}intersectsPlane(e){let t=e.distanceToPoint(this.origin);return t===0||e.normal.dot(this.direction)*t<0}intersectBox(e,t){let n,r,i,a,o,s,c=1/this.direction.x,l=1/this.direction.y,u=1/this.direction.z,d=this.origin;return c>=0?(n=(e.min.x-d.x)*c,r=(e.max.x-d.x)*c):(n=(e.max.x-d.x)*c,r=(e.min.x-d.x)*c),l>=0?(i=(e.min.y-d.y)*l,a=(e.max.y-d.y)*l):(i=(e.max.y-d.y)*l,a=(e.min.y-d.y)*l),n>a||i>r||((i>n||isNaN(n))&&(n=i),(a<r||isNaN(r))&&(r=a),u>=0?(o=(e.min.z-d.z)*u,s=(e.max.z-d.z)*u):(o=(e.max.z-d.z)*u,s=(e.min.z-d.z)*u),n>s||o>r)||((o>n||n!==n)&&(n=o),(s<r||r!==r)&&(r=s),r<0)?null:this.at(n>=0?n:r,t)}intersectsBox(e){return this.intersectBox(e,eh)!==null}intersectTriangle(e,t,n,r,i){let a=this.origin,o=this.direction,s=o.x,c=o.y,l=o.z,u=e.x-a.x,d=e.y-a.y,f=e.z-a.z,p=t.x-a.x,m=t.y-a.y,h=t.z-a.z,g=n.x-a.x,_=n.y-a.y,v=n.z-a.z,y=Math.abs(s),b=Math.abs(c),x=Math.abs(l),S,C,w,T,E,D,O,k,A,j,M,N;if(y>=b&&y>=x?(w=s,D=u,A=p,N=g,s>=0?(S=c,C=l,T=d,E=f,O=m,k=h,j=_,M=v):(S=l,C=c,T=f,E=d,O=h,k=m,j=v,M=_)):b>=x?(w=c,D=d,A=m,N=_,c>=0?(S=l,C=s,T=f,E=u,O=h,k=p,j=v,M=g):(S=s,C=l,T=u,E=f,O=p,k=h,j=g,M=v)):(w=l,D=f,A=h,N=v,l>=0?(S=s,C=c,T=u,E=d,O=p,k=m,j=g,M=_):(S=c,C=s,T=d,E=u,O=m,k=p,j=_,M=g)),w===0)return null;let P=S/w,F=C/w,I=1/w,L=T-P*D,ee=E-F*D,R=O-P*A,te=k-F*A,z=j-P*N,ne=M-F*N,B=z*te-ne*R,V=L*ne-ee*z,re=R*ee-te*L;if(r){if(B<0||V<0||re<0)return null}else if((B<0||V<0||re<0)&&(B>0||V>0||re>0))return null;let ie=B+V+re;if(ie===0)return null;let ae=I*(B*D+V*A+re*N);return(ie>0?ae<0:ae>0)?null:this.at(ae/ie,i)}applyMatrix4(e){return this.origin.applyMatrix4(e),this.direction.transformDirection(e),this}equals(e){return e.origin.equals(this.origin)&&e.direction.equals(this.direction)}clone(){return new this.constructor().copy(this)}},ah=class extends Lm{constructor(e){super(),this.isMeshBasicMaterial=!0,this.type=`MeshBasicMaterial`,this.color=new Q(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new rp,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=`round`,this.wireframeLinejoin=`round`,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.fog=e.fog,this}},oh=new qf,sh=new ih,ch=new bm,lh=new Z,uh=new Z,dh=new Z,fh=new Z,ph=new Z,mh=new Z,hh=new Z,gh=new Z,_h=class extends bp{constructor(e=new Om,t=new ah){super(),this.isMesh=!0,this.type=`Mesh`,this.geometry=e,this.material=t,this.morphTargetDictionary=void 0,this.morphTargetInfluences=void 0,this.count=1,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),e.morphTargetInfluences!==void 0&&(this.morphTargetInfluences=e.morphTargetInfluences.slice()),e.morphTargetDictionary!==void 0&&(this.morphTargetDictionary=Object.assign({},e.morphTargetDictionary)),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}updateMorphTargets(){let e=this.geometry.morphAttributes,t=Object.keys(e);if(t.length>0){let n=e[t[0]];if(n!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;e<t;e++){let t=n[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[t]=e}}}}getVertexPosition(e,t){let n=this.geometry,r=n.attributes.position,i=n.morphAttributes.position,a=n.morphTargetsRelative;t.fromBufferAttribute(r,e);let o=this.morphTargetInfluences;if(i&&o){mh.set(0,0,0);for(let n=0,r=i.length;n<r;n++){let r=o[n],s=i[n];r!==0&&(ph.fromBufferAttribute(s,e),a?mh.addScaledVector(ph,r):mh.addScaledVector(ph.sub(t),r))}t.add(mh)}return t}intersectsFrustum(e){return e.intersectsObject(this)}raycast(e,t){let n=this.geometry,r=this.material,i=this.matrixWorld;r!==void 0&&(n.boundingSphere===null&&n.computeBoundingSphere(),ch.copy(n.boundingSphere),ch.applyMatrix4(i),sh.copy(e.ray).recast(e.near),!(ch.containsPoint(sh.origin)===!1&&(sh.intersectSphere(ch,lh)===null||sh.origin.distanceToSquared(lh)>(e.far-e.near)**2))&&(oh.copy(i).invert(),sh.copy(e.ray).applyMatrix4(oh),(n.boundingBox===null||sh.intersectsBox(n.boundingBox)!==!1)&&this._computeIntersections(e,t,sh)))}_computeIntersections(e,t,n){let r,i=this.geometry,a=this.material,o=i.index,s=i.attributes.position,c=i.attributes.uv,l=i.attributes.uv1,u=i.attributes.normal,d=i.groups,f=i.drawRange;if(o!==null){if(Array.isArray(a))for(let i=0,s=d.length;i<s;i++){let s=d[i],p=a[s.materialIndex],m=Math.max(s.start,f.start),h=Math.min(o.count,Math.min(s.start+s.count,f.start+f.count));for(let i=m,a=h;i<a;i+=3){let a=o.getX(i),d=o.getX(i+1),f=o.getX(i+2);r=yh(this,p,e,n,c,l,u,a,d,f),r&&(r.faceIndex=Math.floor(i/3),r.face.materialIndex=s.materialIndex,t.push(r))}}else{let i=Math.max(0,f.start),s=Math.min(o.count,f.start+f.count);for(let d=i,f=s;d<f;d+=3){let i=o.getX(d),s=o.getX(d+1),f=o.getX(d+2);r=yh(this,a,e,n,c,l,u,i,s,f),r&&(r.faceIndex=Math.floor(d/3),t.push(r))}}}else if(s!==void 0){if(Array.isArray(a))for(let i=0,o=d.length;i<o;i++){let o=d[i],p=a[o.materialIndex],m=Math.max(o.start,f.start),h=Math.min(s.count,Math.min(o.start+o.count,f.start+f.count));for(let i=m,a=h;i<a;i+=3){let a=i,s=i+1,d=i+2;r=yh(this,p,e,n,c,l,u,a,s,d),r&&(r.faceIndex=Math.floor(i/3),r.face.materialIndex=o.materialIndex,t.push(r))}}else{let i=Math.max(0,f.start),o=Math.min(s.count,f.start+f.count);for(let s=i,d=o;s<d;s+=3){let i=s,o=s+1,d=s+2;r=yh(this,a,e,n,c,l,u,i,o,d),r&&(r.faceIndex=Math.floor(s/3),t.push(r))}}}}};function vh(e,t,n,r,i,a,o,s){let c;if(c=t.side===1?r.intersectTriangle(o,a,i,!0,s):r.intersectTriangle(i,a,o,t.side===0,s),c===null)return null;gh.copy(s),gh.applyMatrix4(e.matrixWorld);let l=n.ray.origin.distanceTo(gh);return l<n.near||l>n.far?null:{distance:l,point:gh.clone(),object:e}}function yh(e,t,n,r,i,a,o,s,c,l){e.getVertexPosition(s,uh),e.getVertexPosition(c,dh),e.getVertexPosition(l,fh);let u=vh(e,t,n,r,uh,dh,fh,hh);if(u){let e=new Z;Up.getBarycoord(hh,uh,dh,fh,e),i&&(u.uv=Up.getInterpolatedAttribute(i,s,c,l,e,new X)),a&&(u.uv1=Up.getInterpolatedAttribute(a,s,c,l,e,new X)),o&&(u.normal=Up.getInterpolatedAttribute(o,s,c,l,e,new Z),u.normal.dot(r.direction)>0&&u.normal.multiplyScalar(-1));let t={a:s,b:c,c:l,normal:new Z,materialIndex:0};Up.getNormal(uh,dh,fh,t.normal),u.face=t,u.barycoord=e}return u}var bh=class extends Vf{constructor(e=null,t=1,n=1,r,i,a,o,s,c=uu,l=uu,u,d){super(null,a,o,s,c,l,r,i,u,d),this.isDataTexture=!0,this.image={data:e,width:t,height:n},this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}},xh=class extends pm{constructor(e,t,n,r=1){super(e,t,n),this.isInstancedBufferAttribute=!0,this.meshPerAttribute=r}copy(e){return super.copy(e),this.meshPerAttribute=e.meshPerAttribute,this}toJSON(){let e=super.toJSON();return e.meshPerAttribute=this.meshPerAttribute,e.isInstancedBufferAttribute=!0,e}},Sh=new qf,Ch=new qf,wh=[],Th=new Wp,Eh=new qf,Dh=new _h,Oh=new bm,kh=class extends _h{constructor(e,t,n){super(e,t),this.isInstancedMesh=!0,this.instanceMatrix=new xh(new Float32Array(n*16),16),this.instanceColor=null,this.morphTexture=null,this.count=n,this.boundingBox=null,this.boundingSphere=null;for(let e=0;e<n;e++)this.setMatrixAt(e,Eh)}computeBoundingBox(){let e=this.geometry,t=this.count;this.boundingBox===null&&(this.boundingBox=new Wp),e.boundingBox===null&&e.computeBoundingBox(),this.boundingBox.makeEmpty();for(let n=0;n<t;n++)this.getMatrixAt(n,Sh),Th.copy(e.boundingBox).applyMatrix4(Sh),this.boundingBox.union(Th)}computeBoundingSphere(){let e=this.geometry,t=this.count;this.boundingSphere===null&&(this.boundingSphere=new bm),e.boundingSphere===null&&e.computeBoundingSphere(),this.boundingSphere.makeEmpty();for(let n=0;n<t;n++)this.getMatrixAt(n,Sh),Oh.copy(e.boundingSphere).applyMatrix4(Sh),this.boundingSphere.union(Oh)}copy(e,t){return super.copy(e,t),this.instanceMatrix.copy(e.instanceMatrix),e.morphTexture!==null&&(this.morphTexture=e.morphTexture.clone()),e.instanceColor!==null&&(this.instanceColor=e.instanceColor.clone()),this.count=e.count,e.boundingBox!==null&&(this.boundingBox=e.boundingBox.clone()),e.boundingSphere!==null&&(this.boundingSphere=e.boundingSphere.clone()),this}getColorAt(e,t){return this.instanceColor===null?t.setRGB(1,1,1):t.fromArray(this.instanceColor.array,e*3)}getMatrixAt(e,t){return t.fromArray(this.instanceMatrix.array,e*16)}getMorphAt(e,t){let n=t.morphTargetInfluences,r=this.morphTexture.source.data.data,i=e*(n.length+1)+1;for(let e=0;e<n.length;e++)n[e]=r[i+e]}raycast(e,t){let n=this.matrixWorld,r=this.count;if(Dh.geometry=this.geometry,Dh.material=this.material,Dh.material!==void 0&&(this.boundingSphere===null&&this.computeBoundingSphere(),Oh.copy(this.boundingSphere),Oh.applyMatrix4(n),e.ray.intersectsSphere(Oh)!==!1))for(let i=0;i<r;i++){this.getMatrixAt(i,Sh),Ch.multiplyMatrices(n,Sh),Dh.matrixWorld=Ch,Dh.raycast(e,wh);for(let e=0,n=wh.length;e<n;e++){let n=wh[e];n.instanceId=i,n.object=this,t.push(n)}wh.length=0}}setColorAt(e,t){return this.instanceColor===null&&(this.instanceColor=new xh(new Float32Array(this.instanceMatrix.count*3).fill(1),3)),t.toArray(this.instanceColor.array,e*3),this}setMatrixAt(e,t){return t.toArray(this.instanceMatrix.array,e*16),this}setMorphAt(e,t){let n=t.morphTargetInfluences,r=n.length+1;this.morphTexture===null&&(this.morphTexture=new bh(new Float32Array(r*this.count),r,this.count,Pu,Su));let i=this.morphTexture.source.data.data,a=0;for(let e=0;e<n.length;e++)a+=n[e];let o=this.geometry.morphTargetsRelative?1:1-a,s=r*e;return i[s]=o,i.set(n,s+1),this}updateMorphTargets(){}dispose(){super.dispose(),this.morphTexture!==null&&(this.morphTexture.dispose(),this.morphTexture=null)}},Ah=new bm,jh=new X(.5,.5),Mh=new Z,Nh=class{constructor(e=new Fm,t=new Fm,n=new Fm,r=new Fm,i=new Fm,a=new Fm){this.planes=[e,t,n,r,i,a]}set(e,t,n,r,i,a){let o=this.planes;return o[0].copy(e),o[1].copy(t),o[2].copy(n),o[3].copy(r),o[4].copy(i),o[5].copy(a),this}copy(e){let t=this.planes;for(let n=0;n<6;n++)t[n].copy(e.planes[n]);return this}setFromProjectionMatrix(e,t=Fd,n=!1){let r=this.planes,i=e.elements,a=i[0],o=i[1],s=i[2],c=i[3],l=i[4],u=i[5],d=i[6],f=i[7],p=i[8],m=i[9],h=i[10],g=i[11],_=i[12],v=i[13],y=i[14],b=i[15];if(r[0].setComponents(c-a,f-l,g-p,b-_).normalize(),r[1].setComponents(c+a,f+l,g+p,b+_).normalize(),r[2].setComponents(c+o,f+u,g+m,b+v).normalize(),r[3].setComponents(c-o,f-u,g-m,b-v).normalize(),n)r[4].setComponents(s,d,h,y).normalize(),r[5].setComponents(c-s,f-d,g-h,b-y).normalize();else if(r[4].setComponents(c-s,f-d,g-h,b-y).normalize(),t===2e3)r[5].setComponents(c+s,f+d,g+h,b+y).normalize();else if(t===2001)r[5].setComponents(s,d,h,y).normalize();else throw Error(`THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: `+t);return this}intersectsObject(e){if(e.boundingSphere!==void 0)e.boundingSphere===null&&e.computeBoundingSphere(),Ah.copy(e.boundingSphere).applyMatrix4(e.matrixWorld);else{let t=e.geometry;t.boundingSphere===null&&t.computeBoundingSphere(),Ah.copy(t.boundingSphere).applyMatrix4(e.matrixWorld)}return this.intersectsSphere(Ah)}intersectsSprite(e){return Ah.center.set(0,0,0),Ah.radius=.7071067811865476+jh.distanceTo(e.center),Ah.applyMatrix4(e.matrixWorld),this.intersectsSphere(Ah)}intersectsSphere(e){let t=this.planes,n=e.center,r=-e.radius;for(let e=0;e<6;e++)if(t[e].distanceToPoint(n)<r)return!1;return!0}intersectsBox(e){let t=this.planes;for(let n=0;n<6;n++){let r=t[n];if(Mh.x=r.normal.x>0?e.max.x:e.min.x,Mh.y=r.normal.y>0?e.max.y:e.min.y,Mh.z=r.normal.z>0?e.max.z:e.min.z,r.distanceToPoint(Mh)<0)return!1}return!0}containsPoint(e){let t=this.planes;for(let n=0;n<6;n++)if(t[n].distanceToPoint(e)<0)return!1;return!0}clone(){return new this.constructor().copy(this)}},Ph=class extends Lm{constructor(e){super(),this.isLineBasicMaterial=!0,this.type=`LineBasicMaterial`,this.color=new Q(16777215),this.map=null,this.linewidth=1,this.linecap=`round`,this.linejoin=`round`,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.linewidth=e.linewidth,this.linecap=e.linecap,this.linejoin=e.linejoin,this.fog=e.fog,this}},Fh=new Z,Ih=new Z,Lh=new qf,Rh=new ih,zh=new bm,Bh=new Z,Vh=new Z,Hh=class extends bp{constructor(e=new Om,t=new Ph){super(),this.isLine=!0,this.type=`Line`,this.geometry=e,this.material=t,this.morphTargetDictionary=void 0,this.morphTargetInfluences=void 0,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}computeLineDistances(){let e=this.geometry;if(e.index===null){let t=e.attributes.position,n=[0];for(let e=1,r=t.count;e<r;e++)Fh.fromBufferAttribute(t,e-1),Ih.fromBufferAttribute(t,e),n[e]=n[e-1],n[e]+=Fh.distanceTo(Ih);e.setAttribute(`lineDistance`,new gm(n,1))}else Ud(`Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.`);return this}intersectsFrustum(e){return e.intersectsObject(this)}raycast(e,t){let n=this.geometry,r=this.matrixWorld,i=e.params.Line.threshold,a=n.drawRange;if(n.boundingSphere===null&&n.computeBoundingSphere(),zh.copy(n.boundingSphere),zh.applyMatrix4(r),zh.radius+=i,e.ray.intersectsSphere(zh)===!1)return;Lh.copy(r).invert(),Rh.copy(e.ray).applyMatrix4(Lh);let o=i/((this.scale.x+this.scale.y+this.scale.z)/3),s=o*o,c=this.isLineSegments?2:1,l=n.index,u=n.attributes.position;if(l!==null){let n=Math.max(0,a.start),r=Math.min(l.count,a.start+a.count);for(let i=n,a=r-1;i<a;i+=c){let n=l.getX(i),r=l.getX(i+1),a=Uh(this,e,Rh,s,n,r,i);a&&t.push(a)}if(this.isLineLoop){let i=l.getX(r-1),a=l.getX(n),o=Uh(this,e,Rh,s,i,a,r-1);o&&t.push(o)}}else{let n=Math.max(0,a.start),r=Math.min(u.count,a.start+a.count);for(let i=n,a=r-1;i<a;i+=c){let n=Uh(this,e,Rh,s,i,i+1,i);n&&t.push(n)}if(this.isLineLoop){let i=Uh(this,e,Rh,s,r-1,n,r-1);i&&t.push(i)}}}updateMorphTargets(){let e=this.geometry.morphAttributes,t=Object.keys(e);if(t.length>0){let n=e[t[0]];if(n!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;e<t;e++){let t=n[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[t]=e}}}}};function Uh(e,t,n,r,i,a,o){let s=e.geometry.attributes.position;if(Fh.fromBufferAttribute(s,i),Ih.fromBufferAttribute(s,a),n.distanceSqToSegment(Fh,Ih,Bh,Vh)>r)return;Bh.applyMatrix4(e.matrixWorld);let c=t.ray.origin.distanceTo(Bh);if(!(c<t.near||c>t.far))return{distance:c,point:Vh.clone().applyMatrix4(e.matrixWorld),index:o,face:null,faceIndex:null,barycoord:null,object:e}}var Wh=class extends Lm{constructor(e){super(),this.isPointsMaterial=!0,this.type=`PointsMaterial`,this.color=new Q(16777215),this.map=null,this.alphaMap=null,this.size=1,this.sizeAttenuation=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.alphaMap=e.alphaMap,this.size=e.size,this.sizeAttenuation=e.sizeAttenuation,this.fog=e.fog,this}},Gh=new qf,Kh=new ih,qh=new bm,Jh=new Z,Yh=class extends bp{constructor(e=new Om,t=new Wh){super(),this.isPoints=!0,this.type=`Points`,this.geometry=e,this.material=t,this.morphTargetDictionary=void 0,this.morphTargetInfluences=void 0,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}intersectsFrustum(e){return e.intersectsObject(this)}raycast(e,t){let n=this.geometry,r=this.matrixWorld,i=e.params.Points.threshold,a=n.drawRange;if(n.boundingSphere===null&&n.computeBoundingSphere(),qh.copy(n.boundingSphere),qh.applyMatrix4(r),qh.radius+=i,e.ray.intersectsSphere(qh)===!1)return;Gh.copy(r).invert(),Kh.copy(e.ray).applyMatrix4(Gh);let o=i/((this.scale.x+this.scale.y+this.scale.z)/3),s=o*o,c=n.index,l=n.attributes.position;if(c!==null){let n=Math.max(0,a.start),i=Math.min(c.count,a.start+a.count);for(let a=n,o=i;a<o;a++){let n=c.getX(a);Jh.fromBufferAttribute(l,n),Xh(Jh,n,s,r,e,t,this)}}else{let n=Math.max(0,a.start),i=Math.min(l.count,a.start+a.count);for(let a=n,o=i;a<o;a++)Jh.fromBufferAttribute(l,a),Xh(Jh,a,s,r,e,t,this)}}updateMorphTargets(){let e=this.geometry.morphAttributes,t=Object.keys(e);if(t.length>0){let n=e[t[0]];if(n!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;e<t;e++){let t=n[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[t]=e}}}}};function Xh(e,t,n,r,i,a,o){let s=Kh.distanceSqToPoint(e);if(s<n){let n=new Z;Kh.closestPointToPoint(e,n),n.applyMatrix4(r);let c=i.ray.origin.distanceTo(n);if(c<i.near||c>i.far)return;a.push({distance:c,distanceToRay:Math.sqrt(s),point:n,index:t,face:null,faceIndex:null,barycoord:null,object:o})}}var Zh=class extends Vf{constructor(e=[],t=301,n,r,i,a,o,s,c,l){super(e,t,n,r,i,a,o,s,c,l),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(e){this.image=e}},Qh=class extends Vf{constructor(e,t,n,r,i,a,o,s,c){super(e,t,n,r,i,a,o,s,c),this.isCanvasTexture=!0,this.needsUpdate=!0}},$h=class extends Vf{constructor(e,t,n=xu,r,i,a,o=uu,s=uu,c,l=Mu,u=1){if(l!==1026&&l!==1027)throw Error(`THREE.DepthTexture: format must be either THREE.DepthFormat or THREE.DepthStencilFormat`);super({width:e,height:t,depth:u},r,i,a,o,s,l,n,c),this.isDepthTexture=!0,this.flipY=!1,this.generateMipmaps=!1,this.compareFunction=null}copy(e){return super.copy(e),this.source=new Lf(Object.assign({},e.image)),this.compareFunction=e.compareFunction,this}toJSON(e){let t=super.toJSON(e);return t.compareFunction=this.compareFunction,t}},eg=class extends $h{constructor(e,t=xu,n=301,r,i,a=uu,o=uu,s,c=Mu){let l={width:e,height:e,depth:1},u=[l,l,l,l,l,l];super(e,e,t,n,r,i,a,o,s,c),this.image=u,this.isCubeDepthTexture=!0,this.isCubeTexture=!0}get images(){return this.image}set images(e){this.image=e}},tg=class extends Vf{constructor(e=null){super(),this.sourceTexture=e,this.isExternalTexture=!0}copy(e){return super.copy(e),this.sourceTexture=e.sourceTexture,this}},ng=class e extends Om{constructor(e=1,t=1,n=1,r=1,i=1,a=1){super(),this.type=`BoxGeometry`,this.parameters={width:e,height:t,depth:n,widthSegments:r,heightSegments:i,depthSegments:a};let o=this;r=Math.floor(r),i=Math.floor(i),a=Math.floor(a);let s=[],c=[],l=[],u=[],d=0,f=0;p(`z`,`y`,`x`,-1,-1,n,t,e,a,i,0),p(`z`,`y`,`x`,1,-1,n,t,-e,a,i,1),p(`x`,`z`,`y`,1,1,e,n,t,r,a,2),p(`x`,`z`,`y`,1,-1,e,n,-t,r,a,3),p(`x`,`y`,`z`,1,-1,e,t,n,r,i,4),p(`x`,`y`,`z`,-1,-1,e,t,-n,r,i,5),this.setIndex(s),this.setAttribute(`position`,new gm(c,3)),this.setAttribute(`normal`,new gm(l,3)),this.setAttribute(`uv`,new gm(u,2));function p(e,t,n,r,i,a,p,m,h,g,_){let v=a/h,y=p/g,b=a/2,x=p/2,S=m/2,C=h+1,w=g+1,T=0,E=0,D=new Z;for(let a=0;a<w;a++){let o=a*y-x;for(let s=0;s<C;s++)D[e]=(s*v-b)*r,D[t]=o*i,D[n]=S,c.push(D.x,D.y,D.z),D[e]=0,D[t]=0,D[n]=m>0?1:-1,l.push(D.x,D.y,D.z),u.push(s/h),u.push(1-a/g),T+=1}for(let e=0;e<g;e++)for(let t=0;t<h;t++){let n=d+t+C*e,r=d+t+C*(e+1),i=d+(t+1)+C*(e+1),a=d+(t+1)+C*e;s.push(n,r,a),s.push(r,i,a),E+=6}o.addGroup(f,E,_),f+=E,d+=T}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.width,t.height,t.depth,t.widthSegments,t.heightSegments,t.depthSegments)}},rg=class e extends Om{constructor(e=1,t=1,n=1,r=32,i=1,a=!1,o=0,s=Math.PI*2){super(),this.type=`CylinderGeometry`,this.parameters={radiusTop:e,radiusBottom:t,height:n,radialSegments:r,heightSegments:i,openEnded:a,thetaStart:o,thetaLength:s};let c=this;r=Math.floor(r),i=Math.floor(i);let l=[],u=[],d=[],f=[],p=0,m=[],h=n/2,g=0;_(),a===!1&&(e>0&&v(!0),t>0&&v(!1)),this.setIndex(l),this.setAttribute(`position`,new gm(u,3)),this.setAttribute(`normal`,new gm(d,3)),this.setAttribute(`uv`,new gm(f,2));function _(){let a=new Z,_=new Z,v=0,y=(t-e)/n;for(let c=0;c<=i;c++){let l=[],g=c/i,v=g*(t-e)+e;for(let e=0;e<=r;e++){let t=e/r,i=t*s+o,c=Math.sin(i),m=Math.cos(i);_.x=v*c,_.y=-g*n+h,_.z=v*m,u.push(_.x,_.y,_.z),a.set(c,y,m).normalize(),d.push(a.x,a.y,a.z),f.push(t,1-g),l.push(p++)}m.push(l)}for(let n=0;n<r;n++)for(let r=0;r<i;r++){let a=m[r][n],o=m[r+1][n],s=m[r+1][n+1],c=m[r][n+1];(e>0||r!==0)&&(l.push(a,o,c),v+=3),(t>0||r!==i-1)&&(l.push(o,s,c),v+=3)}c.addGroup(g,v,0),g+=v}function v(n){let i=p,a=new X,m=new Z,_=0,v=n===!0?e:t,y=n===!0?1:-1;for(let e=1;e<=r;e++)u.push(0,h*y,0),d.push(0,y,0),f.push(.5,.5),p++;let b=p;for(let e=0;e<=r;e++){let t=e/r*s+o,n=Math.cos(t),i=Math.sin(t);m.x=v*i,m.y=h*y,m.z=v*n,u.push(m.x,m.y,m.z),d.push(0,y,0),a.x=n*.5+.5,a.y=i*.5*y+.5,f.push(a.x,a.y),p++}for(let e=0;e<r;e++){let t=i+e,r=b+e;n===!0?l.push(r,r+1,t):l.push(r+1,r,t),_+=3}c.addGroup(g,_,n===!0?1:2),g+=_}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.radiusTop,t.radiusBottom,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}},ig=new Z,ag=new Z,og=new Z,sg=new Up,cg=class extends Om{constructor(e=null,t=1){if(super(),this.type=`EdgesGeometry`,this.parameters={geometry:e,thresholdAngle:t},e!==null){let n=1e4,r=Math.cos(Zd*t),i=e.getIndex(),a=e.getAttribute(`position`),o=i?i.count:a.count,s=[0,0,0],c=[`a`,`b`,`c`],l=[,,,],u={},d=[];for(let e=0;e<o;e+=3){i?(s[0]=i.getX(e),s[1]=i.getX(e+1),s[2]=i.getX(e+2)):(s[0]=e,s[1]=e+1,s[2]=e+2);let{a:t,b:o,c:f}=sg;if(t.fromBufferAttribute(a,s[0]),o.fromBufferAttribute(a,s[1]),f.fromBufferAttribute(a,s[2]),sg.getNormal(og),l[0]=`${Math.round(t.x*n)},${Math.round(t.y*n)},${Math.round(t.z*n)}`,l[1]=`${Math.round(o.x*n)},${Math.round(o.y*n)},${Math.round(o.z*n)}`,l[2]=`${Math.round(f.x*n)},${Math.round(f.y*n)},${Math.round(f.z*n)}`,l[0]!==l[1]&&l[1]!==l[2]&&l[2]!==l[0])for(let e=0;e<3;e++){let t=(e+1)%3,n=l[e],i=l[t],a=sg[c[e]],o=sg[c[t]],f=`${n}_${i}`,p=`${i}_${n}`;p in u&&u[p]?(og.dot(u[p].normal)<=r&&(d.push(a.x,a.y,a.z),d.push(o.x,o.y,o.z)),u[p]=null):f in u||(u[f]={index0:s[e],index1:s[t],normal:og.clone()})}}for(let e in u)if(u[e]){let{index0:t,index1:n}=u[e];ig.fromBufferAttribute(a,t),ag.fromBufferAttribute(a,n),d.push(ig.x,ig.y,ig.z),d.push(ag.x,ag.y,ag.z)}this.setAttribute(`position`,new gm(d,3))}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}},lg=class e extends Om{constructor(e=1,t=1,n=1,r=1){super(),this.type=`PlaneGeometry`,this.parameters={width:e,height:t,widthSegments:n,heightSegments:r};let i=e/2,a=t/2,o=Math.floor(n),s=Math.floor(r),c=o+1,l=s+1,u=e/o,d=t/s,f=[],p=[],m=[],h=[];for(let e=0;e<l;e++){let t=e*d-a;for(let n=0;n<c;n++){let r=n*u-i;p.push(r,-t,0),m.push(0,0,1),h.push(n/o),h.push(1-e/s)}}for(let e=0;e<s;e++)for(let t=0;t<o;t++){let n=t+c*e,r=t+c*(e+1),i=t+1+c*(e+1),a=t+1+c*e;f.push(n,r,a),f.push(r,i,a)}this.setIndex(f),this.setAttribute(`position`,new gm(p,3)),this.setAttribute(`normal`,new gm(m,3)),this.setAttribute(`uv`,new gm(h,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(t){return new e(t.width,t.height,t.widthSegments,t.heightSegments)}},ug=class extends Om{constructor(e=null){if(super(),this.type=`WireframeGeometry`,this.parameters={geometry:e},e!==null){let t=[],n=new Set,r=new Z,i=new Z;if(e.index!==null){let a=e.attributes.position,o=e.index,s=e.groups;s.length===0&&(s=[{start:0,count:o.count,materialIndex:0}]);for(let e=0,c=s.length;e<c;++e){let c=s[e],l=c.start,u=c.count;for(let e=l,s=l+u;e<s;e+=3)for(let s=0;s<3;s++){let c=o.getX(e+s),l=o.getX(e+(s+1)%3);r.fromBufferAttribute(a,c),i.fromBufferAttribute(a,l),dg(r,i,n)===!0&&(t.push(r.x,r.y,r.z),t.push(i.x,i.y,i.z))}}}else{let a=e.attributes.position;for(let e=0,o=a.count/3;e<o;e++)for(let o=0;o<3;o++){let s=3*e+o,c=3*e+(o+1)%3;r.fromBufferAttribute(a,s),i.fromBufferAttribute(a,c),dg(r,i,n)===!0&&(t.push(r.x,r.y,r.z),t.push(i.x,i.y,i.z))}}this.setAttribute(`position`,new gm(t,3))}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}};function dg(e,t,n){let r=`${e.x},${e.y},${e.z}-${t.x},${t.y},${t.z}`,i=`${t.x},${t.y},${t.z}-${e.x},${e.y},${e.z}`;return n.has(r)===!0||n.has(i)===!0?!1:(n.add(r),n.add(i),!0)}function fg(e){let t={};for(let n in e){t[n]={};for(let r in e[n]){let i=e[n][r];if(mg(i))i.isRenderTargetTexture?(Ud(`UniformsUtils: Textures of render targets cannot be cloned via cloneUniforms() or mergeUniforms().`),t[n][r]=null):t[n][r]=i.clone();else if(Array.isArray(i)){if(mg(i[0])){let e=[];for(let t=0,n=i.length;t<n;t++)e[t]=i[t].clone();t[n][r]=e}else t[n][r]=i.slice()}else t[n][r]=i}}return t}function pg(e){let t={};for(let n=0;n<e.length;n++){let r=fg(e[n]);for(let e in r)t[e]=r[e]}return t}function mg(e){return e&&(e.isColor||e.isMatrix3||e.isMatrix4||e.isVector2||e.isVector3||e.isVector4||e.isTexture||e.isQuaternion)}function hg(e){let t=[];for(let n=0;n<e.length;n++)t.push(e[n].clone());return t}function gg(e){let t=e.getRenderTarget();return t===null?e.outputColorSpace:t.isXRRenderTarget===!0?t.texture.colorSpace:jf.workingColorSpace}var _g={clone:fg,merge:pg},vg=`void main() {
7
7
  gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );
8
8
  }`,yg=`void main() {
9
9
  gl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );
@@ -4171,7 +4171,7 @@ Material Type: `+t.type+`
4171
4171
 
4172
4172
  Program Info Log: `+o+`
4173
4173
  `+e+`
4174
- `+n)}}else o===``?(s===``||c===``)&&(u=!1):Ud(`WebGLProgram: Program Info Log:`,o);u&&(t.diagnostics={runnable:l,programLog:o,vertexShader:{log:s,prefix:g},fragmentShader:{log:c,prefix:_}})}i.deleteShader(x),i.deleteShader(S),w=new tb(i,h),T=gb(i,h)}let w;this.getUniforms=function(){return w===void 0&&C(this),w};let T;this.getAttributes=function(){return T===void 0&&C(this),T};let E=n.rendererExtensionParallelShaderCompile===!1;return this.isReady=function(){return E===!1&&(E=i.getProgramParameter(h,rb)),E},this.destroy=function(){r.releaseStatesOfProgram(this),i.deleteProgram(h),this.program=void 0},this.type=n.shaderType,this.name=n.shaderName,this.id=ib++,this.cacheKey=t,this.usedTimes=1,this.program=h,this.vertexShader=x,this.fragmentShader=S,this}var Rb=0,zb=class{constructor(){this.shaderCache=new Map,this.materialCache=new Map}update(e,t,n){let r=this._getShaderCacheForMaterial(e);return r.has(t)===!1&&(r.add(t),t.usedTimes++),r.has(n)===!1&&(r.add(n),n.usedTimes++),this}remove(e){let t=this.materialCache.get(e);for(let e of t)e.usedTimes--,e.usedTimes===0&&this.shaderCache.delete(e.code);return this.materialCache.delete(e),this}getVertexShaderStage(e){return this._getShaderStage(e.vertexShader)}getFragmentShaderStage(e){return this._getShaderStage(e.fragmentShader)}dispose(){this.shaderCache.clear(),this.materialCache.clear()}_getShaderCacheForMaterial(e){let t=this.materialCache,n=t.get(e);return n===void 0&&(n=new Set,t.set(e,n)),n}_getShaderStage(e){let t=this.shaderCache,n=t.get(e);return n===void 0&&(n=new Bb(e),t.set(e,n)),n}},Bb=class{constructor(e){this.id=Rb++,this.code=e,this.usedTimes=0}};function Vb(e){return e===1030||e===37490||e===36285}function Hb(e,t,n,r,i,a){let o=new ip,s=new zb,c=new Set,l=[],u=new Map,d=r.logarithmicDepthBuffer,f=r.precision,p={MeshDepthMaterial:`depth`,MeshDistanceMaterial:`distance`,MeshNormalMaterial:`normal`,MeshBasicMaterial:`basic`,MeshLambertMaterial:`lambert`,MeshPhongMaterial:`phong`,MeshToonMaterial:`toon`,MeshStandardMaterial:`physical`,MeshPhysicalMaterial:`physical`,MeshMatcapMaterial:`matcap`,LineBasicMaterial:`basic`,LineDashedMaterial:`dashed`,PointsMaterial:`points`,ShadowMaterial:`shadow`,SpriteMaterial:`sprite`};function m(e){return c.add(e),e===0?`uv`:`uv${e}`}function h(i,o,l,u,h,g){let _=u.fog,v=h.geometry,y=i.isMeshStandardMaterial||i.isMeshLambertMaterial||i.isMeshPhongMaterial?u.environment:null,b=i.isMeshStandardMaterial||i.isMeshLambertMaterial&&!i.envMap||i.isMeshPhongMaterial&&!i.envMap,x=t.get(i.envMap||y,b),S=x&&x.mapping===306?x.image.height:null,C=p[i.type];i.precision!==null&&(f=r.getMaxPrecision(i.precision),f!==i.precision&&Ud(`WebGLProgram.getParameters:`,i.precision,`not supported, using`,f,`instead.`));let w=v.morphAttributes.position||v.morphAttributes.normal||v.morphAttributes.color,T=w===void 0?0:w.length,E=0;v.morphAttributes.position!==void 0&&(E=1),v.morphAttributes.normal!==void 0&&(E=2),v.morphAttributes.color!==void 0&&(E=3);let D,O,k,A;if(C){let e=lv[C];D=e.vertexShader,O=e.fragmentShader}else{D=i.vertexShader,O=i.fragmentShader;let e=s.getVertexShaderStage(i),t=s.getFragmentShaderStage(i);s.update(i,e,t),k=e.id,A=t.id}let j=e.getRenderTarget(),M=e.state.buffers.depth.getReversed(),N=h.isInstancedMesh===!0,P=h.isBatchedMesh===!0,F=!!i.map,I=!!i.matcap,L=!!x,ee=!!i.aoMap,R=!!i.lightMap,te=!!i.bumpMap&&i.wireframe===!1,z=!!i.normalMap,ne=!!i.displacementMap,B=!!i.emissiveMap,V=!!i.metalnessMap,re=!!i.roughnessMap,ie=i.anisotropy>0,ae=i.clearcoat>0,oe=i.dispersion>0,H=i.retroreflectivity>0,se=i.iridescence>0,ce=i.sheen>0,U=i.transmission>0,le=ie&&!!i.anisotropyMap,ue=ae&&!!i.clearcoatMap,W=ae&&!!i.clearcoatNormalMap,de=ae&&!!i.clearcoatRoughnessMap,fe=se&&!!i.iridescenceMap,G=se&&!!i.iridescenceThicknessMap,K=ce&&!!i.sheenColorMap,pe=ce&&!!i.sheenRoughnessMap,me=!!i.specularMap,q=!!i.specularColorMap,he=!!i.specularIntensityMap,ge=U&&!!i.transmissionMap,_e=U&&!!i.thicknessMap,ve=!!i.gradientMap,ye=!!i.alphaMap,be=i.alphaTest>0,xe=!!i.alphaHash,Se=!!i.extensions,Ce=0;i.toneMapped&&(j===null||j.isXRRenderTarget===!0)&&(Ce=e.toneMapping);let we={shaderID:C,shaderType:i.type,shaderName:i.name,vertexShader:D,fragmentShader:O,defines:i.defines,customVertexShaderID:k,customFragmentShaderID:A,isRawShaderMaterial:i.isRawShaderMaterial===!0,glslVersion:i.glslVersion,precision:f,batching:P,batchingColor:P&&h._colorsTexture!==null,instancing:N,instancingColor:N&&h.instanceColor!==null,instancingMorph:N&&h.morphTexture!==null,outputColorSpace:j===null?e.outputColorSpace:j.isXRRenderTarget===!0?j.texture.colorSpace:jf.workingColorSpace,alphaToCoverage:!!i.alphaToCoverage,map:F,matcap:I,envMap:L,envMapMode:L&&x.mapping,envMapCubeUVHeight:S,aoMap:ee,lightMap:R,bumpMap:te,normalMap:z,displacementMap:ne,emissiveMap:B,normalMapObjectSpace:z&&i.normalMapType===1,normalMapTangentSpace:z&&i.normalMapType===0,packedNormalMap:z&&i.normalMapType===0&&Vb(i.normalMap.format),metalnessMap:V,roughnessMap:re,anisotropy:ie,anisotropyMap:le,clearcoat:ae,clearcoatMap:ue,clearcoatNormalMap:W,clearcoatRoughnessMap:de,dispersion:oe,retroreflection:H,iridescence:se,iridescenceMap:fe,iridescenceThicknessMap:G,sheen:ce,sheenColorMap:K,sheenRoughnessMap:pe,specularMap:me,specularColorMap:q,specularIntensityMap:he,transmission:U,transmissionMap:ge,thicknessMap:_e,gradientMap:ve,opaque:i.transparent===!1&&i.blending===1&&i.alphaToCoverage===!1,alphaMap:ye,alphaTest:be,alphaHash:xe,combine:i.combine,mapUv:F&&m(i.map.channel),aoMapUv:ee&&m(i.aoMap.channel),lightMapUv:R&&m(i.lightMap.channel),bumpMapUv:te&&m(i.bumpMap.channel),normalMapUv:z&&m(i.normalMap.channel),displacementMapUv:ne&&m(i.displacementMap.channel),emissiveMapUv:B&&m(i.emissiveMap.channel),metalnessMapUv:V&&m(i.metalnessMap.channel),roughnessMapUv:re&&m(i.roughnessMap.channel),anisotropyMapUv:le&&m(i.anisotropyMap.channel),clearcoatMapUv:ue&&m(i.clearcoatMap.channel),clearcoatNormalMapUv:W&&m(i.clearcoatNormalMap.channel),clearcoatRoughnessMapUv:de&&m(i.clearcoatRoughnessMap.channel),iridescenceMapUv:fe&&m(i.iridescenceMap.channel),iridescenceThicknessMapUv:G&&m(i.iridescenceThicknessMap.channel),sheenColorMapUv:K&&m(i.sheenColorMap.channel),sheenRoughnessMapUv:pe&&m(i.sheenRoughnessMap.channel),specularMapUv:me&&m(i.specularMap.channel),specularColorMapUv:q&&m(i.specularColorMap.channel),specularIntensityMapUv:he&&m(i.specularIntensityMap.channel),transmissionMapUv:ge&&m(i.transmissionMap.channel),thicknessMapUv:_e&&m(i.thicknessMap.channel),alphaMapUv:ye&&m(i.alphaMap.channel),vertexTangents:!!v.attributes.tangent&&(z||ie),vertexNormals:!!v.attributes.normal,vertexColors:i.vertexColors,vertexAlphas:i.vertexColors===!0&&!!v.attributes.color&&v.attributes.color.itemSize===4,pointsUvs:h.isPoints===!0&&!!v.attributes.uv&&(F||ye),fog:!!_,useFog:i.fog===!0,fogExp2:!!_&&_.isFogExp2,flatShading:i.wireframe===!1&&(i.flatShading===!0||v.attributes.normal===void 0&&z===!1&&(i.isMeshLambertMaterial||i.isMeshPhongMaterial||i.isMeshStandardMaterial||i.isMeshPhysicalMaterial)),sizeAttenuation:i.sizeAttenuation===!0,logarithmicDepthBuffer:d,reversedDepthBuffer:M,skinning:h.isSkinnedMesh===!0,hasPositionAttribute:v.attributes.position!==void 0,morphTargets:v.morphAttributes.position!==void 0,morphNormals:v.morphAttributes.normal!==void 0,morphColors:v.morphAttributes.color!==void 0,morphTargetsCount:T,morphTextureStride:E,numSunLights:o.sun.length,numDirLights:o.directional.length,numPointLights:o.point.length,numSpotLights:o.spot.length,numSpotLightMaps:o.spotLightMap.length,numRectAreaLights:o.rectArea.length,numHemiLights:o.hemi.length,numSunLightShadows:o.sunShadowMap.length,numDirLightShadows:o.directionalShadowMap.length,numPointLightShadows:o.pointShadowMap.length,numSpotLightShadows:o.spotShadowMap.length,numSpotLightShadowsWithMaps:o.numSpotLightShadowsWithMaps,numLightProbes:o.numLightProbes,numLightProbeGrids:g.length,numClippingPlanes:a.numPlanes,numClipIntersection:a.numIntersection,dithering:i.dithering,shadowMapEnabled:e.shadowMap.enabled&&l.length>0,shadowMapType:e.shadowMap.type,toneMapping:Ce,decodeVideoTexture:F&&i.map.isVideoTexture===!0&&jf.getTransfer(i.map.colorSpace)===`srgb`,decodeVideoTextureEmissive:B&&i.emissiveMap.isVideoTexture===!0&&jf.getTransfer(i.emissiveMap.colorSpace)===`srgb`,premultipliedAlpha:i.premultipliedAlpha,doubleSided:i.side===2,flipSided:i.side===1,useDepthPacking:i.depthPacking>=0,depthPacking:i.depthPacking||0,index0AttributeName:i.index0AttributeName,extensionClipCullDistance:Se&&i.extensions.clipCullDistance===!0&&n.has(`WEBGL_clip_cull_distance`),extensionMultiDraw:(Se&&i.extensions.multiDraw===!0||P)&&n.has(`WEBGL_multi_draw`),rendererExtensionParallelShaderCompile:n.has(`KHR_parallel_shader_compile`),customProgramCacheKey:i.customProgramCacheKey()};return we.vertexUv1s=c.has(1),we.vertexUv2s=c.has(2),we.vertexUv3s=c.has(3),c.clear(),we}function g(t){let n=[];if(t.shaderID?n.push(t.shaderID):(n.push(t.customVertexShaderID),n.push(t.customFragmentShaderID)),t.defines!==void 0)for(let e in t.defines)n.push(e),n.push(t.defines[e]);return t.isRawShaderMaterial===!1&&(_(n,t),v(n,t),n.push(e.outputColorSpace)),n.push(t.customProgramCacheKey),n.join()}function _(e,t){e.push(t.precision),e.push(t.outputColorSpace),e.push(t.envMapMode),e.push(t.envMapCubeUVHeight),e.push(t.mapUv),e.push(t.alphaMapUv),e.push(t.lightMapUv),e.push(t.aoMapUv),e.push(t.bumpMapUv),e.push(t.normalMapUv),e.push(t.displacementMapUv),e.push(t.emissiveMapUv),e.push(t.metalnessMapUv),e.push(t.roughnessMapUv),e.push(t.anisotropyMapUv),e.push(t.clearcoatMapUv),e.push(t.clearcoatNormalMapUv),e.push(t.clearcoatRoughnessMapUv),e.push(t.iridescenceMapUv),e.push(t.iridescenceThicknessMapUv),e.push(t.sheenColorMapUv),e.push(t.sheenRoughnessMapUv),e.push(t.specularMapUv),e.push(t.specularColorMapUv),e.push(t.specularIntensityMapUv),e.push(t.transmissionMapUv),e.push(t.thicknessMapUv),e.push(t.combine),e.push(t.fogExp2),e.push(t.sizeAttenuation),e.push(t.morphTargetsCount),e.push(t.morphAttributeCount),e.push(t.numSunLights),e.push(t.numDirLights),e.push(t.numPointLights),e.push(t.numSpotLights),e.push(t.numSpotLightMaps),e.push(t.numHemiLights),e.push(t.numRectAreaLights),e.push(t.numSunLightShadows),e.push(t.numDirLightShadows),e.push(t.numPointLightShadows),e.push(t.numSpotLightShadows),e.push(t.numSpotLightShadowsWithMaps),e.push(t.numLightProbes),e.push(t.shadowMapType),e.push(t.toneMapping),e.push(t.numClippingPlanes),e.push(t.numClipIntersection),e.push(t.depthPacking)}function v(e,t){o.disableAll(),t.instancing&&o.enable(0),t.instancingColor&&o.enable(1),t.instancingMorph&&o.enable(2),t.matcap&&o.enable(3),t.envMap&&o.enable(4),t.normalMapObjectSpace&&o.enable(5),t.normalMapTangentSpace&&o.enable(6),t.clearcoat&&o.enable(7),t.iridescence&&o.enable(8),t.alphaTest&&o.enable(9),t.vertexColors&&o.enable(10),t.vertexAlphas&&o.enable(11),t.vertexUv1s&&o.enable(12),t.vertexUv2s&&o.enable(13),t.vertexUv3s&&o.enable(14),t.vertexTangents&&o.enable(15),t.anisotropy&&o.enable(16),t.alphaHash&&o.enable(17),t.batching&&o.enable(18),t.dispersion&&o.enable(19),t.retroreflection&&o.enable(24),t.batchingColor&&o.enable(20),t.gradientMap&&o.enable(21),t.packedNormalMap&&o.enable(22),t.vertexNormals&&o.enable(23),e.push(o.mask),o.disableAll(),t.fog&&o.enable(0),t.useFog&&o.enable(1),t.flatShading&&o.enable(2),t.logarithmicDepthBuffer&&o.enable(3),t.reversedDepthBuffer&&o.enable(4),t.skinning&&o.enable(5),t.morphTargets&&o.enable(6),t.morphNormals&&o.enable(7),t.morphColors&&o.enable(8),t.premultipliedAlpha&&o.enable(9),t.shadowMapEnabled&&o.enable(10),t.doubleSided&&o.enable(11),t.flipSided&&o.enable(12),t.useDepthPacking&&o.enable(13),t.dithering&&o.enable(14),t.transmission&&o.enable(15),t.sheen&&o.enable(16),t.opaque&&o.enable(17),t.pointsUvs&&o.enable(18),t.decodeVideoTexture&&o.enable(19),t.decodeVideoTextureEmissive&&o.enable(20),t.alphaToCoverage&&o.enable(21),t.numLightProbeGrids>0&&o.enable(22),t.hasPositionAttribute&&o.enable(23),e.push(o.mask)}function y(e){let t=p[e.type],n;if(t){let e=lv[t];n=_g.clone(e.uniforms)}else n=e.uniforms;return n}function b(t,n){let r=u.get(n);return r===void 0?(r=new Lb(e,n,t,i),l.push(r),u.set(n,r)):++r.usedTimes,r}function x(e){if(--e.usedTimes===0){let t=l.indexOf(e);l[t]=l[l.length-1],l.pop(),u.delete(e.cacheKey),e.destroy()}}function S(e){s.remove(e)}function C(){s.dispose()}return{getParameters:h,getProgramCacheKey:g,getUniforms:y,acquireProgram:b,releaseProgram:x,releaseShaderCache:S,programs:l,dispose:C}}function Ub(){let e=new WeakMap;function t(t){return e.has(t)}function n(t){let n=e.get(t);return n===void 0&&(n={},e.set(t,n)),n}function r(t){e.delete(t)}function i(t,n,r){e.get(t)[n]=r}function a(){e=new WeakMap}return{has:t,get:n,remove:r,update:i,dispose:a}}function Wb(e,t){return e.groupOrder===t.groupOrder?e.renderOrder===t.renderOrder?e.material.id===t.material.id?e.materialVariant===t.materialVariant?e.z===t.z?e.id-t.id:e.z-t.z:e.materialVariant-t.materialVariant:e.material.id-t.material.id:e.renderOrder-t.renderOrder:e.groupOrder-t.groupOrder}function Gb(e,t){return e.groupOrder===t.groupOrder?e.renderOrder===t.renderOrder?e.z===t.z?e.id-t.id:t.z-e.z:e.renderOrder-t.renderOrder:e.groupOrder-t.groupOrder}function Kb(){let e=[],t=0,n=[],r=[],i=[];function a(){t=0,n.length=0,r.length=0,i.length=0}function o(e){let t=0;return e.isInstancedMesh&&(t+=2),e.isSkinnedMesh&&(t+=1),t}function s(n,r,i,a,s,c){let l=e[t];return l===void 0?(l={id:n.id,object:n,geometry:r,material:i,materialVariant:o(n),groupOrder:a,renderOrder:n.renderOrder,z:s,group:c},e[t]=l):(l.id=n.id,l.object=n,l.geometry=r,l.material=i,l.materialVariant=o(n),l.groupOrder=a,l.renderOrder=n.renderOrder,l.z=s,l.group=c),t++,l}function c(e,t,a,o,c,l,u){u.reversedDepth===!0&&(c=-c);let d=s(e,t,a,o,c,l);a.transmission>0?r.push(d):a.transparent===!0?i.push(d):n.push(d)}function l(e,t,a,o,c,l){let u=s(e,t,a,o,c,l);a.transmission>0?r.unshift(u):a.transparent===!0?i.unshift(u):n.unshift(u)}function u(e,t){n.length>1&&n.sort(e||Wb),r.length>1&&r.sort(t||Gb),i.length>1&&i.sort(t||Gb)}function d(){for(let n=t,r=e.length;n<r;n++){let t=e[n];if(t.id===null)break;t.id=null,t.object=null,t.geometry=null,t.material=null,t.group=null}}return{opaque:n,transmissive:r,transparent:i,init:a,push:c,unshift:l,finish:d,sort:u}}function qb(){let e=new WeakMap;function t(t,n){let r=e.get(t),i;return r===void 0?(i=new Kb,e.set(t,[i])):n>=r.length?(i=new Kb,r.push(i)):i=r[n],i}function n(){e=new WeakMap}return{get:t,dispose:n}}function Jb(){let e={};return{get:function(t){if(e[t.id]!==void 0)return e[t.id];let n;switch(t.type){case`SunLight`:case`DirectionalLight`:n={direction:new Z,color:new Q};break;case`SpotLight`:n={position:new Z,direction:new Z,color:new Q,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case`PointLight`:n={position:new Z,color:new Q,distance:0,decay:0};break;case`HemisphereLight`:n={direction:new Z,skyColor:new Q,groundColor:new Q};break;case`RectAreaLight`:n={color:new Q,position:new Z,halfWidth:new Z,halfHeight:new Z}}return e[t.id]=n,n}}}function Yb(){let e={};return{get:function(t){if(e[t.id]!==void 0)return e[t.id];let n;switch(t.type){case`SunLight`:case`DirectionalLight`:n={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new X};break;case`SpotLight`:n={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new X};break;case`PointLight`:n={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new X,shadowCameraNear:1,shadowCameraFar:1e3}}return e[t.id]=n,n}}}var Xb=0;function Zb(e,t){return(t.castShadow?2:0)-(e.castShadow?2:0)+ +!!t.map-!!e.map}function Qb(e){let t=new Jb,n=Yb(),r={version:0,hash:{sunLength:-1,directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numSunShadows:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1,numSpotMaps:-1,numLightProbes:-1},ambient:[0,0,0],probe:[],sun:[],sunShadow:[],sunShadowMap:[],sunShadowMatrix:[],sunShadowCascade:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotLightMap:[],spotShadow:[],spotShadowMap:[],spotLightMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[],numSpotLightShadowsWithMaps:0,numLightProbes:0};for(let e=0;e<9;e++)r.probe.push(new Z);let i=new Z,a=new qf,o=new qf;function s(i){let a=0,o=0,s=0;for(let e=0;e<9;e++)r.probe[e].set(0,0,0);let c=0,l=0,u=0,d=0,f=0,p=0,m=0,h=0,g=0,_=0,v=0,y=0,b=0,x=0;i.sort(Zb);for(let e=0,S=i.length;e<S;e++){let S=i[e],C=S.color,w=S.intensity,T=S.distance,E=null;if(S.shadow&&S.shadow.map&&(E=S.shadow.map.texture.format===1030?S.shadow.map.texture:S.shadow.map.depthTexture||S.shadow.map.texture),S.isAmbientLight)a+=C.r*w,o+=C.g*w,s+=C.b*w;else if(S.isLightProbe){for(let e=0;e<9;e++)r.probe[e].addScaledVector(S.sh.coefficients[e],w);x++}else if(S.isSunLight){let e=t.get(S);if(e.color.copy(S.color).multiplyScalar(S.intensity),S.castShadow){let e=S.shadow,t=n.get(S);t.shadowIntensity=e.intensity,t.shadowBias=e.bias,t.shadowNormalBias=e.normalBias,t.shadowRadius=e.radius,t.shadowMapSize.copy(e.mapSize).multiply(e.getFrameExtents()),r.sunShadow[l]=t,r.sunShadowMap[l]=E;let i=e.getViewportCount();for(let t=0;t<i;t++)r.sunShadowMatrix[u+t]=e.getMatrix(t),r.sunShadowCascade[u+t]=e._cascadeData[t];u+=i,l++}r.sun[c]=e,c++}else if(S.isDirectionalLight){let e=t.get(S);if(e.color.copy(S.color).multiplyScalar(S.intensity),S.castShadow){let e=S.shadow,t=n.get(S);t.shadowIntensity=e.intensity,t.shadowBias=e.bias,t.shadowNormalBias=e.normalBias,t.shadowRadius=e.radius,t.shadowMapSize=e.mapSize,r.directionalShadow[d]=t,r.directionalShadowMap[d]=E,r.directionalShadowMatrix[d]=S.shadow.matrix,g++}r.directional[d]=e,d++}else if(S.isSpotLight){let e=t.get(S);e.position.setFromMatrixPosition(S.matrixWorld),e.color.copy(C).multiplyScalar(w),e.distance=T,e.coneCos=Math.cos(S.angle),e.penumbraCos=Math.cos(S.angle*(1-S.penumbra)),e.decay=S.decay,r.spot[p]=e;let i=S.shadow;if(S.map&&(r.spotLightMap[y]=S.map,y++,i.updateMatrices(S),S.castShadow&&b++),r.spotLightMatrix[p]=i.matrix,S.castShadow){let e=n.get(S);e.shadowIntensity=i.intensity,e.shadowBias=i.bias,e.shadowNormalBias=i.normalBias,e.shadowRadius=i.radius,e.shadowMapSize=i.mapSize,r.spotShadow[p]=e,r.spotShadowMap[p]=E,v++}p++}else if(S.isRectAreaLight){let e=t.get(S);e.color.copy(C).multiplyScalar(w),e.halfWidth.set(S.width*.5,0,0),e.halfHeight.set(0,S.height*.5,0),r.rectArea[m]=e,m++}else if(S.isPointLight){let e=t.get(S);if(e.color.copy(S.color).multiplyScalar(S.intensity),e.distance=S.distance,e.decay=S.decay,S.castShadow){let e=S.shadow,t=n.get(S);t.shadowIntensity=e.intensity,t.shadowBias=e.bias,t.shadowNormalBias=e.normalBias,t.shadowRadius=e.radius,t.shadowMapSize=e.mapSize,t.shadowCameraNear=e.camera.near,t.shadowCameraFar=e.camera.far,r.pointShadow[f]=t,r.pointShadowMap[f]=E,r.pointShadowMatrix[f]=S.shadow.matrix,_++}r.point[f]=e,f++}else if(S.isHemisphereLight){let e=t.get(S);e.skyColor.copy(S.color).multiplyScalar(w),e.groundColor.copy(S.groundColor).multiplyScalar(w),r.hemi[h]=e,h++}}m>0&&(e.has(`OES_texture_float_linear`)===!0?(r.rectAreaLTC1=$.LTC_FLOAT_1,r.rectAreaLTC2=$.LTC_FLOAT_2):(r.rectAreaLTC1=$.LTC_HALF_1,r.rectAreaLTC2=$.LTC_HALF_2)),r.ambient[0]=a,r.ambient[1]=o,r.ambient[2]=s;let S=r.hash;(S.sunLength!==c||S.directionalLength!==d||S.pointLength!==f||S.spotLength!==p||S.rectAreaLength!==m||S.hemiLength!==h||S.numSunShadows!==l||S.numDirectionalShadows!==g||S.numPointShadows!==_||S.numSpotShadows!==v||S.numSpotMaps!==y||S.numLightProbes!==x)&&(r.sun.length=c,r.directional.length=d,r.spot.length=p,r.rectArea.length=m,r.point.length=f,r.hemi.length=h,r.sunShadow.length=l,r.sunShadowMap.length=l,r.sunShadowMatrix.length=u,r.sunShadowCascade.length=u,r.directionalShadow.length=g,r.directionalShadowMap.length=g,r.directionalShadowMatrix.length=g,r.pointShadow.length=_,r.pointShadowMap.length=_,r.pointShadowMatrix.length=_,r.spotShadow.length=v,r.spotShadowMap.length=v,r.spotLightMatrix.length=v+y-b,r.spotLightMap.length=y,r.numSpotLightShadowsWithMaps=b,r.numLightProbes=x,S.sunLength=c,S.directionalLength=d,S.pointLength=f,S.spotLength=p,S.rectAreaLength=m,S.hemiLength=h,S.numSunShadows=l,S.numDirectionalShadows=g,S.numPointShadows=_,S.numSpotShadows=v,S.numSpotMaps=y,S.numLightProbes=x,r.version=Xb++)}function c(e,t){let n=0,s=0,c=0,l=0,u=0,d=0,f=t.matrixWorldInverse;for(let t=0,p=e.length;t<p;t++){let p=e[t];if(p.isSunLight){let e=r.sun[n];e.direction.setFromMatrixPosition(p.matrixWorld),e.direction.transformDirection(f),n++}else if(p.isDirectionalLight){let e=r.directional[s];e.direction.setFromMatrixPosition(p.matrixWorld),i.setFromMatrixPosition(p.target.matrixWorld),e.direction.sub(i),e.direction.transformDirection(f),s++}else if(p.isSpotLight){let e=r.spot[l];e.position.setFromMatrixPosition(p.matrixWorld),e.position.applyMatrix4(f),e.direction.setFromMatrixPosition(p.matrixWorld),i.setFromMatrixPosition(p.target.matrixWorld),e.direction.sub(i),e.direction.transformDirection(f),l++}else if(p.isRectAreaLight){let e=r.rectArea[u];e.position.setFromMatrixPosition(p.matrixWorld),e.position.applyMatrix4(f),o.identity(),a.copy(p.matrixWorld),a.premultiply(f),o.extractRotation(a),e.halfWidth.set(p.width*.5,0,0),e.halfHeight.set(0,p.height*.5,0),e.halfWidth.applyMatrix4(o),e.halfHeight.applyMatrix4(o),u++}else if(p.isPointLight){let e=r.point[c];e.position.setFromMatrixPosition(p.matrixWorld),e.position.applyMatrix4(f),c++}else if(p.isHemisphereLight){let e=r.hemi[d];e.direction.setFromMatrixPosition(p.matrixWorld),e.direction.transformDirection(f),d++}}}return{setup:s,setupView:c,state:r}}function $b(e){let t=new Qb(e),n=[],r=[],i=[];function a(e){d.camera=e,n.length=0,r.length=0,i.length=0}function o(e){n.push(e)}function s(e){r.push(e)}function c(e){i.push(e)}function l(){t.setup(n)}function u(e){t.setupView(n,e)}let d={lightsArray:n,shadowsArray:r,lightProbeGridArray:i,camera:null,lights:t,transmissionRenderTarget:{},textureUnits:0};return{init:a,state:d,setupLights:l,setupLightsView:u,pushLight:o,pushShadow:s,pushLightProbeGrid:c}}function ex(e){let t=new WeakMap;function n(n,r=0){let i=t.get(n),a;return i===void 0?(a=new $b(e),t.set(n,[a])):r>=i.length?(a=new $b(e),i.push(a)):a=i[r],a}function r(){t=new WeakMap}return{get:n,dispose:r}}var tx=`void main() {
4174
+ `+n)}}else o===``?(s===``||c===``)&&(u=!1):Ud(`WebGLProgram: Program Info Log:`,o);u&&(t.diagnostics={runnable:l,programLog:o,vertexShader:{log:s,prefix:g},fragmentShader:{log:c,prefix:_}})}i.deleteShader(x),i.deleteShader(S),w=new tb(i,h),T=gb(i,h)}let w;this.getUniforms=function(){return w===void 0&&C(this),w};let T;this.getAttributes=function(){return T===void 0&&C(this),T};let E=n.rendererExtensionParallelShaderCompile===!1;return this.isReady=function(){return E===!1&&(E=i.getProgramParameter(h,rb)),E},this.destroy=function(){r.releaseStatesOfProgram(this),i.deleteProgram(h),this.program=void 0},this.type=n.shaderType,this.name=n.shaderName,this.id=ib++,this.cacheKey=t,this.usedTimes=1,this.program=h,this.vertexShader=x,this.fragmentShader=S,this}var Rb=0,zb=class{constructor(){this.shaderCache=new Map,this.materialCache=new Map}update(e,t,n){let r=this._getShaderCacheForMaterial(e);return r.has(t)===!1&&(r.add(t),t.usedTimes++),r.has(n)===!1&&(r.add(n),n.usedTimes++),this}remove(e){let t=this.materialCache.get(e);for(let e of t)e.usedTimes--,e.usedTimes===0&&this.shaderCache.delete(e.code);return this.materialCache.delete(e),this}getVertexShaderStage(e){return this._getShaderStage(e.vertexShader)}getFragmentShaderStage(e){return this._getShaderStage(e.fragmentShader)}dispose(){this.shaderCache.clear(),this.materialCache.clear()}_getShaderCacheForMaterial(e){let t=this.materialCache,n=t.get(e);return n===void 0&&(n=new Set,t.set(e,n)),n}_getShaderStage(e){let t=this.shaderCache,n=t.get(e);return n===void 0&&(n=new Bb(e),t.set(e,n)),n}},Bb=class{constructor(e){this.id=Rb++,this.code=e,this.usedTimes=0}};function Vb(e){return e===1030||e===37490||e===36285}function Hb(e,t,n,r,i,a){let o=new ip,s=new zb,c=new Set,l=[],u=new Map,d=r.logarithmicDepthBuffer,f=r.precision,p={MeshDepthMaterial:`depth`,MeshDistanceMaterial:`distance`,MeshNormalMaterial:`normal`,MeshBasicMaterial:`basic`,MeshLambertMaterial:`lambert`,MeshPhongMaterial:`phong`,MeshToonMaterial:`toon`,MeshStandardMaterial:`physical`,MeshPhysicalMaterial:`physical`,MeshMatcapMaterial:`matcap`,LineBasicMaterial:`basic`,LineDashedMaterial:`dashed`,PointsMaterial:`points`,ShadowMaterial:`shadow`,SpriteMaterial:`sprite`};function m(e){return c.add(e),e===0?`uv`:`uv${e}`}function h(i,o,l,u,h,g){let _=u.fog,v=h.geometry,y=i.isMeshStandardMaterial||i.isMeshLambertMaterial||i.isMeshPhongMaterial?u.environment:null,b=i.isMeshStandardMaterial||i.isMeshLambertMaterial&&!i.envMap||i.isMeshPhongMaterial&&!i.envMap,x=t.get(i.envMap||y,b),S=x&&x.mapping===306?x.image.height:null,C=p[i.type];i.precision!==null&&(f=r.getMaxPrecision(i.precision),f!==i.precision&&Ud(`WebGLProgram.getParameters:`,i.precision,`not supported, using`,f,`instead.`));let w=v.morphAttributes.position||v.morphAttributes.normal||v.morphAttributes.color,T=w===void 0?0:w.length,E=0;v.morphAttributes.position!==void 0&&(E=1),v.morphAttributes.normal!==void 0&&(E=2),v.morphAttributes.color!==void 0&&(E=3);let D,O,k,A;if(C){let e=lv[C];D=e.vertexShader,O=e.fragmentShader}else{D=i.vertexShader,O=i.fragmentShader;let e=s.getVertexShaderStage(i),t=s.getFragmentShaderStage(i);s.update(i,e,t),k=e.id,A=t.id}let j=e.getRenderTarget(),M=e.state.buffers.depth.getReversed(),N=h.isInstancedMesh===!0,P=h.isBatchedMesh===!0,F=!!i.map,I=!!i.matcap,L=!!x,ee=!!i.aoMap,R=!!i.lightMap,te=!!i.bumpMap&&i.wireframe===!1,z=!!i.normalMap,ne=!!i.displacementMap,B=!!i.emissiveMap,V=!!i.metalnessMap,re=!!i.roughnessMap,ie=i.anisotropy>0,ae=i.clearcoat>0,oe=i.dispersion>0,H=i.retroreflectivity>0,se=i.iridescence>0,ce=i.sheen>0,U=i.transmission>0,le=ie&&!!i.anisotropyMap,ue=ae&&!!i.clearcoatMap,W=ae&&!!i.clearcoatNormalMap,de=ae&&!!i.clearcoatRoughnessMap,G=se&&!!i.iridescenceMap,K=se&&!!i.iridescenceThicknessMap,q=ce&&!!i.sheenColorMap,fe=ce&&!!i.sheenRoughnessMap,pe=!!i.specularMap,J=!!i.specularColorMap,me=!!i.specularIntensityMap,he=U&&!!i.transmissionMap,ge=U&&!!i.thicknessMap,_e=!!i.gradientMap,ve=!!i.alphaMap,ye=i.alphaTest>0,be=!!i.alphaHash,xe=!!i.extensions,Se=0;i.toneMapped&&(j===null||j.isXRRenderTarget===!0)&&(Se=e.toneMapping);let Ce={shaderID:C,shaderType:i.type,shaderName:i.name,vertexShader:D,fragmentShader:O,defines:i.defines,customVertexShaderID:k,customFragmentShaderID:A,isRawShaderMaterial:i.isRawShaderMaterial===!0,glslVersion:i.glslVersion,precision:f,batching:P,batchingColor:P&&h._colorsTexture!==null,instancing:N,instancingColor:N&&h.instanceColor!==null,instancingMorph:N&&h.morphTexture!==null,outputColorSpace:j===null?e.outputColorSpace:j.isXRRenderTarget===!0?j.texture.colorSpace:jf.workingColorSpace,alphaToCoverage:!!i.alphaToCoverage,map:F,matcap:I,envMap:L,envMapMode:L&&x.mapping,envMapCubeUVHeight:S,aoMap:ee,lightMap:R,bumpMap:te,normalMap:z,displacementMap:ne,emissiveMap:B,normalMapObjectSpace:z&&i.normalMapType===1,normalMapTangentSpace:z&&i.normalMapType===0,packedNormalMap:z&&i.normalMapType===0&&Vb(i.normalMap.format),metalnessMap:V,roughnessMap:re,anisotropy:ie,anisotropyMap:le,clearcoat:ae,clearcoatMap:ue,clearcoatNormalMap:W,clearcoatRoughnessMap:de,dispersion:oe,retroreflection:H,iridescence:se,iridescenceMap:G,iridescenceThicknessMap:K,sheen:ce,sheenColorMap:q,sheenRoughnessMap:fe,specularMap:pe,specularColorMap:J,specularIntensityMap:me,transmission:U,transmissionMap:he,thicknessMap:ge,gradientMap:_e,opaque:i.transparent===!1&&i.blending===1&&i.alphaToCoverage===!1,alphaMap:ve,alphaTest:ye,alphaHash:be,combine:i.combine,mapUv:F&&m(i.map.channel),aoMapUv:ee&&m(i.aoMap.channel),lightMapUv:R&&m(i.lightMap.channel),bumpMapUv:te&&m(i.bumpMap.channel),normalMapUv:z&&m(i.normalMap.channel),displacementMapUv:ne&&m(i.displacementMap.channel),emissiveMapUv:B&&m(i.emissiveMap.channel),metalnessMapUv:V&&m(i.metalnessMap.channel),roughnessMapUv:re&&m(i.roughnessMap.channel),anisotropyMapUv:le&&m(i.anisotropyMap.channel),clearcoatMapUv:ue&&m(i.clearcoatMap.channel),clearcoatNormalMapUv:W&&m(i.clearcoatNormalMap.channel),clearcoatRoughnessMapUv:de&&m(i.clearcoatRoughnessMap.channel),iridescenceMapUv:G&&m(i.iridescenceMap.channel),iridescenceThicknessMapUv:K&&m(i.iridescenceThicknessMap.channel),sheenColorMapUv:q&&m(i.sheenColorMap.channel),sheenRoughnessMapUv:fe&&m(i.sheenRoughnessMap.channel),specularMapUv:pe&&m(i.specularMap.channel),specularColorMapUv:J&&m(i.specularColorMap.channel),specularIntensityMapUv:me&&m(i.specularIntensityMap.channel),transmissionMapUv:he&&m(i.transmissionMap.channel),thicknessMapUv:ge&&m(i.thicknessMap.channel),alphaMapUv:ve&&m(i.alphaMap.channel),vertexTangents:!!v.attributes.tangent&&(z||ie),vertexNormals:!!v.attributes.normal,vertexColors:i.vertexColors,vertexAlphas:i.vertexColors===!0&&!!v.attributes.color&&v.attributes.color.itemSize===4,pointsUvs:h.isPoints===!0&&!!v.attributes.uv&&(F||ve),fog:!!_,useFog:i.fog===!0,fogExp2:!!_&&_.isFogExp2,flatShading:i.wireframe===!1&&(i.flatShading===!0||v.attributes.normal===void 0&&z===!1&&(i.isMeshLambertMaterial||i.isMeshPhongMaterial||i.isMeshStandardMaterial||i.isMeshPhysicalMaterial)),sizeAttenuation:i.sizeAttenuation===!0,logarithmicDepthBuffer:d,reversedDepthBuffer:M,skinning:h.isSkinnedMesh===!0,hasPositionAttribute:v.attributes.position!==void 0,morphTargets:v.morphAttributes.position!==void 0,morphNormals:v.morphAttributes.normal!==void 0,morphColors:v.morphAttributes.color!==void 0,morphTargetsCount:T,morphTextureStride:E,numSunLights:o.sun.length,numDirLights:o.directional.length,numPointLights:o.point.length,numSpotLights:o.spot.length,numSpotLightMaps:o.spotLightMap.length,numRectAreaLights:o.rectArea.length,numHemiLights:o.hemi.length,numSunLightShadows:o.sunShadowMap.length,numDirLightShadows:o.directionalShadowMap.length,numPointLightShadows:o.pointShadowMap.length,numSpotLightShadows:o.spotShadowMap.length,numSpotLightShadowsWithMaps:o.numSpotLightShadowsWithMaps,numLightProbes:o.numLightProbes,numLightProbeGrids:g.length,numClippingPlanes:a.numPlanes,numClipIntersection:a.numIntersection,dithering:i.dithering,shadowMapEnabled:e.shadowMap.enabled&&l.length>0,shadowMapType:e.shadowMap.type,toneMapping:Se,decodeVideoTexture:F&&i.map.isVideoTexture===!0&&jf.getTransfer(i.map.colorSpace)===`srgb`,decodeVideoTextureEmissive:B&&i.emissiveMap.isVideoTexture===!0&&jf.getTransfer(i.emissiveMap.colorSpace)===`srgb`,premultipliedAlpha:i.premultipliedAlpha,doubleSided:i.side===2,flipSided:i.side===1,useDepthPacking:i.depthPacking>=0,depthPacking:i.depthPacking||0,index0AttributeName:i.index0AttributeName,extensionClipCullDistance:xe&&i.extensions.clipCullDistance===!0&&n.has(`WEBGL_clip_cull_distance`),extensionMultiDraw:(xe&&i.extensions.multiDraw===!0||P)&&n.has(`WEBGL_multi_draw`),rendererExtensionParallelShaderCompile:n.has(`KHR_parallel_shader_compile`),customProgramCacheKey:i.customProgramCacheKey()};return Ce.vertexUv1s=c.has(1),Ce.vertexUv2s=c.has(2),Ce.vertexUv3s=c.has(3),c.clear(),Ce}function g(t){let n=[];if(t.shaderID?n.push(t.shaderID):(n.push(t.customVertexShaderID),n.push(t.customFragmentShaderID)),t.defines!==void 0)for(let e in t.defines)n.push(e),n.push(t.defines[e]);return t.isRawShaderMaterial===!1&&(_(n,t),v(n,t),n.push(e.outputColorSpace)),n.push(t.customProgramCacheKey),n.join()}function _(e,t){e.push(t.precision),e.push(t.outputColorSpace),e.push(t.envMapMode),e.push(t.envMapCubeUVHeight),e.push(t.mapUv),e.push(t.alphaMapUv),e.push(t.lightMapUv),e.push(t.aoMapUv),e.push(t.bumpMapUv),e.push(t.normalMapUv),e.push(t.displacementMapUv),e.push(t.emissiveMapUv),e.push(t.metalnessMapUv),e.push(t.roughnessMapUv),e.push(t.anisotropyMapUv),e.push(t.clearcoatMapUv),e.push(t.clearcoatNormalMapUv),e.push(t.clearcoatRoughnessMapUv),e.push(t.iridescenceMapUv),e.push(t.iridescenceThicknessMapUv),e.push(t.sheenColorMapUv),e.push(t.sheenRoughnessMapUv),e.push(t.specularMapUv),e.push(t.specularColorMapUv),e.push(t.specularIntensityMapUv),e.push(t.transmissionMapUv),e.push(t.thicknessMapUv),e.push(t.combine),e.push(t.fogExp2),e.push(t.sizeAttenuation),e.push(t.morphTargetsCount),e.push(t.morphAttributeCount),e.push(t.numSunLights),e.push(t.numDirLights),e.push(t.numPointLights),e.push(t.numSpotLights),e.push(t.numSpotLightMaps),e.push(t.numHemiLights),e.push(t.numRectAreaLights),e.push(t.numSunLightShadows),e.push(t.numDirLightShadows),e.push(t.numPointLightShadows),e.push(t.numSpotLightShadows),e.push(t.numSpotLightShadowsWithMaps),e.push(t.numLightProbes),e.push(t.shadowMapType),e.push(t.toneMapping),e.push(t.numClippingPlanes),e.push(t.numClipIntersection),e.push(t.depthPacking)}function v(e,t){o.disableAll(),t.instancing&&o.enable(0),t.instancingColor&&o.enable(1),t.instancingMorph&&o.enable(2),t.matcap&&o.enable(3),t.envMap&&o.enable(4),t.normalMapObjectSpace&&o.enable(5),t.normalMapTangentSpace&&o.enable(6),t.clearcoat&&o.enable(7),t.iridescence&&o.enable(8),t.alphaTest&&o.enable(9),t.vertexColors&&o.enable(10),t.vertexAlphas&&o.enable(11),t.vertexUv1s&&o.enable(12),t.vertexUv2s&&o.enable(13),t.vertexUv3s&&o.enable(14),t.vertexTangents&&o.enable(15),t.anisotropy&&o.enable(16),t.alphaHash&&o.enable(17),t.batching&&o.enable(18),t.dispersion&&o.enable(19),t.retroreflection&&o.enable(24),t.batchingColor&&o.enable(20),t.gradientMap&&o.enable(21),t.packedNormalMap&&o.enable(22),t.vertexNormals&&o.enable(23),e.push(o.mask),o.disableAll(),t.fog&&o.enable(0),t.useFog&&o.enable(1),t.flatShading&&o.enable(2),t.logarithmicDepthBuffer&&o.enable(3),t.reversedDepthBuffer&&o.enable(4),t.skinning&&o.enable(5),t.morphTargets&&o.enable(6),t.morphNormals&&o.enable(7),t.morphColors&&o.enable(8),t.premultipliedAlpha&&o.enable(9),t.shadowMapEnabled&&o.enable(10),t.doubleSided&&o.enable(11),t.flipSided&&o.enable(12),t.useDepthPacking&&o.enable(13),t.dithering&&o.enable(14),t.transmission&&o.enable(15),t.sheen&&o.enable(16),t.opaque&&o.enable(17),t.pointsUvs&&o.enable(18),t.decodeVideoTexture&&o.enable(19),t.decodeVideoTextureEmissive&&o.enable(20),t.alphaToCoverage&&o.enable(21),t.numLightProbeGrids>0&&o.enable(22),t.hasPositionAttribute&&o.enable(23),e.push(o.mask)}function y(e){let t=p[e.type],n;if(t){let e=lv[t];n=_g.clone(e.uniforms)}else n=e.uniforms;return n}function b(t,n){let r=u.get(n);return r===void 0?(r=new Lb(e,n,t,i),l.push(r),u.set(n,r)):++r.usedTimes,r}function x(e){if(--e.usedTimes===0){let t=l.indexOf(e);l[t]=l[l.length-1],l.pop(),u.delete(e.cacheKey),e.destroy()}}function S(e){s.remove(e)}function C(){s.dispose()}return{getParameters:h,getProgramCacheKey:g,getUniforms:y,acquireProgram:b,releaseProgram:x,releaseShaderCache:S,programs:l,dispose:C}}function Ub(){let e=new WeakMap;function t(t){return e.has(t)}function n(t){let n=e.get(t);return n===void 0&&(n={},e.set(t,n)),n}function r(t){e.delete(t)}function i(t,n,r){e.get(t)[n]=r}function a(){e=new WeakMap}return{has:t,get:n,remove:r,update:i,dispose:a}}function Wb(e,t){return e.groupOrder===t.groupOrder?e.renderOrder===t.renderOrder?e.material.id===t.material.id?e.materialVariant===t.materialVariant?e.z===t.z?e.id-t.id:e.z-t.z:e.materialVariant-t.materialVariant:e.material.id-t.material.id:e.renderOrder-t.renderOrder:e.groupOrder-t.groupOrder}function Gb(e,t){return e.groupOrder===t.groupOrder?e.renderOrder===t.renderOrder?e.z===t.z?e.id-t.id:t.z-e.z:e.renderOrder-t.renderOrder:e.groupOrder-t.groupOrder}function Kb(){let e=[],t=0,n=[],r=[],i=[];function a(){t=0,n.length=0,r.length=0,i.length=0}function o(e){let t=0;return e.isInstancedMesh&&(t+=2),e.isSkinnedMesh&&(t+=1),t}function s(n,r,i,a,s,c){let l=e[t];return l===void 0?(l={id:n.id,object:n,geometry:r,material:i,materialVariant:o(n),groupOrder:a,renderOrder:n.renderOrder,z:s,group:c},e[t]=l):(l.id=n.id,l.object=n,l.geometry=r,l.material=i,l.materialVariant=o(n),l.groupOrder=a,l.renderOrder=n.renderOrder,l.z=s,l.group=c),t++,l}function c(e,t,a,o,c,l,u){u.reversedDepth===!0&&(c=-c);let d=s(e,t,a,o,c,l);a.transmission>0?r.push(d):a.transparent===!0?i.push(d):n.push(d)}function l(e,t,a,o,c,l){let u=s(e,t,a,o,c,l);a.transmission>0?r.unshift(u):a.transparent===!0?i.unshift(u):n.unshift(u)}function u(e,t){n.length>1&&n.sort(e||Wb),r.length>1&&r.sort(t||Gb),i.length>1&&i.sort(t||Gb)}function d(){for(let n=t,r=e.length;n<r;n++){let t=e[n];if(t.id===null)break;t.id=null,t.object=null,t.geometry=null,t.material=null,t.group=null}}return{opaque:n,transmissive:r,transparent:i,init:a,push:c,unshift:l,finish:d,sort:u}}function qb(){let e=new WeakMap;function t(t,n){let r=e.get(t),i;return r===void 0?(i=new Kb,e.set(t,[i])):n>=r.length?(i=new Kb,r.push(i)):i=r[n],i}function n(){e=new WeakMap}return{get:t,dispose:n}}function Jb(){let e={};return{get:function(t){if(e[t.id]!==void 0)return e[t.id];let n;switch(t.type){case`SunLight`:case`DirectionalLight`:n={direction:new Z,color:new Q};break;case`SpotLight`:n={position:new Z,direction:new Z,color:new Q,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case`PointLight`:n={position:new Z,color:new Q,distance:0,decay:0};break;case`HemisphereLight`:n={direction:new Z,skyColor:new Q,groundColor:new Q};break;case`RectAreaLight`:n={color:new Q,position:new Z,halfWidth:new Z,halfHeight:new Z}}return e[t.id]=n,n}}}function Yb(){let e={};return{get:function(t){if(e[t.id]!==void 0)return e[t.id];let n;switch(t.type){case`SunLight`:case`DirectionalLight`:n={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new X};break;case`SpotLight`:n={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new X};break;case`PointLight`:n={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new X,shadowCameraNear:1,shadowCameraFar:1e3}}return e[t.id]=n,n}}}var Xb=0;function Zb(e,t){return(t.castShadow?2:0)-(e.castShadow?2:0)+ +!!t.map-!!e.map}function Qb(e){let t=new Jb,n=Yb(),r={version:0,hash:{sunLength:-1,directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numSunShadows:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1,numSpotMaps:-1,numLightProbes:-1},ambient:[0,0,0],probe:[],sun:[],sunShadow:[],sunShadowMap:[],sunShadowMatrix:[],sunShadowCascade:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotLightMap:[],spotShadow:[],spotShadowMap:[],spotLightMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[],numSpotLightShadowsWithMaps:0,numLightProbes:0};for(let e=0;e<9;e++)r.probe.push(new Z);let i=new Z,a=new qf,o=new qf;function s(i){let a=0,o=0,s=0;for(let e=0;e<9;e++)r.probe[e].set(0,0,0);let c=0,l=0,u=0,d=0,f=0,p=0,m=0,h=0,g=0,_=0,v=0,y=0,b=0,x=0;i.sort(Zb);for(let e=0,S=i.length;e<S;e++){let S=i[e],C=S.color,w=S.intensity,T=S.distance,E=null;if(S.shadow&&S.shadow.map&&(E=S.shadow.map.texture.format===1030?S.shadow.map.texture:S.shadow.map.depthTexture||S.shadow.map.texture),S.isAmbientLight)a+=C.r*w,o+=C.g*w,s+=C.b*w;else if(S.isLightProbe){for(let e=0;e<9;e++)r.probe[e].addScaledVector(S.sh.coefficients[e],w);x++}else if(S.isSunLight){let e=t.get(S);if(e.color.copy(S.color).multiplyScalar(S.intensity),S.castShadow){let e=S.shadow,t=n.get(S);t.shadowIntensity=e.intensity,t.shadowBias=e.bias,t.shadowNormalBias=e.normalBias,t.shadowRadius=e.radius,t.shadowMapSize.copy(e.mapSize).multiply(e.getFrameExtents()),r.sunShadow[l]=t,r.sunShadowMap[l]=E;let i=e.getViewportCount();for(let t=0;t<i;t++)r.sunShadowMatrix[u+t]=e.getMatrix(t),r.sunShadowCascade[u+t]=e._cascadeData[t];u+=i,l++}r.sun[c]=e,c++}else if(S.isDirectionalLight){let e=t.get(S);if(e.color.copy(S.color).multiplyScalar(S.intensity),S.castShadow){let e=S.shadow,t=n.get(S);t.shadowIntensity=e.intensity,t.shadowBias=e.bias,t.shadowNormalBias=e.normalBias,t.shadowRadius=e.radius,t.shadowMapSize=e.mapSize,r.directionalShadow[d]=t,r.directionalShadowMap[d]=E,r.directionalShadowMatrix[d]=S.shadow.matrix,g++}r.directional[d]=e,d++}else if(S.isSpotLight){let e=t.get(S);e.position.setFromMatrixPosition(S.matrixWorld),e.color.copy(C).multiplyScalar(w),e.distance=T,e.coneCos=Math.cos(S.angle),e.penumbraCos=Math.cos(S.angle*(1-S.penumbra)),e.decay=S.decay,r.spot[p]=e;let i=S.shadow;if(S.map&&(r.spotLightMap[y]=S.map,y++,i.updateMatrices(S),S.castShadow&&b++),r.spotLightMatrix[p]=i.matrix,S.castShadow){let e=n.get(S);e.shadowIntensity=i.intensity,e.shadowBias=i.bias,e.shadowNormalBias=i.normalBias,e.shadowRadius=i.radius,e.shadowMapSize=i.mapSize,r.spotShadow[p]=e,r.spotShadowMap[p]=E,v++}p++}else if(S.isRectAreaLight){let e=t.get(S);e.color.copy(C).multiplyScalar(w),e.halfWidth.set(S.width*.5,0,0),e.halfHeight.set(0,S.height*.5,0),r.rectArea[m]=e,m++}else if(S.isPointLight){let e=t.get(S);if(e.color.copy(S.color).multiplyScalar(S.intensity),e.distance=S.distance,e.decay=S.decay,S.castShadow){let e=S.shadow,t=n.get(S);t.shadowIntensity=e.intensity,t.shadowBias=e.bias,t.shadowNormalBias=e.normalBias,t.shadowRadius=e.radius,t.shadowMapSize=e.mapSize,t.shadowCameraNear=e.camera.near,t.shadowCameraFar=e.camera.far,r.pointShadow[f]=t,r.pointShadowMap[f]=E,r.pointShadowMatrix[f]=S.shadow.matrix,_++}r.point[f]=e,f++}else if(S.isHemisphereLight){let e=t.get(S);e.skyColor.copy(S.color).multiplyScalar(w),e.groundColor.copy(S.groundColor).multiplyScalar(w),r.hemi[h]=e,h++}}m>0&&(e.has(`OES_texture_float_linear`)===!0?(r.rectAreaLTC1=$.LTC_FLOAT_1,r.rectAreaLTC2=$.LTC_FLOAT_2):(r.rectAreaLTC1=$.LTC_HALF_1,r.rectAreaLTC2=$.LTC_HALF_2)),r.ambient[0]=a,r.ambient[1]=o,r.ambient[2]=s;let S=r.hash;(S.sunLength!==c||S.directionalLength!==d||S.pointLength!==f||S.spotLength!==p||S.rectAreaLength!==m||S.hemiLength!==h||S.numSunShadows!==l||S.numDirectionalShadows!==g||S.numPointShadows!==_||S.numSpotShadows!==v||S.numSpotMaps!==y||S.numLightProbes!==x)&&(r.sun.length=c,r.directional.length=d,r.spot.length=p,r.rectArea.length=m,r.point.length=f,r.hemi.length=h,r.sunShadow.length=l,r.sunShadowMap.length=l,r.sunShadowMatrix.length=u,r.sunShadowCascade.length=u,r.directionalShadow.length=g,r.directionalShadowMap.length=g,r.directionalShadowMatrix.length=g,r.pointShadow.length=_,r.pointShadowMap.length=_,r.pointShadowMatrix.length=_,r.spotShadow.length=v,r.spotShadowMap.length=v,r.spotLightMatrix.length=v+y-b,r.spotLightMap.length=y,r.numSpotLightShadowsWithMaps=b,r.numLightProbes=x,S.sunLength=c,S.directionalLength=d,S.pointLength=f,S.spotLength=p,S.rectAreaLength=m,S.hemiLength=h,S.numSunShadows=l,S.numDirectionalShadows=g,S.numPointShadows=_,S.numSpotShadows=v,S.numSpotMaps=y,S.numLightProbes=x,r.version=Xb++)}function c(e,t){let n=0,s=0,c=0,l=0,u=0,d=0,f=t.matrixWorldInverse;for(let t=0,p=e.length;t<p;t++){let p=e[t];if(p.isSunLight){let e=r.sun[n];e.direction.setFromMatrixPosition(p.matrixWorld),e.direction.transformDirection(f),n++}else if(p.isDirectionalLight){let e=r.directional[s];e.direction.setFromMatrixPosition(p.matrixWorld),i.setFromMatrixPosition(p.target.matrixWorld),e.direction.sub(i),e.direction.transformDirection(f),s++}else if(p.isSpotLight){let e=r.spot[l];e.position.setFromMatrixPosition(p.matrixWorld),e.position.applyMatrix4(f),e.direction.setFromMatrixPosition(p.matrixWorld),i.setFromMatrixPosition(p.target.matrixWorld),e.direction.sub(i),e.direction.transformDirection(f),l++}else if(p.isRectAreaLight){let e=r.rectArea[u];e.position.setFromMatrixPosition(p.matrixWorld),e.position.applyMatrix4(f),o.identity(),a.copy(p.matrixWorld),a.premultiply(f),o.extractRotation(a),e.halfWidth.set(p.width*.5,0,0),e.halfHeight.set(0,p.height*.5,0),e.halfWidth.applyMatrix4(o),e.halfHeight.applyMatrix4(o),u++}else if(p.isPointLight){let e=r.point[c];e.position.setFromMatrixPosition(p.matrixWorld),e.position.applyMatrix4(f),c++}else if(p.isHemisphereLight){let e=r.hemi[d];e.direction.setFromMatrixPosition(p.matrixWorld),e.direction.transformDirection(f),d++}}}return{setup:s,setupView:c,state:r}}function $b(e){let t=new Qb(e),n=[],r=[],i=[];function a(e){d.camera=e,n.length=0,r.length=0,i.length=0}function o(e){n.push(e)}function s(e){r.push(e)}function c(e){i.push(e)}function l(){t.setup(n)}function u(e){t.setupView(n,e)}let d={lightsArray:n,shadowsArray:r,lightProbeGridArray:i,camera:null,lights:t,transmissionRenderTarget:{},textureUnits:0};return{init:a,state:d,setupLights:l,setupLightsView:u,pushLight:o,pushShadow:s,pushLightProbeGrid:c}}function ex(e){let t=new WeakMap;function n(n,r=0){let i=t.get(n),a;return i===void 0?(a=new $b(e),t.set(n,[a])):r>=i.length?(a=new $b(e),i.push(a)):a=i[r],a}function r(){t=new WeakMap}return{get:n,dispose:r}}var tx=`void main() {
4175
4175
  gl_Position = vec4( position, 1.0 );
4176
4176
  }`,nx=`uniform sampler2D shadow_pass;
4177
4177
  uniform vec2 resolution;
@@ -4198,7 +4198,7 @@ void main() {
4198
4198
  squared_mean = squared_mean / samples;
4199
4199
  float std_dev = sqrt( max( 0.0, squared_mean - mean * mean ) );
4200
4200
  gl_FragColor = vec4( mean, std_dev, 0.0, 1.0 );
4201
- }`,rx=[new Z(1,0,0),new Z(-1,0,0),new Z(0,1,0),new Z(0,-1,0),new Z(0,0,1),new Z(0,0,-1)],ix=[new Z(0,-1,0),new Z(0,-1,0),new Z(0,0,1),new Z(0,0,-1),new Z(0,-1,0),new Z(0,-1,0)],ax=new qf,ox=new Z,sx=new Z;function cx(e,t,n){let r=new Nh,i=new X,a=new X,o=new Hf,s=new Eg,c=new Dg,l={},u=n.maxTextureSize,d={0:1,1:0,2:2},f=new bg({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new X},radius:{value:4}},vertexShader:tx,fragmentShader:nx}),p=f.clone();p.defines.HORIZONTAL_PASS=1;let m=new Om;m.setAttribute(`position`,new pm(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));let h=new _h(m,f),g=this;this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=1;let _=this.type;this.render=function(t,n,s){if(g.enabled===!1||g.autoUpdate===!1&&g.needsUpdate===!1||t.length===0)return;this.type===2&&(Ud(`WebGLShadowMap: PCFSoftShadowMap has been removed. Using PCFShadowMap instead.`),this.type=1);let c=e.getRenderTarget(),l=e.getActiveCubeFace(),d=e.getActiveMipmapLevel(),f=e.state;f.setBlending(0),f.buffers.depth.getReversed()===!0?f.buffers.color.setClear(0,0,0,0):f.buffers.color.setClear(1,1,1,1),f.buffers.depth.setTest(!0),f.setScissorTest(!1);let p=_!==this.type;p&&n.traverse(function(e){e.material&&(Array.isArray(e.material)?e.material.forEach(e=>e.needsUpdate=!0):e.material.needsUpdate=!0)});for(let c=0,l=t.length;c<l;c++){let l=t[c],d=l.shadow;if(d===void 0){Ud(`WebGLShadowMap:`,l,`has no shadow.`);continue}if(d.autoUpdate===!1&&d.needsUpdate===!1)continue;i.copy(d.mapSize);let m=d.getFrameExtents();i.multiply(m),a.copy(d.mapSize),(i.x>u||i.y>u)&&(i.x>u&&(a.x=Math.floor(u/m.x),i.x=a.x*m.x,d.mapSize.x=a.x),i.y>u&&(a.y=Math.floor(u/m.y),i.y=a.y*m.y,d.mapSize.y=a.y));let h=e.state.buffers.depth.getReversed();if(d.camera._reversedDepth=h,d.map===null||p===!0){if(d.map!==null&&(d.map.depthTexture!==null&&(d.map.depthTexture.dispose(),d.map.depthTexture=null),d.map.dispose()),this.type===3){if(l.isPointLight){Ud(`WebGLShadowMap: VSM shadow maps are not supported for PointLights. Use PCF or BasicShadowMap instead.`);continue}d.map=new Wf(i.x,i.y,{format:Iu,type:Cu,minFilter:pu,magFilter:pu,generateMipmaps:!1}),d.map.texture.name=l.name+`.shadowMap`,d.map.depthTexture=new $h(i.x,i.y,Su),d.map.depthTexture.name=l.name+`.shadowMapDepth`,d.map.depthTexture.format=Mu,d.map.depthTexture.compareFunction=null,d.map.depthTexture.minFilter=uu,d.map.depthTexture.magFilter=uu}else l.isPointLight?(d.map=new zv(i.x),d.map.depthTexture=new eg(i.x,xu)):(d.map=new Wf(i.x,i.y),d.map.depthTexture=new $h(i.x,i.y,xu)),d.map.depthTexture.name=l.name+`.shadowMap`,d.map.depthTexture.format=Mu,this.type===1?(d.map.depthTexture.compareFunction=h?518:515,d.map.depthTexture.minFilter=pu,d.map.depthTexture.magFilter=pu):(d.map.depthTexture.compareFunction=null,d.map.depthTexture.minFilter=uu,d.map.depthTexture.magFilter=uu);d.camera.updateProjectionMatrix()}d.map.isWebGLCubeRenderTarget!==!0&&(d.map.width!==i.x||d.map.height!==i.y)&&d.map.setSize(i.x,i.y);let g=d.map.isWebGLCubeRenderTarget?6:d.getViewportCount();l.isPointLight!==!0&&d.updateMatrices(l,s);for(let t=0;t<g;t++){let i=d.getCamera(t);if(l.isPointLight){let e=d.camera,n=d.matrix,r=l.distance||e.far;r!==e.far&&(e.far=r,e.updateProjectionMatrix()),ox.setFromMatrixPosition(l.matrixWorld),e.position.copy(ox),sx.copy(e.position),sx.add(rx[t]),e.up.copy(ix[t]),e.lookAt(sx),e.updateMatrixWorld(),n.makeTranslation(-ox.x,-ox.y,-ox.z),ax.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),d._frustum.setFromProjectionMatrix(ax,e.coordinateSystem,e.reversedDepth)}if(d.map.isWebGLCubeRenderTarget)e.setRenderTarget(d.map,t),e.clear();else{t===0&&(e.setRenderTarget(d.map),e.clear());let n=d.getViewport(t);o.set(a.x*n.x,a.y*n.y,a.x*n.z,a.y*n.w),f.viewport(o)}r=d.getFrustum(t),b(n,s,i,l,this.type)}d.isPointLightShadow!==!0&&this.type===3&&v(d,s),d.needsUpdate=!1}_=this.type,g.needsUpdate=!1,e.setRenderTarget(c,l,d)};function v(n,r){let a=t.update(h);f.defines.VSM_SAMPLES!==n.blurSamples&&(f.defines.VSM_SAMPLES=n.blurSamples,p.defines.VSM_SAMPLES=n.blurSamples,f.needsUpdate=!0,p.needsUpdate=!0),n.mapPass===null?n.mapPass=new Wf(i.x,i.y,{format:Iu,type:Cu}):(n.mapPass.width!==n.map.width||n.mapPass.height!==n.map.height)&&n.mapPass.setSize(n.map.width,n.map.height),f.uniforms.shadow_pass.value=n.map.depthTexture,f.uniforms.resolution.value.set(n.map.width,n.map.height),f.uniforms.radius.value=n.radius,e.setRenderTarget(n.mapPass),e.clear(),e.renderBufferDirect(r,null,a,f,h,null),p.uniforms.shadow_pass.value=n.mapPass.texture,p.uniforms.resolution.value.set(n.map.width,n.map.height),p.uniforms.radius.value=n.radius,e.setRenderTarget(n.map),e.clear(),e.renderBufferDirect(r,null,a,p,h,null)}function y(t,n,r,i){let a=null,o=r.isPointLight===!0?t.customDistanceMaterial:t.customDepthMaterial;if(o!==void 0)a=o;else if(a=r.isPointLight===!0?c:s,e.localClippingEnabled&&n.clipShadows===!0&&Array.isArray(n.clippingPlanes)&&n.clippingPlanes.length!==0||n.displacementMap&&n.displacementScale!==0||n.alphaMap&&n.alphaTest>0||n.map&&n.alphaTest>0||n.alphaToCoverage===!0){let e=a.uuid,t=n.uuid,r=l[e];r===void 0&&(r={},l[e]=r);let i=r[t];i===void 0&&(i=a.clone(),r[t]=i,n.addEventListener(`dispose`,x)),a=i}if(a.visible=n.visible,a.wireframe=n.wireframe,i===3?a.side=n.shadowSide===null?n.side:n.shadowSide:a.side=n.shadowSide===null?d[n.side]:n.shadowSide,a.alphaMap=n.alphaMap,a.alphaTest=n.alphaToCoverage===!0?.5:n.alphaTest,a.map=n.map,a.clipShadows=n.clipShadows,a.clippingPlanes=n.clippingPlanes,a.clipIntersection=n.clipIntersection,a.displacementMap=n.displacementMap,a.displacementScale=n.displacementScale,a.displacementBias=n.displacementBias,a.wireframeLinewidth=n.wireframeLinewidth,a.linewidth=n.linewidth,r.isPointLight===!0&&a.isMeshDistanceMaterial===!0){let t=e.properties.get(a);t.light=r}return a}function b(n,i,a,o,s){if(n.visible===!1)return;if(n.layers.test(i.layers)&&(n.isMesh||n.isLine||n.isPoints)&&(n.castShadow||n.receiveShadow&&s===3)&&(!n.frustumCulled||n.intersectsFrustum(r))){n.modelViewMatrix.multiplyMatrices(a.matrixWorldInverse,n.matrixWorld);let r=t.update(n),c=n.material;if(Array.isArray(c)){let t=r.groups;for(let l=0,u=t.length;l<u;l++){let u=t[l],d=c[u.materialIndex];if(d&&d.visible){let t=y(n,d,o,s);n.onBeforeShadow(e,n,i,a,r,t,u),e.renderBufferDirect(a,null,r,t,n,u),n.onAfterShadow(e,n,i,a,r,t,u)}}}else if(c.visible){let t=y(n,c,o,s);n.onBeforeShadow(e,n,i,a,r,t,null),e.renderBufferDirect(a,null,r,t,n,null),n.onAfterShadow(e,n,i,a,r,t,null)}}let c=n.children;for(let e=0,t=c.length;e<t;e++)b(c[e],i,a,o,s)}function x(e){e.target.removeEventListener(`dispose`,x);for(let t in l){let n=l[t],r=e.target.uuid;r in n&&(n[r].dispose(),delete n[r])}}}function lx(e,t){function n(){let t=!1,n=new Hf,r=null,i=new Hf(0,0,0,0);return{setMask:function(n){r!==n&&!t&&(e.colorMask(n,n,n,n),r=n)},setLocked:function(e){t=e},setClear:function(t,r,a,o,s){s===!0&&(t*=o,r*=o,a*=o),n.set(t,r,a,o),i.equals(n)===!1&&(e.clearColor(t,r,a,o),i.copy(n))},reset:function(){t=!1,r=null,i.set(-1,0,0,0)}}}function r(){let n=!1,r=!1,i=null,a=null,o=null;return{setReversed:function(e){if(r!==e){let n=t.get(`EXT_clip_control`);e?n.clipControlEXT(n.LOWER_LEFT_EXT,n.ZERO_TO_ONE_EXT):n.clipControlEXT(n.LOWER_LEFT_EXT,n.NEGATIVE_ONE_TO_ONE_EXT),r=e;let i=o;o=null,this.setClear(i)}},getReversed:function(){return r},setTest:function(t){t?V(e.DEPTH_TEST):re(e.DEPTH_TEST)},setMask:function(t){i!==t&&!n&&(e.depthMask(t),i=t)},setFunc:function(t){if(r&&(t=qd[t]),a!==t){switch(t){case 0:e.depthFunc(e.NEVER);break;case 1:e.depthFunc(e.ALWAYS);break;case 2:e.depthFunc(e.LESS);break;case 3:e.depthFunc(e.LEQUAL);break;case 4:e.depthFunc(e.EQUAL);break;case 5:e.depthFunc(e.GEQUAL);break;case 6:e.depthFunc(e.GREATER);break;case 7:e.depthFunc(e.NOTEQUAL);break;default:e.depthFunc(e.LEQUAL)}a=t}},setLocked:function(e){n=e},setClear:function(t){o!==t&&(o=t,r&&(t=1-t),e.clearDepth(t))},reset:function(){n=!1,i=null,a=null,o=null,r=!1}}}function i(){let t=!1,n=null,r=null,i=null,a=null,o=null,s=null,c=null,l=null;return{setTest:function(n){t||(n?V(e.STENCIL_TEST):re(e.STENCIL_TEST))},setMask:function(r){n!==r&&!t&&(e.stencilMask(r),n=r)},setFunc:function(t,n,o){(r!==t||i!==n||a!==o)&&(e.stencilFunc(t,n,o),r=t,i=n,a=o)},setOp:function(t,n,r){(o!==t||s!==n||c!==r)&&(e.stencilOp(t,n,r),o=t,s=n,c=r)},setLocked:function(e){t=e},setClear:function(t){l!==t&&(e.clearStencil(t),l=t)},reset:function(){t=!1,n=null,r=null,i=null,a=null,o=null,s=null,c=null,l=null}}}let a=new n,o=new r,s=new i,c=new WeakMap,l=new WeakMap,u={},d={},f={},p=new WeakMap,m=[],h=null,g=!1,_=null,v=null,y=null,b=null,x=null,S=null,C=null,w=new Q(0,0,0),T=0,E=!1,D=null,O=null,k=null,A=null,j=null,M=e.getParameter(e.MAX_COMBINED_TEXTURE_IMAGE_UNITS),N=!1,P=0,F=e.getParameter(e.VERSION);F.indexOf(`WebGL`)===-1?F.indexOf(`OpenGL ES`)!==-1&&(P=parseFloat(/^OpenGL ES (\d)/.exec(F)[1]),N=P>=2):(P=parseFloat(/^WebGL (\d)/.exec(F)[1]),N=P>=1);let I=null,L={},ee=e.getParameter(e.SCISSOR_BOX),R=e.getParameter(e.VIEWPORT),te=new Hf().fromArray(ee),z=new Hf().fromArray(R);function ne(t,n,r,i){let a=new Uint8Array(4),o=e.createTexture();e.bindTexture(t,o),e.texParameteri(t,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(t,e.TEXTURE_MAG_FILTER,e.NEAREST);for(let o=0;o<r;o++)t===e.TEXTURE_3D||t===e.TEXTURE_2D_ARRAY?e.texImage3D(n,0,e.RGBA,1,1,i,0,e.RGBA,e.UNSIGNED_BYTE,a):e.texImage2D(n+o,0,e.RGBA,1,1,0,e.RGBA,e.UNSIGNED_BYTE,a);return o}let B={};B[e.TEXTURE_2D]=ne(e.TEXTURE_2D,e.TEXTURE_2D,1),B[e.TEXTURE_CUBE_MAP]=ne(e.TEXTURE_CUBE_MAP,e.TEXTURE_CUBE_MAP_POSITIVE_X,6),B[e.TEXTURE_2D_ARRAY]=ne(e.TEXTURE_2D_ARRAY,e.TEXTURE_2D_ARRAY,1,1),B[e.TEXTURE_3D]=ne(e.TEXTURE_3D,e.TEXTURE_3D,1,1),a.setClear(0,0,0,1),o.setClear(1),s.setClear(0),V(e.DEPTH_TEST),o.setFunc(3),le(!1),ue(1),V(e.CULL_FACE),ce(0);function V(t){u[t]!==!0&&(e.enable(t),u[t]=!0)}function re(t){u[t]!==!1&&(e.disable(t),u[t]=!1)}function ie(t,n){return f[t]!==n&&(e.bindFramebuffer(t,n),f[t]=n,t===e.DRAW_FRAMEBUFFER&&(f[e.FRAMEBUFFER]=n),t===e.FRAMEBUFFER&&(f[e.DRAW_FRAMEBUFFER]=n),!0)}function ae(t,n){let r=m,i=!1;if(t){r=p.get(n),r===void 0&&(r=[],p.set(n,r));let a=t.textures;if(r.length!==a.length||r[0]!==e.COLOR_ATTACHMENT0){for(let t=0,n=a.length;t<n;t++)r[t]=e.COLOR_ATTACHMENT0+t;r.length=a.length,i=!0}}else r[0]!==e.BACK&&(r[0]=e.BACK,i=!0);i&&e.drawBuffers(r)}function oe(t){return h!==t&&(e.useProgram(t),h=t,!0)}let H={100:e.FUNC_ADD,101:e.FUNC_SUBTRACT,102:e.FUNC_REVERSE_SUBTRACT};H[103]=e.MIN,H[104]=e.MAX;let se={200:e.ZERO,201:e.ONE,202:e.SRC_COLOR,204:e.SRC_ALPHA,210:e.SRC_ALPHA_SATURATE,208:e.DST_COLOR,206:e.DST_ALPHA,203:e.ONE_MINUS_SRC_COLOR,205:e.ONE_MINUS_SRC_ALPHA,209:e.ONE_MINUS_DST_COLOR,207:e.ONE_MINUS_DST_ALPHA,211:e.CONSTANT_COLOR,212:e.ONE_MINUS_CONSTANT_COLOR,213:e.CONSTANT_ALPHA,214:e.ONE_MINUS_CONSTANT_ALPHA};function ce(t,n,r,i,a,o,s,c,l,u){if(t===0){g===!0&&(re(e.BLEND),g=!1);return}if(g===!1&&(V(e.BLEND),g=!0),t!==5){if(t!==_||u!==E){if((v!==100||x!==100)&&(e.blendEquation(e.FUNC_ADD),v=100,x=100),u)switch(t){case 1:e.blendFuncSeparate(e.ONE,e.ONE_MINUS_SRC_ALPHA,e.ONE,e.ONE_MINUS_SRC_ALPHA);break;case 2:e.blendFunc(e.ONE,e.ONE);break;case 3:e.blendFuncSeparate(e.ZERO,e.ONE_MINUS_SRC_COLOR,e.ZERO,e.ONE);break;case 4:e.blendFuncSeparate(e.DST_COLOR,e.ONE_MINUS_SRC_ALPHA,e.ZERO,e.ONE);break;default:Wd(`WebGLState: Invalid blending: `,t)}else switch(t){case 1:e.blendFuncSeparate(e.SRC_ALPHA,e.ONE_MINUS_SRC_ALPHA,e.ONE,e.ONE_MINUS_SRC_ALPHA);break;case 2:e.blendFuncSeparate(e.SRC_ALPHA,e.ONE,e.ONE,e.ONE);break;case 3:Wd(`WebGLState: SubtractiveBlending requires material.premultipliedAlpha = true`);break;case 4:Wd(`WebGLState: MultiplyBlending requires material.premultipliedAlpha = true`);break;default:Wd(`WebGLState: Invalid blending: `,t)}y=null,b=null,S=null,C=null,w.set(0,0,0),T=0,_=t,E=u}return}a||=n,o||=r,s||=i,(n!==v||a!==x)&&(e.blendEquationSeparate(H[n],H[a]),v=n,x=a),(r!==y||i!==b||o!==S||s!==C)&&(e.blendFuncSeparate(se[r],se[i],se[o],se[s]),y=r,b=i,S=o,C=s),(c.equals(w)===!1||l!==T)&&(e.blendColor(c.r,c.g,c.b,l),w.copy(c),T=l),_=t,E=!1}function U(t,n){t.side===2?re(e.CULL_FACE):V(e.CULL_FACE);let r=t.side===1;n&&(r=!r),le(r),t.blending===1&&t.transparent===!1?ce(0):ce(t.blending,t.blendEquation,t.blendSrc,t.blendDst,t.blendEquationAlpha,t.blendSrcAlpha,t.blendDstAlpha,t.blendColor,t.blendAlpha,t.premultipliedAlpha),o.setFunc(t.depthFunc),o.setTest(t.depthTest),o.setMask(t.depthWrite),a.setMask(t.colorWrite);let i=t.stencilWrite;s.setTest(i),i&&(s.setMask(t.stencilWriteMask),s.setFunc(t.stencilFunc,t.stencilRef,t.stencilFuncMask),s.setOp(t.stencilFail,t.stencilZFail,t.stencilZPass)),de(t.polygonOffset,t.polygonOffsetFactor,t.polygonOffsetUnits),t.alphaToCoverage===!0?V(e.SAMPLE_ALPHA_TO_COVERAGE):re(e.SAMPLE_ALPHA_TO_COVERAGE)}function le(t){D!==t&&(t?e.frontFace(e.CW):e.frontFace(e.CCW),D=t)}function ue(t){t===0?re(e.CULL_FACE):(V(e.CULL_FACE),t!==O&&(t===1?e.cullFace(e.BACK):t===2?e.cullFace(e.FRONT):e.cullFace(e.FRONT_AND_BACK))),O=t}function W(t){t!==k&&(N&&e.lineWidth(t),k=t)}function de(t,n,r){t?(V(e.POLYGON_OFFSET_FILL),(A!==n||j!==r)&&(A=n,j=r,o.getReversed()&&(n=-n),e.polygonOffset(n,r))):re(e.POLYGON_OFFSET_FILL)}function fe(t){t?V(e.SCISSOR_TEST):re(e.SCISSOR_TEST)}function G(t){t===void 0&&(t=e.TEXTURE0+M-1),I!==t&&(e.activeTexture(t),I=t)}function K(t,n,r){r===void 0&&(r=I===null?e.TEXTURE0+M-1:I);let i=L[r];i===void 0&&(i={type:void 0,texture:void 0},L[r]=i),(i.type!==t||i.texture!==n)&&(I!==r&&(e.activeTexture(r),I=r),e.bindTexture(t,n||B[t]),i.type=t,i.texture=n)}function pe(){let t=L[I];t!==void 0&&t.type!==void 0&&(e.bindTexture(t.type,null),t.type=void 0,t.texture=void 0)}function me(){try{e.compressedTexImage2D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function q(){try{e.compressedTexImage3D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function he(){try{e.texSubImage2D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function ge(){try{e.texSubImage3D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function _e(){try{e.compressedTexSubImage2D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function ve(){try{e.compressedTexSubImage3D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function ye(){try{e.texStorage2D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function be(){try{e.texStorage3D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function xe(){try{e.texImage2D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function Se(){try{e.texImage3D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function Ce(t){return d[t]===void 0?e.getParameter(t):d[t]}function we(t,n){d[t]!==n&&(e.pixelStorei(t,n),d[t]=n)}function Te(t){te.equals(t)===!1&&(e.scissor(t.x,t.y,t.z,t.w),te.copy(t))}function J(t){z.equals(t)===!1&&(e.viewport(t.x,t.y,t.z,t.w),z.copy(t))}function Ee(t,n){let r=l.get(n);r===void 0&&(r=new WeakMap,l.set(n,r));let i=r.get(t);i===void 0&&(i=e.getUniformBlockIndex(n,t.name),r.set(t,i))}function De(t,n){let r=l.get(n).get(t);c.get(n)!==r&&(e.uniformBlockBinding(n,r,t.__bindingPointIndex),c.set(n,r))}function Oe(){e.disable(e.BLEND),e.disable(e.CULL_FACE),e.disable(e.DEPTH_TEST),e.disable(e.POLYGON_OFFSET_FILL),e.disable(e.SCISSOR_TEST),e.disable(e.STENCIL_TEST),e.disable(e.SAMPLE_ALPHA_TO_COVERAGE),e.blendEquation(e.FUNC_ADD),e.blendFunc(e.ONE,e.ZERO),e.blendFuncSeparate(e.ONE,e.ZERO,e.ONE,e.ZERO),e.blendColor(0,0,0,0),e.colorMask(!0,!0,!0,!0),e.clearColor(0,0,0,0),e.depthMask(!0),e.depthFunc(e.LESS),o.setReversed(!1),e.clearDepth(1),e.stencilMask(4294967295),e.stencilFunc(e.ALWAYS,0,4294967295),e.stencilOp(e.KEEP,e.KEEP,e.KEEP),e.clearStencil(0),e.cullFace(e.BACK),e.frontFace(e.CCW),e.polygonOffset(0,0),e.activeTexture(e.TEXTURE0),e.bindFramebuffer(e.FRAMEBUFFER,null),e.bindFramebuffer(e.DRAW_FRAMEBUFFER,null),e.bindFramebuffer(e.READ_FRAMEBUFFER,null),e.useProgram(null),e.lineWidth(1),e.scissor(0,0,e.canvas.width,e.canvas.height),e.viewport(0,0,e.canvas.width,e.canvas.height),e.pixelStorei(e.PACK_ALIGNMENT,4),e.pixelStorei(e.UNPACK_ALIGNMENT,4),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,!1),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1),e.pixelStorei(e.UNPACK_COLORSPACE_CONVERSION_WEBGL,e.BROWSER_DEFAULT_WEBGL),e.pixelStorei(e.PACK_ROW_LENGTH,0),e.pixelStorei(e.PACK_SKIP_PIXELS,0),e.pixelStorei(e.PACK_SKIP_ROWS,0),e.pixelStorei(e.UNPACK_ROW_LENGTH,0),e.pixelStorei(e.UNPACK_IMAGE_HEIGHT,0),e.pixelStorei(e.UNPACK_SKIP_PIXELS,0),e.pixelStorei(e.UNPACK_SKIP_ROWS,0),e.pixelStorei(e.UNPACK_SKIP_IMAGES,0),u={},d={},I=null,L={},f={},p=new WeakMap,m=[],h=null,g=!1,_=null,v=null,y=null,b=null,x=null,S=null,C=null,w=new Q(0,0,0),T=0,E=!1,D=null,O=null,k=null,A=null,j=null,te.set(0,0,e.canvas.width,e.canvas.height),z.set(0,0,e.canvas.width,e.canvas.height),a.reset(),o.reset(),s.reset()}return{buffers:{color:a,depth:o,stencil:s},enable:V,disable:re,bindFramebuffer:ie,drawBuffers:ae,useProgram:oe,setBlending:ce,setMaterial:U,setFlipSided:le,setCullFace:ue,setLineWidth:W,setPolygonOffset:de,setScissorTest:fe,activeTexture:G,bindTexture:K,unbindTexture:pe,compressedTexImage2D:me,compressedTexImage3D:q,texImage2D:xe,texImage3D:Se,pixelStorei:we,getParameter:Ce,updateUBOMapping:Ee,uniformBlockBinding:De,texStorage2D:ye,texStorage3D:be,texSubImage2D:he,texSubImage3D:ge,compressedTexSubImage2D:_e,compressedTexSubImage3D:ve,scissor:Te,viewport:J,reset:Oe}}function ux(e,t,n,r,i,a,o){let s=t.has(`WEBGL_multisampled_render_to_texture`)?t.get(`WEBGL_multisampled_render_to_texture`):null,c=typeof navigator>`u`?!1:/OculusBrowser/g.test(navigator.userAgent),l=new X,u=new WeakMap,d=new Set,f,p=new WeakMap,m=!1;try{m=typeof OffscreenCanvas<`u`&&new OffscreenCanvas(1,1).getContext(`2d`)!==null}catch{}function h(e,t){return m?new OffscreenCanvas(e,t):Rd(`canvas`)}function g(e,t,n){let r=1,i=me(e);if((i.width>n||i.height>n)&&(r=n/Math.max(i.width,i.height)),r<1){if(typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement||typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||typeof ImageBitmap<`u`&&e instanceof ImageBitmap||typeof VideoFrame<`u`&&e instanceof VideoFrame){let n=Math.floor(r*i.width),a=Math.floor(r*i.height);f===void 0&&(f=h(n,a));let o=t?h(n,a):f;return o.width=n,o.height=a,o.getContext(`2d`).drawImage(e,0,0,n,a),Ud(`WebGLRenderer: Texture has been resized from (`+i.width+`x`+i.height+`) to (`+n+`x`+a+`).`),o}return`data`in e&&Ud(`WebGLRenderer: Image in DataTexture is too big (`+i.width+`x`+i.height+`).`),e}return e}function _(e){return e.generateMipmaps}function v(t){e.generateMipmap(t)}function y(t){return t.isWebGLCubeRenderTarget?e.TEXTURE_CUBE_MAP:t.isWebGL3DRenderTarget?e.TEXTURE_3D:t.isWebGLArrayRenderTarget||t.isCompressedArrayTexture?e.TEXTURE_2D_ARRAY:e.TEXTURE_2D}function b(n,r,i,a,o,s=!1){if(n!==null){if(e[n]!==void 0)return e[n];Ud(`WebGLRenderer: Attempt to use non-existing WebGL internal format '`+n+`'`)}let c;a&&(c=t.get(`EXT_texture_norm16`),c||Ud(`WebGLRenderer: Unable to use normalized textures without EXT_texture_norm16 extension`));let l=r;if(r===e.RED&&(i===e.FLOAT&&(l=e.R32F),i===e.HALF_FLOAT&&(l=e.R16F),i===e.UNSIGNED_BYTE&&(l=e.R8),i===e.UNSIGNED_SHORT&&c&&(l=c.R16_EXT),i===e.SHORT&&c&&(l=c.R16_SNORM_EXT)),r===e.RED_INTEGER&&(i===e.UNSIGNED_BYTE&&(l=e.R8UI),i===e.UNSIGNED_SHORT&&(l=e.R16UI),i===e.UNSIGNED_INT&&(l=e.R32UI),i===e.BYTE&&(l=e.R8I),i===e.SHORT&&(l=e.R16I),i===e.INT&&(l=e.R32I)),r===e.RG&&(i===e.FLOAT&&(l=e.RG32F),i===e.HALF_FLOAT&&(l=e.RG16F),i===e.UNSIGNED_BYTE&&(l=e.RG8),i===e.UNSIGNED_SHORT&&c&&(l=c.RG16_EXT),i===e.SHORT&&c&&(l=c.RG16_SNORM_EXT)),r===e.RG_INTEGER&&(i===e.UNSIGNED_BYTE&&(l=e.RG8UI),i===e.UNSIGNED_SHORT&&(l=e.RG16UI),i===e.UNSIGNED_INT&&(l=e.RG32UI),i===e.BYTE&&(l=e.RG8I),i===e.SHORT&&(l=e.RG16I),i===e.INT&&(l=e.RG32I)),r===e.RGB_INTEGER&&(i===e.UNSIGNED_BYTE&&(l=e.RGB8UI),i===e.UNSIGNED_SHORT&&(l=e.RGB16UI),i===e.UNSIGNED_INT&&(l=e.RGB32UI),i===e.BYTE&&(l=e.RGB8I),i===e.SHORT&&(l=e.RGB16I),i===e.INT&&(l=e.RGB32I)),r===e.RGBA_INTEGER&&(i===e.UNSIGNED_BYTE&&(l=e.RGBA8UI),i===e.UNSIGNED_SHORT&&(l=e.RGBA16UI),i===e.UNSIGNED_INT&&(l=e.RGBA32UI),i===e.BYTE&&(l=e.RGBA8I),i===e.SHORT&&(l=e.RGBA16I),i===e.INT&&(l=e.RGBA32I)),r===e.RGB&&(i===e.UNSIGNED_SHORT&&c&&(l=c.RGB16_EXT),i===e.SHORT&&c&&(l=c.RGB16_SNORM_EXT),i===e.UNSIGNED_INT_5_9_9_9_REV&&(l=e.RGB9_E5),i===e.UNSIGNED_INT_10F_11F_11F_REV&&(l=e.R11F_G11F_B10F)),r===e.RGBA){let t=s?jd:jf.getTransfer(o);i===e.FLOAT&&(l=e.RGBA32F),i===e.HALF_FLOAT&&(l=e.RGBA16F),i===e.UNSIGNED_BYTE&&(l=t===`srgb`?e.SRGB8_ALPHA8:e.RGBA8),i===e.UNSIGNED_SHORT&&c&&(l=c.RGBA16_EXT),i===e.SHORT&&c&&(l=c.RGBA16_SNORM_EXT),i===e.UNSIGNED_SHORT_4_4_4_4&&(l=e.RGBA4),i===e.UNSIGNED_SHORT_5_5_5_1&&(l=e.RGB5_A1)}return(l===e.R16F||l===e.R32F||l===e.RG16F||l===e.RG32F||l===e.RGBA16F||l===e.RGBA32F)&&t.get(`EXT_color_buffer_float`),l}function x(t,n){let r;return t?n===null||n===1014||n===1020?r=e.DEPTH24_STENCIL8:n===1015?r=e.DEPTH32F_STENCIL8:n===1012&&(r=e.DEPTH24_STENCIL8,Ud(`DepthTexture: 16 bit depth attachment is not supported with stencil. Using 24-bit attachment.`)):n===null||n===1014||n===1020?r=e.DEPTH_COMPONENT24:n===1015?r=e.DEPTH_COMPONENT32F:n===1012&&(r=e.DEPTH_COMPONENT16),r}function S(e,t){return _(e)===!0||e.isFramebufferTexture&&e.minFilter!==1003&&e.minFilter!==1006?Math.log2(Math.max(t.width,t.height))+1:e.mipmaps!==void 0&&e.mipmaps.length>0?e.mipmaps.length:e.isCompressedTexture&&Array.isArray(e.image)?t.mipmaps.length:1}function C(e){let t=e.target;t.removeEventListener(`dispose`,C),T(t),t.isVideoTexture&&u.delete(t),t.isHTMLTexture&&d.delete(t)}function w(e){let t=e.target;t.removeEventListener(`dispose`,w),D(t)}function T(e){let t=r.get(e);if(t.__webglInit===void 0)return;let n=e.source,i=p.get(n);if(i){let r=i[t.__cacheKey];r.usedTimes--,r.usedTimes===0&&E(e),Object.keys(i).length===0&&p.delete(n)}r.remove(e)}function E(t){let n=r.get(t);e.deleteTexture(n.__webglTexture);let i=t.source,a=p.get(i);delete a[n.__cacheKey],o.memory.textures--}function D(t){let n=r.get(t);if(t.depthTexture&&(t.depthTexture.dispose(),r.remove(t.depthTexture)),t.isWebGLCubeRenderTarget)for(let t=0;t<6;t++){if(Array.isArray(n.__webglFramebuffer[t]))for(let r=0;r<n.__webglFramebuffer[t].length;r++)e.deleteFramebuffer(n.__webglFramebuffer[t][r]);else e.deleteFramebuffer(n.__webglFramebuffer[t]);n.__webglDepthbuffer&&e.deleteRenderbuffer(n.__webglDepthbuffer[t])}else{if(Array.isArray(n.__webglFramebuffer))for(let t=0;t<n.__webglFramebuffer.length;t++)e.deleteFramebuffer(n.__webglFramebuffer[t]);else e.deleteFramebuffer(n.__webglFramebuffer);if(n.__webglDepthbuffer&&e.deleteRenderbuffer(n.__webglDepthbuffer),n.__webglMultisampledFramebuffer&&e.deleteFramebuffer(n.__webglMultisampledFramebuffer),n.__webglColorRenderbuffer)for(let t=0;t<n.__webglColorRenderbuffer.length;t++)n.__webglColorRenderbuffer[t]&&e.deleteRenderbuffer(n.__webglColorRenderbuffer[t]);n.__webglDepthRenderbuffer&&e.deleteRenderbuffer(n.__webglDepthRenderbuffer)}let i=t.textures;for(let t=0,n=i.length;t<n;t++){let n=r.get(i[t]);n.__webglTexture&&(e.deleteTexture(n.__webglTexture),o.memory.textures--),r.remove(i[t])}r.remove(t)}let O=0;function k(){O=0}function A(){return O}function j(e){O=e}function M(){let e=O;return e>=i.maxTextures&&Ud(`WebGLTextures: Trying to use `+(e+1)+` texture units while this GPU supports only `+i.maxTextures),O+=1,e}function N(e){let t=[];return t.push(e.wrapS),t.push(e.wrapT),t.push(e.wrapR||0),t.push(e.magFilter),t.push(e.minFilter),t.push(e.anisotropy),t.push(e.internalFormat),t.push(e.format),t.push(e.type),t.push(e.generateMipmaps),t.push(e.premultiplyAlpha),t.push(e.flipY),t.push(e.unpackAlignment),t.push(e.colorSpace),t.join()}function P(t,i){let a=r.get(t);if(t.isVideoTexture&&K(t),t.isRenderTargetTexture===!1&&t.isExternalTexture!==!0&&t.version>0&&a.__version!==t.version){let e=t.image;if(e===null)Ud(`WebGLRenderer: Texture marked for update but no image data found.`);else if(e.complete===!1)Ud(`WebGLRenderer: Texture marked for update but image is incomplete`);else{re(a,t,i);return}}else t.isExternalTexture&&(a.__webglTexture=t.sourceTexture?t.sourceTexture:null);n.bindTexture(e.TEXTURE_2D,a.__webglTexture,e.TEXTURE0+i)}function F(t,i){let a=r.get(t);if(t.isRenderTargetTexture===!1&&t.version>0&&a.__version!==t.version){re(a,t,i);return}t.isExternalTexture&&(a.__webglTexture=t.sourceTexture?t.sourceTexture:null),n.bindTexture(e.TEXTURE_2D_ARRAY,a.__webglTexture,e.TEXTURE0+i)}function I(t,i){let a=r.get(t);if(t.isRenderTargetTexture===!1&&t.version>0&&a.__version!==t.version){re(a,t,i);return}n.bindTexture(e.TEXTURE_3D,a.__webglTexture,e.TEXTURE0+i)}function L(t,i){let a=r.get(t);if(t.isCubeDepthTexture!==!0&&t.version>0&&a.__version!==t.version){ie(a,t,i);return}n.bindTexture(e.TEXTURE_CUBE_MAP,a.__webglTexture,e.TEXTURE0+i)}let ee={[su]:e.REPEAT,[cu]:e.CLAMP_TO_EDGE,[lu]:e.MIRRORED_REPEAT},R={[uu]:e.NEAREST,[du]:e.NEAREST_MIPMAP_NEAREST,[fu]:e.NEAREST_MIPMAP_LINEAR,[pu]:e.LINEAR,[mu]:e.LINEAR_MIPMAP_NEAREST,[hu]:e.LINEAR_MIPMAP_LINEAR},te={512:e.NEVER,519:e.ALWAYS,513:e.LESS,515:e.LEQUAL,514:e.EQUAL,518:e.GEQUAL,516:e.GREATER,517:e.NOTEQUAL};function z(n,a){if(a.type===1015&&t.has(`OES_texture_float_linear`)===!1&&(a.magFilter===1006||a.magFilter===1007||a.magFilter===1005||a.magFilter===1008||a.minFilter===1006||a.minFilter===1007||a.minFilter===1005||a.minFilter===1008)&&Ud(`WebGLRenderer: Unable to use linear filtering with floating point textures. OES_texture_float_linear not supported on this device.`),e.texParameteri(n,e.TEXTURE_WRAP_S,ee[a.wrapS]),e.texParameteri(n,e.TEXTURE_WRAP_T,ee[a.wrapT]),(n===e.TEXTURE_3D||n===e.TEXTURE_2D_ARRAY)&&e.texParameteri(n,e.TEXTURE_WRAP_R,ee[a.wrapR]),e.texParameteri(n,e.TEXTURE_MAG_FILTER,R[a.magFilter]),e.texParameteri(n,e.TEXTURE_MIN_FILTER,R[a.minFilter]),a.compareFunction&&(e.texParameteri(n,e.TEXTURE_COMPARE_MODE,e.COMPARE_REF_TO_TEXTURE),e.texParameteri(n,e.TEXTURE_COMPARE_FUNC,te[a.compareFunction])),t.has(`EXT_texture_filter_anisotropic`)===!0){if(a.magFilter===1003||a.minFilter!==1005&&a.minFilter!==1008||a.type===1015&&t.has(`OES_texture_float_linear`)===!1)return;if(a.anisotropy>1||r.get(a).__currentAnisotropy){let o=t.get(`EXT_texture_filter_anisotropic`);e.texParameterf(n,o.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(a.anisotropy,i.getMaxAnisotropy())),r.get(a).__currentAnisotropy=a.anisotropy}}}function ne(t,n){let r=!1;t.__webglInit===void 0&&(t.__webglInit=!0,n.addEventListener(`dispose`,C));let i=n.source,a=p.get(i);a===void 0&&(a={},p.set(i,a));let s=N(n);if(s!==t.__cacheKey){a[s]===void 0&&(a[s]={texture:e.createTexture(),usedTimes:0},o.memory.textures++,r=!0),a[s].usedTimes++;let i=a[t.__cacheKey];i!==void 0&&(a[t.__cacheKey].usedTimes--,i.usedTimes===0&&E(n)),t.__cacheKey=s,t.__webglTexture=a[s].texture}return r}function B(e,t,n){return Math.floor(Math.floor(e/n)/t)}function V(t,r,i,a){let o=t.updateRanges;if(o.length===0)n.texSubImage2D(e.TEXTURE_2D,0,0,0,r.width,r.height,i,a,r.data);else{o.sort((e,t)=>e.start-t.start);let s=0;for(let e=1;e<o.length;e++){let t=o[s],n=o[e],i=t.start+t.count,a=B(n.start,r.width,4),c=B(t.start,r.width,4);n.start<=i+1&&a===c&&B(n.start+n.count-1,r.width,4)===a?t.count=Math.max(t.count,n.start+n.count-t.start):(++s,o[s]=n)}o.length=s+1;let c=n.getParameter(e.UNPACK_ROW_LENGTH),l=n.getParameter(e.UNPACK_SKIP_PIXELS),u=n.getParameter(e.UNPACK_SKIP_ROWS);n.pixelStorei(e.UNPACK_ROW_LENGTH,r.width);for(let t=0,s=o.length;t<s;t++){let s=o[t],c=Math.floor(s.start/4),l=Math.ceil(s.count/4),u=c%r.width,d=Math.floor(c/r.width),f=l;n.pixelStorei(e.UNPACK_SKIP_PIXELS,u),n.pixelStorei(e.UNPACK_SKIP_ROWS,d),n.texSubImage2D(e.TEXTURE_2D,0,u,d,f,1,i,a,r.data)}t.clearUpdateRanges(),n.pixelStorei(e.UNPACK_ROW_LENGTH,c),n.pixelStorei(e.UNPACK_SKIP_PIXELS,l),n.pixelStorei(e.UNPACK_SKIP_ROWS,u)}}function re(t,o,s){let c=e.TEXTURE_2D;(o.isDataArrayTexture||o.isCompressedArrayTexture)&&(c=e.TEXTURE_2D_ARRAY),o.isData3DTexture&&(c=e.TEXTURE_3D);let l=ne(t,o),u=o.source;n.bindTexture(c,t.__webglTexture,e.TEXTURE0+s);let f=r.get(u);if(u.version!==f.__version||l===!0){if(n.activeTexture(e.TEXTURE0+s),!(typeof ImageBitmap<`u`&&o.image instanceof ImageBitmap)){let t=jf.getPrimaries(jf.workingColorSpace),r=o.colorSpace===``?null:jf.getPrimaries(o.colorSpace),i=o.colorSpace===``||t===r?e.NONE:e.BROWSER_DEFAULT_WEBGL;n.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,o.flipY),n.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,o.premultiplyAlpha),n.pixelStorei(e.UNPACK_COLORSPACE_CONVERSION_WEBGL,i)}n.pixelStorei(e.UNPACK_ALIGNMENT,o.unpackAlignment);let t=g(o.image,!1,i.maxTextureSize);t=pe(o,t);let r=a.convert(o.format,o.colorSpace),p=a.convert(o.type),m=b(o.internalFormat,r,p,o.normalized,o.colorSpace,o.isVideoTexture);z(c,o);let h,y=o.mipmaps,C=o.isVideoTexture!==!0,w=f.__version===void 0||l===!0,T=u.dataReady,E=S(o,t);if(o.isDepthTexture)m=x(o.format===Nu,o.type),w&&(C?n.texStorage2D(e.TEXTURE_2D,1,m,t.width,t.height):n.texImage2D(e.TEXTURE_2D,0,m,t.width,t.height,0,r,p,null));else if(o.isDataTexture){if(y.length>0){C&&w&&n.texStorage2D(e.TEXTURE_2D,E,m,y[0].width,y[0].height);for(let t=0,i=y.length;t<i;t++)h=y[t],C?T&&n.texSubImage2D(e.TEXTURE_2D,t,0,0,h.width,h.height,r,p,h.data):n.texImage2D(e.TEXTURE_2D,t,m,h.width,h.height,0,r,p,h.data);o.generateMipmaps=!1}else C?(w&&n.texStorage2D(e.TEXTURE_2D,E,m,t.width,t.height),T&&V(o,t,r,p)):n.texImage2D(e.TEXTURE_2D,0,m,t.width,t.height,0,r,p,t.data)}else if(o.isCompressedTexture){if(o.isCompressedArrayTexture){C&&w&&n.texStorage3D(e.TEXTURE_2D_ARRAY,E,m,y[0].width,y[0].height,t.depth);for(let i=0,a=y.length;i<a;i++)if(h=y[i],o.format!==1023){if(r!==null){if(C){if(T){if(o.layerUpdates.size>0){let t=iv(h.width,h.height,o.format,o.type);for(let a of o.layerUpdates){let o=h.data.subarray(a*t/h.data.BYTES_PER_ELEMENT,(a+1)*t/h.data.BYTES_PER_ELEMENT);n.compressedTexSubImage3D(e.TEXTURE_2D_ARRAY,i,0,0,a,h.width,h.height,1,r,o)}}else n.compressedTexSubImage3D(e.TEXTURE_2D_ARRAY,i,0,0,0,h.width,h.height,t.depth,r,h.data)}}else n.compressedTexImage3D(e.TEXTURE_2D_ARRAY,i,m,h.width,h.height,t.depth,0,h.data,0,0)}else Ud(`WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()`)}else C?T&&n.texSubImage3D(e.TEXTURE_2D_ARRAY,i,0,0,0,h.width,h.height,t.depth,r,p,h.data):n.texImage3D(e.TEXTURE_2D_ARRAY,i,m,h.width,h.height,t.depth,0,r,p,h.data);o.layerUpdates.size>0&&o.clearLayerUpdates()}else{C&&w&&n.texStorage2D(e.TEXTURE_2D,E,m,y[0].width,y[0].height);for(let t=0,i=y.length;t<i;t++)h=y[t],o.format===1023?C?T&&n.texSubImage2D(e.TEXTURE_2D,t,0,0,h.width,h.height,r,p,h.data):n.texImage2D(e.TEXTURE_2D,t,m,h.width,h.height,0,r,p,h.data):r===null?Ud(`WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()`):C?T&&n.compressedTexSubImage2D(e.TEXTURE_2D,t,0,0,h.width,h.height,r,h.data):n.compressedTexImage2D(e.TEXTURE_2D,t,m,h.width,h.height,0,h.data)}}else if(o.isDataArrayTexture){if(C){if(w&&n.texStorage3D(e.TEXTURE_2D_ARRAY,E,m,t.width,t.height,t.depth),T){if(o.layerUpdates.size>0){let i=iv(t.width,t.height,o.format,o.type);for(let a of o.layerUpdates){let o=t.data.subarray(a*i/t.data.BYTES_PER_ELEMENT,(a+1)*i/t.data.BYTES_PER_ELEMENT);n.texSubImage3D(e.TEXTURE_2D_ARRAY,0,0,0,a,t.width,t.height,1,r,p,o)}o.clearLayerUpdates()}else n.texSubImage3D(e.TEXTURE_2D_ARRAY,0,0,0,0,t.width,t.height,t.depth,r,p,t.data)}}else n.texImage3D(e.TEXTURE_2D_ARRAY,0,m,t.width,t.height,t.depth,0,r,p,t.data)}else if(o.isData3DTexture)C?(w&&n.texStorage3D(e.TEXTURE_3D,E,m,t.width,t.height,t.depth),T&&n.texSubImage3D(e.TEXTURE_3D,0,0,0,0,t.width,t.height,t.depth,r,p,t.data)):n.texImage3D(e.TEXTURE_3D,0,m,t.width,t.height,t.depth,0,r,p,t.data);else if(o.isFramebufferTexture){if(w){if(C)n.texStorage2D(e.TEXTURE_2D,E,m,t.width,t.height);else{let i=t.width,a=t.height;for(let t=0;t<E;t++)n.texImage2D(e.TEXTURE_2D,t,m,i,a,0,r,p,null),i>>=1,a>>=1}}}else if(o.isHTMLTexture){if(`texElementImage2D`in e){let n=e.canvas;if(n.hasAttribute(`layoutsubtree`)||n.setAttribute(`layoutsubtree`,`true`),t.parentNode!==n){n.appendChild(t),d.add(o),n.onpaint=e=>{let t=e.changedElements;for(let e of d)t.includes(e.image)&&(e.needsUpdate=!0)},n.requestPaint();return}if(e.texElementImage2D.length===3)e.texElementImage2D(e.TEXTURE_2D,e.RGBA8,t);else{let n=e.RGBA,r=e.RGBA,i=e.UNSIGNED_BYTE;e.texElementImage2D(e.TEXTURE_2D,0,n,r,i,t)}e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)}}else if(y.length>0){if(C&&w){let t=me(y[0]);n.texStorage2D(e.TEXTURE_2D,E,m,t.width,t.height)}for(let t=0,i=y.length;t<i;t++)h=y[t],C?T&&n.texSubImage2D(e.TEXTURE_2D,t,0,0,r,p,h):n.texImage2D(e.TEXTURE_2D,t,m,r,p,h);o.generateMipmaps=!1}else if(C){if(w){let r=me(t);n.texStorage2D(e.TEXTURE_2D,E,m,r.width,r.height)}T&&n.texSubImage2D(e.TEXTURE_2D,0,0,0,r,p,t)}else n.texImage2D(e.TEXTURE_2D,0,m,r,p,t);_(o)&&v(c),f.__version=u.version,o.onUpdate&&o.onUpdate(o)}t.__version=o.version}function ie(t,o,s){if(o.image.length!==6)return;let c=ne(t,o),l=o.source;n.bindTexture(e.TEXTURE_CUBE_MAP,t.__webglTexture,e.TEXTURE0+s);let u=r.get(l);if(l.version!==u.__version||c===!0){n.activeTexture(e.TEXTURE0+s);let t=jf.getPrimaries(jf.workingColorSpace),r=o.colorSpace===``?null:jf.getPrimaries(o.colorSpace),d=o.colorSpace===``||t===r?e.NONE:e.BROWSER_DEFAULT_WEBGL;n.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,o.flipY),n.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,o.premultiplyAlpha),n.pixelStorei(e.UNPACK_ALIGNMENT,o.unpackAlignment),n.pixelStorei(e.UNPACK_COLORSPACE_CONVERSION_WEBGL,d);let f=o.isCompressedTexture||o.image[0].isCompressedTexture,p=o.image[0]&&o.image[0].isDataTexture,m=[];for(let e=0;e<6;e++)!f&&!p?m[e]=g(o.image[e],!0,i.maxCubemapSize):m[e]=p?o.image[e].image:o.image[e],m[e]=pe(o,m[e]);let h=m[0],y=a.convert(o.format,o.colorSpace),x=a.convert(o.type),C=b(o.internalFormat,y,x,o.normalized,o.colorSpace),w=o.isVideoTexture!==!0,T=u.__version===void 0||c===!0,E=l.dataReady,D=S(o,h);z(e.TEXTURE_CUBE_MAP,o);let O;if(f){w&&T&&n.texStorage2D(e.TEXTURE_CUBE_MAP,D,C,h.width,h.height);for(let t=0;t<6;t++){O=m[t].mipmaps;for(let r=0;r<O.length;r++){let i=O[r];o.format===1023?w?E&&n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,r,0,0,i.width,i.height,y,x,i.data):n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,r,C,i.width,i.height,0,y,x,i.data):y===null?Ud(`WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()`):w?E&&n.compressedTexSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,r,0,0,i.width,i.height,y,i.data):n.compressedTexImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,r,C,i.width,i.height,0,i.data)}}}else{if(O=o.mipmaps,w&&T){O.length>0&&D++;let t=me(m[0]);n.texStorage2D(e.TEXTURE_CUBE_MAP,D,C,t.width,t.height)}for(let t=0;t<6;t++)if(p){w?E&&n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,0,0,m[t].width,m[t].height,y,x,m[t].data):n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,C,m[t].width,m[t].height,0,y,x,m[t].data);for(let r=0;r<O.length;r++){let i=O[r].image[t].image;w?E&&n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,r+1,0,0,i.width,i.height,y,x,i.data):n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,r+1,C,i.width,i.height,0,y,x,i.data)}}else{w?E&&n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,0,0,y,x,m[t]):n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,C,y,x,m[t]);for(let r=0;r<O.length;r++){let i=O[r];w?E&&n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,r+1,0,0,y,x,i.image[t]):n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,r+1,C,y,x,i.image[t])}}}_(o)&&v(e.TEXTURE_CUBE_MAP),u.__version=l.version,o.onUpdate&&o.onUpdate(o)}t.__version=o.version}function ae(t,i,o,c,l,u){let d=a.convert(o.format,o.colorSpace),f=a.convert(o.type),p=b(o.internalFormat,d,f,o.normalized,o.colorSpace),m=r.get(i),h=r.get(o);if(h.__renderTarget=i,!m.__hasExternalTextures){let t=Math.max(1,i.width>>u),r=Math.max(1,i.height>>u);l===e.TEXTURE_3D||l===e.TEXTURE_2D_ARRAY?n.texImage3D(l,u,p,t,r,i.depth,0,d,f,null):n.texImage2D(l,u,p,t,r,0,d,f,null)}n.bindFramebuffer(e.FRAMEBUFFER,t),G(i)?s.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,c,l,h.__webglTexture,0,fe(i)):(l===e.TEXTURE_2D||l>=e.TEXTURE_CUBE_MAP_POSITIVE_X&&l<=e.TEXTURE_CUBE_MAP_NEGATIVE_Z)&&e.framebufferTexture2D(e.FRAMEBUFFER,c,l,h.__webglTexture,u),n.bindFramebuffer(e.FRAMEBUFFER,null)}function oe(t,n,r){if(e.bindRenderbuffer(e.RENDERBUFFER,t),n.depthBuffer){let i=n.depthTexture,a=i&&i.isDepthTexture?i.type:null,o=x(n.stencilBuffer,a),c=n.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT;G(n)?s.renderbufferStorageMultisampleEXT(e.RENDERBUFFER,fe(n),o,n.width,n.height):r?e.renderbufferStorageMultisample(e.RENDERBUFFER,fe(n),o,n.width,n.height):e.renderbufferStorage(e.RENDERBUFFER,o,n.width,n.height),e.framebufferRenderbuffer(e.FRAMEBUFFER,c,e.RENDERBUFFER,t)}else{let t=n.textures;for(let i=0;i<t.length;i++){let o=t[i],c=a.convert(o.format,o.colorSpace),l=a.convert(o.type),u=b(o.internalFormat,c,l,o.normalized,o.colorSpace);G(n)?s.renderbufferStorageMultisampleEXT(e.RENDERBUFFER,fe(n),u,n.width,n.height):r?e.renderbufferStorageMultisample(e.RENDERBUFFER,fe(n),u,n.width,n.height):e.renderbufferStorage(e.RENDERBUFFER,u,n.width,n.height)}}e.bindRenderbuffer(e.RENDERBUFFER,null)}function H(t,i,o){let c=i.isWebGLCubeRenderTarget===!0;if(n.bindFramebuffer(e.FRAMEBUFFER,t),!(i.depthTexture&&i.depthTexture.isDepthTexture))throw Error(`THREE.WebGLTextures: renderTarget.depthTexture must be an instance of THREE.DepthTexture.`);let l=r.get(i.depthTexture);if(l.__renderTarget=i,(!l.__webglTexture||i.depthTexture.image.width!==i.width||i.depthTexture.image.height!==i.height)&&(i.depthTexture.image.width=i.width,i.depthTexture.image.height=i.height,i.depthTexture.needsUpdate=!0),c){if(l.__webglInit===void 0&&(l.__webglInit=!0,i.depthTexture.addEventListener(`dispose`,C)),l.__webglTexture===void 0){l.__webglTexture=e.createTexture(),n.bindTexture(e.TEXTURE_CUBE_MAP,l.__webglTexture),z(e.TEXTURE_CUBE_MAP,i.depthTexture);let t=a.convert(i.depthTexture.format),r=a.convert(i.depthTexture.type),o;i.depthTexture.format===1026?o=e.DEPTH_COMPONENT24:i.depthTexture.format===1027&&(o=e.DEPTH24_STENCIL8);for(let n=0;n<6;n++)e.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+n,0,o,i.width,i.height,0,t,r,null)}}else P(i.depthTexture,0);let u=l.__webglTexture,d=fe(i),f=c?e.TEXTURE_CUBE_MAP_POSITIVE_X+o:e.TEXTURE_2D,p=i.depthTexture.format===1027?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT;if(i.depthTexture.format===1026)G(i)?s.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,p,f,u,0,d):e.framebufferTexture2D(e.FRAMEBUFFER,p,f,u,0);else if(i.depthTexture.format===1027)G(i)?s.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,p,f,u,0,d):e.framebufferTexture2D(e.FRAMEBUFFER,p,f,u,0);else throw Error(`THREE.WebGLTextures: Unknown depthTexture format.`)}function se(t){let i=r.get(t),a=t.isWebGLCubeRenderTarget===!0;if(i.__boundDepthTexture!==t.depthTexture){let e=t.depthTexture;if(i.__depthDisposeCallback&&i.__depthDisposeCallback(),e){let t=()=>{delete i.__boundDepthTexture,delete i.__depthDisposeCallback,e.removeEventListener(`dispose`,t)};e.addEventListener(`dispose`,t),i.__depthDisposeCallback=t}i.__boundDepthTexture=e}if(t.depthTexture&&!i.__autoAllocateDepthBuffer){if(a)for(let e=0;e<6;e++)H(i.__webglFramebuffer[e],t,e);else{let e=t.texture.mipmaps;e&&e.length>0?H(i.__webglFramebuffer[0],t,0):H(i.__webglFramebuffer,t,0)}}else if(a){i.__webglDepthbuffer=[];for(let r=0;r<6;r++)if(n.bindFramebuffer(e.FRAMEBUFFER,i.__webglFramebuffer[r]),i.__webglDepthbuffer[r]===void 0)i.__webglDepthbuffer[r]=e.createRenderbuffer(),oe(i.__webglDepthbuffer[r],t,!1);else{let n=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,a=i.__webglDepthbuffer[r];e.bindRenderbuffer(e.RENDERBUFFER,a),e.framebufferRenderbuffer(e.FRAMEBUFFER,n,e.RENDERBUFFER,a)}}else{let r=t.texture.mipmaps;if(r&&r.length>0?n.bindFramebuffer(e.FRAMEBUFFER,i.__webglFramebuffer[0]):n.bindFramebuffer(e.FRAMEBUFFER,i.__webglFramebuffer),i.__webglDepthbuffer===void 0)i.__webglDepthbuffer=e.createRenderbuffer(),oe(i.__webglDepthbuffer,t,!1);else{let n=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,r=i.__webglDepthbuffer;e.bindRenderbuffer(e.RENDERBUFFER,r),e.framebufferRenderbuffer(e.FRAMEBUFFER,n,e.RENDERBUFFER,r)}}n.bindFramebuffer(e.FRAMEBUFFER,null)}function ce(t,n,i){let a=r.get(t);n!==void 0&&ae(a.__webglFramebuffer,t,t.texture,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,0),i!==void 0&&se(t)}function U(t){let i=t.texture,s=r.get(t),c=r.get(i);t.addEventListener(`dispose`,w);let l=t.textures,u=t.isWebGLCubeRenderTarget===!0,d=l.length>1;if(d||(c.__webglTexture===void 0&&(c.__webglTexture=e.createTexture()),c.__version=i.version,o.memory.textures++),u){s.__webglFramebuffer=[];for(let t=0;t<6;t++)if(i.mipmaps&&i.mipmaps.length>0){s.__webglFramebuffer[t]=[];for(let n=0;n<i.mipmaps.length;n++)s.__webglFramebuffer[t][n]=e.createFramebuffer()}else s.__webglFramebuffer[t]=e.createFramebuffer()}else{if(i.mipmaps&&i.mipmaps.length>0){s.__webglFramebuffer=[];for(let t=0;t<i.mipmaps.length;t++)s.__webglFramebuffer[t]=e.createFramebuffer()}else s.__webglFramebuffer=e.createFramebuffer();if(d)for(let t=0,n=l.length;t<n;t++){let n=r.get(l[t]);n.__webglTexture===void 0&&(n.__webglTexture=e.createTexture(),o.memory.textures++)}if(t.samples>0&&G(t)===!1){s.__webglMultisampledFramebuffer=e.createFramebuffer(),s.__webglColorRenderbuffer=[],n.bindFramebuffer(e.FRAMEBUFFER,s.__webglMultisampledFramebuffer);for(let n=0;n<l.length;n++){let r=l[n];s.__webglColorRenderbuffer[n]=e.createRenderbuffer(),e.bindRenderbuffer(e.RENDERBUFFER,s.__webglColorRenderbuffer[n]);let i=a.convert(r.format,r.colorSpace),o=a.convert(r.type),c=b(r.internalFormat,i,o,r.normalized,r.colorSpace,t.isXRRenderTarget===!0),u=fe(t);e.renderbufferStorageMultisample(e.RENDERBUFFER,u,c,t.width,t.height),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0+n,e.RENDERBUFFER,s.__webglColorRenderbuffer[n])}e.bindRenderbuffer(e.RENDERBUFFER,null),t.depthBuffer&&(s.__webglDepthRenderbuffer=e.createRenderbuffer(),oe(s.__webglDepthRenderbuffer,t,!0)),n.bindFramebuffer(e.FRAMEBUFFER,null)}}if(u){n.bindTexture(e.TEXTURE_CUBE_MAP,c.__webglTexture),z(e.TEXTURE_CUBE_MAP,i);for(let n=0;n<6;n++)if(i.mipmaps&&i.mipmaps.length>0)for(let r=0;r<i.mipmaps.length;r++)ae(s.__webglFramebuffer[n][r],t,i,e.COLOR_ATTACHMENT0,e.TEXTURE_CUBE_MAP_POSITIVE_X+n,r);else ae(s.__webglFramebuffer[n],t,i,e.COLOR_ATTACHMENT0,e.TEXTURE_CUBE_MAP_POSITIVE_X+n,0);_(i)&&v(e.TEXTURE_CUBE_MAP),n.unbindTexture()}else if(d){for(let i=0,a=l.length;i<a;i++){let a=l[i],o=r.get(a),c=e.TEXTURE_2D;(t.isWebGL3DRenderTarget||t.isWebGLArrayRenderTarget)&&(c=t.isWebGL3DRenderTarget?e.TEXTURE_3D:e.TEXTURE_2D_ARRAY),n.bindTexture(c,o.__webglTexture),z(c,a),ae(s.__webglFramebuffer,t,a,e.COLOR_ATTACHMENT0+i,c,0),_(a)&&v(c)}n.unbindTexture()}else{let r=e.TEXTURE_2D;if((t.isWebGL3DRenderTarget||t.isWebGLArrayRenderTarget)&&(r=t.isWebGL3DRenderTarget?e.TEXTURE_3D:e.TEXTURE_2D_ARRAY),n.bindTexture(r,c.__webglTexture),z(r,i),i.mipmaps&&i.mipmaps.length>0)for(let n=0;n<i.mipmaps.length;n++)ae(s.__webglFramebuffer[n],t,i,e.COLOR_ATTACHMENT0,r,n);else ae(s.__webglFramebuffer,t,i,e.COLOR_ATTACHMENT0,r,0);_(i)&&v(r),n.unbindTexture()}t.depthBuffer&&se(t)}function le(e){let t=e.textures;for(let i=0,a=t.length;i<a;i++){let a=t[i];if(_(a)){let t=y(e),i=r.get(a).__webglTexture;n.bindTexture(t,i),v(t),n.unbindTexture()}}}let ue=[],W=[];function de(t){if(t.samples>0){if(G(t)===!1){let i=t.textures,a=t.width,o=t.height,s=e.COLOR_BUFFER_BIT,l=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,u=r.get(t),d=i.length>1;if(d)for(let t=0;t<i.length;t++)n.bindFramebuffer(e.FRAMEBUFFER,u.__webglMultisampledFramebuffer),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0+t,e.RENDERBUFFER,null),n.bindFramebuffer(e.FRAMEBUFFER,u.__webglFramebuffer),e.framebufferTexture2D(e.DRAW_FRAMEBUFFER,e.COLOR_ATTACHMENT0+t,e.TEXTURE_2D,null,0);n.bindFramebuffer(e.READ_FRAMEBUFFER,u.__webglMultisampledFramebuffer);let f=t.texture.mipmaps;f&&f.length>0?n.bindFramebuffer(e.DRAW_FRAMEBUFFER,u.__webglFramebuffer[0]):n.bindFramebuffer(e.DRAW_FRAMEBUFFER,u.__webglFramebuffer);for(let n=0;n<i.length;n++){if(t.resolveDepthBuffer&&(t.depthBuffer&&(s|=e.DEPTH_BUFFER_BIT),t.stencilBuffer&&t.resolveStencilBuffer&&(s|=e.STENCIL_BUFFER_BIT)),d){e.framebufferRenderbuffer(e.READ_FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.RENDERBUFFER,u.__webglColorRenderbuffer[n]);let t=r.get(i[n]).__webglTexture;e.framebufferTexture2D(e.DRAW_FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,t,0)}e.blitFramebuffer(0,0,a,o,0,0,a,o,s,e.NEAREST),c===!0&&(ue.length=0,W.length=0,ue.push(e.COLOR_ATTACHMENT0+n),t.depthBuffer&&t.storeMultisampledDepthBuffer===!1&&(ue.push(l),W.push(l),e.invalidateFramebuffer(e.DRAW_FRAMEBUFFER,W)),e.invalidateFramebuffer(e.READ_FRAMEBUFFER,ue))}if(n.bindFramebuffer(e.READ_FRAMEBUFFER,null),n.bindFramebuffer(e.DRAW_FRAMEBUFFER,null),d)for(let t=0;t<i.length;t++){n.bindFramebuffer(e.FRAMEBUFFER,u.__webglMultisampledFramebuffer),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0+t,e.RENDERBUFFER,u.__webglColorRenderbuffer[t]);let a=r.get(i[t]).__webglTexture;n.bindFramebuffer(e.FRAMEBUFFER,u.__webglFramebuffer),e.framebufferTexture2D(e.DRAW_FRAMEBUFFER,e.COLOR_ATTACHMENT0+t,e.TEXTURE_2D,a,0)}n.bindFramebuffer(e.DRAW_FRAMEBUFFER,u.__webglMultisampledFramebuffer)}else if(t.depthBuffer&&t.storeMultisampledDepthBuffer===!1&&c){let n=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT;e.invalidateFramebuffer(e.DRAW_FRAMEBUFFER,[n])}}}function fe(e){return Math.min(i.maxSamples,e.samples)}function G(e){let n=r.get(e);return e.samples>0&&t.has(`WEBGL_multisampled_render_to_texture`)===!0&&n.__useRenderToTexture!==!1}function K(e){let t=o.render.frame;u.get(e)!==t&&(u.set(e,t),e.update())}function pe(e,t){let n=e.colorSpace,r=e.format,i=e.type;return e.isCompressedTexture===!0||e.isVideoTexture===!0||n!==`srgb-linear`&&n!==``&&(jf.getTransfer(n)===`srgb`?(r!==1023||i!==1009)&&Ud(`WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType.`):Wd(`WebGLTextures: Unsupported texture color space:`,n)),t}function me(e){return typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement?(l.width=e.naturalWidth||e.width,l.height=e.naturalHeight||e.height):typeof VideoFrame<`u`&&e instanceof VideoFrame?(l.width=e.displayWidth,l.height=e.displayHeight):(l.width=e.width,l.height=e.height),l}this.allocateTextureUnit=M,this.resetTextureUnits=k,this.getTextureUnits=A,this.setTextureUnits=j,this.setTexture2D=P,this.setTexture2DArray=F,this.setTexture3D=I,this.setTextureCube=L,this.rebindTextures=ce,this.setupRenderTarget=U,this.updateRenderTargetMipmap=le,this.updateMultisampleRenderTarget=de,this.setupDepthRenderbuffer=se,this.setupFrameBufferTexture=ae,this.useMultisampledRTT=G,this.isReversedDepthBuffer=function(){return n.buffers.depth.getReversed()}}function dx(e,t){function n(n,r=``){let i,a=jf.getTransfer(r);if(n===1009)return e.UNSIGNED_BYTE;if(n===1017)return e.UNSIGNED_SHORT_4_4_4_4;if(n===1018)return e.UNSIGNED_SHORT_5_5_5_1;if(n===35902)return e.UNSIGNED_INT_5_9_9_9_REV;if(n===35899)return e.UNSIGNED_INT_10F_11F_11F_REV;if(n===1010)return e.BYTE;if(n===1011)return e.SHORT;if(n===1012)return e.UNSIGNED_SHORT;if(n===1013)return e.INT;if(n===1014)return e.UNSIGNED_INT;if(n===1015)return e.FLOAT;if(n===1016)return e.HALF_FLOAT;if(n===1021)return e.ALPHA;if(n===1022)return e.RGB;if(n===1023)return e.RGBA;if(n===1026)return e.DEPTH_COMPONENT;if(n===1027)return e.DEPTH_STENCIL;if(n===1028)return e.RED;if(n===1029)return e.RED_INTEGER;if(n===1030)return e.RG;if(n===1031)return e.RG_INTEGER;if(n===1033)return e.RGBA_INTEGER;if(n===33776||n===33777||n===33778||n===33779){if(a===`srgb`){if(i=t.get(`WEBGL_compressed_texture_s3tc_srgb`),i!==null){if(n===33776)return i.COMPRESSED_SRGB_S3TC_DXT1_EXT;if(n===33777)return i.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;if(n===33778)return i.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;if(n===33779)return i.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT}else return null}else if(i=t.get(`WEBGL_compressed_texture_s3tc`),i!==null){if(n===33776)return i.COMPRESSED_RGB_S3TC_DXT1_EXT;if(n===33777)return i.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(n===33778)return i.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(n===33779)return i.COMPRESSED_RGBA_S3TC_DXT5_EXT}else return null}if(n===35840||n===35841||n===35842||n===35843){if(i=t.get(`WEBGL_compressed_texture_pvrtc`),i!==null){if(n===35840)return i.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(n===35841)return i.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(n===35842)return i.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(n===35843)return i.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}else return null}if(n===36196||n===37492||n===37496||n===37488||n===37489||n===37490||n===37491){if(i=t.get(`WEBGL_compressed_texture_etc`),i!==null){if(n===36196||n===37492)return a===`srgb`?i.COMPRESSED_SRGB8_ETC2:i.COMPRESSED_RGB8_ETC2;if(n===37496)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:i.COMPRESSED_RGBA8_ETC2_EAC;if(n===37488)return i.COMPRESSED_R11_EAC;if(n===37489)return i.COMPRESSED_SIGNED_R11_EAC;if(n===37490)return i.COMPRESSED_RG11_EAC;if(n===37491)return i.COMPRESSED_SIGNED_RG11_EAC}else return null}if(n===37808||n===37809||n===37810||n===37811||n===37812||n===37813||n===37814||n===37815||n===37816||n===37817||n===37818||n===37819||n===37820||n===37821){if(i=t.get(`WEBGL_compressed_texture_astc`),i!==null){if(n===37808)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR:i.COMPRESSED_RGBA_ASTC_4x4_KHR;if(n===37809)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR:i.COMPRESSED_RGBA_ASTC_5x4_KHR;if(n===37810)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR:i.COMPRESSED_RGBA_ASTC_5x5_KHR;if(n===37811)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR:i.COMPRESSED_RGBA_ASTC_6x5_KHR;if(n===37812)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR:i.COMPRESSED_RGBA_ASTC_6x6_KHR;if(n===37813)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR:i.COMPRESSED_RGBA_ASTC_8x5_KHR;if(n===37814)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR:i.COMPRESSED_RGBA_ASTC_8x6_KHR;if(n===37815)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR:i.COMPRESSED_RGBA_ASTC_8x8_KHR;if(n===37816)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR:i.COMPRESSED_RGBA_ASTC_10x5_KHR;if(n===37817)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR:i.COMPRESSED_RGBA_ASTC_10x6_KHR;if(n===37818)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR:i.COMPRESSED_RGBA_ASTC_10x8_KHR;if(n===37819)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR:i.COMPRESSED_RGBA_ASTC_10x10_KHR;if(n===37820)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR:i.COMPRESSED_RGBA_ASTC_12x10_KHR;if(n===37821)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR:i.COMPRESSED_RGBA_ASTC_12x12_KHR}else return null}if(n===36492||n===36494||n===36495){if(i=t.get(`EXT_texture_compression_bptc`),i!==null){if(n===36492)return a===`srgb`?i.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT:i.COMPRESSED_RGBA_BPTC_UNORM_EXT;if(n===36494)return i.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT;if(n===36495)return i.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT}else return null}if(n===36283||n===36284||n===36285||n===36286){if(i=t.get(`EXT_texture_compression_rgtc`),i!==null){if(n===36283)return i.COMPRESSED_RED_RGTC1_EXT;if(n===36284)return i.COMPRESSED_SIGNED_RED_RGTC1_EXT;if(n===36285)return i.COMPRESSED_RED_GREEN_RGTC2_EXT;if(n===36286)return i.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT}else return null}return n===1020?e.UNSIGNED_INT_24_8:e[n]===void 0?null:e[n]}return{convert:n}}var fx=`
4201
+ }`,rx=[new Z(1,0,0),new Z(-1,0,0),new Z(0,1,0),new Z(0,-1,0),new Z(0,0,1),new Z(0,0,-1)],ix=[new Z(0,-1,0),new Z(0,-1,0),new Z(0,0,1),new Z(0,0,-1),new Z(0,-1,0),new Z(0,-1,0)],ax=new qf,ox=new Z,sx=new Z;function cx(e,t,n){let r=new Nh,i=new X,a=new X,o=new Hf,s=new Eg,c=new Dg,l={},u=n.maxTextureSize,d={0:1,1:0,2:2},f=new bg({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new X},radius:{value:4}},vertexShader:tx,fragmentShader:nx}),p=f.clone();p.defines.HORIZONTAL_PASS=1;let m=new Om;m.setAttribute(`position`,new pm(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));let h=new _h(m,f),g=this;this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=1;let _=this.type;this.render=function(t,n,s){if(g.enabled===!1||g.autoUpdate===!1&&g.needsUpdate===!1||t.length===0)return;this.type===2&&(Ud(`WebGLShadowMap: PCFSoftShadowMap has been removed. Using PCFShadowMap instead.`),this.type=1);let c=e.getRenderTarget(),l=e.getActiveCubeFace(),d=e.getActiveMipmapLevel(),f=e.state;f.setBlending(0),f.buffers.depth.getReversed()===!0?f.buffers.color.setClear(0,0,0,0):f.buffers.color.setClear(1,1,1,1),f.buffers.depth.setTest(!0),f.setScissorTest(!1);let p=_!==this.type;p&&n.traverse(function(e){e.material&&(Array.isArray(e.material)?e.material.forEach(e=>e.needsUpdate=!0):e.material.needsUpdate=!0)});for(let c=0,l=t.length;c<l;c++){let l=t[c],d=l.shadow;if(d===void 0){Ud(`WebGLShadowMap:`,l,`has no shadow.`);continue}if(d.autoUpdate===!1&&d.needsUpdate===!1)continue;i.copy(d.mapSize);let m=d.getFrameExtents();i.multiply(m),a.copy(d.mapSize),(i.x>u||i.y>u)&&(i.x>u&&(a.x=Math.floor(u/m.x),i.x=a.x*m.x,d.mapSize.x=a.x),i.y>u&&(a.y=Math.floor(u/m.y),i.y=a.y*m.y,d.mapSize.y=a.y));let h=e.state.buffers.depth.getReversed();if(d.camera._reversedDepth=h,d.map===null||p===!0){if(d.map!==null&&(d.map.depthTexture!==null&&(d.map.depthTexture.dispose(),d.map.depthTexture=null),d.map.dispose()),this.type===3){if(l.isPointLight){Ud(`WebGLShadowMap: VSM shadow maps are not supported for PointLights. Use PCF or BasicShadowMap instead.`);continue}d.map=new Wf(i.x,i.y,{format:Iu,type:Cu,minFilter:pu,magFilter:pu,generateMipmaps:!1}),d.map.texture.name=l.name+`.shadowMap`,d.map.depthTexture=new $h(i.x,i.y,Su),d.map.depthTexture.name=l.name+`.shadowMapDepth`,d.map.depthTexture.format=Mu,d.map.depthTexture.compareFunction=null,d.map.depthTexture.minFilter=uu,d.map.depthTexture.magFilter=uu}else l.isPointLight?(d.map=new zv(i.x),d.map.depthTexture=new eg(i.x,xu)):(d.map=new Wf(i.x,i.y),d.map.depthTexture=new $h(i.x,i.y,xu)),d.map.depthTexture.name=l.name+`.shadowMap`,d.map.depthTexture.format=Mu,this.type===1?(d.map.depthTexture.compareFunction=h?518:515,d.map.depthTexture.minFilter=pu,d.map.depthTexture.magFilter=pu):(d.map.depthTexture.compareFunction=null,d.map.depthTexture.minFilter=uu,d.map.depthTexture.magFilter=uu);d.camera.updateProjectionMatrix()}d.map.isWebGLCubeRenderTarget!==!0&&(d.map.width!==i.x||d.map.height!==i.y)&&d.map.setSize(i.x,i.y);let g=d.map.isWebGLCubeRenderTarget?6:d.getViewportCount();l.isPointLight!==!0&&d.updateMatrices(l,s);for(let t=0;t<g;t++){let i=d.getCamera(t);if(l.isPointLight){let e=d.camera,n=d.matrix,r=l.distance||e.far;r!==e.far&&(e.far=r,e.updateProjectionMatrix()),ox.setFromMatrixPosition(l.matrixWorld),e.position.copy(ox),sx.copy(e.position),sx.add(rx[t]),e.up.copy(ix[t]),e.lookAt(sx),e.updateMatrixWorld(),n.makeTranslation(-ox.x,-ox.y,-ox.z),ax.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),d._frustum.setFromProjectionMatrix(ax,e.coordinateSystem,e.reversedDepth)}if(d.map.isWebGLCubeRenderTarget)e.setRenderTarget(d.map,t),e.clear();else{t===0&&(e.setRenderTarget(d.map),e.clear());let n=d.getViewport(t);o.set(a.x*n.x,a.y*n.y,a.x*n.z,a.y*n.w),f.viewport(o)}r=d.getFrustum(t),b(n,s,i,l,this.type)}d.isPointLightShadow!==!0&&this.type===3&&v(d,s),d.needsUpdate=!1}_=this.type,g.needsUpdate=!1,e.setRenderTarget(c,l,d)};function v(n,r){let a=t.update(h);f.defines.VSM_SAMPLES!==n.blurSamples&&(f.defines.VSM_SAMPLES=n.blurSamples,p.defines.VSM_SAMPLES=n.blurSamples,f.needsUpdate=!0,p.needsUpdate=!0),n.mapPass===null?n.mapPass=new Wf(i.x,i.y,{format:Iu,type:Cu}):(n.mapPass.width!==n.map.width||n.mapPass.height!==n.map.height)&&n.mapPass.setSize(n.map.width,n.map.height),f.uniforms.shadow_pass.value=n.map.depthTexture,f.uniforms.resolution.value.set(n.map.width,n.map.height),f.uniforms.radius.value=n.radius,e.setRenderTarget(n.mapPass),e.clear(),e.renderBufferDirect(r,null,a,f,h,null),p.uniforms.shadow_pass.value=n.mapPass.texture,p.uniforms.resolution.value.set(n.map.width,n.map.height),p.uniforms.radius.value=n.radius,e.setRenderTarget(n.map),e.clear(),e.renderBufferDirect(r,null,a,p,h,null)}function y(t,n,r,i){let a=null,o=r.isPointLight===!0?t.customDistanceMaterial:t.customDepthMaterial;if(o!==void 0)a=o;else if(a=r.isPointLight===!0?c:s,e.localClippingEnabled&&n.clipShadows===!0&&Array.isArray(n.clippingPlanes)&&n.clippingPlanes.length!==0||n.displacementMap&&n.displacementScale!==0||n.alphaMap&&n.alphaTest>0||n.map&&n.alphaTest>0||n.alphaToCoverage===!0){let e=a.uuid,t=n.uuid,r=l[e];r===void 0&&(r={},l[e]=r);let i=r[t];i===void 0&&(i=a.clone(),r[t]=i,n.addEventListener(`dispose`,x)),a=i}if(a.visible=n.visible,a.wireframe=n.wireframe,i===3?a.side=n.shadowSide===null?n.side:n.shadowSide:a.side=n.shadowSide===null?d[n.side]:n.shadowSide,a.alphaMap=n.alphaMap,a.alphaTest=n.alphaToCoverage===!0?.5:n.alphaTest,a.map=n.map,a.clipShadows=n.clipShadows,a.clippingPlanes=n.clippingPlanes,a.clipIntersection=n.clipIntersection,a.displacementMap=n.displacementMap,a.displacementScale=n.displacementScale,a.displacementBias=n.displacementBias,a.wireframeLinewidth=n.wireframeLinewidth,a.linewidth=n.linewidth,r.isPointLight===!0&&a.isMeshDistanceMaterial===!0){let t=e.properties.get(a);t.light=r}return a}function b(n,i,a,o,s){if(n.visible===!1)return;if(n.layers.test(i.layers)&&(n.isMesh||n.isLine||n.isPoints)&&(n.castShadow||n.receiveShadow&&s===3)&&(!n.frustumCulled||n.intersectsFrustum(r))){n.modelViewMatrix.multiplyMatrices(a.matrixWorldInverse,n.matrixWorld);let r=t.update(n),c=n.material;if(Array.isArray(c)){let t=r.groups;for(let l=0,u=t.length;l<u;l++){let u=t[l],d=c[u.materialIndex];if(d&&d.visible){let t=y(n,d,o,s);n.onBeforeShadow(e,n,i,a,r,t,u),e.renderBufferDirect(a,null,r,t,n,u),n.onAfterShadow(e,n,i,a,r,t,u)}}}else if(c.visible){let t=y(n,c,o,s);n.onBeforeShadow(e,n,i,a,r,t,null),e.renderBufferDirect(a,null,r,t,n,null),n.onAfterShadow(e,n,i,a,r,t,null)}}let c=n.children;for(let e=0,t=c.length;e<t;e++)b(c[e],i,a,o,s)}function x(e){e.target.removeEventListener(`dispose`,x);for(let t in l){let n=l[t],r=e.target.uuid;r in n&&(n[r].dispose(),delete n[r])}}}function lx(e,t){function n(){let t=!1,n=new Hf,r=null,i=new Hf(0,0,0,0);return{setMask:function(n){r!==n&&!t&&(e.colorMask(n,n,n,n),r=n)},setLocked:function(e){t=e},setClear:function(t,r,a,o,s){s===!0&&(t*=o,r*=o,a*=o),n.set(t,r,a,o),i.equals(n)===!1&&(e.clearColor(t,r,a,o),i.copy(n))},reset:function(){t=!1,r=null,i.set(-1,0,0,0)}}}function r(){let n=!1,r=!1,i=null,a=null,o=null;return{setReversed:function(e){if(r!==e){let n=t.get(`EXT_clip_control`);e?n.clipControlEXT(n.LOWER_LEFT_EXT,n.ZERO_TO_ONE_EXT):n.clipControlEXT(n.LOWER_LEFT_EXT,n.NEGATIVE_ONE_TO_ONE_EXT),r=e;let i=o;o=null,this.setClear(i)}},getReversed:function(){return r},setTest:function(t){t?V(e.DEPTH_TEST):re(e.DEPTH_TEST)},setMask:function(t){i!==t&&!n&&(e.depthMask(t),i=t)},setFunc:function(t){if(r&&(t=qd[t]),a!==t){switch(t){case 0:e.depthFunc(e.NEVER);break;case 1:e.depthFunc(e.ALWAYS);break;case 2:e.depthFunc(e.LESS);break;case 3:e.depthFunc(e.LEQUAL);break;case 4:e.depthFunc(e.EQUAL);break;case 5:e.depthFunc(e.GEQUAL);break;case 6:e.depthFunc(e.GREATER);break;case 7:e.depthFunc(e.NOTEQUAL);break;default:e.depthFunc(e.LEQUAL)}a=t}},setLocked:function(e){n=e},setClear:function(t){o!==t&&(o=t,r&&(t=1-t),e.clearDepth(t))},reset:function(){n=!1,i=null,a=null,o=null,r=!1}}}function i(){let t=!1,n=null,r=null,i=null,a=null,o=null,s=null,c=null,l=null;return{setTest:function(n){t||(n?V(e.STENCIL_TEST):re(e.STENCIL_TEST))},setMask:function(r){n!==r&&!t&&(e.stencilMask(r),n=r)},setFunc:function(t,n,o){(r!==t||i!==n||a!==o)&&(e.stencilFunc(t,n,o),r=t,i=n,a=o)},setOp:function(t,n,r){(o!==t||s!==n||c!==r)&&(e.stencilOp(t,n,r),o=t,s=n,c=r)},setLocked:function(e){t=e},setClear:function(t){l!==t&&(e.clearStencil(t),l=t)},reset:function(){t=!1,n=null,r=null,i=null,a=null,o=null,s=null,c=null,l=null}}}let a=new n,o=new r,s=new i,c=new WeakMap,l=new WeakMap,u={},d={},f={},p=new WeakMap,m=[],h=null,g=!1,_=null,v=null,y=null,b=null,x=null,S=null,C=null,w=new Q(0,0,0),T=0,E=!1,D=null,O=null,k=null,A=null,j=null,M=e.getParameter(e.MAX_COMBINED_TEXTURE_IMAGE_UNITS),N=!1,P=0,F=e.getParameter(e.VERSION);F.indexOf(`WebGL`)===-1?F.indexOf(`OpenGL ES`)!==-1&&(P=parseFloat(/^OpenGL ES (\d)/.exec(F)[1]),N=P>=2):(P=parseFloat(/^WebGL (\d)/.exec(F)[1]),N=P>=1);let I=null,L={},ee=e.getParameter(e.SCISSOR_BOX),R=e.getParameter(e.VIEWPORT),te=new Hf().fromArray(ee),z=new Hf().fromArray(R);function ne(t,n,r,i){let a=new Uint8Array(4),o=e.createTexture();e.bindTexture(t,o),e.texParameteri(t,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(t,e.TEXTURE_MAG_FILTER,e.NEAREST);for(let o=0;o<r;o++)t===e.TEXTURE_3D||t===e.TEXTURE_2D_ARRAY?e.texImage3D(n,0,e.RGBA,1,1,i,0,e.RGBA,e.UNSIGNED_BYTE,a):e.texImage2D(n+o,0,e.RGBA,1,1,0,e.RGBA,e.UNSIGNED_BYTE,a);return o}let B={};B[e.TEXTURE_2D]=ne(e.TEXTURE_2D,e.TEXTURE_2D,1),B[e.TEXTURE_CUBE_MAP]=ne(e.TEXTURE_CUBE_MAP,e.TEXTURE_CUBE_MAP_POSITIVE_X,6),B[e.TEXTURE_2D_ARRAY]=ne(e.TEXTURE_2D_ARRAY,e.TEXTURE_2D_ARRAY,1,1),B[e.TEXTURE_3D]=ne(e.TEXTURE_3D,e.TEXTURE_3D,1,1),a.setClear(0,0,0,1),o.setClear(1),s.setClear(0),V(e.DEPTH_TEST),o.setFunc(3),le(!1),ue(1),V(e.CULL_FACE),ce(0);function V(t){u[t]!==!0&&(e.enable(t),u[t]=!0)}function re(t){u[t]!==!1&&(e.disable(t),u[t]=!1)}function ie(t,n){return f[t]!==n&&(e.bindFramebuffer(t,n),f[t]=n,t===e.DRAW_FRAMEBUFFER&&(f[e.FRAMEBUFFER]=n),t===e.FRAMEBUFFER&&(f[e.DRAW_FRAMEBUFFER]=n),!0)}function ae(t,n){let r=m,i=!1;if(t){r=p.get(n),r===void 0&&(r=[],p.set(n,r));let a=t.textures;if(r.length!==a.length||r[0]!==e.COLOR_ATTACHMENT0){for(let t=0,n=a.length;t<n;t++)r[t]=e.COLOR_ATTACHMENT0+t;r.length=a.length,i=!0}}else r[0]!==e.BACK&&(r[0]=e.BACK,i=!0);i&&e.drawBuffers(r)}function oe(t){return h!==t&&(e.useProgram(t),h=t,!0)}let H={100:e.FUNC_ADD,101:e.FUNC_SUBTRACT,102:e.FUNC_REVERSE_SUBTRACT};H[103]=e.MIN,H[104]=e.MAX;let se={200:e.ZERO,201:e.ONE,202:e.SRC_COLOR,204:e.SRC_ALPHA,210:e.SRC_ALPHA_SATURATE,208:e.DST_COLOR,206:e.DST_ALPHA,203:e.ONE_MINUS_SRC_COLOR,205:e.ONE_MINUS_SRC_ALPHA,209:e.ONE_MINUS_DST_COLOR,207:e.ONE_MINUS_DST_ALPHA,211:e.CONSTANT_COLOR,212:e.ONE_MINUS_CONSTANT_COLOR,213:e.CONSTANT_ALPHA,214:e.ONE_MINUS_CONSTANT_ALPHA};function ce(t,n,r,i,a,o,s,c,l,u){if(t===0){g===!0&&(re(e.BLEND),g=!1);return}if(g===!1&&(V(e.BLEND),g=!0),t!==5){if(t!==_||u!==E){if((v!==100||x!==100)&&(e.blendEquation(e.FUNC_ADD),v=100,x=100),u)switch(t){case 1:e.blendFuncSeparate(e.ONE,e.ONE_MINUS_SRC_ALPHA,e.ONE,e.ONE_MINUS_SRC_ALPHA);break;case 2:e.blendFunc(e.ONE,e.ONE);break;case 3:e.blendFuncSeparate(e.ZERO,e.ONE_MINUS_SRC_COLOR,e.ZERO,e.ONE);break;case 4:e.blendFuncSeparate(e.DST_COLOR,e.ONE_MINUS_SRC_ALPHA,e.ZERO,e.ONE);break;default:Wd(`WebGLState: Invalid blending: `,t)}else switch(t){case 1:e.blendFuncSeparate(e.SRC_ALPHA,e.ONE_MINUS_SRC_ALPHA,e.ONE,e.ONE_MINUS_SRC_ALPHA);break;case 2:e.blendFuncSeparate(e.SRC_ALPHA,e.ONE,e.ONE,e.ONE);break;case 3:Wd(`WebGLState: SubtractiveBlending requires material.premultipliedAlpha = true`);break;case 4:Wd(`WebGLState: MultiplyBlending requires material.premultipliedAlpha = true`);break;default:Wd(`WebGLState: Invalid blending: `,t)}y=null,b=null,S=null,C=null,w.set(0,0,0),T=0,_=t,E=u}return}a||=n,o||=r,s||=i,(n!==v||a!==x)&&(e.blendEquationSeparate(H[n],H[a]),v=n,x=a),(r!==y||i!==b||o!==S||s!==C)&&(e.blendFuncSeparate(se[r],se[i],se[o],se[s]),y=r,b=i,S=o,C=s),(c.equals(w)===!1||l!==T)&&(e.blendColor(c.r,c.g,c.b,l),w.copy(c),T=l),_=t,E=!1}function U(t,n){t.side===2?re(e.CULL_FACE):V(e.CULL_FACE);let r=t.side===1;n&&(r=!r),le(r),t.blending===1&&t.transparent===!1?ce(0):ce(t.blending,t.blendEquation,t.blendSrc,t.blendDst,t.blendEquationAlpha,t.blendSrcAlpha,t.blendDstAlpha,t.blendColor,t.blendAlpha,t.premultipliedAlpha),o.setFunc(t.depthFunc),o.setTest(t.depthTest),o.setMask(t.depthWrite),a.setMask(t.colorWrite);let i=t.stencilWrite;s.setTest(i),i&&(s.setMask(t.stencilWriteMask),s.setFunc(t.stencilFunc,t.stencilRef,t.stencilFuncMask),s.setOp(t.stencilFail,t.stencilZFail,t.stencilZPass)),de(t.polygonOffset,t.polygonOffsetFactor,t.polygonOffsetUnits),t.alphaToCoverage===!0?V(e.SAMPLE_ALPHA_TO_COVERAGE):re(e.SAMPLE_ALPHA_TO_COVERAGE)}function le(t){D!==t&&(t?e.frontFace(e.CW):e.frontFace(e.CCW),D=t)}function ue(t){t===0?re(e.CULL_FACE):(V(e.CULL_FACE),t!==O&&(t===1?e.cullFace(e.BACK):t===2?e.cullFace(e.FRONT):e.cullFace(e.FRONT_AND_BACK))),O=t}function W(t){t!==k&&(N&&e.lineWidth(t),k=t)}function de(t,n,r){t?(V(e.POLYGON_OFFSET_FILL),(A!==n||j!==r)&&(A=n,j=r,o.getReversed()&&(n=-n),e.polygonOffset(n,r))):re(e.POLYGON_OFFSET_FILL)}function G(t){t?V(e.SCISSOR_TEST):re(e.SCISSOR_TEST)}function K(t){t===void 0&&(t=e.TEXTURE0+M-1),I!==t&&(e.activeTexture(t),I=t)}function q(t,n,r){r===void 0&&(r=I===null?e.TEXTURE0+M-1:I);let i=L[r];i===void 0&&(i={type:void 0,texture:void 0},L[r]=i),(i.type!==t||i.texture!==n)&&(I!==r&&(e.activeTexture(r),I=r),e.bindTexture(t,n||B[t]),i.type=t,i.texture=n)}function fe(){let t=L[I];t!==void 0&&t.type!==void 0&&(e.bindTexture(t.type,null),t.type=void 0,t.texture=void 0)}function pe(){try{e.compressedTexImage2D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function J(){try{e.compressedTexImage3D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function me(){try{e.texSubImage2D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function he(){try{e.texSubImage3D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function ge(){try{e.compressedTexSubImage2D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function _e(){try{e.compressedTexSubImage3D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function ve(){try{e.texStorage2D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function ye(){try{e.texStorage3D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function be(){try{e.texImage2D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function xe(){try{e.texImage3D(...arguments)}catch(e){Wd(`WebGLState:`,e)}}function Se(t){return d[t]===void 0?e.getParameter(t):d[t]}function Ce(t,n){d[t]!==n&&(e.pixelStorei(t,n),d[t]=n)}function we(t){te.equals(t)===!1&&(e.scissor(t.x,t.y,t.z,t.w),te.copy(t))}function Te(t){z.equals(t)===!1&&(e.viewport(t.x,t.y,t.z,t.w),z.copy(t))}function Ee(t,n){let r=l.get(n);r===void 0&&(r=new WeakMap,l.set(n,r));let i=r.get(t);i===void 0&&(i=e.getUniformBlockIndex(n,t.name),r.set(t,i))}function De(t,n){let r=l.get(n).get(t);c.get(n)!==r&&(e.uniformBlockBinding(n,r,t.__bindingPointIndex),c.set(n,r))}function Oe(){e.disable(e.BLEND),e.disable(e.CULL_FACE),e.disable(e.DEPTH_TEST),e.disable(e.POLYGON_OFFSET_FILL),e.disable(e.SCISSOR_TEST),e.disable(e.STENCIL_TEST),e.disable(e.SAMPLE_ALPHA_TO_COVERAGE),e.blendEquation(e.FUNC_ADD),e.blendFunc(e.ONE,e.ZERO),e.blendFuncSeparate(e.ONE,e.ZERO,e.ONE,e.ZERO),e.blendColor(0,0,0,0),e.colorMask(!0,!0,!0,!0),e.clearColor(0,0,0,0),e.depthMask(!0),e.depthFunc(e.LESS),o.setReversed(!1),e.clearDepth(1),e.stencilMask(4294967295),e.stencilFunc(e.ALWAYS,0,4294967295),e.stencilOp(e.KEEP,e.KEEP,e.KEEP),e.clearStencil(0),e.cullFace(e.BACK),e.frontFace(e.CCW),e.polygonOffset(0,0),e.activeTexture(e.TEXTURE0),e.bindFramebuffer(e.FRAMEBUFFER,null),e.bindFramebuffer(e.DRAW_FRAMEBUFFER,null),e.bindFramebuffer(e.READ_FRAMEBUFFER,null),e.useProgram(null),e.lineWidth(1),e.scissor(0,0,e.canvas.width,e.canvas.height),e.viewport(0,0,e.canvas.width,e.canvas.height),e.pixelStorei(e.PACK_ALIGNMENT,4),e.pixelStorei(e.UNPACK_ALIGNMENT,4),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,!1),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1),e.pixelStorei(e.UNPACK_COLORSPACE_CONVERSION_WEBGL,e.BROWSER_DEFAULT_WEBGL),e.pixelStorei(e.PACK_ROW_LENGTH,0),e.pixelStorei(e.PACK_SKIP_PIXELS,0),e.pixelStorei(e.PACK_SKIP_ROWS,0),e.pixelStorei(e.UNPACK_ROW_LENGTH,0),e.pixelStorei(e.UNPACK_IMAGE_HEIGHT,0),e.pixelStorei(e.UNPACK_SKIP_PIXELS,0),e.pixelStorei(e.UNPACK_SKIP_ROWS,0),e.pixelStorei(e.UNPACK_SKIP_IMAGES,0),u={},d={},I=null,L={},f={},p=new WeakMap,m=[],h=null,g=!1,_=null,v=null,y=null,b=null,x=null,S=null,C=null,w=new Q(0,0,0),T=0,E=!1,D=null,O=null,k=null,A=null,j=null,te.set(0,0,e.canvas.width,e.canvas.height),z.set(0,0,e.canvas.width,e.canvas.height),a.reset(),o.reset(),s.reset()}return{buffers:{color:a,depth:o,stencil:s},enable:V,disable:re,bindFramebuffer:ie,drawBuffers:ae,useProgram:oe,setBlending:ce,setMaterial:U,setFlipSided:le,setCullFace:ue,setLineWidth:W,setPolygonOffset:de,setScissorTest:G,activeTexture:K,bindTexture:q,unbindTexture:fe,compressedTexImage2D:pe,compressedTexImage3D:J,texImage2D:be,texImage3D:xe,pixelStorei:Ce,getParameter:Se,updateUBOMapping:Ee,uniformBlockBinding:De,texStorage2D:ve,texStorage3D:ye,texSubImage2D:me,texSubImage3D:he,compressedTexSubImage2D:ge,compressedTexSubImage3D:_e,scissor:we,viewport:Te,reset:Oe}}function ux(e,t,n,r,i,a,o){let s=t.has(`WEBGL_multisampled_render_to_texture`)?t.get(`WEBGL_multisampled_render_to_texture`):null,c=typeof navigator>`u`?!1:/OculusBrowser/g.test(navigator.userAgent),l=new X,u=new WeakMap,d=new Set,f,p=new WeakMap,m=!1;try{m=typeof OffscreenCanvas<`u`&&new OffscreenCanvas(1,1).getContext(`2d`)!==null}catch{}function h(e,t){return m?new OffscreenCanvas(e,t):Rd(`canvas`)}function g(e,t,n){let r=1,i=pe(e);if((i.width>n||i.height>n)&&(r=n/Math.max(i.width,i.height)),r<1){if(typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement||typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||typeof ImageBitmap<`u`&&e instanceof ImageBitmap||typeof VideoFrame<`u`&&e instanceof VideoFrame){let n=Math.floor(r*i.width),a=Math.floor(r*i.height);f===void 0&&(f=h(n,a));let o=t?h(n,a):f;return o.width=n,o.height=a,o.getContext(`2d`).drawImage(e,0,0,n,a),Ud(`WebGLRenderer: Texture has been resized from (`+i.width+`x`+i.height+`) to (`+n+`x`+a+`).`),o}return`data`in e&&Ud(`WebGLRenderer: Image in DataTexture is too big (`+i.width+`x`+i.height+`).`),e}return e}function _(e){return e.generateMipmaps}function v(t){e.generateMipmap(t)}function y(t){return t.isWebGLCubeRenderTarget?e.TEXTURE_CUBE_MAP:t.isWebGL3DRenderTarget?e.TEXTURE_3D:t.isWebGLArrayRenderTarget||t.isCompressedArrayTexture?e.TEXTURE_2D_ARRAY:e.TEXTURE_2D}function b(n,r,i,a,o,s=!1){if(n!==null){if(e[n]!==void 0)return e[n];Ud(`WebGLRenderer: Attempt to use non-existing WebGL internal format '`+n+`'`)}let c;a&&(c=t.get(`EXT_texture_norm16`),c||Ud(`WebGLRenderer: Unable to use normalized textures without EXT_texture_norm16 extension`));let l=r;if(r===e.RED&&(i===e.FLOAT&&(l=e.R32F),i===e.HALF_FLOAT&&(l=e.R16F),i===e.UNSIGNED_BYTE&&(l=e.R8),i===e.UNSIGNED_SHORT&&c&&(l=c.R16_EXT),i===e.SHORT&&c&&(l=c.R16_SNORM_EXT)),r===e.RED_INTEGER&&(i===e.UNSIGNED_BYTE&&(l=e.R8UI),i===e.UNSIGNED_SHORT&&(l=e.R16UI),i===e.UNSIGNED_INT&&(l=e.R32UI),i===e.BYTE&&(l=e.R8I),i===e.SHORT&&(l=e.R16I),i===e.INT&&(l=e.R32I)),r===e.RG&&(i===e.FLOAT&&(l=e.RG32F),i===e.HALF_FLOAT&&(l=e.RG16F),i===e.UNSIGNED_BYTE&&(l=e.RG8),i===e.UNSIGNED_SHORT&&c&&(l=c.RG16_EXT),i===e.SHORT&&c&&(l=c.RG16_SNORM_EXT)),r===e.RG_INTEGER&&(i===e.UNSIGNED_BYTE&&(l=e.RG8UI),i===e.UNSIGNED_SHORT&&(l=e.RG16UI),i===e.UNSIGNED_INT&&(l=e.RG32UI),i===e.BYTE&&(l=e.RG8I),i===e.SHORT&&(l=e.RG16I),i===e.INT&&(l=e.RG32I)),r===e.RGB_INTEGER&&(i===e.UNSIGNED_BYTE&&(l=e.RGB8UI),i===e.UNSIGNED_SHORT&&(l=e.RGB16UI),i===e.UNSIGNED_INT&&(l=e.RGB32UI),i===e.BYTE&&(l=e.RGB8I),i===e.SHORT&&(l=e.RGB16I),i===e.INT&&(l=e.RGB32I)),r===e.RGBA_INTEGER&&(i===e.UNSIGNED_BYTE&&(l=e.RGBA8UI),i===e.UNSIGNED_SHORT&&(l=e.RGBA16UI),i===e.UNSIGNED_INT&&(l=e.RGBA32UI),i===e.BYTE&&(l=e.RGBA8I),i===e.SHORT&&(l=e.RGBA16I),i===e.INT&&(l=e.RGBA32I)),r===e.RGB&&(i===e.UNSIGNED_SHORT&&c&&(l=c.RGB16_EXT),i===e.SHORT&&c&&(l=c.RGB16_SNORM_EXT),i===e.UNSIGNED_INT_5_9_9_9_REV&&(l=e.RGB9_E5),i===e.UNSIGNED_INT_10F_11F_11F_REV&&(l=e.R11F_G11F_B10F)),r===e.RGBA){let t=s?jd:jf.getTransfer(o);i===e.FLOAT&&(l=e.RGBA32F),i===e.HALF_FLOAT&&(l=e.RGBA16F),i===e.UNSIGNED_BYTE&&(l=t===`srgb`?e.SRGB8_ALPHA8:e.RGBA8),i===e.UNSIGNED_SHORT&&c&&(l=c.RGBA16_EXT),i===e.SHORT&&c&&(l=c.RGBA16_SNORM_EXT),i===e.UNSIGNED_SHORT_4_4_4_4&&(l=e.RGBA4),i===e.UNSIGNED_SHORT_5_5_5_1&&(l=e.RGB5_A1)}return(l===e.R16F||l===e.R32F||l===e.RG16F||l===e.RG32F||l===e.RGBA16F||l===e.RGBA32F)&&t.get(`EXT_color_buffer_float`),l}function x(t,n){let r;return t?n===null||n===1014||n===1020?r=e.DEPTH24_STENCIL8:n===1015?r=e.DEPTH32F_STENCIL8:n===1012&&(r=e.DEPTH24_STENCIL8,Ud(`DepthTexture: 16 bit depth attachment is not supported with stencil. Using 24-bit attachment.`)):n===null||n===1014||n===1020?r=e.DEPTH_COMPONENT24:n===1015?r=e.DEPTH_COMPONENT32F:n===1012&&(r=e.DEPTH_COMPONENT16),r}function S(e,t){return _(e)===!0||e.isFramebufferTexture&&e.minFilter!==1003&&e.minFilter!==1006?Math.log2(Math.max(t.width,t.height))+1:e.mipmaps!==void 0&&e.mipmaps.length>0?e.mipmaps.length:e.isCompressedTexture&&Array.isArray(e.image)?t.mipmaps.length:1}function C(e){let t=e.target;t.removeEventListener(`dispose`,C),T(t),t.isVideoTexture&&u.delete(t),t.isHTMLTexture&&d.delete(t)}function w(e){let t=e.target;t.removeEventListener(`dispose`,w),D(t)}function T(e){let t=r.get(e);if(t.__webglInit===void 0)return;let n=e.source,i=p.get(n);if(i){let r=i[t.__cacheKey];r.usedTimes--,r.usedTimes===0&&E(e),Object.keys(i).length===0&&p.delete(n)}r.remove(e)}function E(t){let n=r.get(t);e.deleteTexture(n.__webglTexture);let i=t.source,a=p.get(i);delete a[n.__cacheKey],o.memory.textures--}function D(t){let n=r.get(t);if(t.depthTexture&&(t.depthTexture.dispose(),r.remove(t.depthTexture)),t.isWebGLCubeRenderTarget)for(let t=0;t<6;t++){if(Array.isArray(n.__webglFramebuffer[t]))for(let r=0;r<n.__webglFramebuffer[t].length;r++)e.deleteFramebuffer(n.__webglFramebuffer[t][r]);else e.deleteFramebuffer(n.__webglFramebuffer[t]);n.__webglDepthbuffer&&e.deleteRenderbuffer(n.__webglDepthbuffer[t])}else{if(Array.isArray(n.__webglFramebuffer))for(let t=0;t<n.__webglFramebuffer.length;t++)e.deleteFramebuffer(n.__webglFramebuffer[t]);else e.deleteFramebuffer(n.__webglFramebuffer);if(n.__webglDepthbuffer&&e.deleteRenderbuffer(n.__webglDepthbuffer),n.__webglMultisampledFramebuffer&&e.deleteFramebuffer(n.__webglMultisampledFramebuffer),n.__webglColorRenderbuffer)for(let t=0;t<n.__webglColorRenderbuffer.length;t++)n.__webglColorRenderbuffer[t]&&e.deleteRenderbuffer(n.__webglColorRenderbuffer[t]);n.__webglDepthRenderbuffer&&e.deleteRenderbuffer(n.__webglDepthRenderbuffer)}let i=t.textures;for(let t=0,n=i.length;t<n;t++){let n=r.get(i[t]);n.__webglTexture&&(e.deleteTexture(n.__webglTexture),o.memory.textures--),r.remove(i[t])}r.remove(t)}let O=0;function k(){O=0}function A(){return O}function j(e){O=e}function M(){let e=O;return e>=i.maxTextures&&Ud(`WebGLTextures: Trying to use `+(e+1)+` texture units while this GPU supports only `+i.maxTextures),O+=1,e}function N(e){let t=[];return t.push(e.wrapS),t.push(e.wrapT),t.push(e.wrapR||0),t.push(e.magFilter),t.push(e.minFilter),t.push(e.anisotropy),t.push(e.internalFormat),t.push(e.format),t.push(e.type),t.push(e.generateMipmaps),t.push(e.premultiplyAlpha),t.push(e.flipY),t.push(e.unpackAlignment),t.push(e.colorSpace),t.join()}function P(t,i){let a=r.get(t);if(t.isVideoTexture&&q(t),t.isRenderTargetTexture===!1&&t.isExternalTexture!==!0&&t.version>0&&a.__version!==t.version){let e=t.image;if(e===null)Ud(`WebGLRenderer: Texture marked for update but no image data found.`);else if(e.complete===!1)Ud(`WebGLRenderer: Texture marked for update but image is incomplete`);else{re(a,t,i);return}}else t.isExternalTexture&&(a.__webglTexture=t.sourceTexture?t.sourceTexture:null);n.bindTexture(e.TEXTURE_2D,a.__webglTexture,e.TEXTURE0+i)}function F(t,i){let a=r.get(t);if(t.isRenderTargetTexture===!1&&t.version>0&&a.__version!==t.version){re(a,t,i);return}t.isExternalTexture&&(a.__webglTexture=t.sourceTexture?t.sourceTexture:null),n.bindTexture(e.TEXTURE_2D_ARRAY,a.__webglTexture,e.TEXTURE0+i)}function I(t,i){let a=r.get(t);if(t.isRenderTargetTexture===!1&&t.version>0&&a.__version!==t.version){re(a,t,i);return}n.bindTexture(e.TEXTURE_3D,a.__webglTexture,e.TEXTURE0+i)}function L(t,i){let a=r.get(t);if(t.isCubeDepthTexture!==!0&&t.version>0&&a.__version!==t.version){ie(a,t,i);return}n.bindTexture(e.TEXTURE_CUBE_MAP,a.__webglTexture,e.TEXTURE0+i)}let ee={[su]:e.REPEAT,[cu]:e.CLAMP_TO_EDGE,[lu]:e.MIRRORED_REPEAT},R={[uu]:e.NEAREST,[du]:e.NEAREST_MIPMAP_NEAREST,[fu]:e.NEAREST_MIPMAP_LINEAR,[pu]:e.LINEAR,[mu]:e.LINEAR_MIPMAP_NEAREST,[hu]:e.LINEAR_MIPMAP_LINEAR},te={512:e.NEVER,519:e.ALWAYS,513:e.LESS,515:e.LEQUAL,514:e.EQUAL,518:e.GEQUAL,516:e.GREATER,517:e.NOTEQUAL};function z(n,a){if(a.type===1015&&t.has(`OES_texture_float_linear`)===!1&&(a.magFilter===1006||a.magFilter===1007||a.magFilter===1005||a.magFilter===1008||a.minFilter===1006||a.minFilter===1007||a.minFilter===1005||a.minFilter===1008)&&Ud(`WebGLRenderer: Unable to use linear filtering with floating point textures. OES_texture_float_linear not supported on this device.`),e.texParameteri(n,e.TEXTURE_WRAP_S,ee[a.wrapS]),e.texParameteri(n,e.TEXTURE_WRAP_T,ee[a.wrapT]),(n===e.TEXTURE_3D||n===e.TEXTURE_2D_ARRAY)&&e.texParameteri(n,e.TEXTURE_WRAP_R,ee[a.wrapR]),e.texParameteri(n,e.TEXTURE_MAG_FILTER,R[a.magFilter]),e.texParameteri(n,e.TEXTURE_MIN_FILTER,R[a.minFilter]),a.compareFunction&&(e.texParameteri(n,e.TEXTURE_COMPARE_MODE,e.COMPARE_REF_TO_TEXTURE),e.texParameteri(n,e.TEXTURE_COMPARE_FUNC,te[a.compareFunction])),t.has(`EXT_texture_filter_anisotropic`)===!0){if(a.magFilter===1003||a.minFilter!==1005&&a.minFilter!==1008||a.type===1015&&t.has(`OES_texture_float_linear`)===!1)return;if(a.anisotropy>1||r.get(a).__currentAnisotropy){let o=t.get(`EXT_texture_filter_anisotropic`);e.texParameterf(n,o.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(a.anisotropy,i.getMaxAnisotropy())),r.get(a).__currentAnisotropy=a.anisotropy}}}function ne(t,n){let r=!1;t.__webglInit===void 0&&(t.__webglInit=!0,n.addEventListener(`dispose`,C));let i=n.source,a=p.get(i);a===void 0&&(a={},p.set(i,a));let s=N(n);if(s!==t.__cacheKey){a[s]===void 0&&(a[s]={texture:e.createTexture(),usedTimes:0},o.memory.textures++,r=!0),a[s].usedTimes++;let i=a[t.__cacheKey];i!==void 0&&(a[t.__cacheKey].usedTimes--,i.usedTimes===0&&E(n)),t.__cacheKey=s,t.__webglTexture=a[s].texture}return r}function B(e,t,n){return Math.floor(Math.floor(e/n)/t)}function V(t,r,i,a){let o=t.updateRanges;if(o.length===0)n.texSubImage2D(e.TEXTURE_2D,0,0,0,r.width,r.height,i,a,r.data);else{o.sort((e,t)=>e.start-t.start);let s=0;for(let e=1;e<o.length;e++){let t=o[s],n=o[e],i=t.start+t.count,a=B(n.start,r.width,4),c=B(t.start,r.width,4);n.start<=i+1&&a===c&&B(n.start+n.count-1,r.width,4)===a?t.count=Math.max(t.count,n.start+n.count-t.start):(++s,o[s]=n)}o.length=s+1;let c=n.getParameter(e.UNPACK_ROW_LENGTH),l=n.getParameter(e.UNPACK_SKIP_PIXELS),u=n.getParameter(e.UNPACK_SKIP_ROWS);n.pixelStorei(e.UNPACK_ROW_LENGTH,r.width);for(let t=0,s=o.length;t<s;t++){let s=o[t],c=Math.floor(s.start/4),l=Math.ceil(s.count/4),u=c%r.width,d=Math.floor(c/r.width),f=l;n.pixelStorei(e.UNPACK_SKIP_PIXELS,u),n.pixelStorei(e.UNPACK_SKIP_ROWS,d),n.texSubImage2D(e.TEXTURE_2D,0,u,d,f,1,i,a,r.data)}t.clearUpdateRanges(),n.pixelStorei(e.UNPACK_ROW_LENGTH,c),n.pixelStorei(e.UNPACK_SKIP_PIXELS,l),n.pixelStorei(e.UNPACK_SKIP_ROWS,u)}}function re(t,o,s){let c=e.TEXTURE_2D;(o.isDataArrayTexture||o.isCompressedArrayTexture)&&(c=e.TEXTURE_2D_ARRAY),o.isData3DTexture&&(c=e.TEXTURE_3D);let l=ne(t,o),u=o.source;n.bindTexture(c,t.__webglTexture,e.TEXTURE0+s);let f=r.get(u);if(u.version!==f.__version||l===!0){if(n.activeTexture(e.TEXTURE0+s),!(typeof ImageBitmap<`u`&&o.image instanceof ImageBitmap)){let t=jf.getPrimaries(jf.workingColorSpace),r=o.colorSpace===``?null:jf.getPrimaries(o.colorSpace),i=o.colorSpace===``||t===r?e.NONE:e.BROWSER_DEFAULT_WEBGL;n.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,o.flipY),n.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,o.premultiplyAlpha),n.pixelStorei(e.UNPACK_COLORSPACE_CONVERSION_WEBGL,i)}n.pixelStorei(e.UNPACK_ALIGNMENT,o.unpackAlignment);let t=g(o.image,!1,i.maxTextureSize);t=fe(o,t);let r=a.convert(o.format,o.colorSpace),p=a.convert(o.type),m=b(o.internalFormat,r,p,o.normalized,o.colorSpace,o.isVideoTexture);z(c,o);let h,y=o.mipmaps,C=o.isVideoTexture!==!0,w=f.__version===void 0||l===!0,T=u.dataReady,E=S(o,t);if(o.isDepthTexture)m=x(o.format===Nu,o.type),w&&(C?n.texStorage2D(e.TEXTURE_2D,1,m,t.width,t.height):n.texImage2D(e.TEXTURE_2D,0,m,t.width,t.height,0,r,p,null));else if(o.isDataTexture){if(y.length>0){C&&w&&n.texStorage2D(e.TEXTURE_2D,E,m,y[0].width,y[0].height);for(let t=0,i=y.length;t<i;t++)h=y[t],C?T&&n.texSubImage2D(e.TEXTURE_2D,t,0,0,h.width,h.height,r,p,h.data):n.texImage2D(e.TEXTURE_2D,t,m,h.width,h.height,0,r,p,h.data);o.generateMipmaps=!1}else C?(w&&n.texStorage2D(e.TEXTURE_2D,E,m,t.width,t.height),T&&V(o,t,r,p)):n.texImage2D(e.TEXTURE_2D,0,m,t.width,t.height,0,r,p,t.data)}else if(o.isCompressedTexture){if(o.isCompressedArrayTexture){C&&w&&n.texStorage3D(e.TEXTURE_2D_ARRAY,E,m,y[0].width,y[0].height,t.depth);for(let i=0,a=y.length;i<a;i++)if(h=y[i],o.format!==1023){if(r!==null){if(C){if(T){if(o.layerUpdates.size>0){let t=iv(h.width,h.height,o.format,o.type);for(let a of o.layerUpdates){let o=h.data.subarray(a*t/h.data.BYTES_PER_ELEMENT,(a+1)*t/h.data.BYTES_PER_ELEMENT);n.compressedTexSubImage3D(e.TEXTURE_2D_ARRAY,i,0,0,a,h.width,h.height,1,r,o)}}else n.compressedTexSubImage3D(e.TEXTURE_2D_ARRAY,i,0,0,0,h.width,h.height,t.depth,r,h.data)}}else n.compressedTexImage3D(e.TEXTURE_2D_ARRAY,i,m,h.width,h.height,t.depth,0,h.data,0,0)}else Ud(`WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()`)}else C?T&&n.texSubImage3D(e.TEXTURE_2D_ARRAY,i,0,0,0,h.width,h.height,t.depth,r,p,h.data):n.texImage3D(e.TEXTURE_2D_ARRAY,i,m,h.width,h.height,t.depth,0,r,p,h.data);o.layerUpdates.size>0&&o.clearLayerUpdates()}else{C&&w&&n.texStorage2D(e.TEXTURE_2D,E,m,y[0].width,y[0].height);for(let t=0,i=y.length;t<i;t++)h=y[t],o.format===1023?C?T&&n.texSubImage2D(e.TEXTURE_2D,t,0,0,h.width,h.height,r,p,h.data):n.texImage2D(e.TEXTURE_2D,t,m,h.width,h.height,0,r,p,h.data):r===null?Ud(`WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()`):C?T&&n.compressedTexSubImage2D(e.TEXTURE_2D,t,0,0,h.width,h.height,r,h.data):n.compressedTexImage2D(e.TEXTURE_2D,t,m,h.width,h.height,0,h.data)}}else if(o.isDataArrayTexture){if(C){if(w&&n.texStorage3D(e.TEXTURE_2D_ARRAY,E,m,t.width,t.height,t.depth),T){if(o.layerUpdates.size>0){let i=iv(t.width,t.height,o.format,o.type);for(let a of o.layerUpdates){let o=t.data.subarray(a*i/t.data.BYTES_PER_ELEMENT,(a+1)*i/t.data.BYTES_PER_ELEMENT);n.texSubImage3D(e.TEXTURE_2D_ARRAY,0,0,0,a,t.width,t.height,1,r,p,o)}o.clearLayerUpdates()}else n.texSubImage3D(e.TEXTURE_2D_ARRAY,0,0,0,0,t.width,t.height,t.depth,r,p,t.data)}}else n.texImage3D(e.TEXTURE_2D_ARRAY,0,m,t.width,t.height,t.depth,0,r,p,t.data)}else if(o.isData3DTexture)C?(w&&n.texStorage3D(e.TEXTURE_3D,E,m,t.width,t.height,t.depth),T&&n.texSubImage3D(e.TEXTURE_3D,0,0,0,0,t.width,t.height,t.depth,r,p,t.data)):n.texImage3D(e.TEXTURE_3D,0,m,t.width,t.height,t.depth,0,r,p,t.data);else if(o.isFramebufferTexture){if(w){if(C)n.texStorage2D(e.TEXTURE_2D,E,m,t.width,t.height);else{let i=t.width,a=t.height;for(let t=0;t<E;t++)n.texImage2D(e.TEXTURE_2D,t,m,i,a,0,r,p,null),i>>=1,a>>=1}}}else if(o.isHTMLTexture){if(`texElementImage2D`in e){let n=e.canvas;if(n.hasAttribute(`layoutsubtree`)||n.setAttribute(`layoutsubtree`,`true`),t.parentNode!==n){n.appendChild(t),d.add(o),n.onpaint=e=>{let t=e.changedElements;for(let e of d)t.includes(e.image)&&(e.needsUpdate=!0)},n.requestPaint();return}if(e.texElementImage2D.length===3)e.texElementImage2D(e.TEXTURE_2D,e.RGBA8,t);else{let n=e.RGBA,r=e.RGBA,i=e.UNSIGNED_BYTE;e.texElementImage2D(e.TEXTURE_2D,0,n,r,i,t)}e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)}}else if(y.length>0){if(C&&w){let t=pe(y[0]);n.texStorage2D(e.TEXTURE_2D,E,m,t.width,t.height)}for(let t=0,i=y.length;t<i;t++)h=y[t],C?T&&n.texSubImage2D(e.TEXTURE_2D,t,0,0,r,p,h):n.texImage2D(e.TEXTURE_2D,t,m,r,p,h);o.generateMipmaps=!1}else if(C){if(w){let r=pe(t);n.texStorage2D(e.TEXTURE_2D,E,m,r.width,r.height)}T&&n.texSubImage2D(e.TEXTURE_2D,0,0,0,r,p,t)}else n.texImage2D(e.TEXTURE_2D,0,m,r,p,t);_(o)&&v(c),f.__version=u.version,o.onUpdate&&o.onUpdate(o)}t.__version=o.version}function ie(t,o,s){if(o.image.length!==6)return;let c=ne(t,o),l=o.source;n.bindTexture(e.TEXTURE_CUBE_MAP,t.__webglTexture,e.TEXTURE0+s);let u=r.get(l);if(l.version!==u.__version||c===!0){n.activeTexture(e.TEXTURE0+s);let t=jf.getPrimaries(jf.workingColorSpace),r=o.colorSpace===``?null:jf.getPrimaries(o.colorSpace),d=o.colorSpace===``||t===r?e.NONE:e.BROWSER_DEFAULT_WEBGL;n.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,o.flipY),n.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,o.premultiplyAlpha),n.pixelStorei(e.UNPACK_ALIGNMENT,o.unpackAlignment),n.pixelStorei(e.UNPACK_COLORSPACE_CONVERSION_WEBGL,d);let f=o.isCompressedTexture||o.image[0].isCompressedTexture,p=o.image[0]&&o.image[0].isDataTexture,m=[];for(let e=0;e<6;e++)!f&&!p?m[e]=g(o.image[e],!0,i.maxCubemapSize):m[e]=p?o.image[e].image:o.image[e],m[e]=fe(o,m[e]);let h=m[0],y=a.convert(o.format,o.colorSpace),x=a.convert(o.type),C=b(o.internalFormat,y,x,o.normalized,o.colorSpace),w=o.isVideoTexture!==!0,T=u.__version===void 0||c===!0,E=l.dataReady,D=S(o,h);z(e.TEXTURE_CUBE_MAP,o);let O;if(f){w&&T&&n.texStorage2D(e.TEXTURE_CUBE_MAP,D,C,h.width,h.height);for(let t=0;t<6;t++){O=m[t].mipmaps;for(let r=0;r<O.length;r++){let i=O[r];o.format===1023?w?E&&n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,r,0,0,i.width,i.height,y,x,i.data):n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,r,C,i.width,i.height,0,y,x,i.data):y===null?Ud(`WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()`):w?E&&n.compressedTexSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,r,0,0,i.width,i.height,y,i.data):n.compressedTexImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,r,C,i.width,i.height,0,i.data)}}}else{if(O=o.mipmaps,w&&T){O.length>0&&D++;let t=pe(m[0]);n.texStorage2D(e.TEXTURE_CUBE_MAP,D,C,t.width,t.height)}for(let t=0;t<6;t++)if(p){w?E&&n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,0,0,m[t].width,m[t].height,y,x,m[t].data):n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,C,m[t].width,m[t].height,0,y,x,m[t].data);for(let r=0;r<O.length;r++){let i=O[r].image[t].image;w?E&&n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,r+1,0,0,i.width,i.height,y,x,i.data):n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,r+1,C,i.width,i.height,0,y,x,i.data)}}else{w?E&&n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,0,0,y,x,m[t]):n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,C,y,x,m[t]);for(let r=0;r<O.length;r++){let i=O[r];w?E&&n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,r+1,0,0,y,x,i.image[t]):n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,r+1,C,y,x,i.image[t])}}}_(o)&&v(e.TEXTURE_CUBE_MAP),u.__version=l.version,o.onUpdate&&o.onUpdate(o)}t.__version=o.version}function ae(t,i,o,c,l,u){let d=a.convert(o.format,o.colorSpace),f=a.convert(o.type),p=b(o.internalFormat,d,f,o.normalized,o.colorSpace),m=r.get(i),h=r.get(o);if(h.__renderTarget=i,!m.__hasExternalTextures){let t=Math.max(1,i.width>>u),r=Math.max(1,i.height>>u);l===e.TEXTURE_3D||l===e.TEXTURE_2D_ARRAY?n.texImage3D(l,u,p,t,r,i.depth,0,d,f,null):n.texImage2D(l,u,p,t,r,0,d,f,null)}n.bindFramebuffer(e.FRAMEBUFFER,t),K(i)?s.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,c,l,h.__webglTexture,0,G(i)):(l===e.TEXTURE_2D||l>=e.TEXTURE_CUBE_MAP_POSITIVE_X&&l<=e.TEXTURE_CUBE_MAP_NEGATIVE_Z)&&e.framebufferTexture2D(e.FRAMEBUFFER,c,l,h.__webglTexture,u),n.bindFramebuffer(e.FRAMEBUFFER,null)}function oe(t,n,r){if(e.bindRenderbuffer(e.RENDERBUFFER,t),n.depthBuffer){let i=n.depthTexture,a=i&&i.isDepthTexture?i.type:null,o=x(n.stencilBuffer,a),c=n.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT;K(n)?s.renderbufferStorageMultisampleEXT(e.RENDERBUFFER,G(n),o,n.width,n.height):r?e.renderbufferStorageMultisample(e.RENDERBUFFER,G(n),o,n.width,n.height):e.renderbufferStorage(e.RENDERBUFFER,o,n.width,n.height),e.framebufferRenderbuffer(e.FRAMEBUFFER,c,e.RENDERBUFFER,t)}else{let t=n.textures;for(let i=0;i<t.length;i++){let o=t[i],c=a.convert(o.format,o.colorSpace),l=a.convert(o.type),u=b(o.internalFormat,c,l,o.normalized,o.colorSpace);K(n)?s.renderbufferStorageMultisampleEXT(e.RENDERBUFFER,G(n),u,n.width,n.height):r?e.renderbufferStorageMultisample(e.RENDERBUFFER,G(n),u,n.width,n.height):e.renderbufferStorage(e.RENDERBUFFER,u,n.width,n.height)}}e.bindRenderbuffer(e.RENDERBUFFER,null)}function H(t,i,o){let c=i.isWebGLCubeRenderTarget===!0;if(n.bindFramebuffer(e.FRAMEBUFFER,t),!(i.depthTexture&&i.depthTexture.isDepthTexture))throw Error(`THREE.WebGLTextures: renderTarget.depthTexture must be an instance of THREE.DepthTexture.`);let l=r.get(i.depthTexture);if(l.__renderTarget=i,(!l.__webglTexture||i.depthTexture.image.width!==i.width||i.depthTexture.image.height!==i.height)&&(i.depthTexture.image.width=i.width,i.depthTexture.image.height=i.height,i.depthTexture.needsUpdate=!0),c){if(l.__webglInit===void 0&&(l.__webglInit=!0,i.depthTexture.addEventListener(`dispose`,C)),l.__webglTexture===void 0){l.__webglTexture=e.createTexture(),n.bindTexture(e.TEXTURE_CUBE_MAP,l.__webglTexture),z(e.TEXTURE_CUBE_MAP,i.depthTexture);let t=a.convert(i.depthTexture.format),r=a.convert(i.depthTexture.type),o;i.depthTexture.format===1026?o=e.DEPTH_COMPONENT24:i.depthTexture.format===1027&&(o=e.DEPTH24_STENCIL8);for(let n=0;n<6;n++)e.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+n,0,o,i.width,i.height,0,t,r,null)}}else P(i.depthTexture,0);let u=l.__webglTexture,d=G(i),f=c?e.TEXTURE_CUBE_MAP_POSITIVE_X+o:e.TEXTURE_2D,p=i.depthTexture.format===1027?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT;if(i.depthTexture.format===1026)K(i)?s.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,p,f,u,0,d):e.framebufferTexture2D(e.FRAMEBUFFER,p,f,u,0);else if(i.depthTexture.format===1027)K(i)?s.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,p,f,u,0,d):e.framebufferTexture2D(e.FRAMEBUFFER,p,f,u,0);else throw Error(`THREE.WebGLTextures: Unknown depthTexture format.`)}function se(t){let i=r.get(t),a=t.isWebGLCubeRenderTarget===!0;if(i.__boundDepthTexture!==t.depthTexture){let e=t.depthTexture;if(i.__depthDisposeCallback&&i.__depthDisposeCallback(),e){let t=()=>{delete i.__boundDepthTexture,delete i.__depthDisposeCallback,e.removeEventListener(`dispose`,t)};e.addEventListener(`dispose`,t),i.__depthDisposeCallback=t}i.__boundDepthTexture=e}if(t.depthTexture&&!i.__autoAllocateDepthBuffer){if(a)for(let e=0;e<6;e++)H(i.__webglFramebuffer[e],t,e);else{let e=t.texture.mipmaps;e&&e.length>0?H(i.__webglFramebuffer[0],t,0):H(i.__webglFramebuffer,t,0)}}else if(a){i.__webglDepthbuffer=[];for(let r=0;r<6;r++)if(n.bindFramebuffer(e.FRAMEBUFFER,i.__webglFramebuffer[r]),i.__webglDepthbuffer[r]===void 0)i.__webglDepthbuffer[r]=e.createRenderbuffer(),oe(i.__webglDepthbuffer[r],t,!1);else{let n=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,a=i.__webglDepthbuffer[r];e.bindRenderbuffer(e.RENDERBUFFER,a),e.framebufferRenderbuffer(e.FRAMEBUFFER,n,e.RENDERBUFFER,a)}}else{let r=t.texture.mipmaps;if(r&&r.length>0?n.bindFramebuffer(e.FRAMEBUFFER,i.__webglFramebuffer[0]):n.bindFramebuffer(e.FRAMEBUFFER,i.__webglFramebuffer),i.__webglDepthbuffer===void 0)i.__webglDepthbuffer=e.createRenderbuffer(),oe(i.__webglDepthbuffer,t,!1);else{let n=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,r=i.__webglDepthbuffer;e.bindRenderbuffer(e.RENDERBUFFER,r),e.framebufferRenderbuffer(e.FRAMEBUFFER,n,e.RENDERBUFFER,r)}}n.bindFramebuffer(e.FRAMEBUFFER,null)}function ce(t,n,i){let a=r.get(t);n!==void 0&&ae(a.__webglFramebuffer,t,t.texture,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,0),i!==void 0&&se(t)}function U(t){let i=t.texture,s=r.get(t),c=r.get(i);t.addEventListener(`dispose`,w);let l=t.textures,u=t.isWebGLCubeRenderTarget===!0,d=l.length>1;if(d||(c.__webglTexture===void 0&&(c.__webglTexture=e.createTexture()),c.__version=i.version,o.memory.textures++),u){s.__webglFramebuffer=[];for(let t=0;t<6;t++)if(i.mipmaps&&i.mipmaps.length>0){s.__webglFramebuffer[t]=[];for(let n=0;n<i.mipmaps.length;n++)s.__webglFramebuffer[t][n]=e.createFramebuffer()}else s.__webglFramebuffer[t]=e.createFramebuffer()}else{if(i.mipmaps&&i.mipmaps.length>0){s.__webglFramebuffer=[];for(let t=0;t<i.mipmaps.length;t++)s.__webglFramebuffer[t]=e.createFramebuffer()}else s.__webglFramebuffer=e.createFramebuffer();if(d)for(let t=0,n=l.length;t<n;t++){let n=r.get(l[t]);n.__webglTexture===void 0&&(n.__webglTexture=e.createTexture(),o.memory.textures++)}if(t.samples>0&&K(t)===!1){s.__webglMultisampledFramebuffer=e.createFramebuffer(),s.__webglColorRenderbuffer=[],n.bindFramebuffer(e.FRAMEBUFFER,s.__webglMultisampledFramebuffer);for(let n=0;n<l.length;n++){let r=l[n];s.__webglColorRenderbuffer[n]=e.createRenderbuffer(),e.bindRenderbuffer(e.RENDERBUFFER,s.__webglColorRenderbuffer[n]);let i=a.convert(r.format,r.colorSpace),o=a.convert(r.type),c=b(r.internalFormat,i,o,r.normalized,r.colorSpace,t.isXRRenderTarget===!0),u=G(t);e.renderbufferStorageMultisample(e.RENDERBUFFER,u,c,t.width,t.height),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0+n,e.RENDERBUFFER,s.__webglColorRenderbuffer[n])}e.bindRenderbuffer(e.RENDERBUFFER,null),t.depthBuffer&&(s.__webglDepthRenderbuffer=e.createRenderbuffer(),oe(s.__webglDepthRenderbuffer,t,!0)),n.bindFramebuffer(e.FRAMEBUFFER,null)}}if(u){n.bindTexture(e.TEXTURE_CUBE_MAP,c.__webglTexture),z(e.TEXTURE_CUBE_MAP,i);for(let n=0;n<6;n++)if(i.mipmaps&&i.mipmaps.length>0)for(let r=0;r<i.mipmaps.length;r++)ae(s.__webglFramebuffer[n][r],t,i,e.COLOR_ATTACHMENT0,e.TEXTURE_CUBE_MAP_POSITIVE_X+n,r);else ae(s.__webglFramebuffer[n],t,i,e.COLOR_ATTACHMENT0,e.TEXTURE_CUBE_MAP_POSITIVE_X+n,0);_(i)&&v(e.TEXTURE_CUBE_MAP),n.unbindTexture()}else if(d){for(let i=0,a=l.length;i<a;i++){let a=l[i],o=r.get(a),c=e.TEXTURE_2D;(t.isWebGL3DRenderTarget||t.isWebGLArrayRenderTarget)&&(c=t.isWebGL3DRenderTarget?e.TEXTURE_3D:e.TEXTURE_2D_ARRAY),n.bindTexture(c,o.__webglTexture),z(c,a),ae(s.__webglFramebuffer,t,a,e.COLOR_ATTACHMENT0+i,c,0),_(a)&&v(c)}n.unbindTexture()}else{let r=e.TEXTURE_2D;if((t.isWebGL3DRenderTarget||t.isWebGLArrayRenderTarget)&&(r=t.isWebGL3DRenderTarget?e.TEXTURE_3D:e.TEXTURE_2D_ARRAY),n.bindTexture(r,c.__webglTexture),z(r,i),i.mipmaps&&i.mipmaps.length>0)for(let n=0;n<i.mipmaps.length;n++)ae(s.__webglFramebuffer[n],t,i,e.COLOR_ATTACHMENT0,r,n);else ae(s.__webglFramebuffer,t,i,e.COLOR_ATTACHMENT0,r,0);_(i)&&v(r),n.unbindTexture()}t.depthBuffer&&se(t)}function le(e){let t=e.textures;for(let i=0,a=t.length;i<a;i++){let a=t[i];if(_(a)){let t=y(e),i=r.get(a).__webglTexture;n.bindTexture(t,i),v(t),n.unbindTexture()}}}let ue=[],W=[];function de(t){if(t.samples>0){if(K(t)===!1){let i=t.textures,a=t.width,o=t.height,s=e.COLOR_BUFFER_BIT,l=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,u=r.get(t),d=i.length>1;if(d)for(let t=0;t<i.length;t++)n.bindFramebuffer(e.FRAMEBUFFER,u.__webglMultisampledFramebuffer),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0+t,e.RENDERBUFFER,null),n.bindFramebuffer(e.FRAMEBUFFER,u.__webglFramebuffer),e.framebufferTexture2D(e.DRAW_FRAMEBUFFER,e.COLOR_ATTACHMENT0+t,e.TEXTURE_2D,null,0);n.bindFramebuffer(e.READ_FRAMEBUFFER,u.__webglMultisampledFramebuffer);let f=t.texture.mipmaps;f&&f.length>0?n.bindFramebuffer(e.DRAW_FRAMEBUFFER,u.__webglFramebuffer[0]):n.bindFramebuffer(e.DRAW_FRAMEBUFFER,u.__webglFramebuffer);for(let n=0;n<i.length;n++){if(t.resolveDepthBuffer&&(t.depthBuffer&&(s|=e.DEPTH_BUFFER_BIT),t.stencilBuffer&&t.resolveStencilBuffer&&(s|=e.STENCIL_BUFFER_BIT)),d){e.framebufferRenderbuffer(e.READ_FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.RENDERBUFFER,u.__webglColorRenderbuffer[n]);let t=r.get(i[n]).__webglTexture;e.framebufferTexture2D(e.DRAW_FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,t,0)}e.blitFramebuffer(0,0,a,o,0,0,a,o,s,e.NEAREST),c===!0&&(ue.length=0,W.length=0,ue.push(e.COLOR_ATTACHMENT0+n),t.depthBuffer&&t.storeMultisampledDepthBuffer===!1&&(ue.push(l),W.push(l),e.invalidateFramebuffer(e.DRAW_FRAMEBUFFER,W)),e.invalidateFramebuffer(e.READ_FRAMEBUFFER,ue))}if(n.bindFramebuffer(e.READ_FRAMEBUFFER,null),n.bindFramebuffer(e.DRAW_FRAMEBUFFER,null),d)for(let t=0;t<i.length;t++){n.bindFramebuffer(e.FRAMEBUFFER,u.__webglMultisampledFramebuffer),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0+t,e.RENDERBUFFER,u.__webglColorRenderbuffer[t]);let a=r.get(i[t]).__webglTexture;n.bindFramebuffer(e.FRAMEBUFFER,u.__webglFramebuffer),e.framebufferTexture2D(e.DRAW_FRAMEBUFFER,e.COLOR_ATTACHMENT0+t,e.TEXTURE_2D,a,0)}n.bindFramebuffer(e.DRAW_FRAMEBUFFER,u.__webglMultisampledFramebuffer)}else if(t.depthBuffer&&t.storeMultisampledDepthBuffer===!1&&c){let n=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT;e.invalidateFramebuffer(e.DRAW_FRAMEBUFFER,[n])}}}function G(e){return Math.min(i.maxSamples,e.samples)}function K(e){let n=r.get(e);return e.samples>0&&t.has(`WEBGL_multisampled_render_to_texture`)===!0&&n.__useRenderToTexture!==!1}function q(e){let t=o.render.frame;u.get(e)!==t&&(u.set(e,t),e.update())}function fe(e,t){let n=e.colorSpace,r=e.format,i=e.type;return e.isCompressedTexture===!0||e.isVideoTexture===!0||n!==`srgb-linear`&&n!==``&&(jf.getTransfer(n)===`srgb`?(r!==1023||i!==1009)&&Ud(`WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType.`):Wd(`WebGLTextures: Unsupported texture color space:`,n)),t}function pe(e){return typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement?(l.width=e.naturalWidth||e.width,l.height=e.naturalHeight||e.height):typeof VideoFrame<`u`&&e instanceof VideoFrame?(l.width=e.displayWidth,l.height=e.displayHeight):(l.width=e.width,l.height=e.height),l}this.allocateTextureUnit=M,this.resetTextureUnits=k,this.getTextureUnits=A,this.setTextureUnits=j,this.setTexture2D=P,this.setTexture2DArray=F,this.setTexture3D=I,this.setTextureCube=L,this.rebindTextures=ce,this.setupRenderTarget=U,this.updateRenderTargetMipmap=le,this.updateMultisampleRenderTarget=de,this.setupDepthRenderbuffer=se,this.setupFrameBufferTexture=ae,this.useMultisampledRTT=K,this.isReversedDepthBuffer=function(){return n.buffers.depth.getReversed()}}function dx(e,t){function n(n,r=``){let i,a=jf.getTransfer(r);if(n===1009)return e.UNSIGNED_BYTE;if(n===1017)return e.UNSIGNED_SHORT_4_4_4_4;if(n===1018)return e.UNSIGNED_SHORT_5_5_5_1;if(n===35902)return e.UNSIGNED_INT_5_9_9_9_REV;if(n===35899)return e.UNSIGNED_INT_10F_11F_11F_REV;if(n===1010)return e.BYTE;if(n===1011)return e.SHORT;if(n===1012)return e.UNSIGNED_SHORT;if(n===1013)return e.INT;if(n===1014)return e.UNSIGNED_INT;if(n===1015)return e.FLOAT;if(n===1016)return e.HALF_FLOAT;if(n===1021)return e.ALPHA;if(n===1022)return e.RGB;if(n===1023)return e.RGBA;if(n===1026)return e.DEPTH_COMPONENT;if(n===1027)return e.DEPTH_STENCIL;if(n===1028)return e.RED;if(n===1029)return e.RED_INTEGER;if(n===1030)return e.RG;if(n===1031)return e.RG_INTEGER;if(n===1033)return e.RGBA_INTEGER;if(n===33776||n===33777||n===33778||n===33779){if(a===`srgb`){if(i=t.get(`WEBGL_compressed_texture_s3tc_srgb`),i!==null){if(n===33776)return i.COMPRESSED_SRGB_S3TC_DXT1_EXT;if(n===33777)return i.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;if(n===33778)return i.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;if(n===33779)return i.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT}else return null}else if(i=t.get(`WEBGL_compressed_texture_s3tc`),i!==null){if(n===33776)return i.COMPRESSED_RGB_S3TC_DXT1_EXT;if(n===33777)return i.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(n===33778)return i.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(n===33779)return i.COMPRESSED_RGBA_S3TC_DXT5_EXT}else return null}if(n===35840||n===35841||n===35842||n===35843){if(i=t.get(`WEBGL_compressed_texture_pvrtc`),i!==null){if(n===35840)return i.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(n===35841)return i.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(n===35842)return i.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(n===35843)return i.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}else return null}if(n===36196||n===37492||n===37496||n===37488||n===37489||n===37490||n===37491){if(i=t.get(`WEBGL_compressed_texture_etc`),i!==null){if(n===36196||n===37492)return a===`srgb`?i.COMPRESSED_SRGB8_ETC2:i.COMPRESSED_RGB8_ETC2;if(n===37496)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:i.COMPRESSED_RGBA8_ETC2_EAC;if(n===37488)return i.COMPRESSED_R11_EAC;if(n===37489)return i.COMPRESSED_SIGNED_R11_EAC;if(n===37490)return i.COMPRESSED_RG11_EAC;if(n===37491)return i.COMPRESSED_SIGNED_RG11_EAC}else return null}if(n===37808||n===37809||n===37810||n===37811||n===37812||n===37813||n===37814||n===37815||n===37816||n===37817||n===37818||n===37819||n===37820||n===37821){if(i=t.get(`WEBGL_compressed_texture_astc`),i!==null){if(n===37808)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR:i.COMPRESSED_RGBA_ASTC_4x4_KHR;if(n===37809)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR:i.COMPRESSED_RGBA_ASTC_5x4_KHR;if(n===37810)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR:i.COMPRESSED_RGBA_ASTC_5x5_KHR;if(n===37811)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR:i.COMPRESSED_RGBA_ASTC_6x5_KHR;if(n===37812)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR:i.COMPRESSED_RGBA_ASTC_6x6_KHR;if(n===37813)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR:i.COMPRESSED_RGBA_ASTC_8x5_KHR;if(n===37814)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR:i.COMPRESSED_RGBA_ASTC_8x6_KHR;if(n===37815)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR:i.COMPRESSED_RGBA_ASTC_8x8_KHR;if(n===37816)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR:i.COMPRESSED_RGBA_ASTC_10x5_KHR;if(n===37817)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR:i.COMPRESSED_RGBA_ASTC_10x6_KHR;if(n===37818)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR:i.COMPRESSED_RGBA_ASTC_10x8_KHR;if(n===37819)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR:i.COMPRESSED_RGBA_ASTC_10x10_KHR;if(n===37820)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR:i.COMPRESSED_RGBA_ASTC_12x10_KHR;if(n===37821)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR:i.COMPRESSED_RGBA_ASTC_12x12_KHR}else return null}if(n===36492||n===36494||n===36495){if(i=t.get(`EXT_texture_compression_bptc`),i!==null){if(n===36492)return a===`srgb`?i.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT:i.COMPRESSED_RGBA_BPTC_UNORM_EXT;if(n===36494)return i.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT;if(n===36495)return i.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT}else return null}if(n===36283||n===36284||n===36285||n===36286){if(i=t.get(`EXT_texture_compression_rgtc`),i!==null){if(n===36283)return i.COMPRESSED_RED_RGTC1_EXT;if(n===36284)return i.COMPRESSED_SIGNED_RED_RGTC1_EXT;if(n===36285)return i.COMPRESSED_RED_GREEN_RGTC2_EXT;if(n===36286)return i.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT}else return null}return n===1020?e.UNSIGNED_INT_24_8:e[n]===void 0?null:e[n]}return{convert:n}}var fx=`
4202
4202
  void main() {
4203
4203
 
4204
4204
  gl_Position = vec4( position, 1.0 );
@@ -4222,7 +4222,7 @@ void main() {
4222
4222
 
4223
4223
  }
4224
4224
 
4225
- }`,mx=class{constructor(){this.texture=null,this.mesh=null,this.depthNear=0,this.depthFar=0}init(e,t){if(this.texture===null){let n=new tg(e.texture);(e.depthNear!==t.depthNear||e.depthFar!==t.depthFar)&&(this.depthNear=e.depthNear,this.depthFar=e.depthFar),this.texture=n}}getMesh(e){if(this.texture!==null&&this.mesh===null){let t=e.cameras[0].viewport,n=new bg({vertexShader:fx,fragmentShader:px,uniforms:{depthColor:{value:this.texture},depthWidth:{value:t.z},depthHeight:{value:t.w}}});this.mesh=new _h(new lg(20,20),n)}return this.mesh}reset(){this.texture=null,this.mesh=null}getDepthTexture(){return this.texture}},hx=class extends Jd{constructor(e,t){super();let n=this,r=null,i=1,a=null,o=`local-floor`,s=1,c=null,l=null,u=null,d=null,f=null,p=null,m=typeof XRWebGLBinding<`u`,h=new mx,g={},_=t.getContextAttributes(),v=null,y=null,b=[],x=[],S=new X,C=null,w=null,T=new __;T.viewport=new Hf;let E=new __;E.viewport=new Hf;let D=[T,E],O=new O_,k=null,A=null;this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(e){let t=b[e];return t===void 0&&(t=new Cp,b[e]=t),t.getTargetRaySpace()},this.getControllerGrip=function(e){let t=b[e];return t===void 0&&(t=new Cp,b[e]=t),t.getGripSpace()},this.getHand=function(e){let t=b[e];return t===void 0&&(t=new Cp,b[e]=t),t.getHandSpace()};function j(e){let t=x.indexOf(e.inputSource);if(t===-1)return;let n=b[t];n!==void 0&&(n.update(e.inputSource,e.frame,c||a),n.dispatchEvent({type:e.type,data:e.inputSource}))}function M(){r.removeEventListener(`select`,j),r.removeEventListener(`selectstart`,j),r.removeEventListener(`selectend`,j),r.removeEventListener(`squeeze`,j),r.removeEventListener(`squeezestart`,j),r.removeEventListener(`squeezeend`,j),r.removeEventListener(`end`,M),r.removeEventListener(`inputsourceschange`,N);for(let e=0;e<b.length;e++){let t=x[e];t!==null&&(x[e]=null,b[e].disconnect(t))}k=null,A=null,h.reset();for(let e in g)delete g[e];if(e.setRenderTarget(v),f=null,d=null,u=null,r=null,y=null,z.stop(),n.isPresenting=!1,e.setPixelRatio(C),e.setSize(S.width,S.height,!1),w!==null){let e=w.camera;e.fov=w.fov,e.zoom=w.zoom,e.updateProjectionMatrix(),w=null}n.dispatchEvent({type:`sessionend`})}this.setFramebufferScaleFactor=function(e){i=e,n.isPresenting===!0&&Ud(`WebXRManager: Cannot change framebuffer scale while presenting.`)},this.setReferenceSpaceType=function(e){o=e,n.isPresenting===!0&&Ud(`WebXRManager: Cannot change reference space type while presenting.`)},this.getReferenceSpace=function(){return c||a},this.setReferenceSpace=function(e){c=e},this.getBaseLayer=function(){return d===null?f:d},this.getBinding=function(){return u===null&&m&&(u=new XRWebGLBinding(r,t)),u},this.getFrame=function(){return p},this.getSession=function(){return r},this.setSession=async function(l){if(r=l,r!==null){if(v=e.getRenderTarget(),r.addEventListener(`select`,j),r.addEventListener(`selectstart`,j),r.addEventListener(`selectend`,j),r.addEventListener(`squeeze`,j),r.addEventListener(`squeezestart`,j),r.addEventListener(`squeezeend`,j),r.addEventListener(`end`,M),r.addEventListener(`inputsourceschange`,N),_.xrCompatible!==!0&&await t.makeXRCompatible(),C=e.getPixelRatio(),e.getSize(S),m&&`createProjectionLayer`in XRWebGLBinding.prototype){let n=null,a=null,o=null;_.depth&&(o=_.stencil?t.DEPTH24_STENCIL8:t.DEPTH_COMPONENT24,n=_.stencil?Nu:Mu,a=_.stencil?Eu:xu);let s={colorFormat:t.RGBA8,depthFormat:o,scaleFactor:i};u=this.getBinding(),d=u.createProjectionLayer(s),r.updateRenderState({layers:[d]}),e.setPixelRatio(1),e.setSize(d.textureWidth,d.textureHeight,!1),y=new Wf(d.textureWidth,d.textureHeight,{format:ju,type:gu,depthTexture:new $h(d.textureWidth,d.textureHeight,a,void 0,void 0,void 0,void 0,void 0,void 0,n),stencilBuffer:_.stencil,colorSpace:e.outputColorSpace,samples:_.antialias?4:0,resolveDepthBuffer:d.ignoreDepthValues===!1,resolveStencilBuffer:d.ignoreDepthValues===!1,storeMultisampledDepthBuffer:d.ignoreDepthValues===!1,storeMultisampledStencilBuffer:d.ignoreDepthValues===!1})}else{let n={antialias:_.antialias,alpha:!0,depth:_.depth,stencil:_.stencil,framebufferScaleFactor:i};f=new XRWebGLLayer(r,t,n),r.updateRenderState({baseLayer:f}),e.setPixelRatio(1),e.setSize(f.framebufferWidth,f.framebufferHeight,!1),y=new Wf(f.framebufferWidth,f.framebufferHeight,{format:ju,type:gu,colorSpace:e.outputColorSpace,stencilBuffer:_.stencil,resolveDepthBuffer:f.ignoreDepthValues===!1,resolveStencilBuffer:f.ignoreDepthValues===!1,storeMultisampledDepthBuffer:f.ignoreDepthValues===!1,storeMultisampledStencilBuffer:f.ignoreDepthValues===!1})}y.isXRRenderTarget=!0,this.setFoveation(s),c=null,a=await r.requestReferenceSpace(o),z.setContext(r),z.start(),n.isPresenting=!0,n.dispatchEvent({type:`sessionstart`})}},this.getEnvironmentBlendMode=function(){if(r!==null)return r.environmentBlendMode},this.getDepthTexture=function(){return h.getDepthTexture()};function N(e){for(let t=0;t<e.removed.length;t++){let n=e.removed[t],r=x.indexOf(n);r>=0&&(x[r]=null,b[r].disconnect(n))}for(let t=0;t<e.added.length;t++){let n=e.added[t],r=x.indexOf(n);if(r===-1){for(let e=0;e<b.length;e++)if(e>=x.length){x.push(n),r=e;break}else if(x[e]===null){x[e]=n,r=e;break}if(r===-1)break}let i=b[r];i&&i.connect(n)}}let P=new Z,F=new Z;function I(e,t,n){P.setFromMatrixPosition(t.matrixWorld),F.setFromMatrixPosition(n.matrixWorld);let r=P.distanceTo(F),i=t.projectionMatrix.elements,a=n.projectionMatrix.elements,o=i[14]/(i[10]-1),s=i[14]/(i[10]+1),c=(i[9]+1)/i[5],l=(i[9]-1)/i[5],u=(i[8]-1)/i[0],d=(a[8]+1)/a[0],f=o*u,p=o*d,m=r/(-u+d),h=m*-u;if(t.matrixWorld.decompose(e.position,e.quaternion,e.scale),e.translateX(h),e.translateZ(m),e.matrixWorld.compose(e.position,e.quaternion,e.scale),e.matrixWorldInverse.copy(e.matrixWorld).invert(),i[10]===-1)e.projectionMatrix.copy(t.projectionMatrix),e.projectionMatrixInverse.copy(t.projectionMatrixInverse);else{let t=o+m,n=s+m,i=f-h,a=p+(r-h),u=c*s/n*t,d=l*s/n*t;e.projectionMatrix.makePerspective(i,a,u,d,t,n),e.projectionMatrixInverse.copy(e.projectionMatrix).invert()}}function L(e,t){t===null?e.matrixWorld.copy(e.matrix):e.matrixWorld.multiplyMatrices(t.matrixWorld,e.matrix),e.matrixWorldInverse.copy(e.matrixWorld).invert()}this.updateCamera=function(e){if(r===null)return;let t=e.near,n=e.far;h.texture!==null&&(h.depthNear>0&&(t=h.depthNear),h.depthFar>0&&(n=h.depthFar)),O.near=E.near=T.near=t,O.far=E.far=T.far=n,(k!==O.near||A!==O.far)&&(r.updateRenderState({depthNear:O.near,depthFar:O.far}),k=O.near,A=O.far),O.layers.mask=e.layers.mask|6,T.layers.mask=O.layers.mask&-5,E.layers.mask=O.layers.mask&-3;let i=e.parent,a=O.cameras;L(O,i);for(let e=0;e<a.length;e++)L(a[e],i);a.length===2?I(O,T,E):O.projectionMatrix.copy(T.projectionMatrix),w===null&&e.isPerspectiveCamera&&(w={camera:e,fov:e.fov,zoom:e.zoom}),ee(e,O,i)};function ee(e,t,n){n===null?e.matrix.copy(t.matrixWorld):(e.matrix.copy(n.matrixWorld),e.matrix.invert(),e.matrix.multiply(t.matrixWorld)),e.matrix.decompose(e.position,e.quaternion,e.scale),e.updateMatrixWorld(!0),e.projectionMatrix.copy(t.projectionMatrix),e.projectionMatrixInverse.copy(t.projectionMatrixInverse),e.isPerspectiveCamera&&(e.fov=Qd*2*Math.atan(1/e.projectionMatrix.elements[5]),e.zoom=1)}this.getCamera=function(){return O},this.getFoveation=function(){if(d!==null||f!==null)return s},this.setFoveation=function(e){s=e,d!==null&&(d.fixedFoveation=e),f!==null&&f.fixedFoveation!==void 0&&(f.fixedFoveation=e)},this.hasDepthSensing=function(){return h.texture!==null},this.getDepthSensingMesh=function(){return h.getMesh(O)},this.getCameraTexture=function(e){return g[e]};let R=null;function te(t,i){if(l=i.getViewerPose(c||a),p=i,l!==null){let t=l.views;f!==null&&(e.setRenderTargetFramebuffer(y,f.framebuffer),e.setRenderTarget(y));let i=!1;t.length!==O.cameras.length&&(O.cameras.length=0,i=!0);for(let n=0;n<t.length;n++){let r=t[n],a=null;if(f!==null)a=f.getViewport(r);else{let t=u.getViewSubImage(d,r);a=t.viewport,n===0&&(e.setRenderTargetTextures(y,t.colorTexture,t.depthStencilTexture),e.setRenderTarget(y))}let o=D[n];o===void 0&&(o=new __,o.layers.enable(n),o.viewport=new Hf,D[n]=o),o.matrix.fromArray(r.transform.matrix),o.matrix.decompose(o.position,o.quaternion,o.scale),o.projectionMatrix.fromArray(r.projectionMatrix),o.projectionMatrixInverse.copy(o.projectionMatrix).invert(),o.viewport.set(a.x,a.y,a.width,a.height),n===0&&(O.matrix.copy(o.matrix),O.matrix.decompose(O.position,O.quaternion,O.scale)),i===!0&&O.cameras.push(o)}let a=r.enabledFeatures;if(a&&a.includes(`depth-sensing`)&&r.depthUsage==`gpu-optimized`&&m){u=n.getBinding();let e=u.getDepthInformation(t[0]);e&&e.isValid&&e.texture&&h.init(e,r.renderState)}if(a&&a.includes(`camera-access`)&&m){e.state.unbindTexture(),u=n.getBinding();for(let e=0;e<t.length;e++){let n=t[e].camera;if(n){let e=g[n];e||(e=new tg,g[n]=e);let t=u.getCameraImage(n);e.sourceTexture=t}}}}for(let e=0;e<b.length;e++){let t=x[e],n=b[e];t!==null&&n!==void 0&&n.update(t,i,c||a)}R&&R(t,i),i.detectedPlanes&&n.dispatchEvent({type:`planesdetected`,data:i}),p=null}let z=new ov;z.setAnimationLoop(te),this.setAnimationLoop=function(e){R=e},this.dispose=function(){}}},gx=new qf,_x=new Ef;_x.set(-1,0,0,0,1,0,0,0,1);function vx(e,t){function n(e,t){e.matrixAutoUpdate===!0&&e.updateMatrix(),t.value.copy(e.matrix)}function r(t,n){n.color.getRGB(t.fogColor.value,gg(e)),n.isFog?(t.fogNear.value=n.near,t.fogFar.value=n.far):n.isFogExp2&&(t.fogDensity.value=n.density)}function i(e,t,n,r,i){t.isNodeMaterial?t.uniformsNeedUpdate=!1:t.isMeshBasicMaterial?a(e,t):t.isMeshLambertMaterial?(a(e,t),t.envMap&&(e.envMapIntensity.value=t.envMapIntensity)):t.isMeshToonMaterial?(a(e,t),d(e,t)):t.isMeshPhongMaterial?(a(e,t),u(e,t),t.envMap&&(e.envMapIntensity.value=t.envMapIntensity)):t.isMeshStandardMaterial?(a(e,t),f(e,t),t.isMeshPhysicalMaterial&&p(e,t,i)):t.isMeshMatcapMaterial?(a(e,t),m(e,t)):t.isMeshDepthMaterial?a(e,t):t.isMeshDistanceMaterial?(a(e,t),h(e,t)):t.isMeshNormalMaterial?a(e,t):t.isLineBasicMaterial?(o(e,t),t.isLineDashedMaterial&&s(e,t)):t.isPointsMaterial?c(e,t,n,r):t.isSpriteMaterial?l(e,t):t.isShadowMaterial?(e.color.value.copy(t.color),e.opacity.value=t.opacity):t.isShaderMaterial&&(t.uniformsNeedUpdate=!1)}function a(e,r){e.opacity.value=r.opacity,r.color&&e.diffuse.value.copy(r.color),r.emissive&&e.emissive.value.copy(r.emissive).multiplyScalar(r.emissiveIntensity),r.map&&(e.map.value=r.map,n(r.map,e.mapTransform)),r.alphaMap&&(e.alphaMap.value=r.alphaMap,n(r.alphaMap,e.alphaMapTransform)),r.bumpMap&&(e.bumpMap.value=r.bumpMap,n(r.bumpMap,e.bumpMapTransform),e.bumpScale.value=r.bumpScale,r.side===1&&(e.bumpScale.value*=-1)),r.normalMap&&(e.normalMap.value=r.normalMap,n(r.normalMap,e.normalMapTransform),e.normalScale.value.copy(r.normalScale),r.side===1&&e.normalScale.value.negate()),r.displacementMap&&(e.displacementMap.value=r.displacementMap,n(r.displacementMap,e.displacementMapTransform),e.displacementScale.value=r.displacementScale,e.displacementBias.value=r.displacementBias),r.emissiveMap&&(e.emissiveMap.value=r.emissiveMap,n(r.emissiveMap,e.emissiveMapTransform)),r.specularMap&&(e.specularMap.value=r.specularMap,n(r.specularMap,e.specularMapTransform)),r.alphaTest>0&&(e.alphaTest.value=r.alphaTest);let i=t.get(r),a=i.envMap,o=i.envMapRotation;a&&(e.envMap.value=a,e.envMapRotation.value.setFromMatrix4(gx.makeRotationFromEuler(o)).transpose(),a.isCubeTexture&&a.isRenderTargetTexture===!1&&e.envMapRotation.value.premultiply(_x),e.reflectivity.value=r.reflectivity,e.ior.value=r.ior,e.refractionRatio.value=r.refractionRatio),r.lightMap&&(e.lightMap.value=r.lightMap,e.lightMapIntensity.value=r.lightMapIntensity,n(r.lightMap,e.lightMapTransform)),r.aoMap&&(e.aoMap.value=r.aoMap,e.aoMapIntensity.value=r.aoMapIntensity,n(r.aoMap,e.aoMapTransform))}function o(e,t){e.diffuse.value.copy(t.color),e.opacity.value=t.opacity,t.map&&(e.map.value=t.map,n(t.map,e.mapTransform))}function s(e,t){e.dashSize.value=t.dashSize,e.totalSize.value=t.dashSize+t.gapSize,e.scale.value=t.scale}function c(e,t,r,i){e.diffuse.value.copy(t.color),e.opacity.value=t.opacity,e.size.value=t.size*r,e.scale.value=i*.5,t.map&&(e.map.value=t.map,n(t.map,e.uvTransform)),t.alphaMap&&(e.alphaMap.value=t.alphaMap,n(t.alphaMap,e.alphaMapTransform)),t.alphaTest>0&&(e.alphaTest.value=t.alphaTest)}function l(e,t){e.diffuse.value.copy(t.color),e.opacity.value=t.opacity,e.rotation.value=t.rotation,t.map&&(e.map.value=t.map,n(t.map,e.mapTransform)),t.alphaMap&&(e.alphaMap.value=t.alphaMap,n(t.alphaMap,e.alphaMapTransform)),t.alphaTest>0&&(e.alphaTest.value=t.alphaTest)}function u(e,t){e.specular.value.copy(t.specular),e.shininess.value=Math.max(t.shininess,1e-4)}function d(e,t){t.gradientMap&&(e.gradientMap.value=t.gradientMap)}function f(e,t){e.metalness.value=t.metalness,t.metalnessMap&&(e.metalnessMap.value=t.metalnessMap,n(t.metalnessMap,e.metalnessMapTransform)),e.roughness.value=t.roughness,t.roughnessMap&&(e.roughnessMap.value=t.roughnessMap,n(t.roughnessMap,e.roughnessMapTransform)),t.envMap&&(e.envMapIntensity.value=t.envMapIntensity)}function p(e,t,r){e.ior.value=t.ior,t.sheen>0&&(e.sheenColor.value.copy(t.sheenColor).multiplyScalar(t.sheen),e.sheenRoughness.value=t.sheenRoughness,t.sheenColorMap&&(e.sheenColorMap.value=t.sheenColorMap,n(t.sheenColorMap,e.sheenColorMapTransform)),t.sheenRoughnessMap&&(e.sheenRoughnessMap.value=t.sheenRoughnessMap,n(t.sheenRoughnessMap,e.sheenRoughnessMapTransform))),t.clearcoat>0&&(e.clearcoat.value=t.clearcoat,e.clearcoatRoughness.value=t.clearcoatRoughness,t.clearcoatMap&&(e.clearcoatMap.value=t.clearcoatMap,n(t.clearcoatMap,e.clearcoatMapTransform)),t.clearcoatRoughnessMap&&(e.clearcoatRoughnessMap.value=t.clearcoatRoughnessMap,n(t.clearcoatRoughnessMap,e.clearcoatRoughnessMapTransform)),t.clearcoatNormalMap&&(e.clearcoatNormalMap.value=t.clearcoatNormalMap,n(t.clearcoatNormalMap,e.clearcoatNormalMapTransform),e.clearcoatNormalScale.value.copy(t.clearcoatNormalScale),t.side===1&&e.clearcoatNormalScale.value.negate())),t.dispersion>0&&(e.dispersion.value=t.dispersion),t.retroreflectivity>0&&(e.retroreflectivity.value=t.retroreflectivity),t.iridescence>0&&(e.iridescence.value=t.iridescence,e.iridescenceIOR.value=t.iridescenceIOR,e.iridescenceThicknessMinimum.value=t.iridescenceThicknessRange[0],e.iridescenceThicknessMaximum.value=t.iridescenceThicknessRange[1],t.iridescenceMap&&(e.iridescenceMap.value=t.iridescenceMap,n(t.iridescenceMap,e.iridescenceMapTransform)),t.iridescenceThicknessMap&&(e.iridescenceThicknessMap.value=t.iridescenceThicknessMap,n(t.iridescenceThicknessMap,e.iridescenceThicknessMapTransform))),t.transmission>0&&(e.transmission.value=t.transmission,e.transmissionSamplerMap.value=r.texture,e.transmissionSamplerSize.value.set(r.width,r.height),t.transmissionMap&&(e.transmissionMap.value=t.transmissionMap,n(t.transmissionMap,e.transmissionMapTransform)),e.thickness.value=t.thickness,t.thicknessMap&&(e.thicknessMap.value=t.thicknessMap,n(t.thicknessMap,e.thicknessMapTransform)),e.attenuationDistance.value=t.attenuationDistance,e.attenuationColor.value.copy(t.attenuationColor)),t.anisotropy>0&&(e.anisotropyVector.value.set(t.anisotropy*Math.cos(t.anisotropyRotation),t.anisotropy*Math.sin(t.anisotropyRotation)),t.anisotropyMap&&(e.anisotropyMap.value=t.anisotropyMap,n(t.anisotropyMap,e.anisotropyMapTransform))),e.specularIntensity.value=t.specularIntensity,e.specularColor.value.copy(t.specularColor),t.specularColorMap&&(e.specularColorMap.value=t.specularColorMap,n(t.specularColorMap,e.specularColorMapTransform)),t.specularIntensityMap&&(e.specularIntensityMap.value=t.specularIntensityMap,n(t.specularIntensityMap,e.specularIntensityMapTransform))}function m(e,t){t.matcap&&(e.matcap.value=t.matcap)}function h(e,n){let r=t.get(n).light;e.referencePosition.value.setFromMatrixPosition(r.matrixWorld),e.nearDistance.value=r.shadow.camera.near,e.farDistance.value=r.shadow.camera.far}return{refreshFogUniforms:r,refreshMaterialUniforms:i}}function yx(e,t,n,r){let i={},a={},o=[],s=e.getParameter(e.MAX_UNIFORM_BUFFER_BINDINGS);function c(e,t){let n=t.program;r.uniformBlockBinding(e,n)}function l(e,n){let o=i[e.id];o===void 0&&(g(e),o=u(e),i[e.id]=o,e.addEventListener(`dispose`,v));let s=n.program;r.updateUBOMapping(e,s);let c=t.render.frame;a[e.id]!==c&&(f(e),a[e.id]=c)}function u(t){let n=d();t.__bindingPointIndex=n;let r=e.createBuffer(),i=t.__size,a=t.usage;return e.bindBuffer(e.UNIFORM_BUFFER,r),e.bufferData(e.UNIFORM_BUFFER,i,a),e.bindBuffer(e.UNIFORM_BUFFER,null),e.bindBufferBase(e.UNIFORM_BUFFER,n,r),r}function d(){for(let e=0;e<s;e++)if(o.indexOf(e)===-1)return o.push(e),e;return Wd(`WebGLRenderer: Maximum number of simultaneously usable uniforms groups reached.`),0}function f(t){let n=i[t.id],r=t.uniforms,a=t.__cache;e.bindBuffer(e.UNIFORM_BUFFER,n);for(let e=0,t=r.length;e<t;e++){let t=r[e];if(Array.isArray(t))for(let n=0,r=t.length;n<r;n++)p(t[n],e,n,a);else p(t,e,0,a)}e.bindBuffer(e.UNIFORM_BUFFER,null)}function p(t,n,r,i){if(h(t,n,r,i)===!0){let n=t.__offset,r=t.value;if(Array.isArray(r)){let e=0;for(let n=0;n<r.length;n++){let i=r[n],a=_(i);m(i,t.__data,e),typeof i!=`number`&&typeof i!=`boolean`&&!i.isMatrix3&&!ArrayBuffer.isView(i)&&(e+=a.storage/Float32Array.BYTES_PER_ELEMENT)}}else m(r,t.__data,0);e.bufferSubData(e.UNIFORM_BUFFER,n,t.__data)}}function m(e,t,n){typeof e==`number`||typeof e==`boolean`?t[0]=e:e.isMatrix3?(t[0]=e.elements[0],t[1]=e.elements[1],t[2]=e.elements[2],t[3]=0,t[4]=e.elements[3],t[5]=e.elements[4],t[6]=e.elements[5],t[7]=0,t[8]=e.elements[6],t[9]=e.elements[7],t[10]=e.elements[8],t[11]=0):ArrayBuffer.isView(e)?t.set(new e.constructor(e.buffer,e.byteOffset,t.length)):e.toArray(t,n)}function h(e,t,n,r){let i=e.value,a=t+`_`+n;if(r[a]===void 0)return r[a]=typeof i==`number`||typeof i==`boolean`?i:ArrayBuffer.isView(i)?i.slice():i.clone(),!0;{let e=r[a];if(typeof i==`number`||typeof i==`boolean`){if(e!==i)return r[a]=i,!0}else if(ArrayBuffer.isView(i))return!0;else if(e.equals(i)===!1)return e.copy(i),!0}return!1}function g(e){let t=e.uniforms,n=0;for(let e=0,r=t.length;e<r;e++){let r=Array.isArray(t[e])?t[e]:[t[e]];for(let e=0,t=r.length;e<t;e++){let t=r[e],i=Array.isArray(t.value)?t.value:[t.value];for(let e=0,r=i.length;e<r;e++){let r=i[e],a=_(r),o=n%16,s=o%a.boundary,c=o+s;n+=s,c!==0&&16-c<a.storage&&(n+=16-c),t.__data=new Float32Array(a.storage/Float32Array.BYTES_PER_ELEMENT),t.__offset=n,n+=a.storage}}}let r=n%16;return r>0&&(n+=16-r),e.__size=n,e.__cache={},this}function _(e){let t={boundary:0,storage:0};return typeof e==`number`||typeof e==`boolean`?(t.boundary=4,t.storage=4):e.isVector2?(t.boundary=8,t.storage=8):e.isVector3||e.isColor?(t.boundary=16,t.storage=12):e.isVector4?(t.boundary=16,t.storage=16):e.isMatrix3?(t.boundary=48,t.storage=48):e.isMatrix4?(t.boundary=64,t.storage=64):e.isTexture?Ud(`WebGLRenderer: Texture samplers can not be part of an uniforms group.`):ArrayBuffer.isView(e)?(t.boundary=16,t.storage=e.byteLength):Ud(`WebGLRenderer: Unsupported uniform value type.`,e),t}function v(t){let n=t.target;n.removeEventListener(`dispose`,v);let r=o.indexOf(n.__bindingPointIndex);o.splice(r,1),e.deleteBuffer(i[n.id]),delete i[n.id],delete a[n.id]}function y(){for(let t in i)e.deleteBuffer(i[t]);o=[],i={},a={}}return{bind:c,update:l,dispose:y}}var bx=new Uint16Array([12469,15057,12620,14925,13266,14620,13807,14376,14323,13990,14545,13625,14713,13328,14840,12882,14931,12528,14996,12233,15039,11829,15066,11525,15080,11295,15085,10976,15082,10705,15073,10495,13880,14564,13898,14542,13977,14430,14158,14124,14393,13732,14556,13410,14702,12996,14814,12596,14891,12291,14937,11834,14957,11489,14958,11194,14943,10803,14921,10506,14893,10278,14858,9960,14484,14039,14487,14025,14499,13941,14524,13740,14574,13468,14654,13106,14743,12678,14818,12344,14867,11893,14889,11509,14893,11180,14881,10751,14852,10428,14812,10128,14765,9754,14712,9466,14764,13480,14764,13475,14766,13440,14766,13347,14769,13070,14786,12713,14816,12387,14844,11957,14860,11549,14868,11215,14855,10751,14825,10403,14782,10044,14729,9651,14666,9352,14599,9029,14967,12835,14966,12831,14963,12804,14954,12723,14936,12564,14917,12347,14900,11958,14886,11569,14878,11247,14859,10765,14828,10401,14784,10011,14727,9600,14660,9289,14586,8893,14508,8533,15111,12234,15110,12234,15104,12216,15092,12156,15067,12010,15028,11776,14981,11500,14942,11205,14902,10752,14861,10393,14812,9991,14752,9570,14682,9252,14603,8808,14519,8445,14431,8145,15209,11449,15208,11451,15202,11451,15190,11438,15163,11384,15117,11274,15055,10979,14994,10648,14932,10343,14871,9936,14803,9532,14729,9218,14645,8742,14556,8381,14461,8020,14365,7603,15273,10603,15272,10607,15267,10619,15256,10631,15231,10614,15182,10535,15118,10389,15042,10167,14963,9787,14883,9447,14800,9115,14710,8665,14615,8318,14514,7911,14411,7507,14279,7198,15314,9675,15313,9683,15309,9712,15298,9759,15277,9797,15229,9773,15166,9668,15084,9487,14995,9274,14898,8910,14800,8539,14697,8234,14590,7790,14479,7409,14367,7067,14178,6621,15337,8619,15337,8631,15333,8677,15325,8769,15305,8871,15264,8940,15202,8909,15119,8775,15022,8565,14916,8328,14804,8009,14688,7614,14569,7287,14448,6888,14321,6483,14088,6171,15350,7402,15350,7419,15347,7480,15340,7613,15322,7804,15287,7973,15229,8057,15148,8012,15046,7846,14933,7611,14810,7357,14682,7069,14552,6656,14421,6316,14251,5948,14007,5528,15356,5942,15356,5977,15353,6119,15348,6294,15332,6551,15302,6824,15249,7044,15171,7122,15070,7050,14949,6861,14818,6611,14679,6349,14538,6067,14398,5651,14189,5311,13935,4958,15359,4123,15359,4153,15356,4296,15353,4646,15338,5160,15311,5508,15263,5829,15188,6042,15088,6094,14966,6001,14826,5796,14678,5543,14527,5287,14377,4985,14133,4586,13869,4257,15360,1563,15360,1642,15358,2076,15354,2636,15341,3350,15317,4019,15273,4429,15203,4732,15105,4911,14981,4932,14836,4818,14679,4621,14517,4386,14359,4156,14083,3795,13808,3437,15360,122,15360,137,15358,285,15355,636,15344,1274,15322,2177,15281,2765,15215,3223,15120,3451,14995,3569,14846,3567,14681,3466,14511,3305,14344,3121,14037,2800,13753,2467,15360,0,15360,1,15359,21,15355,89,15346,253,15325,479,15287,796,15225,1148,15133,1492,15008,1749,14856,1882,14685,1886,14506,1783,14324,1608,13996,1398,13702,1183]),xx=null;function Sx(){return xx===null&&(xx=new bh(bx,16,16,Iu,Cu),xx.name=`DFG_LUT`,xx.minFilter=pu,xx.magFilter=pu,xx.wrapS=cu,xx.wrapT=cu,xx.generateMipmaps=!1,xx.needsUpdate=!0),xx}var Cx=class{constructor(e={}){let{canvas:t=zd(),context:n=null,depth:r=!0,stencil:i=!1,alpha:a=!1,antialias:o=!1,premultipliedAlpha:s=!0,preserveDrawingBuffer:c=!1,powerPreference:l=`default`,failIfMajorPerformanceCaveat:u=!1,reversedDepthBuffer:d=!1,outputBufferType:f=gu}=e;this.isWebGLRenderer=!0;let p;if(n!==null){if(typeof WebGLRenderingContext<`u`&&n instanceof WebGLRenderingContext)throw Error(`THREE.WebGLRenderer: WebGL 1 is not supported since r163.`);p=n.getContextAttributes().alpha}else p=a;let m=f,h=new Set([Ru,Lu,Fu]),g=new Set([gu,xu,yu,Eu,wu,Tu]),_=new Uint32Array(4),v=new Int32Array(4),y=new Z,b=null,x=null,S=[],C=[],w=null;this.domElement=t,this.debug={checkShaderErrors:!0,diagnostics:{keywords:!1},onShaderError:null},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this.toneMapping=0,this.toneMappingExposure=1,this.transmissionResolutionScale=1;let T=this,E=!1,D=null,O=null,k=null,A=null;this._outputColorSpace=kd;let j=0,M=0,N=null,P=-1,F=null,I=new Hf,L=new Hf,ee=null,R=new Q(0),te=0,z=t.width,ne=t.height,B=1,V=null,re=null,ie=new Hf(0,0,z,ne),ae=new Hf(0,0,z,ne),oe=!1,H=new Nh,se=!1,ce=!1,U=new qf,le=new Z,ue=new Hf,W={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0},de=!1;function fe(){return N===null?B:1}let G=n;function K(e,n){return t.getContext(e,n)}let pe,me,q,he,ge,_e,ve,ye,be,xe,Se,Ce,we,Te,J,Ee,De,Oe,ke,Ae,je,Me,Ne;try{let e={alpha:!0,depth:r,stencil:i,antialias:o,premultipliedAlpha:s,preserveDrawingBuffer:c,powerPreference:l,failIfMajorPerformanceCaveat:u};if(`setAttribute`in t&&t.setAttribute(`data-engine`,`three.js r186`),t.addEventListener(`webglcontextlost`,Fe,!1),t.addEventListener(`webglcontextrestored`,Ie,!1),t.addEventListener(`webglcontextcreationerror`,Le,!1),G===null){let t=`webgl2`;if(G=K(t,e),G===null)throw K(t)?Error(`THREE.WebGLRenderer: Error creating WebGL context with your selected attributes.`):Error(`THREE.WebGLRenderer: Error creating WebGL context.`)}Y()}catch(e){throw t.removeEventListener(`webglcontextlost`,Fe,!1),t.removeEventListener(`webglcontextrestored`,Ie,!1),t.removeEventListener(`webglcontextcreationerror`,Le,!1),Wd(`WebGLRenderer: `+e.message),e}function Y(){pe=new Vv(G),pe.init(),je=new dx(G,pe),me=new gv(G,pe,e,je),q=new lx(G,pe),me.reversedDepthBuffer&&d&&q.buffers.depth.setReversed(!0),O=G.createFramebuffer(),k=G.createFramebuffer(),A=G.createFramebuffer(),he=new Wv(G),ge=new Ub,_e=new ux(G,pe,q,ge,me,je,he),ve=new Bv(T),ye=new sv(G),Me=new mv(G,ye),be=new Hv(G,ye,he,Me),xe=new Kv(G,be,ye,Me,he),Oe=new Gv(G,me,_e),J=new _v(ge),Se=new Hb(T,ve,pe,me,Me,J),Ce=new vx(T,ge),we=new qb,Te=new ex(pe),De=new pv(T,ve,q,xe,p,s),Ee=new cx(T,xe,me),Ne=new yx(G,he,me,q),ke=new hv(G,pe,he),Ae=new Uv(G,pe,he),he.programs=Se.programs,T.capabilities=me,T.extensions=pe,T.properties=ge,T.renderLists=we,T.shadowMap=Ee,T.state=q,T.info=he}m!==1009&&(w=new Jv(m,t.width,t.height,o,r,i));let Pe=new hx(T,G);this.xr=Pe,this.getContext=function(){return G},this.getContextAttributes=function(){return G.getContextAttributes()},this.forceContextLoss=function(){let e=pe.get(`WEBGL_lose_context`);e&&e.loseContext()},this.forceContextRestore=function(){let e=pe.get(`WEBGL_lose_context`);e&&e.restoreContext()},this.getPixelRatio=function(){return B},this.setPixelRatio=function(e){e!==void 0&&(B=e,this.setSize(z,ne,!1))},this.getSize=function(e){return e.set(z,ne)},this.setSize=function(e,n,r=!0){if(Pe.isPresenting){Ud(`WebGLRenderer: Can't change size while VR device is presenting.`);return}z=e,ne=n,t.width=Math.floor(e*B),t.height=Math.floor(n*B),r===!0&&(t.style.width=e+`px`,t.style.height=n+`px`),w!==null&&w.setSize(t.width,t.height),this.setViewport(0,0,e,n)},this.getDrawingBufferSize=function(e){return e.set(z*B,ne*B).floor()},this.setDrawingBufferSize=function(e,n,r){z=e,ne=n,B=r,t.width=Math.floor(e*r),t.height=Math.floor(n*r),this.setViewport(0,0,e,n)},this.setEffects=function(e){if(m===1009){Wd(`WebGLRenderer: setEffects() requires outputBufferType set to HalfFloatType or FloatType.`);return}if(e){for(let t=0;t<e.length;t++)if(e[t].isOutputPass===!0){Ud(`WebGLRenderer: OutputPass is not needed in setEffects(). Tone mapping and color space conversion are applied automatically.`);break}}w.setEffects(e||[])},this.getCurrentViewport=function(e){return e.copy(I)},this.getViewport=function(e){return e.copy(ie)},this.setViewport=function(e,t,n,r){e.isVector4?ie.set(e.x,e.y,e.z,e.w):ie.set(e,t,n,r),q.viewport(I.copy(ie).multiplyScalar(B).round())},this.getScissor=function(e){return e.copy(ae)},this.setScissor=function(e,t,n,r){e.isVector4?ae.set(e.x,e.y,e.z,e.w):ae.set(e,t,n,r),q.scissor(L.copy(ae).multiplyScalar(B).round())},this.getScissorTest=function(){return oe},this.setScissorTest=function(e){q.setScissorTest(oe=e)},this.setOpaqueSort=function(e){V=e},this.setTransparentSort=function(e){re=e},this.getClearColor=function(e){return e.copy(De.getClearColor())},this.setClearColor=function(){De.setClearColor(...arguments)},this.getClearAlpha=function(){return De.getClearAlpha()},this.setClearAlpha=function(){De.setClearAlpha(...arguments)},this.clear=function(e=!0,t=!0,n=!0){let r=0;if(e){let e=!1;if(N!==null){let t=N.texture.format;e=h.has(t)}if(e){let e=N.texture.type,t=g.has(e),n=De.getClearColor(),r=De.getClearAlpha(),i=n.r,a=n.g,o=n.b;t?(_[0]=i,_[1]=a,_[2]=o,_[3]=r,G.clearBufferuiv(G.COLOR,0,_)):(v[0]=i,v[1]=a,v[2]=o,v[3]=r,G.clearBufferiv(G.COLOR,0,v))}else r|=G.COLOR_BUFFER_BIT}t&&(r|=G.DEPTH_BUFFER_BIT,this.state.buffers.depth.setMask(!0)),n&&(r|=G.STENCIL_BUFFER_BIT,this.state.buffers.stencil.setMask(4294967295)),r!==0&&G.clear(r)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.setNodesHandler=function(e){e.setRenderer(this),D=e},this.dispose=function(){t.removeEventListener(`webglcontextlost`,Fe,!1),t.removeEventListener(`webglcontextrestored`,Ie,!1),t.removeEventListener(`webglcontextcreationerror`,Le,!1),De.dispose(),we.dispose(),Te.dispose(),ge.dispose(),ve.dispose(),xe.dispose(),Me.dispose(),Ne.dispose(),Se.dispose(),Pe.dispose(),Pe.removeEventListener(`sessionstart`,We),Pe.removeEventListener(`sessionend`,Ge),Ke.stop()};function Fe(e){e.preventDefault(),Vd(`WebGLRenderer: Context Lost.`),E=!0}function Ie(){Vd(`WebGLRenderer: Context Restored.`),E=!1;let e=he.autoReset,t=Ee.enabled,n=Ee.autoUpdate,r=Ee.needsUpdate,i=Ee.type;Y(),he.autoReset=e,Ee.enabled=t,Ee.autoUpdate=n,Ee.needsUpdate=r,Ee.type=i}function Le(e){Wd(`WebGLRenderer: A WebGL context could not be created. Reason: `,e.statusMessage)}function Re(e){let t=e.target;t.removeEventListener(`dispose`,Re),ze(t)}function ze(e){Be(e),ge.remove(e)}function Be(e){let t=ge.get(e).programs;t!==void 0&&(t.forEach(function(e){Se.releaseProgram(e)}),e.isShaderMaterial&&Se.releaseShaderCache(e))}this.renderBufferDirect=function(e,t,n,r,i,a){t===null&&(t=W);let o=i.isMesh&&i.matrixWorld.determinantAffine()<0,s=nt(e,t,n,r,i);q.setMaterial(r,o);let c=n.index,l=1;if(r.wireframe===!0){if(c=be.getWireframeAttribute(n),c===void 0)return;l=2}let u=n.drawRange,d=n.attributes.position,f=u.start*l,p=(u.start+u.count)*l;a!==null&&(f=Math.max(f,a.start*l),p=Math.min(p,(a.start+a.count)*l)),c===null?d!=null&&(f=Math.max(f,0),p=Math.min(p,d.count)):(f=Math.max(f,0),p=Math.min(p,c.count));let m=p-f;if(m<0||m===1/0)return;Me.setup(i,r,s,n,c);let h,g=ke;if(c!==null&&(h=ye.get(c),g=Ae,g.setIndex(h)),i.isMesh)r.wireframe===!0?(q.setLineWidth(r.wireframeLinewidth*fe()),g.setMode(G.LINES)):g.setMode(G.TRIANGLES);else if(i.isLine){let e=r.linewidth;e===void 0&&(e=1),q.setLineWidth(e*fe()),i.isLineSegments?g.setMode(G.LINES):i.isLineLoop?g.setMode(G.LINE_LOOP):g.setMode(G.LINE_STRIP)}else i.isPoints?g.setMode(G.POINTS):i.isSprite&&g.setMode(G.TRIANGLES);if(i.isBatchedMesh){if(pe.get(`WEBGL_multi_draw`))g.renderMultiDraw(i._multiDrawStarts,i._multiDrawCounts,i._multiDrawCount);else{let e=i._multiDrawStarts,t=i._multiDrawCounts,n=i._multiDrawCount,a=c?ye.get(c).bytesPerElement:1,o=ge.get(r).currentProgram.getUniforms();for(let r=0;r<n;r++)o.setValue(G,`_gl_DrawID`,r),g.render(e[r]/a,t[r])}}else if(i.isInstancedMesh)g.renderInstances(f,m,i.count);else if(n.isInstancedBufferGeometry){let e=n._maxInstanceCount===void 0?1/0:n._maxInstanceCount,t=Math.min(n.instanceCount,e);g.renderInstances(f,m,t)}else g.render(f,m)};function Ve(e,t,n,r){D!==null&&e.isNodeMaterial&&D.setObject(r,e),se===!0&&J.setState(e,n,!1),e.transparent===!0&&e.side===2&&e.forceSinglePass===!1?(e.side=1,e.needsUpdate=!0,Qe(e,t,r),e.side=0,e.needsUpdate=!0,Qe(e,t,r),e.side=2):Qe(e,t,r)}this.compile=function(e,t,n=null){n===null&&(n=e),D!==null&&D.renderStart(e,t,n),x=Te.get(n),x.init(t),C.push(x),n.traverseVisible(function(e){e.isLight&&e.layers.test(t.layers)&&(x.pushLight(e),e.castShadow&&x.pushShadow(e))}),e!==n&&e.traverseVisible(function(e){e.isLight&&e.layers.test(t.layers)&&(x.pushLight(e),e.castShadow&&x.pushShadow(e))}),x.setupLights(),D!==null&&D.updateLights(x.state.lightsArray),ce=this.localClippingEnabled,se=J.init(this.clippingPlanes,ce),se===!0&&J.setGlobalState(this.clippingPlanes,t),D!==null&&Ee.render(x.state.shadowsArray,n,t);let r=new Set;return e.traverse(function(e){if(!(e.isMesh||e.isPoints||e.isLine||e.isSprite))return;let i=e.material;if(i){if(Array.isArray(i))for(let a=0;a<i.length;a++){let o=i[a];Ve(o,n,t,e),r.add(o)}else Ve(i,n,t,e),r.add(i)}}),x=C.pop(),D!==null&&D.renderEnd(),r},this.compileAsync=function(e,t,n=null){let r=this.compile(e,t,n);return new Promise(t=>{function n(){if(r.forEach(function(e){let t=ge.get(e).currentProgram;(t===void 0||t.isReady())&&r.delete(e)}),r.size===0){t(e);return}setTimeout(n,10)}pe.get(`KHR_parallel_shader_compile`)===null?setTimeout(n,10):n()})};let He=null;function Ue(e){He&&He(e)}function We(){Ke.stop()}function Ge(){Ke.start()}let Ke=new ov;Ke.setAnimationLoop(Ue),typeof self<`u`&&Ke.setContext(self),this.setAnimationLoop=function(e){He=e,Pe.setAnimationLoop(e),e===null?Ke.stop():Ke.start()},Pe.addEventListener(`sessionstart`,We),Pe.addEventListener(`sessionend`,Ge),this.render=function(e,t){if(t!==void 0&&t.isCamera!==!0){Wd(`WebGLRenderer.render: camera is not an instance of THREE.Camera.`);return}if(E===!0)return;D!==null&&D.renderStart(e,t);let n=Pe.enabled===!0&&Pe.isPresenting===!0,r=w!==null&&(N===null||n)&&w.begin(T,N);if(e.matrixWorldAutoUpdate===!0&&e.updateMatrixWorld(),t.parent===null&&t.matrixWorldAutoUpdate===!0&&t.updateMatrixWorld(),Pe.enabled===!0&&Pe.isPresenting===!0&&(w===null||w.isCompositing()===!1)&&(Pe.cameraAutoUpdate===!0&&Pe.updateCamera(t),t=Pe.getCamera()),e.isScene===!0&&e.onBeforeRender(T,e,t,N),x=Te.get(e,C.length),x.init(t),x.state.textureUnits=_e.getTextureUnits(),C.push(x),U.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),H.setFromProjectionMatrix(U,Fd,t.reversedDepth),ce=this.localClippingEnabled,se=J.init(this.clippingPlanes,ce),b=we.get(e,S.length),b.init(),S.push(b),Pe.enabled===!0&&Pe.isPresenting===!0){let e=T.xr.getDepthSensingMesh();e!==null&&qe(e,t,-1/0,T.sortObjects)}qe(e,t,0,T.sortObjects),b.finish(),D!==null&&D.updateLights(x.state.lightsArray),T.sortObjects===!0&&b.sort(V,re),de=Pe.enabled===!1||Pe.isPresenting===!1||Pe.hasDepthSensing()===!1,de&&De.addToRenderList(b,e),this.info.render.frame++,this.info.autoReset===!0&&this.info.reset(),se===!0&&J.beginShadows();let i=x.state.shadowsArray;if(Ee.render(i,e,t),se===!0&&J.endShadows(),(r&&w.hasRenderPass())===!1){let n=b.opaque,r=b.transmissive;if(x.setupLights(),t.isArrayCamera){let i=t.cameras;if(r.length>0)for(let t=0,a=i.length;t<a;t++){let a=i[t];Ye(n,r,e,a)}de&&De.render(e);for(let t=0,n=i.length;t<n;t++){let n=i[t];Je(b,e,n,n.viewport)}}else r.length>0&&Ye(n,r,e,t),de&&De.render(e),Je(b,e,t)}N!==null&&M===0&&(_e.updateMultisampleRenderTarget(N),_e.updateRenderTargetMipmap(N)),r&&w.end(T),e.isScene===!0&&e.onAfterRender(T,e,t),Me.resetDefaultState(),P=-1,F=null,C.pop(),C.length>0?(x=C[C.length-1],_e.setTextureUnits(x.state.textureUnits),se===!0&&J.setGlobalState(T.clippingPlanes,x.state.camera)):x=null,S.pop(),b=S.length>0?S[S.length-1]:null,D!==null&&D.renderEnd()};function qe(e,t,n,r){if(e.visible===!1)return;if(e.layers.test(t.layers)){if(e.isGroup)n=e.renderOrder;else if(e.isLOD)e.autoUpdate===!0&&e.update(t);else if(e.isLightProbeGrid)x.pushLightProbeGrid(e);else if(e.isLight)x.pushLight(e),e.castShadow&&x.pushShadow(e);else if(e.isSprite){if(!e.frustumCulled||e.intersectsFrustum(H)){r&&ue.setFromMatrixPosition(e.matrixWorld).applyMatrix4(U);let i=xe.update(e),a=e.material;a.visible&&b.push(e,i,a,n,ue.z,null,t)}}else if((e.isMesh||e.isLine||e.isPoints)&&(!e.frustumCulled||e.intersectsFrustum(H))){let i=xe.update(e),a=e.material;if(r&&(e.boundingSphere===void 0?(i.boundingSphere===null&&i.computeBoundingSphere(),ue.copy(i.boundingSphere.center)):(e.boundingSphere===null&&e.computeBoundingSphere(),ue.copy(e.boundingSphere.center)),ue.applyMatrix4(e.matrixWorld).applyMatrix4(U)),Array.isArray(a)){let r=i.groups;for(let o=0,s=r.length;o<s;o++){let s=r[o],c=a[s.materialIndex];c&&c.visible&&b.push(e,i,c,n,ue.z,s,t)}}else a.visible&&b.push(e,i,a,n,ue.z,null,t)}}let i=e.children;for(let e=0,a=i.length;e<a;e++)qe(i[e],t,n,r)}function Je(e,t,n,r){let{opaque:i,transmissive:a,transparent:o}=e;x.setupLightsView(n),se===!0&&J.setGlobalState(T.clippingPlanes,n),r&&q.viewport(I.copy(r)),i.length>0&&Xe(i,t,n),a.length>0&&Xe(a,t,n),o.length>0&&Xe(o,t,n),q.buffers.depth.setTest(!0),q.buffers.depth.setMask(!0),q.buffers.color.setMask(!0),q.setPolygonOffset(!1)}function Ye(e,t,n,r){if((n.isScene===!0?n.overrideMaterial:null)!==null)return;if(x.state.transmissionRenderTarget[r.id]===void 0){let e=pe.has(`EXT_color_buffer_half_float`)||pe.has(`EXT_color_buffer_float`);x.state.transmissionRenderTarget[r.id]=new Wf(1,1,{generateMipmaps:!0,type:e?Cu:gu,minFilter:hu,samples:Math.max(4,me.samples),stencilBuffer:i,resolveDepthBuffer:!1,resolveStencilBuffer:!1,storeMultisampledDepthBuffer:!1,storeMultisampledStencilBuffer:!1,colorSpace:jf.workingColorSpace})}let a=x.state.transmissionRenderTarget[r.id],o=r.viewport||I;a.setSize(o.z*T.transmissionResolutionScale,o.w*T.transmissionResolutionScale);let s=T.getRenderTarget(),c=T.getActiveCubeFace(),l=T.getActiveMipmapLevel();T.setRenderTarget(a),T.getClearColor(R),te=T.getClearAlpha(),te<1&&T.setClearColor(16777215,.5),T.clear(),de&&De.render(n);let u=T.toneMapping;T.toneMapping=0;let d=r.viewport;if(r.viewport!==void 0&&(r.viewport=void 0),x.setupLightsView(r),se===!0&&J.setGlobalState(T.clippingPlanes,r),Xe(e,n,r),_e.updateMultisampleRenderTarget(a),_e.updateRenderTargetMipmap(a),pe.has(`WEBGL_multisampled_render_to_texture`)===!1){let e=!1;for(let i=0,a=t.length;i<a;i++){let{object:a,geometry:o,material:s,group:c}=t[i];if(s.side===2&&a.layers.test(r.layers)){let t=s.side;s.side=1,s.needsUpdate=!0,Ze(a,n,r,o,s,c),s.side=t,s.needsUpdate=!0,e=!0}}e===!0&&(_e.updateMultisampleRenderTarget(a),_e.updateRenderTargetMipmap(a))}T.setRenderTarget(s,c,l),T.setClearColor(R,te),d!==void 0&&(r.viewport=d),T.toneMapping=u}function Xe(e,t,n){let r=t.isScene===!0?t.overrideMaterial:null;for(let i=0,a=e.length;i<a;i++){let a=e[i],{object:o,geometry:s,group:c}=a,l=a.material;l.allowOverride===!0&&r!==null&&(l=r),o.layers.test(n.layers)&&Ze(o,t,n,s,l,c)}}function Ze(e,t,n,r,i,a){D!==null&&i.isNodeMaterial&&D.setObject(e,i),e.onBeforeRender(T,t,n,r,i,a),e.modelViewMatrix.multiplyMatrices(n.matrixWorldInverse,e.matrixWorld),e.normalMatrix.getNormalMatrix(e.modelViewMatrix),i.onBeforeRender(T,t,n,r,e,a),i.transparent===!0&&i.side===2&&i.forceSinglePass===!1?(i.side=1,i.needsUpdate=!0,T.renderBufferDirect(n,t,r,i,e,a),i.side=0,i.needsUpdate=!0,T.renderBufferDirect(n,t,r,i,e,a),i.side=2):T.renderBufferDirect(n,t,r,i,e,a),e.onAfterRender(T,t,n,r,i,a)}function Qe(e,t,n){t.isScene!==!0&&(t=W);let r=ge.get(e),i=x.state.lights,a=x.state.shadowsArray,o=i.state.version,s=Se.getParameters(e,i.state,a,t,n,x.state.lightProbeGridArray),c=Se.getProgramCacheKey(s),l=r.programs;r.environment=e.isMeshStandardMaterial||e.isMeshLambertMaterial||e.isMeshPhongMaterial?t.environment:null,r.fog=t.fog;let u=e.isMeshStandardMaterial||e.isMeshLambertMaterial&&!e.envMap||e.isMeshPhongMaterial&&!e.envMap;r.envMap=ve.get(e.envMap||r.environment,u),r.envMapRotation=r.environment!==null&&e.envMap===null?t.environmentRotation:e.envMapRotation,l===void 0&&(e.addEventListener(`dispose`,Re),l=new Map,r.programs=l);let d=l.get(c);if(d!==void 0){if(r.currentProgram===d&&r.lightsStateVersion===o)return et(e,s),d}else s.uniforms=Se.getUniforms(e),D!==null&&e.isNodeMaterial&&D.build(e,n,s),e.onBeforeCompile(s,T),d=Se.acquireProgram(s,c),l.set(c,d),r.uniforms=s.uniforms;let f=r.uniforms;return(!e.isShaderMaterial&&!e.isRawShaderMaterial||e.clipping===!0)&&(f.clippingPlanes=J.uniform),et(e,s),r.needsLights=it(e),r.lightsStateVersion=o,r.needsLights&&(f.ambientLightColor.value=i.state.ambient,f.lightProbe.value=i.state.probe,f.sunLights.value=i.state.sun,f.sunLightShadows.value=i.state.sunShadow,f.directionalLights.value=i.state.directional,f.directionalLightShadows.value=i.state.directionalShadow,f.spotLights.value=i.state.spot,f.spotLightShadows.value=i.state.spotShadow,f.rectAreaLights.value=i.state.rectArea,f.ltc_1.value=i.state.rectAreaLTC1,f.ltc_2.value=i.state.rectAreaLTC2,f.pointLights.value=i.state.point,f.pointLightShadows.value=i.state.pointShadow,f.hemisphereLights.value=i.state.hemi,f.sunShadowMatrix.value=i.state.sunShadowMatrix,f.sunShadowCascade.value=i.state.sunShadowCascade,f.directionalShadowMatrix.value=i.state.directionalShadowMatrix,f.spotLightMatrix.value=i.state.spotLightMatrix,f.spotLightMap.value=i.state.spotLightMap,f.pointShadowMatrix.value=i.state.pointShadowMatrix),r.lightProbeGrid=x.state.lightProbeGridArray.length>0,r.currentProgram=d,r.uniformsList=null,d}function $e(e){if(e.uniformsList===null){let t=e.currentProgram.getUniforms();e.uniformsList=tb.seqWithValue(t.seq,e.uniforms)}return e.uniformsList}function et(e,t){let n=ge.get(e);n.outputColorSpace=t.outputColorSpace,n.batching=t.batching,n.batchingColor=t.batchingColor,n.instancing=t.instancing,n.instancingColor=t.instancingColor,n.instancingMorph=t.instancingMorph,n.skinning=t.skinning,n.morphTargets=t.morphTargets,n.morphNormals=t.morphNormals,n.morphColors=t.morphColors,n.morphTargetsCount=t.morphTargetsCount,n.numClippingPlanes=t.numClippingPlanes,n.numIntersection=t.numClipIntersection,n.vertexAlphas=t.vertexAlphas,n.vertexTangents=t.vertexTangents,n.toneMapping=t.toneMapping}function tt(e,t){if(e.length===0)return null;if(e.length===1)return e[0].texture===null?null:e[0];y.setFromMatrixPosition(t.matrixWorld);for(let t=0,n=e.length;t<n;t++){let n=e[t];if(n.texture!==null&&n.boundingBox.containsPoint(y))return n}return null}function nt(e,t,n,r,i){t.isScene!==!0&&(t=W),_e.resetTextureUnits();let a=t.fog,o=r.isMeshStandardMaterial||r.isMeshLambertMaterial||r.isMeshPhongMaterial?t.environment:null,s=N===null?T.outputColorSpace:N.isXRRenderTarget===!0?N.texture.colorSpace:jf.workingColorSpace,c=r.isMeshStandardMaterial||r.isMeshLambertMaterial&&!r.envMap||r.isMeshPhongMaterial&&!r.envMap,l=ve.get(r.envMap||o,c),u=r.vertexColors===!0&&!!n.attributes.color&&n.attributes.color.itemSize===4,d=!!n.attributes.tangent&&(!!r.normalMap||r.anisotropy>0),f=!!n.morphAttributes.position,p=!!n.morphAttributes.normal,m=!!n.morphAttributes.color,h=0;r.toneMapped&&(N===null||N.isXRRenderTarget===!0)&&(h=T.toneMapping);let g=n.morphAttributes.position||n.morphAttributes.normal||n.morphAttributes.color,_=g===void 0?0:g.length,v=ge.get(r),y=x.state.lights;if(se===!0&&(ce===!0||e!==F)){let t=e===F&&r.id===P;J.setState(r,e,t)}let b=!1;r.version===v.__version?v.needsLights&&v.lightsStateVersion!==y.state.version?b=!0:v.outputColorSpace===s?i.isBatchedMesh&&v.batching===!1||!i.isBatchedMesh&&v.batching===!0||i.isBatchedMesh&&v.batchingColor===!0&&i._colorsTexture===null||i.isBatchedMesh&&v.batchingColor===!1&&i._colorsTexture!==null||i.isInstancedMesh&&v.instancing===!1||!i.isInstancedMesh&&v.instancing===!0||i.isSkinnedMesh&&v.skinning===!1||!i.isSkinnedMesh&&v.skinning===!0||i.isInstancedMesh&&v.instancingColor===!0&&i.instanceColor===null||i.isInstancedMesh&&v.instancingColor===!1&&i.instanceColor!==null||i.isInstancedMesh&&v.instancingMorph===!0&&i.morphTexture===null||i.isInstancedMesh&&v.instancingMorph===!1&&i.morphTexture!==null?b=!0:v.envMap===l?r.fog===!0&&v.fog!==a||v.numClippingPlanes!==void 0&&(v.numClippingPlanes!==J.numPlanes||v.numIntersection!==J.numIntersection)?b=!0:v.vertexAlphas===u&&v.vertexTangents===d&&v.morphTargets===f&&v.morphNormals===p&&v.morphColors===m&&v.toneMapping===h&&v.morphTargetsCount===_?!!v.lightProbeGrid!=x.state.lightProbeGridArray.length>0&&(b=!0):b=!0:b=!0:b=!0:(b=!0,v.__version=r.version);let S=v.currentProgram;b===!0&&(S=Qe(r,t,i),D&&r.isNodeMaterial&&D.onUpdateProgram(r,S,v));let C=!1,w=!1,E=!1,O=S.getUniforms(),k=v.uniforms;if(q.useProgram(S.program)&&(C=!0,w=!0,E=!0),r.id!==P&&(P=r.id,w=!0),v.needsLights){let e=tt(x.state.lightProbeGridArray,i);v.lightProbeGrid!==e&&(v.lightProbeGrid=e,w=!0)}if(C||F!==e){q.buffers.depth.getReversed()&&e.reversedDepth!==!0&&(e._reversedDepth=!0,e.updateProjectionMatrix()),O.setValue(G,`projectionMatrix`,e.projectionMatrix),O.setValue(G,`viewMatrix`,e.matrixWorldInverse);let t=O.map.cameraPosition;t!==void 0&&t.setValue(G,le.setFromMatrixPosition(e.matrixWorld)),me.logarithmicDepthBuffer&&O.setValue(G,`logDepthBufFC`,2/(Math.log(e.far+1)/Math.LN2)),(r.isMeshPhongMaterial||r.isMeshToonMaterial||r.isMeshLambertMaterial||r.isMeshBasicMaterial||r.isMeshStandardMaterial||r.isShaderMaterial)&&O.setValue(G,`isOrthographic`,e.isOrthographicCamera===!0),F!==e&&(F=e,w=!0,E=!0)}if(v.needsLights&&(y.state.sunShadowMap.length>0&&O.setValue(G,`sunShadowMap`,y.state.sunShadowMap,_e),y.state.directionalShadowMap.length>0&&O.setValue(G,`directionalShadowMap`,y.state.directionalShadowMap,_e),y.state.spotShadowMap.length>0&&O.setValue(G,`spotShadowMap`,y.state.spotShadowMap,_e),y.state.pointShadowMap.length>0&&O.setValue(G,`pointShadowMap`,y.state.pointShadowMap,_e)),i.isSkinnedMesh){O.setOptional(G,i,`bindMatrix`),O.setOptional(G,i,`bindMatrixInverse`);let e=i.skeleton;e&&(e.boneTexture===null&&e.computeBoneTexture(),O.setValue(G,`boneTexture`,e.boneTexture,_e))}i.isBatchedMesh&&(O.setOptional(G,i,`batchingTexture`),O.setValue(G,`batchingTexture`,i._matricesTexture,_e),O.setOptional(G,i,`batchingIdTexture`),O.setValue(G,`batchingIdTexture`,i._indirectTexture,_e),O.setOptional(G,i,`batchingColorTexture`),i._colorsTexture!==null&&O.setValue(G,`batchingColorTexture`,i._colorsTexture,_e));let A=n.morphAttributes;if((A.position!==void 0||A.normal!==void 0||A.color!==void 0)&&Oe.update(i,n,S),(w||v.receiveShadow!==i.receiveShadow)&&(v.receiveShadow=i.receiveShadow,O.setValue(G,`receiveShadow`,i.receiveShadow)),(r.isMeshStandardMaterial||r.isMeshLambertMaterial||r.isMeshPhongMaterial)&&r.envMap===null&&t.environment!==null&&(k.envMapIntensity.value=t.environmentIntensity),k.dfgLUT!==void 0&&(k.dfgLUT.value=Sx()),w){if(O.setValue(G,`toneMappingExposure`,T.toneMappingExposure),v.needsLights&&rt(k,E),a&&r.fog===!0&&Ce.refreshFogUniforms(k,a),Ce.refreshMaterialUniforms(k,r,B,ne,x.state.transmissionRenderTarget[e.id]),v.needsLights&&v.lightProbeGrid){let e=v.lightProbeGrid;k.probesSH.value=e.texture,k.probesMin.value.copy(e.boundingBox.min),k.probesMax.value.copy(e.boundingBox.max),k.probesResolution.value.copy(e.resolution)}tb.upload(G,$e(v),k,_e)}if(r.isShaderMaterial&&r.uniformsNeedUpdate===!0&&(tb.upload(G,$e(v),k,_e),r.uniformsNeedUpdate=!1),r.isSpriteMaterial&&O.setValue(G,`center`,i.center),O.setValue(G,`modelViewMatrix`,i.modelViewMatrix),O.setValue(G,`normalMatrix`,i.normalMatrix),O.setValue(G,`modelMatrix`,i.matrixWorld),r.uniformsGroups!==void 0){let e=r.uniformsGroups;for(let t=0,n=e.length;t<n;t++){let n=e[t];Ne.update(n,S),Ne.bind(n,S)}}return S}function rt(e,t){e.ambientLightColor.needsUpdate=t,e.lightProbe.needsUpdate=t,e.sunLights.needsUpdate=t,e.sunLightShadows.needsUpdate=t,e.directionalLights.needsUpdate=t,e.directionalLightShadows.needsUpdate=t,e.pointLights.needsUpdate=t,e.pointLightShadows.needsUpdate=t,e.spotLights.needsUpdate=t,e.spotLightShadows.needsUpdate=t,e.rectAreaLights.needsUpdate=t,e.hemisphereLights.needsUpdate=t}function it(e){return e.isMeshLambertMaterial||e.isMeshToonMaterial||e.isMeshPhongMaterial||e.isMeshStandardMaterial||e.isShadowMaterial||e.isShaderMaterial&&e.lights===!0}this.getActiveCubeFace=function(){return j},this.getActiveMipmapLevel=function(){return M},this.getRenderTarget=function(){return N},this.setRenderTargetTextures=function(e,t,n){let r=ge.get(e);r.__autoAllocateDepthBuffer=e.resolveDepthBuffer===!1,r.__autoAllocateDepthBuffer===!1&&(r.__useRenderToTexture=!1),ge.get(e.texture).__webglTexture=t,ge.get(e.depthTexture).__webglTexture=r.__autoAllocateDepthBuffer?void 0:n,r.__hasExternalTextures=!0},this.setRenderTargetFramebuffer=function(e,t){let n=ge.get(e);n.__webglFramebuffer=t,n.__useDefaultFramebuffer=t===void 0},this.setRenderTarget=function(e,t=0,n=0){N=e,j=t,M=n;let r=null,i=!1,a=!1;if(e){let o=ge.get(e);if(o.__useDefaultFramebuffer!==void 0){q.bindFramebuffer(G.FRAMEBUFFER,o.__webglFramebuffer),I.copy(e.viewport),L.copy(e.scissor),ee=e.scissorTest,q.viewport(I),q.scissor(L),q.setScissorTest(ee),P=-1;return}if(o.__webglFramebuffer===void 0)_e.setupRenderTarget(e);else if(o.__hasExternalTextures)_e.rebindTextures(e,ge.get(e.texture).__webglTexture,ge.get(e.depthTexture).__webglTexture);else if(e.depthBuffer){let t=e.depthTexture;if(o.__boundDepthTexture!==t){if(t!==null&&ge.has(t)&&(e.width!==t.image.width||e.height!==t.image.height))throw Error(`THREE.WebGLRenderer: Attached DepthTexture is initialized to the incorrect size.`);_e.setupDepthRenderbuffer(e)}}let s=e.texture;(s.isData3DTexture||s.isDataArrayTexture||s.isCompressedArrayTexture)&&(a=!0);let c=ge.get(e).__webglFramebuffer;e.isWebGLCubeRenderTarget?(r=Array.isArray(c[t])?c[t][n]:c[t],i=!0):r=e.samples>0&&_e.useMultisampledRTT(e)===!1?ge.get(e).__webglMultisampledFramebuffer:Array.isArray(c)?c[n]:c,I.copy(e.viewport),L.copy(e.scissor),ee=e.scissorTest}else I.copy(ie).multiplyScalar(B).floor(),L.copy(ae).multiplyScalar(B).floor(),ee=oe;if(n!==0&&(r=O),q.bindFramebuffer(G.FRAMEBUFFER,r)&&q.drawBuffers(e,r),q.viewport(I),q.scissor(L),q.setScissorTest(ee),i){let r=ge.get(e.texture);G.framebufferTexture2D(G.FRAMEBUFFER,G.COLOR_ATTACHMENT0,G.TEXTURE_CUBE_MAP_POSITIVE_X+t,r.__webglTexture,n)}else if(a){let r=t;for(let t=0;t<e.textures.length;t++){let i=ge.get(e.textures[t]);G.framebufferTextureLayer(G.FRAMEBUFFER,G.COLOR_ATTACHMENT0+t,i.__webglTexture,n,r)}}else if(e!==null&&n!==0){let t=ge.get(e.texture);G.framebufferTexture2D(G.FRAMEBUFFER,G.COLOR_ATTACHMENT0,G.TEXTURE_2D,t.__webglTexture,n)}P=-1};function at(e){let t=ge.get(e);return(t.__readFormat!==e.format||t.__readType!==e.type)&&(t.__readFormat=e.format,t.__readType=e.type,t.__formatReadable=me.textureFormatReadable(e.format),t.__typeReadable=me.textureTypeReadable(e.type)),t}this.readRenderTargetPixels=function(e,t,n,r,i,a,o,s=0){if(!(e&&e.isWebGLRenderTarget)){Wd(`WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.`);return}let c=ge.get(e).__webglFramebuffer;if(e.isWebGLCubeRenderTarget&&o!==void 0&&(c=c[o]),c){q.bindFramebuffer(G.FRAMEBUFFER,c);try{let o=e.textures[s],c=o.format,l=o.type;e.textures.length>1&&G.readBuffer(G.COLOR_ATTACHMENT0+s);let u=at(o);if(u.__formatReadable===!1){Wd(`WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.`);return}if(u.__typeReadable===!1){Wd(`WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.`);return}t>=0&&t<=e.width-r&&n>=0&&n<=e.height-i&&G.readPixels(t,n,r,i,je.convert(c),je.convert(l),a)}finally{let e=N===null?null:ge.get(N).__webglFramebuffer;q.bindFramebuffer(G.FRAMEBUFFER,e)}}},this.readRenderTargetPixelsAsync=async function(e,t,n,r,i,a,o,s=0){if(!(e&&e.isWebGLRenderTarget))throw Error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.`);let c=ge.get(e).__webglFramebuffer;if(e.isWebGLCubeRenderTarget&&o!==void 0&&(c=c[o]),c){if(t>=0&&t<=e.width-r&&n>=0&&n<=e.height-i){q.bindFramebuffer(G.FRAMEBUFFER,c);let o=e.textures[s],l=o.format,u=o.type;e.textures.length>1&&G.readBuffer(G.COLOR_ATTACHMENT0+s);let d=at(o);if(d.__formatReadable===!1)throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.`);if(d.__typeReadable===!1)throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.`);let f=G.createBuffer();G.bindBuffer(G.PIXEL_PACK_BUFFER,f),G.bufferData(G.PIXEL_PACK_BUFFER,a.byteLength,G.STREAM_READ),G.readPixels(t,n,r,i,je.convert(l),je.convert(u),0),G.bindBuffer(G.PIXEL_PACK_BUFFER,null);let p=N===null?null:ge.get(N).__webglFramebuffer;q.bindFramebuffer(G.FRAMEBUFFER,p);let m=G.fenceSync(G.SYNC_GPU_COMMANDS_COMPLETE,0);return G.flush(),await Kd(G,m,4),G.bindBuffer(G.PIXEL_PACK_BUFFER,f),G.getBufferSubData(G.PIXEL_PACK_BUFFER,0,a),G.bindBuffer(G.PIXEL_PACK_BUFFER,null),G.deleteBuffer(f),G.deleteSync(m),a}throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: requested read bounds are out of range.`)}},this.copyFramebufferToTexture=function(e,t=null,n=0){let r=2**-n,i=Math.floor(e.image.width*r),a=Math.floor(e.image.height*r),o=t===null?0:t.x,s=t===null?0:t.y;_e.setTexture2D(e,0),G.copyTexSubImage2D(G.TEXTURE_2D,n,0,0,o,s,i,a),q.unbindTexture()},this.copyTextureToTexture=function(e,t,n=null,r=null,i=0,a=0){let o,s,c,l,u,d,f,p,m,h=e.isCompressedTexture?e.mipmaps[a]:e.image;if(n!==null)o=n.max.x-n.min.x,s=n.max.y-n.min.y,c=n.isBox3?n.max.z-n.min.z:1,l=n.min.x,u=n.min.y,d=n.isBox3?n.min.z:0;else{let t=2**-i;o=Math.floor(h.width*t),s=Math.floor(h.height*t),c=e.isDataArrayTexture?h.depth:e.isData3DTexture?Math.floor(h.depth*t):1,l=0,u=0,d=0}r===null?(f=0,p=0,m=0):(f=r.x,p=r.y,m=r.z);let g=je.convert(t.format),_=je.convert(t.type),v;t.isData3DTexture?(_e.setTexture3D(t,0),v=G.TEXTURE_3D):t.isDataArrayTexture||t.isCompressedArrayTexture?(_e.setTexture2DArray(t,0),v=G.TEXTURE_2D_ARRAY):(_e.setTexture2D(t,0),v=G.TEXTURE_2D),q.activeTexture(G.TEXTURE0),q.pixelStorei(G.UNPACK_FLIP_Y_WEBGL,t.flipY),q.pixelStorei(G.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t.premultiplyAlpha),q.pixelStorei(G.UNPACK_ALIGNMENT,t.unpackAlignment);let y=q.getParameter(G.UNPACK_ROW_LENGTH),b=q.getParameter(G.UNPACK_IMAGE_HEIGHT),x=q.getParameter(G.UNPACK_SKIP_PIXELS),S=q.getParameter(G.UNPACK_SKIP_ROWS),C=q.getParameter(G.UNPACK_SKIP_IMAGES);q.pixelStorei(G.UNPACK_ROW_LENGTH,h.width),q.pixelStorei(G.UNPACK_IMAGE_HEIGHT,h.height),q.pixelStorei(G.UNPACK_SKIP_PIXELS,l),q.pixelStorei(G.UNPACK_SKIP_ROWS,u),q.pixelStorei(G.UNPACK_SKIP_IMAGES,d);let w=e.isDataArrayTexture||e.isData3DTexture,T=t.isDataArrayTexture||t.isData3DTexture;if(e.isDepthTexture){let n=ge.get(e),r=ge.get(t),h=ge.get(n.__renderTarget),g=ge.get(r.__renderTarget);q.bindFramebuffer(G.READ_FRAMEBUFFER,h.__webglFramebuffer),q.bindFramebuffer(G.DRAW_FRAMEBUFFER,g.__webglFramebuffer);for(let n=0;n<c;n++)w&&(G.framebufferTextureLayer(G.READ_FRAMEBUFFER,G.COLOR_ATTACHMENT0,ge.get(e).__webglTexture,i,d+n),G.framebufferTextureLayer(G.DRAW_FRAMEBUFFER,G.COLOR_ATTACHMENT0,ge.get(t).__webglTexture,a,m+n)),G.blitFramebuffer(l,u,o,s,f,p,o,s,G.DEPTH_BUFFER_BIT,G.NEAREST);q.bindFramebuffer(G.READ_FRAMEBUFFER,null),q.bindFramebuffer(G.DRAW_FRAMEBUFFER,null)}else if(i!==0||e.isRenderTargetTexture||ge.has(e)){let n=ge.get(e),r=ge.get(t);q.bindFramebuffer(G.READ_FRAMEBUFFER,k),q.bindFramebuffer(G.DRAW_FRAMEBUFFER,A);for(let e=0;e<c;e++)w?G.framebufferTextureLayer(G.READ_FRAMEBUFFER,G.COLOR_ATTACHMENT0,n.__webglTexture,i,d+e):G.framebufferTexture2D(G.READ_FRAMEBUFFER,G.COLOR_ATTACHMENT0,G.TEXTURE_2D,n.__webglTexture,i),T?G.framebufferTextureLayer(G.DRAW_FRAMEBUFFER,G.COLOR_ATTACHMENT0,r.__webglTexture,a,m+e):G.framebufferTexture2D(G.DRAW_FRAMEBUFFER,G.COLOR_ATTACHMENT0,G.TEXTURE_2D,r.__webglTexture,a),i===0?T?G.copyTexSubImage3D(v,a,f,p,m+e,l,u,o,s):G.copyTexSubImage2D(v,a,f,p,l,u,o,s):G.blitFramebuffer(l,u,o,s,f,p,o,s,G.COLOR_BUFFER_BIT,G.NEAREST);q.bindFramebuffer(G.READ_FRAMEBUFFER,null),q.bindFramebuffer(G.DRAW_FRAMEBUFFER,null)}else T?e.isDataTexture||e.isData3DTexture?G.texSubImage3D(v,a,f,p,m,o,s,c,g,_,h.data):t.isCompressedArrayTexture?G.compressedTexSubImage3D(v,a,f,p,m,o,s,c,g,h.data):G.texSubImage3D(v,a,f,p,m,o,s,c,g,_,h):e.isDataTexture?G.texSubImage2D(G.TEXTURE_2D,a,f,p,o,s,g,_,h.data):e.isCompressedTexture?G.compressedTexSubImage2D(G.TEXTURE_2D,a,f,p,h.width,h.height,g,h.data):G.texSubImage2D(G.TEXTURE_2D,a,f,p,o,s,g,_,h);q.pixelStorei(G.UNPACK_ROW_LENGTH,y),q.pixelStorei(G.UNPACK_IMAGE_HEIGHT,b),q.pixelStorei(G.UNPACK_SKIP_PIXELS,x),q.pixelStorei(G.UNPACK_SKIP_ROWS,S),q.pixelStorei(G.UNPACK_SKIP_IMAGES,C),a===0&&t.generateMipmaps&&G.generateMipmap(v),q.unbindTexture()},this.initRenderTarget=function(e){ge.get(e).__webglFramebuffer===void 0&&_e.setupRenderTarget(e)},this.initTexture=function(e){e.isCubeTexture?_e.setTextureCube(e,0):e.isData3DTexture?_e.setTexture3D(e,0):e.isDataArrayTexture||e.isCompressedArrayTexture?_e.setTexture2DArray(e,0):_e.setTexture2D(e,0),q.unbindTexture()},this.resetState=function(){j=0,M=0,N=null,q.reset(),Me.reset()},typeof __THREE_DEVTOOLS__<`u`&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(`observe`,{detail:this}))}get coordinateSystem(){return Fd}get outputColorSpace(){return this._outputColorSpace}set outputColorSpace(e){this._outputColorSpace=e;let t=this.getContext();t.drawingBufferColorSpace=jf._getDrawingBufferColorSpace(e),t.unpackColorSpace=jf._getUnpackColorSpace()}},wx={VALIDATION_ERROR:`VALIDATION_ERROR`,INVALID_STATE:`INVALID_STATE`,ENVIRONMENT_ERROR:`ENVIRONMENT_ERROR`,INVALID_CONFIG:`INVALID_CONFIG`,ENCODING_ERROR:`ENCODING_ERROR`,UNKNOWN_ERROR:`UNKNOWN_ERROR`},Tx=class extends Error{code;context;originalError;constructor(e,t=wx.UNKNOWN_ERROR,n){super(e),this.name=`VisualizationError`,this.code=t,this.context=n?.context,this.originalError=n?.originalError,n?.originalError&&(this.cause=n.originalError)}},Ex=new class{debug(){}info(){}warn(){}error(){}};function Dx(){return Ex}var Ox={studio:{toneMapping:4,toneMappingExposure:1,envMapIntensity:1,environmentIntensity:.85,hemisphereIntensity:.5,ambientIntensity:.25,cullBackfaces:!1,ambientOcclusion:!0,sunlightIntensity:1.6},technical:{toneMapping:7,toneMappingExposure:1,envMapIntensity:.55,environmentIntensity:.6,hemisphereIntensity:.25,ambientIntensity:.15,cullBackfaces:!1,ambientOcclusion:!0,sunlightIntensity:2.2},showcase:{toneMapping:4,toneMappingExposure:1.15,envMapIntensity:1.4,environmentIntensity:1,hemisphereIntensity:.2,ambientIntensity:.1,cullBackfaces:!1,ambientOcclusion:!0,sunlightIntensity:2.6},arctic:{toneMapping:7,toneMappingExposure:1.05,envMapIntensity:.85,environmentIntensity:1.1,hemisphereIntensity:.3,ambientIntensity:.15,cullBackfaces:!1,ambientOcclusion:!0,sunlightIntensity:2,materialOverride:{color:15659509,metalness:0,roughness:.75}},xray:{toneMapping:7,toneMappingExposure:1.3,envMapIntensity:.4,environmentIntensity:.8,hemisphereIntensity:.6,ambientIntensity:.6,cullBackfaces:!1,ambientOcclusion:!1,sunlightIntensity:.6,materialOverride:{color:10470632,metalness:0,roughness:.9,opacity:.28,depthWrite:!1,side:2}},lineart:{toneMapping:7,toneMappingExposure:1,envMapIntensity:1,environmentIntensity:1,hemisphereIntensity:.6,ambientIntensity:3.2,cullBackfaces:!1,ambientOcclusion:!1,sunlightIntensity:0,requiresEdges:!0,materialOverride:{color:16251130,metalness:0,roughness:1}},wireframe:{toneMapping:7,toneMappingExposure:1,envMapIntensity:1,environmentIntensity:1,hemisphereIntensity:.4,ambientIntensity:2,cullBackfaces:!1,ambientOcclusion:!1,sunlightIntensity:0,materialOverride:{color:2830648,metalness:0,roughness:1,wireframe:!0,side:2}}},kx=`selvaEnvMapIntensity`;function Ax(e,t){return e+(1-e)*Math.min(1,Math.max(0,t))}function jx(e){let t=Ox[e];return{envMapIntensity:t.envMapIntensity,cullBackfaces:t.cullBackfaces}}function Mx(e){if(!e||typeof e!=`string`)return Dx().warn(`Invalid color input: ${e}, using white`),new Q(16777215);let t=e.trim();if(/^#?[0-9A-Fa-f]{6}$/.test(t))try{return new Q(t.startsWith(`#`)?t:`#${t}`)}catch{return Dx().warn(`Invalid hex color: ${e}, using white`),new Q(16777215)}if(t.includes(`,`)){let e=t.split(`,`).map(e=>parseInt(e.trim(),10));if(e.length===3&&e.every(e=>!isNaN(e)&&e>=0&&e<=255))return new Q(e[0]/255,e[1]/255,e[2]/255)}let n=t.toLowerCase();return n in Q.NAMES?new Q(Q.NAMES[n]):(Dx().warn(`Invalid color string: ${e}, using white`),new Q(16777215))}function Nx(e,t,n=`z`){e.forEach(e=>{e.position[n]-=t})}function Px(e){let t=new Wp;return e.length===0||e.forEach(e=>{e.updateMatrixWorld(!0);let n=new Wp().setFromObject(e);t.union(n)}),t}var Fx=new Set;function Ix(e){return e?!Fx.has(e):!1}var Lx=new Set,Rx=1;function zx(e){let t=Math.max(1,e);if(t!==Rx){Rx=t;for(let e of Lx)e(t)}}function Bx(e){return Lx.add(e),e(Rx),()=>Lx.delete(e)}function Vx(e){if(Ix(e)){for(let[t,n]of Object.entries(e))t!==`envMap`&&n instanceof Vf&&n.dispose();e.dispose()}}function Hx(e){e&&(Array.isArray(e)?e.forEach(Vx):Vx(e))}function Ux(e,t={}){let{materials:n=!0}=t;e.traverse(e=>{let t=e;(t.geometry||t.material)&&(t.geometry&&t.geometry?.dispose(),n&&Hx(t.material))})}var Wx=new WeakMap,Gx=new WeakMap,Kx=new Set;function qx(e){let t=e.userData?.members;return!Array.isArray(t)||t.length===0||t.some(e=>e.indexStart==null||e.indexCount==null)?null:t}function Jx(e){let t=Wx.get(e);return t||(t={base:Array.isArray(e.material)?e.material[0]:e.material,hidden:Kx,highlight:null},Wx.set(e,t)),t}function Yx(e,t,n){let{geometry:r}=e;if(r.clearGroups(),n.hidden.size===0&&!n.highlight){e.material=n.base,Wx.delete(e);return}let i=-1,a=0,o=0,s=()=>{i>=0&&r.addGroup(i,a-i,o),i=-1};for(let e=0;e<t.length;e++){if(n.hidden.has(e)){s();continue}let{indexStart:r,indexCount:c}=t[e],l=+(n.highlight?.index===e);(i<0||l!==o||r!==a)&&(s(),i=r,o=l),a=r+c}s(),e.material=n.highlight?[n.base,n.highlight.material]:[n.base]}function Xx(e,t){let n=qx(e);if(!n)return;let r=Jx(e);t(r),Yx(e,n,r),Gx.get(e)?.forEach(e=>e())}function Zx(e){return Wx.get(e)?.hidden??Kx}function Qx(e,t){let n=Zx(e);n.size===t.size&&[...t].every(e=>n.has(e))||Xx(e,e=>{e.hidden=new Set(t)})}function $x(e){return Wx.get(e)?.base??(Array.isArray(e.material)?e.material[0]:e.material)}function eS(e,t,n){Xx(e,e=>{e.highlight={index:t,material:n}})}function tS(e){Wx.get(e)?.highlight&&Xx(e,e=>{e.highlight=null})}function nS(e,t){let n=Gx.get(e);return n||Gx.set(e,n=new Set),n.add(t),()=>n.delete(t)}var rS=new Wp,iS=new Z,aS=class extends w_{constructor(){super(),this.isLineSegmentsGeometry=!0,this.type=`LineSegmentsGeometry`,this.setIndex([0,2,1,2,3,1,2,4,3,4,5,3,4,6,5,6,7,5]),this.setAttribute(`position`,new gm([-1,2,0,1,2,0,-1,1,0,1,1,0,-1,0,0,1,0,0,-1,-1,0,1,-1,0],3)),this.setAttribute(`uv`,new gm([-1,2,1,2,-1,1,1,1,-1,-1,1,-1,-1,-2,1,-2],2))}applyMatrix4(e){let t=this.attributes.instanceStart,n=this.attributes.instanceEnd;return t!==void 0&&(t.applyMatrix4(e),n.applyMatrix4(e),t.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this}setPositions(e){let t;e instanceof Float32Array?t=e:Array.isArray(e)&&(t=new Float32Array(e));let n=new U_(t,6,1);return this.setAttribute(`instanceStart`,new jm(n,3,0)),this.setAttribute(`instanceEnd`,new jm(n,3,3)),this.instanceCount=this.attributes.instanceStart.count,this.computeBoundingBox(),this.computeBoundingSphere(),this}setColors(e){let t;e instanceof Float32Array?t=e:Array.isArray(e)&&(t=new Float32Array(e));let n=new U_(t,6,1);return this.setAttribute(`instanceColorStart`,new jm(n,3,0)),this.setAttribute(`instanceColorEnd`,new jm(n,3,3)),this}fromWireframeGeometry(e){return this.setPositions(e.attributes.position.array),this}fromEdgesGeometry(e){return this.setPositions(e.attributes.position.array),this}fromMesh(e){return this.fromWireframeGeometry(new ug(e.geometry)),this}fromLineSegments(e){let t=e.geometry;return this.setPositions(t.attributes.position.array),this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new Wp);let e=this.attributes.instanceStart,t=this.attributes.instanceEnd;e!==void 0&&t!==void 0&&(this.boundingBox.setFromBufferAttribute(e),rS.setFromBufferAttribute(t),this.boundingBox.union(rS))}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new bm),this.boundingBox===null&&this.computeBoundingBox();let e=this.attributes.instanceStart,t=this.attributes.instanceEnd;if(e!==void 0&&t!==void 0){let n=this.boundingSphere.center;this.boundingBox.getCenter(n);let r=0;for(let i=0,a=e.count;i<a;i++)iS.fromBufferAttribute(e,i),r=Math.max(r,n.distanceToSquared(iS)),iS.fromBufferAttribute(t,i),r=Math.max(r,n.distanceToSquared(iS));this.boundingSphere.radius=Math.sqrt(r),isNaN(this.boundingSphere.radius)&&console.error(`THREE.LineSegmentsGeometry.computeBoundingSphere(): Computed radius is NaN. The instanced position data is likely to have NaN values.`,this)}}toJSON(){}};$.line={worldUnits:{value:1},linewidth:{value:1},resolution:{value:new X},dashOffset:{value:0},dashScale:{value:1},dashSize:{value:1},gapSize:{value:1}},lv.line={uniforms:_g.merge([$.common,$.fog,$.line]),vertexShader:`
4225
+ }`,mx=class{constructor(){this.texture=null,this.mesh=null,this.depthNear=0,this.depthFar=0}init(e,t){if(this.texture===null){let n=new tg(e.texture);(e.depthNear!==t.depthNear||e.depthFar!==t.depthFar)&&(this.depthNear=e.depthNear,this.depthFar=e.depthFar),this.texture=n}}getMesh(e){if(this.texture!==null&&this.mesh===null){let t=e.cameras[0].viewport,n=new bg({vertexShader:fx,fragmentShader:px,uniforms:{depthColor:{value:this.texture},depthWidth:{value:t.z},depthHeight:{value:t.w}}});this.mesh=new _h(new lg(20,20),n)}return this.mesh}reset(){this.texture=null,this.mesh=null}getDepthTexture(){return this.texture}},hx=class extends Jd{constructor(e,t){super();let n=this,r=null,i=1,a=null,o=`local-floor`,s=1,c=null,l=null,u=null,d=null,f=null,p=null,m=typeof XRWebGLBinding<`u`,h=new mx,g={},_=t.getContextAttributes(),v=null,y=null,b=[],x=[],S=new X,C=null,w=null,T=new __;T.viewport=new Hf;let E=new __;E.viewport=new Hf;let D=[T,E],O=new O_,k=null,A=null;this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(e){let t=b[e];return t===void 0&&(t=new Cp,b[e]=t),t.getTargetRaySpace()},this.getControllerGrip=function(e){let t=b[e];return t===void 0&&(t=new Cp,b[e]=t),t.getGripSpace()},this.getHand=function(e){let t=b[e];return t===void 0&&(t=new Cp,b[e]=t),t.getHandSpace()};function j(e){let t=x.indexOf(e.inputSource);if(t===-1)return;let n=b[t];n!==void 0&&(n.update(e.inputSource,e.frame,c||a),n.dispatchEvent({type:e.type,data:e.inputSource}))}function M(){r.removeEventListener(`select`,j),r.removeEventListener(`selectstart`,j),r.removeEventListener(`selectend`,j),r.removeEventListener(`squeeze`,j),r.removeEventListener(`squeezestart`,j),r.removeEventListener(`squeezeend`,j),r.removeEventListener(`end`,M),r.removeEventListener(`inputsourceschange`,N);for(let e=0;e<b.length;e++){let t=x[e];t!==null&&(x[e]=null,b[e].disconnect(t))}k=null,A=null,h.reset();for(let e in g)delete g[e];if(e.setRenderTarget(v),f=null,d=null,u=null,r=null,y=null,z.stop(),n.isPresenting=!1,e.setPixelRatio(C),e.setSize(S.width,S.height,!1),w!==null){let e=w.camera;e.fov=w.fov,e.zoom=w.zoom,e.updateProjectionMatrix(),w=null}n.dispatchEvent({type:`sessionend`})}this.setFramebufferScaleFactor=function(e){i=e,n.isPresenting===!0&&Ud(`WebXRManager: Cannot change framebuffer scale while presenting.`)},this.setReferenceSpaceType=function(e){o=e,n.isPresenting===!0&&Ud(`WebXRManager: Cannot change reference space type while presenting.`)},this.getReferenceSpace=function(){return c||a},this.setReferenceSpace=function(e){c=e},this.getBaseLayer=function(){return d===null?f:d},this.getBinding=function(){return u===null&&m&&(u=new XRWebGLBinding(r,t)),u},this.getFrame=function(){return p},this.getSession=function(){return r},this.setSession=async function(l){if(r=l,r!==null){if(v=e.getRenderTarget(),r.addEventListener(`select`,j),r.addEventListener(`selectstart`,j),r.addEventListener(`selectend`,j),r.addEventListener(`squeeze`,j),r.addEventListener(`squeezestart`,j),r.addEventListener(`squeezeend`,j),r.addEventListener(`end`,M),r.addEventListener(`inputsourceschange`,N),_.xrCompatible!==!0&&await t.makeXRCompatible(),C=e.getPixelRatio(),e.getSize(S),m&&`createProjectionLayer`in XRWebGLBinding.prototype){let n=null,a=null,o=null;_.depth&&(o=_.stencil?t.DEPTH24_STENCIL8:t.DEPTH_COMPONENT24,n=_.stencil?Nu:Mu,a=_.stencil?Eu:xu);let s={colorFormat:t.RGBA8,depthFormat:o,scaleFactor:i};u=this.getBinding(),d=u.createProjectionLayer(s),r.updateRenderState({layers:[d]}),e.setPixelRatio(1),e.setSize(d.textureWidth,d.textureHeight,!1),y=new Wf(d.textureWidth,d.textureHeight,{format:ju,type:gu,depthTexture:new $h(d.textureWidth,d.textureHeight,a,void 0,void 0,void 0,void 0,void 0,void 0,n),stencilBuffer:_.stencil,colorSpace:e.outputColorSpace,samples:_.antialias?4:0,resolveDepthBuffer:d.ignoreDepthValues===!1,resolveStencilBuffer:d.ignoreDepthValues===!1,storeMultisampledDepthBuffer:d.ignoreDepthValues===!1,storeMultisampledStencilBuffer:d.ignoreDepthValues===!1})}else{let n={antialias:_.antialias,alpha:!0,depth:_.depth,stencil:_.stencil,framebufferScaleFactor:i};f=new XRWebGLLayer(r,t,n),r.updateRenderState({baseLayer:f}),e.setPixelRatio(1),e.setSize(f.framebufferWidth,f.framebufferHeight,!1),y=new Wf(f.framebufferWidth,f.framebufferHeight,{format:ju,type:gu,colorSpace:e.outputColorSpace,stencilBuffer:_.stencil,resolveDepthBuffer:f.ignoreDepthValues===!1,resolveStencilBuffer:f.ignoreDepthValues===!1,storeMultisampledDepthBuffer:f.ignoreDepthValues===!1,storeMultisampledStencilBuffer:f.ignoreDepthValues===!1})}y.isXRRenderTarget=!0,this.setFoveation(s),c=null,a=await r.requestReferenceSpace(o),z.setContext(r),z.start(),n.isPresenting=!0,n.dispatchEvent({type:`sessionstart`})}},this.getEnvironmentBlendMode=function(){if(r!==null)return r.environmentBlendMode},this.getDepthTexture=function(){return h.getDepthTexture()};function N(e){for(let t=0;t<e.removed.length;t++){let n=e.removed[t],r=x.indexOf(n);r>=0&&(x[r]=null,b[r].disconnect(n))}for(let t=0;t<e.added.length;t++){let n=e.added[t],r=x.indexOf(n);if(r===-1){for(let e=0;e<b.length;e++)if(e>=x.length){x.push(n),r=e;break}else if(x[e]===null){x[e]=n,r=e;break}if(r===-1)break}let i=b[r];i&&i.connect(n)}}let P=new Z,F=new Z;function I(e,t,n){P.setFromMatrixPosition(t.matrixWorld),F.setFromMatrixPosition(n.matrixWorld);let r=P.distanceTo(F),i=t.projectionMatrix.elements,a=n.projectionMatrix.elements,o=i[14]/(i[10]-1),s=i[14]/(i[10]+1),c=(i[9]+1)/i[5],l=(i[9]-1)/i[5],u=(i[8]-1)/i[0],d=(a[8]+1)/a[0],f=o*u,p=o*d,m=r/(-u+d),h=m*-u;if(t.matrixWorld.decompose(e.position,e.quaternion,e.scale),e.translateX(h),e.translateZ(m),e.matrixWorld.compose(e.position,e.quaternion,e.scale),e.matrixWorldInverse.copy(e.matrixWorld).invert(),i[10]===-1)e.projectionMatrix.copy(t.projectionMatrix),e.projectionMatrixInverse.copy(t.projectionMatrixInverse);else{let t=o+m,n=s+m,i=f-h,a=p+(r-h),u=c*s/n*t,d=l*s/n*t;e.projectionMatrix.makePerspective(i,a,u,d,t,n),e.projectionMatrixInverse.copy(e.projectionMatrix).invert()}}function L(e,t){t===null?e.matrixWorld.copy(e.matrix):e.matrixWorld.multiplyMatrices(t.matrixWorld,e.matrix),e.matrixWorldInverse.copy(e.matrixWorld).invert()}this.updateCamera=function(e){if(r===null)return;let t=e.near,n=e.far;h.texture!==null&&(h.depthNear>0&&(t=h.depthNear),h.depthFar>0&&(n=h.depthFar)),O.near=E.near=T.near=t,O.far=E.far=T.far=n,(k!==O.near||A!==O.far)&&(r.updateRenderState({depthNear:O.near,depthFar:O.far}),k=O.near,A=O.far),O.layers.mask=e.layers.mask|6,T.layers.mask=O.layers.mask&-5,E.layers.mask=O.layers.mask&-3;let i=e.parent,a=O.cameras;L(O,i);for(let e=0;e<a.length;e++)L(a[e],i);a.length===2?I(O,T,E):O.projectionMatrix.copy(T.projectionMatrix),w===null&&e.isPerspectiveCamera&&(w={camera:e,fov:e.fov,zoom:e.zoom}),ee(e,O,i)};function ee(e,t,n){n===null?e.matrix.copy(t.matrixWorld):(e.matrix.copy(n.matrixWorld),e.matrix.invert(),e.matrix.multiply(t.matrixWorld)),e.matrix.decompose(e.position,e.quaternion,e.scale),e.updateMatrixWorld(!0),e.projectionMatrix.copy(t.projectionMatrix),e.projectionMatrixInverse.copy(t.projectionMatrixInverse),e.isPerspectiveCamera&&(e.fov=Qd*2*Math.atan(1/e.projectionMatrix.elements[5]),e.zoom=1)}this.getCamera=function(){return O},this.getFoveation=function(){if(d!==null||f!==null)return s},this.setFoveation=function(e){s=e,d!==null&&(d.fixedFoveation=e),f!==null&&f.fixedFoveation!==void 0&&(f.fixedFoveation=e)},this.hasDepthSensing=function(){return h.texture!==null},this.getDepthSensingMesh=function(){return h.getMesh(O)},this.getCameraTexture=function(e){return g[e]};let R=null;function te(t,i){if(l=i.getViewerPose(c||a),p=i,l!==null){let t=l.views;f!==null&&(e.setRenderTargetFramebuffer(y,f.framebuffer),e.setRenderTarget(y));let i=!1;t.length!==O.cameras.length&&(O.cameras.length=0,i=!0);for(let n=0;n<t.length;n++){let r=t[n],a=null;if(f!==null)a=f.getViewport(r);else{let t=u.getViewSubImage(d,r);a=t.viewport,n===0&&(e.setRenderTargetTextures(y,t.colorTexture,t.depthStencilTexture),e.setRenderTarget(y))}let o=D[n];o===void 0&&(o=new __,o.layers.enable(n),o.viewport=new Hf,D[n]=o),o.matrix.fromArray(r.transform.matrix),o.matrix.decompose(o.position,o.quaternion,o.scale),o.projectionMatrix.fromArray(r.projectionMatrix),o.projectionMatrixInverse.copy(o.projectionMatrix).invert(),o.viewport.set(a.x,a.y,a.width,a.height),n===0&&(O.matrix.copy(o.matrix),O.matrix.decompose(O.position,O.quaternion,O.scale)),i===!0&&O.cameras.push(o)}let a=r.enabledFeatures;if(a&&a.includes(`depth-sensing`)&&r.depthUsage==`gpu-optimized`&&m){u=n.getBinding();let e=u.getDepthInformation(t[0]);e&&e.isValid&&e.texture&&h.init(e,r.renderState)}if(a&&a.includes(`camera-access`)&&m){e.state.unbindTexture(),u=n.getBinding();for(let e=0;e<t.length;e++){let n=t[e].camera;if(n){let e=g[n];e||(e=new tg,g[n]=e);let t=u.getCameraImage(n);e.sourceTexture=t}}}}for(let e=0;e<b.length;e++){let t=x[e],n=b[e];t!==null&&n!==void 0&&n.update(t,i,c||a)}R&&R(t,i),i.detectedPlanes&&n.dispatchEvent({type:`planesdetected`,data:i}),p=null}let z=new ov;z.setAnimationLoop(te),this.setAnimationLoop=function(e){R=e},this.dispose=function(){}}},gx=new qf,_x=new Ef;_x.set(-1,0,0,0,1,0,0,0,1);function vx(e,t){function n(e,t){e.matrixAutoUpdate===!0&&e.updateMatrix(),t.value.copy(e.matrix)}function r(t,n){n.color.getRGB(t.fogColor.value,gg(e)),n.isFog?(t.fogNear.value=n.near,t.fogFar.value=n.far):n.isFogExp2&&(t.fogDensity.value=n.density)}function i(e,t,n,r,i){t.isNodeMaterial?t.uniformsNeedUpdate=!1:t.isMeshBasicMaterial?a(e,t):t.isMeshLambertMaterial?(a(e,t),t.envMap&&(e.envMapIntensity.value=t.envMapIntensity)):t.isMeshToonMaterial?(a(e,t),d(e,t)):t.isMeshPhongMaterial?(a(e,t),u(e,t),t.envMap&&(e.envMapIntensity.value=t.envMapIntensity)):t.isMeshStandardMaterial?(a(e,t),f(e,t),t.isMeshPhysicalMaterial&&p(e,t,i)):t.isMeshMatcapMaterial?(a(e,t),m(e,t)):t.isMeshDepthMaterial?a(e,t):t.isMeshDistanceMaterial?(a(e,t),h(e,t)):t.isMeshNormalMaterial?a(e,t):t.isLineBasicMaterial?(o(e,t),t.isLineDashedMaterial&&s(e,t)):t.isPointsMaterial?c(e,t,n,r):t.isSpriteMaterial?l(e,t):t.isShadowMaterial?(e.color.value.copy(t.color),e.opacity.value=t.opacity):t.isShaderMaterial&&(t.uniformsNeedUpdate=!1)}function a(e,r){e.opacity.value=r.opacity,r.color&&e.diffuse.value.copy(r.color),r.emissive&&e.emissive.value.copy(r.emissive).multiplyScalar(r.emissiveIntensity),r.map&&(e.map.value=r.map,n(r.map,e.mapTransform)),r.alphaMap&&(e.alphaMap.value=r.alphaMap,n(r.alphaMap,e.alphaMapTransform)),r.bumpMap&&(e.bumpMap.value=r.bumpMap,n(r.bumpMap,e.bumpMapTransform),e.bumpScale.value=r.bumpScale,r.side===1&&(e.bumpScale.value*=-1)),r.normalMap&&(e.normalMap.value=r.normalMap,n(r.normalMap,e.normalMapTransform),e.normalScale.value.copy(r.normalScale),r.side===1&&e.normalScale.value.negate()),r.displacementMap&&(e.displacementMap.value=r.displacementMap,n(r.displacementMap,e.displacementMapTransform),e.displacementScale.value=r.displacementScale,e.displacementBias.value=r.displacementBias),r.emissiveMap&&(e.emissiveMap.value=r.emissiveMap,n(r.emissiveMap,e.emissiveMapTransform)),r.specularMap&&(e.specularMap.value=r.specularMap,n(r.specularMap,e.specularMapTransform)),r.alphaTest>0&&(e.alphaTest.value=r.alphaTest);let i=t.get(r),a=i.envMap,o=i.envMapRotation;a&&(e.envMap.value=a,e.envMapRotation.value.setFromMatrix4(gx.makeRotationFromEuler(o)).transpose(),a.isCubeTexture&&a.isRenderTargetTexture===!1&&e.envMapRotation.value.premultiply(_x),e.reflectivity.value=r.reflectivity,e.ior.value=r.ior,e.refractionRatio.value=r.refractionRatio),r.lightMap&&(e.lightMap.value=r.lightMap,e.lightMapIntensity.value=r.lightMapIntensity,n(r.lightMap,e.lightMapTransform)),r.aoMap&&(e.aoMap.value=r.aoMap,e.aoMapIntensity.value=r.aoMapIntensity,n(r.aoMap,e.aoMapTransform))}function o(e,t){e.diffuse.value.copy(t.color),e.opacity.value=t.opacity,t.map&&(e.map.value=t.map,n(t.map,e.mapTransform))}function s(e,t){e.dashSize.value=t.dashSize,e.totalSize.value=t.dashSize+t.gapSize,e.scale.value=t.scale}function c(e,t,r,i){e.diffuse.value.copy(t.color),e.opacity.value=t.opacity,e.size.value=t.size*r,e.scale.value=i*.5,t.map&&(e.map.value=t.map,n(t.map,e.uvTransform)),t.alphaMap&&(e.alphaMap.value=t.alphaMap,n(t.alphaMap,e.alphaMapTransform)),t.alphaTest>0&&(e.alphaTest.value=t.alphaTest)}function l(e,t){e.diffuse.value.copy(t.color),e.opacity.value=t.opacity,e.rotation.value=t.rotation,t.map&&(e.map.value=t.map,n(t.map,e.mapTransform)),t.alphaMap&&(e.alphaMap.value=t.alphaMap,n(t.alphaMap,e.alphaMapTransform)),t.alphaTest>0&&(e.alphaTest.value=t.alphaTest)}function u(e,t){e.specular.value.copy(t.specular),e.shininess.value=Math.max(t.shininess,1e-4)}function d(e,t){t.gradientMap&&(e.gradientMap.value=t.gradientMap)}function f(e,t){e.metalness.value=t.metalness,t.metalnessMap&&(e.metalnessMap.value=t.metalnessMap,n(t.metalnessMap,e.metalnessMapTransform)),e.roughness.value=t.roughness,t.roughnessMap&&(e.roughnessMap.value=t.roughnessMap,n(t.roughnessMap,e.roughnessMapTransform)),t.envMap&&(e.envMapIntensity.value=t.envMapIntensity)}function p(e,t,r){e.ior.value=t.ior,t.sheen>0&&(e.sheenColor.value.copy(t.sheenColor).multiplyScalar(t.sheen),e.sheenRoughness.value=t.sheenRoughness,t.sheenColorMap&&(e.sheenColorMap.value=t.sheenColorMap,n(t.sheenColorMap,e.sheenColorMapTransform)),t.sheenRoughnessMap&&(e.sheenRoughnessMap.value=t.sheenRoughnessMap,n(t.sheenRoughnessMap,e.sheenRoughnessMapTransform))),t.clearcoat>0&&(e.clearcoat.value=t.clearcoat,e.clearcoatRoughness.value=t.clearcoatRoughness,t.clearcoatMap&&(e.clearcoatMap.value=t.clearcoatMap,n(t.clearcoatMap,e.clearcoatMapTransform)),t.clearcoatRoughnessMap&&(e.clearcoatRoughnessMap.value=t.clearcoatRoughnessMap,n(t.clearcoatRoughnessMap,e.clearcoatRoughnessMapTransform)),t.clearcoatNormalMap&&(e.clearcoatNormalMap.value=t.clearcoatNormalMap,n(t.clearcoatNormalMap,e.clearcoatNormalMapTransform),e.clearcoatNormalScale.value.copy(t.clearcoatNormalScale),t.side===1&&e.clearcoatNormalScale.value.negate())),t.dispersion>0&&(e.dispersion.value=t.dispersion),t.retroreflectivity>0&&(e.retroreflectivity.value=t.retroreflectivity),t.iridescence>0&&(e.iridescence.value=t.iridescence,e.iridescenceIOR.value=t.iridescenceIOR,e.iridescenceThicknessMinimum.value=t.iridescenceThicknessRange[0],e.iridescenceThicknessMaximum.value=t.iridescenceThicknessRange[1],t.iridescenceMap&&(e.iridescenceMap.value=t.iridescenceMap,n(t.iridescenceMap,e.iridescenceMapTransform)),t.iridescenceThicknessMap&&(e.iridescenceThicknessMap.value=t.iridescenceThicknessMap,n(t.iridescenceThicknessMap,e.iridescenceThicknessMapTransform))),t.transmission>0&&(e.transmission.value=t.transmission,e.transmissionSamplerMap.value=r.texture,e.transmissionSamplerSize.value.set(r.width,r.height),t.transmissionMap&&(e.transmissionMap.value=t.transmissionMap,n(t.transmissionMap,e.transmissionMapTransform)),e.thickness.value=t.thickness,t.thicknessMap&&(e.thicknessMap.value=t.thicknessMap,n(t.thicknessMap,e.thicknessMapTransform)),e.attenuationDistance.value=t.attenuationDistance,e.attenuationColor.value.copy(t.attenuationColor)),t.anisotropy>0&&(e.anisotropyVector.value.set(t.anisotropy*Math.cos(t.anisotropyRotation),t.anisotropy*Math.sin(t.anisotropyRotation)),t.anisotropyMap&&(e.anisotropyMap.value=t.anisotropyMap,n(t.anisotropyMap,e.anisotropyMapTransform))),e.specularIntensity.value=t.specularIntensity,e.specularColor.value.copy(t.specularColor),t.specularColorMap&&(e.specularColorMap.value=t.specularColorMap,n(t.specularColorMap,e.specularColorMapTransform)),t.specularIntensityMap&&(e.specularIntensityMap.value=t.specularIntensityMap,n(t.specularIntensityMap,e.specularIntensityMapTransform))}function m(e,t){t.matcap&&(e.matcap.value=t.matcap)}function h(e,n){let r=t.get(n).light;e.referencePosition.value.setFromMatrixPosition(r.matrixWorld),e.nearDistance.value=r.shadow.camera.near,e.farDistance.value=r.shadow.camera.far}return{refreshFogUniforms:r,refreshMaterialUniforms:i}}function yx(e,t,n,r){let i={},a={},o=[],s=e.getParameter(e.MAX_UNIFORM_BUFFER_BINDINGS);function c(e,t){let n=t.program;r.uniformBlockBinding(e,n)}function l(e,n){let o=i[e.id];o===void 0&&(g(e),o=u(e),i[e.id]=o,e.addEventListener(`dispose`,v));let s=n.program;r.updateUBOMapping(e,s);let c=t.render.frame;a[e.id]!==c&&(f(e),a[e.id]=c)}function u(t){let n=d();t.__bindingPointIndex=n;let r=e.createBuffer(),i=t.__size,a=t.usage;return e.bindBuffer(e.UNIFORM_BUFFER,r),e.bufferData(e.UNIFORM_BUFFER,i,a),e.bindBuffer(e.UNIFORM_BUFFER,null),e.bindBufferBase(e.UNIFORM_BUFFER,n,r),r}function d(){for(let e=0;e<s;e++)if(o.indexOf(e)===-1)return o.push(e),e;return Wd(`WebGLRenderer: Maximum number of simultaneously usable uniforms groups reached.`),0}function f(t){let n=i[t.id],r=t.uniforms,a=t.__cache;e.bindBuffer(e.UNIFORM_BUFFER,n);for(let e=0,t=r.length;e<t;e++){let t=r[e];if(Array.isArray(t))for(let n=0,r=t.length;n<r;n++)p(t[n],e,n,a);else p(t,e,0,a)}e.bindBuffer(e.UNIFORM_BUFFER,null)}function p(t,n,r,i){if(h(t,n,r,i)===!0){let n=t.__offset,r=t.value;if(Array.isArray(r)){let e=0;for(let n=0;n<r.length;n++){let i=r[n],a=_(i);m(i,t.__data,e),typeof i!=`number`&&typeof i!=`boolean`&&!i.isMatrix3&&!ArrayBuffer.isView(i)&&(e+=a.storage/Float32Array.BYTES_PER_ELEMENT)}}else m(r,t.__data,0);e.bufferSubData(e.UNIFORM_BUFFER,n,t.__data)}}function m(e,t,n){typeof e==`number`||typeof e==`boolean`?t[0]=e:e.isMatrix3?(t[0]=e.elements[0],t[1]=e.elements[1],t[2]=e.elements[2],t[3]=0,t[4]=e.elements[3],t[5]=e.elements[4],t[6]=e.elements[5],t[7]=0,t[8]=e.elements[6],t[9]=e.elements[7],t[10]=e.elements[8],t[11]=0):ArrayBuffer.isView(e)?t.set(new e.constructor(e.buffer,e.byteOffset,t.length)):e.toArray(t,n)}function h(e,t,n,r){let i=e.value,a=t+`_`+n;if(r[a]===void 0)return r[a]=typeof i==`number`||typeof i==`boolean`?i:ArrayBuffer.isView(i)?i.slice():i.clone(),!0;{let e=r[a];if(typeof i==`number`||typeof i==`boolean`){if(e!==i)return r[a]=i,!0}else if(ArrayBuffer.isView(i))return!0;else if(e.equals(i)===!1)return e.copy(i),!0}return!1}function g(e){let t=e.uniforms,n=0;for(let e=0,r=t.length;e<r;e++){let r=Array.isArray(t[e])?t[e]:[t[e]];for(let e=0,t=r.length;e<t;e++){let t=r[e],i=Array.isArray(t.value)?t.value:[t.value];for(let e=0,r=i.length;e<r;e++){let r=i[e],a=_(r),o=n%16,s=o%a.boundary,c=o+s;n+=s,c!==0&&16-c<a.storage&&(n+=16-c),t.__data=new Float32Array(a.storage/Float32Array.BYTES_PER_ELEMENT),t.__offset=n,n+=a.storage}}}let r=n%16;return r>0&&(n+=16-r),e.__size=n,e.__cache={},this}function _(e){let t={boundary:0,storage:0};return typeof e==`number`||typeof e==`boolean`?(t.boundary=4,t.storage=4):e.isVector2?(t.boundary=8,t.storage=8):e.isVector3||e.isColor?(t.boundary=16,t.storage=12):e.isVector4?(t.boundary=16,t.storage=16):e.isMatrix3?(t.boundary=48,t.storage=48):e.isMatrix4?(t.boundary=64,t.storage=64):e.isTexture?Ud(`WebGLRenderer: Texture samplers can not be part of an uniforms group.`):ArrayBuffer.isView(e)?(t.boundary=16,t.storage=e.byteLength):Ud(`WebGLRenderer: Unsupported uniform value type.`,e),t}function v(t){let n=t.target;n.removeEventListener(`dispose`,v);let r=o.indexOf(n.__bindingPointIndex);o.splice(r,1),e.deleteBuffer(i[n.id]),delete i[n.id],delete a[n.id]}function y(){for(let t in i)e.deleteBuffer(i[t]);o=[],i={},a={}}return{bind:c,update:l,dispose:y}}var bx=new Uint16Array([12469,15057,12620,14925,13266,14620,13807,14376,14323,13990,14545,13625,14713,13328,14840,12882,14931,12528,14996,12233,15039,11829,15066,11525,15080,11295,15085,10976,15082,10705,15073,10495,13880,14564,13898,14542,13977,14430,14158,14124,14393,13732,14556,13410,14702,12996,14814,12596,14891,12291,14937,11834,14957,11489,14958,11194,14943,10803,14921,10506,14893,10278,14858,9960,14484,14039,14487,14025,14499,13941,14524,13740,14574,13468,14654,13106,14743,12678,14818,12344,14867,11893,14889,11509,14893,11180,14881,10751,14852,10428,14812,10128,14765,9754,14712,9466,14764,13480,14764,13475,14766,13440,14766,13347,14769,13070,14786,12713,14816,12387,14844,11957,14860,11549,14868,11215,14855,10751,14825,10403,14782,10044,14729,9651,14666,9352,14599,9029,14967,12835,14966,12831,14963,12804,14954,12723,14936,12564,14917,12347,14900,11958,14886,11569,14878,11247,14859,10765,14828,10401,14784,10011,14727,9600,14660,9289,14586,8893,14508,8533,15111,12234,15110,12234,15104,12216,15092,12156,15067,12010,15028,11776,14981,11500,14942,11205,14902,10752,14861,10393,14812,9991,14752,9570,14682,9252,14603,8808,14519,8445,14431,8145,15209,11449,15208,11451,15202,11451,15190,11438,15163,11384,15117,11274,15055,10979,14994,10648,14932,10343,14871,9936,14803,9532,14729,9218,14645,8742,14556,8381,14461,8020,14365,7603,15273,10603,15272,10607,15267,10619,15256,10631,15231,10614,15182,10535,15118,10389,15042,10167,14963,9787,14883,9447,14800,9115,14710,8665,14615,8318,14514,7911,14411,7507,14279,7198,15314,9675,15313,9683,15309,9712,15298,9759,15277,9797,15229,9773,15166,9668,15084,9487,14995,9274,14898,8910,14800,8539,14697,8234,14590,7790,14479,7409,14367,7067,14178,6621,15337,8619,15337,8631,15333,8677,15325,8769,15305,8871,15264,8940,15202,8909,15119,8775,15022,8565,14916,8328,14804,8009,14688,7614,14569,7287,14448,6888,14321,6483,14088,6171,15350,7402,15350,7419,15347,7480,15340,7613,15322,7804,15287,7973,15229,8057,15148,8012,15046,7846,14933,7611,14810,7357,14682,7069,14552,6656,14421,6316,14251,5948,14007,5528,15356,5942,15356,5977,15353,6119,15348,6294,15332,6551,15302,6824,15249,7044,15171,7122,15070,7050,14949,6861,14818,6611,14679,6349,14538,6067,14398,5651,14189,5311,13935,4958,15359,4123,15359,4153,15356,4296,15353,4646,15338,5160,15311,5508,15263,5829,15188,6042,15088,6094,14966,6001,14826,5796,14678,5543,14527,5287,14377,4985,14133,4586,13869,4257,15360,1563,15360,1642,15358,2076,15354,2636,15341,3350,15317,4019,15273,4429,15203,4732,15105,4911,14981,4932,14836,4818,14679,4621,14517,4386,14359,4156,14083,3795,13808,3437,15360,122,15360,137,15358,285,15355,636,15344,1274,15322,2177,15281,2765,15215,3223,15120,3451,14995,3569,14846,3567,14681,3466,14511,3305,14344,3121,14037,2800,13753,2467,15360,0,15360,1,15359,21,15355,89,15346,253,15325,479,15287,796,15225,1148,15133,1492,15008,1749,14856,1882,14685,1886,14506,1783,14324,1608,13996,1398,13702,1183]),xx=null;function Sx(){return xx===null&&(xx=new bh(bx,16,16,Iu,Cu),xx.name=`DFG_LUT`,xx.minFilter=pu,xx.magFilter=pu,xx.wrapS=cu,xx.wrapT=cu,xx.generateMipmaps=!1,xx.needsUpdate=!0),xx}var Cx=class{constructor(e={}){let{canvas:t=zd(),context:n=null,depth:r=!0,stencil:i=!1,alpha:a=!1,antialias:o=!1,premultipliedAlpha:s=!0,preserveDrawingBuffer:c=!1,powerPreference:l=`default`,failIfMajorPerformanceCaveat:u=!1,reversedDepthBuffer:d=!1,outputBufferType:f=gu}=e;this.isWebGLRenderer=!0;let p;if(n!==null){if(typeof WebGLRenderingContext<`u`&&n instanceof WebGLRenderingContext)throw Error(`THREE.WebGLRenderer: WebGL 1 is not supported since r163.`);p=n.getContextAttributes().alpha}else p=a;let m=f,h=new Set([Ru,Lu,Fu]),g=new Set([gu,xu,yu,Eu,wu,Tu]),_=new Uint32Array(4),v=new Int32Array(4),y=new Z,b=null,x=null,S=[],C=[],w=null;this.domElement=t,this.debug={checkShaderErrors:!0,diagnostics:{keywords:!1},onShaderError:null},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this.toneMapping=0,this.toneMappingExposure=1,this.transmissionResolutionScale=1;let T=this,E=!1,D=null,O=null,k=null,A=null;this._outputColorSpace=kd;let j=0,M=0,N=null,P=-1,F=null,I=new Hf,L=new Hf,ee=null,R=new Q(0),te=0,z=t.width,ne=t.height,B=1,V=null,re=null,ie=new Hf(0,0,z,ne),ae=new Hf(0,0,z,ne),oe=!1,H=new Nh,se=!1,ce=!1,U=new qf,le=new Z,ue=new Hf,W={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0},de=!1;function G(){return N===null?B:1}let K=n;function q(e,n){return t.getContext(e,n)}let fe,pe,J,me,he,ge,_e,ve,ye,be,xe,Se,Ce,we,Te,Ee,De,Oe,ke,Ae,je,Me,Ne;try{let e={alpha:!0,depth:r,stencil:i,antialias:o,premultipliedAlpha:s,preserveDrawingBuffer:c,powerPreference:l,failIfMajorPerformanceCaveat:u};if(`setAttribute`in t&&t.setAttribute(`data-engine`,`three.js r186`),t.addEventListener(`webglcontextlost`,Fe,!1),t.addEventListener(`webglcontextrestored`,Ie,!1),t.addEventListener(`webglcontextcreationerror`,Le,!1),K===null){let t=`webgl2`;if(K=q(t,e),K===null)throw q(t)?Error(`THREE.WebGLRenderer: Error creating WebGL context with your selected attributes.`):Error(`THREE.WebGLRenderer: Error creating WebGL context.`)}Y()}catch(e){throw t.removeEventListener(`webglcontextlost`,Fe,!1),t.removeEventListener(`webglcontextrestored`,Ie,!1),t.removeEventListener(`webglcontextcreationerror`,Le,!1),Wd(`WebGLRenderer: `+e.message),e}function Y(){fe=new Vv(K),fe.init(),je=new dx(K,fe),pe=new gv(K,fe,e,je),J=new lx(K,fe),pe.reversedDepthBuffer&&d&&J.buffers.depth.setReversed(!0),O=K.createFramebuffer(),k=K.createFramebuffer(),A=K.createFramebuffer(),me=new Wv(K),he=new Ub,ge=new ux(K,fe,J,he,pe,je,me),_e=new Bv(T),ve=new sv(K),Me=new mv(K,ve),ye=new Hv(K,ve,me,Me),be=new Kv(K,ye,ve,Me,me),Oe=new Gv(K,pe,ge),Te=new _v(he),xe=new Hb(T,_e,fe,pe,Me,Te),Se=new vx(T,he),Ce=new qb,we=new ex(fe),De=new pv(T,_e,J,be,p,s),Ee=new cx(T,be,pe),Ne=new yx(K,me,pe,J),ke=new hv(K,fe,me),Ae=new Uv(K,fe,me),me.programs=xe.programs,T.capabilities=pe,T.extensions=fe,T.properties=he,T.renderLists=Ce,T.shadowMap=Ee,T.state=J,T.info=me}m!==1009&&(w=new Jv(m,t.width,t.height,o,r,i));let Pe=new hx(T,K);this.xr=Pe,this.getContext=function(){return K},this.getContextAttributes=function(){return K.getContextAttributes()},this.forceContextLoss=function(){let e=fe.get(`WEBGL_lose_context`);e&&e.loseContext()},this.forceContextRestore=function(){let e=fe.get(`WEBGL_lose_context`);e&&e.restoreContext()},this.getPixelRatio=function(){return B},this.setPixelRatio=function(e){e!==void 0&&(B=e,this.setSize(z,ne,!1))},this.getSize=function(e){return e.set(z,ne)},this.setSize=function(e,n,r=!0){if(Pe.isPresenting){Ud(`WebGLRenderer: Can't change size while VR device is presenting.`);return}z=e,ne=n,t.width=Math.floor(e*B),t.height=Math.floor(n*B),r===!0&&(t.style.width=e+`px`,t.style.height=n+`px`),w!==null&&w.setSize(t.width,t.height),this.setViewport(0,0,e,n)},this.getDrawingBufferSize=function(e){return e.set(z*B,ne*B).floor()},this.setDrawingBufferSize=function(e,n,r){z=e,ne=n,B=r,t.width=Math.floor(e*r),t.height=Math.floor(n*r),this.setViewport(0,0,e,n)},this.setEffects=function(e){if(m===1009){Wd(`WebGLRenderer: setEffects() requires outputBufferType set to HalfFloatType or FloatType.`);return}if(e){for(let t=0;t<e.length;t++)if(e[t].isOutputPass===!0){Ud(`WebGLRenderer: OutputPass is not needed in setEffects(). Tone mapping and color space conversion are applied automatically.`);break}}w.setEffects(e||[])},this.getCurrentViewport=function(e){return e.copy(I)},this.getViewport=function(e){return e.copy(ie)},this.setViewport=function(e,t,n,r){e.isVector4?ie.set(e.x,e.y,e.z,e.w):ie.set(e,t,n,r),J.viewport(I.copy(ie).multiplyScalar(B).round())},this.getScissor=function(e){return e.copy(ae)},this.setScissor=function(e,t,n,r){e.isVector4?ae.set(e.x,e.y,e.z,e.w):ae.set(e,t,n,r),J.scissor(L.copy(ae).multiplyScalar(B).round())},this.getScissorTest=function(){return oe},this.setScissorTest=function(e){J.setScissorTest(oe=e)},this.setOpaqueSort=function(e){V=e},this.setTransparentSort=function(e){re=e},this.getClearColor=function(e){return e.copy(De.getClearColor())},this.setClearColor=function(){De.setClearColor(...arguments)},this.getClearAlpha=function(){return De.getClearAlpha()},this.setClearAlpha=function(){De.setClearAlpha(...arguments)},this.clear=function(e=!0,t=!0,n=!0){let r=0;if(e){let e=!1;if(N!==null){let t=N.texture.format;e=h.has(t)}if(e){let e=N.texture.type,t=g.has(e),n=De.getClearColor(),r=De.getClearAlpha(),i=n.r,a=n.g,o=n.b;t?(_[0]=i,_[1]=a,_[2]=o,_[3]=r,K.clearBufferuiv(K.COLOR,0,_)):(v[0]=i,v[1]=a,v[2]=o,v[3]=r,K.clearBufferiv(K.COLOR,0,v))}else r|=K.COLOR_BUFFER_BIT}t&&(r|=K.DEPTH_BUFFER_BIT,this.state.buffers.depth.setMask(!0)),n&&(r|=K.STENCIL_BUFFER_BIT,this.state.buffers.stencil.setMask(4294967295)),r!==0&&K.clear(r)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.setNodesHandler=function(e){e.setRenderer(this),D=e},this.dispose=function(){t.removeEventListener(`webglcontextlost`,Fe,!1),t.removeEventListener(`webglcontextrestored`,Ie,!1),t.removeEventListener(`webglcontextcreationerror`,Le,!1),De.dispose(),Ce.dispose(),we.dispose(),he.dispose(),_e.dispose(),be.dispose(),Me.dispose(),Ne.dispose(),xe.dispose(),Pe.dispose(),Pe.removeEventListener(`sessionstart`,We),Pe.removeEventListener(`sessionend`,Ge),Ke.stop()};function Fe(e){e.preventDefault(),Vd(`WebGLRenderer: Context Lost.`),E=!0}function Ie(){Vd(`WebGLRenderer: Context Restored.`),E=!1;let e=me.autoReset,t=Ee.enabled,n=Ee.autoUpdate,r=Ee.needsUpdate,i=Ee.type;Y(),me.autoReset=e,Ee.enabled=t,Ee.autoUpdate=n,Ee.needsUpdate=r,Ee.type=i}function Le(e){Wd(`WebGLRenderer: A WebGL context could not be created. Reason: `,e.statusMessage)}function Re(e){let t=e.target;t.removeEventListener(`dispose`,Re),ze(t)}function ze(e){Be(e),he.remove(e)}function Be(e){let t=he.get(e).programs;t!==void 0&&(t.forEach(function(e){xe.releaseProgram(e)}),e.isShaderMaterial&&xe.releaseShaderCache(e))}this.renderBufferDirect=function(e,t,n,r,i,a){t===null&&(t=W);let o=i.isMesh&&i.matrixWorld.determinantAffine()<0,s=nt(e,t,n,r,i);J.setMaterial(r,o);let c=n.index,l=1;if(r.wireframe===!0){if(c=ye.getWireframeAttribute(n),c===void 0)return;l=2}let u=n.drawRange,d=n.attributes.position,f=u.start*l,p=(u.start+u.count)*l;a!==null&&(f=Math.max(f,a.start*l),p=Math.min(p,(a.start+a.count)*l)),c===null?d!=null&&(f=Math.max(f,0),p=Math.min(p,d.count)):(f=Math.max(f,0),p=Math.min(p,c.count));let m=p-f;if(m<0||m===1/0)return;Me.setup(i,r,s,n,c);let h,g=ke;if(c!==null&&(h=ve.get(c),g=Ae,g.setIndex(h)),i.isMesh)r.wireframe===!0?(J.setLineWidth(r.wireframeLinewidth*G()),g.setMode(K.LINES)):g.setMode(K.TRIANGLES);else if(i.isLine){let e=r.linewidth;e===void 0&&(e=1),J.setLineWidth(e*G()),i.isLineSegments?g.setMode(K.LINES):i.isLineLoop?g.setMode(K.LINE_LOOP):g.setMode(K.LINE_STRIP)}else i.isPoints?g.setMode(K.POINTS):i.isSprite&&g.setMode(K.TRIANGLES);if(i.isBatchedMesh){if(fe.get(`WEBGL_multi_draw`))g.renderMultiDraw(i._multiDrawStarts,i._multiDrawCounts,i._multiDrawCount);else{let e=i._multiDrawStarts,t=i._multiDrawCounts,n=i._multiDrawCount,a=c?ve.get(c).bytesPerElement:1,o=he.get(r).currentProgram.getUniforms();for(let r=0;r<n;r++)o.setValue(K,`_gl_DrawID`,r),g.render(e[r]/a,t[r])}}else if(i.isInstancedMesh)g.renderInstances(f,m,i.count);else if(n.isInstancedBufferGeometry){let e=n._maxInstanceCount===void 0?1/0:n._maxInstanceCount,t=Math.min(n.instanceCount,e);g.renderInstances(f,m,t)}else g.render(f,m)};function Ve(e,t,n,r){D!==null&&e.isNodeMaterial&&D.setObject(r,e),se===!0&&Te.setState(e,n,!1),e.transparent===!0&&e.side===2&&e.forceSinglePass===!1?(e.side=1,e.needsUpdate=!0,Qe(e,t,r),e.side=0,e.needsUpdate=!0,Qe(e,t,r),e.side=2):Qe(e,t,r)}this.compile=function(e,t,n=null){n===null&&(n=e),D!==null&&D.renderStart(e,t,n),x=we.get(n),x.init(t),C.push(x),n.traverseVisible(function(e){e.isLight&&e.layers.test(t.layers)&&(x.pushLight(e),e.castShadow&&x.pushShadow(e))}),e!==n&&e.traverseVisible(function(e){e.isLight&&e.layers.test(t.layers)&&(x.pushLight(e),e.castShadow&&x.pushShadow(e))}),x.setupLights(),D!==null&&D.updateLights(x.state.lightsArray),ce=this.localClippingEnabled,se=Te.init(this.clippingPlanes,ce),se===!0&&Te.setGlobalState(this.clippingPlanes,t),D!==null&&Ee.render(x.state.shadowsArray,n,t);let r=new Set;return e.traverse(function(e){if(!(e.isMesh||e.isPoints||e.isLine||e.isSprite))return;let i=e.material;if(i){if(Array.isArray(i))for(let a=0;a<i.length;a++){let o=i[a];Ve(o,n,t,e),r.add(o)}else Ve(i,n,t,e),r.add(i)}}),x=C.pop(),D!==null&&D.renderEnd(),r},this.compileAsync=function(e,t,n=null){let r=this.compile(e,t,n);return new Promise(t=>{function n(){if(r.forEach(function(e){let t=he.get(e).currentProgram;(t===void 0||t.isReady())&&r.delete(e)}),r.size===0){t(e);return}setTimeout(n,10)}fe.get(`KHR_parallel_shader_compile`)===null?setTimeout(n,10):n()})};let He=null;function Ue(e){He&&He(e)}function We(){Ke.stop()}function Ge(){Ke.start()}let Ke=new ov;Ke.setAnimationLoop(Ue),typeof self<`u`&&Ke.setContext(self),this.setAnimationLoop=function(e){He=e,Pe.setAnimationLoop(e),e===null?Ke.stop():Ke.start()},Pe.addEventListener(`sessionstart`,We),Pe.addEventListener(`sessionend`,Ge),this.render=function(e,t){if(t!==void 0&&t.isCamera!==!0){Wd(`WebGLRenderer.render: camera is not an instance of THREE.Camera.`);return}if(E===!0)return;D!==null&&D.renderStart(e,t);let n=Pe.enabled===!0&&Pe.isPresenting===!0,r=w!==null&&(N===null||n)&&w.begin(T,N);if(e.matrixWorldAutoUpdate===!0&&e.updateMatrixWorld(),t.parent===null&&t.matrixWorldAutoUpdate===!0&&t.updateMatrixWorld(),Pe.enabled===!0&&Pe.isPresenting===!0&&(w===null||w.isCompositing()===!1)&&(Pe.cameraAutoUpdate===!0&&Pe.updateCamera(t),t=Pe.getCamera()),e.isScene===!0&&e.onBeforeRender(T,e,t,N),x=we.get(e,C.length),x.init(t),x.state.textureUnits=ge.getTextureUnits(),C.push(x),U.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),H.setFromProjectionMatrix(U,Fd,t.reversedDepth),ce=this.localClippingEnabled,se=Te.init(this.clippingPlanes,ce),b=Ce.get(e,S.length),b.init(),S.push(b),Pe.enabled===!0&&Pe.isPresenting===!0){let e=T.xr.getDepthSensingMesh();e!==null&&qe(e,t,-1/0,T.sortObjects)}qe(e,t,0,T.sortObjects),b.finish(),D!==null&&D.updateLights(x.state.lightsArray),T.sortObjects===!0&&b.sort(V,re),de=Pe.enabled===!1||Pe.isPresenting===!1||Pe.hasDepthSensing()===!1,de&&De.addToRenderList(b,e),this.info.render.frame++,this.info.autoReset===!0&&this.info.reset(),se===!0&&Te.beginShadows();let i=x.state.shadowsArray;if(Ee.render(i,e,t),se===!0&&Te.endShadows(),(r&&w.hasRenderPass())===!1){let n=b.opaque,r=b.transmissive;if(x.setupLights(),t.isArrayCamera){let i=t.cameras;if(r.length>0)for(let t=0,a=i.length;t<a;t++){let a=i[t];Ye(n,r,e,a)}de&&De.render(e);for(let t=0,n=i.length;t<n;t++){let n=i[t];Je(b,e,n,n.viewport)}}else r.length>0&&Ye(n,r,e,t),de&&De.render(e),Je(b,e,t)}N!==null&&M===0&&(ge.updateMultisampleRenderTarget(N),ge.updateRenderTargetMipmap(N)),r&&w.end(T),e.isScene===!0&&e.onAfterRender(T,e,t),Me.resetDefaultState(),P=-1,F=null,C.pop(),C.length>0?(x=C[C.length-1],ge.setTextureUnits(x.state.textureUnits),se===!0&&Te.setGlobalState(T.clippingPlanes,x.state.camera)):x=null,S.pop(),b=S.length>0?S[S.length-1]:null,D!==null&&D.renderEnd()};function qe(e,t,n,r){if(e.visible===!1)return;if(e.layers.test(t.layers)){if(e.isGroup)n=e.renderOrder;else if(e.isLOD)e.autoUpdate===!0&&e.update(t);else if(e.isLightProbeGrid)x.pushLightProbeGrid(e);else if(e.isLight)x.pushLight(e),e.castShadow&&x.pushShadow(e);else if(e.isSprite){if(!e.frustumCulled||e.intersectsFrustum(H)){r&&ue.setFromMatrixPosition(e.matrixWorld).applyMatrix4(U);let i=be.update(e),a=e.material;a.visible&&b.push(e,i,a,n,ue.z,null,t)}}else if((e.isMesh||e.isLine||e.isPoints)&&(!e.frustumCulled||e.intersectsFrustum(H))){let i=be.update(e),a=e.material;if(r&&(e.boundingSphere===void 0?(i.boundingSphere===null&&i.computeBoundingSphere(),ue.copy(i.boundingSphere.center)):(e.boundingSphere===null&&e.computeBoundingSphere(),ue.copy(e.boundingSphere.center)),ue.applyMatrix4(e.matrixWorld).applyMatrix4(U)),Array.isArray(a)){let r=i.groups;for(let o=0,s=r.length;o<s;o++){let s=r[o],c=a[s.materialIndex];c&&c.visible&&b.push(e,i,c,n,ue.z,s,t)}}else a.visible&&b.push(e,i,a,n,ue.z,null,t)}}let i=e.children;for(let e=0,a=i.length;e<a;e++)qe(i[e],t,n,r)}function Je(e,t,n,r){let{opaque:i,transmissive:a,transparent:o}=e;x.setupLightsView(n),se===!0&&Te.setGlobalState(T.clippingPlanes,n),r&&J.viewport(I.copy(r)),i.length>0&&Xe(i,t,n),a.length>0&&Xe(a,t,n),o.length>0&&Xe(o,t,n),J.buffers.depth.setTest(!0),J.buffers.depth.setMask(!0),J.buffers.color.setMask(!0),J.setPolygonOffset(!1)}function Ye(e,t,n,r){if((n.isScene===!0?n.overrideMaterial:null)!==null)return;if(x.state.transmissionRenderTarget[r.id]===void 0){let e=fe.has(`EXT_color_buffer_half_float`)||fe.has(`EXT_color_buffer_float`);x.state.transmissionRenderTarget[r.id]=new Wf(1,1,{generateMipmaps:!0,type:e?Cu:gu,minFilter:hu,samples:Math.max(4,pe.samples),stencilBuffer:i,resolveDepthBuffer:!1,resolveStencilBuffer:!1,storeMultisampledDepthBuffer:!1,storeMultisampledStencilBuffer:!1,colorSpace:jf.workingColorSpace})}let a=x.state.transmissionRenderTarget[r.id],o=r.viewport||I;a.setSize(o.z*T.transmissionResolutionScale,o.w*T.transmissionResolutionScale);let s=T.getRenderTarget(),c=T.getActiveCubeFace(),l=T.getActiveMipmapLevel();T.setRenderTarget(a),T.getClearColor(R),te=T.getClearAlpha(),te<1&&T.setClearColor(16777215,.5),T.clear(),de&&De.render(n);let u=T.toneMapping;T.toneMapping=0;let d=r.viewport;if(r.viewport!==void 0&&(r.viewport=void 0),x.setupLightsView(r),se===!0&&Te.setGlobalState(T.clippingPlanes,r),Xe(e,n,r),ge.updateMultisampleRenderTarget(a),ge.updateRenderTargetMipmap(a),fe.has(`WEBGL_multisampled_render_to_texture`)===!1){let e=!1;for(let i=0,a=t.length;i<a;i++){let{object:a,geometry:o,material:s,group:c}=t[i];if(s.side===2&&a.layers.test(r.layers)){let t=s.side;s.side=1,s.needsUpdate=!0,Ze(a,n,r,o,s,c),s.side=t,s.needsUpdate=!0,e=!0}}e===!0&&(ge.updateMultisampleRenderTarget(a),ge.updateRenderTargetMipmap(a))}T.setRenderTarget(s,c,l),T.setClearColor(R,te),d!==void 0&&(r.viewport=d),T.toneMapping=u}function Xe(e,t,n){let r=t.isScene===!0?t.overrideMaterial:null;for(let i=0,a=e.length;i<a;i++){let a=e[i],{object:o,geometry:s,group:c}=a,l=a.material;l.allowOverride===!0&&r!==null&&(l=r),o.layers.test(n.layers)&&Ze(o,t,n,s,l,c)}}function Ze(e,t,n,r,i,a){D!==null&&i.isNodeMaterial&&D.setObject(e,i),e.onBeforeRender(T,t,n,r,i,a),e.modelViewMatrix.multiplyMatrices(n.matrixWorldInverse,e.matrixWorld),e.normalMatrix.getNormalMatrix(e.modelViewMatrix),i.onBeforeRender(T,t,n,r,e,a),i.transparent===!0&&i.side===2&&i.forceSinglePass===!1?(i.side=1,i.needsUpdate=!0,T.renderBufferDirect(n,t,r,i,e,a),i.side=0,i.needsUpdate=!0,T.renderBufferDirect(n,t,r,i,e,a),i.side=2):T.renderBufferDirect(n,t,r,i,e,a),e.onAfterRender(T,t,n,r,i,a)}function Qe(e,t,n){t.isScene!==!0&&(t=W);let r=he.get(e),i=x.state.lights,a=x.state.shadowsArray,o=i.state.version,s=xe.getParameters(e,i.state,a,t,n,x.state.lightProbeGridArray),c=xe.getProgramCacheKey(s),l=r.programs;r.environment=e.isMeshStandardMaterial||e.isMeshLambertMaterial||e.isMeshPhongMaterial?t.environment:null,r.fog=t.fog;let u=e.isMeshStandardMaterial||e.isMeshLambertMaterial&&!e.envMap||e.isMeshPhongMaterial&&!e.envMap;r.envMap=_e.get(e.envMap||r.environment,u),r.envMapRotation=r.environment!==null&&e.envMap===null?t.environmentRotation:e.envMapRotation,l===void 0&&(e.addEventListener(`dispose`,Re),l=new Map,r.programs=l);let d=l.get(c);if(d!==void 0){if(r.currentProgram===d&&r.lightsStateVersion===o)return et(e,s),d}else s.uniforms=xe.getUniforms(e),D!==null&&e.isNodeMaterial&&D.build(e,n,s),e.onBeforeCompile(s,T),d=xe.acquireProgram(s,c),l.set(c,d),r.uniforms=s.uniforms;let f=r.uniforms;return(!e.isShaderMaterial&&!e.isRawShaderMaterial||e.clipping===!0)&&(f.clippingPlanes=Te.uniform),et(e,s),r.needsLights=it(e),r.lightsStateVersion=o,r.needsLights&&(f.ambientLightColor.value=i.state.ambient,f.lightProbe.value=i.state.probe,f.sunLights.value=i.state.sun,f.sunLightShadows.value=i.state.sunShadow,f.directionalLights.value=i.state.directional,f.directionalLightShadows.value=i.state.directionalShadow,f.spotLights.value=i.state.spot,f.spotLightShadows.value=i.state.spotShadow,f.rectAreaLights.value=i.state.rectArea,f.ltc_1.value=i.state.rectAreaLTC1,f.ltc_2.value=i.state.rectAreaLTC2,f.pointLights.value=i.state.point,f.pointLightShadows.value=i.state.pointShadow,f.hemisphereLights.value=i.state.hemi,f.sunShadowMatrix.value=i.state.sunShadowMatrix,f.sunShadowCascade.value=i.state.sunShadowCascade,f.directionalShadowMatrix.value=i.state.directionalShadowMatrix,f.spotLightMatrix.value=i.state.spotLightMatrix,f.spotLightMap.value=i.state.spotLightMap,f.pointShadowMatrix.value=i.state.pointShadowMatrix),r.lightProbeGrid=x.state.lightProbeGridArray.length>0,r.currentProgram=d,r.uniformsList=null,d}function $e(e){if(e.uniformsList===null){let t=e.currentProgram.getUniforms();e.uniformsList=tb.seqWithValue(t.seq,e.uniforms)}return e.uniformsList}function et(e,t){let n=he.get(e);n.outputColorSpace=t.outputColorSpace,n.batching=t.batching,n.batchingColor=t.batchingColor,n.instancing=t.instancing,n.instancingColor=t.instancingColor,n.instancingMorph=t.instancingMorph,n.skinning=t.skinning,n.morphTargets=t.morphTargets,n.morphNormals=t.morphNormals,n.morphColors=t.morphColors,n.morphTargetsCount=t.morphTargetsCount,n.numClippingPlanes=t.numClippingPlanes,n.numIntersection=t.numClipIntersection,n.vertexAlphas=t.vertexAlphas,n.vertexTangents=t.vertexTangents,n.toneMapping=t.toneMapping}function tt(e,t){if(e.length===0)return null;if(e.length===1)return e[0].texture===null?null:e[0];y.setFromMatrixPosition(t.matrixWorld);for(let t=0,n=e.length;t<n;t++){let n=e[t];if(n.texture!==null&&n.boundingBox.containsPoint(y))return n}return null}function nt(e,t,n,r,i){t.isScene!==!0&&(t=W),ge.resetTextureUnits();let a=t.fog,o=r.isMeshStandardMaterial||r.isMeshLambertMaterial||r.isMeshPhongMaterial?t.environment:null,s=N===null?T.outputColorSpace:N.isXRRenderTarget===!0?N.texture.colorSpace:jf.workingColorSpace,c=r.isMeshStandardMaterial||r.isMeshLambertMaterial&&!r.envMap||r.isMeshPhongMaterial&&!r.envMap,l=_e.get(r.envMap||o,c),u=r.vertexColors===!0&&!!n.attributes.color&&n.attributes.color.itemSize===4,d=!!n.attributes.tangent&&(!!r.normalMap||r.anisotropy>0),f=!!n.morphAttributes.position,p=!!n.morphAttributes.normal,m=!!n.morphAttributes.color,h=0;r.toneMapped&&(N===null||N.isXRRenderTarget===!0)&&(h=T.toneMapping);let g=n.morphAttributes.position||n.morphAttributes.normal||n.morphAttributes.color,_=g===void 0?0:g.length,v=he.get(r),y=x.state.lights;if(se===!0&&(ce===!0||e!==F)){let t=e===F&&r.id===P;Te.setState(r,e,t)}let b=!1;r.version===v.__version?v.needsLights&&v.lightsStateVersion!==y.state.version?b=!0:v.outputColorSpace===s?i.isBatchedMesh&&v.batching===!1||!i.isBatchedMesh&&v.batching===!0||i.isBatchedMesh&&v.batchingColor===!0&&i._colorsTexture===null||i.isBatchedMesh&&v.batchingColor===!1&&i._colorsTexture!==null||i.isInstancedMesh&&v.instancing===!1||!i.isInstancedMesh&&v.instancing===!0||i.isSkinnedMesh&&v.skinning===!1||!i.isSkinnedMesh&&v.skinning===!0||i.isInstancedMesh&&v.instancingColor===!0&&i.instanceColor===null||i.isInstancedMesh&&v.instancingColor===!1&&i.instanceColor!==null||i.isInstancedMesh&&v.instancingMorph===!0&&i.morphTexture===null||i.isInstancedMesh&&v.instancingMorph===!1&&i.morphTexture!==null?b=!0:v.envMap===l?r.fog===!0&&v.fog!==a||v.numClippingPlanes!==void 0&&(v.numClippingPlanes!==Te.numPlanes||v.numIntersection!==Te.numIntersection)?b=!0:v.vertexAlphas===u&&v.vertexTangents===d&&v.morphTargets===f&&v.morphNormals===p&&v.morphColors===m&&v.toneMapping===h&&v.morphTargetsCount===_?!!v.lightProbeGrid!=x.state.lightProbeGridArray.length>0&&(b=!0):b=!0:b=!0:b=!0:(b=!0,v.__version=r.version);let S=v.currentProgram;b===!0&&(S=Qe(r,t,i),D&&r.isNodeMaterial&&D.onUpdateProgram(r,S,v));let C=!1,w=!1,E=!1,O=S.getUniforms(),k=v.uniforms;if(J.useProgram(S.program)&&(C=!0,w=!0,E=!0),r.id!==P&&(P=r.id,w=!0),v.needsLights){let e=tt(x.state.lightProbeGridArray,i);v.lightProbeGrid!==e&&(v.lightProbeGrid=e,w=!0)}if(C||F!==e){J.buffers.depth.getReversed()&&e.reversedDepth!==!0&&(e._reversedDepth=!0,e.updateProjectionMatrix()),O.setValue(K,`projectionMatrix`,e.projectionMatrix),O.setValue(K,`viewMatrix`,e.matrixWorldInverse);let t=O.map.cameraPosition;t!==void 0&&t.setValue(K,le.setFromMatrixPosition(e.matrixWorld)),pe.logarithmicDepthBuffer&&O.setValue(K,`logDepthBufFC`,2/(Math.log(e.far+1)/Math.LN2)),(r.isMeshPhongMaterial||r.isMeshToonMaterial||r.isMeshLambertMaterial||r.isMeshBasicMaterial||r.isMeshStandardMaterial||r.isShaderMaterial)&&O.setValue(K,`isOrthographic`,e.isOrthographicCamera===!0),F!==e&&(F=e,w=!0,E=!0)}if(v.needsLights&&(y.state.sunShadowMap.length>0&&O.setValue(K,`sunShadowMap`,y.state.sunShadowMap,ge),y.state.directionalShadowMap.length>0&&O.setValue(K,`directionalShadowMap`,y.state.directionalShadowMap,ge),y.state.spotShadowMap.length>0&&O.setValue(K,`spotShadowMap`,y.state.spotShadowMap,ge),y.state.pointShadowMap.length>0&&O.setValue(K,`pointShadowMap`,y.state.pointShadowMap,ge)),i.isSkinnedMesh){O.setOptional(K,i,`bindMatrix`),O.setOptional(K,i,`bindMatrixInverse`);let e=i.skeleton;e&&(e.boneTexture===null&&e.computeBoneTexture(),O.setValue(K,`boneTexture`,e.boneTexture,ge))}i.isBatchedMesh&&(O.setOptional(K,i,`batchingTexture`),O.setValue(K,`batchingTexture`,i._matricesTexture,ge),O.setOptional(K,i,`batchingIdTexture`),O.setValue(K,`batchingIdTexture`,i._indirectTexture,ge),O.setOptional(K,i,`batchingColorTexture`),i._colorsTexture!==null&&O.setValue(K,`batchingColorTexture`,i._colorsTexture,ge));let A=n.morphAttributes;if((A.position!==void 0||A.normal!==void 0||A.color!==void 0)&&Oe.update(i,n,S),(w||v.receiveShadow!==i.receiveShadow)&&(v.receiveShadow=i.receiveShadow,O.setValue(K,`receiveShadow`,i.receiveShadow)),(r.isMeshStandardMaterial||r.isMeshLambertMaterial||r.isMeshPhongMaterial)&&r.envMap===null&&t.environment!==null&&(k.envMapIntensity.value=t.environmentIntensity),k.dfgLUT!==void 0&&(k.dfgLUT.value=Sx()),w){if(O.setValue(K,`toneMappingExposure`,T.toneMappingExposure),v.needsLights&&rt(k,E),a&&r.fog===!0&&Se.refreshFogUniforms(k,a),Se.refreshMaterialUniforms(k,r,B,ne,x.state.transmissionRenderTarget[e.id]),v.needsLights&&v.lightProbeGrid){let e=v.lightProbeGrid;k.probesSH.value=e.texture,k.probesMin.value.copy(e.boundingBox.min),k.probesMax.value.copy(e.boundingBox.max),k.probesResolution.value.copy(e.resolution)}tb.upload(K,$e(v),k,ge)}if(r.isShaderMaterial&&r.uniformsNeedUpdate===!0&&(tb.upload(K,$e(v),k,ge),r.uniformsNeedUpdate=!1),r.isSpriteMaterial&&O.setValue(K,`center`,i.center),O.setValue(K,`modelViewMatrix`,i.modelViewMatrix),O.setValue(K,`normalMatrix`,i.normalMatrix),O.setValue(K,`modelMatrix`,i.matrixWorld),r.uniformsGroups!==void 0){let e=r.uniformsGroups;for(let t=0,n=e.length;t<n;t++){let n=e[t];Ne.update(n,S),Ne.bind(n,S)}}return S}function rt(e,t){e.ambientLightColor.needsUpdate=t,e.lightProbe.needsUpdate=t,e.sunLights.needsUpdate=t,e.sunLightShadows.needsUpdate=t,e.directionalLights.needsUpdate=t,e.directionalLightShadows.needsUpdate=t,e.pointLights.needsUpdate=t,e.pointLightShadows.needsUpdate=t,e.spotLights.needsUpdate=t,e.spotLightShadows.needsUpdate=t,e.rectAreaLights.needsUpdate=t,e.hemisphereLights.needsUpdate=t}function it(e){return e.isMeshLambertMaterial||e.isMeshToonMaterial||e.isMeshPhongMaterial||e.isMeshStandardMaterial||e.isShadowMaterial||e.isShaderMaterial&&e.lights===!0}this.getActiveCubeFace=function(){return j},this.getActiveMipmapLevel=function(){return M},this.getRenderTarget=function(){return N},this.setRenderTargetTextures=function(e,t,n){let r=he.get(e);r.__autoAllocateDepthBuffer=e.resolveDepthBuffer===!1,r.__autoAllocateDepthBuffer===!1&&(r.__useRenderToTexture=!1),he.get(e.texture).__webglTexture=t,he.get(e.depthTexture).__webglTexture=r.__autoAllocateDepthBuffer?void 0:n,r.__hasExternalTextures=!0},this.setRenderTargetFramebuffer=function(e,t){let n=he.get(e);n.__webglFramebuffer=t,n.__useDefaultFramebuffer=t===void 0},this.setRenderTarget=function(e,t=0,n=0){N=e,j=t,M=n;let r=null,i=!1,a=!1;if(e){let o=he.get(e);if(o.__useDefaultFramebuffer!==void 0){J.bindFramebuffer(K.FRAMEBUFFER,o.__webglFramebuffer),I.copy(e.viewport),L.copy(e.scissor),ee=e.scissorTest,J.viewport(I),J.scissor(L),J.setScissorTest(ee),P=-1;return}if(o.__webglFramebuffer===void 0)ge.setupRenderTarget(e);else if(o.__hasExternalTextures)ge.rebindTextures(e,he.get(e.texture).__webglTexture,he.get(e.depthTexture).__webglTexture);else if(e.depthBuffer){let t=e.depthTexture;if(o.__boundDepthTexture!==t){if(t!==null&&he.has(t)&&(e.width!==t.image.width||e.height!==t.image.height))throw Error(`THREE.WebGLRenderer: Attached DepthTexture is initialized to the incorrect size.`);ge.setupDepthRenderbuffer(e)}}let s=e.texture;(s.isData3DTexture||s.isDataArrayTexture||s.isCompressedArrayTexture)&&(a=!0);let c=he.get(e).__webglFramebuffer;e.isWebGLCubeRenderTarget?(r=Array.isArray(c[t])?c[t][n]:c[t],i=!0):r=e.samples>0&&ge.useMultisampledRTT(e)===!1?he.get(e).__webglMultisampledFramebuffer:Array.isArray(c)?c[n]:c,I.copy(e.viewport),L.copy(e.scissor),ee=e.scissorTest}else I.copy(ie).multiplyScalar(B).floor(),L.copy(ae).multiplyScalar(B).floor(),ee=oe;if(n!==0&&(r=O),J.bindFramebuffer(K.FRAMEBUFFER,r)&&J.drawBuffers(e,r),J.viewport(I),J.scissor(L),J.setScissorTest(ee),i){let r=he.get(e.texture);K.framebufferTexture2D(K.FRAMEBUFFER,K.COLOR_ATTACHMENT0,K.TEXTURE_CUBE_MAP_POSITIVE_X+t,r.__webglTexture,n)}else if(a){let r=t;for(let t=0;t<e.textures.length;t++){let i=he.get(e.textures[t]);K.framebufferTextureLayer(K.FRAMEBUFFER,K.COLOR_ATTACHMENT0+t,i.__webglTexture,n,r)}}else if(e!==null&&n!==0){let t=he.get(e.texture);K.framebufferTexture2D(K.FRAMEBUFFER,K.COLOR_ATTACHMENT0,K.TEXTURE_2D,t.__webglTexture,n)}P=-1};function at(e){let t=he.get(e);return(t.__readFormat!==e.format||t.__readType!==e.type)&&(t.__readFormat=e.format,t.__readType=e.type,t.__formatReadable=pe.textureFormatReadable(e.format),t.__typeReadable=pe.textureTypeReadable(e.type)),t}this.readRenderTargetPixels=function(e,t,n,r,i,a,o,s=0){if(!(e&&e.isWebGLRenderTarget)){Wd(`WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.`);return}let c=he.get(e).__webglFramebuffer;if(e.isWebGLCubeRenderTarget&&o!==void 0&&(c=c[o]),c){J.bindFramebuffer(K.FRAMEBUFFER,c);try{let o=e.textures[s],c=o.format,l=o.type;e.textures.length>1&&K.readBuffer(K.COLOR_ATTACHMENT0+s);let u=at(o);if(u.__formatReadable===!1){Wd(`WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.`);return}if(u.__typeReadable===!1){Wd(`WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.`);return}t>=0&&t<=e.width-r&&n>=0&&n<=e.height-i&&K.readPixels(t,n,r,i,je.convert(c),je.convert(l),a)}finally{let e=N===null?null:he.get(N).__webglFramebuffer;J.bindFramebuffer(K.FRAMEBUFFER,e)}}},this.readRenderTargetPixelsAsync=async function(e,t,n,r,i,a,o,s=0){if(!(e&&e.isWebGLRenderTarget))throw Error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.`);let c=he.get(e).__webglFramebuffer;if(e.isWebGLCubeRenderTarget&&o!==void 0&&(c=c[o]),c){if(t>=0&&t<=e.width-r&&n>=0&&n<=e.height-i){J.bindFramebuffer(K.FRAMEBUFFER,c);let o=e.textures[s],l=o.format,u=o.type;e.textures.length>1&&K.readBuffer(K.COLOR_ATTACHMENT0+s);let d=at(o);if(d.__formatReadable===!1)throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.`);if(d.__typeReadable===!1)throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.`);let f=K.createBuffer();K.bindBuffer(K.PIXEL_PACK_BUFFER,f),K.bufferData(K.PIXEL_PACK_BUFFER,a.byteLength,K.STREAM_READ),K.readPixels(t,n,r,i,je.convert(l),je.convert(u),0),K.bindBuffer(K.PIXEL_PACK_BUFFER,null);let p=N===null?null:he.get(N).__webglFramebuffer;J.bindFramebuffer(K.FRAMEBUFFER,p);let m=K.fenceSync(K.SYNC_GPU_COMMANDS_COMPLETE,0);return K.flush(),await Kd(K,m,4),K.bindBuffer(K.PIXEL_PACK_BUFFER,f),K.getBufferSubData(K.PIXEL_PACK_BUFFER,0,a),K.bindBuffer(K.PIXEL_PACK_BUFFER,null),K.deleteBuffer(f),K.deleteSync(m),a}throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: requested read bounds are out of range.`)}},this.copyFramebufferToTexture=function(e,t=null,n=0){let r=2**-n,i=Math.floor(e.image.width*r),a=Math.floor(e.image.height*r),o=t===null?0:t.x,s=t===null?0:t.y;ge.setTexture2D(e,0),K.copyTexSubImage2D(K.TEXTURE_2D,n,0,0,o,s,i,a),J.unbindTexture()},this.copyTextureToTexture=function(e,t,n=null,r=null,i=0,a=0){let o,s,c,l,u,d,f,p,m,h=e.isCompressedTexture?e.mipmaps[a]:e.image;if(n!==null)o=n.max.x-n.min.x,s=n.max.y-n.min.y,c=n.isBox3?n.max.z-n.min.z:1,l=n.min.x,u=n.min.y,d=n.isBox3?n.min.z:0;else{let t=2**-i;o=Math.floor(h.width*t),s=Math.floor(h.height*t),c=e.isDataArrayTexture?h.depth:e.isData3DTexture?Math.floor(h.depth*t):1,l=0,u=0,d=0}r===null?(f=0,p=0,m=0):(f=r.x,p=r.y,m=r.z);let g=je.convert(t.format),_=je.convert(t.type),v;t.isData3DTexture?(ge.setTexture3D(t,0),v=K.TEXTURE_3D):t.isDataArrayTexture||t.isCompressedArrayTexture?(ge.setTexture2DArray(t,0),v=K.TEXTURE_2D_ARRAY):(ge.setTexture2D(t,0),v=K.TEXTURE_2D),J.activeTexture(K.TEXTURE0),J.pixelStorei(K.UNPACK_FLIP_Y_WEBGL,t.flipY),J.pixelStorei(K.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t.premultiplyAlpha),J.pixelStorei(K.UNPACK_ALIGNMENT,t.unpackAlignment);let y=J.getParameter(K.UNPACK_ROW_LENGTH),b=J.getParameter(K.UNPACK_IMAGE_HEIGHT),x=J.getParameter(K.UNPACK_SKIP_PIXELS),S=J.getParameter(K.UNPACK_SKIP_ROWS),C=J.getParameter(K.UNPACK_SKIP_IMAGES);J.pixelStorei(K.UNPACK_ROW_LENGTH,h.width),J.pixelStorei(K.UNPACK_IMAGE_HEIGHT,h.height),J.pixelStorei(K.UNPACK_SKIP_PIXELS,l),J.pixelStorei(K.UNPACK_SKIP_ROWS,u),J.pixelStorei(K.UNPACK_SKIP_IMAGES,d);let w=e.isDataArrayTexture||e.isData3DTexture,T=t.isDataArrayTexture||t.isData3DTexture;if(e.isDepthTexture){let n=he.get(e),r=he.get(t),h=he.get(n.__renderTarget),g=he.get(r.__renderTarget);J.bindFramebuffer(K.READ_FRAMEBUFFER,h.__webglFramebuffer),J.bindFramebuffer(K.DRAW_FRAMEBUFFER,g.__webglFramebuffer);for(let n=0;n<c;n++)w&&(K.framebufferTextureLayer(K.READ_FRAMEBUFFER,K.COLOR_ATTACHMENT0,he.get(e).__webglTexture,i,d+n),K.framebufferTextureLayer(K.DRAW_FRAMEBUFFER,K.COLOR_ATTACHMENT0,he.get(t).__webglTexture,a,m+n)),K.blitFramebuffer(l,u,o,s,f,p,o,s,K.DEPTH_BUFFER_BIT,K.NEAREST);J.bindFramebuffer(K.READ_FRAMEBUFFER,null),J.bindFramebuffer(K.DRAW_FRAMEBUFFER,null)}else if(i!==0||e.isRenderTargetTexture||he.has(e)){let n=he.get(e),r=he.get(t);J.bindFramebuffer(K.READ_FRAMEBUFFER,k),J.bindFramebuffer(K.DRAW_FRAMEBUFFER,A);for(let e=0;e<c;e++)w?K.framebufferTextureLayer(K.READ_FRAMEBUFFER,K.COLOR_ATTACHMENT0,n.__webglTexture,i,d+e):K.framebufferTexture2D(K.READ_FRAMEBUFFER,K.COLOR_ATTACHMENT0,K.TEXTURE_2D,n.__webglTexture,i),T?K.framebufferTextureLayer(K.DRAW_FRAMEBUFFER,K.COLOR_ATTACHMENT0,r.__webglTexture,a,m+e):K.framebufferTexture2D(K.DRAW_FRAMEBUFFER,K.COLOR_ATTACHMENT0,K.TEXTURE_2D,r.__webglTexture,a),i===0?T?K.copyTexSubImage3D(v,a,f,p,m+e,l,u,o,s):K.copyTexSubImage2D(v,a,f,p,l,u,o,s):K.blitFramebuffer(l,u,o,s,f,p,o,s,K.COLOR_BUFFER_BIT,K.NEAREST);J.bindFramebuffer(K.READ_FRAMEBUFFER,null),J.bindFramebuffer(K.DRAW_FRAMEBUFFER,null)}else T?e.isDataTexture||e.isData3DTexture?K.texSubImage3D(v,a,f,p,m,o,s,c,g,_,h.data):t.isCompressedArrayTexture?K.compressedTexSubImage3D(v,a,f,p,m,o,s,c,g,h.data):K.texSubImage3D(v,a,f,p,m,o,s,c,g,_,h):e.isDataTexture?K.texSubImage2D(K.TEXTURE_2D,a,f,p,o,s,g,_,h.data):e.isCompressedTexture?K.compressedTexSubImage2D(K.TEXTURE_2D,a,f,p,h.width,h.height,g,h.data):K.texSubImage2D(K.TEXTURE_2D,a,f,p,o,s,g,_,h);J.pixelStorei(K.UNPACK_ROW_LENGTH,y),J.pixelStorei(K.UNPACK_IMAGE_HEIGHT,b),J.pixelStorei(K.UNPACK_SKIP_PIXELS,x),J.pixelStorei(K.UNPACK_SKIP_ROWS,S),J.pixelStorei(K.UNPACK_SKIP_IMAGES,C),a===0&&t.generateMipmaps&&K.generateMipmap(v),J.unbindTexture()},this.initRenderTarget=function(e){he.get(e).__webglFramebuffer===void 0&&ge.setupRenderTarget(e)},this.initTexture=function(e){e.isCubeTexture?ge.setTextureCube(e,0):e.isData3DTexture?ge.setTexture3D(e,0):e.isDataArrayTexture||e.isCompressedArrayTexture?ge.setTexture2DArray(e,0):ge.setTexture2D(e,0),J.unbindTexture()},this.resetState=function(){j=0,M=0,N=null,J.reset(),Me.reset()},typeof __THREE_DEVTOOLS__<`u`&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(`observe`,{detail:this}))}get coordinateSystem(){return Fd}get outputColorSpace(){return this._outputColorSpace}set outputColorSpace(e){this._outputColorSpace=e;let t=this.getContext();t.drawingBufferColorSpace=jf._getDrawingBufferColorSpace(e),t.unpackColorSpace=jf._getUnpackColorSpace()}},wx={VALIDATION_ERROR:`VALIDATION_ERROR`,INVALID_STATE:`INVALID_STATE`,ENVIRONMENT_ERROR:`ENVIRONMENT_ERROR`,INVALID_CONFIG:`INVALID_CONFIG`,ENCODING_ERROR:`ENCODING_ERROR`,UNKNOWN_ERROR:`UNKNOWN_ERROR`},Tx=class extends Error{code;context;originalError;constructor(e,t=wx.UNKNOWN_ERROR,n){super(e),this.name=`VisualizationError`,this.code=t,this.context=n?.context,this.originalError=n?.originalError,n?.originalError&&(this.cause=n.originalError)}},Ex=new class{debug(){}info(){}warn(){}error(){}};function Dx(){return Ex}var Ox={studio:{toneMapping:4,toneMappingExposure:1,envMapIntensity:1,environmentIntensity:.85,hemisphereIntensity:.5,ambientIntensity:.25,cullBackfaces:!1,ambientOcclusion:!0,sunlightIntensity:1.6},technical:{toneMapping:7,toneMappingExposure:1,envMapIntensity:.55,environmentIntensity:.6,hemisphereIntensity:.25,ambientIntensity:.15,cullBackfaces:!1,ambientOcclusion:!0,sunlightIntensity:2.2},showcase:{toneMapping:4,toneMappingExposure:1.15,envMapIntensity:1.4,environmentIntensity:1,hemisphereIntensity:.2,ambientIntensity:.1,cullBackfaces:!1,ambientOcclusion:!0,sunlightIntensity:2.6},arctic:{toneMapping:7,toneMappingExposure:1.05,envMapIntensity:.85,environmentIntensity:1.1,hemisphereIntensity:.3,ambientIntensity:.15,cullBackfaces:!1,ambientOcclusion:!0,sunlightIntensity:2,materialOverride:{color:15659509,metalness:0,roughness:.75}},xray:{toneMapping:7,toneMappingExposure:1.3,envMapIntensity:.4,environmentIntensity:.8,hemisphereIntensity:.6,ambientIntensity:.6,cullBackfaces:!1,ambientOcclusion:!1,sunlightIntensity:.6,materialOverride:{color:10470632,metalness:0,roughness:.9,opacity:.28,depthWrite:!1,side:2}},lineart:{toneMapping:7,toneMappingExposure:1,envMapIntensity:1,environmentIntensity:1,hemisphereIntensity:.6,ambientIntensity:3.2,cullBackfaces:!1,ambientOcclusion:!1,sunlightIntensity:0,requiresEdges:!0,materialOverride:{color:16251130,metalness:0,roughness:1}},wireframe:{toneMapping:7,toneMappingExposure:1,envMapIntensity:1,environmentIntensity:1,hemisphereIntensity:.4,ambientIntensity:2,cullBackfaces:!1,ambientOcclusion:!1,sunlightIntensity:0,materialOverride:{color:2830648,metalness:0,roughness:1,wireframe:!0,side:2}}},kx=`selvaEnvMapIntensity`;function Ax(e,t){return e+(1-e)*Math.min(1,Math.max(0,t))}function jx(e){let t=Ox[e];return{envMapIntensity:t.envMapIntensity,cullBackfaces:t.cullBackfaces}}function Mx(e){if(!e||typeof e!=`string`)return Dx().warn(`Invalid color input: ${e}, using white`),new Q(16777215);let t=e.trim();if(/^#?[0-9A-Fa-f]{6}$/.test(t))try{return new Q(t.startsWith(`#`)?t:`#${t}`)}catch{return Dx().warn(`Invalid hex color: ${e}, using white`),new Q(16777215)}if(t.includes(`,`)){let e=t.split(`,`).map(e=>parseInt(e.trim(),10));if(e.length===3&&e.every(e=>!isNaN(e)&&e>=0&&e<=255))return new Q(e[0]/255,e[1]/255,e[2]/255)}let n=t.toLowerCase();return n in Q.NAMES?new Q(Q.NAMES[n]):(Dx().warn(`Invalid color string: ${e}, using white`),new Q(16777215))}function Nx(e,t,n=`z`){e.forEach(e=>{e.position[n]-=t})}function Px(e){let t=new Wp;return e.length===0||e.forEach(e=>{e.updateMatrixWorld(!0);let n=new Wp().setFromObject(e);t.union(n)}),t}var Fx=new Set;function Ix(e){return e?!Fx.has(e):!1}var Lx=new Set,Rx=1;function zx(e){let t=Math.max(1,e);if(t!==Rx){Rx=t;for(let e of Lx)e(t)}}function Bx(e){return Lx.add(e),e(Rx),()=>Lx.delete(e)}function Vx(e){if(Ix(e)){for(let[t,n]of Object.entries(e))t!==`envMap`&&n instanceof Vf&&n.dispose();e.dispose()}}function Hx(e){e&&(Array.isArray(e)?e.forEach(Vx):Vx(e))}function Ux(e,t={}){let{materials:n=!0}=t;e.traverse(e=>{let t=e;(t.geometry||t.material)&&(t.geometry&&t.geometry?.dispose(),n&&Hx(t.material))})}var Wx=new WeakMap,Gx=new WeakMap,Kx=new Set;function qx(e){let t=e.userData?.members;return!Array.isArray(t)||t.length===0||t.some(e=>e.indexStart==null||e.indexCount==null)?null:t}function Jx(e){let t=Wx.get(e);return t||(t={base:Array.isArray(e.material)?e.material[0]:e.material,hidden:Kx,highlight:null},Wx.set(e,t)),t}function Yx(e,t,n){let{geometry:r}=e;if(r.clearGroups(),n.hidden.size===0&&!n.highlight){e.material=n.base,Wx.delete(e);return}let i=-1,a=0,o=0,s=()=>{i>=0&&r.addGroup(i,a-i,o),i=-1};for(let e=0;e<t.length;e++){if(n.hidden.has(e)){s();continue}let{indexStart:r,indexCount:c}=t[e],l=+(n.highlight?.index===e);(i<0||l!==o||r!==a)&&(s(),i=r,o=l),a=r+c}s(),e.material=n.highlight?[n.base,n.highlight.material]:[n.base]}function Xx(e,t){let n=qx(e);if(!n)return;let r=Jx(e);t(r),Yx(e,n,r),Gx.get(e)?.forEach(e=>e())}function Zx(e){return Wx.get(e)?.hidden??Kx}function Qx(e,t){let n=Zx(e);n.size===t.size&&[...t].every(e=>n.has(e))||Xx(e,e=>{e.hidden=new Set(t)})}function $x(e){return Wx.get(e)?.base??(Array.isArray(e.material)?e.material[0]:e.material)}function eS(e,t,n){Xx(e,e=>{e.highlight={index:t,material:n}})}function tS(e){Wx.get(e)?.highlight&&Xx(e,e=>{e.highlight=null})}function nS(e,t){let n=Gx.get(e);return n||Gx.set(e,n=new Set),n.add(t),()=>n.delete(t)}var rS=new Wp,iS=new Z,aS=class extends w_{constructor(){super(),this.isLineSegmentsGeometry=!0,this.type=`LineSegmentsGeometry`,this.setIndex([0,2,1,2,3,1,2,4,3,4,5,3,4,6,5,6,7,5]),this.setAttribute(`position`,new gm([-1,2,0,1,2,0,-1,1,0,1,1,0,-1,0,0,1,0,0,-1,-1,0,1,-1,0],3)),this.setAttribute(`uv`,new gm([-1,2,1,2,-1,1,1,1,-1,-1,1,-1,-1,-2,1,-2],2))}applyMatrix4(e){let t=this.attributes.instanceStart,n=this.attributes.instanceEnd;return t!==void 0&&(t.applyMatrix4(e),n.applyMatrix4(e),t.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this}setPositions(e){let t;e instanceof Float32Array?t=e:Array.isArray(e)&&(t=new Float32Array(e));let n=new U_(t,6,1);return this.setAttribute(`instanceStart`,new jm(n,3,0)),this.setAttribute(`instanceEnd`,new jm(n,3,3)),this.instanceCount=this.attributes.instanceStart.count,this.computeBoundingBox(),this.computeBoundingSphere(),this}setColors(e){let t;e instanceof Float32Array?t=e:Array.isArray(e)&&(t=new Float32Array(e));let n=new U_(t,6,1);return this.setAttribute(`instanceColorStart`,new jm(n,3,0)),this.setAttribute(`instanceColorEnd`,new jm(n,3,3)),this}fromWireframeGeometry(e){return this.setPositions(e.attributes.position.array),this}fromEdgesGeometry(e){return this.setPositions(e.attributes.position.array),this}fromMesh(e){return this.fromWireframeGeometry(new ug(e.geometry)),this}fromLineSegments(e){let t=e.geometry;return this.setPositions(t.attributes.position.array),this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new Wp);let e=this.attributes.instanceStart,t=this.attributes.instanceEnd;e!==void 0&&t!==void 0&&(this.boundingBox.setFromBufferAttribute(e),rS.setFromBufferAttribute(t),this.boundingBox.union(rS))}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new bm),this.boundingBox===null&&this.computeBoundingBox();let e=this.attributes.instanceStart,t=this.attributes.instanceEnd;if(e!==void 0&&t!==void 0){let n=this.boundingSphere.center;this.boundingBox.getCenter(n);let r=0;for(let i=0,a=e.count;i<a;i++)iS.fromBufferAttribute(e,i),r=Math.max(r,n.distanceToSquared(iS)),iS.fromBufferAttribute(t,i),r=Math.max(r,n.distanceToSquared(iS));this.boundingSphere.radius=Math.sqrt(r),isNaN(this.boundingSphere.radius)&&console.error(`THREE.LineSegmentsGeometry.computeBoundingSphere(): Computed radius is NaN. The instanced position data is likely to have NaN values.`,this)}}toJSON(){}};$.line={worldUnits:{value:1},linewidth:{value:1},resolution:{value:new X},dashOffset:{value:0},dashScale:{value:1},dashSize:{value:1},gapSize:{value:1}},lv.line={uniforms:_g.merge([$.common,$.fog,$.line]),vertexShader:`
4226
4226
  #include <common>
4227
4227
  #include <color_pars_vertex>
4228
4228
  #include <fog_pars_vertex>
@@ -5024,7 +5024,7 @@ void main() {
5024
5024
  denoised /= totalWeight;
5025
5025
  }
5026
5026
  gl_FragColor = FRAGMENT_OUTPUT;
5027
- }`};function eC(e,t,n){let r=tC(e,t,n),i=`vec3[SAMPLES](`;for(let t=0;t<e;t++){let n=r[t];i+=`vec3(${n.x}, ${n.y}, ${n.z})${t<e-1?`,`:`)`}`}return i}function tC(e,t,n){let r=[];for(let i=0;i<e;i++){let a=2*Math.PI*t*i/e,o=(i/(e-1))**n;r.push(new Z(Math.cos(a),Math.sin(a),o))}return r}var nC=class{constructor(e=Math){this.grad3=[[1,1,0],[-1,1,0],[1,-1,0],[-1,-1,0],[1,0,1],[-1,0,1],[1,0,-1],[-1,0,-1],[0,1,1],[0,-1,1],[0,1,-1],[0,-1,-1]],this.grad4=[[0,1,1,1],[0,1,1,-1],[0,1,-1,1],[0,1,-1,-1],[0,-1,1,1],[0,-1,1,-1],[0,-1,-1,1],[0,-1,-1,-1],[1,0,1,1],[1,0,1,-1],[1,0,-1,1],[1,0,-1,-1],[-1,0,1,1],[-1,0,1,-1],[-1,0,-1,1],[-1,0,-1,-1],[1,1,0,1],[1,1,0,-1],[1,-1,0,1],[1,-1,0,-1],[-1,1,0,1],[-1,1,0,-1],[-1,-1,0,1],[-1,-1,0,-1],[1,1,1,0],[1,1,-1,0],[1,-1,1,0],[1,-1,-1,0],[-1,1,1,0],[-1,1,-1,0],[-1,-1,1,0],[-1,-1,-1,0]],this.p=[];for(let t=0;t<256;t++)this.p[t]=Math.floor(e.random()*256);this.perm=[];for(let e=0;e<512;e++)this.perm[e]=this.p[e&255];this.simplex=[[0,1,2,3],[0,1,3,2],[0,0,0,0],[0,2,3,1],[0,0,0,0],[0,0,0,0],[0,0,0,0],[1,2,3,0],[0,2,1,3],[0,0,0,0],[0,3,1,2],[0,3,2,1],[0,0,0,0],[0,0,0,0],[0,0,0,0],[1,3,2,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[1,2,0,3],[0,0,0,0],[1,3,0,2],[0,0,0,0],[0,0,0,0],[0,0,0,0],[2,3,0,1],[2,3,1,0],[1,0,2,3],[1,0,3,2],[0,0,0,0],[0,0,0,0],[0,0,0,0],[2,0,3,1],[0,0,0,0],[2,1,3,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[2,0,1,3],[0,0,0,0],[0,0,0,0],[0,0,0,0],[3,0,1,2],[3,0,2,1],[0,0,0,0],[3,1,2,0],[2,1,0,3],[0,0,0,0],[0,0,0,0],[0,0,0,0],[3,1,0,2],[0,0,0,0],[3,2,0,1],[3,2,1,0]]}noise(e,t){let n,r,i,a=.5*(Math.sqrt(3)-1),o=(e+t)*a,s=Math.floor(e+o),c=Math.floor(t+o),l=(3-Math.sqrt(3))/6,u=(s+c)*l,d=s-u,f=c-u,p=e-d,m=t-f,h,g;p>m?(h=1,g=0):(h=0,g=1);let _=p-h+l,v=m-g+l,y=p-1+2*l,b=m-1+2*l,x=s&255,S=c&255,C=this.perm[x+this.perm[S]]%12,w=this.perm[x+h+this.perm[S+g]]%12,T=this.perm[x+1+this.perm[S+1]]%12,E=.5-p*p-m*m;E<0?n=0:(E*=E,n=E*E*this._dot(this.grad3[C],p,m));let D=.5-_*_-v*v;D<0?r=0:(D*=D,r=D*D*this._dot(this.grad3[w],_,v));let O=.5-y*y-b*b;return O<0?i=0:(O*=O,i=O*O*this._dot(this.grad3[T],y,b)),70*(n+r+i)}noise3d(e,t,n){let r,i,a,o,s=(e+t+n)*(1/3),c=Math.floor(e+s),l=Math.floor(t+s),u=Math.floor(n+s),d=1/6,f=(c+l+u)*d,p=c-f,m=l-f,h=u-f,g=e-p,_=t-m,v=n-h,y,b,x,S,C,w;g>=_?_>=v?(y=1,b=0,x=0,S=1,C=1,w=0):g>=v?(y=1,b=0,x=0,S=1,C=0,w=1):(y=0,b=0,x=1,S=1,C=0,w=1):_<v?(y=0,b=0,x=1,S=0,C=1,w=1):g<v?(y=0,b=1,x=0,S=0,C=1,w=1):(y=0,b=1,x=0,S=1,C=1,w=0);let T=g-y+d,E=_-b+d,D=v-x+d,O=g-S+2*d,k=_-C+2*d,A=v-w+2*d,j=g-1+3*d,M=_-1+3*d,N=v-1+3*d,P=c&255,F=l&255,I=u&255,L=this.perm[P+this.perm[F+this.perm[I]]]%12,ee=this.perm[P+y+this.perm[F+b+this.perm[I+x]]]%12,R=this.perm[P+S+this.perm[F+C+this.perm[I+w]]]%12,te=this.perm[P+1+this.perm[F+1+this.perm[I+1]]]%12,z=.6-g*g-_*_-v*v;z<0?r=0:(z*=z,r=z*z*this._dot3(this.grad3[L],g,_,v));let ne=.6-T*T-E*E-D*D;ne<0?i=0:(ne*=ne,i=ne*ne*this._dot3(this.grad3[ee],T,E,D));let B=.6-O*O-k*k-A*A;B<0?a=0:(B*=B,a=B*B*this._dot3(this.grad3[R],O,k,A));let V=.6-j*j-M*M-N*N;return V<0?o=0:(V*=V,o=V*V*this._dot3(this.grad3[te],j,M,N)),32*(r+i+a+o)}noise4d(e,t,n,r){let i=this.grad4,a=this.simplex,o=this.perm,s=(Math.sqrt(5)-1)/4,c=(5-Math.sqrt(5))/20,l,u,d,f,p,m=(e+t+n+r)*s,h=Math.floor(e+m),g=Math.floor(t+m),_=Math.floor(n+m),v=Math.floor(r+m),y=(h+g+_+v)*c,b=h-y,x=g-y,S=_-y,C=v-y,w=e-b,T=t-x,E=n-S,D=r-C,O=w>T?32:0,k=w>E?16:0,A=T>E?8:0,j=w>D?4:0,M=T>D?2:0,N=+(E>D),P=O+k+A+j+M+N,F=+(a[P][0]>=3),I=+(a[P][1]>=3),L=+(a[P][2]>=3),ee=+(a[P][3]>=3),R=+(a[P][0]>=2),te=+(a[P][1]>=2),z=+(a[P][2]>=2),ne=+(a[P][3]>=2),B=+(a[P][0]>=1),V=+(a[P][1]>=1),re=+(a[P][2]>=1),ie=+(a[P][3]>=1),ae=w-F+c,oe=T-I+c,H=E-L+c,se=D-ee+c,ce=w-R+2*c,U=T-te+2*c,le=E-z+2*c,ue=D-ne+2*c,W=w-B+3*c,de=T-V+3*c,fe=E-re+3*c,G=D-ie+3*c,K=w-1+4*c,pe=T-1+4*c,me=E-1+4*c,q=D-1+4*c,he=h&255,ge=g&255,_e=_&255,ve=v&255,ye=o[he+o[ge+o[_e+o[ve]]]]%32,be=o[he+F+o[ge+I+o[_e+L+o[ve+ee]]]]%32,xe=o[he+R+o[ge+te+o[_e+z+o[ve+ne]]]]%32,Se=o[he+B+o[ge+V+o[_e+re+o[ve+ie]]]]%32,Ce=o[he+1+o[ge+1+o[_e+1+o[ve+1]]]]%32,we=.6-w*w-T*T-E*E-D*D;we<0?l=0:(we*=we,l=we*we*this._dot4(i[ye],w,T,E,D));let Te=.6-ae*ae-oe*oe-H*H-se*se;Te<0?u=0:(Te*=Te,u=Te*Te*this._dot4(i[be],ae,oe,H,se));let J=.6-ce*ce-U*U-le*le-ue*ue;J<0?d=0:(J*=J,d=J*J*this._dot4(i[xe],ce,U,le,ue));let Ee=.6-W*W-de*de-fe*fe-G*G;Ee<0?f=0:(Ee*=Ee,f=Ee*Ee*this._dot4(i[Se],W,de,fe,G));let De=.6-K*K-pe*pe-me*me-q*q;return De<0?p=0:(De*=De,p=De*De*this._dot4(i[Ce],K,pe,me,q)),27*(l+u+d+f+p)}_dot(e,t,n){return e[0]*t+e[1]*n}_dot3(e,t,n,r){return e[0]*t+e[1]*n+e[2]*r}_dot4(e,t,n,r,i){return e[0]*t+e[1]*n+e[2]*r+e[3]*i}},rC=class e extends zS{constructor(e,t,n=512,r=512,i,a,o){super(),this.width=n,this.height=r,this.clear=!0,this.camera=t,this.scene=e,this.output=0,this._renderGBuffer=!0,this._visibilityCache=[],this.blendIntensity=1,this.pdRings=2,this.pdRadiusExponent=2,this.pdSamples=16,this.gtaoNoiseTexture=ZS(),this.pdNoiseTexture=this._generateNoise(),this.gtaoRenderTarget=new Wf(this.width,this.height,{type:Cu,depthBuffer:!1}),this.pdRenderTarget=this.gtaoRenderTarget.clone(),this.gtaoMaterial=new bg({defines:Object.assign({},JS.defines),uniforms:_g.clone(JS.uniforms),vertexShader:JS.vertexShader,fragmentShader:JS.fragmentShader,blending:0,depthTest:!1,depthWrite:!1}),this.gtaoMaterial.defines.PERSPECTIVE_CAMERA=+!!this.camera.isPerspectiveCamera,this.gtaoMaterial.uniforms.tNoise.value=this.gtaoNoiseTexture,this.gtaoMaterial.uniforms.resolution.value.set(this.width,this.height),this.gtaoMaterial.uniforms.cameraNear.value=this.camera.near,this.gtaoMaterial.uniforms.cameraFar.value=this.camera.far,this.normalMaterial=new wg,this.normalMaterial.blending=0,this.pdMaterial=new bg({defines:Object.assign({},$S.defines),uniforms:_g.clone($S.uniforms),vertexShader:$S.vertexShader,fragmentShader:$S.fragmentShader,depthTest:!1,depthWrite:!1}),this.pdMaterial.uniforms.tDiffuse.value=this.gtaoRenderTarget.texture,this.pdMaterial.uniforms.tNoise.value=this.pdNoiseTexture,this.pdMaterial.uniforms.resolution.value.set(this.width,this.height),this.pdMaterial.uniforms.lumaPhi.value=10,this.pdMaterial.uniforms.depthPhi.value=2,this.pdMaterial.uniforms.normalPhi.value=3,this.pdMaterial.uniforms.radius.value=8,this.depthRenderMaterial=new bg({defines:Object.assign({},YS.defines),uniforms:_g.clone(YS.uniforms),vertexShader:YS.vertexShader,fragmentShader:YS.fragmentShader,blending:0}),this.depthRenderMaterial.uniforms.cameraNear.value=this.camera.near,this.depthRenderMaterial.uniforms.cameraFar.value=this.camera.far,this.copyMaterial=new bg({uniforms:_g.clone(RS.uniforms),vertexShader:RS.vertexShader,fragmentShader:RS.fragmentShader,transparent:!0,depthTest:!1,depthWrite:!1,blendSrc:208,blendDst:200,blendEquation:100,blendSrcAlpha:206,blendDstAlpha:200,blendEquationAlpha:100}),this.blendMaterial=new bg({uniforms:_g.clone(XS.uniforms),vertexShader:XS.vertexShader,fragmentShader:XS.fragmentShader,transparent:!0,depthTest:!1,depthWrite:!1,blending:5,blendSrc:208,blendDst:200,blendEquation:100,blendSrcAlpha:206,blendDstAlpha:200,blendEquationAlpha:100}),this._fsQuad=new HS(null),this._originalClearColor=new Q,this.setGBuffer(i?i.depthTexture:void 0,i?i.normalTexture:void 0),a!==void 0&&this.updateGtaoMaterial(a),o!==void 0&&this.updatePdMaterial(o)}setSize(e,t){this.width=e,this.height=t,this.gtaoRenderTarget.setSize(e,t),this.normalRenderTarget.setSize(e,t),this.pdRenderTarget.setSize(e,t),this.gtaoMaterial.uniforms.resolution.value.set(e,t),this.gtaoMaterial.uniforms.cameraProjectionMatrix.value.copy(this.camera.projectionMatrix),this.gtaoMaterial.uniforms.cameraProjectionMatrixInverse.value.copy(this.camera.projectionMatrixInverse),this.pdMaterial.uniforms.resolution.value.set(e,t),this.pdMaterial.uniforms.cameraProjectionMatrixInverse.value.copy(this.camera.projectionMatrixInverse)}dispose(){this.gtaoNoiseTexture.dispose(),this.pdNoiseTexture.dispose(),this.normalRenderTarget.dispose(),this.gtaoRenderTarget.dispose(),this.pdRenderTarget.dispose(),this.normalMaterial.dispose(),this.pdMaterial.dispose(),this.copyMaterial.dispose(),this.depthRenderMaterial.dispose(),this._fsQuad.dispose()}get gtaoMap(){return this.pdRenderTarget.texture}setGBuffer(e,t){e===void 0?(this.depthTexture=new $h,this.depthTexture.format=Nu,this.depthTexture.type=Eu,this.normalRenderTarget=new Wf(this.width,this.height,{minFilter:uu,magFilter:uu,type:Cu,depthTexture:this.depthTexture}),this.normalTexture=this.normalRenderTarget.texture,this._renderGBuffer=!0):(this.depthTexture=e,this.normalTexture=t,this._renderGBuffer=!1);let n=+!!this.normalTexture,r=this.depthTexture===this.normalTexture?`w`:`x`;this.gtaoMaterial.defines.NORMAL_VECTOR_TYPE=n,this.gtaoMaterial.defines.DEPTH_SWIZZLING=r,this.gtaoMaterial.uniforms.tNormal.value=this.normalTexture,this.gtaoMaterial.uniforms.tDepth.value=this.depthTexture,this.pdMaterial.defines.NORMAL_VECTOR_TYPE=n,this.pdMaterial.defines.DEPTH_SWIZZLING=r,this.pdMaterial.uniforms.tNormal.value=this.normalTexture,this.pdMaterial.uniforms.tDepth.value=this.depthTexture,this.depthRenderMaterial.uniforms.tDepth.value=this.normalRenderTarget.depthTexture}setSceneClipBox(e){e?(this.gtaoMaterial.needsUpdate=this.gtaoMaterial.defines.SCENE_CLIP_BOX!==1,this.gtaoMaterial.defines.SCENE_CLIP_BOX=1,this.gtaoMaterial.uniforms.sceneBoxMin.value.copy(e.min),this.gtaoMaterial.uniforms.sceneBoxMax.value.copy(e.max)):(this.gtaoMaterial.needsUpdate=this.gtaoMaterial.defines.SCENE_CLIP_BOX===0,this.gtaoMaterial.defines.SCENE_CLIP_BOX=0)}updateGtaoMaterial(e){e.radius!==void 0&&(this.gtaoMaterial.uniforms.radius.value=e.radius),e.distanceExponent!==void 0&&(this.gtaoMaterial.uniforms.distanceExponent.value=e.distanceExponent),e.thickness!==void 0&&(this.gtaoMaterial.uniforms.thickness.value=e.thickness),e.distanceFallOff!==void 0&&(this.gtaoMaterial.uniforms.distanceFallOff.value=e.distanceFallOff,this.gtaoMaterial.needsUpdate=!0),e.scale!==void 0&&(this.gtaoMaterial.uniforms.scale.value=e.scale),e.samples!==void 0&&e.samples!==this.gtaoMaterial.defines.SAMPLES&&(this.gtaoMaterial.defines.SAMPLES=e.samples,this.gtaoMaterial.needsUpdate=!0),e.screenSpaceRadius!==void 0&&+!!e.screenSpaceRadius!==this.gtaoMaterial.defines.SCREEN_SPACE_RADIUS&&(this.gtaoMaterial.defines.SCREEN_SPACE_RADIUS=+!!e.screenSpaceRadius,this.gtaoMaterial.needsUpdate=!0)}updatePdMaterial(e){let t=!1;e.lumaPhi!==void 0&&(this.pdMaterial.uniforms.lumaPhi.value=e.lumaPhi),e.depthPhi!==void 0&&(this.pdMaterial.uniforms.depthPhi.value=e.depthPhi),e.normalPhi!==void 0&&(this.pdMaterial.uniforms.normalPhi.value=e.normalPhi),e.radius!==void 0&&e.radius!==this.radius&&(this.pdMaterial.uniforms.radius.value=e.radius),e.radiusExponent!==void 0&&e.radiusExponent!==this.pdRadiusExponent&&(this.pdRadiusExponent=e.radiusExponent,t=!0),e.rings!==void 0&&e.rings!==this.pdRings&&(this.pdRings=e.rings,t=!0),e.samples!==void 0&&e.samples!==this.pdSamples&&(this.pdSamples=e.samples,t=!0),t&&(this.pdMaterial.defines.SAMPLES=this.pdSamples,this.pdMaterial.defines.SAMPLE_VECTORS=eC(this.pdSamples,this.pdRings,this.pdRadiusExponent),this.pdMaterial.needsUpdate=!0)}render(t,n,r){switch(this._renderGBuffer&&(this._overrideVisibility(),this._renderOverride(t,this.normalMaterial,this.normalRenderTarget,7829503,1),this._restoreVisibility()),this.gtaoMaterial.uniforms.cameraNear.value=this.camera.near,this.gtaoMaterial.uniforms.cameraFar.value=this.camera.far,this.gtaoMaterial.uniforms.cameraProjectionMatrix.value.copy(this.camera.projectionMatrix),this.gtaoMaterial.uniforms.cameraProjectionMatrixInverse.value.copy(this.camera.projectionMatrixInverse),this.gtaoMaterial.uniforms.cameraWorldMatrix.value.copy(this.camera.matrixWorld),this._renderPass(t,this.gtaoMaterial,this.gtaoRenderTarget,16777215,1),this.pdMaterial.uniforms.cameraProjectionMatrixInverse.value.copy(this.camera.projectionMatrixInverse),this._renderPass(t,this.pdMaterial,this.pdRenderTarget,16777215,1),this.output){case e.OUTPUT.Off:break;case e.OUTPUT.Diffuse:this.copyMaterial.uniforms.tDiffuse.value=r.texture,this.copyMaterial.blending=0,this._renderPass(t,this.copyMaterial,this.renderToScreen?null:n);break;case e.OUTPUT.AO:this.copyMaterial.uniforms.tDiffuse.value=this.gtaoRenderTarget.texture,this.copyMaterial.blending=0,this._renderPass(t,this.copyMaterial,this.renderToScreen?null:n);break;case e.OUTPUT.Denoise:this.copyMaterial.uniforms.tDiffuse.value=this.pdRenderTarget.texture,this.copyMaterial.blending=0,this._renderPass(t,this.copyMaterial,this.renderToScreen?null:n);break;case e.OUTPUT.Depth:this.depthRenderMaterial.uniforms.cameraNear.value=this.camera.near,this.depthRenderMaterial.uniforms.cameraFar.value=this.camera.far,this._renderPass(t,this.depthRenderMaterial,this.renderToScreen?null:n);break;case e.OUTPUT.Normal:this.copyMaterial.uniforms.tDiffuse.value=this.normalRenderTarget.texture,this.copyMaterial.blending=0,this._renderPass(t,this.copyMaterial,this.renderToScreen?null:n);break;case e.OUTPUT.Default:this.copyMaterial.uniforms.tDiffuse.value=r.texture,this.copyMaterial.blending=0,this._renderPass(t,this.copyMaterial,this.renderToScreen?null:n),this.blendMaterial.uniforms.intensity.value=this.blendIntensity,this.blendMaterial.uniforms.tDiffuse.value=this.pdRenderTarget.texture,this._renderPass(t,this.blendMaterial,this.renderToScreen?null:n);break;default:console.warn(`THREE.GTAOPass: Unknown output type.`)}}_renderPass(e,t,n,r,i){e.getClearColor(this._originalClearColor);let a=e.getClearAlpha(),o=e.autoClear;e.setRenderTarget(n),e.autoClear=!1,r!=null&&(e.setClearColor(r),e.setClearAlpha(i||0),e.clear()),this._fsQuad.material=t,this._fsQuad.render(e),e.autoClear=o,e.setClearColor(this._originalClearColor),e.setClearAlpha(a)}_renderOverride(e,t,n,r,i){e.getClearColor(this._originalClearColor);let a=e.getClearAlpha(),o=e.autoClear;e.setRenderTarget(n),e.autoClear=!1,r=t.clearColor||r,i=t.clearAlpha||i,r!=null&&(e.setClearColor(r),e.setClearAlpha(i||0),e.clear()),this.scene.overrideMaterial=t,e.render(this.scene,this.camera),this.scene.overrideMaterial=null,e.autoClear=o,e.setClearColor(this._originalClearColor),e.setClearAlpha(a)}_overrideVisibility(){let e=this.scene,t=this._visibilityCache;e.traverse(function(e){(e.isPoints||e.isLine||e.isLine2)&&e.visible&&(e.visible=!1,t.push(e))})}_restoreVisibility(){let e=this._visibilityCache;for(let t=0;t<e.length;t++)e[t].visible=!0;e.length=0}_generateNoise(e=64){let t=new nC,n=e*e*4,r=new Uint8Array(n);for(let n=0;n<e;n++)for(let i=0;i<e;i++){let a=n,o=i;r[(n*e+i)*4]=(t.noise(a,o)*.5+.5)*255,r[(n*e+i)*4+1]=(t.noise(a+e,o)*.5+.5)*255,r[(n*e+i)*4+2]=(t.noise(a,o+e)*.5+.5)*255,r[(n*e+i)*4+3]=(t.noise(a+e,o+e)*.5+.5)*255}let i=new bh(r,e,e,ju,gu);return i.wrapS=su,i.wrapT=su,i.needsUpdate=!0,i}};rC.OUTPUT={Off:-1,Default:0,Diffuse:1,Depth:2,Normal:3,AO:4,Denoise:5};var iC={name:`SMAAEdgesShader`,defines:{SMAA_THRESHOLD:`0.1`},uniforms:{tDiffuse:{value:null},resolution:{value:new X(1/1024,1/512)}},vertexShader:`
5027
+ }`};function eC(e,t,n){let r=tC(e,t,n),i=`vec3[SAMPLES](`;for(let t=0;t<e;t++){let n=r[t];i+=`vec3(${n.x}, ${n.y}, ${n.z})${t<e-1?`,`:`)`}`}return i}function tC(e,t,n){let r=[];for(let i=0;i<e;i++){let a=2*Math.PI*t*i/e,o=(i/(e-1))**n;r.push(new Z(Math.cos(a),Math.sin(a),o))}return r}var nC=class{constructor(e=Math){this.grad3=[[1,1,0],[-1,1,0],[1,-1,0],[-1,-1,0],[1,0,1],[-1,0,1],[1,0,-1],[-1,0,-1],[0,1,1],[0,-1,1],[0,1,-1],[0,-1,-1]],this.grad4=[[0,1,1,1],[0,1,1,-1],[0,1,-1,1],[0,1,-1,-1],[0,-1,1,1],[0,-1,1,-1],[0,-1,-1,1],[0,-1,-1,-1],[1,0,1,1],[1,0,1,-1],[1,0,-1,1],[1,0,-1,-1],[-1,0,1,1],[-1,0,1,-1],[-1,0,-1,1],[-1,0,-1,-1],[1,1,0,1],[1,1,0,-1],[1,-1,0,1],[1,-1,0,-1],[-1,1,0,1],[-1,1,0,-1],[-1,-1,0,1],[-1,-1,0,-1],[1,1,1,0],[1,1,-1,0],[1,-1,1,0],[1,-1,-1,0],[-1,1,1,0],[-1,1,-1,0],[-1,-1,1,0],[-1,-1,-1,0]],this.p=[];for(let t=0;t<256;t++)this.p[t]=Math.floor(e.random()*256);this.perm=[];for(let e=0;e<512;e++)this.perm[e]=this.p[e&255];this.simplex=[[0,1,2,3],[0,1,3,2],[0,0,0,0],[0,2,3,1],[0,0,0,0],[0,0,0,0],[0,0,0,0],[1,2,3,0],[0,2,1,3],[0,0,0,0],[0,3,1,2],[0,3,2,1],[0,0,0,0],[0,0,0,0],[0,0,0,0],[1,3,2,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[1,2,0,3],[0,0,0,0],[1,3,0,2],[0,0,0,0],[0,0,0,0],[0,0,0,0],[2,3,0,1],[2,3,1,0],[1,0,2,3],[1,0,3,2],[0,0,0,0],[0,0,0,0],[0,0,0,0],[2,0,3,1],[0,0,0,0],[2,1,3,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[2,0,1,3],[0,0,0,0],[0,0,0,0],[0,0,0,0],[3,0,1,2],[3,0,2,1],[0,0,0,0],[3,1,2,0],[2,1,0,3],[0,0,0,0],[0,0,0,0],[0,0,0,0],[3,1,0,2],[0,0,0,0],[3,2,0,1],[3,2,1,0]]}noise(e,t){let n,r,i,a=.5*(Math.sqrt(3)-1),o=(e+t)*a,s=Math.floor(e+o),c=Math.floor(t+o),l=(3-Math.sqrt(3))/6,u=(s+c)*l,d=s-u,f=c-u,p=e-d,m=t-f,h,g;p>m?(h=1,g=0):(h=0,g=1);let _=p-h+l,v=m-g+l,y=p-1+2*l,b=m-1+2*l,x=s&255,S=c&255,C=this.perm[x+this.perm[S]]%12,w=this.perm[x+h+this.perm[S+g]]%12,T=this.perm[x+1+this.perm[S+1]]%12,E=.5-p*p-m*m;E<0?n=0:(E*=E,n=E*E*this._dot(this.grad3[C],p,m));let D=.5-_*_-v*v;D<0?r=0:(D*=D,r=D*D*this._dot(this.grad3[w],_,v));let O=.5-y*y-b*b;return O<0?i=0:(O*=O,i=O*O*this._dot(this.grad3[T],y,b)),70*(n+r+i)}noise3d(e,t,n){let r,i,a,o,s=(e+t+n)*(1/3),c=Math.floor(e+s),l=Math.floor(t+s),u=Math.floor(n+s),d=1/6,f=(c+l+u)*d,p=c-f,m=l-f,h=u-f,g=e-p,_=t-m,v=n-h,y,b,x,S,C,w;g>=_?_>=v?(y=1,b=0,x=0,S=1,C=1,w=0):g>=v?(y=1,b=0,x=0,S=1,C=0,w=1):(y=0,b=0,x=1,S=1,C=0,w=1):_<v?(y=0,b=0,x=1,S=0,C=1,w=1):g<v?(y=0,b=1,x=0,S=0,C=1,w=1):(y=0,b=1,x=0,S=1,C=1,w=0);let T=g-y+d,E=_-b+d,D=v-x+d,O=g-S+2*d,k=_-C+2*d,A=v-w+2*d,j=g-1+3*d,M=_-1+3*d,N=v-1+3*d,P=c&255,F=l&255,I=u&255,L=this.perm[P+this.perm[F+this.perm[I]]]%12,ee=this.perm[P+y+this.perm[F+b+this.perm[I+x]]]%12,R=this.perm[P+S+this.perm[F+C+this.perm[I+w]]]%12,te=this.perm[P+1+this.perm[F+1+this.perm[I+1]]]%12,z=.6-g*g-_*_-v*v;z<0?r=0:(z*=z,r=z*z*this._dot3(this.grad3[L],g,_,v));let ne=.6-T*T-E*E-D*D;ne<0?i=0:(ne*=ne,i=ne*ne*this._dot3(this.grad3[ee],T,E,D));let B=.6-O*O-k*k-A*A;B<0?a=0:(B*=B,a=B*B*this._dot3(this.grad3[R],O,k,A));let V=.6-j*j-M*M-N*N;return V<0?o=0:(V*=V,o=V*V*this._dot3(this.grad3[te],j,M,N)),32*(r+i+a+o)}noise4d(e,t,n,r){let i=this.grad4,a=this.simplex,o=this.perm,s=(Math.sqrt(5)-1)/4,c=(5-Math.sqrt(5))/20,l,u,d,f,p,m=(e+t+n+r)*s,h=Math.floor(e+m),g=Math.floor(t+m),_=Math.floor(n+m),v=Math.floor(r+m),y=(h+g+_+v)*c,b=h-y,x=g-y,S=_-y,C=v-y,w=e-b,T=t-x,E=n-S,D=r-C,O=w>T?32:0,k=w>E?16:0,A=T>E?8:0,j=w>D?4:0,M=T>D?2:0,N=+(E>D),P=O+k+A+j+M+N,F=+(a[P][0]>=3),I=+(a[P][1]>=3),L=+(a[P][2]>=3),ee=+(a[P][3]>=3),R=+(a[P][0]>=2),te=+(a[P][1]>=2),z=+(a[P][2]>=2),ne=+(a[P][3]>=2),B=+(a[P][0]>=1),V=+(a[P][1]>=1),re=+(a[P][2]>=1),ie=+(a[P][3]>=1),ae=w-F+c,oe=T-I+c,H=E-L+c,se=D-ee+c,ce=w-R+2*c,U=T-te+2*c,le=E-z+2*c,ue=D-ne+2*c,W=w-B+3*c,de=T-V+3*c,G=E-re+3*c,K=D-ie+3*c,q=w-1+4*c,fe=T-1+4*c,pe=E-1+4*c,J=D-1+4*c,me=h&255,he=g&255,ge=_&255,_e=v&255,ve=o[me+o[he+o[ge+o[_e]]]]%32,ye=o[me+F+o[he+I+o[ge+L+o[_e+ee]]]]%32,be=o[me+R+o[he+te+o[ge+z+o[_e+ne]]]]%32,xe=o[me+B+o[he+V+o[ge+re+o[_e+ie]]]]%32,Se=o[me+1+o[he+1+o[ge+1+o[_e+1]]]]%32,Ce=.6-w*w-T*T-E*E-D*D;Ce<0?l=0:(Ce*=Ce,l=Ce*Ce*this._dot4(i[ve],w,T,E,D));let we=.6-ae*ae-oe*oe-H*H-se*se;we<0?u=0:(we*=we,u=we*we*this._dot4(i[ye],ae,oe,H,se));let Te=.6-ce*ce-U*U-le*le-ue*ue;Te<0?d=0:(Te*=Te,d=Te*Te*this._dot4(i[be],ce,U,le,ue));let Ee=.6-W*W-de*de-G*G-K*K;Ee<0?f=0:(Ee*=Ee,f=Ee*Ee*this._dot4(i[xe],W,de,G,K));let De=.6-q*q-fe*fe-pe*pe-J*J;return De<0?p=0:(De*=De,p=De*De*this._dot4(i[Se],q,fe,pe,J)),27*(l+u+d+f+p)}_dot(e,t,n){return e[0]*t+e[1]*n}_dot3(e,t,n,r){return e[0]*t+e[1]*n+e[2]*r}_dot4(e,t,n,r,i){return e[0]*t+e[1]*n+e[2]*r+e[3]*i}},rC=class e extends zS{constructor(e,t,n=512,r=512,i,a,o){super(),this.width=n,this.height=r,this.clear=!0,this.camera=t,this.scene=e,this.output=0,this._renderGBuffer=!0,this._visibilityCache=[],this.blendIntensity=1,this.pdRings=2,this.pdRadiusExponent=2,this.pdSamples=16,this.gtaoNoiseTexture=ZS(),this.pdNoiseTexture=this._generateNoise(),this.gtaoRenderTarget=new Wf(this.width,this.height,{type:Cu,depthBuffer:!1}),this.pdRenderTarget=this.gtaoRenderTarget.clone(),this.gtaoMaterial=new bg({defines:Object.assign({},JS.defines),uniforms:_g.clone(JS.uniforms),vertexShader:JS.vertexShader,fragmentShader:JS.fragmentShader,blending:0,depthTest:!1,depthWrite:!1}),this.gtaoMaterial.defines.PERSPECTIVE_CAMERA=+!!this.camera.isPerspectiveCamera,this.gtaoMaterial.uniforms.tNoise.value=this.gtaoNoiseTexture,this.gtaoMaterial.uniforms.resolution.value.set(this.width,this.height),this.gtaoMaterial.uniforms.cameraNear.value=this.camera.near,this.gtaoMaterial.uniforms.cameraFar.value=this.camera.far,this.normalMaterial=new wg,this.normalMaterial.blending=0,this.pdMaterial=new bg({defines:Object.assign({},$S.defines),uniforms:_g.clone($S.uniforms),vertexShader:$S.vertexShader,fragmentShader:$S.fragmentShader,depthTest:!1,depthWrite:!1}),this.pdMaterial.uniforms.tDiffuse.value=this.gtaoRenderTarget.texture,this.pdMaterial.uniforms.tNoise.value=this.pdNoiseTexture,this.pdMaterial.uniforms.resolution.value.set(this.width,this.height),this.pdMaterial.uniforms.lumaPhi.value=10,this.pdMaterial.uniforms.depthPhi.value=2,this.pdMaterial.uniforms.normalPhi.value=3,this.pdMaterial.uniforms.radius.value=8,this.depthRenderMaterial=new bg({defines:Object.assign({},YS.defines),uniforms:_g.clone(YS.uniforms),vertexShader:YS.vertexShader,fragmentShader:YS.fragmentShader,blending:0}),this.depthRenderMaterial.uniforms.cameraNear.value=this.camera.near,this.depthRenderMaterial.uniforms.cameraFar.value=this.camera.far,this.copyMaterial=new bg({uniforms:_g.clone(RS.uniforms),vertexShader:RS.vertexShader,fragmentShader:RS.fragmentShader,transparent:!0,depthTest:!1,depthWrite:!1,blendSrc:208,blendDst:200,blendEquation:100,blendSrcAlpha:206,blendDstAlpha:200,blendEquationAlpha:100}),this.blendMaterial=new bg({uniforms:_g.clone(XS.uniforms),vertexShader:XS.vertexShader,fragmentShader:XS.fragmentShader,transparent:!0,depthTest:!1,depthWrite:!1,blending:5,blendSrc:208,blendDst:200,blendEquation:100,blendSrcAlpha:206,blendDstAlpha:200,blendEquationAlpha:100}),this._fsQuad=new HS(null),this._originalClearColor=new Q,this.setGBuffer(i?i.depthTexture:void 0,i?i.normalTexture:void 0),a!==void 0&&this.updateGtaoMaterial(a),o!==void 0&&this.updatePdMaterial(o)}setSize(e,t){this.width=e,this.height=t,this.gtaoRenderTarget.setSize(e,t),this.normalRenderTarget.setSize(e,t),this.pdRenderTarget.setSize(e,t),this.gtaoMaterial.uniforms.resolution.value.set(e,t),this.gtaoMaterial.uniforms.cameraProjectionMatrix.value.copy(this.camera.projectionMatrix),this.gtaoMaterial.uniforms.cameraProjectionMatrixInverse.value.copy(this.camera.projectionMatrixInverse),this.pdMaterial.uniforms.resolution.value.set(e,t),this.pdMaterial.uniforms.cameraProjectionMatrixInverse.value.copy(this.camera.projectionMatrixInverse)}dispose(){this.gtaoNoiseTexture.dispose(),this.pdNoiseTexture.dispose(),this.normalRenderTarget.dispose(),this.gtaoRenderTarget.dispose(),this.pdRenderTarget.dispose(),this.normalMaterial.dispose(),this.pdMaterial.dispose(),this.copyMaterial.dispose(),this.depthRenderMaterial.dispose(),this._fsQuad.dispose()}get gtaoMap(){return this.pdRenderTarget.texture}setGBuffer(e,t){e===void 0?(this.depthTexture=new $h,this.depthTexture.format=Nu,this.depthTexture.type=Eu,this.normalRenderTarget=new Wf(this.width,this.height,{minFilter:uu,magFilter:uu,type:Cu,depthTexture:this.depthTexture}),this.normalTexture=this.normalRenderTarget.texture,this._renderGBuffer=!0):(this.depthTexture=e,this.normalTexture=t,this._renderGBuffer=!1);let n=+!!this.normalTexture,r=this.depthTexture===this.normalTexture?`w`:`x`;this.gtaoMaterial.defines.NORMAL_VECTOR_TYPE=n,this.gtaoMaterial.defines.DEPTH_SWIZZLING=r,this.gtaoMaterial.uniforms.tNormal.value=this.normalTexture,this.gtaoMaterial.uniforms.tDepth.value=this.depthTexture,this.pdMaterial.defines.NORMAL_VECTOR_TYPE=n,this.pdMaterial.defines.DEPTH_SWIZZLING=r,this.pdMaterial.uniforms.tNormal.value=this.normalTexture,this.pdMaterial.uniforms.tDepth.value=this.depthTexture,this.depthRenderMaterial.uniforms.tDepth.value=this.normalRenderTarget.depthTexture}setSceneClipBox(e){e?(this.gtaoMaterial.needsUpdate=this.gtaoMaterial.defines.SCENE_CLIP_BOX!==1,this.gtaoMaterial.defines.SCENE_CLIP_BOX=1,this.gtaoMaterial.uniforms.sceneBoxMin.value.copy(e.min),this.gtaoMaterial.uniforms.sceneBoxMax.value.copy(e.max)):(this.gtaoMaterial.needsUpdate=this.gtaoMaterial.defines.SCENE_CLIP_BOX===0,this.gtaoMaterial.defines.SCENE_CLIP_BOX=0)}updateGtaoMaterial(e){e.radius!==void 0&&(this.gtaoMaterial.uniforms.radius.value=e.radius),e.distanceExponent!==void 0&&(this.gtaoMaterial.uniforms.distanceExponent.value=e.distanceExponent),e.thickness!==void 0&&(this.gtaoMaterial.uniforms.thickness.value=e.thickness),e.distanceFallOff!==void 0&&(this.gtaoMaterial.uniforms.distanceFallOff.value=e.distanceFallOff,this.gtaoMaterial.needsUpdate=!0),e.scale!==void 0&&(this.gtaoMaterial.uniforms.scale.value=e.scale),e.samples!==void 0&&e.samples!==this.gtaoMaterial.defines.SAMPLES&&(this.gtaoMaterial.defines.SAMPLES=e.samples,this.gtaoMaterial.needsUpdate=!0),e.screenSpaceRadius!==void 0&&+!!e.screenSpaceRadius!==this.gtaoMaterial.defines.SCREEN_SPACE_RADIUS&&(this.gtaoMaterial.defines.SCREEN_SPACE_RADIUS=+!!e.screenSpaceRadius,this.gtaoMaterial.needsUpdate=!0)}updatePdMaterial(e){let t=!1;e.lumaPhi!==void 0&&(this.pdMaterial.uniforms.lumaPhi.value=e.lumaPhi),e.depthPhi!==void 0&&(this.pdMaterial.uniforms.depthPhi.value=e.depthPhi),e.normalPhi!==void 0&&(this.pdMaterial.uniforms.normalPhi.value=e.normalPhi),e.radius!==void 0&&e.radius!==this.radius&&(this.pdMaterial.uniforms.radius.value=e.radius),e.radiusExponent!==void 0&&e.radiusExponent!==this.pdRadiusExponent&&(this.pdRadiusExponent=e.radiusExponent,t=!0),e.rings!==void 0&&e.rings!==this.pdRings&&(this.pdRings=e.rings,t=!0),e.samples!==void 0&&e.samples!==this.pdSamples&&(this.pdSamples=e.samples,t=!0),t&&(this.pdMaterial.defines.SAMPLES=this.pdSamples,this.pdMaterial.defines.SAMPLE_VECTORS=eC(this.pdSamples,this.pdRings,this.pdRadiusExponent),this.pdMaterial.needsUpdate=!0)}render(t,n,r){switch(this._renderGBuffer&&(this._overrideVisibility(),this._renderOverride(t,this.normalMaterial,this.normalRenderTarget,7829503,1),this._restoreVisibility()),this.gtaoMaterial.uniforms.cameraNear.value=this.camera.near,this.gtaoMaterial.uniforms.cameraFar.value=this.camera.far,this.gtaoMaterial.uniforms.cameraProjectionMatrix.value.copy(this.camera.projectionMatrix),this.gtaoMaterial.uniforms.cameraProjectionMatrixInverse.value.copy(this.camera.projectionMatrixInverse),this.gtaoMaterial.uniforms.cameraWorldMatrix.value.copy(this.camera.matrixWorld),this._renderPass(t,this.gtaoMaterial,this.gtaoRenderTarget,16777215,1),this.pdMaterial.uniforms.cameraProjectionMatrixInverse.value.copy(this.camera.projectionMatrixInverse),this._renderPass(t,this.pdMaterial,this.pdRenderTarget,16777215,1),this.output){case e.OUTPUT.Off:break;case e.OUTPUT.Diffuse:this.copyMaterial.uniforms.tDiffuse.value=r.texture,this.copyMaterial.blending=0,this._renderPass(t,this.copyMaterial,this.renderToScreen?null:n);break;case e.OUTPUT.AO:this.copyMaterial.uniforms.tDiffuse.value=this.gtaoRenderTarget.texture,this.copyMaterial.blending=0,this._renderPass(t,this.copyMaterial,this.renderToScreen?null:n);break;case e.OUTPUT.Denoise:this.copyMaterial.uniforms.tDiffuse.value=this.pdRenderTarget.texture,this.copyMaterial.blending=0,this._renderPass(t,this.copyMaterial,this.renderToScreen?null:n);break;case e.OUTPUT.Depth:this.depthRenderMaterial.uniforms.cameraNear.value=this.camera.near,this.depthRenderMaterial.uniforms.cameraFar.value=this.camera.far,this._renderPass(t,this.depthRenderMaterial,this.renderToScreen?null:n);break;case e.OUTPUT.Normal:this.copyMaterial.uniforms.tDiffuse.value=this.normalRenderTarget.texture,this.copyMaterial.blending=0,this._renderPass(t,this.copyMaterial,this.renderToScreen?null:n);break;case e.OUTPUT.Default:this.copyMaterial.uniforms.tDiffuse.value=r.texture,this.copyMaterial.blending=0,this._renderPass(t,this.copyMaterial,this.renderToScreen?null:n),this.blendMaterial.uniforms.intensity.value=this.blendIntensity,this.blendMaterial.uniforms.tDiffuse.value=this.pdRenderTarget.texture,this._renderPass(t,this.blendMaterial,this.renderToScreen?null:n);break;default:console.warn(`THREE.GTAOPass: Unknown output type.`)}}_renderPass(e,t,n,r,i){e.getClearColor(this._originalClearColor);let a=e.getClearAlpha(),o=e.autoClear;e.setRenderTarget(n),e.autoClear=!1,r!=null&&(e.setClearColor(r),e.setClearAlpha(i||0),e.clear()),this._fsQuad.material=t,this._fsQuad.render(e),e.autoClear=o,e.setClearColor(this._originalClearColor),e.setClearAlpha(a)}_renderOverride(e,t,n,r,i){e.getClearColor(this._originalClearColor);let a=e.getClearAlpha(),o=e.autoClear;e.setRenderTarget(n),e.autoClear=!1,r=t.clearColor||r,i=t.clearAlpha||i,r!=null&&(e.setClearColor(r),e.setClearAlpha(i||0),e.clear()),this.scene.overrideMaterial=t,e.render(this.scene,this.camera),this.scene.overrideMaterial=null,e.autoClear=o,e.setClearColor(this._originalClearColor),e.setClearAlpha(a)}_overrideVisibility(){let e=this.scene,t=this._visibilityCache;e.traverse(function(e){(e.isPoints||e.isLine||e.isLine2)&&e.visible&&(e.visible=!1,t.push(e))})}_restoreVisibility(){let e=this._visibilityCache;for(let t=0;t<e.length;t++)e[t].visible=!0;e.length=0}_generateNoise(e=64){let t=new nC,n=e*e*4,r=new Uint8Array(n);for(let n=0;n<e;n++)for(let i=0;i<e;i++){let a=n,o=i;r[(n*e+i)*4]=(t.noise(a,o)*.5+.5)*255,r[(n*e+i)*4+1]=(t.noise(a+e,o)*.5+.5)*255,r[(n*e+i)*4+2]=(t.noise(a,o+e)*.5+.5)*255,r[(n*e+i)*4+3]=(t.noise(a+e,o+e)*.5+.5)*255}let i=new bh(r,e,e,ju,gu);return i.wrapS=su,i.wrapT=su,i.needsUpdate=!0,i}};rC.OUTPUT={Off:-1,Default:0,Diffuse:1,Depth:2,Normal:3,AO:4,Denoise:5};var iC={name:`SMAAEdgesShader`,defines:{SMAA_THRESHOLD:`0.1`},uniforms:{tDiffuse:{value:null},resolution:{value:new X(1/1024,1/512)}},vertexShader:`
5028
5028
 
5029
5029
  uniform vec2 resolution;
5030
5030
 
@@ -5591,16 +5591,16 @@ void main() {
5591
5591
  float edge = max(depthEdge, normalEdge) * uOpacity;
5592
5592
  gl_FragColor = vec4(mix(color.rgb, uColor, edge), color.a);
5593
5593
  }
5594
- `},kT=class extends zS{camera;scene;normalMaterial;edgeMaterial;fsQuad;normalTarget=null;width;height;constructor(e,t,n,r,i={}){super(),this.scene=e,this.camera=t,this.width=Math.max(1,n),this.height=Math.max(1,r),this.normalMaterial=new wg,this.normalMaterial.blending=0,this.edgeMaterial=new bg({uniforms:_g.clone(OT.uniforms),vertexShader:OT.vertexShader,fragmentShader:OT.fragmentShader});let a=this.edgeMaterial.uniforms;a.uColor.value=new Q(i.color??2236962),a.uOpacity.value=i.opacity??1,a.uNormalThreshold.value=i.normalThreshold??.4,a.uDepthThreshold.value=i.depthThreshold??.02,a.uThickness.value=i.thickness??1,this.fsQuad=new HS(this.edgeMaterial),this.needsSwap=!0}acquireNormalTarget(){if(!this.normalTarget){let e=new $h(this.width,this.height);this.normalTarget=new Wf(this.width,this.height,{minFilter:uu,magFilter:uu,depthTexture:e})}return this.normalTarget}setSize(e,t){this.width=Math.max(1,e),this.height=Math.max(1,t),this.normalTarget?.setSize(this.width,this.height)}render(e,t,n){let r=this.acquireNormalTarget(),i=e.getRenderTarget(),a=e.autoClear,o=e.getClearColor(new Q),s=e.getClearAlpha(),c=this.scene.overrideMaterial;e.setRenderTarget(r),e.setClearColor(7829503,1),e.autoClear=!0,this.scene.overrideMaterial=this.normalMaterial,e.render(this.scene,this.camera),this.scene.overrideMaterial=c,e.setClearColor(o,s),e.autoClear=a;let l=this.edgeMaterial.uniforms;l.tDiffuse.value=n.texture,l.tNormal.value=r.texture,l.tDepth.value=r.depthTexture,l.uResolution.value.set(this.width,this.height);let u=this.camera;l.uPerspective.value=+!!u.isPerspectiveCamera,l.uNear.value=this.camera.near??.1,l.uFar.value=this.camera.far??1e3,e.setRenderTarget(this.renderToScreen?null:t),this.fsQuad.render(e),e.setRenderTarget(i)}dispose(){this.normalTarget?.dispose(),this.normalMaterial.dispose(),this.edgeMaterial.dispose(),this.fsQuad.dispose()}};function AT(e){return e>=2?0:4}function jT(e,t,n,r,i,a){let o=new Wf(r,i,{type:Cu}),s=new KS(e,o);s.renderTarget2.samples=0;let c=e=>{s.readBuffer=o,s.writeBuffer=s.renderTarget2,s.render(e)},l=new qS(t,n);s.addPass(l);let u=null;(a.ambientOcclusion??!0)&&(u=new rC(t,n,r,i),u.blendIntensity=a.aoIntensity??1,u.updateGtaoMaterial({screenSpaceRadius:!0}),s.addPass(u));let d=new kT(t,n,r,i,typeof a.edgeDetection==`object`?a.edgeDetection:{});d.enabled=!!a.edgeDetection,s.addPass(d);let f=new sC;s.addPass(f);let p=new lC;s.addPass(p),e.toneMapping=a.toneMapping,e.toneMappingExposure=a.toneMappingExposure;let m=a.aoPixelRatio??1,h=1;if(u){let e=u.setSize.bind(u);u.setSize=(t,n)=>e(Math.max(1,Math.round(t*h)),Math.max(1,Math.round(n*h)))}let g=e=>{h=Math.min(e,m)/e;let t=AT(e);o.samples!==t&&(o.samples=t,o.dispose()),s.setPixelRatio(e)};return g(e.getPixelRatio()),s.setSize(r,i),{render:c,setSize:(e,t,n)=>{g(n),s.setSize(e,t)},setCamera:e=>{if(l.camera=e,d.camera=e,!u)return;u.camera=e;let t=+!!e.isPerspectiveCamera;u.gtaoMaterial.defines.PERSPECTIVE_CAMERA!==t&&(u.gtaoMaterial.defines.PERSPECTIVE_CAMERA=t,u.gtaoMaterial.needsUpdate=!0)},setEdgeDetection:e=>{d.enabled=e},edgeDetectionEnabled:()=>d.enabled,dispose:()=>{s.dispose(),u?.dispose(),d.dispose(),f.dispose(),p.dispose()}}}function MT(e){let{renderer:t,scene:n,getActiveCamera:r,getCanvasSize:i,pixelRatio:a,config:o,requestRender:s}=e,c=null,l=!!o.render.ambientOcclusion,u=!1,d=!1,f=e=>{let{width:s,height:c}=i(),l=jT(t,n,r(),Math.max(1,s),Math.max(1,c),{toneMapping:o.render.toneMapping??7,toneMappingExposure:o.render.toneMappingExposure??1,ambientOcclusion:e,aoIntensity:o.render.aoIntensity,aoPixelRatio:o.render.aoPixelRatio,edgeDetection:!1});return l.setSize(Math.max(1,s),Math.max(1,c),a),l},p=()=>{if(!(l||u)){c?.dispose(),c=null,s();return}(!c||d!==l)&&(c?.dispose(),c=f(l),d=l),c.setEdgeDetection(u),s()};return{get:()=>c,sync:p,rebuild:()=>{c?.dispose(),c=null,p()},setAmbientOcclusion:e=>{l=e,p()},setEdgeFallback:e=>{e!==u&&(u=e,p())},isEdgeFallbackActive:()=>u,dispose:()=>{c?.dispose(),c=null}}}function NT(e,t,n){let r=new bC(e,t),i=n.camera.target;return i&&r.target.set(i.x,i.y,i.z),r.enableDamping=n.controls.enableDamping||!1,r.dampingFactor=n.controls.dampingFactor||.05,r.autoRotate=n.controls.autoRotate||!1,r.autoRotateSpeed=n.controls.autoRotateSpeed||.5,r.enableZoom=n.controls.enableZoom??!0,r.enablePan=n.controls.enablePan??!0,r.minDistance=n.controls.minDistance||.001,r.maxDistance=n.controls.maxDistance||1/0,r.screenSpacePanning=!1,r.maxPolarAngle=Math.PI,r.update(),r}function PT(e,t,n,r){n.environment.enableEnvironmentLighting?(HC(e,t,YC(n.environment.sceneUp??_T)),new NC().load(n.environment.hdrPath||`/baseHDR.hdr`,function(i){if(r()){i.dispose();return}if(!i?.image){Dx().warn(`HDR loaded without image data; skipping environment map.`),i?.dispose(),n.events.onReady?.();return}i.mapping=303;let a=new Av(t);a.compileEquirectangularShader();let o=a.fromEquirectangular(i).texture;a.dispose(),e.environment=o,e.environmentIntensity=n.environment.environmentIntensity??1;let s=YC(n.environment.sceneUp??_T);e.environmentRotation.copy(s),n.environment.showEnvironment?(e.background=i,e.backgroundRotation.copy(s)):i.dispose(),n.events.onReady?.()},void 0,function(e){r()||(Dx().warn(`HDR texture could not be loaded, falling back to basic lighting:`,e),n.events.onReady?.())})):n.events.onReady?.()}function FT(e,t){let n=t.floor.size,r=new _h(new lg(n,n),new Sg({color:typeof t.floor.color==`string`?new Q(t.floor.color):t.floor.color,roughness:t.floor.roughness,metalness:t.floor.metalness,side:2}));r.userData.id=`floor`,r.name=`floor`;let i=(t.environment?.sceneUp||_T).clone().normalize();r.quaternion.setFromUnitVectors(new Z(0,0,1),i),r.position.set(0,0,0),t.floor.receiveShadow&&t.render.enableShadows&&(r.receiveShadow=!0),e.add(r)}function IT(e,t,n){if(n&&`emissive`in e){let n=e;n.emissive=t.clone(),n.emissiveIntensity=.6,n.color.lerp(t,.75),n.metalness=Math.min(n.metalness,.2),n.opacity<1&&(n.opacity=1,n.transparent=!1,n.depthWrite=!0);return}`color`in e&&(e.color=t.clone())}function LT(e,t,n,r){let i=new Set,a=new Map,o=null,s=null,c=null,l=new G_,u=new X,d=new X,f=()=>n.getActiveCamera(),p=e=>{let t=e;for(;t;){if(!t.visible)return!1;t=t.parent}return!0},m=()=>{let e=nw(t);if(e.isEmpty()){Dx().warn(`No objects to fit to view`);return}n.frameBounds(e,!1)},h=typeof r.events.selectionColor==`string`?new Q(r.events.selectionColor):r.events.selectionColor instanceof Q?r.events.selectionColor:new Q(`#ff0000`),g=()=>{o&&(o(),o=null,c?.dispose(),c=null),i.forEach(e=>{let n=e;if(a.has(e)){let r=a.get(e),i=n.material;i instanceof Lm?i.dispose():Array.isArray(i)&&i.forEach(e=>e.dispose()),n.material=r,a.delete(e);let o=e;for(;o.parent;)o=o.parent;o!==t&&(r instanceof Lm?r.dispose():r.forEach(e=>e.dispose()))}}),i.clear(),s=null},_=(e,t)=>{if(t&&e instanceof _h){let n=$x(e).clone();return IT(n,h,!0),c=n,o=jw(e,t,n),!0}let n=e;if(!(n.material instanceof Lm))return!1;let r=n.material.clone();return IT(r,h,e instanceof _h),a.set(e,n.material),n.material=r,!0},v=null,y=-1,b=()=>{if(v===null||t.children.length!==y){let e=nw(t);v=e.isEmpty()?1:e.getSize(new Z).length(),y=t.children.length}l.params.Points.threshold=v*.01},x=(n,r)=>{let i=e.getBoundingClientRect();u.x=(n-i.left)/i.width*2-1,u.y=-((r-i.top)/i.height)*2+1,b(),l.setFromCamera(u,f());for(let e of l.intersectObjects(t.children,!0))if(p(e.object)&&!tw(e.object))return e;return null},S=e=>{d.set(e.clientX,e.clientY)},C=e=>{let t=new X(e.clientX,e.clientY);if(d.distanceTo(t)>5)return;let n=x(e.clientX,e.clientY);if(!n){g(),r.events?.onBackgroundClicked?.({x:u.x,y:u.y});return}let a=n.object,o=kw(n),c=o?.index??null;i.has(a)&&c===s||(g(),i.add(a),s=c,_(a,o?.member??null),r.events?.onObjectSelected?.(a),o?r.events?.onMeshMetadataClicked?.({source:a.userData?.source,name:o.member.name,layer:o.member.layer,trackingKey:o.member.trackingKey,metadata:o.member.metadata}):a instanceof _h&&Object.keys(a.userData).length>0&&r.events?.onMeshMetadataClicked?.(a.userData))},w=e=>{let t=x(e.clientX,e.clientY);if(!t)return;let i=t.object;if(r.events?.onMeshDoubleClicked?.(i),!r.events?.enableDoubleClickZoom)return;let a=kw(t),o=a&&i instanceof _h?Aw(i,a.member):new Wp().setFromObject(i);o.isEmpty()||n.frameBounds(o,!0)},T=e=>{if(r.events?.enableKeyboardControls)switch(e.key.toLowerCase()){case`f`:e.preventDefault(),m();break;case`escape`:e.preventDefault(),g();break;case` `:e.preventDefault(),m()}};return r.events?.enableClickToFocus&&(e.addEventListener(`mousedown`,S),e.addEventListener(`click`,C),e.addEventListener(`dblclick`,w)),r.events?.enableKeyboardControls&&(e.setAttribute(`tabindex`,`0`),e.addEventListener(`keydown`,T)),{dispose:()=>{e.removeEventListener(`mousedown`,S),e.removeEventListener(`click`,C),e.removeEventListener(`dblclick`,w),e.removeEventListener(`keydown`,T),g()},fitToView:m,clearSelection:g}}function RT(e,t){let n=new C_(t.lighting.ambientLightColor,t.lighting.ambientLightIntensity);e.add(n);let r=null;if(t.lighting.enableHemisphereLight){r=new a_(t.lighting.hemisphereSkyColor,t.lighting.hemisphereGroundColor,t.lighting.hemisphereIntensity);let n=t.environment.sceneUp??_T;r.position.copy(n),e.add(r)}if(!t.lighting.enableSunlight)return{ambient:n,hemisphere:r,sun:null};let i=new S_(t.lighting.sunlightColor??16777215,t.lighting.sunlightIntensity),a=t.lighting.sunlightPosition;return a&&i.position.set(a.x,a.y,a.z),t.render.enableShadows?(i.castShadow=!0,i.shadow.mapSize.width=t.render.shadowMapSize||2048,i.shadow.mapSize.height=t.render.shadowMapSize||2048,i.shadow.bias=-1e-4,i.shadow.normalBias=.02,i.shadow.radius=4,e.add(i),e.add(i.target),{ambient:n,hemisphere:r,sun:i}):(e.add(i),{ambient:n,hemisphere:r,sun:null})}function zT(e,t){if(t.isEmpty())return;let n=t.getCenter(new Z),r=t.getSize(new Z).length()*.5*1.2,i=e.shadow.camera;i.left=-r,i.right=r,i.top=r,i.bottom=-r,e.target.position.copy(n),e.target.updateMatrixWorld();let a=e.position.distanceTo(n);i.near=Math.max(r*.01,a-r),i.far=a+r,i.updateProjectionMatrix()}function BT(e,t,n){let r=new Cx({antialias:t.render.antialias,canvas:e,alpha:!0,powerPreference:`high-performance`,preserveDrawingBuffer:t.render.preserveDrawingBuffer,logarithmicDepthBuffer:!1}),i=e.parentElement,a=i?i.clientWidth:window.innerWidth,o=i?i.clientHeight:window.innerHeight;return i&&(e.style.width=`100%`,e.style.height=`100%`,e.style.display=`block`),r.setSize(a,o,!1),r.setPixelRatio(n),t.render.enableShadows&&(r.shadowMap.enabled=!0,r.shadowMap.type=3),r.toneMapping=t.render.toneMapping,r.toneMappingExposure=t.render.toneMappingExposure??1,r.outputColorSpace=kd,r.sortObjects=!0,r}var VT=function(e,t){let n=vT(t||{}),r=n.environment?.sceneUp||_T,i=n.render.pixelRatio??Math.min(window.devicePixelRatio,2),a=ET(n),o=TT(n,e);o.up.copy(r);let s=BT(e,n,i);zx(s.capabilities.getMaxAnisotropy()),t?.onMaxAnisotropy?.(s.capabilities.getMaxAnisotropy());let c=NT(o,e,n),l=ow({scene:a,perspective:o,controls:c,onActiveCameraChange:()=>{},up:r}),u=()=>l.getActiveCamera(),d=!1;PT(a,s,n,()=>d);let f=RT(a,n),p=f.sun,m=()=>{p&&zT(p,nw(a))};n.floor?.enabled&&FT(a,n);let h=n.floor?.enabled?a.children.find(e=>e.userData.id===`floor`)??null:null,g=n.grid.enabled?Qw({cellSize:n.grid.cellSize,majorEvery:n.grid.majorEvery,cellColor:n.grid.cellColor,majorColor:n.grid.majorColor,fadeDistance:n.grid.fadeDistance,plane:n.grid.plane}):null;g&&a.add(g.object);let _=()=>{g&&g.fitToContent(nw(a))},v=n.gizmo.enabled?hT({camera:o,domElement:e,controller:l}):null,y=n.grid.plane??XC(r),b=new Z(+(y===`x`),+(y===`y`),+(y===`z`)),x=r.clone().normalize(),S=n.camera.dynamicNear?cT({camera:o,scene:a,groundNormals:()=>{let e=[];return g?.object.visible&&e.push(b),n.floor.enabled&&h?.visible&&e.push(x),e}}):null,C=$w(e.parentElement??e,a),w=n.measure.enabled?oT({canvas:e,scene:a,getActiveCamera:u,labelLayer:C,options:{snapPixels:n.measure.snapPixels,color:n.measure.color,labelClassName:n.measure.labelClassName,displayUnit:n.measure.displayUnit,format:n.measure.format}}):null,T=n.events.enableEventHandlers===!1?{dispose:()=>{},fitToView:()=>{},clearSelection:()=>{}}:LT(e,a,l,n),E=mT();w&&E.register({id:`measure`,tool:w,priority:0}),v&&E.register({id:`gizmo`,tool:v,priority:-100});let D=0,O=0,k=e=>{D=e.clientX,O=e.clientY},A=e=>Math.hypot(e.clientX-D,e.clientY-O)>5,j=e=>{A(e)||E.handleClick(e)&&e.stopImmediatePropagation()};e.addEventListener(`mousedown`,k,{capture:!0}),e.addEventListener(`click`,j,{capture:!0});let M=e=>E.handleMove(e);e.addEventListener(`mousemove`,M,{passive:!0});let N=()=>{},P=(e,t)=>{Yw(e,{color:n.edges.color,darken:n.edges.darken,width:n.edges.width,thresholdAngle:n.edges.thresholdAngle,distanceFade:n.edges.distanceFade,maxTriangles:n.edges.maxTriangles,maxSegments:n.edges.maxSegments,maxOverlays:n.edges.maxOverlays,...t}).then(()=>{F(e),N()})},F=e=>{if(n.edges.screenSpaceFallback===!1)return;let t=!1;e.traverse(e=>{let n=e.userData?.edgesSkipped;(n===`triangle-cap`||n===`overlay-budget`)&&(t=!0)}),R.setEdgeFallback(t)},I=e=>{Xw(e),R.setEdgeFallback(!1),N()},L=e.parentElement,ee=()=>L?{width:L.clientWidth,height:L.clientHeight}:{width:window.innerWidth,height:window.innerHeight},R=MT({renderer:s,scene:a,getActiveCamera:u,getCanvasSize:ee,pixelRatio:i,config:n,requestRender:()=>N()});R.sync();let te=wT({scene:a,renderer:s,lights:f,config:n,pipeline:R,requestRender:()=>N()}),{animate:z,dispose:ne,invalidate:B,renderNow:V}=gT(s,a,o,u,l,c,ee,i,n.events.onFrame,g,v,()=>R.get(),C,S,n.render.onDemand??!0);return N=B,z(),a.up.set(r.x,r.y,r.z),m(),_(),{scene:a,camera:o,controls:c,renderer:s,cameraController:l,grid:g,gizmo:v,measureTool:w,labelLayer:C,tools:E,applyEdges:P,clearEdges:I,invalidate:B,captureImage:(e=`image/png`,t)=>(V(),new Promise(n=>s.domElement.toBlob(n,e,t))),setAmbientOcclusion:R.setAmbientOcclusion,setLook:te.setLook,setFillLights:te.setFillLights,setEnvironmentIntensity:te.setEnvironmentIntensity,setToneMappingExposure:te.setToneMappingExposure,setAoIntensity:te.setAoIntensity,getMaterialAppearance:te.getMaterialAppearance,updateShadowBounds:m,updateGridScale:_,dispose:()=>{d||(d=!0,ne(),T.dispose(),e.removeEventListener(`mousedown`,k,{capture:!0}),e.removeEventListener(`click`,j,{capture:!0}),e.removeEventListener(`mousemove`,M),w?.dispose(),C?.dispose(),v?.dispose(),g?.dispose(),R.dispose(),l.dispose(),c.dispose(),s.dispose(),s.forceContextLoss(),DT(a))},fitToView:T.fitToView,clearSelection:T.clearSelection,addUserGeometry:(e,t)=>{e.userData.source=t===void 0?FC:LC(t),a.add(e),N()},removeUserGeometry:e=>{e.removeFromParent(),Ux(e),N()},clearUserGeometry:e=>{a.children.filter(t=>BC(t,e)).forEach(e=>{e.removeFromParent(),Ux(e)}),N()}}},HT=new Set([`grid`,`floor`,`label-layer`,`measure`]);function UT(e){return!(e instanceof p_)&&!(e instanceof i_)&&!HT.has(e.userData?.id)}function WT(e){return e.children.filter(UT)}function GT(e){return e.replace(/^Line(Segments)?2$/,`Curve`).replace(`Mesh`,``).replace(`Object3D`,`Obj`)||e}function KT(e){return e.userData?.name||e.userData?.fileName||e.name||GT(e.type)}function qT(e){return GT(e.type)}function JT(e){let t=e.userData;if(!t)return null;if(typeof t.trackingKey==`string`&&t.trackingKey)return t.trackingKey;if(typeof t.id==`string`&&t.id)return t.id;let n=typeof t.name==`string`?t.name:e.name,r=typeof t.layer==`string`?t.layer:``;return n?`name${r}${n}`:null}function YT(e){return JT(e)??e.uuid}function XT(e){let t=e.userData?.members;return!Array.isArray(t)||t.length===0?[YT(e)]:t.map((t,n)=>typeof t.trackingKey==`string`&&t.trackingKey?t.trackingKey:t.name?`name${t.layer}${t.name}`:`${e.uuid}${n}`)}function ZT(e){let t=e.userData?.members;return Array.isArray(t)&&t.length>0?t:null}var QT=(e,t)=>e.userData?.layer||e.userData?.category||t;function $T(e,t){let n=[],r=new Map,i=e=>{let t=r.get(e)??0;return r.set(e,t+1),t===0?e:`${e}#${t}`};for(let r of WT(e)){let e=ZT(r);if(!e){let e=YT(r);n.push({object:r,memberIndex:null,key:e,rowKey:i(e),label:KT(r),layer:QT(r,t)});continue}let a=XT(r);e.forEach((e,o)=>{let s=a[o]??`${r.uuid}:${o}`;n.push({object:r,memberIndex:o,key:s,rowKey:i(s),label:e.name||GT(r.type),layer:e.layer||QT(r,t)})})}return n}var eE=`Default`;function tE(e){let t=new Map;for(let n of e){let e=n.userData?.layer||n.userData?.category||`Default`,r=t.get(e);r||(r=[],t.set(e,r)),r.push(n)}return t}function nE(e,t){if(!t.trim())return e;let n=t.toLowerCase(),r=new Map;for(let[t,i]of e){let e=t.toLowerCase().includes(n)?i:i.filter(e=>KT(e).toLowerCase().includes(n));e.length>0&&r.set(t,e)}return r}function rE(e){let t=new Map;for(let n of e){let e=t.get(n.layer);e||(e=[],t.set(n.layer,e)),e.push(n)}return t}function iE(e,t){if(!t.trim())return e;let n=t.toLowerCase(),r=new Map;for(let[t,i]of e){let e=t.toLowerCase().includes(n)?i:i.filter(e=>e.label.toLowerCase().includes(n));e.length>0&&r.set(t,e)}return r}function aE(e,t){let n=e;if(!n.isMesh||!Array.isArray(n.userData?.members))return;let r=new Set;XT(n).forEach((e,n)=>{t.has(e)&&r.add(n)}),Qx(n,r)}function oE(e=new Set){let t=t=>XT(t).every(t=>e.has(t)),n={hidden:e,isHidden:t,setVisible(t,n){t.visible=n,t.traverse(e=>{e.visible=n});for(let r of XT(t))n?e.delete(r):e.add(r);aE(t,e)},isEntryHidden:n=>n.memberIndex===null?t(n.object):e.has(n.key),setEntryVisible(t,r){if(t.memberIndex===null){n.setVisible(t.object,r);return}r?e.delete(t.key):e.add(t.key),aE(t.object,e),r&&!t.object.visible&&t.object.traverse(e=>{e.visible=!0})},isLayerHidden:e=>e.length>0&&e.every(e=>n.isHidden(e)),isLayerPartial(e){let t=e.filter(e=>n.isHidden(e)).length;return t>0&&t<e.length},toggleLayer(e){let t=n.isLayerHidden(e);for(let r of e)n.setVisible(r,t)},applyTo(n){for(let r of n)aE(r,e),t(r)&&(r.visible=!1,r.traverse(e=>{e.visible=!1}))},reset:()=>e.clear()};return n}function sE(e=new Set){let t=null,n=new Set,r=e=>{t=e;for(let t of n)t(e)};return{selected:e,get anchor(){return t},isSelected:t=>e.has(t),select(n,i,a){if(i.shiftKey&&t){let r=a(),o=r.indexOf(t),s=r.indexOf(n);if(o!==-1&&s!==-1){let[t,n]=o<s?[o,s]:[s,o];i.toggleKey||e.clear();for(let i=t;i<=n;i++)e.add(r[i])}return}i.toggleKey?e.has(n)?e.delete(n):e.add(n):(e.clear(),e.add(n)),r(n)},clear(){e.clear(),r(null)},onAnchorChange(e){return n.add(e),()=>n.delete(e)}}}function cE(e,t={}){let n=t.sets?.collapsed??new Set,r=oE(t.sets?.hidden),i=sE(t.sets?.selected),a={visibility:r,selection:i,collapsed:n,objects:()=>WT(e),entries:()=>$T(e,eE),entryGroups:(t=``)=>iE(rE($T(e,eE)),t),layerGroups:(t=``)=>nE(tE(WT(e)),t),isCollapsed:e=>n.has(e),toggleCollapsed(e){n.has(e)?n.delete(e):n.add(e)},toggleObject(e){if(i.isSelected(e.uuid)&&i.selected.size>1){let e=a.objects().filter(e=>i.isSelected(e.uuid)),t=e.every(e=>r.isHidden(e));for(let n of e)r.setVisible(n,t)}else r.setVisible(e,r.isHidden(e))},toggleEntry(e){if(i.isSelected(e.key)&&i.selected.size>1){let e=a.entries().filter(e=>i.isSelected(e.key)),t=e.every(e=>r.isEntryHidden(e));for(let n of e)r.setEntryVisible(n,t)}else r.setEntryVisible(e,r.isEntryHidden(e))},select(e,t,n){i.select(e,t,()=>a.flatVisibleUuids(n))},onAnchorChange:e=>i.onAnchorChange(e),flatVisibleUuids(e){let t=[];for(let[r,i]of a.entryGroups(e))if(!n.has(r))for(let e of i)t.push(e.key);return t},applyTo(){r.applyTo(a.objects()),i.clear()},reset(){r.reset(),i.clear()}};return a}var lE=m(`<button><!></button>`),uE=m(`<div class="gap-1 pl-1 pr-2 group flex h-full items-center transition-colors hover:bg-muted svelte-vc2vi3"><button class="rounded p-0.5 shrink-0 text-muted-foreground transition-colors hover:text-muted-foreground"><!></button> <button class="rounded p-1 shrink-0 transition-colors hover:bg-muted"><!></button> <span> </span> <span class="shrink-0 text-2xs text-muted-foreground/50 tabular-nums"> </span></div>`),dE=m(`<div class="ml-3 h-full border-l border-border svelte-vc2vi3"><div role="option" tabindex="-1"><button class="rounded p-1 shrink-0 transition-colors hover:bg-muted"><!></button> <span> </span> <span class="rounded px-1 py-0.5 font-medium shrink-0 bg-muted text-2xs text-muted-foreground/70"> </span></div></div>`),fE=m(`<div class="inset-x-0 absolute top-(--row-top) h-(--row-h) svelte-vc2vi3"><!></div>`),pE=m(`<div class="py-12 flex flex-col items-center justify-center text-center svelte-vc2vi3"><!> <p class="text-xs text-muted-foreground"> </p></div>`),mE=m(`<div class="flex h-full flex-col bg-card text-card-foreground svelte-vc2vi3"><div class="px-3 py-2 gap-2 flex items-center border-b border-border svelte-vc2vi3"><!> <input class="min-w-0 text-xs flex-1 bg-transparent text-foreground outline-none placeholder:text-muted-foreground/50"/> <!> <button class="shrink-0"><!></button></div> <div class="py-1 flex-1 overflow-y-auto svelte-vc2vi3"><div role="listbox" aria-multiselectable="true" class="relative h-(--list-h) svelte-vc2vi3"></div> <!></div></div>`);function hE(t,n){l(n,!0);let r=Je(),o=y(()=>r.messages),s=P(n,`sceneVersion`,3,0),c=e=>{let t=e.length>0&&e.every(e=>ie(e));for(let r of e)n.outliner.visibility.setEntryVisible(r,t);n.onVisibilityChange?.()},u=e=>{n.outliner.toggleEntry(e),n.onVisibilityChange?.()},d=y(()=>n.outliner.visibility.hidden),f=y(()=>n.outliner.selection.selected),p=y(()=>n.outliner.collapsed),m=w(``),g=w(null),_=!1;ce(()=>n.outliner.onAnchorChange(e=>i(g,e,!0)));let x=y(()=>(s(),n.outliner.objects())),C=y(()=>(s(),n.outliner.entryGroups(V(m)))),E=()=>{for(let e of n.outliner.entryGroups().keys())V(p).add(e)};ce(()=>{s(),!(_||n.outliner.entryGroups().size===0)&&(_=!0,E())});let k=()=>V(p).clear(),A=y(()=>V(C).size>0&&[...V(C).keys()].every(e=>V(p).has(e))),j=y(()=>{let e=[],t=0;for(let[n,r]of V(C))if(e.push({kind:`layer`,key:`layer:${n}`,top:t,height:30,layerName:n,entries:r}),t+=30,!V(p).has(n))for(let n of r)e.push({kind:`object`,key:`obj:${n.rowKey}`,top:t,height:24,entry:n}),t+=24;return e}),M=y(()=>V(j).length===0?0:V(j)[V(j).length-1].top+V(j)[V(j).length-1].height),L=w(0),ee=w(0),B=e=>{let t=0,n=V(j).length-1;for(;t<n;){let r=t+n>>1;V(j)[r].top+V(j)[r].height<=e?t=r+1:n=r}return t},re=y(()=>{if(V(j).length===0)return[];let e=V(ee)||600,t=Math.max(0,B(V(L))-8),n=Math.min(V(j).length,B(V(L)+e)+1+8);return V(j).slice(t,n)}),ie=e=>e.memberIndex===null?XT(e.object).every(e=>V(d).has(e)):V(d).has(e.key),ae=e=>e.filter(e=>ie(e)).length,oe=(e,t)=>{V(g),n.outliner.select(e,{shiftKey:t.shiftKey,toggleKey:t.ctrlKey||t.metaKey},V(m))};var H=mE(),se=N(H),U=N(se);St(U,{class:`h-3.5 w-3.5 shrink-0 text-muted-foreground/50`});var le=I(U,2);me(le);var ue=I(le,2),W=t=>{var n=lE(),r=N(n);wt(r,{class:`h-3.5 w-3.5 text-muted-foreground/50 transition-colors hover:text-muted-foreground`}),O(n),z(()=>F(n,`aria-label`,V(o).clearSearch)),e(`click`,n,()=>i(m,``)),h(t,n)};D(ue,e=>{V(m)&&e(W)});var de=I(ue,2),fe=N(de),G=e=>{Ln(e,{class:`h-3.5 w-3.5 text-muted-foreground/50 transition-colors hover:text-muted-foreground`})},K=e=>{Fn(e,{class:`h-3.5 w-3.5 text-muted-foreground/50 transition-colors hover:text-muted-foreground`})};D(fe,e=>{V(A)?e(G):e(K,-1)}),O(de),O(se);var pe=I(se,2),he=N(pe);let ge;S(he,21,()=>V(re),e=>e.key,(t,r)=>{var i=fE();let s;var l=N(i),d=t=>{let i=y(()=>V(r).entries),a=y(()=>ae(V(i))),s=y(()=>V(i).length>0&&V(a)===V(i).length),l=y(()=>V(a)>0&&V(a)<V(i).length),u=y(()=>V(p).has(V(r).layerName));var d=uE(),f=N(d),m=N(f);{let e=y(()=>V(u)?``:`rotate-90`);rt(m,{get class(){return`h-3.5 w-3.5 transition-transform duration-150 ${V(e)??``}`}})}O(f);var g=I(f,2),_=N(g),b=e=>{Un(e,{class:`h-3.5 w-3.5 text-muted-foreground/40`})},x=e=>{Gn(e,{class:`h-3.5 w-3.5 text-muted-foreground/60`})},S=e=>{Gn(e,{class:`h-3.5 w-3.5 text-muted-foreground`})};D(_,e=>{V(s)?e(b):V(l)?e(x,1):e(S,-1)}),O(g);var C=I(g,2),w=q(C,!0),E=I(C,2),k=q(E,!0);O(d),z(()=>{F(f,`aria-label`,V(u)?V(o).expandLayer:V(o).collapseLayer),F(g,`title`,V(s)?V(o).showLayer:V(o).hideLayer),F(g,`aria-label`,V(s)?V(o).showLayer:V(o).hideLayer),v(C,1,`min-w-0 text-xs font-medium flex-1 truncate ${V(s)?`text-muted-foreground/40 line-through`:`text-foreground`}`),T(w,V(r).layerName),T(k,V(i).length)}),e(`click`,f,()=>n.outliner.toggleCollapsed(V(r).layerName)),e(`click`,g,()=>c(V(i))),h(t,d)},m=t=>{let n=y(()=>V(r).entry),i=y(()=>ie(V(n))),a=y(()=>V(f).has(V(n).key));var s=dE(),c=N(s),l=N(c),d=N(l),p=e=>{Un(e,{class:`h-3 w-3 text-muted-foreground/60`})},m=e=>{Gn(e,{class:`h-3 w-3 text-muted-foreground`})};D(d,e=>{V(i)?e(p):e(m,-1)}),O(l);var g=I(l,2),_=q(g,!0),b=I(g,2),x=q(b,!0);O(c),O(s),z(e=>{F(c,`aria-selected`,V(a)),v(c,1,`gap-1.5 pl-5 pr-2 flex h-full cursor-pointer items-center transition-colors
5594
+ `},kT=class extends zS{camera;scene;normalMaterial;edgeMaterial;fsQuad;normalTarget=null;width;height;constructor(e,t,n,r,i={}){super(),this.scene=e,this.camera=t,this.width=Math.max(1,n),this.height=Math.max(1,r),this.normalMaterial=new wg,this.normalMaterial.blending=0,this.edgeMaterial=new bg({uniforms:_g.clone(OT.uniforms),vertexShader:OT.vertexShader,fragmentShader:OT.fragmentShader});let a=this.edgeMaterial.uniforms;a.uColor.value=new Q(i.color??2236962),a.uOpacity.value=i.opacity??1,a.uNormalThreshold.value=i.normalThreshold??.4,a.uDepthThreshold.value=i.depthThreshold??.02,a.uThickness.value=i.thickness??1,this.fsQuad=new HS(this.edgeMaterial),this.needsSwap=!0}acquireNormalTarget(){if(!this.normalTarget){let e=new $h(this.width,this.height);this.normalTarget=new Wf(this.width,this.height,{minFilter:uu,magFilter:uu,depthTexture:e})}return this.normalTarget}setSize(e,t){this.width=Math.max(1,e),this.height=Math.max(1,t),this.normalTarget?.setSize(this.width,this.height)}render(e,t,n){let r=this.acquireNormalTarget(),i=e.getRenderTarget(),a=e.autoClear,o=e.getClearColor(new Q),s=e.getClearAlpha(),c=this.scene.overrideMaterial;e.setRenderTarget(r),e.setClearColor(7829503,1),e.autoClear=!0,this.scene.overrideMaterial=this.normalMaterial,e.render(this.scene,this.camera),this.scene.overrideMaterial=c,e.setClearColor(o,s),e.autoClear=a;let l=this.edgeMaterial.uniforms;l.tDiffuse.value=n.texture,l.tNormal.value=r.texture,l.tDepth.value=r.depthTexture,l.uResolution.value.set(this.width,this.height);let u=this.camera;l.uPerspective.value=+!!u.isPerspectiveCamera,l.uNear.value=this.camera.near??.1,l.uFar.value=this.camera.far??1e3,e.setRenderTarget(this.renderToScreen?null:t),this.fsQuad.render(e),e.setRenderTarget(i)}dispose(){this.normalTarget?.dispose(),this.normalMaterial.dispose(),this.edgeMaterial.dispose(),this.fsQuad.dispose()}};function AT(e){return e>=2?0:4}function jT(e,t,n,r,i,a){let o=new Wf(r,i,{type:Cu}),s=new KS(e,o);s.renderTarget2.samples=0;let c=e=>{s.readBuffer=o,s.writeBuffer=s.renderTarget2,s.render(e)},l=new qS(t,n);s.addPass(l);let u=null;(a.ambientOcclusion??!0)&&(u=new rC(t,n,r,i),u.blendIntensity=a.aoIntensity??1,u.updateGtaoMaterial({screenSpaceRadius:!0}),s.addPass(u));let d=new kT(t,n,r,i,typeof a.edgeDetection==`object`?a.edgeDetection:{});d.enabled=!!a.edgeDetection,s.addPass(d);let f=new sC;s.addPass(f);let p=new lC;s.addPass(p),e.toneMapping=a.toneMapping,e.toneMappingExposure=a.toneMappingExposure;let m=a.aoPixelRatio??1,h=1;if(u){let e=u.setSize.bind(u);u.setSize=(t,n)=>e(Math.max(1,Math.round(t*h)),Math.max(1,Math.round(n*h)))}let g=e=>{h=Math.min(e,m)/e;let t=AT(e);o.samples!==t&&(o.samples=t,o.dispose()),s.setPixelRatio(e)};return g(e.getPixelRatio()),s.setSize(r,i),{render:c,setSize:(e,t,n)=>{g(n),s.setSize(e,t)},setCamera:e=>{if(l.camera=e,d.camera=e,!u)return;u.camera=e;let t=+!!e.isPerspectiveCamera;u.gtaoMaterial.defines.PERSPECTIVE_CAMERA!==t&&(u.gtaoMaterial.defines.PERSPECTIVE_CAMERA=t,u.gtaoMaterial.needsUpdate=!0)},setEdgeDetection:e=>{d.enabled=e},edgeDetectionEnabled:()=>d.enabled,dispose:()=>{s.dispose(),u?.dispose(),d.dispose(),f.dispose(),p.dispose()}}}function MT(e){let{renderer:t,scene:n,getActiveCamera:r,getCanvasSize:i,pixelRatio:a,config:o,requestRender:s}=e,c=null,l=!!o.render.ambientOcclusion,u=!1,d=!1,f=e=>{let{width:s,height:c}=i(),l=jT(t,n,r(),Math.max(1,s),Math.max(1,c),{toneMapping:o.render.toneMapping??7,toneMappingExposure:o.render.toneMappingExposure??1,ambientOcclusion:e,aoIntensity:o.render.aoIntensity,aoPixelRatio:o.render.aoPixelRatio,edgeDetection:!1});return l.setSize(Math.max(1,s),Math.max(1,c),a),l},p=()=>{if(!(l||u)){c?.dispose(),c=null,s();return}(!c||d!==l)&&(c?.dispose(),c=f(l),d=l),c.setEdgeDetection(u),s()};return{get:()=>c,sync:p,rebuild:()=>{c?.dispose(),c=null,p()},setAmbientOcclusion:e=>{l=e,p()},setEdgeFallback:e=>{e!==u&&(u=e,p())},isEdgeFallbackActive:()=>u,dispose:()=>{c?.dispose(),c=null}}}function NT(e,t,n){let r=new bC(e,t),i=n.camera.target;return i&&r.target.set(i.x,i.y,i.z),r.enableDamping=n.controls.enableDamping||!1,r.dampingFactor=n.controls.dampingFactor||.05,r.autoRotate=n.controls.autoRotate||!1,r.autoRotateSpeed=n.controls.autoRotateSpeed||.5,r.enableZoom=n.controls.enableZoom??!0,r.enablePan=n.controls.enablePan??!0,r.minDistance=n.controls.minDistance||.001,r.maxDistance=n.controls.maxDistance||1/0,r.screenSpacePanning=!1,r.maxPolarAngle=Math.PI,r.update(),r}function PT(e,t,n,r){n.environment.enableEnvironmentLighting?(HC(e,t,YC(n.environment.sceneUp??_T)),new NC().load(n.environment.hdrPath||`/baseHDR.hdr`,function(i){if(r()){i.dispose();return}if(!i?.image){Dx().warn(`HDR loaded without image data; skipping environment map.`),i?.dispose(),n.events.onReady?.();return}i.mapping=303;let a=new Av(t);a.compileEquirectangularShader();let o=a.fromEquirectangular(i).texture;a.dispose(),e.environment=o,e.environmentIntensity=n.environment.environmentIntensity??1;let s=YC(n.environment.sceneUp??_T);e.environmentRotation.copy(s),n.environment.showEnvironment?(e.background=i,e.backgroundRotation.copy(s)):i.dispose(),n.events.onReady?.()},void 0,function(e){r()||(Dx().warn(`HDR texture could not be loaded, falling back to basic lighting:`,e),n.events.onReady?.())})):n.events.onReady?.()}function FT(e,t){let n=t.floor.size,r=new _h(new lg(n,n),new Sg({color:typeof t.floor.color==`string`?new Q(t.floor.color):t.floor.color,roughness:t.floor.roughness,metalness:t.floor.metalness,side:2}));r.userData.id=`floor`,r.name=`floor`;let i=(t.environment?.sceneUp||_T).clone().normalize();r.quaternion.setFromUnitVectors(new Z(0,0,1),i),r.position.set(0,0,0),t.floor.receiveShadow&&t.render.enableShadows&&(r.receiveShadow=!0),e.add(r)}function IT(e,t,n){if(n&&`emissive`in e){let n=e;n.emissive=t.clone(),n.emissiveIntensity=.6,n.color.lerp(t,.75),n.metalness=Math.min(n.metalness,.2),n.opacity<1&&(n.opacity=1,n.transparent=!1,n.depthWrite=!0);return}`color`in e&&(e.color=t.clone())}function LT(e,t,n,r){let i=new Set,a=new Map,o=null,s=null,c=null,l=new G_,u=new X,d=new X,f=()=>n.getActiveCamera(),p=e=>{let t=e;for(;t;){if(!t.visible)return!1;t=t.parent}return!0},m=()=>{let e=nw(t);if(e.isEmpty()){Dx().warn(`No objects to fit to view`);return}n.frameBounds(e,!1)},h=typeof r.events.selectionColor==`string`?new Q(r.events.selectionColor):r.events.selectionColor instanceof Q?r.events.selectionColor:new Q(`#ff0000`),g=()=>{o&&(o(),o=null,c?.dispose(),c=null),i.forEach(e=>{let n=e;if(a.has(e)){let r=a.get(e),i=n.material;i instanceof Lm?i.dispose():Array.isArray(i)&&i.forEach(e=>e.dispose()),n.material=r,a.delete(e);let o=e;for(;o.parent;)o=o.parent;o!==t&&(r instanceof Lm?r.dispose():r.forEach(e=>e.dispose()))}}),i.clear(),s=null},_=(e,t)=>{if(t&&e instanceof _h){let n=$x(e).clone();return IT(n,h,!0),c=n,o=jw(e,t,n),!0}let n=e;if(!(n.material instanceof Lm))return!1;let r=n.material.clone();return IT(r,h,e instanceof _h),a.set(e,n.material),n.material=r,!0},v=null,y=-1,b=()=>{if(v===null||t.children.length!==y){let e=nw(t);v=e.isEmpty()?1:e.getSize(new Z).length(),y=t.children.length}l.params.Points.threshold=v*.01},x=(n,r)=>{let i=e.getBoundingClientRect();u.x=(n-i.left)/i.width*2-1,u.y=-((r-i.top)/i.height)*2+1,b(),l.setFromCamera(u,f());for(let e of l.intersectObjects(t.children,!0))if(p(e.object)&&!tw(e.object))return e;return null},S=e=>{d.set(e.clientX,e.clientY)},C=e=>{let t=new X(e.clientX,e.clientY);if(d.distanceTo(t)>5)return;let n=x(e.clientX,e.clientY);if(!n){g(),r.events?.onBackgroundClicked?.({x:u.x,y:u.y});return}let a=n.object,o=kw(n),c=o?.index??null;i.has(a)&&c===s||(g(),i.add(a),s=c,_(a,o?.member??null),r.events?.onObjectSelected?.(a),o?r.events?.onMeshMetadataClicked?.({source:a.userData?.source,name:o.member.name,layer:o.member.layer,trackingKey:o.member.trackingKey,metadata:o.member.metadata}):a instanceof _h&&Object.keys(a.userData).length>0&&r.events?.onMeshMetadataClicked?.(a.userData))},w=e=>{let i=x(e.clientX,e.clientY);if(!i){r.events?.enableDoubleClickZoom&&n.frameBounds(nw(t),!0);return}let a=i.object;if(r.events?.onMeshDoubleClicked?.(a),!r.events?.enableDoubleClickZoom)return;let o=kw(i),s=o&&a instanceof _h?Aw(a,o.member):new Wp().setFromObject(a);s.isEmpty()||n.frameBounds(s,!0)},T=e=>{if(r.events?.enableKeyboardControls)switch(e.key.toLowerCase()){case`f`:e.preventDefault(),m();break;case`escape`:e.preventDefault(),g();break;case` `:e.preventDefault(),m()}};return r.events?.enableClickToFocus&&(e.addEventListener(`mousedown`,S),e.addEventListener(`click`,C),e.addEventListener(`dblclick`,w)),r.events?.enableKeyboardControls&&(e.setAttribute(`tabindex`,`0`),e.addEventListener(`keydown`,T)),{dispose:()=>{e.removeEventListener(`mousedown`,S),e.removeEventListener(`click`,C),e.removeEventListener(`dblclick`,w),e.removeEventListener(`keydown`,T),g()},fitToView:m,clearSelection:g}}function RT(e,t){let n=new C_(t.lighting.ambientLightColor,t.lighting.ambientLightIntensity);e.add(n);let r=null;if(t.lighting.enableHemisphereLight){r=new a_(t.lighting.hemisphereSkyColor,t.lighting.hemisphereGroundColor,t.lighting.hemisphereIntensity);let n=t.environment.sceneUp??_T;r.position.copy(n),e.add(r)}if(!t.lighting.enableSunlight)return{ambient:n,hemisphere:r,sun:null};let i=new S_(t.lighting.sunlightColor??16777215,t.lighting.sunlightIntensity),a=t.lighting.sunlightPosition;return a&&i.position.set(a.x,a.y,a.z),t.render.enableShadows?(i.castShadow=!0,i.shadow.mapSize.width=t.render.shadowMapSize||2048,i.shadow.mapSize.height=t.render.shadowMapSize||2048,i.shadow.bias=-1e-4,i.shadow.normalBias=.02,i.shadow.radius=4,e.add(i),e.add(i.target),{ambient:n,hemisphere:r,sun:i}):(e.add(i),{ambient:n,hemisphere:r,sun:null})}function zT(e,t){if(t.isEmpty())return;let n=t.getCenter(new Z),r=t.getSize(new Z).length()*.5*1.2,i=e.shadow.camera;i.left=-r,i.right=r,i.top=r,i.bottom=-r,e.target.position.copy(n),e.target.updateMatrixWorld();let a=e.position.distanceTo(n);i.near=Math.max(r*.01,a-r),i.far=a+r,i.updateProjectionMatrix()}function BT(e,t,n){let r=new Cx({antialias:t.render.antialias,canvas:e,alpha:!0,powerPreference:`high-performance`,preserveDrawingBuffer:t.render.preserveDrawingBuffer,logarithmicDepthBuffer:!1}),i=e.parentElement,a=i?i.clientWidth:window.innerWidth,o=i?i.clientHeight:window.innerHeight;return i&&(e.style.width=`100%`,e.style.height=`100%`,e.style.display=`block`),r.setSize(a,o,!1),r.setPixelRatio(n),t.render.enableShadows&&(r.shadowMap.enabled=!0,r.shadowMap.type=3),r.toneMapping=t.render.toneMapping,r.toneMappingExposure=t.render.toneMappingExposure??1,r.outputColorSpace=kd,r.sortObjects=!0,r}var VT=function(e,t){let n=vT(t||{}),r=n.environment?.sceneUp||_T,i=n.render.pixelRatio??Math.min(window.devicePixelRatio,2),a=ET(n),o=TT(n,e);o.up.copy(r);let s=BT(e,n,i);zx(s.capabilities.getMaxAnisotropy()),t?.onMaxAnisotropy?.(s.capabilities.getMaxAnisotropy());let c=NT(o,e,n),l=ow({scene:a,perspective:o,controls:c,onActiveCameraChange:()=>{},up:r}),u=()=>l.getActiveCamera(),d=!1;PT(a,s,n,()=>d);let f=RT(a,n),p=f.sun,m=()=>{p&&zT(p,nw(a))};n.floor?.enabled&&FT(a,n);let h=n.floor?.enabled?a.children.find(e=>e.userData.id===`floor`)??null:null,g=n.grid.enabled?Qw({cellSize:n.grid.cellSize,majorEvery:n.grid.majorEvery,cellColor:n.grid.cellColor,majorColor:n.grid.majorColor,fadeDistance:n.grid.fadeDistance,plane:n.grid.plane}):null;g&&a.add(g.object);let _=()=>{g&&g.fitToContent(nw(a))},v=n.gizmo.enabled?hT({camera:o,domElement:e,controller:l}):null,y=n.grid.plane??XC(r),b=new Z(+(y===`x`),+(y===`y`),+(y===`z`)),x=r.clone().normalize(),S=n.camera.dynamicNear?cT({camera:o,scene:a,groundNormals:()=>{let e=[];return g?.object.visible&&e.push(b),n.floor.enabled&&h?.visible&&e.push(x),e}}):null,C=$w(e.parentElement??e,a),w=n.measure.enabled?oT({canvas:e,scene:a,getActiveCamera:u,labelLayer:C,options:{snapPixels:n.measure.snapPixels,color:n.measure.color,labelClassName:n.measure.labelClassName,displayUnit:n.measure.displayUnit,format:n.measure.format}}):null,T=n.events.enableEventHandlers===!1?{dispose:()=>{},fitToView:()=>{},clearSelection:()=>{}}:LT(e,a,l,n),E=mT();w&&E.register({id:`measure`,tool:w,priority:0}),v&&E.register({id:`gizmo`,tool:v,priority:-100});let D=0,O=0,k=e=>{D=e.clientX,O=e.clientY},A=e=>Math.hypot(e.clientX-D,e.clientY-O)>5,j=e=>{A(e)||E.handleClick(e)&&e.stopImmediatePropagation()};e.addEventListener(`mousedown`,k,{capture:!0}),e.addEventListener(`click`,j,{capture:!0});let M=e=>E.handleMove(e);e.addEventListener(`mousemove`,M,{passive:!0});let N=()=>{},P=(e,t)=>{Yw(e,{color:n.edges.color,darken:n.edges.darken,width:n.edges.width,thresholdAngle:n.edges.thresholdAngle,distanceFade:n.edges.distanceFade,maxTriangles:n.edges.maxTriangles,maxSegments:n.edges.maxSegments,maxOverlays:n.edges.maxOverlays,...t}).then(()=>{F(e),N()})},F=e=>{if(n.edges.screenSpaceFallback===!1)return;let t=!1;e.traverse(e=>{let n=e.userData?.edgesSkipped;(n===`triangle-cap`||n===`overlay-budget`)&&(t=!0)}),R.setEdgeFallback(t)},I=e=>{Xw(e),R.setEdgeFallback(!1),N()},L=e.parentElement,ee=()=>L?{width:L.clientWidth,height:L.clientHeight}:{width:window.innerWidth,height:window.innerHeight},R=MT({renderer:s,scene:a,getActiveCamera:u,getCanvasSize:ee,pixelRatio:i,config:n,requestRender:()=>N()});R.sync();let te=wT({scene:a,renderer:s,lights:f,config:n,pipeline:R,requestRender:()=>N()}),{animate:z,dispose:ne,invalidate:B,renderNow:V}=gT(s,a,o,u,l,c,ee,i,n.events.onFrame,g,v,()=>R.get(),C,S,n.render.onDemand??!0);return N=B,z(),a.up.set(r.x,r.y,r.z),m(),_(),{scene:a,camera:o,controls:c,renderer:s,cameraController:l,grid:g,gizmo:v,measureTool:w,labelLayer:C,tools:E,applyEdges:P,clearEdges:I,invalidate:B,captureImage:(e=`image/png`,t)=>(V(),new Promise(n=>s.domElement.toBlob(n,e,t))),setAmbientOcclusion:R.setAmbientOcclusion,setLook:te.setLook,setFillLights:te.setFillLights,setEnvironmentIntensity:te.setEnvironmentIntensity,setToneMappingExposure:te.setToneMappingExposure,setAoIntensity:te.setAoIntensity,getMaterialAppearance:te.getMaterialAppearance,updateShadowBounds:m,updateGridScale:_,dispose:()=>{d||(d=!0,ne(),T.dispose(),e.removeEventListener(`mousedown`,k,{capture:!0}),e.removeEventListener(`click`,j,{capture:!0}),e.removeEventListener(`mousemove`,M),w?.dispose(),C?.dispose(),v?.dispose(),g?.dispose(),R.dispose(),l.dispose(),c.dispose(),s.dispose(),s.forceContextLoss(),DT(a))},fitToView:T.fitToView,clearSelection:T.clearSelection,addUserGeometry:(e,t)=>{e.userData.source=t===void 0?FC:LC(t),a.add(e),N()},removeUserGeometry:e=>{e.removeFromParent(),Ux(e),N()},clearUserGeometry:e=>{a.children.filter(t=>BC(t,e)).forEach(e=>{e.removeFromParent(),Ux(e)}),N()}}},HT=new Set([`grid`,`floor`,`label-layer`,`measure`]);function UT(e){return!(e instanceof p_)&&!(e instanceof i_)&&!HT.has(e.userData?.id)}function WT(e){return e.children.filter(UT)}function GT(e){return e.replace(/^Line(Segments)?2$/,`Curve`).replace(`Mesh`,``).replace(`Object3D`,`Obj`)||e}function KT(e){return e.userData?.name||e.userData?.fileName||e.name||GT(e.type)}function qT(e){return GT(e.type)}function JT(e){let t=e.userData;if(!t)return null;if(typeof t.trackingKey==`string`&&t.trackingKey)return t.trackingKey;if(typeof t.id==`string`&&t.id)return t.id;let n=typeof t.name==`string`?t.name:e.name,r=typeof t.layer==`string`?t.layer:``;return n?`name${r}${n}`:null}function YT(e){return JT(e)??e.uuid}function XT(e){let t=e.userData?.members;return!Array.isArray(t)||t.length===0?[YT(e)]:t.map((t,n)=>typeof t.trackingKey==`string`&&t.trackingKey?t.trackingKey:t.name?`name${t.layer}${t.name}`:`${e.uuid}${n}`)}function ZT(e){let t=e.userData?.members;return Array.isArray(t)&&t.length>0?t:null}var QT=(e,t)=>e.userData?.layer||e.userData?.category||t;function $T(e,t){let n=[],r=new Map,i=e=>{let t=r.get(e)??0;return r.set(e,t+1),t===0?e:`${e}#${t}`};for(let r of WT(e)){let e=ZT(r);if(!e){let e=YT(r);n.push({object:r,memberIndex:null,key:e,rowKey:i(e),label:KT(r),layer:QT(r,t)});continue}let a=XT(r);e.forEach((e,o)=>{let s=a[o]??`${r.uuid}:${o}`;n.push({object:r,memberIndex:o,key:s,rowKey:i(s),label:e.name||GT(r.type),layer:e.layer||QT(r,t)})})}return n}var eE=`Default`;function tE(e){let t=new Map;for(let n of e){let e=n.userData?.layer||n.userData?.category||`Default`,r=t.get(e);r||(r=[],t.set(e,r)),r.push(n)}return t}function nE(e,t){if(!t.trim())return e;let n=t.toLowerCase(),r=new Map;for(let[t,i]of e){let e=t.toLowerCase().includes(n)?i:i.filter(e=>KT(e).toLowerCase().includes(n));e.length>0&&r.set(t,e)}return r}function rE(e){let t=new Map;for(let n of e){let e=t.get(n.layer);e||(e=[],t.set(n.layer,e)),e.push(n)}return t}function iE(e,t){if(!t.trim())return e;let n=t.toLowerCase(),r=new Map;for(let[t,i]of e){let e=t.toLowerCase().includes(n)?i:i.filter(e=>e.label.toLowerCase().includes(n));e.length>0&&r.set(t,e)}return r}function aE(e,t){let n=e;if(!n.isMesh||!Array.isArray(n.userData?.members))return;let r=new Set;XT(n).forEach((e,n)=>{t.has(e)&&r.add(n)}),Qx(n,r)}function oE(e=new Set){let t=t=>XT(t).every(t=>e.has(t)),n={hidden:e,isHidden:t,setVisible(t,n){t.visible=n,t.traverse(e=>{e.visible=n});for(let r of XT(t))n?e.delete(r):e.add(r);aE(t,e)},isEntryHidden:n=>n.memberIndex===null?t(n.object):e.has(n.key),setEntryVisible(t,r){if(t.memberIndex===null){n.setVisible(t.object,r);return}r?e.delete(t.key):e.add(t.key),aE(t.object,e),r&&!t.object.visible&&t.object.traverse(e=>{e.visible=!0})},isLayerHidden:e=>e.length>0&&e.every(e=>n.isHidden(e)),isLayerPartial(e){let t=e.filter(e=>n.isHidden(e)).length;return t>0&&t<e.length},toggleLayer(e){let t=n.isLayerHidden(e);for(let r of e)n.setVisible(r,t)},applyTo(n){for(let r of n)aE(r,e),t(r)&&(r.visible=!1,r.traverse(e=>{e.visible=!1}))},reset:()=>e.clear()};return n}function sE(e=new Set){let t=null,n=new Set,r=e=>{t=e;for(let t of n)t(e)};return{selected:e,get anchor(){return t},isSelected:t=>e.has(t),select(n,i,a){if(i.shiftKey&&t){let r=a(),o=r.indexOf(t),s=r.indexOf(n);if(o!==-1&&s!==-1){let[t,n]=o<s?[o,s]:[s,o];i.toggleKey||e.clear();for(let i=t;i<=n;i++)e.add(r[i])}return}i.toggleKey?e.has(n)?e.delete(n):e.add(n):(e.clear(),e.add(n)),r(n)},clear(){e.clear(),r(null)},onAnchorChange(e){return n.add(e),()=>n.delete(e)}}}function cE(e,t={}){let n=t.sets?.collapsed??new Set,r=oE(t.sets?.hidden),i=sE(t.sets?.selected),a={visibility:r,selection:i,collapsed:n,objects:()=>WT(e),entries:()=>$T(e,eE),entryGroups:(t=``)=>iE(rE($T(e,eE)),t),layerGroups:(t=``)=>nE(tE(WT(e)),t),isCollapsed:e=>n.has(e),toggleCollapsed(e){n.has(e)?n.delete(e):n.add(e)},toggleObject(e){if(i.isSelected(e.uuid)&&i.selected.size>1){let e=a.objects().filter(e=>i.isSelected(e.uuid)),t=e.every(e=>r.isHidden(e));for(let n of e)r.setVisible(n,t)}else r.setVisible(e,r.isHidden(e))},toggleEntry(e){if(i.isSelected(e.key)&&i.selected.size>1){let e=a.entries().filter(e=>i.isSelected(e.key)),t=e.every(e=>r.isEntryHidden(e));for(let n of e)r.setEntryVisible(n,t)}else r.setEntryVisible(e,r.isEntryHidden(e))},select(e,t,n){i.select(e,t,()=>a.flatVisibleUuids(n))},onAnchorChange:e=>i.onAnchorChange(e),flatVisibleUuids(e){let t=[];for(let[r,i]of a.entryGroups(e))if(!n.has(r))for(let e of i)t.push(e.key);return t},applyTo(){r.applyTo(a.objects()),i.clear()},reset(){r.reset(),i.clear()}};return a}var lE=m(`<button><!></button>`),uE=m(`<div class="gap-1 pl-1 pr-2 group flex h-full items-center transition-colors hover:bg-muted svelte-vc2vi3"><button class="rounded p-0.5 shrink-0 text-muted-foreground transition-colors hover:text-muted-foreground"><!></button> <button class="rounded p-1 shrink-0 transition-colors hover:bg-muted"><!></button> <span> </span> <span class="shrink-0 text-2xs text-muted-foreground/50 tabular-nums"> </span></div>`),dE=m(`<div class="ml-3 h-full border-l border-border svelte-vc2vi3"><div role="option" tabindex="-1"><button class="rounded p-1 shrink-0 transition-colors hover:bg-muted"><!></button> <span> </span> <span class="rounded px-1 py-0.5 font-medium shrink-0 bg-muted text-2xs text-muted-foreground/70"> </span></div></div>`),fE=m(`<div class="inset-x-0 absolute top-(--row-top) h-(--row-h) svelte-vc2vi3"><!></div>`),pE=m(`<div class="py-12 flex flex-col items-center justify-center text-center svelte-vc2vi3"><!> <p class="text-xs text-muted-foreground"> </p></div>`),mE=m(`<div class="flex h-full flex-col bg-card text-card-foreground svelte-vc2vi3"><div class="px-3 py-2 gap-2 flex items-center border-b border-border svelte-vc2vi3"><!> <input class="min-w-0 text-xs flex-1 bg-transparent text-foreground outline-none placeholder:text-muted-foreground/50"/> <!> <button class="shrink-0"><!></button></div> <div class="py-1 flex-1 overflow-y-auto svelte-vc2vi3"><div role="listbox" aria-multiselectable="true" class="relative h-(--list-h) svelte-vc2vi3"></div> <!></div></div>`);function hE(t,n){l(n,!0);let r=Je(),o=y(()=>r.messages),s=P(n,`sceneVersion`,3,0),c=e=>{let t=e.length>0&&e.every(e=>ie(e));for(let r of e)n.outliner.visibility.setEntryVisible(r,t);n.onVisibilityChange?.()},u=e=>{n.outliner.toggleEntry(e),n.onVisibilityChange?.()},d=y(()=>n.outliner.visibility.hidden),f=y(()=>n.outliner.selection.selected),p=y(()=>n.outliner.collapsed),m=w(``),g=w(null),_=!1;ce(()=>n.outliner.onAnchorChange(e=>i(g,e,!0)));let x=y(()=>(s(),n.outliner.objects())),C=y(()=>(s(),n.outliner.entryGroups(V(m)))),E=()=>{for(let e of n.outliner.entryGroups().keys())V(p).add(e)};ce(()=>{s(),!(_||n.outliner.entryGroups().size===0)&&(_=!0,E())});let k=()=>V(p).clear(),A=y(()=>V(C).size>0&&[...V(C).keys()].every(e=>V(p).has(e))),j=y(()=>{let e=[],t=0;for(let[n,r]of V(C))if(e.push({kind:`layer`,key:`layer:${n}`,top:t,height:30,layerName:n,entries:r}),t+=30,!V(p).has(n))for(let n of r)e.push({kind:`object`,key:`obj:${n.rowKey}`,top:t,height:24,entry:n}),t+=24;return e}),M=y(()=>V(j).length===0?0:V(j)[V(j).length-1].top+V(j)[V(j).length-1].height),L=w(0),ee=w(0),B=e=>{let t=0,n=V(j).length-1;for(;t<n;){let r=t+n>>1;V(j)[r].top+V(j)[r].height<=e?t=r+1:n=r}return t},re=y(()=>{if(V(j).length===0)return[];let e=V(ee)||600,t=Math.max(0,B(V(L))-8),n=Math.min(V(j).length,B(V(L)+e)+1+8);return V(j).slice(t,n)}),ie=e=>e.memberIndex===null?XT(e.object).every(e=>V(d).has(e)):V(d).has(e.key),ae=e=>e.filter(e=>ie(e)).length,oe=(e,t)=>{V(g),n.outliner.select(e,{shiftKey:t.shiftKey,toggleKey:t.ctrlKey||t.metaKey},V(m))};var H=mE(),se=N(H),U=N(se);St(U,{class:`h-3.5 w-3.5 shrink-0 text-muted-foreground/50`});var le=I(U,2);pe(le);var ue=I(le,2),W=t=>{var n=lE(),r=N(n);wt(r,{class:`h-3.5 w-3.5 text-muted-foreground/50 transition-colors hover:text-muted-foreground`}),O(n),z(()=>F(n,`aria-label`,V(o).clearSearch)),e(`click`,n,()=>i(m,``)),h(t,n)};D(ue,e=>{V(m)&&e(W)});var de=I(ue,2),G=N(de),K=e=>{Ln(e,{class:`h-3.5 w-3.5 text-muted-foreground/50 transition-colors hover:text-muted-foreground`})},q=e=>{Fn(e,{class:`h-3.5 w-3.5 text-muted-foreground/50 transition-colors hover:text-muted-foreground`})};D(G,e=>{V(A)?e(K):e(q,-1)}),O(de),O(se);var fe=I(se,2),me=N(fe);let he;S(me,21,()=>V(re),e=>e.key,(t,r)=>{var i=fE();let s;var l=N(i),d=t=>{let i=y(()=>V(r).entries),a=y(()=>ae(V(i))),s=y(()=>V(i).length>0&&V(a)===V(i).length),l=y(()=>V(a)>0&&V(a)<V(i).length),u=y(()=>V(p).has(V(r).layerName));var d=uE(),f=N(d),m=N(f);{let e=y(()=>V(u)?``:`rotate-90`);rt(m,{get class(){return`h-3.5 w-3.5 transition-transform duration-150 ${V(e)??``}`}})}O(f);var g=I(f,2),_=N(g),b=e=>{Un(e,{class:`h-3.5 w-3.5 text-muted-foreground/40`})},x=e=>{Gn(e,{class:`h-3.5 w-3.5 text-muted-foreground/60`})},S=e=>{Gn(e,{class:`h-3.5 w-3.5 text-muted-foreground`})};D(_,e=>{V(s)?e(b):V(l)?e(x,1):e(S,-1)}),O(g);var C=I(g,2),w=J(C,!0),E=I(C,2),k=J(E,!0);O(d),z(()=>{F(f,`aria-label`,V(u)?V(o).expandLayer:V(o).collapseLayer),F(g,`title`,V(s)?V(o).showLayer:V(o).hideLayer),F(g,`aria-label`,V(s)?V(o).showLayer:V(o).hideLayer),v(C,1,`min-w-0 text-xs font-medium flex-1 truncate ${V(s)?`text-muted-foreground/40 line-through`:`text-foreground`}`),T(w,V(r).layerName),T(k,V(i).length)}),e(`click`,f,()=>n.outliner.toggleCollapsed(V(r).layerName)),e(`click`,g,()=>c(V(i))),h(t,d)},m=t=>{let n=y(()=>V(r).entry),i=y(()=>ie(V(n))),a=y(()=>V(f).has(V(n).key));var s=dE(),c=N(s),l=N(c),d=N(l),p=e=>{Un(e,{class:`h-3 w-3 text-muted-foreground/60`})},m=e=>{Gn(e,{class:`h-3 w-3 text-muted-foreground`})};D(d,e=>{V(i)?e(p):e(m,-1)}),O(l);var g=I(l,2),_=J(g,!0),b=I(g,2),x=J(b,!0);O(c),O(s),z(e=>{F(c,`aria-selected`,V(a)),v(c,1,`gap-1.5 pl-5 pr-2 flex h-full cursor-pointer items-center transition-colors
5595
5595
  ${V(a)?`bg-primary/10 hover:bg-primary/15`:`hover:bg-muted`}
5596
- ${V(i)?`opacity-40`:``}`,`svelte-vc2vi3`),F(l,`title`,V(i)?V(o).showObject:V(o).hideObject),F(l,`aria-label`,V(i)?V(o).showObject:V(o).hideObject),v(g,1,`min-w-0 text-xs flex-1 truncate ${V(i)?`text-muted-foreground line-through`:`text-foreground/80`}`),T(_,V(n).label),T(x,e)},[()=>qT(V(n).object)]),e(`mousedown`,c,e=>{e.stopPropagation(),e.shiftKey&&e.preventDefault()}),e(`click`,c,e=>oe(V(n).key,e)),e(`keydown`,c,e=>e.key===`Enter`&&oe(V(n).key,e)),e(`click`,l,e=>{e.stopPropagation(),u(V(n))}),h(t,s)};D(l,e=>{V(r).kind===`layer`?e(d):e(m,-1)}),O(i),z(()=>s=a(i,``,s,{"--row-top":`${V(r).top??``}px`,"--row-h":`${V(r).height??``}px`})),h(t,i)}),O(he);var _e=I(he,2),ve=e=>{var t=pE(),n=N(t);Un(n,{class:`mb-2 h-5 w-5 text-muted-foreground/30`});var r=I(n,2),i=q(r,!0);O(t),z(()=>T(i,V(o).noObjects)),h(e,t)},ye=e=>{var t=pE(),n=N(t);St(n,{class:`mb-2 h-5 w-5 text-muted-foreground/30`});var r=I(n,2),i=q(r,!0);O(t),z(e=>T(i,e),[()=>V(o).noResultsFor.replace(`{query}`,V(m))]),h(e,t)};D(_e,e=>{V(x).length===0?e(ve):V(C).size===0&&e(ye,1)}),O(pe),O(H),z(()=>{F(le,`placeholder`,V(o).searchObjects),F(de,`title`,V(A)?V(o).expandAll:V(o).collapseAll),F(de,`aria-label`,V(A)?V(o).expandAll:V(o).collapseAll),ge=a(he,``,ge,{"--list-h":`${V(M)??``}px`})}),e(`mousedown`,H,()=>n.outliner.selection.clear()),ne(le,()=>V(m),e=>i(m,e)),e(`click`,de,()=>V(A)?k():E()),R(`scroll`,pe,e=>i(L,e.currentTarget.scrollTop,!0)),te(pe,`clientHeight`,e=>i(ee,e)),h(t,H),b()}x([`mousedown`,`click`,`keydown`]);var gE=m(`<div class="px-4 pt-3 pb-2 border-b"><!></div>`),_E=m(`<p class="px-4 py-3 text-xs text-muted-foreground"> </p>`),vE=m(`<div class="gap-2 flex"><span class="shrink-0 text-muted-foreground"> </span> <span> </span></div>`),yE=m(`<div class="space-y-0.5"></div>`),bE=m(`<div> </div>`),xE=m(`<div class="space-y-1 text-left"></div>`),SE=m(`<div class="space-y-0.5 text-left"></div>`),CE=m(`<span class="font-mono"> </span>`),wE=m(`<span> </span>`),TE=m(`<span class="break-all"> </span>`),EE=m(`<tr class="border-b border-border/60 transition-colors hover:bg-muted/40"><th scope="row" class="px-4 py-2 font-normal text-left align-top whitespace-nowrap text-muted-foreground"> </th><td class="px-4 py-2 text-right align-top text-foreground"><!></td></tr>`),DE=m(`<table class="text-xs w-full border-collapse"><tbody></tbody></table>`),OE=m(`<!> <div class="max-h-80 overflow-y-auto"><!></div>`,1);function kE(e,t){l(t,!0);let n=Je(),i=y(()=>n.messages),a=new Set([`name`,`layer`,`id`]),o=P(t,`open`,15),s=P(t,`isFullscreen`,3,!1);ce(()=>{document.body.toggleAttribute(`data-viewer-fullscreen`,s())});let u=()=>{if(!t.metadata)return{};let e=Object.entries(t.metadata).filter(([e])=>!a.has(e)),n={};for(let[t,r]of e)t===`metadata`&&typeof r==`object`&&r&&!Array.isArray(r)?Object.assign(n,r):n[t]=r;return n};var d=U(),f=K(d);c(f,()=>hn,(e,n)=>{n(e,{get onOpenChange(){return t.onOpenChange},get open(){return o()},set open(e){o(e)},children:(e,n)=>{var a=U(),o=K(a);c(o,()=>mn,(e,n)=>{n(e,{variant:`flush`,class:`min-w-60 max-w-xs w-auto`,children:(e,n)=>{var a=OE(),o=K(a),s=e=>{var n=gE(),i=N(n);c(i,()=>dn,(e,n)=>{n(e,{size:`sm`,children:(e,n)=>{r();var i=M();z(()=>T(i,t.meshName)),h(e,i)},$$slots:{default:!0}})}),O(n),h(e,n)},l=e=>{var t=U(),n=K(t);c(n,()=>dn,(e,t)=>{t(e,{class:`sr-only`,children:(e,t)=>{r();var n=M();z(()=>T(n,V(i).objectFallbackName)),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(o,e=>{t.meshName?e(s):e(l,-1)});var d=I(o,2),f=N(d),p=e=>{var t=_E(),n=q(t,!0);z(()=>T(n,V(i).noMetadata)),h(e,t)},m=y(()=>!t.metadata||Object.keys(u()).length===0),g=e=>{var t=DE(),n=N(t);S(n,21,()=>Object.entries(u()),([e,t])=>e,(e,t)=>{var n=y(()=>k(V(t),2));let r=()=>V(n)[0],i=()=>V(n)[1];var a=EE(),o=N(a),s=q(o,!0),c=I(o),l=N(c),u=e=>{var t=U(),n=K(t),r=e=>{var t=xE();S(t,21,i,he,(e,t)=>{var n=U(),r=K(n),i=e=>{var n=yE();S(n,21,()=>Object.entries(V(t)),([e,t])=>e,(e,t)=>{var n=y(()=>k(V(t),2));let r=()=>V(n)[0],i=()=>V(n)[1];var a=vE(),o=N(a),s=q(o),c=I(o,2),l=q(c,!0);O(a),z(()=>{T(s,`${r()??``}:`),T(l,i())}),h(e,a)}),O(n),h(e,n)},a=e=>{var n=bE(),r=q(n,!0);z(()=>T(r,V(t))),h(e,n)};D(r,e=>{typeof V(t)==`object`?e(i):e(a,-1)}),h(e,n)}),O(t),h(e,t)},a=y(()=>Array.isArray(i())),o=e=>{var t=SE();S(t,21,()=>Object.entries(i()),([e,t])=>e,(e,t)=>{var n=y(()=>k(V(t),2));let r=()=>V(n)[0],i=()=>V(n)[1];var a=vE(),o=N(a),s=q(o),c=I(o,2),l=q(c,!0);O(a),z(()=>{T(s,`${r()??``}:`),T(l,i())}),h(e,a)}),O(t),h(e,t)};D(n,e=>{V(a)?e(r):e(o,-1)}),h(e,t)},d=e=>{var t=CE(),n=q(t,!0);z(()=>T(n,i())),h(e,t)},f=e=>{var t=wE(),n=q(t,!0);z(()=>{v(t,1,re(i()?`text-success`:`text-muted-foreground`)),T(n,i()?`true`:`false`)}),h(e,t)},p=e=>{var t=TE(),n=q(t,!0);z(()=>T(n,i())),h(e,t)};D(l,e=>{typeof i()==`object`&&i()!==null?e(u):typeof i()==`number`?e(d,1):typeof i()==`boolean`?e(f,2):e(p,-1)}),O(c),O(a),z(()=>T(s,r())),h(e,a)}),O(n),O(t),h(e,t)};D(f,e=>{V(m)?e(p):e(g,-1)}),O(d),h(e,a)},$$slots:{default:!0}})}),h(e,a)},$$slots:{default:!0}})}),h(e,d),b()}var AE=m(`<div class="inset-0 animate-in fade-in backdrop-blur-xs absolute z-10 duration-200"></div>`),jE=m(`<div><img alt="" class="h-10 max-w-40 drop-shadow-sm sm:h-14 sm:max-w-56 w-auto object-contain opacity-80"/></div>`),ME=m(`<!> `,1),NE=m(`<!> <!>`,1),PE=m(`<!> <!> <!>`,1),FE=m(`<!> <!> <!> <!> <!> <!> <!> <!> <!> <!>`,1),IE=m(`<div><!></div>`),LE=m(`<div class="relative h-full w-full touch-none"><canvas class="block h-full w-full" data-testid="viewer-canvas"></canvas> <div></div> <!> <!> <!></div>`),RE=m(`<div><!></div> <!>`,1);function zE(e,t){l(t,!0);let n={showScreenshotButton:!0,showFullscreenButton:!0,showSceneManager:!0,showToolsMenu:!0,showGridToggle:!0,showDisplayMenu:!0,enableMeshClick:!0,backgroundColor:`#E6E6E6`,showEdges:!1},a=P(t,`isFullscreen`,15,!1),o=P(t,`isSolving`,3,!1),u=P(t,`isBlurred`,3,!1),d=P(t,`drawerOpen`,3,!1),f=P(t,`viewerConfig`,19,()=>({})),p=y(()=>({...n,...f()})),m=Ke(()=>t.lang),g=y(()=>m.messages),_,x=w(null),C=null,E=null,k=null,A=null,j=null,ee=null,R=null,te=null,ne=null,B=null,re=null,ie=null,ae=null,oe=!1,H=w(0),se=w(!1),ue=w(!1),fe=new xe,G=new xe,me=new xe,he=w(null),ge=w(`perspective`),_e=w(!1),ve=w(!1),ye=w(`technical`),be=w(pe(de(()=>f().showEdges)??n.showEdges)),Se=w(null),Ce=w(null),we=y(()=>({technical:V(g).lookTechnical,studio:V(g).lookStudio,showcase:V(g).lookShowcase,arctic:V(g).lookArctic,xray:V(g).lookXray,lineart:V(g).lookLineart,wireframe:V(g).lookWireframe})),Te=y(()=>PC.map(e=>({look:e,label:V(we)[e]??e.charAt(0).toUpperCase()+e.slice(1)}))),J=[{preset:`top`,label:()=>V(g).viewTop},{preset:`front`,label:()=>V(g).viewFront},{preset:`right`,label:()=>V(g).viewRight},{preset:`back`,label:()=>V(g).viewBack},{preset:`left`,label:()=>V(g).viewLeft},{preset:`bottom`,label:()=>V(g).viewBottom},{preset:`iso`,label:()=>V(g).viewIso}];ce(()=>{if(d())i(se,!0);else{let e=setTimeout(()=>{i(se,!1)},iu.TIMEOUTS.DRAWER_ANIMATION_MS);return()=>clearTimeout(e)}}),le(()=>{if(!_)return;let e={look:V(ye),environment:{backgroundColor:V(p).backgroundColor},grid:{enabled:V(p).showToolsMenu&&V(p).showGridToggle},measure:{enabled:V(p).showToolsMenu},events:{onMeshMetadataClicked:V(p).enableMeshClick?e=>{Fe(e)&&(i(Se,e,!0),i(Ce,String(e?.name??``)||V(g).objectFallbackName,!0))}:void 0}},n=VT(_,e);i(x,n.scene,!0),i(he,cE(n.scene,{sets:{hidden:fe,selected:G,collapsed:me}}),!0),C=n.camera,E=n.controls,k=n.cameraController,A=n.measureTool,j=n.grid,j?.setVisible(V(ve)),ee=n.applyEdges,R=n.clearEdges,te=n.invalidate,ne=n.captureImage,B=n.setLook,re=n.updateGridScale,ie=n.updateShadowBounds,ae=n.fitToView,i(ge,n.cameraController.getProjection(),!0);let r=n.renderer,a=de(()=>t.onViewerReady?.(n));return()=>{a?.(),n.dispose(),r.forceContextLoss()}});function Ee(){k&&i(ge,k.toggleProjection(),!0)}function De(e){k?.setView(e)}function Oe(){A&&(i(_e,!V(_e)),A.setEnabled(V(_e)))}function ke(){j&&(i(ve,!V(ve)),j.setVisible(V(ve)),te?.())}let Ae=null;function je(e){if(!B||e===V(ye))return;let t=Ox[V(ye)].requiresEdges===!0;i(ye,e,!0),B(e),Ox[e].requiresEdges?(t||(Ae=V(be)),V(be)?!t&&V(x)&&R?.(V(x)):i(be,!0),Ne()):t&&Ae!==null?(i(be,Ae,!0),V(be)&&V(x)&&R?.(V(x)),Ne(),Ae=null):V(be)&&V(x)&&(R?.(V(x)),Ne())}function Me(){return Ox[V(ye)].requiresEdges?{distanceFade:!1,maxOverlays:2e4,color:1711393}:void 0}function Ne(){V(x)&&(V(be)?ee?.(V(x),Me()):R?.(V(x)))}function Y(){i(be,!V(be)),Ox[V(ye)].requiresEdges&&(Ae=null),Ne()}ce(()=>{V(x)&&C&&E&&(QC(V(x),t.meshes,C,E,oe),de(()=>{B?.(V(ye)),V(be)&&ee?.(V(x),Me()),re?.(),ie?.(),V(he)?.applyTo(),s(H),te?.()}),!oe&&t.meshes.length>0&&(oe=!0))});function Pe(){a(!a())}function Fe(e){if(!e)return!1;if(e.metadata&&typeof e.metadata==`object`){let t=e.metadata;return Object.keys(t).length>0}let t=new Set([`name`,`layer`,`id`,`vertexCount`,`faceCount`,`vertexOffset`,`faceOffset`]);return Object.entries(e).filter(([e])=>!t.has(e)).length>0}async function Ie(){let e=await ne?.();if(!e)return;let t=URL.createObjectURL(e),n=document.createElement(`a`),r=new Date().toISOString().slice(0,19).replace(/:/g,`-`);n.href=t,n.download=`viewer-${r}.png`,document.body.appendChild(n),n.click(),document.body.removeChild(n),URL.revokeObjectURL(t)}var Le=RE(),Re=K(Le),ze=N(Re);c(ze,()=>Ql,(e,n)=>{n(e,{direction:`horizontal`,class:`h-full w-full`,children:(e,n)=>{var s=NE(),l=K(s);{let e=y(()=>V(ue)?85:100);c(l,()=>Wl,(n,s)=>{s(n,{id:`viewport`,order:1,get defaultSize(){return V(e)},minSize:40,children:(e,n)=>{var s=LE(),l=N(s);L(l,e=>_=e,()=>_);var d=I(l,2),f=I(d,2),m=e=>{var t=AE();h(e,t)};D(f,e=>{o()&&e(m)});var y=I(f,2),b=e=>{var n=jE(),r=q(n);z(()=>{v(n,1,`right-4 ${a()?`bottom-4`:`bottom-16 sm:bottom-4`} pointer-events-none absolute z-20 ${V(se)?`opacity-0`:``}`),F(r,`src`,t.logoUrl)}),h(e,n)};D(y,e=>{t.logoUrl&&e(b)});var x=I(y,2),C=e=>{var t=IE(),n=N(t);c(n,()=>ks,(e,t)=>{t(e,{children:(e,t)=>{var n=NE(),o=K(n);{let e=(e,t)=>{We(e,W(()=>(t?.()).props,{variant:`outline`,size:`icon-lg`,get title(){return V(g).toolsMenu},get"aria-label"(){return V(g).toolsMenu},children:(e,t)=>{xr(e,{})},$$slots:{default:!0}}))};c(o,()=>Ds,(t,n)=>{n(t,{child:e,$$slots:{child:!0}})})}var s=I(o,2);c(s,()=>ls,(e,t)=>{t(e,{sideOffset:6,class:`min-w-44 z-10001 w-auto`,children:(e,t)=>{var n=FE(),o=K(n);c(o,()=>ds,(e,t)=>{t(e,{onSelect:Ee,children:(e,t)=>{var n=U(),r=K(n),i=e=>{var t=ME(),n=K(t);Tr(n,{});var r=I(n);z(()=>T(r,` ${V(g).switchToOrthographic??``}`)),h(e,t)},a=e=>{var t=ME(),n=K(t);jn(n,{});var r=I(n);z(()=>T(r,` ${V(g).switchToPerspective??``}`)),h(e,t)};D(r,e=>{V(ge)===`perspective`?e(i):e(a,-1)}),h(e,n)},$$slots:{default:!0}})});var s=I(o,2);c(s,()=>ds,(e,t)=>{t(e,{onSelect:()=>ae?.(),children:(e,t)=>{var n=ME(),r=K(n);Zn(r,{});var i=I(r);z(()=>T(i,` ${V(g).fitToView??``}`)),h(e,n)},$$slots:{default:!0}})});var l=I(s,2);c(l,()=>Ts,(e,t)=>{t(e,{children:(e,t)=>{var n=NE(),i=K(n);c(i,()=>Cs,(e,t)=>{t(e,{children:(e,t)=>{var n=ME(),r=K(n);jn(r,{});var i=I(r);z(()=>T(i,` ${V(g).views??``}`)),h(e,n)},$$slots:{default:!0}})});var a=I(i,2);c(a,()=>bs,(e,t)=>{t(e,{class:`z-10001`,children:(e,t)=>{var n=U(),i=K(n);S(i,17,()=>J,({preset:e,label:t})=>e,(e,t)=>{let n=()=>V(t).preset,i=()=>V(t).label;var a=U(),o=K(a);c(o,()=>ds,(e,t)=>{t(e,{onSelect:()=>De(n()),children:(e,t)=>{r();var n=M();z(e=>T(n,e),[()=>i()()]),h(e,n)},$$slots:{default:!0}})}),h(e,a)}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})});var u=I(l,2),d=e=>{var t=U(),n=K(t);c(n,()=>Ts,(e,t)=>{t(e,{children:(e,t)=>{var n=NE(),i=K(n);c(i,()=>Cs,(e,t)=>{t(e,{children:(e,t)=>{var n=ME(),r=K(n);hr(r,{});var i=I(r);z(()=>T(i,` ${V(g).display??``}`)),h(e,n)},$$slots:{default:!0}})});var a=I(i,2);c(a,()=>bs,(e,t)=>{t(e,{class:`min-w-40 z-10001`,children:(e,t)=>{var n=PE(),i=K(n);c(i,()=>ps,(e,t)=>{t(e,{get value(){return V(ye)},onValueChange:e=>je(e),children:(e,t)=>{var n=U(),i=K(n);S(i,17,()=>V(Te),({look:e,label:t})=>e,(e,t)=>{let n=()=>V(t).look,i=()=>V(t).label;var a=U(),o=K(a);c(o,()=>gs,(e,t)=>{t(e,{get value(){return n()},closeOnSelect:!1,children:(e,t)=>{r();var n=M();z(()=>T(n,i())),h(e,n)},$$slots:{default:!0}})}),h(e,a)}),h(e,n)},$$slots:{default:!0}})});var a=I(i,2);c(a,()=>vs,(e,t)=>{t(e,{})});var o=I(a,2);c(o,()=>as,(e,t)=>{t(e,{get checked(){return V(be)},onCheckedChange:Y,children:(e,t)=>{var n=ME(),r=K(n);Cr(r,{});var i=I(r);z(()=>T(i,` ${V(g).edges??``}`)),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(u,e=>{V(p).showDisplayMenu&&e(d)});var f=I(u,2);c(f,()=>as,(e,t)=>{t(e,{get checked(){return V(_e)},onCheckedChange:Oe,children:(e,t)=>{var n=ME(),r=K(n);_r(r,{});var i=I(r);z(()=>T(i,` ${V(g).measure??``}`)),h(e,n)},$$slots:{default:!0}})});var m=I(f,2),_=e=>{var t=U(),n=K(t);c(n,()=>as,(e,t)=>{t(e,{get checked(){return V(ve)},onCheckedChange:ke,children:(e,t)=>{var n=ME(),r=K(n);$n(r,{});var i=I(r);z(()=>T(i,` ${V(g).grid??``}`)),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(m,e=>{V(p).showGridToggle&&e(_)});var v=I(m,2),y=e=>{var t=U(),n=K(t);c(n,()=>vs,(e,t)=>{t(e,{})}),h(e,t)};D(v,e=>{(V(p).showSceneManager||V(p).showScreenshotButton||V(p).showFullscreenButton)&&e(y)});var b=I(v,2),x=e=>{var t=U(),n=K(t);c(n,()=>as,(e,t)=>{t(e,{get checked(){return V(ue)},onCheckedChange:()=>i(ue,!V(ue)),children:(e,t)=>{var n=ME(),r=K(n);rr(r,{});var i=I(r);z(()=>T(i,` ${V(g).sceneManager??``}`)),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(b,e=>{V(p).showSceneManager&&e(x)});var C=I(b,2),w=e=>{var t=U(),n=K(t);c(n,()=>ds,(e,t)=>{t(e,{onSelect:Ie,children:(e,t)=>{var n=ME(),r=K(n);Nn(r,{});var i=I(r);z(()=>T(i,` ${V(g).screenshot??``}`)),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(C,e=>{V(p).showScreenshotButton&&e(w)});var E=I(C,2),O=e=>{var t=U(),n=K(t);c(n,()=>ds,(e,t)=>{t(e,{onSelect:Pe,children:(e,t)=>{var n=U(),r=K(n),i=e=>{var t=ME(),n=K(t);pr(n,{});var r=I(n);z(()=>T(r,` ${V(g).exitFullscreen??``}`)),h(e,t)},o=e=>{var t=ME(),n=K(t);dr(n,{});var r=I(n);z(()=>T(r,` ${V(g).fullscreen??``}`)),h(e,t)};D(r,e=>{a()?e(i):e(o,-1)}),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(E,e=>{V(p).showFullscreenButton&&e(O)}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})}),O(t),z(()=>v(t,1,`left-4 ${a()?`bottom-4`:`bottom-16 sm:bottom-4`} shadow-lg absolute z-50 flex items-center rounded-lg ${V(se)?`pointer-events-none opacity-0`:``}`)),h(e,t)};D(x,e=>{V(p).showToolsMenu&&e(C)}),O(s),z(()=>{F(l,`data-mesh-count`,t.meshes.length),v(d,1,`inset-0 blur-overlay absolute z-20 ${u()?`blur-overlay-active`:`blur-overlay-inactive`}`,`svelte-13y0czs`)}),h(e,s)},$$slots:{default:!0}})})}var d=I(l,2),f=e=>{var t=NE(),n=K(t);c(n,()=>Xl,(e,t)=>{t(e,{withHandle:!0})});var r=I(n,2);c(r,()=>Wl,(e,t)=>{t(e,{id:`scene-manager`,order:2,defaultSize:15,minSize:8,maxSize:30,children:(e,t)=>{hE(e,{get outliner(){return V(he)},get sceneVersion(){return V(H)},onVisibilityChange:()=>te?.()})},$$slots:{default:!0}})}),h(e,t)};D(d,e=>{V(ue)&&V(x)&&V(he)&&e(f)}),h(e,s)},$$slots:{default:!0}})}),O(Re);var Be=I(Re,2);{let e=y(()=>V(Se)!==null);kE(Be,{get open(){return V(e)},get metadata(){return V(Se)},get meshName(){return V(Ce)},get isFullscreen(){return a()},onOpenChange:e=>{e||setTimeout(()=>{i(Se,null),i(Ce,null)},200)}})}z(()=>v(Re,1,`min-h-64 sm:min-h-96 lg:min-h-125 relative h-full flex-1 border ${a()?`fullscreen-viewer`:`overflow-hidden rounded-lg`}`,`svelte-13y0czs`)),h(e,Le),b()}var BE=m(`<div class="bottom-6 left-6 gap-3 px-5 py-3 shadow-xl animate-in fade-in slide-in-from-left fixed z-50 flex items-center rounded-lg border border-primary/20 bg-primary text-primary-foreground duration-200"><div class="h-5 w-5 relative flex shrink-0 items-center justify-center" aria-hidden="true"><div class="animate-ping absolute h-full w-full rounded-full bg-primary-foreground opacity-30"></div> <div class="h-3 w-3 animate-spin rounded-full border-2 border-primary-foreground border-t-transparent"></div></div> <div class="leading-tight flex flex-col"><span class="text-sm font-semibold"> </span> <span class="text-xs opacity-70"> </span></div></div>`),VE=m(`<div role="status" aria-live="polite" aria-atomic="true"><!></div>`);function HE(e,t){l(t,!0);let n=Je(),r=y(()=>n.messages);var i=VE(),a=N(i),o=e=>{var t=BE(),n=I(N(t),2),i=N(n),a=q(i,!0),o=I(i,2),s=q(o,!0);O(n),O(t),z(()=>{T(a,V(r).solving),T(s,V(r).solvingSubtitle)}),h(e,t)};D(a,e=>{t.show&&e(o)}),O(i),h(e,i),b()}var UE=/^[a-z0-9]+(-[a-z0-9]+)*$/,WE=(e,t,n,r=``)=>{let i=e.split(`:`);if(e.slice(0,1)===`@`){if(i.length<2||i.length>3)return null;r=i.shift().slice(1)}if(i.length>3||!i.length)return null;if(i.length>1){let e=i.pop(),n=i.pop(),a={provider:i.length>0?i[0]:r,prefix:n,name:e};return t&&!GE(a)?null:a}let a=i[0],o=a.split(`-`);if(o.length>1){let e={provider:r,prefix:o.shift(),name:o.join(`-`)};return t&&!GE(e)?null:e}if(n&&r===``){let e={provider:r,prefix:``,name:a};return t&&!GE(e,n)?null:e}return null},GE=(e,t)=>e?!!((t&&e.prefix===``||e.prefix)&&e.name):!1;function KE(e,t){let n=e.icons,r=e.aliases||Object.create(null),i=Object.create(null);function a(e){if(n[e])return i[e]=[];if(!(e in i)){i[e]=null;let t=r[e]&&r[e].parent,n=t&&a(t);n&&(i[e]=[t].concat(n))}return i[e]}return Object.keys(n).concat(Object.keys(r)).forEach(a),i}var qE=Object.freeze({left:0,top:0,width:16,height:16}),JE=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),YE=Object.freeze({...qE,...JE}),XE=Object.freeze({...YE,body:``,hidden:!1});function ZE(e,t){let n={};!e.hFlip!=!t.hFlip&&(n.hFlip=!0),!e.vFlip!=!t.vFlip&&(n.vFlip=!0);let r=((e.rotate||0)+(t.rotate||0))%4;return r&&(n.rotate=r),n}function QE(e,t){let n=ZE(e,t);for(let r in XE)r in JE?r in e&&!(r in n)&&(n[r]=JE[r]):r in t?n[r]=t[r]:r in e&&(n[r]=e[r]);return n}function $E(e,t,n){let r=e.icons,i=e.aliases||Object.create(null),a={};function o(e){a=QE(r[e]||i[e],a)}return o(t),n.forEach(o),QE(e,a)}function eD(e,t){let n=[];if(typeof e!=`object`||typeof e.icons!=`object`)return n;e.not_found instanceof Array&&e.not_found.forEach(e=>{t(e,null),n.push(e)});let r=KE(e);for(let i in r){let a=r[i];a&&(t(i,$E(e,i,a)),n.push(i))}return n}var tD={provider:``,aliases:{},not_found:{},...qE};function nD(e,t){for(let n in t)if(n in e&&typeof e[n]!=typeof t[n])return!1;return!0}function rD(e){if(typeof e!=`object`||!e)return null;let t=e;if(typeof t.prefix!=`string`||!e.icons||typeof e.icons!=`object`||!nD(e,tD))return null;let n=t.icons;for(let e in n){let t=n[e];if(!e||typeof t.body!=`string`||!nD(t,XE))return null}let r=t.aliases||Object.create(null);for(let e in r){let t=r[e],i=t.parent;if(!e||typeof i!=`string`||!n[i]&&!r[i]||!nD(t,XE))return null}return t}var iD=Object.create(null);function aD(e,t){return{provider:e,prefix:t,icons:Object.create(null),missing:new Set}}function oD(e,t){let n=iD[e]||(iD[e]=Object.create(null));return n[t]||(n[t]=aD(e,t))}function sD(e,t){return rD(t)?eD(t,(t,n)=>{n?e.icons[t]=n:e.missing.add(t)}):[]}function cD(e,t,n){try{if(typeof n.body==`string`)return e.icons[t]={...n},!0}catch{}return!1}var lD=!1;function uD(e){return typeof e==`boolean`&&(lD=e),lD}function dD(e){let t=typeof e==`string`?WE(e,!0,lD):e;if(t){let e=oD(t.provider,t.prefix),n=t.name;return e.icons[n]||(e.missing.has(n)?null:void 0)}}function fD(e,t){let n=WE(e,!0,lD);if(!n)return!1;let r=oD(n.provider,n.prefix);return t?cD(r,n.name,t):(r.missing.add(n.name),!0)}function pD(e,t){if(typeof e!=`object`)return!1;if(typeof t!=`string`&&(t=e.provider||``),lD&&!t&&!e.prefix){let t=!1;return rD(e)&&(e.prefix=``,eD(e,(e,n)=>{fD(e,n)&&(t=!0)})),t}let n=e.prefix;return GE({prefix:n,name:`a`})?!!sD(oD(t,n),e):!1}var mD=Object.freeze({width:null,height:null}),hD=Object.freeze({...mD,...JE}),gD=/(-?[0-9.]*[0-9]+[0-9.]*)/g,_D=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function vD(e,t,n){if(t===1)return e;if(n||=100,typeof e==`number`)return Math.ceil(e*t*n)/n;if(typeof e!=`string`)return e;let r=e.split(gD);if(r===null||!r.length)return e;let i=[],a=r.shift(),o=_D.test(a);for(;;){if(o){let e=parseFloat(a);isNaN(e)?i.push(a):i.push(Math.ceil(e*t*n)/n)}else i.push(a);if(a=r.shift(),a===void 0)return i.join(``);o=!o}}function yD(e,t=`defs`){let n=``,r=e.indexOf(`<`+t);for(;r>=0;){let i=e.indexOf(`>`,r),a=e.indexOf(`</`+t);if(i===-1||a===-1)break;let o=e.indexOf(`>`,a);if(o===-1)break;n+=e.slice(i+1,a).trim(),e=e.slice(0,r).trim()+e.slice(o+1)}return{defs:n,content:e}}function bD(e,t){return e?`<defs>`+e+`</defs>`+t:t}function xD(e,t,n){let r=yD(e);return bD(r.defs,t+r.content+n)}var SD=e=>e===`unset`||e===`undefined`||e===`none`;function CD(e,t){let n={...YE,...e},r={...hD,...t},i={left:n.left,top:n.top,width:n.width,height:n.height},a=n.body;[n,r].forEach(e=>{let t=[],n=e.hFlip,r=e.vFlip,o=e.rotate;n?r?o+=2:(t.push(`translate(`+(i.width+i.left).toString()+` `+(0-i.top).toString()+`)`),t.push(`scale(-1 1)`),i.top=i.left=0):r&&(t.push(`translate(`+(0-i.left).toString()+` `+(i.height+i.top).toString()+`)`),t.push(`scale(1 -1)`),i.top=i.left=0);let s;switch(o<0&&(o-=Math.floor(o/4)*4),o%=4,o){case 1:s=i.height/2+i.top,t.unshift(`rotate(90 `+s.toString()+` `+s.toString()+`)`);break;case 2:t.unshift(`rotate(180 `+(i.width/2+i.left).toString()+` `+(i.height/2+i.top).toString()+`)`);break;case 3:s=i.width/2+i.left,t.unshift(`rotate(-90 `+s.toString()+` `+s.toString()+`)`)}o%2==1&&(i.left!==i.top&&(s=i.left,i.left=i.top,i.top=s),i.width!==i.height&&(s=i.width,i.width=i.height,i.height=s)),t.length&&(a=xD(a,`<g transform="`+t.join(` `)+`">`,`</g>`))});let o=r.width,s=r.height,c=i.width,l=i.height,u,d;o===null?(d=s===null?`1em`:s===`auto`?l:s,u=vD(d,c/l)):(u=o===`auto`?c:o,d=s===null?vD(u,l/c):s===`auto`?l:s);let f={},p=(e,t)=>{SD(t)||(f[e]=t.toString())};p(`width`,u),p(`height`,d);let m=[i.left,i.top,c,l];return f.viewBox=m.join(` `),{attributes:f,viewBox:m,body:a}}var wD=/\sid="(\S+)"/g,TD=new Map;function ED(e){e=e.replace(/[0-9]+$/,``)||`a`;let t=TD.get(e)||0;return TD.set(e,t+1),t?`${e}${t}`:e}function DD(e){let t=[],n;for(;n=wD.exec(e);)t.push(n[1]);if(!t.length)return e;let r=`suffix`+(Math.random()*16777216|Date.now()).toString(16);return t.forEach(t=>{let n=ED(t),i=t.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`);e=e.replace(RegExp(`([#;"])(`+i+`)([")]|\\.[a-z])`,`g`),`$1`+n+r+`$3`)}),e=e.replace(new RegExp(r,`g`),``),e}var OD=Object.create(null);function kD(e,t){OD[e]=t}function AD(e){return OD[e]||OD[``]}function jD(e){let t;if(typeof e.resources==`string`)t=[e.resources];else if(t=e.resources,!(t instanceof Array)||!t.length)return null;return{resources:t,path:e.path||`/`,maxURL:e.maxURL||500,rotate:e.rotate||750,timeout:e.timeout||5e3,random:e.random===!0,index:e.index||0,dataAfterTimeout:e.dataAfterTimeout!==!1}}for(var MD=Object.create(null),ND=[`https://api.simplesvg.com`,`https://api.unisvg.com`],PD=[];ND.length>0;)ND.length===1||Math.random()>.5?PD.push(ND.shift()):PD.push(ND.pop());MD[``]=jD({resources:[`https://api.iconify.design`].concat(PD)});function FD(e,t){let n=jD(t);return n!==null&&(MD[e]=n,!0)}function ID(e){return MD[e]}var LD=(()=>{let e;try{if(e=fetch,typeof e==`function`)return e}catch{}})();function RD(e,t){let n=ID(e);if(!n)return 0;let r;if(!n.maxURL)r=0;else{let e=0;n.resources.forEach(t=>{e=Math.max(e,t.length)});let i=t+`.json?icons=`;r=n.maxURL-e-n.path.length-i.length}return r}function zD(e){return e===404}var BD=(e,t,n)=>{let r=[],i=RD(e,t),a=`icons`,o={type:a,provider:e,prefix:t,icons:[]},s=0;return n.forEach((n,c)=>{s+=n.length+1,s>=i&&c>0&&(r.push(o),o={type:a,provider:e,prefix:t,icons:[]},s=n.length),o.icons.push(n)}),r.push(o),r};function VD(e){if(typeof e==`string`){let t=ID(e);if(t)return t.path}return`/`}var HD={prepare:BD,send:(e,t,n)=>{if(!LD){n(`abort`,424);return}let r=VD(t.provider);switch(t.type){case`icons`:{let e=t.prefix,n=t.icons.join(`,`),i=new URLSearchParams({icons:n});r+=e+`.json?`+i.toString();break}case`custom`:{let e=t.uri;r+=e.slice(0,1)===`/`?e.slice(1):e;break}default:n(`abort`,400);return}let i=503;LD(e+r).then(e=>{let t=e.status;if(t!==200){setTimeout(()=>{n(zD(t)?`abort`:`next`,t)});return}return i=501,e.json()}).then(e=>{if(typeof e!=`object`||!e){setTimeout(()=>{e===404?n(`abort`,e):n(`next`,i)});return}setTimeout(()=>{n(`success`,e)})}).catch(()=>{n(`next`,i)})}};function UD(e,t){e.forEach(e=>{let n=e.loaderCallbacks;n&&(e.loaderCallbacks=n.filter(e=>e.id!==t))})}function WD(e){e.pendingCallbacksFlag||(e.pendingCallbacksFlag=!0,setTimeout(()=>{e.pendingCallbacksFlag=!1;let t=e.loaderCallbacks?e.loaderCallbacks.slice(0):[];if(!t.length)return;let n=!1,r=e.provider,i=e.prefix;t.forEach(t=>{let a=t.icons,o=a.pending.length;a.pending=a.pending.filter(t=>{if(t.prefix!==i)return!0;let o=t.name;if(e.icons[o])a.loaded.push({provider:r,prefix:i,name:o});else if(e.missing.has(o))a.missing.push({provider:r,prefix:i,name:o});else return n=!0,!0;return!1}),a.pending.length!==o&&(n||UD([e],t.id),t.callback(a.loaded.slice(0),a.missing.slice(0),a.pending.slice(0),t.abort))})}))}var GD=0;function KD(e,t,n){let r=GD++,i=UD.bind(null,n,r);if(!t.pending.length)return i;let a={id:r,icons:t,callback:e,abort:i};return n.forEach(e=>{(e.loaderCallbacks||=[]).push(a)}),i}function qD(e){let t={loaded:[],missing:[],pending:[]},n=Object.create(null);e.sort((e,t)=>e.provider===t.provider?e.prefix===t.prefix?e.name.localeCompare(t.name):e.prefix.localeCompare(t.prefix):e.provider.localeCompare(t.provider));let r={provider:``,prefix:``,name:``};return e.forEach(e=>{if(r.name===e.name&&r.prefix===e.prefix&&r.provider===e.provider)return;r=e;let i=e.provider,a=e.prefix,o=e.name,s=n[i]||(n[i]=Object.create(null)),c=s[a]||(s[a]=oD(i,a)),l;l=o in c.icons?t.loaded:a===``||c.missing.has(o)?t.missing:t.pending;let u={provider:i,prefix:a,name:o};l.push(u)}),t}function JD(e,t=!0,n=!1){let r=[];return e.forEach(e=>{let i=typeof e==`string`?WE(e,t,n):e;i&&r.push(i)}),r}var YD={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function XD(e,t,n,r){let i=e.resources.length,a=e.random?Math.floor(Math.random()*i):e.index,o;if(e.random){let t=e.resources.slice(0);for(o=[];t.length>1;){let e=Math.floor(Math.random()*t.length);o.push(t[e]),t=t.slice(0,e).concat(t.slice(e+1))}o=o.concat(t)}else o=e.resources.slice(a).concat(e.resources.slice(0,a));let s=Date.now(),c=`pending`,l=0,u,d=null,f=[],p=[];typeof r==`function`&&p.push(r);function m(){d&&=(clearTimeout(d),null)}function h(){c===`pending`&&(c=`aborted`),m(),f.forEach(e=>{e.status===`pending`&&(e.status=`aborted`)}),f=[]}function g(e,t){t&&(p=[]),typeof e==`function`&&p.push(e)}function _(){return{startTime:s,payload:t,status:c,queriesSent:l,queriesPending:f.length,subscribe:g,abort:h}}function v(){c=`failed`,p.forEach(e=>{e(void 0,u)})}function y(){f.forEach(e=>{e.status===`pending`&&(e.status=`aborted`)}),f=[]}function b(t,n,r){let i=n!==`success`;switch(f=f.filter(e=>e!==t),c){case`pending`:break;case`failed`:if(i||!e.dataAfterTimeout)return;break;default:return}if(n===`abort`){u=r,v();return}if(i){u=r,f.length||(o.length?x():v());return}if(m(),y(),!e.random){let n=e.resources.indexOf(t.resource);n!==-1&&n!==e.index&&(e.index=n)}c=`completed`,p.forEach(e=>{e(r)})}function x(){if(c!==`pending`)return;m();let r=o.shift();if(r===void 0){if(f.length){d=setTimeout(()=>{m(),c===`pending`&&(y(),v())},e.timeout);return}v();return}let i={status:`pending`,resource:r,callback:(e,t)=>{b(i,e,t)}};f.push(i),l++,d=setTimeout(x,e.rotate),n(r,t,i.callback)}return setTimeout(x),_}function ZD(e){let t={...YD,...e},n=[];function r(){n=n.filter(e=>e().status===`pending`)}function i(e,i,a){let o=XD(t,e,i,(e,t)=>{r(),a&&a(e,t)});return n.push(o),o}function a(e){return n.find(t=>e(t))||null}return{query:i,find:a,setIndex:e=>{t.index=e},getIndex:()=>t.index,cleanup:r}}function QD(){}var $D=Object.create(null);function eO(e){if(!$D[e]){let t=ID(e);if(!t)return;$D[e]={config:t,redundancy:ZD(t)}}return $D[e]}function tO(e,t,n){let r,i;if(typeof e==`string`){let t=AD(e);if(!t)return n(void 0,424),QD;i=t.send;let a=eO(e);a&&(r=a.redundancy)}else{let t=jD(e);if(t){r=ZD(t);let n=AD(e.resources?e.resources[0]:``);n&&(i=n.send)}}return!r||!i?(n(void 0,424),QD):r.query(t,i,n)().abort}function nO(){}function rO(e){e.iconsLoaderFlag||(e.iconsLoaderFlag=!0,setTimeout(()=>{e.iconsLoaderFlag=!1,WD(e)}))}function iO(e){let t=[],n=[];return e.forEach(e=>{(e.match(UE)?t:n).push(e)}),{valid:t,invalid:n}}function aO(e,t,n){function r(){let n=e.pendingIcons;t.forEach(t=>{n&&n.delete(t),e.icons[t]||e.missing.add(t)})}if(n&&typeof n==`object`)try{if(!sD(e,n).length){r();return}}catch(e){console.error(e)}r(),rO(e)}function oO(e,t){e instanceof Promise?e.then(e=>{t(e)}).catch(()=>{t(null)}):t(e)}function sO(e,t){e.iconsToLoad=e.iconsToLoad?e.iconsToLoad.concat(t).sort():t,e.iconsQueueFlag||(e.iconsQueueFlag=!0,setTimeout(()=>{e.iconsQueueFlag=!1;let{provider:t,prefix:n}=e,r=e.iconsToLoad;if(delete e.iconsToLoad,!r||!r.length)return;let i=e.loadIcon;if(e.loadIcons&&(r.length>1||!i)){oO(e.loadIcons(r,n,t),t=>{aO(e,r,t)});return}if(i){r.forEach(r=>{oO(i(r,n,t),t=>{aO(e,[r],t?{prefix:n,icons:{[r]:t}}:null)})});return}let{valid:a,invalid:o}=iO(r);if(o.length&&aO(e,o,null),!a.length)return;let s=n.match(UE)?AD(t):null;if(!s){aO(e,a,null);return}s.prepare(t,n,a).forEach(n=>{tO(t,n,t=>{aO(e,n.icons,t)})})}))}var cO=(e,t)=>{let n=qD(JD(e,!0,uD()));if(!n.pending.length){let e=!0;return t&&setTimeout(()=>{e&&t(n.loaded,n.missing,n.pending,nO)}),()=>{e=!1}}let r=Object.create(null),i=[],a,o;return n.pending.forEach(e=>{let{provider:t,prefix:n}=e;if(n===o&&t===a)return;a=t,o=n,i.push(oD(t,n));let s=r[t]||(r[t]=Object.create(null));s[n]||(s[n]=[])}),n.pending.forEach(e=>{let{provider:t,prefix:n,name:i}=e,a=oD(t,n),o=a.pendingIcons||=new Set;o.has(i)||(o.add(i),r[t][n].push(i))}),i.forEach(e=>{let t=r[e.provider][e.prefix];t.length&&sO(e,t)}),t?KD(t,n,i):nO};function lO(e,t){let n={...e};for(let e in t){let r=t[e],i=typeof r;e in mD?(r===null||r&&(i===`string`||i===`number`))&&(n[e]=r):i===typeof n[e]&&(n[e]=e===`rotate`?r%4:r)}return n}var uO=/[\s,]+/;function dO(e,t){t.split(uO).forEach(t=>{switch(t.trim()){case`horizontal`:e.hFlip=!0;break;case`vertical`:e.vFlip=!0}})}function fO(e,t=0){let n=e.replace(/^-?[0-9.]*/,``);function r(e){for(;e<0;)e+=4;return e%4}if(n===``){let t=parseInt(e);return isNaN(t)?0:r(t)}if(n!==e){let t=0;switch(n){case`%`:t=25;break;case`deg`:t=90}if(t){let i=parseFloat(e.slice(0,e.length-n.length));return isNaN(i)?0:(i/=t,i%1==0?r(i):0)}}return t}function pO(e,t){let n=e.indexOf(`xlink:`)===-1?``:` xmlns:xlink="http://www.w3.org/1999/xlink"`;for(let e in t)n+=` `+e+`="`+t[e]+`"`;return`<svg xmlns="http://www.w3.org/2000/svg"`+n+`>`+e+`</svg>`}function mO(e){return e.replace(/"/g,`'`).replace(/%/g,`%25`).replace(/#/g,`%23`).replace(/</g,`%3C`).replace(/>/g,`%3E`).replace(/\s+/g,` `)}function hO(e){return`data:image/svg+xml,`+mO(e)}function gO(e){return`url("`+hO(e)+`")`}var _O={...hD,inline:!1},vO={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,"aria-hidden":!0,role:`img`},yO={display:`inline-block`},bO={"background-color":`currentColor`},xO={"background-color":`transparent`},SO={image:`var(--svg)`,repeat:`no-repeat`,size:`100% 100%`},CO={"-webkit-mask":bO,mask:bO,background:xO};for(let e in CO){let t=CO[e];for(let n in SO)t[e+`-`+n]=SO[n]}function wO(e){return e+(e.match(/^[-0-9.]+$/)?`px`:``)}function TO(e,t){let n=lO(_O,t),r=t.mode||`svg`,i=r===`svg`?{...vO}:{};e.body.indexOf(`xlink:`)===-1&&delete i[`xmlns:xlink`];let a=typeof t.style==`string`?t.style:``;for(let e in t){let r=t[e];if(r!==void 0)switch(e){case`icon`:case`style`:case`onLoad`:case`mode`:case`ssr`:break;case`inline`:case`hFlip`:case`vFlip`:n[e]=r===!0||r===`true`||r===1;break;case`flip`:typeof r==`string`&&dO(n,r);break;case`color`:a=a+(a.length>0&&a.trim().slice(-1)!==`;`?`;`:``)+`color: `+r+`; `;break;case`rotate`:typeof r==`string`?n[e]=fO(r):typeof r==`number`&&(n[e]=r);break;case`ariaHidden`:case`aria-hidden`:r!==!0&&r!==`true`&&delete i[`aria-hidden`];break;default:if(e.slice(0,3)===`on:`)break;_O[e]===void 0&&(i[e]=r)}}let o=CD(e,n),s=o.attributes;if(n.inline&&(a=`vertical-align: -0.125em; `+a),r===`svg`)return Object.assign(i,s),a!==``&&(i.style=a),{svg:!0,attributes:i,body:DD(o.body)};let{body:c,width:l,height:u}=e,d=r===`mask`||r!==`bg`&&c.indexOf(`currentColor`)!==-1,f={"--svg":gO(pO(c,{...s,width:l+``,height:u+``}))},p=e=>{let t=s[e];t&&(f[e]=wO(t))};p(`width`),p(`height`),Object.assign(f,yO,d?bO:xO);let m=``;for(let e in f)m+=e+`: `+f[e]+`;`;return i.style=m+a,{svg:!1,attributes:i}}if(uD(!0),kD(``,HD),typeof document<`u`&&typeof window<`u`){let e=window;if(e.IconifyPreload!==void 0){let t=e.IconifyPreload,n=`Invalid IconifyPreload syntax.`;typeof t==`object`&&t&&(t instanceof Array?t:[t]).forEach(e=>{try{(typeof e!=`object`||!e||e instanceof Array||typeof e.icons!=`object`||typeof e.prefix!=`string`||!pD(e))&&console.error(n)}catch{console.error(n)}})}if(e.IconifyProviders!==void 0){let t=e.IconifyProviders;if(typeof t==`object`&&t)for(let e in t){let n=`IconifyProviders[`+e+`] is invalid.`;try{let r=t[e];if(typeof r!=`object`||!r||r.resources===void 0)continue;FD(e,r)||console.error(n)}catch{console.error(n)}}}}function EO(){try{return typeof window!=`object`}catch{return!0}}function DO(e,t,n,r){function i(){t.loading&&=(t.loading.abort(),null)}if(typeof e==`object`&&e&&typeof e.body==`string`)return t.name=``,i(),{data:{...YE,...e}};let a;if(typeof e!=`string`||(a=WE(e,!1,!0))===null)return i(),null;let o=dD(a);if(!o)return!EO()&&(!t.loading||t.loading.name!==e)&&(i(),t.name=``,t.loading={name:e,abort:cO([a],n)}),null;i(),t.name!==e&&(t.name=e,r&&!t.destroyed&&setTimeout(()=>{r(e)}));let s=[`iconify`];return a.prefix!==``&&s.push(`iconify--`+a.prefix),a.provider!==``&&s.push(`iconify--`+a.provider),{data:o,classes:s}}function OO(e,t){return e?TO({...YE,...e},t):null}var kO=new Set([`$$slots`,`$$events`,`$$legacy`]),AO=j(`<svg></svg>`),jO=m(`<span></span>`);function MO(e,t){l(t,!0);let n={name:``,loading:null,destroyed:!1},r=H(t,kO),i=w(0),a=y(()=>(V(i),DO(t.icon,n,c,t.onload))),o=y(()=>{let e=V(a)?OO(V(a).data,r):null;return e&&V(a).classes&&r.class===void 0&&(e.attributes.class=(typeof r.class==`string`?r.class+` `:``)+V(a).classes.join(` `)),e});function c(){s(i)}ae(()=>{n.destroyed=!0,n.loading&&=(n.loading.abort(),null)});var u=U(),d=K(u),f=e=>{var t=U(),n=K(t),r=e=>{var t=AO();G(t,()=>({...V(o).attributes})),g(t,()=>V(o).body,!0),O(t),h(e,t)},i=e=>{var t=jO();G(t,()=>({...V(o).attributes})),h(e,t)};D(n,e=>{V(o).svg?e(r):e(i,-1)}),h(e,t)};D(d,e=>{V(o)&&e(f)}),h(e,u),b()}var NO=m(`<span> </span>`),PO=m(`<!> `,1),FO=m(`<button type="button" class="scroll-button back svelte-l0ky0e"><!></button>`),IO=m(`<button type="button" class="scroll-button forward svelte-l0ky0e"><!></button>`),LO=m(`<div class="tab-bar relative shrink-0 border-b border-border svelte-l0ky0e"><!> <!> <!></div>`);function RO(t,n){l(n,!0);let r=Je(),a=y(()=>r.messages),o=w(null),s=w(!1),u=w(!1);function d(){if(!V(o))return;let{scrollLeft:e,scrollWidth:t,clientWidth:n}=V(o);i(s,e>1),i(u,e+n<t-1)}ce(()=>{if(!V(o))return;let e=new ResizeObserver(d);return e.observe(V(o)),d(),()=>e.disconnect()}),ce(()=>{if(!V(o))return;let e=V(o).querySelector(`[data-value="${CSS.escape(n.activeTabId)}"]`);if(!e)return;let t=e.offsetLeft-32,r=e.offsetLeft+e.offsetWidth+32;t<V(o).scrollLeft?V(o).scrollLeft=t:r>V(o).scrollLeft+V(o).clientWidth&&(V(o).scrollLeft=r-V(o).clientWidth)});function f(e){V(o)?.scrollBy({left:e*V(o).clientWidth*.7,behavior:`smooth`})}function p(e){V(o)&&(V(s)||V(u))&&(Math.abs(e.deltaX)>Math.abs(e.deltaY)||(e.preventDefault(),V(o).scrollLeft+=e.deltaY))}var m=LO(),g=N(m);c(g,()=>yn,(e,t)=>{t(e,{variant:`line`,onscroll:d,onwheel:p,get ref(){return V(o)},set ref(e){i(o,e,!0)},children:(e,t)=>{var r=U(),i=K(r);S(i,17,()=>n.tabs,e=>e.id,(e,t)=>{var r=U(),i=K(r);c(i,()=>xn,(e,r)=>{r(e,{get value(){return V(t).id},onclick:()=>n.onTabChange(V(t).id),variant:`line`,children:(e,n)=>{var r=PO(),i=K(r),a=e=>{var n=U(),r=K(n),i=e=>{MO(e,{get icon(){return V(t).icon},class:`h-4 w-4`})},a=y(()=>V(t).icon.includes(`:`)),o=e=>{var n=NO(),r=q(n,!0);z(()=>T(r,V(t).icon)),h(e,n)};D(r,e=>{V(a)?e(i):e(o,-1)}),h(e,n)};D(i,e=>{V(t).icon&&e(a)});var o=I(i);z(()=>T(o,` ${V(t).label??``}`)),h(e,r)},$$slots:{default:!0}})}),h(e,r)}),h(e,r)},$$slots:{default:!0}})});var _=I(g,2),v=t=>{var n=FO(),r=N(n);nt(r,{class:`h-4 w-4`}),O(n),z(()=>F(n,`aria-label`,V(a).scrollTabsBack)),e(`click`,n,()=>f(-1)),h(t,n)};D(_,e=>{V(s)&&e(v)});var x=I(_,2),C=t=>{var n=IO(),r=N(n);rt(r,{class:`h-4 w-4`}),O(n),z(()=>F(n,`aria-label`,V(a).scrollTabsForward)),e(`click`,n,()=>f(1)),h(t,n)};D(x,e=>{V(u)&&e(C)}),O(m),h(t,m),b()}x([`click`]);var zO={NETWORK_ERROR:`NETWORK_ERROR`,AUTH_ERROR:`AUTH_ERROR`,VALIDATION_ERROR:`VALIDATION_ERROR`,COMPUTATION_ERROR:`COMPUTATION_ERROR`,TIMEOUT_ERROR:`TIMEOUT_ERROR`,CORS_ERROR:`CORS_ERROR`,NOT_FOUND:`NOT_FOUND`,RATE_LIMIT:`RATE_LIMIT`,INVALID_RESPONSE:`INVALID_RESPONSE`,UNKNOWN_ERROR:`UNKNOWN_ERROR`,INVALID_STATE:`INVALID_STATE`,INVALID_INPUT:`INVALID_INPUT`,INVALID_CONFIG:`INVALID_CONFIG`,BROWSER_ONLY:`BROWSER_ONLY`,ENVIRONMENT_ERROR:`ENVIRONMENT_ERROR`,ENCODING_ERROR:`ENCODING_ERROR`,MALFORMED_DEFAULT:`MALFORMED_DEFAULT`,SUPERSEDED:`SUPERSEDED`,ABORTED:`ABORTED`,QUEUE_FULL:`QUEUE_FULL`,QUEUE_TIMEOUT:`QUEUE_TIMEOUT`,DEFINITION_NOT_CACHED:`DEFINITION_NOT_CACHED`},BO=class e extends Error{code;statusCode;context;originalError;constructor(e,t=zO.UNKNOWN_ERROR,n){super(e),this.name=`ComputeError`,this.code=t,this.statusCode=n?.statusCode,this.context=n?.context,this.originalError=n?.originalError,n?.originalError&&(this.cause=n.originalError)}static missingValues(t,n,r){return new e(`Input "${t}" has no values defined${n?` (expected ${n})`:``}`,zO.INVALID_INPUT,{context:{inputName:t,expectedType:n,...r}})}static unknownParamType(t,n,r){return new e(`Unknown paramType: ${t}`,zO.VALIDATION_ERROR,{context:{receivedParamType:t,paramName:n,...r}})}},VO=new class{debug(){}info(){}warn(){}error(){}};function HO(){return VO}function UO(e,t){if(!e||typeof e!=`object`)return;let n=e;if(WO(n,t))return n[t];let r=qO(n).get(t.toLowerCase());return r===void 0?void 0:n[r]}var WO=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);function GO(e,t){if(!e||typeof e!=`object`)return!1;let n=e;return WO(n,t)?!0:qO(n).has(t.toLowerCase())}var KO=new WeakMap;function qO(e){let t=Object.keys(e),n=KO.get(e);if(n&&n.keyCount===t.length)return n.map;let r=new Map;for(let e of t){let t=e.toLowerCase();r.has(t)||r.set(t,e)}return KO.set(e,{keyCount:t.length,map:r}),r}function JO(){let e=globalThis.Buffer;return typeof e==`function`?e:void 0}function YO(e){let t=e.replace(/[\t\n\f\r ]/g,``);if(t.length%4==0&&(t=t.replace(/={1,2}$/,``)),t.length%4==1||!/^[A-Za-z0-9+/]*$/.test(t))throw new BO(`Invalid base64 input.`,zO.ENCODING_ERROR,{context:{inputLength:e.length}});let n=JO();if(n)return new Uint8Array(n.from(t,`base64`));if(typeof globalThis.atob==`function`){let e=globalThis.atob(t),n=new Uint8Array(e.length);for(let t=0;t<e.length;t++)n[t]=e.charCodeAt(t)&255;return n}throw new BO(`Base64 decoding not supported in this environment.`,zO.ENVIRONMENT_ERROR,{context:{environmentInfo:`atob or Buffer not available`}})}var XO=e=>(e??``).replace(/::/g,`/`).replace(/\\/g,`/`).split(`/`).map(e=>e.trim()).filter(e=>e!==``),ZO=e=>XO(e.subFolder)[0]??``,QO=e=>XO(e.subFolder).slice(1).join(`/`),$O=e=>{let t=new Map;for(let n of e){let e=ZO(n),r=t.get(e);r?r.push(n):t.set(e,[n])}return Array.from(t,([e,t])=>({root:e,files:t}))},ek=e=>{let t=e.replace(/[/\\:*?"<>|]/g,`_`).replace(/\s+/g,` `).trim().replace(/^\.+/,``);return t===``?`files`:t},tk=async(e,t,n=null)=>{if(typeof document>`u`||typeof Blob>`u`)throw new BO(`File download functionality is only available in browser environments. This function requires the DOM API (document, Blob).`,zO.BROWSER_ONLY,{context:{environment:typeof window<`u`?`browser (SSR)`:`Node.js`,documentAvailable:typeof document<`u`,blobAvailable:typeof Blob<`u`}});try{await ck(await sk(e,n),t)}catch(e){throw e instanceof BO?e:new BO(`Failed to download files from compute response`,zO.INVALID_STATE,{context:{originalError:e instanceof Error?e.message:String(e)},originalError:e instanceof Error?e:void 0})}},nk=async(e,t,n=null)=>{let r=$O(e);if(r.length===0){await tk([],t,n);return}let i=(r.find(e=>e.root===``)??r[0]).root;for(let{root:e,files:a}of r)await tk(e===``?a:a.map(e=>({...e,subFolder:QO(e)})),e===``?t:ek(e),e===i?n:null)},rk=e=>e.replace(/::/g,`/`).replace(/\\/g,`/`).split(`/`).map(e=>e.trim()).filter(e=>e!==``&&e!==`.`&&e!==`..`&&!/^[a-zA-Z]:$/.test(e)).join(`/`),ik=e=>e===!0||typeof e==`string`&&e.trim().toLowerCase()===`true`,ak=e=>{let t=[];return e.forEach(e=>{let n=UO(e,`fileName`)??``,r=UO(e,`fileType`)??``,i=rk(`${n}${r}`);if(i===``){HO().warn(`Skipping file with unusable name "${n}${r}": no safe archive path remains after sanitization.`);return}let a=UO(e,`subFolder`),o=a?rk(a):``,s=o===``?i:`${o}/${i}`,c=UO(e,`data`);if(typeof c!=`string`||c===``){HO().warn(`Skipping file "${s}": item carries no usable data.`);return}let l=UO(e,`metadata`);if(ik(UO(e,`isBase64Encoded`)))try{t.push({fileName:i,content:YO(c),path:s,subFolder:o,...l?{metadata:l}:{}})}catch(e){HO().warn(`Skipping file "${s}": base64 decode failed.`,e)}else t.push({fileName:i,content:c,path:s,subFolder:o,...l?{metadata:l}:{}})}),t},ok=async e=>(await Promise.all(e.map(async e=>{try{let t=typeof AbortSignal<`u`&&typeof AbortSignal.timeout==`function`?AbortSignal.timeout(3e4):void 0,n=await fetch(e.filePath,{signal:t});if(!n.ok)return HO().warn(`Failed to fetch additional file from URL: ${e.filePath}`),null;let r=await n.arrayBuffer(),i=rk(e.fileName);if(i===``)return HO().warn(`Skipping fetched file with unusable name: ${e.fileName}`),null;let a=e.subFolder?rk(e.subFolder):``;return{fileName:i,content:new Uint8Array(r),path:a===``?i:`${a}/${i}`,subFolder:a}}catch(t){return HO().error(`Error fetching additional file from URL: ${e.filePath}`,t),null}}))).filter(e=>e!==null),sk=async(e,t)=>{let n=ak(e);if(t){let e=Array.isArray(t)?t:[t];n.push(...await ok(e))}let r=new Set;return n.map(e=>{let t=lk(e.path,r);return r.add(t),t===e.path?e:(HO().warn(`Duplicate archive path "${e.path}" — storing as "${t}".`),{...e,path:t,fileName:t.slice(t.lastIndexOf(`/`)+1)})})};async function ck(e,t){let{zip:n,strToU8:r}=await _e(async()=>{let{zip:e,strToU8:t}=await import(`../chunks/CYZs_rfh.js`);return{zip:e,strToU8:t}},[],import.meta.url),i={},a=new Set;e.forEach(e=>{let t=lk(e.path,a);a.add(t),t!==e.path&&HO().warn(`Duplicate archive path "${e.path}" — storing as "${t}".`),i[t]=typeof e.content==`string`?r(e.content):e.content});let o=await new Promise((e,t)=>{n(i,{level:6},(n,r)=>n?t(n):e(r))});uk(new Blob([o],{type:`application/zip`}),`${t}.zip`)}function lk(e,t){if(!t.has(e))return e;let n=e.lastIndexOf(`/`),r=e.lastIndexOf(`.`),i=r>n?r:e.length,a=e.slice(0,i),o=e.slice(i);for(let e=2;;e++){let n=`${a}-${e}${o}`;if(!t.has(n))return n}}function uk(e,t){if(typeof document>`u`)throw new BO(`saveFile requires a browser environment with DOM API access.`,zO.BROWSER_ONLY,{context:{function:`saveFile`,requiredAPI:`document`}});let n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=t,document.body.appendChild(r),r.click(),r.remove(),setTimeout(()=>URL.revokeObjectURL(n),1e4)}var dk={".png":`image/png`,".jpg":`image/jpeg`,".jpeg":`image/jpeg`,".webp":`image/webp`,".gif":`image/gif`,".svg":`image/svg+xml`,".json":`application/json`,".txt":`text/plain`,".csv":`text/csv`,".xml":`application/xml`,".pdf":`application/pdf`,".3dm":`model/vnd.3dm`,".obj":`model/obj`,".stl":`model/stl`};function fk(e){let t=dk[(e.fileType??``).toLowerCase()]??`application/octet-stream`,n;if(e.isBase64Encoded){let r=atob(e.data),i=new Uint8Array(r.length);for(let e=0;e<r.length;e++)i[e]=r.charCodeAt(e);n=new Blob([i],{type:t})}else n=new Blob([e.data],{type:t});let r=`${e.fileName}${e.fileType??``}`,i=document.createElement(`a`);i.href=URL.createObjectURL(n),i.download=r,i.click(),URL.revokeObjectURL(i.href)}async function pk(e,t=`grasshopper-output`){try{let n=Array.isArray(e)?e:[e];if(n.length===0){console.warn(`[FileDownload] No files to download`);return}if(n.length===1){fk(n[0]);return}await nk(n,t)}catch(e){throw console.error(`[FileDownload] Error downloading files:`,e),e}}function mk(e){return typeof e==`object`&&!!e&&`fileName`in e&&`data`in e&&`isBase64Encoded`in e}function hk(e){if(e===0)return`0 Bytes`;let t=iu.FILE_SIZE.BYTES_PER_KB,n=[`Bytes`,`KB`,`MB`,`GB`],r=Math.floor(Math.log(e)/Math.log(t));return Math.round(e/t**+r*100)/100+` `+n[r]}function gk(e){return Math.ceil(e.length*3/4)}var _k=e=>Array.isArray(e)?e.map(String):e==null||e===``?[]:[String(e)],vk={equals:(e,t)=>e===t,notEquals:(e,t)=>e!==t,greaterThan:(e,t)=>Number(e)>Number(t),lessThan:(e,t)=>Number(e)<Number(t),greaterThanOrEqual:(e,t)=>Number(e)>=Number(t),lessThanOrEqual:(e,t)=>Number(e)<=Number(t),between:(e,t,n)=>n?.length===2&&Number(e)>=Number(n[0])&&Number(e)<=Number(n[1]),in:(e,t,n)=>n?.includes(String(e))??!1,notIn:(e,t,n)=>!(n?.includes(String(e))??!1),matches:(e,t)=>{try{return new RegExp(String(t)).test(String(e))}catch{return!1}},contains:(e,t)=>_k(e).includes(String(t)),containsAny:(e,t,n)=>{let r=_k(e);return n?.some(e=>r.includes(String(e)))??!1},isEmpty:e=>_k(e).length===0,isNotEmpty:e=>_k(e).length>0};function yk(e,t){let n=vk[e.operator];return n?n(t[e.paramId],e.value,e.values):!1}function bk(e,t){let n=e.rules.map(e=>yk(e,t));return e.mode===`any`?n.some(Boolean):n.every(Boolean)}var xk={show:e=>({visible:e,disabled:!1}),hide:(e,t)=>({visible:!e,disabled:!1,defaultValue:t}),disable:(e,t)=>({visible:!0,disabled:e,defaultValue:e?t:void 0})};function Sk(e,t){if(e.type===`linebreak`)return{visible:!0,disabled:!1};if(`visible`in e&&e.visible===!1||e.type===`output`&&Ck(e,t[e.paramId]))return{visible:!1,disabled:!1};if(!e.visibilityCondition?.rules)return{visible:!0,disabled:!1};let{action:n=`show`,defaultValue:r}=e.visibilityCondition,i=bk(e.visibilityCondition,t);return(xk[n]??xk.show)(i,r)}function Ck(e,t){switch(e.widgetType){case`image`:return!(Array.isArray(t)?t.some(mk):mk(t));case`chart`:return t==null||t===``;case`dynamicValueList`:return!0;default:return!1}}function wk(e){return e.type===`linebreak`?e.id:e.paramId}function Tk(e,t){let n={};for(let r of e)n[wk(r)]=Sk(r,t);return n}function Ek(e,t){if(e.items&&!Ok(e.items,t))return!1;if(!e.visibilityCondition?.rules)return!0;let{action:n=`show`}=e.visibilityCondition,r=bk(e.visibilityCondition,t);return n===`hide`?!r:r}function Dk(e,t){return e.visible!==!1&&e.groups.some(e=>Ek(e,t))}function Ok(e,t){return e.some(e=>e.type!==`linebreak`&&Sk(e,t).visible)}var kk=m(`<div class="schema-grid svelte-1mpk06z"></div>`),Ak=m(`<div class="grid-break svelte-1mpk06z" aria-hidden="true"></div>`),jk=m(`<div><!></div>`),Mk=m(`<div class="p-4"><!></div>`),Nk=m(`<p class="pl-4 pr-11 pt-0.5 pb-3.5 text-xs leading-snug text-muted-foreground"> </p>`),Pk=m(`<h3><button type="button"><span class="min-w-0 text-base font-semibold leading-snug flex-1 text-foreground"> </span> <!></button></h3> <!> <div><div class="content-inner svelte-1mpk06z"><div class="px-4 pt-1 pb-5"><!></div></div></div>`,1),Fk=m(`<section class="shadow-xs rounded-xl bg-card"><!></section>`);function Ik(t,n){let r=A();l(n,!0);let o=e=>{var t=kk();S(t,21,()=>n.items,e=>e.type===`linebreak`?e.id:e.paramId,(e,t)=>{s(e,()=>V(t))}),O(t),z(()=>a(t,`--schema-cols: ${V(m)??``}; --column-gap: 16px;`)),te(t,`clientWidth`,e=>i(p,e)),h(e,t)},s=(e,t=E)=>{var r=U(),i=K(r),o=e=>{var t=Ak();h(e,t)},s=e=>{let r=y(()=>V(u)[wk(t())]),i=y(()=>Math.min(Math.max(1,t().span??1),V(m)));var o=U(),s=K(o),c=e=>{var o=jk();let s;var c=N(o),l=e=>{var i=U(),a=K(i);f(a,()=>n.inputSnippet,t,()=>V(r)),h(e,i)},u=e=>{var r=U(),i=K(r);f(i,()=>n.outputSnippet,t),h(e,r)};D(c,e=>{t().type===`input`?e(l):t().type===`output`&&e(u,1)}),O(o),z(()=>{s=v(o,1,`grid-cell min-w-0 svelte-1mpk06z`,null,s,{"opacity-50":V(r).disabled}),a(o,`--span: ${V(i)??``}`)}),h(e,o)};D(s,e=>{V(r).visible&&e(c)}),h(e,o)};D(i,e=>{t().type===`linebreak`?e(o):e(s,-1)}),h(e,r)},c=P(n,`flat`,3,!1),u=y(()=>Tk(n.items,n.values)),d=`${r}-description`,p=w(0),m=y(()=>V(p)===0?n.columns:Math.max(1,Math.min(n.columns,Math.floor((V(p)+16)/176))));var g=Fk(),_=N(g),x=e=>{var t=Mk(),n=N(t);o(n),O(t),h(e,t)},C=t=>{var r=Pk(),i=K(r),a=N(i),s=N(a),c=q(s,!0),l=I(s,2);{let e=y(()=>n.collapsed?`-rotate-90`:``);tt(l,{get class(){return`mt-1 h-4 w-4 shrink-0 text-muted-foreground transition-transform duration-200 ${V(e)??``}`}})}O(a),O(i);var u=I(i,2),f=e=>{var t=Nk(),r=q(t,!0);z(()=>{F(t,`id`,d),T(r,n.description)}),h(e,t)};D(u,e=>{n.description&&e(f)});var p=I(u,2);let m;var g=N(p),_=N(g),b=N(_);o(b),O(_),O(g),O(p),z(()=>{v(a,1,`gap-3 px-4 pt-3.5 flex w-full items-start text-left outline-none select-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset ${n.description?`pb-0`:`pb-3.5`}`),F(a,`aria-expanded`,!n.collapsed),F(a,`aria-describedby`,n.description?d:void 0),T(c,n.label),m=v(p,1,`content-wrapper svelte-1mpk06z`,null,m,{collapsed:n.collapsed}),p.inert=n.collapsed}),e(`click`,a,function(...e){n.onToggle?.apply(this,e)}),h(t,r)};D(_,e=>{c()?e(x):e(C,-1)}),O(g),h(t,g),b()}x([`click`]);function Lk(e){return e?.layout?e.layout.type===`tabbed`?e.layout.tabs?.flatMap(e=>e.groups??[])??[]:e.layout.type===`flat`?e.layout.groups??[]:[]:[]}function Rk(e){return Lk(e).flatMap(e=>e.items??[])}function zk(e){return Rk(e).filter(e=>e.type===`input`)}function Bk(e){switch(e){case`number`:case`integer`:return 0;case`boolean`:return!1;case`text`:return``;default:return null}}var Vk=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`children`]);function Hk(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,Vk);{let i=y(()=>Pe(`group/field-label peer/field-label gap-2 leading-snug flex w-fit group-data-[disabled=true]/field:opacity-50`,`[&>*]:data-[slot=field]:p-4 has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col has-[>[data-slot=field]]:rounded-md has-[>[data-slot=field]]:border`,`has-data-[state=checked]:border-primary has-data-[state=checked]:bg-primary/5 dark:has-data-[state=checked]:bg-primary/10`,t.class));gn(e,W({"data-slot":`field-label`,get class(){return V(i)}},()=>r,{get ref(){return n()},set ref(e){n(e)},children:(e,n)=>{var r=U(),i=K(r);f(i,()=>t.children??E),h(e,r)},$$slots:{default:!0}}))}b()}var Uk=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`children`,`errors`]),Wk=m(`<li> </li>`),Gk=m(`<ul class="ms-4 gap-1 flex list-disc flex-col"></ul>`),Kk=m(`<div><!></div>`);function qk(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,Uk),i=y(()=>t.children?!0:!(!t.errors||t.errors.length===0||t.errors.length===1&&!t.errors[0]?.message)),a=y(()=>t.errors&&t.errors.length>1),o=y(()=>t.errors&&t.errors.length===1&&t.errors[0]?.message);var s=U(),c=K(s),u=e=>{var i=Kk();G(i,e=>({role:`alert`,"data-slot":`field-error`,class:e,...r}),[()=>Pe(`text-sm font-normal text-destructive`,t.class)]);var s=N(i),c=e=>{var n=U(),r=K(n);f(r,()=>t.children),h(e,n)},l=e=>{var t=M();z(()=>T(t,V(o))),h(e,t)},u=e=>{var n=Gk();S(n,21,()=>t.errors??[],he,(e,t)=>{var n=U(),r=K(n),i=e=>{var n=Wk(),r=q(n,!0);z(()=>T(r,V(t).message)),h(e,n)};D(r,e=>{V(t)?.message&&e(i)}),h(e,n)}),O(n),h(e,n)};D(s,e=>{t.children?e(c):V(o)?e(l,1):V(a)&&e(u,2)}),O(i),L(i,e=>n(e),()=>n()),h(e,i)};D(c,e=>{V(i)&&e(u)}),h(e,s),b()}var Jk=m(`<button><!></button>`),Yk=m(`<!> <!>`,1);function Xk(e,t){var n=U(),i=K(n);c(i,()=>hn,(e,n)=>{n(e,{children:(e,n)=>{var i=Yk(),a=K(i);{let e=(e,n)=>{let r=()=>(n?.()).props;var i=Jk();G(i,()=>({...r(),class:`-m-1 size-6 pointer-coarse:after:-inset-2.5 relative flex shrink-0 cursor-help items-center justify-center rounded-sm text-muted-foreground transition hover:text-foreground pointer-coarse:after:absolute pointer-fine:opacity-0 pointer-fine:group-focus-within/field:opacity-100 pointer-fine:group-hover/field:opacity-100 pointer-fine:focus-visible:opacity-100`,"aria-label":t.label})),zn(N(i),{class:`size-3.5`}),O(i),h(e,i)};c(a,()=>He,(t,n)=>{n(t,{child:e,$$slots:{child:!0}})})}var o=I(a,2);c(o,()=>mn,(e,n)=>{n(e,{class:`sm:max-w-md`,children:(e,n)=>{var i=U(),a=K(i);c(a,()=>fn,(e,n)=>{n(e,{children:(e,n)=>{var i=Yk(),a=K(i);c(a,()=>dn,(e,n)=>{n(e,{children:(e,n)=>{r();var i=M();z(()=>T(i,t.label)),h(e,i)},$$slots:{default:!0}})});var o=I(a,2);c(o,()=>pn,(e,n)=>{n(e,{children:(e,n)=>{r();var i=M();z(()=>T(i,t.description)),h(e,i)},$$slots:{default:!0}})}),h(e,i)},$$slots:{default:!0}})}),h(e,i)},$$slots:{default:!0}})}),h(e,i)},$$slots:{default:!0}})}),h(e,n)}var Zk=m(`<div class="gap-2.5 min-h-6 min-w-0 flex items-center"><!> <!></div>`);function Qk(e,t){l(t,!0);let n=P(t,`value`,15),r=P(t,`disabled`,3,!1);var i=Zk(),a=N(i);{let e=y(()=>typeof n()==`boolean`&&n());$o(a,{get id(){return t.inputId},get checked(){return V(e)},onCheckedChange:e=>{n(e===!0),t.onChange(e===!0)},get disabled(){return r()}})}var o=I(a,2);f(o,()=>t.children??E),O(i),h(e,i),b()}var $k=m(`<label><!> <span> </span></label>`),eA=m(`<div class="divide-y divide-border/60 overflow-hidden rounded-md border border-input"></div>`);function tA(e,t){l(t,!0);let n=P(t,`disabled`,3,!1),r=y(()=>t.config?.options??{}),i=y(()=>new Set(t.value??[]));function a(e,n){let r=new xe(V(i));n?r.add(e):r.delete(e),t.onChange([...r])}var o=eA();S(o,21,()=>Object.entries(V(r)),([e,t])=>e,(e,r)=>{var o=y(()=>k(V(r),2));let s=()=>V(o)[0],c=()=>V(o)[1],l=y(()=>c()??s()),u=y(()=>`${t.inputId}-${V(l)}`),d=y(()=>V(i).has(V(l)));var f=$k(),p=N(f);$o(p,{get id(){return V(u)},get checked(){return V(d)},onCheckedChange:e=>a(V(l),e===!0),get disabled(){return n()}});var m=I(p,2);let g;var _=q(m,!0);O(f),z(()=>{F(f,`for`,V(u)),v(f,1,`gap-3 px-3 py-2 text-sm flex items-center transition-colors select-none hover:bg-accent/50 ${V(d)?`bg-accent/30`:``} ${n()?`cursor-not-allowed opacity-50`:`cursor-pointer`}`),g=v(m,1,`flex-1`,null,g,{"font-medium":V(d)}),T(_,s())}),h(e,f)}),O(o),h(e,o),b()}var nA=m(`<div class="gap-2 flex items-center"><input type="color" class="h-9 w-12 rounded p-1 cursor-pointer border border-input bg-background dark:bg-input/30"/> <span class="font-mono text-sm text-muted-foreground"> </span></div>`);function rA(t,n){l(n,!0);let r=P(n,`value`,3,`#000000`);var i=nA(),a=N(i);me(a);var o=I(a,2),s=q(o,!0);O(i),z(()=>{F(a,`id`,n.inputId),C(a,r()||`#000000`),T(s,r()||`#000000`)}),e(`change`,a,e=>{let t=e.currentTarget.value;n.onChange(t)}),h(t,i),b()}x([`change`]);var iA=m(`<!> <!>`,1);function aA(e,t){l(t,!0);let n=P(t,`value`,7),i=P(t,`disabled`,3,!1),a=Je(),o=y(()=>t.config?.options||{}),s=y(()=>n()||``),u=y(()=>Object.entries(V(o)).find(([e,t])=>t===V(s))?.[0]??V(s));var d=U(),f=K(d);c(f,()=>un,(e,l)=>{l(e,{type:`single`,get value(){return V(s)},onValueChange:e=>{e&&(n(e),t.onChange(e))},get disabled(){return i()},children:(e,t)=>{var n=iA(),s=K(n);c(s,()=>on,(e,t)=>{t(e,{class:`w-full`,get disabled(){return i()},children:(e,t)=>{r();var n=M();z(()=>T(n,V(u)||a.messages.selectOption)),h(e,n)},$$slots:{default:!0}})});var l=I(s,2);c(l,()=>cn,(e,t)=>{t(e,{children:(e,t)=>{var n=U(),r=K(n);S(r,17,()=>Object.entries(V(o)),([e,t])=>e,(e,t)=>{var n=y(()=>k(V(t),2));let r=()=>V(n)[0],i=()=>V(n)[1];var a=U(),o=K(a);{let e=y(()=>i()??r());c(o,()=>an,(t,n)=>{n(t,{get value(){return V(e)},get label(){return r()}})})}h(e,a)}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})}),h(e,d),b()}var oA=m(`<button type="button"> </button>`),sA=m(`<div class="p-0.5 text-xs flex rounded-md bg-muted"></div>`),cA=m(`<!> `,1),lA=m(`<div class="gap-1.5 text-xs flex items-center text-success"><!> </div>`),uA=m(`<p class="text-xs leading-snug pl-5 text-muted-foreground"> </p>`),dA=m(`<div class="p-2.5 gap-1.5 flex flex-col rounded-md border border-destructive/40 bg-destructive/5"><div class="gap-1.5 flex items-start"><!> <p class="text-xs leading-snug text-destructive"> </p></div> <!></div>`),fA=m(`<p class="text-xs text-muted-foreground"> </p>`),pA=m(`<div class="gap-2 flex flex-col"><!> <div class="gap-2 flex"><!> <!></div> <!> <!> <!></div>`),mA=m(`<div class="gap-2 flex flex-col"><!> <!></div>`),hA=m(`<div class="gap-2.5 flex w-full flex-col"><input type="file" class="hidden"/> <!> <!></div>`);function gA(t,n){l(n,!0);let a=P(n,`value`,15),o=P(n,`acceptedFormats`,19,()=>[]),s=P(n,`defaultInputMode`,3,`upload`),c=Je(),u=y(()=>c.messages),d=y(()=>n.allowedInputModes&&n.allowedInputModes.length>0?n.allowedInputModes:[`upload`,`url`]),f=y(()=>V(d).length>1),p=w(`upload`);ce(()=>{let e=s()??`upload`;i(p,V(d).includes(e)?e:V(d)[0],!0)});let m=w(null),g=w(``),_=w(``),x=w(!1),C=w(!1),E=w(null),k=w(``);ce(()=>{if(a())try{let e=typeof a()==`string`?JSON.parse(a()):a();if(e.type===`base64`){if(e._isMetadata&&e._fileSize){let t=(e._fileSize/1024/1024).toFixed(2);i(g,Ge(V(u).uploadedFileSize,{ext:e.fileEnding,size:t}),!0)}else i(g,Ge(V(u).uploadedFile,{ext:e.fileEnding}),!0)}else e.type===`url`&&i(_,e.file,!0)}catch{}});function A(e){return Ge(V(u).fileFormatNotAccepted,{ext:e,formats:o().join(`, `)})}function j(e){return Ge(V(u).fileTooLarge,{size:(e/1024/1024).toFixed(2),max:iu.FILE_UPLOAD.MAX_SIZE_MB})}function ee(e){let t=e.split(`?`)[0];return(t.includes(`.`)?`.`+t.split(`.`).pop():`.tmp`).toLowerCase()}function R(e){return o().length===0||o().includes(e.toLowerCase())}function te(e){return e instanceof TypeError&&e.message===`Failed to fetch`}async function ne(){if(V(_).trim()){i(C,!0),i(E,null),i(k,``),i(g,``);try{let e;try{e=new URL(V(_))}catch{i(E,{message:V(u).urlInvalid,isCors:!1},!0);return}if(e.protocol!==`https:`&&e.protocol!==`http:`){i(E,{message:V(u).urlProtocolUnsupported,isCors:!1},!0);return}let t=await fetch(V(_));if(!t.ok){i(E,{message:Ge(V(u).urlServerError,{status:`${t.status} ${t.statusText}`.trim()}),isCors:!1},!0);return}let r=await t.blob(),o=ee(V(_));if(!R(o)){i(E,{message:A(o),isCors:!1},!0);return}let s=iu.FILE_UPLOAD.MAX_SIZE_BYTES;if(r.size>s){i(E,{message:`${j(r.size)} ${V(u).fileTooLargeUseUpload}`,isCors:!1},!0);return}let c=await new Promise((e,t)=>{let n=new FileReader;n.onload=t=>{let n=t.target?.result;e(n.includes(`,`)?n.split(`,`)[1]:n)},n.onerror=()=>t(Error(V(u).fileReadFailed)),n.readAsDataURL(r)}),l=JSON.stringify({file:c,type:`base64`,fileEnding:o});a(l),i(k,Ge(V(u).fileLoaded,{ext:o,size:(r.size/1024).toFixed(0)}),!0),n.onChange(l)}catch(e){if(te(e)){let e=(()=>{try{return new URL(V(_)).hostname}catch{return``}})(),t=V(u).urlUnreachableHint;e.includes(`sharepoint.com`)||e.includes(`onedrive.com`)?t=V(u).urlHintSharePoint:e.includes(`drive.google.com`)?t=V(u).urlHintGoogleDrive:e.includes(`dropbox.com`)&&(t=V(u).urlHintDropbox),i(E,{message:Ge(V(u).urlUnreachable,{host:e}),isCors:!0,hint:t},!0)}else i(E,{message:e instanceof Error?e.message:V(u).unknownError,isCors:!1},!0)}finally{i(C,!1)}}}function B(e){let t=e.target.files?.[0];if(!t)return;let r=ee(t.name);if(!R(r)){Dn.error(A(r));return}if(t.size>iu.FILE_UPLOAD.MAX_SIZE_BYTES){Dn.error(j(t.size));return}i(g,t.name,!0);let o=new FileReader;o.onload=e=>{let t=e.target?.result,i=t.includes(`,`)?t.split(`,`)[1]:t,o=JSON.stringify({file:i,type:`base64`,fileEnding:r});a(o),n.onChange(o)},o.readAsDataURL(t)}function re(){V(m)?.click()}function ie(e){e.preventDefault(),i(x,!0)}function ae(){i(x,!1)}function oe(e){e.preventDefault(),i(x,!1);let t=e.dataTransfer?.files;if(t?.[0]){let e=new Event(`change`);Object.defineProperty(e,"target",{value:{files:t}}),B(e)}}let H=y(()=>o().length>0?o().join(`,`):`*`);var se=hA(),U=N(se);L(U,e=>i(m,e),()=>V(m));var le=I(U,2),ue=t=>{var n=sA();S(n,20,()=>V(d),e=>e,(t,n)=>{var r=oA(),a=q(r,!0);z(()=>{F(r,`aria-pressed`,V(p)===n),v(r,1,`px-3 py-1 font-medium flex-1 rounded-sm transition-colors ${V(p)===n?`shadow-xs bg-background text-foreground`:`text-muted-foreground hover:text-foreground`}`),T(a,n===`upload`?V(u).fileModeUpload:V(u).fileModeUrl)}),e(`click`,r,()=>i(p,n,!0)),h(t,r)}),O(n),h(t,n)};D(le,e=>{V(f)&&e(ue)});var W=I(le,2),de=e=>{var t=pA(),n=N(t);gn(n,{for:`url-input`,children:(e,t)=>{var n=cA(),r=K(n);ar(r,{size:16});var i=I(r);z(()=>T(i,` ${V(u).fileUrlLabel??``}`)),h(e,n)},$$slots:{default:!0}});var a=I(n,2),o=N(a);{let e=y(()=>V(E)?!0:void 0);Cn(o,{id:`url-input`,type:`url`,placeholder:`https://example.com/model.3dm`,get disabled(){return V(C)},get"aria-invalid"(){return V(e)},oninput:()=>{i(E,null),i(k,``)},get value(){return V(_)},set value(e){i(_,e,!0)}})}var s=I(o,2);{let e=y(()=>V(C)||!V(_).trim());We(s,{type:`button`,variant:`outline`,get disabled(){return V(e)},onclick:ne,children:(e,t)=>{r();var n=M();z(()=>T(n,V(C)?V(u).fetchingFile:V(u).fetchFile)),h(e,n)},$$slots:{default:!0}})}O(a);var c=I(a,2),l=e=>{var t=lA(),n=N(t);at(n,{size:13});var r=I(n);O(t),z(()=>T(r,` ${V(k)??``}`)),h(e,t)};D(c,e=>{V(k)&&e(l)});var d=I(c,2),f=e=>{var t=dA(),n=N(t),r=N(n);ot(r,{size:13,class:`mt-0.5 shrink-0 text-destructive`});var i=I(r,2),a=q(i,!0);O(n);var o=I(n,2),s=e=>{var t=uA(),n=q(t,!0);z(()=>T(n,V(E).hint)),h(e,t)};D(o,e=>{V(E).isCors&&V(E).hint&&e(s)}),O(t),z(()=>T(a,V(E).message)),h(e,t)};D(d,e=>{V(E)&&e(f)});var p=I(d,2),m=e=>{var t=fA(),n=q(t,!0);z(()=>T(n,V(u).fileUrlPublic)),h(e,t)};D(p,e=>{!V(E)&&!V(k)&&e(m)}),O(t),h(e,t)},fe=e=>{var t=mA(),n=N(t);{let e=y(()=>V(x)?`secondary`:`outline`);We(n,{type:`button`,get variant(){return V(e)},class:`w-full`,onclick:re,ondragover:ie,ondragleave:ae,ondrop:oe,children:(e,t)=>{var n=cA(),r=K(n);ut(r,{size:16});var i=I(r);z(()=>T(i,` ${(V(g)||V(u).chooseFile)??``}`)),h(e,n)},$$slots:{default:!0}})}var r=I(n,2),i=e=>{var t=fA(),n=q(t,!0);z(e=>T(n,e),[()=>Ge(V(u).acceptedFormats,{formats:o().join(`, `)})]),h(e,t)};D(r,e=>{o().length>0&&e(i)}),O(t),h(e,t)};D(W,e=>{V(p)===`url`?e(de):e(fe,-1)}),O(se),z(()=>F(U,`accept`,V(H))),e(`change`,U,B),h(t,se),b()}x([`change`,`click`]);function _A(e,t){let n=null;function r(...r){n!==null&&clearTimeout(n),n=setTimeout(()=>{e(...r),n=null},t)}return r.cancel=()=>{n!==null&&(clearTimeout(n),n=null)},r}var vA=m(`<!> <!> <div class="px-3.5 min-w-0 flex flex-1 items-center"><!></div>`,1),yA=m(`<!> <!>`,1);function bA(e,t){l(t,!0);let n=P(t,`value`,15),a=P(t,`disabled`,3,!1),o=Je(),s=y(()=>o.messages),u=w(null),d=y(()=>t.config?.minimum??0),f=y(()=>t.config?.maximum??100),p=y(()=>t.config?.stepSize??1),m=y(()=>typeof n()==`number`?n():V(d)),g=_A(e=>t.onChange(e),400),_=_A(e=>t.onChange(e),150);function v(e){return t.config?.minimum!==void 0&&e<t.config.minimum?Ge(V(s).minValue,{min:t.config.minimum}):t.config?.maximum!==void 0&&e>t.config.maximum?Ge(V(s).maxValue,{max:t.config.maximum}):null}function x(e){let t=v(e);i(u,t,!0),t||(n(e),g(e))}let S=1e3,C=y(()=>(V(f)-V(d))/V(p)),E=y(()=>V(p)>0&&Number.isFinite(V(C))&&V(C)>S),k=y(()=>V(E)?0:V(d)),A=y(()=>V(E)?S:V(f)),j=y(()=>(String(V(p)).split(`.`)[1]??``).length),F=!1,L=!1,ee=null,te=null;function ne(e){let t=Math.min(V(f),Math.max(V(d),e));if(!(V(p)>0))return t;let n=V(d)+Math.round((t-V(d))/V(p))*V(p);return Math.min(V(f),Number(n.toFixed(V(j))))}function re(e){return V(E)?Math.round((e-V(d))/(V(f)-V(d))*S):e}function ie(e){return e/(V(A)-V(k))*(V(f)-V(d))}function ae(e){if(V(f)<=V(d))return;let t;F&&L?(te??={track:ee??e,value:V(m)},t=ne(te.value+ie(e-te.track)/10)):(te=null,t=ne(V(d)+ie(e-V(k)))),ee=e,n(t),_(t)}function oe(e){F=!0,L=e.shiftKey,ee=null,te=null}function H(e){e.key===`Shift`&&(L=e.type===`keydown`)}let se=y(()=>Math.max(0,-Math.floor(Math.log10(V(p)))));function ce(e){let r=parseFloat(e.value);if(isNaN(r)){e.value=V(m).toFixed(V(se));return}let i=Math.min(V(f),Math.max(V(d),r));e.value=i.toFixed(V(se)),i!==n()&&(n(i),t.onChange(i))}var le=yA();R(`keydown`,B,H),R(`keyup`,B,H),R(`pointerup`,B,()=>F=!1),R(`blur`,B,()=>L=F=!1);var ue=K(le),W=e=>{var n=U(),r=K(n);c(r,()=>En,(e,n)=>{n(e,{children:(e,n)=>{var r=vA(),i=K(r);{let e=y(()=>V(m).toFixed(V(se)));c(i,()=>Tn,(n,r)=>{r(n,{get id(){return t.inputId},type:`number`,class:`w-18 flex-none`,get value(){return V(e)},get min(){return V(d)},get max(){return V(f)},get step(){return V(p)},get disabled(){return a()},onchange:e=>ce(e.currentTarget),onkeydown:e=>{e.key===`Enter`&&e.currentTarget.blur()}})})}var o=I(i,2);ct(o,{orientation:`vertical`});var l=I(o,2),u=N(l),g=()=>re(V(m)),_=ae;{let e=y(()=>V(E)?1:V(p));ns(u,{type:`single`,get value(){return g()},set value(e){_(e)},get min(){return V(k)},get max(){return V(A)},get step(){return V(e)},get title(){return V(s).fineDragHint},get thumbLabelledby(){return t.labelId},get disabled(){return a()}})}O(l),R(`pointerdown`,l,oe,!0),h(e,r)},$$slots:{default:!0}})}),h(e,n)},de=e=>{{let r=y(()=>t.config?.minimum),o=y(()=>t.config?.maximum),s=y(()=>t.config?.placeholder),c=y(()=>V(u)?!0:void 0),l=y(()=>V(u)?!0:void 0);Cn(e,{get id(){return t.inputId},type:`number`,get value(){return V(m)},get min(){return V(r)},get max(){return V(o)},get step(){return V(p)},get placeholder(){return V(s)},get"data-invalid"(){return V(c)},get"aria-invalid"(){return V(l)},get disabled(){return a()},oninput:()=>i(u,null),onchange:e=>{let t=parseFloat(e.currentTarget.value);isNaN(t)||x(t)},onblur:e=>{let r=parseFloat(e.currentTarget.value);if(!isNaN(r)){let e=v(r);i(u,e,!0),e||(n(r),t.onChange(r))}}})}};D(ue,e=>{t.config?.renderAsSlider?e(W):e(de,-1)});var fe=I(ue,2),G=e=>{var t=U(),n=K(t);c(n,()=>qk,(e,t)=>{t(e,{children:(e,t)=>{r();var n=M();z(()=>T(n,V(u))),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(fe,e=>{V(u)&&e(G)}),h(e,le),b()}var xA=m(`<!> <!>`,1);function SA(e,t){l(t,!0);let n=P(t,`value`,15),a=P(t,`disabled`,3,!1),o=Je(),s=y(()=>o.messages),u=w(null),d=w(pe(n()||``)),f=_A(e=>t.onChange(e),400);function p(e){if(t.config?.maxLength&&e.length>t.config.maxLength)return Ge(V(s).maxLength,{max:t.config.maxLength});if(t.config?.pattern)try{if(!new RegExp(t.config.pattern).test(e))return t.config.customErrorMessage||V(s).invalidFormat}catch{return V(s).invalidPattern}return null}function m(){let e=p(V(d));i(u,e,!0),e||(n(V(d)),f(V(d)))}var g=xA(),_=K(g);{let e=y(()=>t.config?.placeholder),r=y(()=>t.config?.maxLength),o=y(()=>V(u)?!0:void 0),s=y(()=>V(u)?!0:void 0);Cn(_,{get id(){return t.inputId},type:`text`,get placeholder(){return V(e)},get maxlength(){return V(r)},get"data-invalid"(){return V(o)},get"aria-invalid"(){return V(s)},get disabled(){return a()},oninput:()=>{i(u,null),m()},onblur:e=>{let r=e.currentTarget.value,a=p(r);i(u,a,!0),a||(i(d,r,!0),n(r),t.onChange(r))},get value(){return V(d)},set value(e){i(d,e,!0)}})}var v=I(_,2),x=e=>{var t=U(),n=K(t);c(n,()=>qk,(e,t)=>{t(e,{children:(e,t)=>{r();var n=M();z(()=>T(n,V(u))),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(v,e=>{V(u)&&e(x)}),h(e,g),b()}var CA=Symbol(`client-slot-context`);function wA(e){p(CA,e)}function TA(){return _(CA)}var EA=m(`<span> </span>`),DA=m(`<span class="text-xs pl-2 ml-auto hidden shrink-0 whitespace-nowrap text-muted-foreground tabular-nums group-focus-within/field:inline"> </span>`),OA=m(`<div class="gap-1.5 min-h-5 min-w-0 flex items-center"><!> <!> <!></div>`),kA=m(`<div role="group" class="group/field gap-1.5 min-w-0 flex flex-col"><!> <!></div>`),AA=m(`<!> <!>`,1),jA=m(`<p class="text-sm text-muted-foreground"> </p>`);function MA(e,t){l(t,!0);let n=(e,t=E,n)=>{let r=o(()=>d(n?.(),`quiet`));var i=U(),a=K(i);{let e=y(()=>t()?`${t()}-label`:void 0);c(a,()=>Hk,(n,i)=>{i(n,{get for(){return t()},get id(){return V(e)},class:`min-w-0 block break-words`,children:(e,t)=>{var n=EA(),i=q(n,!0);z(()=>{v(n,1,re(V(r)===`quiet`?`font-normal text-muted-foreground`:`font-normal text-foreground`)),T(i,V(p))}),h(e,n)},$$slots:{default:!0}})})}h(e,i)},r=e=>{var n=U(),r=K(n),i=e=>{Xk(e,{get label(){return V(p)},get description(){return t.item.description}})};D(r,e=>{t.item.description&&e(i)}),h(e,n)},i=(e,t=E)=>{var i=OA(),a=N(i);n(a,t);var o=I(a,2);r(o);var s=I(o,2),c=e=>{var t=DA(),n=q(t,!0);z(()=>T(n,V(_))),h(e,t)};D(s,e=>{V(x)&&e(c)}),O(i),h(e,i)},a=P(t,`value`,15,void 0),s=P(t,`disabled`,3,!1),u=Je(),f=y(()=>`input-${t.item.paramId}`),p=y(()=>t.displayName||t.item.displayName||t.item.paramId),m=y(()=>{let e=t.item.source;return e?.kind===`client`&&e.client?.presentation===`slot`}),g=TA(),_=y(()=>{if(!mt(t.item))return null;let e=t.item.config;if(e?.hideRange||e?.renderAsSlider)return null;let n=typeof e?.minimum==`number`,r=typeof e?.maximum==`number`;return!n&&!r?null:n&&r?`${e.minimum} – ${e.maximum}`:n?`≥ ${e.minimum}`:`≤ ${e.maximum}`}),x=y(()=>mt(t.item)&&V(_)!==null),S=y(()=>dt(t.item)?t.item.config:void 0),C=y(()=>t.dynamicOptions&&Object.keys(t.dynamicOptions).length>0?t.dynamicOptions:Object.fromEntries(Object.entries(V(S)?.defaultOptions??{}).filter(e=>e[1]!==void 0))),w=y(()=>Object.keys(V(C)).length>0),k=y(()=>({options:V(C),displayAs:V(S)?.displayAs??`dropdown`})),A=y(()=>dt(t.item)&&!V(w)&&(V(S)?.emptyBehavior??`hide`)===`hide`),j=0;ce(()=>{if(!dt(t.item)||!V(w))return;let e=new Set(Object.values(V(C))),n=Object.values(V(C))[0];if(Array.isArray(a())?a().length>0&&a().every(t=>typeof t==`string`&&e.has(t)):typeof a()==`string`&&a()!==``&&e.has(a())){j=0;return}if(j>=3){console.warn(`[InputControl] dynamic value list "${t.item.paramId}": options keep invalidating the auto-picked selection (${j} consecutive system picks) — the definition's options likely depend on the selection. Stopping auto-reconciliation to avoid a solve loop.`);return}if(Array.isArray(a())){let r=a().filter(t=>typeof t==`string`&&e.has(t));(r.length!==a().length||a().length===0)&&(j++,t.onChange(t.item.paramId,r.length>0?r:[n],!0))}else(typeof a()!=`string`||a()===``||!e.has(a()))&&(j++,t.onChange(t.item.paramId,n,!0))});function M(e){j=0,a(e),t.onChange(t.item.paramId,e)}var F=U(),L=K(F),ee=e=>{var n=U(),r=K(n),o=e=>{var n=kA(),r=N(n);i(r);var o=I(r,2);g(o,()=>({inputId:t.item.paramId,displayName:V(p),value:a(),onValueChange:M})),O(n),h(e,n)};D(r,e=>{g&&e(o)}),h(e,n)},R=e=>{var o=kA(),c=N(o),l=e=>{i(e,()=>V(f))},d=y(()=>!vt(t.item));D(c,e=>{V(d)&&e(l)});var p=I(c,2),m=e=>{let n=y(()=>t.item.config);{let t=y(()=>typeof a()==`number`?a():void 0);bA(e,{get inputId(){return V(f)},get labelId(){return`${V(f)??``}-label`},get value(){return V(t)},get config(){return V(n)},onChange:M,get disabled(){return s()}})}},g=y(()=>mt(t.item)),_=e=>{{let t=y(()=>typeof a()==`boolean`?a():void 0);Qk(e,{get inputId(){return V(f)},get value(){return V(t)},onChange:M,get disabled(){return s()},children:(e,t)=>{var i=AA(),a=K(i);n(a,()=>V(f),()=>`strong`);var o=I(a,2);r(o),h(e,i)},$$slots:{default:!0}})}},v=y(()=>vt(t.item)),b=e=>{let n=y(()=>t.item.config);{let t=y(()=>typeof a()==`string`?a():``);SA(e,{get inputId(){return V(f)},get value(){return V(t)},get config(){return V(n)},onChange:M,get disabled(){return s()}})}},x=y(()=>_t(t.item)),S=e=>{let n=y(()=>t.item.config);var r=U(),i=K(r),o=e=>{{let t=y(()=>Array.isArray(a())?a():typeof a()==`string`&&a()?[a()]:[]);tA(e,{get inputId(){return V(f)},get value(){return V(t)},get config(){return V(n)},onChange:M,get disabled(){return s()}})}},c=e=>{{let t=y(()=>typeof a()==`string`?a():``);aA(e,{get value(){return V(t)},get config(){return V(n)},onChange:M,get disabled(){return s()}})}};D(i,e=>{V(n).displayAs===`checklist`?e(o):e(c,-1)}),h(e,r)},C=y(()=>gt(t.item)),E=e=>{var t=U(),n=K(t),r=e=>{var t=U(),n=K(t),r=e=>{{let t=y(()=>Array.isArray(a())?a():typeof a()==`string`&&a()?[a()]:[]);tA(e,{get inputId(){return V(f)},get value(){return V(t)},get config(){return V(k)},onChange:M,get disabled(){return s()}})}},i=e=>{{let t=y(()=>typeof a()==`string`?a():``);aA(e,{get value(){return V(t)},get config(){return V(k)},onChange:M,get disabled(){return s()}})}};D(n,e=>{V(k).displayAs===`checklist`?e(r):e(i,-1)}),h(e,t)},i=e=>{var t=jA(),n=q(t,!0);z(()=>T(n,u.messages.noOptionsYet)),h(e,t)};D(n,e=>{V(w)?e(r):e(i,-1)}),h(e,t)},A=y(()=>dt(t.item)),j=e=>{let n=y(()=>t.item.config);{let t=y(()=>typeof a()==`string`?a():``),r=y(()=>V(n)?.acceptedFormats??[]),i=y(()=>V(n)?.defaultInputMode),o=y(()=>V(n)?.allowedInputModes);gA(e,{get value(){return V(t)},get acceptedFormats(){return V(r)},onChange:e=>M(e),get defaultInputMode(){return V(i)},get allowedInputModes(){return V(o)}})}},P=y(()=>st(t.item)),F=e=>{{let t=y(()=>typeof a()==`string`?a():`#000000`);rA(e,{get inputId(){return V(f)},get value(){return V(t)},onChange:e=>M(e)})}},L=y(()=>pt(t.item));D(p,e=>{V(g)?e(m):V(v)?e(_,1):V(x)?e(b,2):V(C)?e(S,3):V(A)?e(E,4):V(P)?e(j,5):V(L)&&e(F,6)}),O(o),h(e,o)};D(L,e=>{V(m)?e(ee):V(A)||e(R,1)}),h(e,F),b()}var NA=new Map;function PA(e,t){if(NA.has(e))return NA.get(e);if(document.querySelector(`script[src="${e}"]`)){let t=Promise.resolve();return NA.set(e,t),t}let n=new Promise((n,r)=>{let i=document.createElement(`script`);i.src=e,t?.crossOrigin&&(i.crossOrigin=t.crossOrigin),t?.integrity&&(i.integrity=t.integrity),t?.async!==void 0&&(i.async=t.async),t?.defer!==void 0&&(i.defer=t.defer),i.onload=()=>n(),i.onerror=()=>{NA.delete(e),r(Error(`Failed to load script: ${e}`))},document.head.appendChild(i)});return NA.set(e,n),n}var FA=m(`<div class="px-4 py-3 text-sm text-destructive"> </div>`),IA=m(`<div class="px-4 py-8 text-sm text-center text-muted-foreground"> </div>`),LA=m(`<div class="rounded p-1.5 backdrop-blur-sm flex items-center border border-border bg-background/80 text-muted-foreground"><!></div>`),RA=m(`<div></div> <div><!> <button class="rounded p-1.5 backdrop-blur-sm flex items-center border border-border bg-background/80 text-foreground transition-colors hover:bg-background disabled:cursor-not-allowed disabled:opacity-50"><!></button></div>`,1),zA=m(`<div><!></div>`);function BA(t,n){l(n,!0);let r=Je(),a=y(()=>r.messages),o=new Set([`scattermap`,`scattermapbox`,`choropleth`,`scattergeo`]),s=y(()=>{if(!n.value)return null;try{return JSON.parse(n.value)}catch{return null}}),c=w(null),u=w(null),d=w(!1),f=w(null),p=w(!1),m=!1;async function g(){return window.Plotly||await PA(`https://cdn.plot.ly/plotly-3.4.0.min.js`,{crossOrigin:`anonymous`,integrity:`sha384-pFOQ7loGBChmUyS4Tszy+he8OWeYkwTFjc2xii4aJUWWiGwf2u2OEc04T5iDRpMp`}),window.Plotly}function _(){V(u)&&(document.fullscreenElement?document.exitFullscreen().catch(e=>{i(f,Ge(V(a).exitFullscreenFailed,{error:e.message}),!0)}):V(u).requestFullscreen().catch(e=>{i(f,Ge(V(a).fullscreenUnavailable,{error:e.message}),!0)}))}ce(()=>{function e(){i(p,!!document.fullscreenElement),Promise.resolve().then(()=>{V(c)&&window.Plotly&&window.Plotly.Plots.resize(V(c))})}return document.addEventListener(`fullscreenchange`,e),()=>document.removeEventListener(`fullscreenchange`,e)});function x(){if(!V(c))return{textColor:`#333`,gridColor:`#eee`};let e=getComputedStyle(V(c));return{textColor:e.getPropertyValue(`color`).trim()||`#333`,gridColor:e.getPropertyValue(`--border`)?.trim()||e.getPropertyValue(`--color-border`)?.trim()||`rgba(128,128,128,0.2)`}}async function S(){if(V(c)&&V(s)){i(f,null),i(d,!0);try{let e=await g(),{textColor:t,gridColor:n}=x(),r=V(s).data?.some(e=>o.has(e.type)),{title:i,template:a,height:l,width:u,...d}=V(s).layout,f={...d,autosize:!0,margin:{t:24,r:8,b:40,l:60,pad:0},font:{color:t},paper_bgcolor:d.paper_bgcolor??`transparent`,plot_bgcolor:d.plot_bgcolor??`transparent`,...!r&&d.xaxis?{xaxis:{...d.xaxis,gridcolor:n,color:t}}:{},...!r&&d.yaxis?{yaxis:{...d.yaxis,gridcolor:n,color:t}}:{}};e.react(V(c),V(s).data,f,{responsive:!0,displayModeBar:`hover`,displaylogo:!1,modeBarButtonsToRemove:[`sendDataToCloud`,`lasso2d`,`select2d`],...V(s).config})}catch(e){i(f,e instanceof Error?e.message:V(a).chartRenderFailed,!0)}finally{i(d,!1)}}}le(()=>{m=!0;let e=null,t=new ResizeObserver(()=>{e&&clearTimeout(e),e=setTimeout(()=>{V(c)&&window.Plotly&&window.Plotly.Plots.resize(V(c)),e=null},150)});return V(u)&&t.observe(V(u)),()=>{t.disconnect(),e&&clearTimeout(e),V(c)&&window.Plotly&&window.Plotly.purge(V(c))}});let C=null;ce(()=>{if(n.value&&m&&V(c))return C&&clearTimeout(C),C=setTimeout(()=>{S(),C=null},150),()=>{C&&clearTimeout(C)}});var E=zA(),k=N(E),A=e=>{var t=FA(),n=q(t,!0);z(()=>T(n,V(f))),h(e,t)},j=e=>{var t=IA(),n=q(t,!0);z(()=>T(n,V(a).chartReceiving)),h(e,t)},M=t=>{var n=RA(),r=K(n);L(r,e=>i(c,e),()=>V(c));var o=I(r,2),s=N(o),l=e=>{var t=LA();lr(N(t),{size:14,class:`animate-spin`}),O(t),h(e,t)};D(s,e=>{V(d)&&e(l)});var u=I(s,2),f=N(u),m=e=>{pr(e,{size:14})},g=e=>{dr(e,{size:14})};D(f,e=>{V(p)?e(m):e(g,-1)}),O(u),O(o),z(()=>{v(r,1,`w-full ${V(p)?`h-screen`:`h-95`}`),v(o,1,`gap-1 left-2 top-2 absolute z-10 flex items-center opacity-0 transition-opacity group-hover:opacity-100 focus-within:opacity-100 ${V(p)?`opacity-100`:``}`),u.disabled=V(d),F(u,`title`,V(p)?V(a).exitFullscreen:V(a).fullscreen),F(u,`aria-label`,V(p)?V(a).exitFullscreen:V(a).fullscreen)}),e(`click`,u,_),h(t,n)};D(k,e=>{V(f)?e(A):V(s)?e(M,-1):e(j,1)}),O(E),L(E,e=>i(u,e),()=>V(u)),z(()=>v(E,1,`group rounded relative overflow-hidden border border-border ${V(p)?`bg-background`:``}`)),h(t,E),b()}x([`click`]);var VA=m(`<div class="px-4 py-3 text-sm text-destructive"> </div>`),HA=m(`<div class="inset-0 text-sm absolute flex items-center justify-center text-destructive"> </div>`),UA=m(`<div class="inset-0 gap-2 text-sm absolute flex items-center justify-center text-muted-foreground"><!> </div>`),WA=m(`<!> <img alt="" draggable="false"/>`,1),GA=m(`<button class="left-2 p-1.5 backdrop-blur-sm absolute top-1/2 -translate-y-1/2 rounded-full border border-border bg-background/80 text-foreground hover:bg-background"><!></button> <button class="right-2 p-1.5 backdrop-blur-sm absolute top-1/2 -translate-y-1/2 rounded-full border border-border bg-background/80 text-foreground hover:bg-background"><!></button>`,1),KA=m(`<button><img alt="" class="h-full w-full object-contain"/></button>`),qA=m(`<div class="gap-1.5 p-1.5 flex overflow-x-auto border-t border-border"></div>`),JA=m(`<span class="shrink-0 tabular-nums"> </span>`),YA=m(`<div class="mx-1 h-4 w-px bg-border"></div>`),XA=m(`<button><!></button>`),ZA=m(`<div role="application" tabindex="0"><!> <!> <div> </div></div> <!> <div class="gap-2 px-2 py-1 text-xs flex items-center border-t border-border"><div class="min-w-0 gap-1.5 flex flex-1 items-center text-muted-foreground"><span class="truncate text-foreground"> </span> <!></div> <div class="gap-0.5 flex shrink-0 items-center"><button><!></button> <span class="w-11 text-center text-muted-foreground tabular-nums"> </span> <button><!></button> <button><!></button> <button>1:1</button> <!> <!> <!></div></div>`,1),QA=m(`<div><!></div>`);function $A(t,n){l(n,!0);let r=Je(),o=y(()=>r.messages),s=new Set([`.png`,`.jpg`,`.jpeg`,`.webp`,`.gif`,`.svg`]),c=1.5,u=e=>(e.fileType??``).toLowerCase(),d=y(()=>Array.isArray(n.value)?n.value.filter(mk):mk(n.value)?[n.value]:[]),f=y(()=>V(d).filter(e=>s.has(u(e)))),p=y(()=>V(f).length===0?V(d)[0]:void 0),m=w(0),g=y(()=>Math.max(0,Math.min(V(m),V(f).length-1))),_=y(()=>V(f)[V(g)]??null),x=y(()=>V(_)?u(V(_))===`.svg`:!1);function C(e){let t=dk[u(e)]??`application/octet-stream`;return e.isBase64Encoded?`data:${t};base64,${e.data}`:`data:${t};utf8,${encodeURIComponent(e.data)}`}let E=y(()=>V(_)?C(V(_)):null),k=y(()=>n.item.config??{}),A=y(()=>V(k).allowDownload??!0),j=y(()=>V(k).allowFullscreen??!0),M=y(()=>V(k).backgroundColor),P=w(null),ee=w(null),te=w(!1),ne=w(!1),B=w(null),ie=w(!1),ae=w(0),H=w(0),se=w(0),le=w(0),ue=w(1),W=w(0),de=w(0),fe=w(!0),G=y(()=>V(se)>0&&V(le)>0&&V(ae)>0&&V(H)>0),pe=y(()=>V(G)?Math.min(V(ae)/V(se),V(H)/V(le)):1),me=y(()=>Math.min(V(pe),1)),ge=y(()=>Math.max(V(pe),1)*32),_e=y(()=>Math.round(V(ue)*100)),ve=y(()=>V(se)*V(ue)>V(ae)+1||V(le)*V(ue)>V(H)+1),ye=y(()=>!V(x)&&V(ue)>=2);function be(e,t,n){return t<=n?(n-t)/2:Math.min(0,Math.max(n-t,e))}function xe(e,t,n){i(ue,e,!0),i(W,be(t,V(se)*e,V(ae)),!0),i(de,be(n,V(le)*e,V(H)),!0)}function Se(){i(fe,!0),xe(V(pe),0,0)}function Ce(e,t=V(ae)/2,n=V(H)/2){let r=Math.min(V(ge),Math.max(V(me),e)),a=r/V(ue);i(fe,Math.abs(r-V(pe))<.001),xe(r,t-(t-V(W))*a,n-(n-V(de))*a)}ce(()=>{if(!V(ee))return;let e=new ResizeObserver(([e])=>{i(ae,e.contentRect.width,!0),i(H,e.contentRect.height,!0),V(fe)?Se():xe(Math.max(V(ue),V(me)),V(W),V(de))});return e.observe(V(ee)),()=>e.disconnect()});function we(e){let t=e.currentTarget;i(ie,!1);let n=t.naturalWidth||300,r=t.naturalHeight||150,a=n===V(se)&&r===V(le);i(se,n,!0),i(le,r,!0),(!a||V(fe))&&Se()}let Te={},J=()=>Object.values(Te),Ee=w(!1),De=0;function Oe(e){let t=V(ee).getBoundingClientRect();return{x:e.clientX-t.left,y:e.clientY-t.top}}function ke(e){if(e.button!==0||e.target.closest(`button`))return;V(ee)?.setPointerCapture(e.pointerId),Te[e.pointerId]=Oe(e);let t=J().length;if(i(Ee,t===1&&V(ve),!0),t===2){let[e,t]=J();De=Math.hypot(e.x-t.x,e.y-t.y)}}function Ae(e){let t=Te[e.pointerId];if(!t)return;let n=Oe(e);if(Te[e.pointerId]=n,J().length===2){let[e,t]=J(),n=Math.hypot(e.x-t.x,e.y-t.y);De>0&&Ce(V(ue)*(n/De),(e.x+t.x)/2,(e.y+t.y)/2),De=n}else V(Ee)&&(i(fe,!1),xe(V(ue),V(W)+n.x-t.x,V(de)+n.y-t.y))}function je(e){delete Te[e.pointerId];let t=J().length;t<2&&(De=0),t===0&&i(Ee,!1)}function Me(e){if(!V(fe))return Se();let t=Oe(e);Ce(V(pe)<.8?1:V(pe)*3,t.x,t.y)}let Ne=w(!1),Y;ce(()=>{if(!V(ee))return;let e=V(ee);function t(e){if(!V(G))return;if(!(e.ctrlKey||e.metaKey||V(te))){i(Ne,!0),clearTimeout(Y),Y=setTimeout(()=>i(Ne,!1),1200);return}e.preventDefault(),i(Ne,!1);let t=e.deltaMode===1?e.deltaY*16:e.deltaY,n=Oe(e);Ce(V(ue)*Math.exp(-t*.002),n.x,n.y)}return e.addEventListener(`wheel`,t,{passive:!1}),()=>{e.removeEventListener(`wheel`,t),clearTimeout(Y)}});function Pe(e){let t={"+":()=>Ce(V(ue)*c),"=":()=>Ce(V(ue)*c),"-":()=>Ce(V(ue)/c),0:Se,1:()=>Ce(1),ArrowLeft:()=>Fe(-1),ArrowRight:()=>Fe(1)};V(j)&&(t.f=Le);let n=t[e.key];n&&(e.preventDefault(),n())}function Fe(e){V(f).length<2||Ie((V(g)+e+V(f).length)%V(f).length)}function Ie(e){e!==V(g)&&(i(m,e,!0),i(se,0),i(le,0),i(fe,!0))}function Le(){V(P)&&(document.fullscreenElement?document.exitFullscreen().catch(e=>{i(B,Ge(V(o).exitFullscreenFailed,{error:e.message}),!0)}):V(P).requestFullscreen().catch(e=>{i(B,Ge(V(o).fullscreenUnavailable,{error:e.message}),!0)}))}ce(()=>{function e(){i(te,document.fullscreenElement===V(P))}return document.addEventListener(`fullscreenchange`,e),()=>document.removeEventListener(`fullscreenchange`,e)});async function Re(){if(V(_)){i(ne,!0),i(B,null);try{await pk(V(_),V(_).fileName)}catch(e){i(B,e instanceof Error?e.message:V(o).downloadFailed,!0)}finally{i(ne,!1)}}}let ze=`flex h-7 min-w-7 items-center justify-center rounded px-1.5 text-muted-foreground transition-colors hover:bg-accent hover:text-foreground disabled:pointer-events-none disabled:opacity-40`;var Be=U(),Ve=K(Be),He=t=>{var r=QA(),l=N(r),d=e=>{var t=VA(),n=q(t,!0);z(()=>T(n,V(B))),h(e,t)},m=e=>{var t=VA(),n=q(t,!0);z(e=>T(n,e),[()=>Ge(V(o).imageUnsupported,{ext:u(V(p))||V(o).imageUnknownFormat,formats:[...s].join(`, `)})]),h(e,t)},y=t=>{var r=ZA(),s=K(r);let l;var u=N(s),d=e=>{var t=HA(),n=q(t,!0);z(e=>T(n,e),[()=>Ge(V(o).imageDecodeFailed,{file:`${V(_).fileName}${V(_).fileType}`})]),h(e,t)},p=e=>{var t=WA(),n=K(t),r=e=>{var t=UA(),n=N(t);sr(n,{size:16,class:`animate-spin`});var r=I(n);O(t),z(()=>T(r,` ${V(o).imageLoading??``}`)),h(e,t)};D(n,e=>{V(G)||e(r)});var s=I(n,2);let c;z(()=>{F(s,`src`,V(E)),v(s,1,`absolute top-(--img-y) left-(--img-x) h-(--img-h) w-(--img-w) max-w-none
5597
- ${V(ye)?`pixelated`:``}
5598
- ${V(G)?``:`invisible`}`,`svelte-n94kuu`),c=a(s,``,c,{"--img-x":`${V(W)??``}px`,"--img-y":`${V(de)??``}px`,"--img-w":`${V(se)*V(ue)}px`,"--img-h":`${V(le)*V(ue)}px`})}),R(`load`,s,we),R(`error`,s,()=>i(ie,!0)),oe(s),h(e,t)};D(u,e=>{V(ie)?e(d):e(p,-1)});var m=I(u,2),y=t=>{var n=GA(),r=K(n),i=N(r);nt(i,{size:16}),O(r);var a=I(r,2),s=N(a);rt(s,{size:16}),O(a),z(()=>{F(r,`title`,`${V(o).previousImage??``} (←)`),F(r,`aria-label`,V(o).previousImage),F(a,`title`,`${V(o).nextImage??``} (→)`),F(a,`aria-label`,V(o).nextImage)}),e(`click`,r,()=>Fe(-1)),e(`click`,a,()=>Fe(1)),h(t,n)};D(m,e=>{V(f).length>1&&e(y)});var b=I(m,2),x=q(b,!0);O(s),L(s,e=>i(ee,e),()=>V(ee));var w=I(s,2),k=t=>{var n=qA();S(n,21,()=>V(f),he,(t,n,r)=>{var i=KA(),a=q(i);z(e=>{F(i,`title`,`${V(n).fileName??``}${V(n).fileType??``}`),v(i,1,`h-12 w-16 rounded shrink-0 overflow-hidden border-2 bg-muted transition-colors ${r===V(g)?`border-primary`:`border-transparent opacity-70 hover:opacity-100`}`),F(a,`src`,e)},[()=>C(V(n))]),e(`click`,i,()=>Ie(r)),h(t,i)}),O(n),h(t,n)};D(w,e=>{V(f).length>1&&e(k)});var P=I(w,2),B=N(P),ae=N(B),H=q(ae),ce=I(ae,2),U=e=>{var t=JA(),n=q(t);z(()=>T(n,`${V(se)??``}×${V(le)??``}`)),h(e,t)};D(ce,e=>{V(G)&&e(U)}),O(B);var pe=I(B,2),be=N(pe);v(be,1,re(ze),`svelte-n94kuu`),jr(N(be),{size:14}),O(be);var xe=I(be,2),Te=q(xe),J=I(xe,2);v(J,1,re(ze),`svelte-n94kuu`),kr(N(J),{size:14}),O(J);var De=I(J,2);v(De,1,re(ze),`svelte-n94kuu`),yr(N(De),{size:14}),O(De);var Oe=I(De,2);v(Oe,1,`flex h-7 min-w-7 items-center justify-center rounded px-1.5 text-muted-foreground transition-colors hover:bg-accent hover:text-foreground disabled:pointer-events-none disabled:opacity-40 font-medium tabular-nums svelte-n94kuu`);var Y=I(Oe,2),Be=e=>{var t=YA();h(e,t)};D(Y,e=>{(V(A)||V(j))&&e(Be)});var Ve=I(Y,2),He=t=>{var n=XA();v(n,1,re(ze),`svelte-n94kuu`),Vn(N(n),{size:14}),O(n),z(()=>{n.disabled=V(ne),F(n,`title`,V(o).downloadImage),F(n,`aria-label`,V(o).downloadImage)}),e(`click`,n,Re),h(t,n)};D(Ve,e=>{V(A)&&e(He)});var Ue=I(Ve,2),We=t=>{var n=XA();v(n,1,re(ze),`svelte-n94kuu`);var r=N(n),i=e=>{pr(e,{size:14})},a=e=>{dr(e,{size:14})};D(r,e=>{V(te)?e(i):e(a,-1)}),O(n),z(()=>{F(n,`title`,`${(V(te)?V(o).exitFullscreen:V(o).fullscreen)??``} (F)`),F(n,`aria-label`,V(te)?V(o).exitFullscreen:V(o).fullscreen)}),e(`click`,n,Le),h(t,n)};D(Ue,e=>{V(j)&&e(We)}),O(pe),O(P),z(e=>{F(s,`aria-roledescription`,V(o).imageViewer),F(s,`aria-label`,n.item.displayName??V(_).fileName),v(s,1,`relative w-full overflow-hidden outline-none select-none focus-visible:ring-2 focus-visible:ring-ring
5596
+ ${V(i)?`opacity-40`:``}`,`svelte-vc2vi3`),F(l,`title`,V(i)?V(o).showObject:V(o).hideObject),F(l,`aria-label`,V(i)?V(o).showObject:V(o).hideObject),v(g,1,`min-w-0 text-xs flex-1 truncate ${V(i)?`text-muted-foreground line-through`:`text-foreground/80`}`),T(_,V(n).label),T(x,e)},[()=>qT(V(n).object)]),e(`mousedown`,c,e=>{e.stopPropagation(),e.shiftKey&&e.preventDefault()}),e(`click`,c,e=>oe(V(n).key,e)),e(`keydown`,c,e=>e.key===`Enter`&&oe(V(n).key,e)),e(`click`,l,e=>{e.stopPropagation(),u(V(n))}),h(t,s)};D(l,e=>{V(r).kind===`layer`?e(d):e(m,-1)}),O(i),z(()=>s=a(i,``,s,{"--row-top":`${V(r).top??``}px`,"--row-h":`${V(r).height??``}px`})),h(t,i)}),O(me);var ge=I(me,2),_e=e=>{var t=pE(),n=N(t);Un(n,{class:`mb-2 h-5 w-5 text-muted-foreground/30`});var r=I(n,2),i=J(r,!0);O(t),z(()=>T(i,V(o).noObjects)),h(e,t)},ve=e=>{var t=pE(),n=N(t);St(n,{class:`mb-2 h-5 w-5 text-muted-foreground/30`});var r=I(n,2),i=J(r,!0);O(t),z(e=>T(i,e),[()=>V(o).noResultsFor.replace(`{query}`,V(m))]),h(e,t)};D(ge,e=>{V(x).length===0?e(_e):V(C).size===0&&e(ve,1)}),O(fe),O(H),z(()=>{F(le,`placeholder`,V(o).searchObjects),F(de,`title`,V(A)?V(o).expandAll:V(o).collapseAll),F(de,`aria-label`,V(A)?V(o).expandAll:V(o).collapseAll),he=a(me,``,he,{"--list-h":`${V(M)??``}px`})}),e(`mousedown`,H,()=>n.outliner.selection.clear()),ne(le,()=>V(m),e=>i(m,e)),e(`click`,de,()=>V(A)?k():E()),R(`scroll`,fe,e=>i(L,e.currentTarget.scrollTop,!0)),te(fe,`clientHeight`,e=>i(ee,e)),h(t,H),b()}x([`mousedown`,`click`,`keydown`]);var gE=m(`<p class="px-4 py-3 text-xs text-muted-foreground"> </p>`),_E=m(`<div class="gap-2 flex"><span class="shrink-0 text-muted-foreground"> </span> <span> </span></div>`),vE=m(`<div class="space-y-0.5"></div>`),yE=m(`<div> </div>`),bE=m(`<div class="space-y-1 text-left"></div>`),xE=m(`<div class="space-y-0.5 text-left"></div>`),SE=m(`<span class="font-mono"> </span>`),CE=m(`<span> </span>`),wE=m(`<span class="break-all"> </span>`),TE=m(`<tr class="border-b border-border/60 last:border-b-0"><th scope="row" class="px-4 py-2 font-normal text-left align-top whitespace-nowrap text-muted-foreground"> </th><td class="px-4 py-2 text-right align-top text-foreground"><!></td></tr>`),EE=m(`<table class="text-xs w-full border-collapse"><tbody></tbody></table>`),DE=m(`<section><header class="gap-2 py-1 pr-1 pl-4 flex items-center border-b"><h2 class="text-sm font-semibold min-w-0 flex-1 truncate"> </h2> <!></header> <div class="min-h-0 overflow-y-auto overscroll-contain"><!></div></section>`);function OE(e,t){l(t,!0);let n=Je(),r=y(()=>n.messages),i=new Set([`name`,`layer`,`id`]),a=P(t,`class`,3,``),o=y(()=>{let e={};for(let[n,r]of Object.entries(t.metadata))i.has(n)||(n===`metadata`&&typeof r==`object`&&r&&!Array.isArray(r)?Object.assign(e,r):e[n]=r);return e});var s=DE(),c=N(s),u=N(c),d=J(u,!0),f=I(u,2);We(f,{variant:`ghost`,size:`icon-sm`,class:`pointer-coarse:size-10 shrink-0`,get"aria-label"(){return V(r).close},get title(){return V(r).close},get onclick(){return t.onClose},children:(e,t)=>{wt(e,{})},$$slots:{default:!0}}),O(c);var p=I(c,2),m=N(p),g=e=>{var t=gE(),n=J(t,!0);z(()=>T(n,V(r).noMetadata)),h(e,t)},_=y(()=>Object.keys(V(o)).length===0),x=e=>{var t=EE(),n=N(t);S(n,21,()=>Object.entries(V(o)),([e,t])=>e,(e,t)=>{var n=y(()=>k(V(t),2));let r=()=>V(n)[0],i=()=>V(n)[1];var a=TE(),o=N(a),s=J(o,!0),c=I(o),l=N(c),u=e=>{var t=U(),n=q(t),r=e=>{var t=bE();S(t,21,i,me,(e,t)=>{var n=U(),r=q(n),i=e=>{var n=vE();S(n,21,()=>Object.entries(V(t)),([e,t])=>e,(e,t)=>{var n=y(()=>k(V(t),2));let r=()=>V(n)[0],i=()=>V(n)[1];var a=_E(),o=N(a),s=J(o),c=I(o,2),l=J(c,!0);O(a),z(()=>{T(s,`${r()??``}:`),T(l,i())}),h(e,a)}),O(n),h(e,n)},a=e=>{var n=yE(),r=J(n,!0);z(()=>T(r,V(t))),h(e,n)};D(r,e=>{typeof V(t)==`object`?e(i):e(a,-1)}),h(e,n)}),O(t),h(e,t)},a=y(()=>Array.isArray(i())),o=e=>{var t=xE();S(t,21,()=>Object.entries(i()),([e,t])=>e,(e,t)=>{var n=y(()=>k(V(t),2));let r=()=>V(n)[0],i=()=>V(n)[1];var a=_E(),o=N(a),s=J(o),c=I(o,2),l=J(c,!0);O(a),z(()=>{T(s,`${r()??``}:`),T(l,i())}),h(e,a)}),O(t),h(e,t)};D(n,e=>{V(a)?e(r):e(o,-1)}),h(e,t)},d=e=>{var t=SE(),n=J(t,!0);z(()=>T(n,i())),h(e,t)},f=e=>{var t=CE(),n=J(t,!0);z(()=>{v(t,1,re(i()?`text-success`:`text-muted-foreground`)),T(n,i()?`true`:`false`)}),h(e,t)},p=e=>{var t=wE(),n=J(t,!0);z(()=>T(n,i())),h(e,t)};D(l,e=>{typeof i()==`object`&&i()!==null?e(u):typeof i()==`number`?e(d,1):typeof i()==`boolean`?e(f,2):e(p,-1)}),O(c),O(a),z(()=>T(s,r())),h(e,a)}),O(n),O(t),h(e,t)};D(m,e=>{V(_)?e(g):e(x,-1)}),O(p),O(s),z(()=>{F(s,`aria-label`,t.meshName??V(r).objectFallbackName),v(s,1,`min-h-0 shadow-lg backdrop-blur-sm flex flex-col overflow-hidden rounded-lg border bg-background/95 ${a()??``}`),T(d,t.meshName??V(r).objectFallbackName)}),h(e,s),b()}var kE=m(`<div class="inset-0 animate-in fade-in backdrop-blur-xs absolute z-10 duration-200"></div>`),AE=m(`<div><img alt="" class="h-10 max-w-40 drop-shadow-sm sm:h-14 sm:max-w-56 w-auto object-contain opacity-80"/></div>`),jE=m(`<!> `,1),ME=m(`<!> <!>`,1),NE=m(`<!> <!> <!>`,1),PE=m(`<!> <!> <!> <!> <!> <!> <!> <!> <!> <!>`,1),FE=m(`<div><!> <div class="hidden pointer-coarse:block"><!></div></div>`),IE=m(`<div class="relative h-full w-full touch-none"><canvas class="block h-full w-full" data-testid="viewer-canvas"></canvas> <div></div> <!> <!> <!> <!></div>`),LE=m(`<div><!></div>`);function RE(e,t){l(t,!0);let n={showScreenshotButton:!0,showFullscreenButton:!0,showSceneManager:!0,showToolsMenu:!0,showGridToggle:!0,showDisplayMenu:!0,enableMeshClick:!0,backgroundColor:`#E6E6E6`,showEdges:!1},a=P(t,`isFullscreen`,15,!1),o=P(t,`isSolving`,3,!1),u=P(t,`isBlurred`,3,!1),d=P(t,`drawerOpen`,3,!1),f=P(t,`viewerConfig`,19,()=>({})),p=y(()=>({...n,...f()})),m=Ke(()=>t.lang),g=y(()=>m.messages),_,x=w(null),C=null,E=null,k=null,A=null,j=null,ee=null,R=null,te=null,ne=null,B=null,re=null,ie=null,ae=null,oe=null,H=!1,se=w(0),ue=w(!1),G=w(!1),K=new be,pe=new be,me=new be,he=w(null),ge=w(`perspective`),_e=w(!1),ve=w(!1),ye=w(`technical`),xe=w(fe(de(()=>f().showEdges)??n.showEdges)),Se=w(null),Ce=w(null),we=y(()=>({technical:V(g).lookTechnical,studio:V(g).lookStudio,showcase:V(g).lookShowcase,arctic:V(g).lookArctic,xray:V(g).lookXray,lineart:V(g).lookLineart,wireframe:V(g).lookWireframe})),Te=y(()=>PC.map(e=>({look:e,label:V(we)[e]??e.charAt(0).toUpperCase()+e.slice(1)}))),Ee=[{preset:`top`,label:()=>V(g).viewTop},{preset:`front`,label:()=>V(g).viewFront},{preset:`right`,label:()=>V(g).viewRight},{preset:`back`,label:()=>V(g).viewBack},{preset:`left`,label:()=>V(g).viewLeft},{preset:`bottom`,label:()=>V(g).viewBottom},{preset:`iso`,label:()=>V(g).viewIso}];ce(()=>{if(d())i(ue,!0);else{let e=setTimeout(()=>{i(ue,!1)},iu.TIMEOUTS.DRAWER_ANIMATION_MS);return()=>clearTimeout(e)}}),le(()=>{if(!_)return;let e={look:V(ye),environment:{backgroundColor:V(p).backgroundColor},grid:{enabled:V(p).showToolsMenu&&V(p).showGridToggle},measure:{enabled:V(p).showToolsMenu},events:{onObjectSelected:Fe,onBackgroundClicked:Fe,onMeshMetadataClicked:V(p).enableMeshClick?e=>{Re(e)&&(i(Se,e,!0),i(Ce,String(e?.name??``)||V(g).objectFallbackName,!0))}:void 0}},n=VT(_,e);i(x,n.scene,!0),i(he,cE(n.scene,{sets:{hidden:K,selected:pe,collapsed:me}}),!0),C=n.camera,E=n.controls,k=n.cameraController,A=n.measureTool,j=n.grid,j?.setVisible(V(ve)),ee=n.applyEdges,R=n.clearEdges,te=n.invalidate,ne=n.captureImage,B=n.setLook,re=n.updateGridScale,ie=n.updateShadowBounds,ae=n.fitToView,oe=n.clearSelection,i(ge,n.cameraController.getProjection(),!0);let r=n.renderer,a=de(()=>t.onViewerReady?.(n));return()=>{a?.(),n.dispose(),r.forceContextLoss()}});function De(){k&&i(ge,k.toggleProjection(),!0)}function Oe(e){k?.setView(e)}function ke(){A&&(i(_e,!V(_e)),A.setEnabled(V(_e)))}function Ae(){j&&(i(ve,!V(ve)),j.setVisible(V(ve)),te?.())}let je=null;function Me(e){if(!B||e===V(ye))return;let t=Ox[V(ye)].requiresEdges===!0;i(ye,e,!0),B(e),Ox[e].requiresEdges?(t||(je=V(xe)),V(xe)?!t&&V(x)&&R?.(V(x)):i(xe,!0),Y()):t&&je!==null?(i(xe,je,!0),V(xe)&&V(x)&&R?.(V(x)),Y(),je=null):V(xe)&&V(x)&&(R?.(V(x)),Y())}function Ne(){return Ox[V(ye)].requiresEdges?{distanceFade:!1,maxOverlays:2e4,color:1711393}:void 0}function Y(){V(x)&&(V(xe)?ee?.(V(x),Ne()):R?.(V(x)))}function Pe(){i(xe,!V(xe)),Ox[V(ye)].requiresEdges&&(je=null),Y()}ce(()=>{V(x)&&C&&E&&(QC(V(x),t.meshes,C,E,H),de(()=>{B?.(V(ye)),V(xe)&&ee?.(V(x),Ne()),re?.(),ie?.(),V(he)?.applyTo(),s(se),te?.()}),!H&&t.meshes.length>0&&(H=!0))});function Fe(){i(Se,null),i(Ce,null)}function Ie(){Fe(),oe?.(),te?.()}ce(()=>{t.meshes,de(Fe)}),ce(()=>(document.body.toggleAttribute(`data-viewer-fullscreen`,a()),()=>document.body.removeAttribute(`data-viewer-fullscreen`)));function Le(){a(!a())}function Re(e){if(!e)return!1;if(e.metadata&&typeof e.metadata==`object`){let t=e.metadata;return Object.keys(t).length>0}let t=new Set([`name`,`layer`,`id`,`vertexCount`,`faceCount`,`vertexOffset`,`faceOffset`]);return Object.entries(e).filter(([e])=>!t.has(e)).length>0}async function ze(){let e=await ne?.();if(!e)return;let t=URL.createObjectURL(e),n=document.createElement(`a`),r=new Date().toISOString().slice(0,19).replace(/:/g,`-`);n.href=t,n.download=`viewer-${r}.png`,document.body.appendChild(n),n.click(),document.body.removeChild(n),URL.revokeObjectURL(t)}var Be=LE(),Ve=N(Be);c(Ve,()=>Ql,(e,n)=>{n(e,{direction:`horizontal`,class:`h-full w-full`,children:(e,n)=>{var s=ME(),l=q(s);{let e=y(()=>V(G)?85:100);c(l,()=>Wl,(n,s)=>{s(n,{id:`viewport`,order:1,get defaultSize(){return V(e)},minSize:40,children:(e,n)=>{var s=IE(),l=N(s);L(l,e=>_=e,()=>_);var d=I(l,2),f=I(d,2),m=e=>{var t=kE();h(e,t)};D(f,e=>{o()&&e(m)});var y=I(f,2),b=e=>{var n=AE(),r=J(n);z(()=>{v(n,1,`right-4 bottom-4 pointer-events-none absolute z-20 ${V(ue)?`opacity-0`:``}`),F(r,`src`,t.logoUrl)}),h(e,n)};D(y,e=>{t.logoUrl&&e(b)});var x=I(y,2),C=e=>{OE(e,{get metadata(){return V(Se)},get meshName(){return V(Ce)},onClose:Ie,class:`top-3 right-3 left-3 sm:right-auto sm:max-h-2/3 sm:w-72 absolute z-30 max-h-1/2`})};D(x,e=>{V(Se)&&e(C)});var w=I(x,2),E=e=>{var t=FE(),n=N(t);c(n,()=>ks,(e,t)=>{t(e,{children:(e,t)=>{var n=ME(),o=q(n);{let e=(e,t)=>{We(e,W(()=>(t?.()).props,{variant:`outline`,size:`icon-lg`,get title(){return V(g).toolsMenu},get"aria-label"(){return V(g).toolsMenu},children:(e,t)=>{xr(e,{})},$$slots:{default:!0}}))};c(o,()=>Ds,(t,n)=>{n(t,{child:e,$$slots:{child:!0}})})}var s=I(o,2);c(s,()=>ls,(e,t)=>{t(e,{sideOffset:6,class:`min-w-44 z-10001 w-auto`,children:(e,t)=>{var n=PE(),o=q(n);c(o,()=>ds,(e,t)=>{t(e,{onSelect:De,children:(e,t)=>{var n=U(),r=q(n),i=e=>{var t=jE(),n=q(t);Tr(n,{});var r=I(n);z(()=>T(r,` ${V(g).switchToOrthographic??``}`)),h(e,t)},a=e=>{var t=jE(),n=q(t);jn(n,{});var r=I(n);z(()=>T(r,` ${V(g).switchToPerspective??``}`)),h(e,t)};D(r,e=>{V(ge)===`perspective`?e(i):e(a,-1)}),h(e,n)},$$slots:{default:!0}})});var s=I(o,2);c(s,()=>ds,(e,t)=>{t(e,{onSelect:()=>ae?.(),children:(e,t)=>{var n=jE(),r=q(n);Zn(r,{});var i=I(r);z(()=>T(i,` ${V(g).fitToView??``}`)),h(e,n)},$$slots:{default:!0}})});var l=I(s,2);c(l,()=>Ts,(e,t)=>{t(e,{children:(e,t)=>{var n=ME(),i=q(n);c(i,()=>Cs,(e,t)=>{t(e,{children:(e,t)=>{var n=jE(),r=q(n);jn(r,{});var i=I(r);z(()=>T(i,` ${V(g).views??``}`)),h(e,n)},$$slots:{default:!0}})});var a=I(i,2);c(a,()=>bs,(e,t)=>{t(e,{class:`z-10001`,children:(e,t)=>{var n=U(),i=q(n);S(i,17,()=>Ee,({preset:e,label:t})=>e,(e,t)=>{let n=()=>V(t).preset,i=()=>V(t).label;var a=U(),o=q(a);c(o,()=>ds,(e,t)=>{t(e,{onSelect:()=>Oe(n()),children:(e,t)=>{r();var n=M();z(e=>T(n,e),[()=>i()()]),h(e,n)},$$slots:{default:!0}})}),h(e,a)}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})});var u=I(l,2),d=e=>{var t=U(),n=q(t);c(n,()=>Ts,(e,t)=>{t(e,{children:(e,t)=>{var n=ME(),i=q(n);c(i,()=>Cs,(e,t)=>{t(e,{children:(e,t)=>{var n=jE(),r=q(n);hr(r,{});var i=I(r);z(()=>T(i,` ${V(g).display??``}`)),h(e,n)},$$slots:{default:!0}})});var a=I(i,2);c(a,()=>bs,(e,t)=>{t(e,{class:`min-w-40 z-10001`,children:(e,t)=>{var n=NE(),i=q(n);c(i,()=>ps,(e,t)=>{t(e,{get value(){return V(ye)},onValueChange:e=>Me(e),children:(e,t)=>{var n=U(),i=q(n);S(i,17,()=>V(Te),({look:e,label:t})=>e,(e,t)=>{let n=()=>V(t).look,i=()=>V(t).label;var a=U(),o=q(a);c(o,()=>gs,(e,t)=>{t(e,{get value(){return n()},closeOnSelect:!1,children:(e,t)=>{r();var n=M();z(()=>T(n,i())),h(e,n)},$$slots:{default:!0}})}),h(e,a)}),h(e,n)},$$slots:{default:!0}})});var a=I(i,2);c(a,()=>vs,(e,t)=>{t(e,{})});var o=I(a,2);c(o,()=>as,(e,t)=>{t(e,{get checked(){return V(xe)},onCheckedChange:Pe,children:(e,t)=>{var n=jE(),r=q(n);Cr(r,{});var i=I(r);z(()=>T(i,` ${V(g).edges??``}`)),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(u,e=>{V(p).showDisplayMenu&&e(d)});var f=I(u,2);c(f,()=>as,(e,t)=>{t(e,{get checked(){return V(_e)},onCheckedChange:ke,children:(e,t)=>{var n=jE(),r=q(n);_r(r,{});var i=I(r);z(()=>T(i,` ${V(g).measure??``}`)),h(e,n)},$$slots:{default:!0}})});var m=I(f,2),_=e=>{var t=U(),n=q(t);c(n,()=>as,(e,t)=>{t(e,{get checked(){return V(ve)},onCheckedChange:Ae,children:(e,t)=>{var n=jE(),r=q(n);$n(r,{});var i=I(r);z(()=>T(i,` ${V(g).grid??``}`)),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(m,e=>{V(p).showGridToggle&&e(_)});var v=I(m,2),y=e=>{var t=U(),n=q(t);c(n,()=>vs,(e,t)=>{t(e,{})}),h(e,t)};D(v,e=>{(V(p).showSceneManager||V(p).showScreenshotButton||V(p).showFullscreenButton)&&e(y)});var b=I(v,2),x=e=>{var t=U(),n=q(t);c(n,()=>as,(e,t)=>{t(e,{get checked(){return V(G)},onCheckedChange:()=>i(G,!V(G)),children:(e,t)=>{var n=jE(),r=q(n);rr(r,{});var i=I(r);z(()=>T(i,` ${V(g).sceneManager??``}`)),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(b,e=>{V(p).showSceneManager&&e(x)});var C=I(b,2),w=e=>{var t=U(),n=q(t);c(n,()=>ds,(e,t)=>{t(e,{onSelect:ze,children:(e,t)=>{var n=jE(),r=q(n);Nn(r,{});var i=I(r);z(()=>T(i,` ${V(g).screenshot??``}`)),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(C,e=>{V(p).showScreenshotButton&&e(w)});var E=I(C,2),O=e=>{var t=U(),n=q(t);c(n,()=>ds,(e,t)=>{t(e,{onSelect:Le,children:(e,t)=>{var n=U(),r=q(n),i=e=>{var t=jE(),n=q(t);pr(n,{});var r=I(n);z(()=>T(r,` ${V(g).exitFullscreen??``}`)),h(e,t)},o=e=>{var t=jE(),n=q(t);dr(n,{});var r=I(n);z(()=>T(r,` ${V(g).fullscreen??``}`)),h(e,t)};D(r,e=>{a()?e(i):e(o,-1)}),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(E,e=>{V(p).showFullscreenButton&&e(O)}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})});var o=I(n,2),s=N(o);We(s,{variant:`outline`,size:`icon-lg`,get title(){return V(g).fitToView},get"aria-label"(){return V(g).fitToView},onclick:()=>ae?.(),children:(e,t)=>{Zn(e,{})},$$slots:{default:!0}}),O(o),O(t),z(()=>v(t,1,`left-4 bottom-4 gap-2 *:shadow-lg absolute z-50 flex items-center *:rounded-md ${V(ue)?`pointer-events-none opacity-0`:``}`)),h(e,t)};D(w,e=>{V(p).showToolsMenu&&e(E)}),O(s),z(()=>{F(l,`data-mesh-count`,t.meshes.length),v(d,1,`inset-0 blur-overlay absolute z-20 ${u()?`blur-overlay-active`:`blur-overlay-inactive`}`,`svelte-13y0czs`)}),h(e,s)},$$slots:{default:!0}})})}var d=I(l,2),f=e=>{var t=ME(),n=q(t);c(n,()=>Xl,(e,t)=>{t(e,{withHandle:!0})});var r=I(n,2);c(r,()=>Wl,(e,t)=>{t(e,{id:`scene-manager`,order:2,defaultSize:15,minSize:8,maxSize:30,children:(e,t)=>{hE(e,{get outliner(){return V(he)},get sceneVersion(){return V(se)},onVisibilityChange:()=>te?.()})},$$slots:{default:!0}})}),h(e,t)};D(d,e=>{V(G)&&V(x)&&V(he)&&e(f)}),h(e,s)},$$slots:{default:!0}})}),O(Be),z(()=>v(Be,1,`min-h-64 sm:min-h-96 lg:min-h-125 relative h-full flex-1 border ${a()?`fullscreen-viewer`:`overflow-hidden rounded-lg`}`,`svelte-13y0czs`)),h(e,Be),b()}var zE=m(`<div class="bottom-6 left-6 gap-3 px-5 py-3 shadow-xl animate-in fade-in slide-in-from-left fixed z-50 flex items-center rounded-lg border border-primary/20 bg-primary text-primary-foreground duration-200"><div class="h-5 w-5 relative flex shrink-0 items-center justify-center" aria-hidden="true"><div class="animate-ping absolute h-full w-full rounded-full bg-primary-foreground opacity-30"></div> <div class="h-3 w-3 animate-spin rounded-full border-2 border-primary-foreground border-t-transparent"></div></div> <div class="leading-tight flex flex-col"><span class="text-sm font-semibold"> </span> <span class="text-xs opacity-70"> </span></div></div>`),BE=m(`<div role="status" aria-live="polite" aria-atomic="true"><!></div>`);function VE(e,t){l(t,!0);let n=Je(),r=y(()=>n.messages);var i=BE(),a=N(i),o=e=>{var t=zE(),n=I(N(t),2),i=N(n),a=J(i,!0),o=I(i,2),s=J(o,!0);O(n),O(t),z(()=>{T(a,V(r).solving),T(s,V(r).solvingSubtitle)}),h(e,t)};D(a,e=>{t.show&&e(o)}),O(i),h(e,i),b()}var HE=/^[a-z0-9]+(-[a-z0-9]+)*$/,UE=(e,t,n,r=``)=>{let i=e.split(`:`);if(e.slice(0,1)===`@`){if(i.length<2||i.length>3)return null;r=i.shift().slice(1)}if(i.length>3||!i.length)return null;if(i.length>1){let e=i.pop(),n=i.pop(),a={provider:i.length>0?i[0]:r,prefix:n,name:e};return t&&!WE(a)?null:a}let a=i[0],o=a.split(`-`);if(o.length>1){let e={provider:r,prefix:o.shift(),name:o.join(`-`)};return t&&!WE(e)?null:e}if(n&&r===``){let e={provider:r,prefix:``,name:a};return t&&!WE(e,n)?null:e}return null},WE=(e,t)=>e?!!((t&&e.prefix===``||e.prefix)&&e.name):!1;function GE(e,t){let n=e.icons,r=e.aliases||Object.create(null),i=Object.create(null);function a(e){if(n[e])return i[e]=[];if(!(e in i)){i[e]=null;let t=r[e]&&r[e].parent,n=t&&a(t);n&&(i[e]=[t].concat(n))}return i[e]}return Object.keys(n).concat(Object.keys(r)).forEach(a),i}var KE=Object.freeze({left:0,top:0,width:16,height:16}),qE=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),JE=Object.freeze({...KE,...qE}),YE=Object.freeze({...JE,body:``,hidden:!1});function XE(e,t){let n={};!e.hFlip!=!t.hFlip&&(n.hFlip=!0),!e.vFlip!=!t.vFlip&&(n.vFlip=!0);let r=((e.rotate||0)+(t.rotate||0))%4;return r&&(n.rotate=r),n}function ZE(e,t){let n=XE(e,t);for(let r in YE)r in qE?r in e&&!(r in n)&&(n[r]=qE[r]):r in t?n[r]=t[r]:r in e&&(n[r]=e[r]);return n}function QE(e,t,n){let r=e.icons,i=e.aliases||Object.create(null),a={};function o(e){a=ZE(r[e]||i[e],a)}return o(t),n.forEach(o),ZE(e,a)}function $E(e,t){let n=[];if(typeof e!=`object`||typeof e.icons!=`object`)return n;e.not_found instanceof Array&&e.not_found.forEach(e=>{t(e,null),n.push(e)});let r=GE(e);for(let i in r){let a=r[i];a&&(t(i,QE(e,i,a)),n.push(i))}return n}var eD={provider:``,aliases:{},not_found:{},...KE};function tD(e,t){for(let n in t)if(n in e&&typeof e[n]!=typeof t[n])return!1;return!0}function nD(e){if(typeof e!=`object`||!e)return null;let t=e;if(typeof t.prefix!=`string`||!e.icons||typeof e.icons!=`object`||!tD(e,eD))return null;let n=t.icons;for(let e in n){let t=n[e];if(!e||typeof t.body!=`string`||!tD(t,YE))return null}let r=t.aliases||Object.create(null);for(let e in r){let t=r[e],i=t.parent;if(!e||typeof i!=`string`||!n[i]&&!r[i]||!tD(t,YE))return null}return t}var rD=Object.create(null);function iD(e,t){return{provider:e,prefix:t,icons:Object.create(null),missing:new Set}}function aD(e,t){let n=rD[e]||(rD[e]=Object.create(null));return n[t]||(n[t]=iD(e,t))}function oD(e,t){return nD(t)?$E(t,(t,n)=>{n?e.icons[t]=n:e.missing.add(t)}):[]}function sD(e,t,n){try{if(typeof n.body==`string`)return e.icons[t]={...n},!0}catch{}return!1}var cD=!1;function lD(e){return typeof e==`boolean`&&(cD=e),cD}function uD(e){let t=typeof e==`string`?UE(e,!0,cD):e;if(t){let e=aD(t.provider,t.prefix),n=t.name;return e.icons[n]||(e.missing.has(n)?null:void 0)}}function dD(e,t){let n=UE(e,!0,cD);if(!n)return!1;let r=aD(n.provider,n.prefix);return t?sD(r,n.name,t):(r.missing.add(n.name),!0)}function fD(e,t){if(typeof e!=`object`)return!1;if(typeof t!=`string`&&(t=e.provider||``),cD&&!t&&!e.prefix){let t=!1;return nD(e)&&(e.prefix=``,$E(e,(e,n)=>{dD(e,n)&&(t=!0)})),t}let n=e.prefix;return WE({prefix:n,name:`a`})?!!oD(aD(t,n),e):!1}var pD=Object.freeze({width:null,height:null}),mD=Object.freeze({...pD,...qE}),hD=/(-?[0-9.]*[0-9]+[0-9.]*)/g,gD=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function _D(e,t,n){if(t===1)return e;if(n||=100,typeof e==`number`)return Math.ceil(e*t*n)/n;if(typeof e!=`string`)return e;let r=e.split(hD);if(r===null||!r.length)return e;let i=[],a=r.shift(),o=gD.test(a);for(;;){if(o){let e=parseFloat(a);isNaN(e)?i.push(a):i.push(Math.ceil(e*t*n)/n)}else i.push(a);if(a=r.shift(),a===void 0)return i.join(``);o=!o}}function vD(e,t=`defs`){let n=``,r=e.indexOf(`<`+t);for(;r>=0;){let i=e.indexOf(`>`,r),a=e.indexOf(`</`+t);if(i===-1||a===-1)break;let o=e.indexOf(`>`,a);if(o===-1)break;n+=e.slice(i+1,a).trim(),e=e.slice(0,r).trim()+e.slice(o+1)}return{defs:n,content:e}}function yD(e,t){return e?`<defs>`+e+`</defs>`+t:t}function bD(e,t,n){let r=vD(e);return yD(r.defs,t+r.content+n)}var xD=e=>e===`unset`||e===`undefined`||e===`none`;function SD(e,t){let n={...JE,...e},r={...mD,...t},i={left:n.left,top:n.top,width:n.width,height:n.height},a=n.body;[n,r].forEach(e=>{let t=[],n=e.hFlip,r=e.vFlip,o=e.rotate;n?r?o+=2:(t.push(`translate(`+(i.width+i.left).toString()+` `+(0-i.top).toString()+`)`),t.push(`scale(-1 1)`),i.top=i.left=0):r&&(t.push(`translate(`+(0-i.left).toString()+` `+(i.height+i.top).toString()+`)`),t.push(`scale(1 -1)`),i.top=i.left=0);let s;switch(o<0&&(o-=Math.floor(o/4)*4),o%=4,o){case 1:s=i.height/2+i.top,t.unshift(`rotate(90 `+s.toString()+` `+s.toString()+`)`);break;case 2:t.unshift(`rotate(180 `+(i.width/2+i.left).toString()+` `+(i.height/2+i.top).toString()+`)`);break;case 3:s=i.width/2+i.left,t.unshift(`rotate(-90 `+s.toString()+` `+s.toString()+`)`)}o%2==1&&(i.left!==i.top&&(s=i.left,i.left=i.top,i.top=s),i.width!==i.height&&(s=i.width,i.width=i.height,i.height=s)),t.length&&(a=bD(a,`<g transform="`+t.join(` `)+`">`,`</g>`))});let o=r.width,s=r.height,c=i.width,l=i.height,u,d;o===null?(d=s===null?`1em`:s===`auto`?l:s,u=_D(d,c/l)):(u=o===`auto`?c:o,d=s===null?_D(u,l/c):s===`auto`?l:s);let f={},p=(e,t)=>{xD(t)||(f[e]=t.toString())};p(`width`,u),p(`height`,d);let m=[i.left,i.top,c,l];return f.viewBox=m.join(` `),{attributes:f,viewBox:m,body:a}}var CD=/\sid="(\S+)"/g,wD=new Map;function TD(e){e=e.replace(/[0-9]+$/,``)||`a`;let t=wD.get(e)||0;return wD.set(e,t+1),t?`${e}${t}`:e}function ED(e){let t=[],n;for(;n=CD.exec(e);)t.push(n[1]);if(!t.length)return e;let r=`suffix`+(Math.random()*16777216|Date.now()).toString(16);return t.forEach(t=>{let n=TD(t),i=t.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`);e=e.replace(RegExp(`([#;"])(`+i+`)([")]|\\.[a-z])`,`g`),`$1`+n+r+`$3`)}),e=e.replace(new RegExp(r,`g`),``),e}var DD=Object.create(null);function OD(e,t){DD[e]=t}function kD(e){return DD[e]||DD[``]}function AD(e){let t;if(typeof e.resources==`string`)t=[e.resources];else if(t=e.resources,!(t instanceof Array)||!t.length)return null;return{resources:t,path:e.path||`/`,maxURL:e.maxURL||500,rotate:e.rotate||750,timeout:e.timeout||5e3,random:e.random===!0,index:e.index||0,dataAfterTimeout:e.dataAfterTimeout!==!1}}for(var jD=Object.create(null),MD=[`https://api.simplesvg.com`,`https://api.unisvg.com`],ND=[];MD.length>0;)MD.length===1||Math.random()>.5?ND.push(MD.shift()):ND.push(MD.pop());jD[``]=AD({resources:[`https://api.iconify.design`].concat(ND)});function PD(e,t){let n=AD(t);return n!==null&&(jD[e]=n,!0)}function FD(e){return jD[e]}var ID=(()=>{let e;try{if(e=fetch,typeof e==`function`)return e}catch{}})();function LD(e,t){let n=FD(e);if(!n)return 0;let r;if(!n.maxURL)r=0;else{let e=0;n.resources.forEach(t=>{e=Math.max(e,t.length)});let i=t+`.json?icons=`;r=n.maxURL-e-n.path.length-i.length}return r}function RD(e){return e===404}var zD=(e,t,n)=>{let r=[],i=LD(e,t),a=`icons`,o={type:a,provider:e,prefix:t,icons:[]},s=0;return n.forEach((n,c)=>{s+=n.length+1,s>=i&&c>0&&(r.push(o),o={type:a,provider:e,prefix:t,icons:[]},s=n.length),o.icons.push(n)}),r.push(o),r};function BD(e){if(typeof e==`string`){let t=FD(e);if(t)return t.path}return`/`}var VD={prepare:zD,send:(e,t,n)=>{if(!ID){n(`abort`,424);return}let r=BD(t.provider);switch(t.type){case`icons`:{let e=t.prefix,n=t.icons.join(`,`),i=new URLSearchParams({icons:n});r+=e+`.json?`+i.toString();break}case`custom`:{let e=t.uri;r+=e.slice(0,1)===`/`?e.slice(1):e;break}default:n(`abort`,400);return}let i=503;ID(e+r).then(e=>{let t=e.status;if(t!==200){setTimeout(()=>{n(RD(t)?`abort`:`next`,t)});return}return i=501,e.json()}).then(e=>{if(typeof e!=`object`||!e){setTimeout(()=>{e===404?n(`abort`,e):n(`next`,i)});return}setTimeout(()=>{n(`success`,e)})}).catch(()=>{n(`next`,i)})}};function HD(e,t){e.forEach(e=>{let n=e.loaderCallbacks;n&&(e.loaderCallbacks=n.filter(e=>e.id!==t))})}function UD(e){e.pendingCallbacksFlag||(e.pendingCallbacksFlag=!0,setTimeout(()=>{e.pendingCallbacksFlag=!1;let t=e.loaderCallbacks?e.loaderCallbacks.slice(0):[];if(!t.length)return;let n=!1,r=e.provider,i=e.prefix;t.forEach(t=>{let a=t.icons,o=a.pending.length;a.pending=a.pending.filter(t=>{if(t.prefix!==i)return!0;let o=t.name;if(e.icons[o])a.loaded.push({provider:r,prefix:i,name:o});else if(e.missing.has(o))a.missing.push({provider:r,prefix:i,name:o});else return n=!0,!0;return!1}),a.pending.length!==o&&(n||HD([e],t.id),t.callback(a.loaded.slice(0),a.missing.slice(0),a.pending.slice(0),t.abort))})}))}var WD=0;function GD(e,t,n){let r=WD++,i=HD.bind(null,n,r);if(!t.pending.length)return i;let a={id:r,icons:t,callback:e,abort:i};return n.forEach(e=>{(e.loaderCallbacks||=[]).push(a)}),i}function KD(e){let t={loaded:[],missing:[],pending:[]},n=Object.create(null);e.sort((e,t)=>e.provider===t.provider?e.prefix===t.prefix?e.name.localeCompare(t.name):e.prefix.localeCompare(t.prefix):e.provider.localeCompare(t.provider));let r={provider:``,prefix:``,name:``};return e.forEach(e=>{if(r.name===e.name&&r.prefix===e.prefix&&r.provider===e.provider)return;r=e;let i=e.provider,a=e.prefix,o=e.name,s=n[i]||(n[i]=Object.create(null)),c=s[a]||(s[a]=aD(i,a)),l;l=o in c.icons?t.loaded:a===``||c.missing.has(o)?t.missing:t.pending;let u={provider:i,prefix:a,name:o};l.push(u)}),t}function qD(e,t=!0,n=!1){let r=[];return e.forEach(e=>{let i=typeof e==`string`?UE(e,t,n):e;i&&r.push(i)}),r}var JD={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function YD(e,t,n,r){let i=e.resources.length,a=e.random?Math.floor(Math.random()*i):e.index,o;if(e.random){let t=e.resources.slice(0);for(o=[];t.length>1;){let e=Math.floor(Math.random()*t.length);o.push(t[e]),t=t.slice(0,e).concat(t.slice(e+1))}o=o.concat(t)}else o=e.resources.slice(a).concat(e.resources.slice(0,a));let s=Date.now(),c=`pending`,l=0,u,d=null,f=[],p=[];typeof r==`function`&&p.push(r);function m(){d&&=(clearTimeout(d),null)}function h(){c===`pending`&&(c=`aborted`),m(),f.forEach(e=>{e.status===`pending`&&(e.status=`aborted`)}),f=[]}function g(e,t){t&&(p=[]),typeof e==`function`&&p.push(e)}function _(){return{startTime:s,payload:t,status:c,queriesSent:l,queriesPending:f.length,subscribe:g,abort:h}}function v(){c=`failed`,p.forEach(e=>{e(void 0,u)})}function y(){f.forEach(e=>{e.status===`pending`&&(e.status=`aborted`)}),f=[]}function b(t,n,r){let i=n!==`success`;switch(f=f.filter(e=>e!==t),c){case`pending`:break;case`failed`:if(i||!e.dataAfterTimeout)return;break;default:return}if(n===`abort`){u=r,v();return}if(i){u=r,f.length||(o.length?x():v());return}if(m(),y(),!e.random){let n=e.resources.indexOf(t.resource);n!==-1&&n!==e.index&&(e.index=n)}c=`completed`,p.forEach(e=>{e(r)})}function x(){if(c!==`pending`)return;m();let r=o.shift();if(r===void 0){if(f.length){d=setTimeout(()=>{m(),c===`pending`&&(y(),v())},e.timeout);return}v();return}let i={status:`pending`,resource:r,callback:(e,t)=>{b(i,e,t)}};f.push(i),l++,d=setTimeout(x,e.rotate),n(r,t,i.callback)}return setTimeout(x),_}function XD(e){let t={...JD,...e},n=[];function r(){n=n.filter(e=>e().status===`pending`)}function i(e,i,a){let o=YD(t,e,i,(e,t)=>{r(),a&&a(e,t)});return n.push(o),o}function a(e){return n.find(t=>e(t))||null}return{query:i,find:a,setIndex:e=>{t.index=e},getIndex:()=>t.index,cleanup:r}}function ZD(){}var QD=Object.create(null);function $D(e){if(!QD[e]){let t=FD(e);if(!t)return;QD[e]={config:t,redundancy:XD(t)}}return QD[e]}function eO(e,t,n){let r,i;if(typeof e==`string`){let t=kD(e);if(!t)return n(void 0,424),ZD;i=t.send;let a=$D(e);a&&(r=a.redundancy)}else{let t=AD(e);if(t){r=XD(t);let n=kD(e.resources?e.resources[0]:``);n&&(i=n.send)}}return!r||!i?(n(void 0,424),ZD):r.query(t,i,n)().abort}function tO(){}function nO(e){e.iconsLoaderFlag||(e.iconsLoaderFlag=!0,setTimeout(()=>{e.iconsLoaderFlag=!1,UD(e)}))}function rO(e){let t=[],n=[];return e.forEach(e=>{(e.match(HE)?t:n).push(e)}),{valid:t,invalid:n}}function iO(e,t,n){function r(){let n=e.pendingIcons;t.forEach(t=>{n&&n.delete(t),e.icons[t]||e.missing.add(t)})}if(n&&typeof n==`object`)try{if(!oD(e,n).length){r();return}}catch(e){console.error(e)}r(),nO(e)}function aO(e,t){e instanceof Promise?e.then(e=>{t(e)}).catch(()=>{t(null)}):t(e)}function oO(e,t){e.iconsToLoad=e.iconsToLoad?e.iconsToLoad.concat(t).sort():t,e.iconsQueueFlag||(e.iconsQueueFlag=!0,setTimeout(()=>{e.iconsQueueFlag=!1;let{provider:t,prefix:n}=e,r=e.iconsToLoad;if(delete e.iconsToLoad,!r||!r.length)return;let i=e.loadIcon;if(e.loadIcons&&(r.length>1||!i)){aO(e.loadIcons(r,n,t),t=>{iO(e,r,t)});return}if(i){r.forEach(r=>{aO(i(r,n,t),t=>{iO(e,[r],t?{prefix:n,icons:{[r]:t}}:null)})});return}let{valid:a,invalid:o}=rO(r);if(o.length&&iO(e,o,null),!a.length)return;let s=n.match(HE)?kD(t):null;if(!s){iO(e,a,null);return}s.prepare(t,n,a).forEach(n=>{eO(t,n,t=>{iO(e,n.icons,t)})})}))}var sO=(e,t)=>{let n=KD(qD(e,!0,lD()));if(!n.pending.length){let e=!0;return t&&setTimeout(()=>{e&&t(n.loaded,n.missing,n.pending,tO)}),()=>{e=!1}}let r=Object.create(null),i=[],a,o;return n.pending.forEach(e=>{let{provider:t,prefix:n}=e;if(n===o&&t===a)return;a=t,o=n,i.push(aD(t,n));let s=r[t]||(r[t]=Object.create(null));s[n]||(s[n]=[])}),n.pending.forEach(e=>{let{provider:t,prefix:n,name:i}=e,a=aD(t,n),o=a.pendingIcons||=new Set;o.has(i)||(o.add(i),r[t][n].push(i))}),i.forEach(e=>{let t=r[e.provider][e.prefix];t.length&&oO(e,t)}),t?GD(t,n,i):tO};function cO(e,t){let n={...e};for(let e in t){let r=t[e],i=typeof r;e in pD?(r===null||r&&(i===`string`||i===`number`))&&(n[e]=r):i===typeof n[e]&&(n[e]=e===`rotate`?r%4:r)}return n}var lO=/[\s,]+/;function uO(e,t){t.split(lO).forEach(t=>{switch(t.trim()){case`horizontal`:e.hFlip=!0;break;case`vertical`:e.vFlip=!0}})}function dO(e,t=0){let n=e.replace(/^-?[0-9.]*/,``);function r(e){for(;e<0;)e+=4;return e%4}if(n===``){let t=parseInt(e);return isNaN(t)?0:r(t)}if(n!==e){let t=0;switch(n){case`%`:t=25;break;case`deg`:t=90}if(t){let i=parseFloat(e.slice(0,e.length-n.length));return isNaN(i)?0:(i/=t,i%1==0?r(i):0)}}return t}function fO(e,t){let n=e.indexOf(`xlink:`)===-1?``:` xmlns:xlink="http://www.w3.org/1999/xlink"`;for(let e in t)n+=` `+e+`="`+t[e]+`"`;return`<svg xmlns="http://www.w3.org/2000/svg"`+n+`>`+e+`</svg>`}function pO(e){return e.replace(/"/g,`'`).replace(/%/g,`%25`).replace(/#/g,`%23`).replace(/</g,`%3C`).replace(/>/g,`%3E`).replace(/\s+/g,` `)}function mO(e){return`data:image/svg+xml,`+pO(e)}function hO(e){return`url("`+mO(e)+`")`}var gO={...mD,inline:!1},_O={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,"aria-hidden":!0,role:`img`},vO={display:`inline-block`},yO={"background-color":`currentColor`},bO={"background-color":`transparent`},xO={image:`var(--svg)`,repeat:`no-repeat`,size:`100% 100%`},SO={"-webkit-mask":yO,mask:yO,background:bO};for(let e in SO){let t=SO[e];for(let n in xO)t[e+`-`+n]=xO[n]}function CO(e){return e+(e.match(/^[-0-9.]+$/)?`px`:``)}function wO(e,t){let n=cO(gO,t),r=t.mode||`svg`,i=r===`svg`?{..._O}:{};e.body.indexOf(`xlink:`)===-1&&delete i[`xmlns:xlink`];let a=typeof t.style==`string`?t.style:``;for(let e in t){let r=t[e];if(r!==void 0)switch(e){case`icon`:case`style`:case`onLoad`:case`mode`:case`ssr`:break;case`inline`:case`hFlip`:case`vFlip`:n[e]=r===!0||r===`true`||r===1;break;case`flip`:typeof r==`string`&&uO(n,r);break;case`color`:a=a+(a.length>0&&a.trim().slice(-1)!==`;`?`;`:``)+`color: `+r+`; `;break;case`rotate`:typeof r==`string`?n[e]=dO(r):typeof r==`number`&&(n[e]=r);break;case`ariaHidden`:case`aria-hidden`:r!==!0&&r!==`true`&&delete i[`aria-hidden`];break;default:if(e.slice(0,3)===`on:`)break;gO[e]===void 0&&(i[e]=r)}}let o=SD(e,n),s=o.attributes;if(n.inline&&(a=`vertical-align: -0.125em; `+a),r===`svg`)return Object.assign(i,s),a!==``&&(i.style=a),{svg:!0,attributes:i,body:ED(o.body)};let{body:c,width:l,height:u}=e,d=r===`mask`||r!==`bg`&&c.indexOf(`currentColor`)!==-1,f={"--svg":hO(fO(c,{...s,width:l+``,height:u+``}))},p=e=>{let t=s[e];t&&(f[e]=CO(t))};p(`width`),p(`height`),Object.assign(f,vO,d?yO:bO);let m=``;for(let e in f)m+=e+`: `+f[e]+`;`;return i.style=m+a,{svg:!1,attributes:i}}if(lD(!0),OD(``,VD),typeof document<`u`&&typeof window<`u`){let e=window;if(e.IconifyPreload!==void 0){let t=e.IconifyPreload,n=`Invalid IconifyPreload syntax.`;typeof t==`object`&&t&&(t instanceof Array?t:[t]).forEach(e=>{try{(typeof e!=`object`||!e||e instanceof Array||typeof e.icons!=`object`||typeof e.prefix!=`string`||!fD(e))&&console.error(n)}catch{console.error(n)}})}if(e.IconifyProviders!==void 0){let t=e.IconifyProviders;if(typeof t==`object`&&t)for(let e in t){let n=`IconifyProviders[`+e+`] is invalid.`;try{let r=t[e];if(typeof r!=`object`||!r||r.resources===void 0)continue;PD(e,r)||console.error(n)}catch{console.error(n)}}}}function TO(){try{return typeof window!=`object`}catch{return!0}}function EO(e,t,n,r){function i(){t.loading&&=(t.loading.abort(),null)}if(typeof e==`object`&&e&&typeof e.body==`string`)return t.name=``,i(),{data:{...JE,...e}};let a;if(typeof e!=`string`||(a=UE(e,!1,!0))===null)return i(),null;let o=uD(a);if(!o)return!TO()&&(!t.loading||t.loading.name!==e)&&(i(),t.name=``,t.loading={name:e,abort:sO([a],n)}),null;i(),t.name!==e&&(t.name=e,r&&!t.destroyed&&setTimeout(()=>{r(e)}));let s=[`iconify`];return a.prefix!==``&&s.push(`iconify--`+a.prefix),a.provider!==``&&s.push(`iconify--`+a.provider),{data:o,classes:s}}function DO(e,t){return e?wO({...JE,...e},t):null}var OO=new Set([`$$slots`,`$$events`,`$$legacy`]),kO=j(`<svg></svg>`),AO=m(`<span></span>`);function jO(e,t){l(t,!0);let n={name:``,loading:null,destroyed:!1},r=H(t,OO),i=w(0),a=y(()=>(V(i),EO(t.icon,n,c,t.onload))),o=y(()=>{let e=V(a)?DO(V(a).data,r):null;return e&&V(a).classes&&r.class===void 0&&(e.attributes.class=(typeof r.class==`string`?r.class+` `:``)+V(a).classes.join(` `)),e});function c(){s(i)}ae(()=>{n.destroyed=!0,n.loading&&=(n.loading.abort(),null)});var u=U(),d=q(u),f=e=>{var t=U(),n=q(t),r=e=>{var t=kO();K(t,()=>({...V(o).attributes})),g(t,()=>V(o).body,!0),O(t),h(e,t)},i=e=>{var t=AO();K(t,()=>({...V(o).attributes})),h(e,t)};D(n,e=>{V(o).svg?e(r):e(i,-1)}),h(e,t)};D(d,e=>{V(o)&&e(f)}),h(e,u),b()}var MO=m(`<span> </span>`),NO=m(`<!> `,1),PO=m(`<button type="button" class="scroll-button back svelte-l0ky0e"><!></button>`),FO=m(`<button type="button" class="scroll-button forward svelte-l0ky0e"><!></button>`),IO=m(`<div class="tab-bar relative shrink-0 border-b border-border svelte-l0ky0e"><!> <!> <!></div>`);function LO(t,n){l(n,!0);let r=Je(),a=y(()=>r.messages),o=w(null),s=w(!1),u=w(!1);function d(){if(!V(o))return;let{scrollLeft:e,scrollWidth:t,clientWidth:n}=V(o);i(s,e>1),i(u,e+n<t-1)}ce(()=>{if(!V(o))return;let e=new ResizeObserver(d);return e.observe(V(o)),d(),()=>e.disconnect()}),ce(()=>{if(!V(o))return;let e=V(o).querySelector(`[data-value="${CSS.escape(n.activeTabId)}"]`);if(!e)return;let t=e.offsetLeft-32,r=e.offsetLeft+e.offsetWidth+32;t<V(o).scrollLeft?V(o).scrollLeft=t:r>V(o).scrollLeft+V(o).clientWidth&&(V(o).scrollLeft=r-V(o).clientWidth)});function f(e){V(o)?.scrollBy({left:e*V(o).clientWidth*.7,behavior:`smooth`})}function p(e){V(o)&&(V(s)||V(u))&&(Math.abs(e.deltaX)>Math.abs(e.deltaY)||(e.preventDefault(),V(o).scrollLeft+=e.deltaY))}var m=IO(),g=N(m);c(g,()=>yn,(e,t)=>{t(e,{variant:`line`,onscroll:d,onwheel:p,get ref(){return V(o)},set ref(e){i(o,e,!0)},children:(e,t)=>{var r=U(),i=q(r);S(i,17,()=>n.tabs,e=>e.id,(e,t)=>{var r=U(),i=q(r);c(i,()=>xn,(e,r)=>{r(e,{get value(){return V(t).id},onclick:()=>n.onTabChange(V(t).id),variant:`line`,children:(e,n)=>{var r=NO(),i=q(r),a=e=>{var n=U(),r=q(n),i=e=>{jO(e,{get icon(){return V(t).icon},class:`h-4 w-4`})},a=y(()=>V(t).icon.includes(`:`)),o=e=>{var n=MO(),r=J(n,!0);z(()=>T(r,V(t).icon)),h(e,n)};D(r,e=>{V(a)?e(i):e(o,-1)}),h(e,n)};D(i,e=>{V(t).icon&&e(a)});var o=I(i);z(()=>T(o,` ${V(t).label??``}`)),h(e,r)},$$slots:{default:!0}})}),h(e,r)}),h(e,r)},$$slots:{default:!0}})});var _=I(g,2),v=t=>{var n=PO(),r=N(n);nt(r,{class:`h-4 w-4`}),O(n),z(()=>F(n,`aria-label`,V(a).scrollTabsBack)),e(`click`,n,()=>f(-1)),h(t,n)};D(_,e=>{V(s)&&e(v)});var x=I(_,2),C=t=>{var n=FO(),r=N(n);rt(r,{class:`h-4 w-4`}),O(n),z(()=>F(n,`aria-label`,V(a).scrollTabsForward)),e(`click`,n,()=>f(1)),h(t,n)};D(x,e=>{V(u)&&e(C)}),O(m),h(t,m),b()}x([`click`]);var RO={NETWORK_ERROR:`NETWORK_ERROR`,AUTH_ERROR:`AUTH_ERROR`,VALIDATION_ERROR:`VALIDATION_ERROR`,COMPUTATION_ERROR:`COMPUTATION_ERROR`,TIMEOUT_ERROR:`TIMEOUT_ERROR`,CORS_ERROR:`CORS_ERROR`,NOT_FOUND:`NOT_FOUND`,RATE_LIMIT:`RATE_LIMIT`,INVALID_RESPONSE:`INVALID_RESPONSE`,UNKNOWN_ERROR:`UNKNOWN_ERROR`,INVALID_STATE:`INVALID_STATE`,INVALID_INPUT:`INVALID_INPUT`,INVALID_CONFIG:`INVALID_CONFIG`,BROWSER_ONLY:`BROWSER_ONLY`,ENVIRONMENT_ERROR:`ENVIRONMENT_ERROR`,ENCODING_ERROR:`ENCODING_ERROR`,MALFORMED_DEFAULT:`MALFORMED_DEFAULT`,SUPERSEDED:`SUPERSEDED`,ABORTED:`ABORTED`,QUEUE_FULL:`QUEUE_FULL`,QUEUE_TIMEOUT:`QUEUE_TIMEOUT`,DEFINITION_NOT_CACHED:`DEFINITION_NOT_CACHED`},zO=class e extends Error{code;statusCode;context;originalError;constructor(e,t=RO.UNKNOWN_ERROR,n){super(e),this.name=`ComputeError`,this.code=t,this.statusCode=n?.statusCode,this.context=n?.context,this.originalError=n?.originalError,n?.originalError&&(this.cause=n.originalError)}static missingValues(t,n,r){return new e(`Input "${t}" has no values defined${n?` (expected ${n})`:``}`,RO.INVALID_INPUT,{context:{inputName:t,expectedType:n,...r}})}static unknownParamType(t,n,r){return new e(`Unknown paramType: ${t}`,RO.VALIDATION_ERROR,{context:{receivedParamType:t,paramName:n,...r}})}},BO=new class{debug(){}info(){}warn(){}error(){}};function VO(){return BO}function HO(e,t){if(!e||typeof e!=`object`)return;let n=e;if(UO(n,t))return n[t];let r=KO(n).get(t.toLowerCase());return r===void 0?void 0:n[r]}var UO=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);function WO(e,t){if(!e||typeof e!=`object`)return!1;let n=e;return UO(n,t)?!0:KO(n).has(t.toLowerCase())}var GO=new WeakMap;function KO(e){let t=Object.keys(e),n=GO.get(e);if(n&&n.keyCount===t.length)return n.map;let r=new Map;for(let e of t){let t=e.toLowerCase();r.has(t)||r.set(t,e)}return GO.set(e,{keyCount:t.length,map:r}),r}function qO(){let e=globalThis.Buffer;return typeof e==`function`?e:void 0}function JO(e){let t=e.replace(/[\t\n\f\r ]/g,``);if(t.length%4==0&&(t=t.replace(/={1,2}$/,``)),t.length%4==1||!/^[A-Za-z0-9+/]*$/.test(t))throw new zO(`Invalid base64 input.`,RO.ENCODING_ERROR,{context:{inputLength:e.length}});let n=qO();if(n)return new Uint8Array(n.from(t,`base64`));if(typeof globalThis.atob==`function`){let e=globalThis.atob(t),n=new Uint8Array(e.length);for(let t=0;t<e.length;t++)n[t]=e.charCodeAt(t)&255;return n}throw new zO(`Base64 decoding not supported in this environment.`,RO.ENVIRONMENT_ERROR,{context:{environmentInfo:`atob or Buffer not available`}})}var YO=e=>(e??``).replace(/::/g,`/`).replace(/\\/g,`/`).split(`/`).map(e=>e.trim()).filter(e=>e!==``),XO=e=>YO(e.subFolder)[0]??``,ZO=e=>YO(e.subFolder).slice(1).join(`/`),QO=e=>{let t=new Map;for(let n of e){let e=XO(n),r=t.get(e);r?r.push(n):t.set(e,[n])}return Array.from(t,([e,t])=>({root:e,files:t}))},$O=e=>{let t=e.replace(/[/\\:*?"<>|]/g,`_`).replace(/\s+/g,` `).trim().replace(/^\.+/,``);return t===``?`files`:t},ek=async(e,t,n=null)=>{if(typeof document>`u`||typeof Blob>`u`)throw new zO(`File download functionality is only available in browser environments. This function requires the DOM API (document, Blob).`,RO.BROWSER_ONLY,{context:{environment:typeof window<`u`?`browser (SSR)`:`Node.js`,documentAvailable:typeof document<`u`,blobAvailable:typeof Blob<`u`}});try{await sk(await ok(e,n),t)}catch(e){throw e instanceof zO?e:new zO(`Failed to download files from compute response`,RO.INVALID_STATE,{context:{originalError:e instanceof Error?e.message:String(e)},originalError:e instanceof Error?e:void 0})}},tk=async(e,t,n=null)=>{let r=QO(e);if(r.length===0){await ek([],t,n);return}let i=(r.find(e=>e.root===``)??r[0]).root;for(let{root:e,files:a}of r)await ek(e===``?a:a.map(e=>({...e,subFolder:ZO(e)})),e===``?t:$O(e),e===i?n:null)},nk=e=>e.replace(/::/g,`/`).replace(/\\/g,`/`).split(`/`).map(e=>e.trim()).filter(e=>e!==``&&e!==`.`&&e!==`..`&&!/^[a-zA-Z]:$/.test(e)).join(`/`),rk=e=>e===!0||typeof e==`string`&&e.trim().toLowerCase()===`true`,ik=e=>{let t=[];return e.forEach(e=>{let n=HO(e,`fileName`)??``,r=HO(e,`fileType`)??``,i=nk(`${n}${r}`);if(i===``){VO().warn(`Skipping file with unusable name "${n}${r}": no safe archive path remains after sanitization.`);return}let a=HO(e,`subFolder`),o=a?nk(a):``,s=o===``?i:`${o}/${i}`,c=HO(e,`data`);if(typeof c!=`string`||c===``){VO().warn(`Skipping file "${s}": item carries no usable data.`);return}let l=HO(e,`metadata`);if(rk(HO(e,`isBase64Encoded`)))try{t.push({fileName:i,content:JO(c),path:s,subFolder:o,...l?{metadata:l}:{}})}catch(e){VO().warn(`Skipping file "${s}": base64 decode failed.`,e)}else t.push({fileName:i,content:c,path:s,subFolder:o,...l?{metadata:l}:{}})}),t},ak=async e=>(await Promise.all(e.map(async e=>{try{let t=typeof AbortSignal<`u`&&typeof AbortSignal.timeout==`function`?AbortSignal.timeout(3e4):void 0,n=await fetch(e.filePath,{signal:t});if(!n.ok)return VO().warn(`Failed to fetch additional file from URL: ${e.filePath}`),null;let r=await n.arrayBuffer(),i=nk(e.fileName);if(i===``)return VO().warn(`Skipping fetched file with unusable name: ${e.fileName}`),null;let a=e.subFolder?nk(e.subFolder):``;return{fileName:i,content:new Uint8Array(r),path:a===``?i:`${a}/${i}`,subFolder:a}}catch(t){return VO().error(`Error fetching additional file from URL: ${e.filePath}`,t),null}}))).filter(e=>e!==null),ok=async(e,t)=>{let n=ik(e);if(t){let e=Array.isArray(t)?t:[t];n.push(...await ak(e))}let r=new Set;return n.map(e=>{let t=ck(e.path,r);return r.add(t),t===e.path?e:(VO().warn(`Duplicate archive path "${e.path}" — storing as "${t}".`),{...e,path:t,fileName:t.slice(t.lastIndexOf(`/`)+1)})})};async function sk(e,t){let{zip:n,strToU8:r}=await ge(async()=>{let{zip:e,strToU8:t}=await import(`../chunks/BhDDKxGC.js`);return{zip:e,strToU8:t}},[],import.meta.url),i={},a=new Set;e.forEach(e=>{let t=ck(e.path,a);a.add(t),t!==e.path&&VO().warn(`Duplicate archive path "${e.path}" — storing as "${t}".`),i[t]=typeof e.content==`string`?r(e.content):e.content});let o=await new Promise((e,t)=>{n(i,{level:6},(n,r)=>n?t(n):e(r))});lk(new Blob([o],{type:`application/zip`}),`${t}.zip`)}function ck(e,t){if(!t.has(e))return e;let n=e.lastIndexOf(`/`),r=e.lastIndexOf(`.`),i=r>n?r:e.length,a=e.slice(0,i),o=e.slice(i);for(let e=2;;e++){let n=`${a}-${e}${o}`;if(!t.has(n))return n}}function lk(e,t){if(typeof document>`u`)throw new zO(`saveFile requires a browser environment with DOM API access.`,RO.BROWSER_ONLY,{context:{function:`saveFile`,requiredAPI:`document`}});let n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=t,document.body.appendChild(r),r.click(),r.remove(),setTimeout(()=>URL.revokeObjectURL(n),1e4)}var uk={".png":`image/png`,".jpg":`image/jpeg`,".jpeg":`image/jpeg`,".webp":`image/webp`,".gif":`image/gif`,".svg":`image/svg+xml`,".json":`application/json`,".txt":`text/plain`,".csv":`text/csv`,".xml":`application/xml`,".pdf":`application/pdf`,".3dm":`model/vnd.3dm`,".obj":`model/obj`,".stl":`model/stl`};function dk(e){let t=uk[(e.fileType??``).toLowerCase()]??`application/octet-stream`,n;if(e.isBase64Encoded){let r=atob(e.data),i=new Uint8Array(r.length);for(let e=0;e<r.length;e++)i[e]=r.charCodeAt(e);n=new Blob([i],{type:t})}else n=new Blob([e.data],{type:t});let r=`${e.fileName}${e.fileType??``}`,i=document.createElement(`a`);i.href=URL.createObjectURL(n),i.download=r,i.click(),URL.revokeObjectURL(i.href)}async function fk(e,t=`grasshopper-output`){try{let n=Array.isArray(e)?e:[e];if(n.length===0){console.warn(`[FileDownload] No files to download`);return}if(n.length===1){dk(n[0]);return}await tk(n,t)}catch(e){throw console.error(`[FileDownload] Error downloading files:`,e),e}}function pk(e){return typeof e==`object`&&!!e&&`fileName`in e&&`data`in e&&`isBase64Encoded`in e}function mk(e){if(e===0)return`0 Bytes`;let t=iu.FILE_SIZE.BYTES_PER_KB,n=[`Bytes`,`KB`,`MB`,`GB`],r=Math.floor(Math.log(e)/Math.log(t));return Math.round(e/t**+r*100)/100+` `+n[r]}function hk(e){return Math.ceil(e.length*3/4)}var gk=e=>Array.isArray(e)?e.map(String):e==null||e===``?[]:[String(e)],_k={equals:(e,t)=>e===t,notEquals:(e,t)=>e!==t,greaterThan:(e,t)=>Number(e)>Number(t),lessThan:(e,t)=>Number(e)<Number(t),greaterThanOrEqual:(e,t)=>Number(e)>=Number(t),lessThanOrEqual:(e,t)=>Number(e)<=Number(t),between:(e,t,n)=>n?.length===2&&Number(e)>=Number(n[0])&&Number(e)<=Number(n[1]),in:(e,t,n)=>n?.includes(String(e))??!1,notIn:(e,t,n)=>!(n?.includes(String(e))??!1),matches:(e,t)=>{try{return new RegExp(String(t)).test(String(e))}catch{return!1}},contains:(e,t)=>gk(e).includes(String(t)),containsAny:(e,t,n)=>{let r=gk(e);return n?.some(e=>r.includes(String(e)))??!1},isEmpty:e=>gk(e).length===0,isNotEmpty:e=>gk(e).length>0};function vk(e,t){let n=_k[e.operator];return n?n(t[e.paramId],e.value,e.values):!1}function yk(e,t){let n=e.rules.map(e=>vk(e,t));return e.mode===`any`?n.some(Boolean):n.every(Boolean)}var bk={show:e=>({visible:e,disabled:!1}),hide:(e,t)=>({visible:!e,disabled:!1,defaultValue:t}),disable:(e,t)=>({visible:!0,disabled:e,defaultValue:e?t:void 0})};function xk(e,t){if(e.type===`linebreak`)return{visible:!0,disabled:!1};if(`visible`in e&&e.visible===!1||e.type===`output`&&Sk(e,t[e.paramId]))return{visible:!1,disabled:!1};if(!e.visibilityCondition?.rules)return{visible:!0,disabled:!1};let{action:n=`show`,defaultValue:r}=e.visibilityCondition,i=yk(e.visibilityCondition,t);return(bk[n]??bk.show)(i,r)}function Sk(e,t){switch(e.widgetType){case`image`:return!(Array.isArray(t)?t.some(pk):pk(t));case`chart`:return t==null||t===``;case`dynamicValueList`:return!0;default:return!1}}function Ck(e){return e.type===`linebreak`?e.id:e.paramId}function wk(e,t){let n={};for(let r of e)n[Ck(r)]=xk(r,t);return n}function Tk(e,t){if(e.items&&!Dk(e.items,t))return!1;if(!e.visibilityCondition?.rules)return!0;let{action:n=`show`}=e.visibilityCondition,r=yk(e.visibilityCondition,t);return n===`hide`?!r:r}function Ek(e,t){return e.visible!==!1&&e.groups.some(e=>Tk(e,t))}function Dk(e,t){return e.some(e=>e.type!==`linebreak`&&xk(e,t).visible)}var Ok=m(`<div class="schema-grid svelte-1mpk06z"></div>`),kk=m(`<div class="grid-break svelte-1mpk06z" aria-hidden="true"></div>`),Ak=m(`<div><!></div>`),jk=m(`<div class="p-4"><!></div>`),Mk=m(`<p class="pl-4 pr-11 pt-0.5 pb-3.5 text-xs leading-snug text-muted-foreground"> </p>`),Nk=m(`<h3><button type="button"><span class="min-w-0 text-base font-semibold leading-snug flex-1 text-foreground"> </span> <!></button></h3> <!> <div><div class="content-inner svelte-1mpk06z"><div class="px-4 pt-1 pb-5"><!></div></div></div>`,1),Pk=m(`<section class="shadow-xs rounded-xl bg-card"><!></section>`);function Fk(t,n){let r=A();l(n,!0);let o=e=>{var t=Ok();S(t,21,()=>n.items,e=>e.type===`linebreak`?e.id:e.paramId,(e,t)=>{s(e,()=>V(t))}),O(t),z(()=>a(t,`--schema-cols: ${V(m)??``}; --column-gap: 16px;`)),te(t,`clientWidth`,e=>i(p,e)),h(e,t)},s=(e,t=E)=>{var r=U(),i=q(r),o=e=>{var t=kk();h(e,t)},s=e=>{let r=y(()=>V(u)[Ck(t())]),i=y(()=>Math.min(Math.max(1,t().span??1),V(m)));var o=U(),s=q(o),c=e=>{var o=Ak();let s;var c=N(o),l=e=>{var i=U(),a=q(i);f(a,()=>n.inputSnippet,t,()=>V(r)),h(e,i)},u=e=>{var r=U(),i=q(r);f(i,()=>n.outputSnippet,t),h(e,r)};D(c,e=>{t().type===`input`?e(l):t().type===`output`&&e(u,1)}),O(o),z(()=>{s=v(o,1,`grid-cell min-w-0 svelte-1mpk06z`,null,s,{"opacity-50":V(r).disabled}),a(o,`--span: ${V(i)??``}`)}),h(e,o)};D(s,e=>{V(r).visible&&e(c)}),h(e,o)};D(i,e=>{t().type===`linebreak`?e(o):e(s,-1)}),h(e,r)},c=P(n,`flat`,3,!1),u=y(()=>wk(n.items,n.values)),d=`${r}-description`,p=w(0),m=y(()=>V(p)===0?n.columns:Math.max(1,Math.min(n.columns,Math.floor((V(p)+16)/176))));var g=Pk(),_=N(g),x=e=>{var t=jk(),n=N(t);o(n),O(t),h(e,t)},C=t=>{var r=Nk(),i=q(r),a=N(i),s=N(a),c=J(s,!0),l=I(s,2);{let e=y(()=>n.collapsed?`-rotate-90`:``);tt(l,{get class(){return`mt-1 h-4 w-4 shrink-0 text-muted-foreground transition-transform duration-200 ${V(e)??``}`}})}O(a),O(i);var u=I(i,2),f=e=>{var t=Mk(),r=J(t,!0);z(()=>{F(t,`id`,d),T(r,n.description)}),h(e,t)};D(u,e=>{n.description&&e(f)});var p=I(u,2);let m;var g=N(p),_=N(g),b=N(_);o(b),O(_),O(g),O(p),z(()=>{v(a,1,`gap-3 px-4 pt-3.5 flex w-full items-start text-left outline-none select-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset ${n.description?`pb-0`:`pb-3.5`}`),F(a,`aria-expanded`,!n.collapsed),F(a,`aria-describedby`,n.description?d:void 0),T(c,n.label),m=v(p,1,`content-wrapper svelte-1mpk06z`,null,m,{collapsed:n.collapsed}),p.inert=n.collapsed}),e(`click`,a,function(...e){n.onToggle?.apply(this,e)}),h(t,r)};D(_,e=>{c()?e(x):e(C,-1)}),O(g),h(t,g),b()}x([`click`]);function Ik(e){return e?.layout?e.layout.type===`tabbed`?e.layout.tabs?.flatMap(e=>e.groups??[])??[]:e.layout.type===`flat`?e.layout.groups??[]:[]:[]}function Lk(e){return Ik(e).flatMap(e=>e.items??[])}function Rk(e){return Lk(e).filter(e=>e.type===`input`)}function zk(e){switch(e){case`number`:case`integer`:return 0;case`boolean`:return!1;case`text`:return``;default:return null}}var Bk=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`children`]);function Vk(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,Bk);{let i=y(()=>Pe(`group/field-label peer/field-label gap-2 leading-snug flex w-fit group-data-[disabled=true]/field:opacity-50`,`[&>*]:data-[slot=field]:p-4 has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col has-[>[data-slot=field]]:rounded-md has-[>[data-slot=field]]:border`,`has-data-[state=checked]:border-primary has-data-[state=checked]:bg-primary/5 dark:has-data-[state=checked]:bg-primary/10`,t.class));gn(e,W({"data-slot":`field-label`,get class(){return V(i)}},()=>r,{get ref(){return n()},set ref(e){n(e)},children:(e,n)=>{var r=U(),i=q(r);f(i,()=>t.children??E),h(e,r)},$$slots:{default:!0}}))}b()}var Hk=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`class`,`children`,`errors`]),Uk=m(`<li> </li>`),Wk=m(`<ul class="ms-4 gap-1 flex list-disc flex-col"></ul>`),Gk=m(`<div><!></div>`);function Kk(e,t){l(t,!0);let n=P(t,`ref`,15,null),r=H(t,Hk),i=y(()=>t.children?!0:!(!t.errors||t.errors.length===0||t.errors.length===1&&!t.errors[0]?.message)),a=y(()=>t.errors&&t.errors.length>1),o=y(()=>t.errors&&t.errors.length===1&&t.errors[0]?.message);var s=U(),c=q(s),u=e=>{var i=Gk();K(i,e=>({role:`alert`,"data-slot":`field-error`,class:e,...r}),[()=>Pe(`text-sm font-normal text-destructive`,t.class)]);var s=N(i),c=e=>{var n=U(),r=q(n);f(r,()=>t.children),h(e,n)},l=e=>{var t=M();z(()=>T(t,V(o))),h(e,t)},u=e=>{var n=Wk();S(n,21,()=>t.errors??[],me,(e,t)=>{var n=U(),r=q(n),i=e=>{var n=Uk(),r=J(n,!0);z(()=>T(r,V(t).message)),h(e,n)};D(r,e=>{V(t)?.message&&e(i)}),h(e,n)}),O(n),h(e,n)};D(s,e=>{t.children?e(c):V(o)?e(l,1):V(a)&&e(u,2)}),O(i),L(i,e=>n(e),()=>n()),h(e,i)};D(c,e=>{V(i)&&e(u)}),h(e,s),b()}var qk=m(`<button><!></button>`),Jk=m(`<!> <!>`,1);function Yk(e,t){var n=U(),i=q(n);c(i,()=>hn,(e,n)=>{n(e,{children:(e,n)=>{var i=Jk(),a=q(i);{let e=(e,n)=>{let r=()=>(n?.()).props;var i=qk();K(i,()=>({...r(),class:`-m-1 size-6 pointer-coarse:after:-inset-2.5 relative flex shrink-0 cursor-help items-center justify-center rounded-sm text-muted-foreground transition hover:text-foreground pointer-coarse:after:absolute pointer-fine:opacity-0 pointer-fine:group-focus-within/field:opacity-100 pointer-fine:group-hover/field:opacity-100 pointer-fine:focus-visible:opacity-100`,"aria-label":t.label})),zn(N(i),{class:`size-3.5`}),O(i),h(e,i)};c(a,()=>He,(t,n)=>{n(t,{child:e,$$slots:{child:!0}})})}var o=I(a,2);c(o,()=>mn,(e,n)=>{n(e,{class:`sm:max-w-md`,children:(e,n)=>{var i=U(),a=q(i);c(a,()=>fn,(e,n)=>{n(e,{children:(e,n)=>{var i=Jk(),a=q(i);c(a,()=>dn,(e,n)=>{n(e,{children:(e,n)=>{r();var i=M();z(()=>T(i,t.label)),h(e,i)},$$slots:{default:!0}})});var o=I(a,2);c(o,()=>pn,(e,n)=>{n(e,{children:(e,n)=>{r();var i=M();z(()=>T(i,t.description)),h(e,i)},$$slots:{default:!0}})}),h(e,i)},$$slots:{default:!0}})}),h(e,i)},$$slots:{default:!0}})}),h(e,i)},$$slots:{default:!0}})}),h(e,n)}var Xk=m(`<div class="gap-2.5 min-h-6 min-w-0 flex items-center"><!> <!></div>`);function Zk(e,t){l(t,!0);let n=P(t,`value`,15),r=P(t,`disabled`,3,!1);var i=Xk(),a=N(i);{let e=y(()=>typeof n()==`boolean`&&n());$o(a,{get id(){return t.inputId},get checked(){return V(e)},onCheckedChange:e=>{n(e===!0),t.onChange(e===!0)},get disabled(){return r()}})}var o=I(a,2);f(o,()=>t.children??E),O(i),h(e,i),b()}var Qk=m(`<label><!> <span> </span></label>`),$k=m(`<div class="divide-y divide-border/60 overflow-hidden rounded-md border border-input"></div>`);function eA(e,t){l(t,!0);let n=P(t,`disabled`,3,!1),r=y(()=>t.config?.options??{}),i=y(()=>new Set(t.value??[]));function a(e,n){let r=new be(V(i));n?r.add(e):r.delete(e),t.onChange([...r])}var o=$k();S(o,21,()=>Object.entries(V(r)),([e,t])=>e,(e,r)=>{var o=y(()=>k(V(r),2));let s=()=>V(o)[0],c=()=>V(o)[1],l=y(()=>c()??s()),u=y(()=>`${t.inputId}-${V(l)}`),d=y(()=>V(i).has(V(l)));var f=Qk(),p=N(f);$o(p,{get id(){return V(u)},get checked(){return V(d)},onCheckedChange:e=>a(V(l),e===!0),get disabled(){return n()}});var m=I(p,2);let g;var _=J(m,!0);O(f),z(()=>{F(f,`for`,V(u)),v(f,1,`gap-3 px-3 py-2 text-sm flex items-center transition-colors select-none hover:bg-accent/50 ${V(d)?`bg-accent/30`:``} ${n()?`cursor-not-allowed opacity-50`:`cursor-pointer`}`),g=v(m,1,`flex-1`,null,g,{"font-medium":V(d)}),T(_,s())}),h(e,f)}),O(o),h(e,o),b()}var tA=m(`<div class="gap-2 flex items-center"><input type="color" class="h-9 w-12 rounded p-1 cursor-pointer border border-input bg-background dark:bg-input/30"/> <span class="font-mono text-sm text-muted-foreground"> </span></div>`);function nA(t,n){l(n,!0);let r=P(n,`value`,3,`#000000`);var i=tA(),a=N(i);pe(a);var o=I(a,2),s=J(o,!0);O(i),z(()=>{F(a,`id`,n.inputId),C(a,r()||`#000000`),T(s,r()||`#000000`)}),e(`change`,a,e=>{let t=e.currentTarget.value;n.onChange(t)}),h(t,i),b()}x([`change`]);var rA=m(`<!> <!>`,1);function iA(e,t){l(t,!0);let n=P(t,`value`,7),i=P(t,`disabled`,3,!1),a=Je(),o=y(()=>t.config?.options||{}),s=y(()=>n()||``),u=y(()=>Object.entries(V(o)).find(([e,t])=>t===V(s))?.[0]??V(s));var d=U(),f=q(d);c(f,()=>un,(e,l)=>{l(e,{type:`single`,get value(){return V(s)},onValueChange:e=>{e&&(n(e),t.onChange(e))},get disabled(){return i()},children:(e,t)=>{var n=rA(),s=q(n);c(s,()=>on,(e,t)=>{t(e,{class:`w-full`,get disabled(){return i()},children:(e,t)=>{r();var n=M();z(()=>T(n,V(u)||a.messages.selectOption)),h(e,n)},$$slots:{default:!0}})});var l=I(s,2);c(l,()=>cn,(e,t)=>{t(e,{children:(e,t)=>{var n=U(),r=q(n);S(r,17,()=>Object.entries(V(o)),([e,t])=>e,(e,t)=>{var n=y(()=>k(V(t),2));let r=()=>V(n)[0],i=()=>V(n)[1];var a=U(),o=q(a);{let e=y(()=>i()??r());c(o,()=>an,(t,n)=>{n(t,{get value(){return V(e)},get label(){return r()}})})}h(e,a)}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})}),h(e,d),b()}var aA=m(`<button type="button"> </button>`),oA=m(`<div class="p-0.5 text-xs flex rounded-md bg-muted"></div>`),sA=m(`<!> `,1),cA=m(`<div class="gap-1.5 text-xs flex items-center text-success"><!> </div>`),lA=m(`<p class="text-xs leading-snug pl-5 text-muted-foreground"> </p>`),uA=m(`<div class="p-2.5 gap-1.5 flex flex-col rounded-md border border-destructive/40 bg-destructive/5"><div class="gap-1.5 flex items-start"><!> <p class="text-xs leading-snug text-destructive"> </p></div> <!></div>`),dA=m(`<p class="text-xs text-muted-foreground"> </p>`),fA=m(`<div class="gap-2 flex flex-col"><!> <div class="gap-2 flex"><!> <!></div> <!> <!> <!></div>`),pA=m(`<div class="gap-2 flex flex-col"><!> <!></div>`),mA=m(`<div class="gap-2.5 flex w-full flex-col"><input type="file" class="hidden"/> <!> <!></div>`);function hA(t,n){l(n,!0);let a=P(n,`value`,15),o=P(n,`acceptedFormats`,19,()=>[]),s=P(n,`defaultInputMode`,3,`upload`),c=Je(),u=y(()=>c.messages),d=y(()=>n.allowedInputModes&&n.allowedInputModes.length>0?n.allowedInputModes:[`upload`,`url`]),f=y(()=>V(d).length>1),p=w(`upload`);ce(()=>{let e=s()??`upload`;i(p,V(d).includes(e)?e:V(d)[0],!0)});let m=w(null),g=w(``),_=w(``),x=w(!1),C=w(!1),E=w(null),k=w(``);ce(()=>{if(a())try{let e=typeof a()==`string`?JSON.parse(a()):a();if(e.type===`base64`){if(e._isMetadata&&e._fileSize){let t=(e._fileSize/1024/1024).toFixed(2);i(g,Ge(V(u).uploadedFileSize,{ext:e.fileEnding,size:t}),!0)}else i(g,Ge(V(u).uploadedFile,{ext:e.fileEnding}),!0)}else e.type===`url`&&i(_,e.file,!0)}catch{}});function A(e){return Ge(V(u).fileFormatNotAccepted,{ext:e,formats:o().join(`, `)})}function j(e){return Ge(V(u).fileTooLarge,{size:(e/1024/1024).toFixed(2),max:iu.FILE_UPLOAD.MAX_SIZE_MB})}function ee(e){let t=e.split(`?`)[0];return(t.includes(`.`)?`.`+t.split(`.`).pop():`.tmp`).toLowerCase()}function R(e){return o().length===0||o().includes(e.toLowerCase())}function te(e){return e instanceof TypeError&&e.message===`Failed to fetch`}async function ne(){if(V(_).trim()){i(C,!0),i(E,null),i(k,``),i(g,``);try{let e;try{e=new URL(V(_))}catch{i(E,{message:V(u).urlInvalid,isCors:!1},!0);return}if(e.protocol!==`https:`&&e.protocol!==`http:`){i(E,{message:V(u).urlProtocolUnsupported,isCors:!1},!0);return}let t=await fetch(V(_));if(!t.ok){i(E,{message:Ge(V(u).urlServerError,{status:`${t.status} ${t.statusText}`.trim()}),isCors:!1},!0);return}let r=await t.blob(),o=ee(V(_));if(!R(o)){i(E,{message:A(o),isCors:!1},!0);return}let s=iu.FILE_UPLOAD.MAX_SIZE_BYTES;if(r.size>s){i(E,{message:`${j(r.size)} ${V(u).fileTooLargeUseUpload}`,isCors:!1},!0);return}let c=await new Promise((e,t)=>{let n=new FileReader;n.onload=t=>{let n=t.target?.result;e(n.includes(`,`)?n.split(`,`)[1]:n)},n.onerror=()=>t(Error(V(u).fileReadFailed)),n.readAsDataURL(r)}),l=JSON.stringify({file:c,type:`base64`,fileEnding:o});a(l),i(k,Ge(V(u).fileLoaded,{ext:o,size:(r.size/1024).toFixed(0)}),!0),n.onChange(l)}catch(e){if(te(e)){let e=(()=>{try{return new URL(V(_)).hostname}catch{return``}})(),t=V(u).urlUnreachableHint;e.includes(`sharepoint.com`)||e.includes(`onedrive.com`)?t=V(u).urlHintSharePoint:e.includes(`drive.google.com`)?t=V(u).urlHintGoogleDrive:e.includes(`dropbox.com`)&&(t=V(u).urlHintDropbox),i(E,{message:Ge(V(u).urlUnreachable,{host:e}),isCors:!0,hint:t},!0)}else i(E,{message:e instanceof Error?e.message:V(u).unknownError,isCors:!1},!0)}finally{i(C,!1)}}}function B(e){let t=e.target.files?.[0];if(!t)return;let r=ee(t.name);if(!R(r)){Dn.error(A(r));return}if(t.size>iu.FILE_UPLOAD.MAX_SIZE_BYTES){Dn.error(j(t.size));return}i(g,t.name,!0);let o=new FileReader;o.onload=e=>{let t=e.target?.result,i=t.includes(`,`)?t.split(`,`)[1]:t,o=JSON.stringify({file:i,type:`base64`,fileEnding:r});a(o),n.onChange(o)},o.readAsDataURL(t)}function re(){V(m)?.click()}function ie(e){e.preventDefault(),i(x,!0)}function ae(){i(x,!1)}function oe(e){e.preventDefault(),i(x,!1);let t=e.dataTransfer?.files;if(t?.[0]){let e=new Event(`change`);Object.defineProperty(e,"target",{value:{files:t}}),B(e)}}let H=y(()=>o().length>0?o().join(`,`):`*`);var se=mA(),U=N(se);L(U,e=>i(m,e),()=>V(m));var le=I(U,2),ue=t=>{var n=oA();S(n,20,()=>V(d),e=>e,(t,n)=>{var r=aA(),a=J(r,!0);z(()=>{F(r,`aria-pressed`,V(p)===n),v(r,1,`px-3 py-1 font-medium flex-1 rounded-sm transition-colors ${V(p)===n?`shadow-xs bg-background text-foreground`:`text-muted-foreground hover:text-foreground`}`),T(a,n===`upload`?V(u).fileModeUpload:V(u).fileModeUrl)}),e(`click`,r,()=>i(p,n,!0)),h(t,r)}),O(n),h(t,n)};D(le,e=>{V(f)&&e(ue)});var W=I(le,2),de=e=>{var t=fA(),n=N(t);gn(n,{for:`url-input`,children:(e,t)=>{var n=sA(),r=q(n);ar(r,{size:16});var i=I(r);z(()=>T(i,` ${V(u).fileUrlLabel??``}`)),h(e,n)},$$slots:{default:!0}});var a=I(n,2),o=N(a);{let e=y(()=>V(E)?!0:void 0);Cn(o,{id:`url-input`,type:`url`,placeholder:`https://example.com/model.3dm`,get disabled(){return V(C)},get"aria-invalid"(){return V(e)},oninput:()=>{i(E,null),i(k,``)},get value(){return V(_)},set value(e){i(_,e,!0)}})}var s=I(o,2);{let e=y(()=>V(C)||!V(_).trim());We(s,{type:`button`,variant:`outline`,get disabled(){return V(e)},onclick:ne,children:(e,t)=>{r();var n=M();z(()=>T(n,V(C)?V(u).fetchingFile:V(u).fetchFile)),h(e,n)},$$slots:{default:!0}})}O(a);var c=I(a,2),l=e=>{var t=cA(),n=N(t);at(n,{size:13});var r=I(n);O(t),z(()=>T(r,` ${V(k)??``}`)),h(e,t)};D(c,e=>{V(k)&&e(l)});var d=I(c,2),f=e=>{var t=uA(),n=N(t),r=N(n);ot(r,{size:13,class:`mt-0.5 shrink-0 text-destructive`});var i=I(r,2),a=J(i,!0);O(n);var o=I(n,2),s=e=>{var t=lA(),n=J(t,!0);z(()=>T(n,V(E).hint)),h(e,t)};D(o,e=>{V(E).isCors&&V(E).hint&&e(s)}),O(t),z(()=>T(a,V(E).message)),h(e,t)};D(d,e=>{V(E)&&e(f)});var p=I(d,2),m=e=>{var t=dA(),n=J(t,!0);z(()=>T(n,V(u).fileUrlPublic)),h(e,t)};D(p,e=>{!V(E)&&!V(k)&&e(m)}),O(t),h(e,t)},G=e=>{var t=pA(),n=N(t);{let e=y(()=>V(x)?`secondary`:`outline`);We(n,{type:`button`,get variant(){return V(e)},class:`w-full`,onclick:re,ondragover:ie,ondragleave:ae,ondrop:oe,children:(e,t)=>{var n=sA(),r=q(n);ut(r,{size:16});var i=I(r);z(()=>T(i,` ${(V(g)||V(u).chooseFile)??``}`)),h(e,n)},$$slots:{default:!0}})}var r=I(n,2),i=e=>{var t=dA(),n=J(t,!0);z(e=>T(n,e),[()=>Ge(V(u).acceptedFormats,{formats:o().join(`, `)})]),h(e,t)};D(r,e=>{o().length>0&&e(i)}),O(t),h(e,t)};D(W,e=>{V(p)===`url`?e(de):e(G,-1)}),O(se),z(()=>F(U,`accept`,V(H))),e(`change`,U,B),h(t,se),b()}x([`change`,`click`]);function gA(e,t){let n=null;function r(...r){n!==null&&clearTimeout(n),n=setTimeout(()=>{e(...r),n=null},t)}return r.cancel=()=>{n!==null&&(clearTimeout(n),n=null)},r}var _A=m(`<!> <!> <div class="px-3.5 min-w-0 flex flex-1 items-center"><!></div>`,1),vA=m(`<!> <!>`,1);function yA(e,t){l(t,!0);let n=P(t,`value`,15),a=P(t,`disabled`,3,!1),o=Je(),s=y(()=>o.messages),u=w(null),d=y(()=>t.config?.minimum??0),f=y(()=>t.config?.maximum??100),p=y(()=>t.config?.stepSize??1),m=y(()=>typeof n()==`number`?n():V(d)),g=gA(e=>t.onChange(e),400),_=gA(e=>t.onChange(e),150);function v(e){return t.config?.minimum!==void 0&&e<t.config.minimum?Ge(V(s).minValue,{min:t.config.minimum}):t.config?.maximum!==void 0&&e>t.config.maximum?Ge(V(s).maxValue,{max:t.config.maximum}):null}function x(e){let t=v(e);i(u,t,!0),t||(n(e),g(e))}let S=1e3,C=y(()=>(V(f)-V(d))/V(p)),E=y(()=>V(p)>0&&Number.isFinite(V(C))&&V(C)>S),k=y(()=>V(E)?0:V(d)),A=y(()=>V(E)?S:V(f)),j=y(()=>(String(V(p)).split(`.`)[1]??``).length),F=!1,L=!1,ee=null,te=null;function ne(e){let t=Math.min(V(f),Math.max(V(d),e));if(!(V(p)>0))return t;let n=V(d)+Math.round((t-V(d))/V(p))*V(p);return Math.min(V(f),Number(n.toFixed(V(j))))}function re(e){return V(E)?Math.round((e-V(d))/(V(f)-V(d))*S):e}function ie(e){return e/(V(A)-V(k))*(V(f)-V(d))}function ae(e){if(V(f)<=V(d))return;let t;F&&L?(te??={track:ee??e,value:V(m)},t=ne(te.value+ie(e-te.track)/10)):(te=null,t=ne(V(d)+ie(e-V(k)))),ee=e,n(t),_(t)}function oe(e){F=!0,L=e.shiftKey,ee=null,te=null}function H(e){e.key===`Shift`&&(L=e.type===`keydown`)}let se=y(()=>Math.max(0,-Math.floor(Math.log10(V(p)))));function ce(e){let r=parseFloat(e.value);if(isNaN(r)){e.value=V(m).toFixed(V(se));return}let i=Math.min(V(f),Math.max(V(d),r));e.value=i.toFixed(V(se)),i!==n()&&(n(i),t.onChange(i))}var le=vA();R(`keydown`,B,H),R(`keyup`,B,H),R(`pointerup`,B,()=>F=!1),R(`blur`,B,()=>L=F=!1);var ue=q(le),W=e=>{var n=U(),r=q(n);c(r,()=>En,(e,n)=>{n(e,{children:(e,n)=>{var r=_A(),i=q(r);{let e=y(()=>V(m).toFixed(V(se)));c(i,()=>Tn,(n,r)=>{r(n,{get id(){return t.inputId},type:`number`,class:`w-18 flex-none`,get value(){return V(e)},get min(){return V(d)},get max(){return V(f)},get step(){return V(p)},get disabled(){return a()},onchange:e=>ce(e.currentTarget),onkeydown:e=>{e.key===`Enter`&&e.currentTarget.blur()}})})}var o=I(i,2);ct(o,{orientation:`vertical`});var l=I(o,2),u=N(l),g=()=>re(V(m)),_=ae;{let e=y(()=>V(E)?1:V(p));ns(u,{type:`single`,get value(){return g()},set value(e){_(e)},get min(){return V(k)},get max(){return V(A)},get step(){return V(e)},get title(){return V(s).fineDragHint},get thumbLabelledby(){return t.labelId},get disabled(){return a()}})}O(l),R(`pointerdown`,l,oe,!0),h(e,r)},$$slots:{default:!0}})}),h(e,n)},de=e=>{{let r=y(()=>t.config?.minimum),o=y(()=>t.config?.maximum),s=y(()=>t.config?.placeholder),c=y(()=>V(u)?!0:void 0),l=y(()=>V(u)?!0:void 0);Cn(e,{get id(){return t.inputId},type:`number`,get value(){return V(m)},get min(){return V(r)},get max(){return V(o)},get step(){return V(p)},get placeholder(){return V(s)},get"data-invalid"(){return V(c)},get"aria-invalid"(){return V(l)},get disabled(){return a()},oninput:()=>i(u,null),onchange:e=>{let t=parseFloat(e.currentTarget.value);isNaN(t)||x(t)},onblur:e=>{let r=parseFloat(e.currentTarget.value);if(!isNaN(r)){let e=v(r);i(u,e,!0),e||(n(r),t.onChange(r))}}})}};D(ue,e=>{t.config?.renderAsSlider?e(W):e(de,-1)});var G=I(ue,2),K=e=>{var t=U(),n=q(t);c(n,()=>Kk,(e,t)=>{t(e,{children:(e,t)=>{r();var n=M();z(()=>T(n,V(u))),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(G,e=>{V(u)&&e(K)}),h(e,le),b()}var bA=m(`<!> <!>`,1);function xA(e,t){l(t,!0);let n=P(t,`value`,15),a=P(t,`disabled`,3,!1),o=Je(),s=y(()=>o.messages),u=w(null),d=w(fe(n()||``)),f=gA(e=>t.onChange(e),400);function p(e){if(t.config?.maxLength&&e.length>t.config.maxLength)return Ge(V(s).maxLength,{max:t.config.maxLength});if(t.config?.pattern)try{if(!new RegExp(t.config.pattern).test(e))return t.config.customErrorMessage||V(s).invalidFormat}catch{return V(s).invalidPattern}return null}function m(){let e=p(V(d));i(u,e,!0),e||(n(V(d)),f(V(d)))}var g=bA(),_=q(g);{let e=y(()=>t.config?.placeholder),r=y(()=>t.config?.maxLength),o=y(()=>V(u)?!0:void 0),s=y(()=>V(u)?!0:void 0);Cn(_,{get id(){return t.inputId},type:`text`,get placeholder(){return V(e)},get maxlength(){return V(r)},get"data-invalid"(){return V(o)},get"aria-invalid"(){return V(s)},get disabled(){return a()},oninput:()=>{i(u,null),m()},onblur:e=>{let r=e.currentTarget.value,a=p(r);i(u,a,!0),a||(i(d,r,!0),n(r),t.onChange(r))},get value(){return V(d)},set value(e){i(d,e,!0)}})}var v=I(_,2),x=e=>{var t=U(),n=q(t);c(n,()=>Kk,(e,t)=>{t(e,{children:(e,t)=>{r();var n=M();z(()=>T(n,V(u))),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(v,e=>{V(u)&&e(x)}),h(e,g),b()}var SA=Symbol(`client-slot-context`);function CA(e){p(SA,e)}function wA(){return _(SA)}var TA=m(`<span> </span>`),EA=m(`<span class="text-xs pl-2 ml-auto hidden shrink-0 whitespace-nowrap text-muted-foreground tabular-nums group-focus-within/field:inline"> </span>`),DA=m(`<div class="gap-1.5 min-h-5 min-w-0 flex items-center"><!> <!> <!></div>`),OA=m(`<div role="group" class="group/field gap-1.5 min-w-0 flex flex-col"><!> <!></div>`),kA=m(`<!> <!>`,1),AA=m(`<p class="text-sm text-muted-foreground"> </p>`);function jA(e,t){l(t,!0);let n=(e,t=E,n)=>{let r=o(()=>d(n?.(),`quiet`));var i=U(),a=q(i);{let e=y(()=>t()?`${t()}-label`:void 0);c(a,()=>Vk,(n,i)=>{i(n,{get for(){return t()},get id(){return V(e)},class:`min-w-0 block break-words`,children:(e,t)=>{var n=TA(),i=J(n,!0);z(()=>{v(n,1,re(V(r)===`quiet`?`font-normal text-muted-foreground`:`font-normal text-foreground`)),T(i,V(p))}),h(e,n)},$$slots:{default:!0}})})}h(e,i)},r=e=>{var n=U(),r=q(n),i=e=>{Yk(e,{get label(){return V(p)},get description(){return t.item.description}})};D(r,e=>{t.item.description&&e(i)}),h(e,n)},i=(e,t=E)=>{var i=DA(),a=N(i);n(a,t);var o=I(a,2);r(o);var s=I(o,2),c=e=>{var t=EA(),n=J(t,!0);z(()=>T(n,V(_))),h(e,t)};D(s,e=>{V(x)&&e(c)}),O(i),h(e,i)},a=P(t,`value`,15,void 0),s=P(t,`disabled`,3,!1),u=Je(),f=y(()=>`input-${t.item.paramId}`),p=y(()=>t.displayName||t.item.displayName||t.item.paramId),m=y(()=>{let e=t.item.source;return e?.kind===`client`&&e.client?.presentation===`slot`}),g=wA(),_=y(()=>{if(!mt(t.item))return null;let e=t.item.config;if(e?.hideRange||e?.renderAsSlider)return null;let n=typeof e?.minimum==`number`,r=typeof e?.maximum==`number`;return!n&&!r?null:n&&r?`${e.minimum} – ${e.maximum}`:n?`≥ ${e.minimum}`:`≤ ${e.maximum}`}),x=y(()=>mt(t.item)&&V(_)!==null),S=y(()=>dt(t.item)?t.item.config:void 0),C=y(()=>t.dynamicOptions&&Object.keys(t.dynamicOptions).length>0?t.dynamicOptions:Object.fromEntries(Object.entries(V(S)?.defaultOptions??{}).filter(e=>e[1]!==void 0))),w=y(()=>Object.keys(V(C)).length>0),k=y(()=>({options:V(C),displayAs:V(S)?.displayAs??`dropdown`})),A=y(()=>dt(t.item)&&!V(w)&&(V(S)?.emptyBehavior??`hide`)===`hide`),j=0;ce(()=>{if(!dt(t.item)||!V(w))return;let e=new Set(Object.values(V(C))),n=Object.values(V(C))[0];if(Array.isArray(a())?a().length>0&&a().every(t=>typeof t==`string`&&e.has(t)):typeof a()==`string`&&a()!==``&&e.has(a())){j=0;return}if(j>=3){console.warn(`[InputControl] dynamic value list "${t.item.paramId}": options keep invalidating the auto-picked selection (${j} consecutive system picks) — the definition's options likely depend on the selection. Stopping auto-reconciliation to avoid a solve loop.`);return}if(Array.isArray(a())){let r=a().filter(t=>typeof t==`string`&&e.has(t));(r.length!==a().length||a().length===0)&&(j++,t.onChange(t.item.paramId,r.length>0?r:[n],!0))}else(typeof a()!=`string`||a()===``||!e.has(a()))&&(j++,t.onChange(t.item.paramId,n,!0))});function M(e){j=0,a(e),t.onChange(t.item.paramId,e)}var F=U(),L=q(F),ee=e=>{var n=U(),r=q(n),o=e=>{var n=OA(),r=N(n);i(r);var o=I(r,2);g(o,()=>({inputId:t.item.paramId,displayName:V(p),value:a(),onValueChange:M})),O(n),h(e,n)};D(r,e=>{g&&e(o)}),h(e,n)},R=e=>{var o=OA(),c=N(o),l=e=>{i(e,()=>V(f))},d=y(()=>!vt(t.item));D(c,e=>{V(d)&&e(l)});var p=I(c,2),m=e=>{let n=y(()=>t.item.config);{let t=y(()=>typeof a()==`number`?a():void 0);yA(e,{get inputId(){return V(f)},get labelId(){return`${V(f)??``}-label`},get value(){return V(t)},get config(){return V(n)},onChange:M,get disabled(){return s()}})}},g=y(()=>mt(t.item)),_=e=>{{let t=y(()=>typeof a()==`boolean`?a():void 0);Zk(e,{get inputId(){return V(f)},get value(){return V(t)},onChange:M,get disabled(){return s()},children:(e,t)=>{var i=kA(),a=q(i);n(a,()=>V(f),()=>`strong`);var o=I(a,2);r(o),h(e,i)},$$slots:{default:!0}})}},v=y(()=>vt(t.item)),b=e=>{let n=y(()=>t.item.config);{let t=y(()=>typeof a()==`string`?a():``);xA(e,{get inputId(){return V(f)},get value(){return V(t)},get config(){return V(n)},onChange:M,get disabled(){return s()}})}},x=y(()=>_t(t.item)),S=e=>{let n=y(()=>t.item.config);var r=U(),i=q(r),o=e=>{{let t=y(()=>Array.isArray(a())?a():typeof a()==`string`&&a()?[a()]:[]);eA(e,{get inputId(){return V(f)},get value(){return V(t)},get config(){return V(n)},onChange:M,get disabled(){return s()}})}},c=e=>{{let t=y(()=>typeof a()==`string`?a():``);iA(e,{get value(){return V(t)},get config(){return V(n)},onChange:M,get disabled(){return s()}})}};D(i,e=>{V(n).displayAs===`checklist`?e(o):e(c,-1)}),h(e,r)},C=y(()=>gt(t.item)),E=e=>{var t=U(),n=q(t),r=e=>{var t=U(),n=q(t),r=e=>{{let t=y(()=>Array.isArray(a())?a():typeof a()==`string`&&a()?[a()]:[]);eA(e,{get inputId(){return V(f)},get value(){return V(t)},get config(){return V(k)},onChange:M,get disabled(){return s()}})}},i=e=>{{let t=y(()=>typeof a()==`string`?a():``);iA(e,{get value(){return V(t)},get config(){return V(k)},onChange:M,get disabled(){return s()}})}};D(n,e=>{V(k).displayAs===`checklist`?e(r):e(i,-1)}),h(e,t)},i=e=>{var t=AA(),n=J(t,!0);z(()=>T(n,u.messages.noOptionsYet)),h(e,t)};D(n,e=>{V(w)?e(r):e(i,-1)}),h(e,t)},A=y(()=>dt(t.item)),j=e=>{let n=y(()=>t.item.config);{let t=y(()=>typeof a()==`string`?a():``),r=y(()=>V(n)?.acceptedFormats??[]),i=y(()=>V(n)?.defaultInputMode),o=y(()=>V(n)?.allowedInputModes);hA(e,{get value(){return V(t)},get acceptedFormats(){return V(r)},onChange:e=>M(e),get defaultInputMode(){return V(i)},get allowedInputModes(){return V(o)}})}},P=y(()=>st(t.item)),F=e=>{{let t=y(()=>typeof a()==`string`?a():`#000000`);nA(e,{get inputId(){return V(f)},get value(){return V(t)},onChange:e=>M(e)})}},L=y(()=>pt(t.item));D(p,e=>{V(g)?e(m):V(v)?e(_,1):V(x)?e(b,2):V(C)?e(S,3):V(A)?e(E,4):V(P)?e(j,5):V(L)&&e(F,6)}),O(o),h(e,o)};D(L,e=>{V(m)?e(ee):V(A)||e(R,1)}),h(e,F),b()}var MA=new Map;function NA(e,t){if(MA.has(e))return MA.get(e);if(document.querySelector(`script[src="${e}"]`)){let t=Promise.resolve();return MA.set(e,t),t}let n=new Promise((n,r)=>{let i=document.createElement(`script`);i.src=e,t?.crossOrigin&&(i.crossOrigin=t.crossOrigin),t?.integrity&&(i.integrity=t.integrity),t?.async!==void 0&&(i.async=t.async),t?.defer!==void 0&&(i.defer=t.defer),i.onload=()=>n(),i.onerror=()=>{MA.delete(e),r(Error(`Failed to load script: ${e}`))},document.head.appendChild(i)});return MA.set(e,n),n}var PA=m(`<div class="px-4 py-3 text-sm text-destructive"> </div>`),FA=m(`<div class="px-4 py-8 text-sm text-center text-muted-foreground"> </div>`),IA=m(`<div class="rounded p-1.5 backdrop-blur-sm flex items-center border border-border bg-background/80 text-muted-foreground"><!></div>`),LA=m(`<div></div> <div><!> <button class="rounded p-1.5 backdrop-blur-sm flex items-center border border-border bg-background/80 text-foreground transition-colors hover:bg-background disabled:cursor-not-allowed disabled:opacity-50"><!></button></div>`,1),RA=m(`<div><!></div>`);function zA(t,n){l(n,!0);let r=Je(),a=y(()=>r.messages),o=new Set([`scattermap`,`scattermapbox`,`choropleth`,`scattergeo`]),s=y(()=>{if(!n.value)return null;try{return JSON.parse(n.value)}catch{return null}}),c=w(null),u=w(null),d=w(!1),f=w(null),p=w(!1),m=!1;async function g(){return window.Plotly||await NA(`https://cdn.plot.ly/plotly-3.4.0.min.js`,{crossOrigin:`anonymous`,integrity:`sha384-pFOQ7loGBChmUyS4Tszy+he8OWeYkwTFjc2xii4aJUWWiGwf2u2OEc04T5iDRpMp`}),window.Plotly}function _(){V(u)&&(document.fullscreenElement?document.exitFullscreen().catch(e=>{i(f,Ge(V(a).exitFullscreenFailed,{error:e.message}),!0)}):V(u).requestFullscreen().catch(e=>{i(f,Ge(V(a).fullscreenUnavailable,{error:e.message}),!0)}))}ce(()=>{function e(){i(p,!!document.fullscreenElement),Promise.resolve().then(()=>{V(c)&&window.Plotly&&window.Plotly.Plots.resize(V(c))})}return document.addEventListener(`fullscreenchange`,e),()=>document.removeEventListener(`fullscreenchange`,e)});function x(){if(!V(c))return{textColor:`#333`,gridColor:`#eee`};let e=getComputedStyle(V(c));return{textColor:e.getPropertyValue(`color`).trim()||`#333`,gridColor:e.getPropertyValue(`--border`)?.trim()||e.getPropertyValue(`--color-border`)?.trim()||`rgba(128,128,128,0.2)`}}async function S(){if(V(c)&&V(s)){i(f,null),i(d,!0);try{let e=await g(),{textColor:t,gridColor:n}=x(),r=V(s).data?.some(e=>o.has(e.type)),{title:i,template:a,height:l,width:u,...d}=V(s).layout,f={...d,autosize:!0,margin:{t:24,r:8,b:40,l:60,pad:0},font:{color:t},paper_bgcolor:d.paper_bgcolor??`transparent`,plot_bgcolor:d.plot_bgcolor??`transparent`,...!r&&d.xaxis?{xaxis:{...d.xaxis,gridcolor:n,color:t}}:{},...!r&&d.yaxis?{yaxis:{...d.yaxis,gridcolor:n,color:t}}:{}};e.react(V(c),V(s).data,f,{responsive:!0,displayModeBar:`hover`,displaylogo:!1,modeBarButtonsToRemove:[`sendDataToCloud`,`lasso2d`,`select2d`],...V(s).config})}catch(e){i(f,e instanceof Error?e.message:V(a).chartRenderFailed,!0)}finally{i(d,!1)}}}le(()=>{m=!0;let e=null,t=new ResizeObserver(()=>{e&&clearTimeout(e),e=setTimeout(()=>{V(c)&&window.Plotly&&window.Plotly.Plots.resize(V(c)),e=null},150)});return V(u)&&t.observe(V(u)),()=>{t.disconnect(),e&&clearTimeout(e),V(c)&&window.Plotly&&window.Plotly.purge(V(c))}});let C=null;ce(()=>{if(n.value&&m&&V(c))return C&&clearTimeout(C),C=setTimeout(()=>{S(),C=null},150),()=>{C&&clearTimeout(C)}});var E=RA(),k=N(E),A=e=>{var t=PA(),n=J(t,!0);z(()=>T(n,V(f))),h(e,t)},j=e=>{var t=FA(),n=J(t,!0);z(()=>T(n,V(a).chartReceiving)),h(e,t)},M=t=>{var n=LA(),r=q(n);L(r,e=>i(c,e),()=>V(c));var o=I(r,2),s=N(o),l=e=>{var t=IA();lr(N(t),{size:14,class:`animate-spin`}),O(t),h(e,t)};D(s,e=>{V(d)&&e(l)});var u=I(s,2),f=N(u),m=e=>{pr(e,{size:14})},g=e=>{dr(e,{size:14})};D(f,e=>{V(p)?e(m):e(g,-1)}),O(u),O(o),z(()=>{v(r,1,`w-full ${V(p)?`h-dvh`:`h-95`}`),v(o,1,`gap-1 left-2 top-2 absolute z-10 flex items-center opacity-0 transition-opacity group-hover:opacity-100 focus-within:opacity-100 pointer-coarse:opacity-100 ${V(p)?`opacity-100`:``}`),u.disabled=V(d),F(u,`title`,V(p)?V(a).exitFullscreen:V(a).fullscreen),F(u,`aria-label`,V(p)?V(a).exitFullscreen:V(a).fullscreen)}),e(`click`,u,_),h(t,n)};D(k,e=>{V(f)?e(A):V(s)?e(M,-1):e(j,1)}),O(E),L(E,e=>i(u,e),()=>V(u)),z(()=>v(E,1,`group rounded relative overflow-hidden border border-border ${V(p)?`bg-background`:``}`)),h(t,E),b()}x([`click`]);var BA=m(`<div class="px-4 py-3 text-sm text-destructive"> </div>`),VA=m(`<div class="inset-0 text-sm absolute flex items-center justify-center text-destructive"> </div>`),HA=m(`<div class="inset-0 gap-2 text-sm absolute flex items-center justify-center text-muted-foreground"><!> </div>`),UA=m(`<!> <img alt="" draggable="false"/>`,1),WA=m(`<button class="left-2 p-1.5 backdrop-blur-sm absolute top-1/2 -translate-y-1/2 rounded-full border border-border bg-background/80 text-foreground hover:bg-background"><!></button> <button class="right-2 p-1.5 backdrop-blur-sm absolute top-1/2 -translate-y-1/2 rounded-full border border-border bg-background/80 text-foreground hover:bg-background"><!></button>`,1),GA=m(`<button><img alt="" class="h-full w-full object-contain"/></button>`),KA=m(`<div class="gap-1.5 p-1.5 flex overflow-x-auto border-t border-border"></div>`),qA=m(`<span class="shrink-0 tabular-nums"> </span>`),JA=m(`<div class="mx-1 h-4 w-px bg-border"></div>`),YA=m(`<button><!></button>`),XA=m(`<div role="application" tabindex="0"><!> <!> <div> </div></div> <!> <div class="gap-2 px-2 py-1 text-xs flex items-center border-t border-border"><div class="min-w-0 gap-1.5 flex flex-1 items-center text-muted-foreground"><span class="truncate text-foreground"> </span> <!></div> <div class="gap-0.5 flex shrink-0 items-center"><button><!></button> <span class="w-11 text-center text-muted-foreground tabular-nums"> </span> <button><!></button> <button><!></button> <button>1:1</button> <!> <!> <!></div></div>`,1),ZA=m(`<div><!></div>`);function QA(t,n){l(n,!0);let r=Je(),o=y(()=>r.messages),s=new Set([`.png`,`.jpg`,`.jpeg`,`.webp`,`.gif`,`.svg`]),c=1.5,u=e=>(e.fileType??``).toLowerCase(),d=y(()=>Array.isArray(n.value)?n.value.filter(pk):pk(n.value)?[n.value]:[]),f=y(()=>V(d).filter(e=>s.has(u(e)))),p=y(()=>V(f).length===0?V(d)[0]:void 0),m=w(0),g=y(()=>Math.max(0,Math.min(V(m),V(f).length-1))),_=y(()=>V(f)[V(g)]??null),x=y(()=>V(_)?u(V(_))===`.svg`:!1);function C(e){let t=uk[u(e)]??`application/octet-stream`;return e.isBase64Encoded?`data:${t};base64,${e.data}`:`data:${t};utf8,${encodeURIComponent(e.data)}`}let E=y(()=>V(_)?C(V(_)):null),k=y(()=>n.item.config??{}),A=y(()=>V(k).allowDownload??!0),j=y(()=>V(k).allowFullscreen??!0),M=y(()=>V(k).backgroundColor),P=w(null),ee=w(null),te=w(!1),ne=w(!1),B=w(null),ie=w(!1),ae=w(0),H=w(0),se=w(0),le=w(0),ue=w(1),W=w(0),de=w(0),G=w(!0),K=y(()=>V(se)>0&&V(le)>0&&V(ae)>0&&V(H)>0),fe=y(()=>V(K)?Math.min(V(ae)/V(se),V(H)/V(le)):1),pe=y(()=>Math.min(V(fe),1)),he=y(()=>Math.max(V(fe),1)*32),ge=y(()=>Math.round(V(ue)*100)),_e=y(()=>V(se)*V(ue)>V(ae)+1||V(le)*V(ue)>V(H)+1),ve=y(()=>!V(x)&&V(ue)>=2);function ye(e,t,n){return t<=n?(n-t)/2:Math.min(0,Math.max(n-t,e))}function be(e,t,n){i(ue,e,!0),i(W,ye(t,V(se)*e,V(ae)),!0),i(de,ye(n,V(le)*e,V(H)),!0)}function xe(){i(G,!0),be(V(fe),0,0)}function Se(e,t=V(ae)/2,n=V(H)/2){let r=Math.min(V(he),Math.max(V(pe),e)),a=r/V(ue);i(G,Math.abs(r-V(fe))<.001),be(r,t-(t-V(W))*a,n-(n-V(de))*a)}ce(()=>{if(!V(ee))return;let e=new ResizeObserver(([e])=>{i(ae,e.contentRect.width,!0),i(H,e.contentRect.height,!0),V(G)?xe():be(Math.max(V(ue),V(pe)),V(W),V(de))});return e.observe(V(ee)),()=>e.disconnect()});function Ce(e){let t=e.currentTarget;i(ie,!1);let n=t.naturalWidth||300,r=t.naturalHeight||150,a=n===V(se)&&r===V(le);i(se,n,!0),i(le,r,!0),(!a||V(G))&&xe()}let we={},Te=()=>Object.values(we),Ee=w(!1),De=0;function Oe(e){let t=V(ee).getBoundingClientRect();return{x:e.clientX-t.left,y:e.clientY-t.top}}function ke(e){if(e.button!==0||e.target.closest(`button`))return;V(ee)?.setPointerCapture(e.pointerId),we[e.pointerId]=Oe(e);let t=Te().length;if(i(Ee,t===1&&V(_e),!0),t===2){let[e,t]=Te();De=Math.hypot(e.x-t.x,e.y-t.y)}}function Ae(e){let t=we[e.pointerId];if(!t)return;let n=Oe(e);if(we[e.pointerId]=n,Te().length===2){let[e,t]=Te(),n=Math.hypot(e.x-t.x,e.y-t.y);De>0&&Se(V(ue)*(n/De),(e.x+t.x)/2,(e.y+t.y)/2),De=n}else V(Ee)&&(i(G,!1),be(V(ue),V(W)+n.x-t.x,V(de)+n.y-t.y))}function je(e){delete we[e.pointerId];let t=Te().length;t<2&&(De=0),t===0&&i(Ee,!1)}function Me(e){if(!V(G))return xe();let t=Oe(e);Se(V(fe)<.8?1:V(fe)*3,t.x,t.y)}let Ne=w(!1),Y;ce(()=>{if(!V(ee))return;let e=V(ee);function t(e){if(!V(K))return;if(!(e.ctrlKey||e.metaKey||V(te))){i(Ne,!0),clearTimeout(Y),Y=setTimeout(()=>i(Ne,!1),1200);return}e.preventDefault(),i(Ne,!1);let t=e.deltaMode===1?e.deltaY*16:e.deltaY,n=Oe(e);Se(V(ue)*Math.exp(-t*.002),n.x,n.y)}return e.addEventListener(`wheel`,t,{passive:!1}),()=>{e.removeEventListener(`wheel`,t),clearTimeout(Y)}});function Pe(e){let t={"+":()=>Se(V(ue)*c),"=":()=>Se(V(ue)*c),"-":()=>Se(V(ue)/c),0:xe,1:()=>Se(1),ArrowLeft:()=>Fe(-1),ArrowRight:()=>Fe(1)};V(j)&&(t.f=Le);let n=t[e.key];n&&(e.preventDefault(),n())}function Fe(e){V(f).length<2||Ie((V(g)+e+V(f).length)%V(f).length)}function Ie(e){e!==V(g)&&(i(m,e,!0),i(se,0),i(le,0),i(G,!0))}function Le(){V(P)&&(document.fullscreenElement?document.exitFullscreen().catch(e=>{i(B,Ge(V(o).exitFullscreenFailed,{error:e.message}),!0)}):V(P).requestFullscreen().catch(e=>{i(B,Ge(V(o).fullscreenUnavailable,{error:e.message}),!0)}))}ce(()=>{function e(){i(te,document.fullscreenElement===V(P))}return document.addEventListener(`fullscreenchange`,e),()=>document.removeEventListener(`fullscreenchange`,e)});async function Re(){if(V(_)){i(ne,!0),i(B,null);try{await fk(V(_),V(_).fileName)}catch(e){i(B,e instanceof Error?e.message:V(o).downloadFailed,!0)}finally{i(ne,!1)}}}let ze=`flex h-7 min-w-7 items-center justify-center rounded px-1.5 text-muted-foreground transition-colors hover:bg-accent hover:text-foreground disabled:pointer-events-none disabled:opacity-40`;var Be=U(),Ve=q(Be),He=t=>{var r=ZA(),l=N(r),d=e=>{var t=BA(),n=J(t,!0);z(()=>T(n,V(B))),h(e,t)},m=e=>{var t=BA(),n=J(t,!0);z(e=>T(n,e),[()=>Ge(V(o).imageUnsupported,{ext:u(V(p))||V(o).imageUnknownFormat,formats:[...s].join(`, `)})]),h(e,t)},y=t=>{var r=XA(),s=q(r);let l;var u=N(s),d=e=>{var t=VA(),n=J(t,!0);z(e=>T(n,e),[()=>Ge(V(o).imageDecodeFailed,{file:`${V(_).fileName}${V(_).fileType}`})]),h(e,t)},p=e=>{var t=UA(),n=q(t),r=e=>{var t=HA(),n=N(t);sr(n,{size:16,class:`animate-spin`});var r=I(n);O(t),z(()=>T(r,` ${V(o).imageLoading??``}`)),h(e,t)};D(n,e=>{V(K)||e(r)});var s=I(n,2);let c;z(()=>{F(s,`src`,V(E)),v(s,1,`absolute top-(--img-y) left-(--img-x) h-(--img-h) w-(--img-w) max-w-none
5597
+ ${V(ve)?`pixelated`:``}
5598
+ ${V(K)?``:`invisible`}`,`svelte-n94kuu`),c=a(s,``,c,{"--img-x":`${V(W)??``}px`,"--img-y":`${V(de)??``}px`,"--img-w":`${V(se)*V(ue)}px`,"--img-h":`${V(le)*V(ue)}px`})}),R(`load`,s,Ce),R(`error`,s,()=>i(ie,!0)),oe(s),h(e,t)};D(u,e=>{V(ie)?e(d):e(p,-1)});var m=I(u,2),y=t=>{var n=WA(),r=q(n),i=N(r);nt(i,{size:16}),O(r);var a=I(r,2),s=N(a);rt(s,{size:16}),O(a),z(()=>{F(r,`title`,`${V(o).previousImage??``} (←)`),F(r,`aria-label`,V(o).previousImage),F(a,`title`,`${V(o).nextImage??``} (→)`),F(a,`aria-label`,V(o).nextImage)}),e(`click`,r,()=>Fe(-1)),e(`click`,a,()=>Fe(1)),h(t,n)};D(m,e=>{V(f).length>1&&e(y)});var b=I(m,2),x=J(b,!0);O(s),L(s,e=>i(ee,e),()=>V(ee));var w=I(s,2),k=t=>{var n=KA();S(n,21,()=>V(f),me,(t,n,r)=>{var i=GA(),a=J(i);z(e=>{F(i,`title`,`${V(n).fileName??``}${V(n).fileType??``}`),v(i,1,`h-12 w-16 rounded shrink-0 overflow-hidden border-2 bg-muted transition-colors ${r===V(g)?`border-primary`:`border-transparent opacity-70 hover:opacity-100`}`),F(a,`src`,e)},[()=>C(V(n))]),e(`click`,i,()=>Ie(r)),h(t,i)}),O(n),h(t,n)};D(w,e=>{V(f).length>1&&e(k)});var P=I(w,2),B=N(P),ae=N(B),H=J(ae),ce=I(ae,2),U=e=>{var t=qA(),n=J(t);z(()=>T(n,`${V(se)??``}×${V(le)??``}`)),h(e,t)};D(ce,e=>{V(K)&&e(U)}),O(B);var fe=I(B,2),ye=N(fe);v(ye,1,re(ze),`svelte-n94kuu`),jr(N(ye),{size:14}),O(ye);var be=I(ye,2),we=J(be),Te=I(be,2);v(Te,1,re(ze),`svelte-n94kuu`),kr(N(Te),{size:14}),O(Te);var De=I(Te,2);v(De,1,re(ze),`svelte-n94kuu`),yr(N(De),{size:14}),O(De);var Oe=I(De,2);v(Oe,1,`flex h-7 min-w-7 items-center justify-center rounded px-1.5 text-muted-foreground transition-colors hover:bg-accent hover:text-foreground disabled:pointer-events-none disabled:opacity-40 font-medium tabular-nums svelte-n94kuu`);var Y=I(Oe,2),Be=e=>{var t=JA();h(e,t)};D(Y,e=>{(V(A)||V(j))&&e(Be)});var Ve=I(Y,2),He=t=>{var n=YA();v(n,1,re(ze),`svelte-n94kuu`),Vn(N(n),{size:14}),O(n),z(()=>{n.disabled=V(ne),F(n,`title`,V(o).downloadImage),F(n,`aria-label`,V(o).downloadImage)}),e(`click`,n,Re),h(t,n)};D(Ve,e=>{V(A)&&e(He)});var Ue=I(Ve,2),We=t=>{var n=YA();v(n,1,re(ze),`svelte-n94kuu`);var r=N(n),i=e=>{pr(e,{size:14})},a=e=>{dr(e,{size:14})};D(r,e=>{V(te)?e(i):e(a,-1)}),O(n),z(()=>{F(n,`title`,`${(V(te)?V(o).exitFullscreen:V(o).fullscreen)??``} (F)`),F(n,`aria-label`,V(te)?V(o).exitFullscreen:V(o).fullscreen)}),e(`click`,n,Le),h(t,n)};D(Ue,e=>{V(j)&&e(We)}),O(fe),O(P),z(e=>{F(s,`aria-roledescription`,V(o).imageViewer),F(s,`aria-label`,n.item.displayName??V(_).fileName),v(s,1,`relative w-full overflow-hidden outline-none select-none focus-visible:ring-2 focus-visible:ring-ring
5599
5599
  ${V(te)?`flex-1`:`h-95`}
5600
- ${V(Ee)?`cursor-grabbing`:V(ve)?`cursor-grab`:`cursor-zoom-in`}
5601
- ${V(fe)?`touch-pan-y`:`touch-none`}
5602
- ${V(M)?`bg-(--image-bg)`:`checkerboard`}`,`svelte-n94kuu`),l=a(s,``,l,{"--image-bg":V(M)}),v(b,1,`px-2.5 py-1 text-xs bottom-2 rounded pointer-events-none absolute left-1/2 -translate-x-1/2 bg-foreground/80 text-background transition-opacity ${V(Ne)?`opacity-100`:`opacity-0`}`),T(x,V(o).zoomHint),T(H,`${V(_).fileName??``}${V(_).fileType??``}`),be.disabled=!V(G)||V(ue)<=V(me)+.001,F(be,`title`,`${V(o).zoomOut??``} (−)`),F(be,`aria-label`,V(o).zoomOut),T(Te,`${V(_e)??``}%`),J.disabled=!V(G)||V(ue)>=V(ge)-.001,F(J,`title`,`${V(o).zoomIn??``} (+)`),F(J,`aria-label`,V(o).zoomIn),De.disabled=!V(G)||V(fe),F(De,`title`,`${V(o).zoomFit??``} (0)`),F(De,`aria-label`,V(o).zoomFit),Oe.disabled=e,F(Oe,`title`,`${V(o).zoomActual??``} (1)`),F(Oe,`aria-label`,V(o).zoomActual)},[()=>!V(G)||Math.abs(V(ue)-1)<.001]),e(`pointerdown`,s,ke),e(`pointermove`,s,Ae),e(`pointerup`,s,je),R(`pointercancel`,s,je),e(`dblclick`,s,Me),e(`keydown`,s,Pe),e(`click`,be,()=>Ce(V(ue)/c)),e(`click`,J,()=>Ce(V(ue)*c)),e(`click`,De,Se),e(`click`,Oe,()=>Ce(1)),h(t,r)};D(l,e=>{V(B)?e(d):V(p)?e(m,1):V(_)&&e(y,2)}),O(r),L(r,e=>i(P,e),()=>V(P)),z(()=>v(r,1,`rounded flex flex-col overflow-hidden border border-border bg-background ${V(te)?`h-screen`:``}`)),h(t,r)};D(Ve,e=>{(V(B)||V(p)||V(_))&&e(He)}),h(t,Be),b()}x([`pointerdown`,`pointermove`,`pointerup`,`dblclick`,`keydown`,`click`]);var ej=m(`<div class="gap-2 flex items-center"><!> <!></div>`),tj=m(`<span class="text-muted-foreground not-italic"> </span>`),nj=m(`<div class="ml-4 pl-2 border-l border-border/50"><!></div>`),rj=m(`<div><button class="gap-1.5 py-0.5 text-xs flex w-full items-center text-muted-foreground transition-colors hover:text-foreground"><!> <!> <span class="font-medium"> </span></button> <!></div>`),ij=m(`<div class="gap-1.5 py-0.5 flex items-center justify-between"><div class="gap-1.5 min-w-0 flex items-center"><!> <span class="text-xs truncate text-foreground"> </span></div> <span class="text-xs shrink-0 text-muted-foreground"> </span></div>`),aj=m(`<div class="rounded px-3 py-3 text-sm border border-border bg-muted text-muted-foreground"> </div>`),oj=m(`<div class="gap-2 text-xs flex items-center justify-between text-muted-foreground"><span class="min-w-0 truncate"> </span> <span class="shrink-0"> </span></div>`),sj=m(`<div class="gap-1 flex flex-col"></div>`),cj=m(`<div class="mt-2"><!></div>`),lj=m(`<li class="truncate"><span class="font-mono"> </span></li>`),uj=m(`<div class="rounded px-3 py-2 text-sm border border-destructive bg-destructive/10 text-destructive"><div class="font-medium"> </div> <div class="mt-1 text-xs"> </div> <ul class="mt-1 ml-4 text-xs list-disc"></ul> <div class="mt-1 text-xs"> </div></div>`),dj=m(`<div class="rounded px-3 py-2 text-sm border border-destructive bg-destructive/10 text-destructive"> </div>`),fj=m(`<div class="gap-2 flex flex-col"><div class="rounded px-3 py-2 border border-border bg-muted"><div class="gap-2 flex items-center justify-between"><span class="min-w-0 text-sm font-medium truncate text-foreground"> </span> <span class="text-xs shrink-0 text-muted-foreground"> </span></div> <!></div> <!> <!> <!></div>`),pj=m(`<span class="font-bold text-primary"> </span>`),mj=m(`<div><!></div>`),hj=m(`<pre> </pre>`),gj=m(`<div class="group relative"><!> <!></div>`),_j=m(`<div role="group" class="group/field gap-2 flex flex-col"><!> <!></div>`);function vj(t,n){l(n,!0);let a=e=>{var t=ej(),i=N(t);gn(i,{children:(e,t)=>{r();var n=M();z(()=>T(n,V(m))),h(e,n)},$$slots:{default:!0}});var a=I(i,2),o=e=>{Xk(e,{get label(){return V(m)},get description(){return n.item.description}})};D(a,e=>{n.item.description&&e(o)}),O(t),h(e,t)},o=e=>{var t=tj(),n=q(t,!0);z(()=>T(n,V(d).waitingForData)),h(e,t)},s=(t,n=E,r=E)=>{var i=U(),a=K(i);S(a,17,n,([e,t])=>e,(t,n)=>{var i=y(()=>k(V(n),2));let a=()=>V(i)[1];var o=U(),c=K(o),l=t=>{let n=y(()=>r()?`${r()}/${a().name}`:a().name),i=y(()=>ae.has(V(n)));var o=rj(),c=N(o),l=N(c);{let e=y(()=>V(i)?`rotate-90`:``);rt(l,{size:12,get class(){return`shrink-0 transition-transform duration-150 ${V(e)??``}`}})}var u=I(l,2),d=e=>{bt(e,{size:13,class:`shrink-0 text-primary/70`})},f=e=>{Yn(e,{size:13,class:`shrink-0 text-primary/70`})};D(u,e=>{V(i)?e(d):e(f,-1)});var p=I(u,2),m=q(p,!0);O(c);var g=I(c,2),_=e=>{var t=nj(),r=N(t);s(r,()=>a().children,()=>V(n)),O(t),h(e,t)};D(g,e=>{V(i)&&e(_)}),O(o),z(()=>T(m,a().name)),e(`click`,c,()=>oe(V(n))),h(t,o)},u=e=>{var t=ij(),n=N(t),r=N(n);qn(r,{size:12,class:`shrink-0 text-muted-foreground`});var i=I(r,2),o=q(i);O(n);var s=I(n,2),c=q(s,!0);O(t),z(e=>{T(o,`${a().file.fileName??``}${a().file.fileType??``}`),T(c,e)},[()=>hk(gk(a().file.data))]),h(e,t)};D(c,e=>{a().type===`folder`?e(l):e(u,-1)}),h(t,o)}),h(t,i)},c=e=>{var t=U(),n=K(t),i=e=>{var t=aj(),n=q(t,!0);z(()=>T(n,V(d).waitingForFiles)),h(e,t)},a=e=>{var t=fj(),n=N(t),i=N(n),a=N(i),o=q(a,!0),c=I(a,2),l=q(c,!0);O(i);var u=I(i,2),f=e=>{var t=cj(),n=N(t),r=e=>{s(e,()=>V(ne),()=>``)},i=e=>{var t=sj();S(t,23,()=>V(P),(e,t)=>B(e)+`#`+t,(e,t)=>{var n=oj(),r=N(n),i=q(r),a=I(r,2),o=q(a,!0);O(n),z(e=>{T(i,`${V(t).fileName??``}${V(t).fileType??``}`),T(o,e)},[()=>hk(gk(V(t).data))]),h(e,n)}),O(t),h(e,t)};D(n,e=>{V(ne)?e(r):e(i,-1)}),O(t),h(e,t)};D(u,e=>{V(F)>1&&e(f)}),O(n);var p=I(n,2),m=e=>{var t=uj(),n=N(t),r=q(n,!0),i=I(n,2),a=q(i,!0),o=I(i,2);S(o,20,()=>V(re),e=>e,(e,t)=>{var n=lj(),r=N(n),i=q(r,!0);O(n),z(()=>T(i,t)),h(e,n)}),O(o);var s=I(o,2),c=q(s,!0);O(t),z(e=>{T(r,V(d).duplicateFilesTitle),T(a,e),T(c,V(d).duplicateFilesHint)},[()=>qe(V(re).length,V(d).duplicatePathsOne,V(d).duplicatePathsOther)]),h(e,t)};D(p,e=>{V(ie)&&e(m)});var g=I(p,2),_=e=>{var t=dj(),n=q(t,!0);z(()=>T(n,V(j))),h(e,t)};D(g,e=>{V(j)&&e(_)});var v=I(g,2);{let e=y(()=>V(A)||V(ie));We(v,{onclick:H,get disabled(){return V(e)},class:`w-full`,children:(e,t)=>{r();var n=M();z(e=>T(n,e),[()=>V(A)?V(d).downloading:V(F)===1?V(d).downloadFile:Ge(V(d).downloadFiles,{count:V(F)})]),h(e,n)},$$slots:{default:!0}})}O(t),z((e,t)=>{T(o,e),T(l,t)},[()=>V(F)===1?`${V(P)[0].fileName}${V(P)[0].fileType}`:Ge(V(d).fileCount,{count:V(F)}),()=>hk(V(L))]),h(e,t)};D(n,e=>{V(F)===0?e(i):e(a,-1)}),h(e,t)},u=Je(),d=y(()=>u.messages),f=w(!1),p,m=y(()=>n.displayName||n.item.displayName||n.item.paramId),g=y(()=>typeof n.value==`object`&&n.value!==null),_=y(()=>n.value==null?``:V(g)?JSON.stringify(n.value,null,2):String(n.value)),x=y(()=>n.value!=null);async function C(){try{await navigator.clipboard.writeText(V(_)),i(f,!0),clearTimeout(p),p=setTimeout(()=>i(f,!1),2e3)}catch(e){console.error(`Failed to copy:`,e)}}let A=w(!1),j=w(null),P=y(()=>n.value?Array.isArray(n.value)?n.value.filter(mk):mk(n.value)?[n.value]:[]:[]),F=y(()=>V(P).length),L=y(()=>V(P).reduce((e,t)=>e+gk(t.data),0));function ee(e){let t=new Se;for(let n=0;n<e.length;n++){let r=e[n],i=XO(r.subFolder),a=t;for(let e of i){a.has(e)||a.set(e,{type:`folder`,name:e,children:new Se});let t=a.get(e);t.type===`folder`&&(a=t.children)}let o=`${r.fileName}${r.fileType??``}`,s=a.has(o)?`${o}#${n}`:o;a.set(s,{type:`file`,file:r})}return t}function R(e,t=``){let n=[];for(let[r,i]of e)if(i.type===`folder`){let e=t?`${t}/${r}`:r;n.push(e),n.push(...R(i.children,e))}return n}let te=y(()=>V(P).some(e=>e.subFolder&&e.subFolder.length>0)),ne=y(()=>V(te)?ee(V(P)):null);function B(e){let t=XO(e.subFolder).join(`/`),n=`${e.fileName}${e.fileType??``}`;return t?`${t}/${n}`:n}let re=y(()=>{let e={};for(let t of V(P)){let n=B(t);e[n]=(e[n]??0)+1}return Object.entries(e).filter(([,e])=>e>1).map(([e])=>e)}),ie=y(()=>V(re).length>0),ae=new xe;ce(()=>{if(V(ne)){ae.clear();for(let e of R(V(ne)))ae.add(e)}});function oe(e){ae.has(e)?ae.delete(e):ae.add(e)}async function H(){if(V(F)!==0){i(A,!0),i(j,null);try{if(V(F)===1)await pk(V(P)[0],V(P)[0].fileName);else{let e=n.displayName?n.displayName.replace(/[^a-z0-9]/gi,`_`).toLowerCase():`download`;await pk(V(P),e)}}catch(e){i(j,e instanceof Error?e.message:V(d).downloadFailed,!0),console.error(`[OutputDisplayWidget] Download error:`,e)}finally{i(A,!1)}}}var se=U(),le=K(se),ue=e=>{var t=_j(),i=N(t);a(i);var s=I(i,2),l=e=>{{let t=y(()=>typeof n.value==`string`?n.value:n.value==null?``:JSON.stringify(n.value));BA(e,{get item(){return n.item},get value(){return V(t)}})}},u=e=>{$A(e,{get item(){return n.item},get value(){return n.value}})},p=e=>{c(e)},m=e=>{var t=mj();v(t,1,`min-h-12.5 rounded px-3 py-3 font-mono text-sm border border-border flex items-center bg-muted/50 wrap-break-word`);var n=N(t),r=e=>{var t=pj(),n=q(t,!0);z(()=>T(n,V(_))),h(e,t)},i=e=>{o(e)};D(n,e=>{V(x)?e(r):e(i,-1)}),O(t),h(e,t)},b=e=>{var t=gj(),i=N(t),a=e=>{var t=hj();v(t,1,`min-h-12.5 rounded px-3 py-3 font-mono text-sm border border-border max-h-96 overflow-auto bg-muted/10 wrap-anywhere text-foreground`);var n=q(t,!0);z(()=>T(n,V(_))),h(e,t)},s=e=>{var t=mj();v(t,1,`min-h-12.5 rounded px-3 py-3 font-mono text-sm border border-border bg-muted/10 wrap-anywhere wrap-break-word whitespace-pre-wrap text-foreground`);var r=N(t),i=e=>{var t=M();z(()=>T(t,n.value)),h(e,t)},a=e=>{o(e)};D(r,e=>{V(x)?e(i):e(a,-1)}),O(t),h(e,t)};D(i,e=>{V(g)?e(a):e(s,-1)});var c=I(i,2),l=e=>{var t=mj(),n=N(t);We(n,{onclick:C,size:`sm`,children:(e,t)=>{r();var n=M();z(()=>T(n,V(f)?V(d).copied:V(d).copy)),h(e,n)},$$slots:{default:!0}}),O(t),z(()=>v(t,1,`right-2 top-2 absolute transition-opacity ${V(f)?`opacity-100`:`opacity-0 group-hover:opacity-100 focus-within:opacity-100`}`)),h(e,t)};D(c,e=>{V(x)&&e(l)}),O(t),h(e,t)};D(s,e=>{n.item.widgetType===`chart`?e(l):n.item.widgetType===`image`?e(u,1):n.item.widgetType===`file`?e(p,2):n.item.widgetType===`number`?e(m,3):n.item.widgetType===`text`&&e(b,4)}),O(t),h(e,t)};D(le,e=>{n.item.widgetType!==`dynamicValueList`&&e(ue)}),h(t,se),b()}x([`click`]);var yj=m(`<div class="gap-3 py-3 flex flex-col"></div>`),bj=m(`<div class="px-3"><h2 class="sr-only"> </h2> <!></div>`),xj=m(`<div class="h-full bg-muted dark:bg-background"><!></div>`);function Sj(e,t){l(t,!0);let n=(e,n=E,r=E)=>{let i=y(()=>u(n().paramId));var a=U(),s=K(a),c=e=>{MA(e,{get item(){return n()},get value(){return t.values[V(i).id]},get displayName(){return n().displayName},get onChange(){return t.onValueChange},get disabled(){return r().disabled},get dynamicOptions(){return o()[V(i).id]}})};D(s,e=>{V(i)&&e(c)}),h(e,a)},r=(e,n=E)=>{let r=y(()=>d(n().paramId));var i=U(),a=K(i),o=e=>{vj(e,{get item(){return n()},get value(){return t.values[n().paramId]},get displayName(){return n().displayName}})};D(a,e=>{V(r)&&e(o)}),h(e,i)},i=Je(),a=y(()=>i.messages),o=P(t,`dynamicOptions`,19,()=>({})),s=y(()=>t.tab.groups.filter(e=>Ek(e,t.values)));function u(e){return t.inputs.find(t=>t.id===e)}function d(e){return t.outputs.find(t=>t.id===e)}var f=U(),p=K(f);c(p,()=>bn,(e,i)=>{i(e,{get value(){return t.tab.id},class:`min-h-0`,children:(e,i)=>{var o=xj();$s(N(o),{class:`h-full`,orientation:`vertical`,children:(e,i)=>{var o=bj(),c=N(o),l=q(c,!0),u=I(c,2),d=e=>{eu(e,{type:`empty`,size:`medium`,get message(){return V(a).tabNoGroups}})},f=e=>{var i=yj();S(i,21,()=>V(s),e=>e.id,(e,i)=>{{let a=y(()=>V(i).columns??1),o=y(()=>t.collapsedGroups[V(i).id]??!1),c=y(()=>V(s).length===1);Ik(e,{get label(){return V(i).label},get description(){return V(i).description},get items(){return V(i).items},get columns(){return V(a)},get collapsed(){return V(o)},get values(){return t.values},onToggle:()=>t.onToggleGroup(V(i).id),get inputSnippet(){return n},get outputSnippet(){return r},get flat(){return V(c)}})}}),O(i),h(e,i)};D(u,e=>{V(s).length===0?e(d):e(f,-1)}),O(o),z(()=>T(l,t.tab.label)),h(e,o)},$$slots:{default:!0}}),O(o),h(e,o)},$$slots:{default:!0}})}),h(e,f),b()}function Cj(e){return typeof e==`object`&&!!e&&(`targetInputId`in e||`options`in e)}function wj(e){if(Cj(e))return e;let t=e;for(let e=0;e<2&&typeof t==`string`;e++){try{t=JSON.parse(t)}catch{return null}if(Cj(t))return t}return null}var Tj=new Map,Ej=8;function Dj(e){if(typeof e!=`string`||e.length<1024)return wj(e);let t=Tj.get(e);if(t!==void 0||Tj.has(e))return Tj.delete(e),Tj.set(e,t??null),t??null;let n=performance.now(),r=wj(e);if(e.length>262144){let t=r?.options?Object.keys(r.options).length:0;console.info(`[DVL] parsed ${(e.length/1048576).toFixed(1)} MB options payload (${t} options) in ${(performance.now()-n).toFixed(0)}ms — cache miss`)}if(Tj.size>=Ej){let e=Tj.keys().next().value;e!==void 0&&Tj.delete(e)}return Tj.set(e,r),r}function Oj(e){let t=new Map;for(let n of Rk(e)){if(n.type!==`output`||n.widgetType!==`dynamicValueList`)continue;let e=n;typeof e.paramId==`string`&&t.set(e.paramId,{id:e.paramId,targetInputId:e.config?.targetInputId})}for(let n of e.outputs??[])n.type===`dynamicValueList`&&t.set(n.id,{id:n.id,targetInputId:n.targetInputId});return[...t.values()]}function kj(e,t){let n={};for(let r of Oj(e)){let e=Dj(t[r.id]);if(!e)continue;let i=e.targetInputId??r.targetInputId;i&&e.options&&typeof e.options==`object`&&(n[i]=e.options)}return n}var Aj=m(`<!> <!>`,1);function jj(e,t){l(t,!0);let n=P(t,`requestedTabId`,3,null),r=w(``),a=pe({}),o=y(()=>t.schema.layout.type===`tabbed`?t.schema.layout.tabs.filter(e=>Dk(e,t.values)?t.panelFilter?t.panelFilter===`right`?e.position===`right`:e.position!==`right`:!0:!1):[]),s=y(()=>V(o).length>1),u=y(()=>kj(t.schema,t.values));ce(()=>{n()&&V(o).some(e=>e.id===n())?i(r,n()):V(o).length>0&&!V(o).some(e=>e.id===V(r))&&i(r,V(o)[0].id,!0)}),ce(()=>{if(t.schema.layout.type!==`tabbed`)return;let e={};t.schema.layout.tabs.forEach(t=>t.groups.forEach(t=>{t.id in a||(e[t.id]=t.collapsed??!1)})),Object.keys(e).length>0&&Object.assign(a,e)});function d(e){a[e]=!a[e]}function f(e){i(r,e,!0)}var p=U(),m=K(p);c(m,()=>wn,(e,n)=>{n(e,{variant:`flush`,class:`min-h-0 mx-1 flex-1`,children:(e,n)=>{var i=U(),l=K(i);c(l,()=>vn,(e,n)=>{n(e,{get value(){return V(r)},variant:`line`,class:`min-h-0 flex-1`,children:(e,n)=>{var i=Aj(),c=K(i),l=e=>{RO(e,{get tabs(){return V(o)},get activeTabId(){return V(r)},onTabChange:f})};D(c,e=>{V(s)&&e(l)});var p=I(c,2);S(p,17,()=>V(o),e=>e.id,(e,n)=>{Sj(e,{get tab(){return V(n)},get values(){return t.values},get collapsedGroups(){return a},onToggleGroup:d,get onValueChange(){return t.onValueChange},get inputs(){return t.schema.inputs},get outputs(){return t.schema.outputs},get dynamicOptions(){return V(u)}})}),h(e,i)},$$slots:{default:!0}})}),h(e,i)},$$slots:{default:!0}})}),h(e,p),b()}var Mj=m(`<span class="text-xs font-semibold"> </span>`),Nj=m(`<button type="button"><!></button>`),Pj=m(`<div role="button" tabindex="0"></div>`);function Fj(t,n){l(n,!0);let r=Je(),i=y(()=>r.messages),o=y(()=>[`gap-1 py-2 lg:py-3 lg:flex-col lg:w-auto px-2 lg:px-0`,`flex w-full shrink-0 flex-row items-center`,`backdrop-blur-sm bg-background/90 cursor-pointer`].join(` `));var s=Pj();S(s,21,()=>n.tabs,e=>e.id,(t,r)=>{var i=Nj();v(i,1,re(`w-8 h-8 rounded cursor-pointer flex shrink-0 items-center justify-center text-muted-foreground transition-colors hover:bg-accent hover:text-foreground`));var a=N(i),o=e=>{var t=U(),n=K(t),i=e=>{MO(e,{get icon(){return V(r).icon},class:`h-4 w-4`})},a=y(()=>V(r).icon.includes(`:`)),o=e=>{var t=Mj(),n=q(t,!0);z(()=>T(n,V(r).icon)),h(e,t)};D(n,e=>{V(a)?e(i):e(o,-1)}),h(e,t)},s=e=>{var t=Mj(),n=q(t,!0);z(e=>T(n,e),[()=>V(r).label[0]?.toUpperCase()??`?`]),h(e,t)};D(a,e=>{V(r).icon?e(o):e(s,-1)}),O(i),z(()=>{F(i,`title`,V(r).label),F(i,`aria-label`,V(r).label)}),e(`click`,i,e=>{e.stopPropagation(),n.onTabClick(V(r).id)}),h(t,i)}),O(s),z(e=>{v(s,1,re(V(o)),`svelte-17r9ylq`),a(s,`--collapsed-w: ${n.collapsedWidth??``}px;`),F(s,`aria-label`,e)},[()=>V(i).expandSidePanel.replace(`{side}`,n.side===`left`?V(i).panelSideLeft:V(i).panelSideRight)]),e(`click`,s,function(...e){n.onExpand?.apply(this,e)}),e(`keydown`,s,e=>(e.key===`Enter`||e.key===` `)&&n.onExpand()),h(t,s),b()}x([`click`,`keydown`]);function Ij(e,t,n){let r=[];for(let n of Lk(e))for(let i of n.items??[]){if(i.type!==`input`)continue;let a=t[i.paramId],o=e.inputs.find(e=>e.id===i.paramId);a!==void 0&&o&&r.push({paramId:i.paramId,nickname:o.nickname,displayName:i.displayName||o.nickname,paramType:o.paramType,value:a,groupName:n.label})}return{id:kn(),name:n.name,description:n.description,timestamp:new Date().toISOString(),schemaId:e.id,documentId:e.documentId??``,projectFileName:e.projectFileName??``,pluginVersion:e.pluginVersion??``,author:n.author,tags:n.tags??[],parameters:r}}function Lj(e,t){let n=[];e.documentId!==(t.documentId??``)&&n.push({paramId:`__document__`,severity:`error`,message:`Document ID mismatch - this state was saved for a different document`,details:{expected:t.documentId??``,actual:e.documentId}}),e.schemaId!==t.id&&n.push({paramId:`__schema__`,severity:`warning`,message:`Schema has changed since this state was saved`,details:{expected:t.id,actual:e.schemaId}});for(let r of e.parameters){let e=t.inputs.find(e=>e.id===r.paramId);if(!e){n.push({paramId:r.paramId,severity:`error`,message:`Parameter "${r.nickname}" no longer exists in the schema`});continue}e.nickname!==r.nickname&&n.push({paramId:r.paramId,severity:`warning`,message:`Parameter nickname changed`,details:{expected:r.nickname,actual:e.nickname}})}let r=n.some(e=>e.severity===`error`);return{isValid:n.length===0,issues:n,canLoad:!r}}function Rj(e,t){let n={};for(let r of e.parameters)t.inputs.some(e=>e.id===r.paramId)&&(n[r.paramId]=r.value);return n}function zj(e,t){let n=Lj(e,t);return{values:Rj(e,t),issues:n.issues,isValid:n.isValid,canLoad:n.canLoad}}function Bj(e){let t=new Blob([JSON.stringify(e,null,2)],{type:`application/json`}),n=e.name.replace(/[^a-z0-9]/gi,`_`),r=e.timestamp.split(`T`)[0].replace(/-/g,`_`),i=document.createElement(`a`);i.href=URL.createObjectURL(t),i.download=`${n}_${r}.slvp`,i.click(),URL.revokeObjectURL(i.href)}async function Vj(e){let t=JSON.parse(await e.text());if(!t.id||!t.name||!t.documentId||!t.parameters)throw Error(`Invalid saved state file format`);return t}var Hj={saveMenuItem:`Save inputs…`,loadMenuItem:`Load inputs…`,saveDialogTitle:`Save inputs`,saveDialogDescription:`Save the current input values as a .slvp file`,saveNameLabel:`Name *`,saveNamePlaceholder:`e.g., Design Option A`,saveDescriptionLabel:`Description`,saveDescriptionPlaceholder:`Optional description of this state`,saveAuthorLabel:`Author`,saveAuthorPlaceholder:`Your name or email`,saveTagsLabel:`Tags`,saveTagsPlaceholder:`facade, option-a, client-approved (comma-separated)`,saveNameRequired:`Please enter a name for these inputs`,saveConfirmButton:`Save`,loadDialogTitle:`Load inputs`,loadDialogDescription:`Select a .slvp file from your drive to load`,loadFromFileButton:`Select .slvp File`,loadEmptyList:`No saved states found`,loadImportError:`Failed to import state: `,validationTitle:`State Validation Report`,validationValidatingPrefix:`Validating state: `,validationNoIssuesTitle:`No Issues Found`,validationNoIssuesBody:`This state can be loaded safely.`,validationWarningsTitle:`Warnings Detected`,validationWarningsBody:`{count} warning(s) found, but state can still be loaded.`,validationErrorsTitle:`Critical Errors`,validationErrorsBody:`Cannot load this state due to critical incompatibilities.`,validationIssuesHeading:`Issues:`,validationExpected:`Expected:`,validationActual:`Actual:`,cancelButton:`Cancel`,loadAnywayButton:`Load Anyway`},Uj=m(`<!> <!>`,1),Wj=m(`<!> <div class="gap-4 py-4 grid"><div class="gap-2 grid"><!> <!></div> <div class="gap-2 grid"><!> <!></div> <div class="gap-2 grid"><!> <!></div> <div class="gap-2 grid"><!> <!></div></div> <!>`,1),Gj=m(`<p class="text-sm py-8 text-center text-muted-foreground">…</p>`),Kj=m(`<p class="text-sm py-8 text-center text-destructive"> </p>`),qj=m(`<p class="text-sm py-8 text-center text-muted-foreground"> </p>`),Jj=m(`<div class="text-xs mt-0.5 text-muted-foreground"> </div>`),Yj=m(`<button type="button" class="p-3 w-full rounded-lg border text-left transition-colors hover:bg-muted"><div class="text-sm font-medium"> </div> <!> <div class="text-xs mt-1 text-muted-foreground"> </div></button>`),Xj=m(`<div class="space-y-2"></div>`),Zj=m(`<div class="py-4"><!></div>`),Qj=m(`<!> `,1),$j=m(`<div class="py-8"><!></div>`),eM=m(`<!> <!> <!>`,1),tM=m(`<div class="gap-2 flex flex-col"><h4 class="text-sm font-medium"> </h4> <!></div>`),nM=m(`<div class="gap-4 py-4 grid"><!> <!></div>`),rM=m(`<input type="file" accept=".slvp,.sps" class="hidden"/> <!> <!> <!>`,1);function iM(t,n){l(n,!0);let a=y(()=>({...Hj,...n.labels})),o=w(!1),s=w(``),u=w(``),d=w(``),f=w(``),p=w(!1),m=w(!1),g=w(null),_=w(``),v=w(null),x=w(pe([])),C=w(!1),E=w(``);function k(){i(s,`State ${new Date().toLocaleDateString()}`),i(u,``),i(d,n.schema.author||``,!0),i(f,``),i(o,!0)}async function A(){if(!V(s).trim()){Dn.error(V(a).saveNameRequired);return}let e=Ij(n.schema,n.currentValues,{name:V(s).trim(),description:V(u).trim()||void 0,author:V(d).trim()||void 0,tags:V(f).split(`,`).map(e=>e.trim()).filter(e=>e.length>0)});n.onSaveState?await n.onSaveState(e):Bj(e),i(o,!1)}function j(e){let t=zj(e,n.schema);t.isValid?n.onLoadValues(t.values):(i(g,t,!0),i(_,e.name,!0),i(p,!0))}async function P(e){let t=e.target;if(t.files&&t.files.length!==0){try{j(await Vj(t.files[0]))}catch(e){Dn.error(V(a).loadImportError+e.message)}t.value=``}}function F(){V(g)&&V(g).canLoad&&(n.onLoadValues(V(g).values),i(p,!1),i(g,null))}function ee(){i(p,!1),i(g,null)}async function R(){if(i(m,!0),n.onListStates){i(C,!0),i(E,``),i(x,[],!0);try{i(x,await n.onListStates(),!0)}catch(e){i(E,e.message,!0)}finally{i(C,!1)}}}function te(){V(v)?.click(),i(m,!1)}function ne(e){j(e),i(m,!1)}var B={openSave:k,openLoad:R},re=rM(),ie=K(re);L(ie,e=>i(v,e),()=>V(v));var ae=I(ie,2);c(ae,()=>hn,(e,t)=>{t(e,{get open(){return V(o)},set open(e){i(o,e,!0)},children:(e,t)=>{var n=U(),l=K(n);c(l,()=>mn,(e,t)=>{t(e,{children:(e,t)=>{var n=Wj(),l=K(n);c(l,()=>fn,(e,t)=>{t(e,{children:(e,t)=>{var n=Uj(),i=K(n);c(i,()=>dn,(e,t)=>{t(e,{children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).saveDialogTitle)),h(e,n)},$$slots:{default:!0}})});var o=I(i,2);c(o,()=>pn,(e,t)=>{t(e,{children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).saveDialogDescription)),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})});var p=I(l,2),m=N(p),g=N(m);gn(g,{for:`export-name`,children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).saveNameLabel)),h(e,n)},$$slots:{default:!0}});var _=I(g,2);Cn(_,{id:`export-name`,get placeholder(){return V(a).saveNamePlaceholder},get value(){return V(s)},set value(e){i(s,e,!0)}}),O(m);var v=I(m,2),y=N(v);gn(y,{for:`export-description`,children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).saveDescriptionLabel)),h(e,n)},$$slots:{default:!0}});var b=I(y,2);_n(b,{id:`export-description`,get placeholder(){return V(a).saveDescriptionPlaceholder},rows:3,get value(){return V(u)},set value(e){i(u,e,!0)}}),O(v);var x=I(v,2),S=N(x);gn(S,{for:`export-author`,children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).saveAuthorLabel)),h(e,n)},$$slots:{default:!0}});var C=I(S,2);Cn(C,{id:`export-author`,get placeholder(){return V(a).saveAuthorPlaceholder},get value(){return V(d)},set value(e){i(d,e,!0)}}),O(x);var w=I(x,2),E=N(w);gn(E,{for:`export-tags`,children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).saveTagsLabel)),h(e,n)},$$slots:{default:!0}});var D=I(E,2);Cn(D,{id:`export-tags`,get placeholder(){return V(a).saveTagsPlaceholder},get value(){return V(f)},set value(e){i(f,e,!0)}}),O(w),O(p);var k=I(p,2);c(k,()=>ft,(e,t)=>{t(e,{children:(e,t)=>{var n=Uj(),s=K(n);We(s,{variant:`outline`,onclick:()=>i(o,!1),children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).cancelButton)),h(e,n)},$$slots:{default:!0}});var c=I(s,2);We(c,{onclick:A,children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).saveConfirmButton)),h(e,n)},$$slots:{default:!0}}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})});var oe=I(ae,2);c(oe,()=>hn,(t,o)=>{o(t,{get open(){return V(m)},set open(e){i(m,e,!0)},children:(t,o)=>{var s=U(),l=K(s);c(l,()=>mn,(t,o)=>{o(t,{children:(t,o)=>{var s=eM(),l=K(s);c(l,()=>fn,(e,t)=>{t(e,{children:(e,t)=>{var n=Uj(),i=K(n);c(i,()=>dn,(e,t)=>{t(e,{children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).loadDialogTitle)),h(e,n)},$$slots:{default:!0}})});var o=I(i,2);c(o,()=>pn,(e,t)=>{t(e,{children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).loadDialogDescription)),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})});var u=I(l,2),d=t=>{var n=Zj(),r=N(n),i=e=>{var t=Gj();h(e,t)},o=e=>{var t=Kj(),n=q(t,!0);z(()=>T(n,V(E))),h(e,t)},s=e=>{var t=qj(),n=q(t,!0);z(()=>T(n,V(a).loadEmptyList)),h(e,t)},c=t=>{var n=Xj();S(n,21,()=>V(x),e=>e.id,(t,n)=>{var r=Yj(),i=N(r),a=q(i,!0),o=I(i,2),s=e=>{var t=Jj(),r=q(t,!0);z(()=>T(r,V(n).description)),h(e,t)};D(o,e=>{V(n).description&&e(s)});var c=I(o,2),l=q(c,!0);O(r),z(e=>{T(a,V(n).name),T(l,e)},[()=>new Date(V(n).timestamp).toLocaleString()]),e(`click`,r,()=>ne(V(n))),h(t,r)}),O(n),h(t,n)};D(r,e=>{V(C)?e(i):V(E)?e(o,1):V(x).length===0?e(s,2):e(c,-1)}),O(n),h(t,n)},f=e=>{var t=$j(),n=N(t);We(n,{onclick:te,class:`w-full`,size:`lg`,children:(e,t)=>{var n=Qj(),r=K(n);yt(r,{class:`mr-2 h-4 w-4`});var i=I(r);z(()=>T(i,` ${V(a).loadFromFileButton??``}`)),h(e,n)},$$slots:{default:!0}}),O(t),h(e,t)};D(u,e=>{n.onListStates?e(d):e(f,-1)});var p=I(u,2);c(p,()=>ft,(e,t)=>{t(e,{children:(e,t)=>{We(e,{variant:`outline`,onclick:()=>i(m,!1),children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).cancelButton)),h(e,n)},$$slots:{default:!0}})},$$slots:{default:!0}})}),h(t,s)},$$slots:{default:!0}})}),h(t,s)},$$slots:{default:!0}})});var H=I(oe,2);return c(H,()=>hn,(e,t)=>{t(e,{get open(){return V(p)},set open(e){i(p,e,!0)},children:(e,t)=>{var n=U(),i=K(n);c(i,()=>mn,(e,t)=>{t(e,{class:`max-w-2xl`,children:(e,t)=>{var n=eM(),i=K(n);c(i,()=>fn,(e,t)=>{t(e,{children:(e,t)=>{var n=Uj(),i=K(n);c(i,()=>dn,(e,t)=>{t(e,{children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).validationTitle)),h(e,n)},$$slots:{default:!0}})});var o=I(i,2);c(o,()=>pn,(e,t)=>{t(e,{children:(e,t)=>{var n=U(),r=K(n),i=e=>{var t=M();z(()=>T(t,`${V(a).validationValidatingPrefix??``}${V(_)??``}`)),h(e,t)};D(r,e=>{V(_)&&e(i)}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})});var o=I(i,2),s=e=>{var t=nM(),n=N(t),i=e=>{On(e,{tone:`success`,get title(){return V(a).validationNoIssuesTitle},children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).validationNoIssuesBody)),h(e,n)},$$slots:{default:!0}})},o=e=>{On(e,{tone:`warning`,get title(){return V(a).validationWarningsTitle},children:(e,t)=>{r();var n=M();z(e=>T(n,e),[()=>V(a).validationWarningsBody.replace(`{count}`,String(V(g).issues.length))]),h(e,n)},$$slots:{default:!0}})},s=e=>{On(e,{tone:`danger`,get title(){return V(a).validationErrorsTitle},children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).validationErrorsBody)),h(e,n)},$$slots:{default:!0}})};D(n,e=>{V(g).isValid?e(i):V(g).canLoad?e(o,1):e(s,-1)});var c=I(n,2),l=e=>{var t=tM(),n=N(t),r=q(n,!0),i=I(n,2);{let e=y(()=>V(g).issues.map(e=>({severity:e.severity===`error`?`error`:`warning`,message:e.message,detail:e.details?`${V(a).validationExpected} ${e.details.expected} → ${V(a).validationActual} ${e.details.actual}`:void 0})));Le(i,{get issues(){return V(e)}})}O(t),z(()=>T(r,V(a).validationIssuesHeading)),h(e,t)};D(c,e=>{V(g).isValid||e(l)}),O(t),h(e,t)};D(o,e=>{V(g)&&e(s)});var l=I(o,2);c(l,()=>ft,(e,t)=>{t(e,{children:(e,t)=>{var n=Uj(),i=K(n);We(i,{variant:`outline`,onclick:ee,children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).cancelButton)),h(e,n)},$$slots:{default:!0}});var o=I(i,2),s=e=>{We(e,{onclick:F,children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).loadAnywayButton)),h(e,n)},$$slots:{default:!0}})};D(o,e=>{V(g)?.canLoad&&e(s)}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})}),e(`change`,ie,P),h(t,re),b(B)}x([`change`,`click`]);async function aM(e,t){if(!e.solvesFirst||!t)return e.onclick();let n=await t();n.status===`applied`&&await e.onclick(n)}var oM=m(`<!> `,1),sM=m(`<span class="text-xs leading-snug text-muted-foreground"> </span>`),cM=m(`<!> <span class="flex flex-col"> <!></span>`,1),lM=m(`<!> <!> <!> <!>`,1),uM=m(`<!> <!>`,1),dM=m(`<div class="mt-3 pb-3 pt-2 px-2 flex justify-end border-t border-border/50"><!></div>`),fM=m(`<div class="panel-footer px-1 svelte-1txzu1i"><!></div>`),pM=m(`<div class="panel-content-wrapper svelte-1txzu1i"><!> <!></div>`),mM=m(`<div class="drawer-footer svelte-1txzu1i"><!></div>`),hM=m(`<div class="my-4 gap-2 flex items-center" aria-hidden="true"><div class="h-px flex-1 bg-border"></div> <span class="text-xs font-medium px-1 text-muted-foreground"> </span> <div class="h-px flex-1 bg-border"></div></div> <!>`,1),gM=m(`<div class="min-h-0 flex flex-1 flex-col"><!></div> <div><button class="drawer-handle-bar svelte-1txzu1i"><div class="drawer-pill svelte-1txzu1i"></div> <span class="text-sm font-medium ml-2 text-foreground"> </span> <!></button> <div class="drawer-content svelte-1txzu1i"><div class="px-3 pb-6"><!> <!></div></div> <!></div>`,1),_M=m(`<div class="flex flex-1 flex-col overflow-hidden"><div class="px-3 pt-3 flex-1 overflow-y-auto"><!> <!></div> <!></div>`),vM=m(`<div class="min-h-0 flex h-full flex-1 justify-center"><div class="min-h-0 flex h-full w-4/5 flex-col"><!></div></div>`),yM=m(`<div><!></div>`),bM=m(`<!> <!> <!>`,1),xM=m(`<div class="min-h-0 flex h-full flex-1"><!> <!> <!></div>`),SM=m(`<main data-layout-root=""><!> <!></main> <!>`,1);function CM(t,n){l(n,!0);let a=e=>{var t=U(),r=K(t);c(r,()=>ks,(e,t)=>{t(e,{children:(e,t)=>{var r=uM(),i=K(r);{let e=(e,t)=>{We(e,W(()=>(t?.()).props,{variant:`outline`,size:`icon-lg`,class:`shrink-0`,get title(){return V(m).moreActions},get"aria-label"(){return V(m).moreActions},children:(e,t)=>{ht(e,{})},$$slots:{default:!0}}))};c(i,()=>Ds,(t,n)=>{n(t,{child:e,$$slots:{child:!0}})})}var a=I(i,2);c(a,()=>ls,(e,t)=>{t(e,{side:`top`,align:`end`,sideOffset:6,class:`min-w-56 z-10001 w-auto`,children:(e,t)=>{var r=lM(),i=K(r),a=e=>{var t=U(),n=K(t);c(n,()=>ds,(e,t)=>{t(e,{onSelect:()=>V(ne)?.openSave(),children:(e,t)=>{var n=oM(),r=K(n);Vn(r,{});var i=I(r);z(()=>T(i,` ${V(te).saveMenuItem??``}`)),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(i,e=>{M()&&e(a)});var o=I(i,2),s=e=>{var t=U(),n=K(t);c(n,()=>ds,(e,t)=>{t(e,{onSelect:()=>V(ne)?.openLoad(),children:(e,t)=>{var n=oM(),r=K(n);yt(r,{});var i=I(r);z(()=>T(i,` ${V(te).loadMenuItem??``}`)),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(o,e=>{ee()&&e(s)});var l=I(o,2),u=e=>{var t=U(),n=K(t);c(n,()=>vs,(e,t)=>{t(e,{})}),h(e,t)};D(l,e=>{(M()||ee())&&j().length>0&&e(u)});var d=I(l,2);S(d,17,j,e=>e.id,(e,t)=>{let r=y(()=>V(t).hint??(V(t).solvesFirst&&V(re)?V(m).calculatesFirst:void 0));var i=U(),a=K(i);{let e=y(()=>V(t).variant??`default`);c(a,()=>ds,(i,a)=>{a(i,{get disabled(){return V(t).disabled},get variant(){return V(e)},onSelect:()=>aM(V(t),n.ensureSolved),class:`items-start`,children:(e,n)=>{var i=cM(),a=K(i),o=e=>{let n=y(()=>V(t).icon);var r=U(),i=K(r);c(i,()=>V(n),(e,t)=>{t(e,{class:`mt-0.5`})}),h(e,r)};D(a,e=>{V(t).icon&&e(o)});var s=I(a,2),l=N(s),u=I(l),d=e=>{var t=sM(),n=q(t,!0);z(()=>T(n,V(r))),h(e,t)};D(u,e=>{V(r)&&e(d)}),O(s),z(()=>T(l,`${V(t).label??``} `)),h(e,i)},$$slots:{default:!0}})})}h(e,i)}),h(e,r)},$$slots:{default:!0}})}),h(e,r)},$$slots:{default:!0}})}),h(e,t)},s=e=>{var t=U(),r=K(t),i=e=>{{let t=y(()=>V(B)?a:void 0);ru(e,{get hasPendingChanges(){return x()},get hasNeverSolved(){return C()},get isSolving(){return n.isSolving},get oncalculate(){return A()},get trailing(){return V(t)}})}},o=e=>{var t=dM(),n=N(t);a(n),O(t),h(e,t)};D(r,e=>{n.schema.instanceSolve===!1?e(i):V(B)&&e(o,1)}),h(e,t)},u=(e,t=E,r=E,i)=>{let a=o(()=>d(i?.(),!0));var c=pM(),l=N(c),u=e=>{jj(e,{get schema(){return n.schema},get values(){return n.values},get onValueChange(){return n.onValueChange},get panelFilter(){return t()},get requestedTabId(){return r()}})};D(l,e=>{n.schema.layout.type===`tabbed`&&e(u)});var f=I(l,2),p=e=>{var t=fM(),n=N(t);s(n),O(t),h(e,t)};D(f,e=>{V(a)&&!V(de)&&e(p)}),O(c),h(e,c)},f=(e,t=E)=>{var n=mM(),r=N(n);s(r),O(n),z(()=>n.inert=t()),h(e,n)},p=Je(),m=y(()=>p.messages),g=P(n,`meshes`,19,()=>[]),_=P(n,`showSolvingIndicator`,3,!1),x=P(n,`hasPendingChanges`,3,!1),C=P(n,`hasNeverSolved`,3,!1),k=P(n,`isViewerFullscreen`,15,!1),A=P(n,`oncalculate`,3,()=>{}),j=P(n,`panelActions`,19,()=>[]),M=P(n,`showSaveButton`,3,!0),ee=P(n,`showLoadButton`,3,!0),R=P(n,`viewerConfig`,19,()=>({})),te=y(()=>({...Hj,...n.presetLabels})),ne=w(null),B=y(()=>M()||ee()||j().length>0),re=y(()=>x()||C()),ie=y(()=>n.schema.layout.type===`tabbed`?n.schema.layout.tabs.filter(e=>Dk(e,n.values)):[]);ce(()=>{if(n.schema.layout.type!==`tabbed`)return;let e={};n.schema.layout.tabs.forEach(t=>t.groups.forEach(t=>{let r=Tk(t.items,n.values);t.items.forEach(t=>{if(t.type===`linebreak`)return;let{visible:i,disabled:a,defaultValue:o}=r[wk(t)],s=n.schema.inputs.find(e=>e.id===t.paramId);s&&o!==void 0&&(!i||a)&&n.values[s.id]!==o&&(e[s.id]=o)})})),Object.keys(e).length>0&&Object.assign(n.values,e)});let ae=y(()=>V(ie).filter(e=>e.position!==`right`)),oe=y(()=>V(ie).filter(e=>e.position===`right`)),H=y(()=>V(ae).length>0),se=y(()=>V(oe).length>0),le=y(()=>n.showViewer||V(se)),ue=y(()=>!n.showViewer&&V(H)&&V(se)),de=w(!1),fe=w(!1),G=y(()=>V(ae)[0]?.label??V(m).parametersTab);ce(()=>{let e=window.matchMedia(`(max-width: 639px)`);function t(){i(de,e.matches,!0)}return t(),e.addEventListener(`change`,t),()=>e.removeEventListener(`change`,t)});let pe=w(!1),me=w(!1),he=w(null),ge=w(null),_e=w(null),ve=w(null),ye=y(()=>`${V(H)?`L`:``}${n.showViewer?`V`:``}${V(se)?`R`:``}`);async function be(e){Object.assign(n.values,e),await n.onLoadValues?.(e)}let xe=0;function Se(e){xe=e.touches[0].clientY}function Ce(e){let t=e.changedTouches[0].clientY-xe;Math.abs(t)>40&&i(fe,t<0)}var we=SM(),Te=K(we);let J;var Ee=N(Te),De=t=>{var a=U(),o=K(a),s=t=>{var a=gM(),o=K(a),s=N(o);{let e=y(()=>({...R(),backgroundColor:n.schema?.viewerOptions?.backgroundColor,showSceneManager:!1}));zE(s,{get meshes(){return g()},get isSolving(){return n.isSolving},get isBlurred(){return V(fe)},get drawerOpen(){return V(fe)},get logoUrl(){return n.logoUrl},get onViewerReady(){return n.onViewerReady},get viewerConfig(){return V(e)},get isFullscreen(){return k()},set isFullscreen(e){k(e)}})}O(o);var c=I(o,2);let l;var d=N(c),p=I(N(d),2),_=q(p,!0),b=I(p,2);{let e=y(()=>V(fe)?``:`rotate-180`);it(b,{size:16,get class(){return`ml-auto text-muted-foreground transition-transform duration-300 ${V(e)??``}`}})}O(d);var x=I(d,2),S=N(x),C=N(S),w=e=>{u(e,()=>V(se)?`left`:void 0,()=>V(_e),()=>!1)};D(C,e=>{V(H)&&e(w)});var E=I(C,2),A=e=>{var t=hM(),n=K(t),i=I(N(n),2),a=q(i,!0);r(2),O(n);var o=I(n,2);u(o,()=>`right`,()=>V(ve),()=>!1),z(()=>T(a,V(oe)[0]?.label??V(m).moreTab)),h(e,t)};D(E,e=>{V(se)&&e(A)}),O(S),O(x);var j=I(x,2);f(j,()=>!V(fe)),O(c),z(()=>{l=v(c,1,`drawer-container rounded-t-2xl z-40 border-t bg-background shadow-sheet svelte-1txzu1i`,null,l,{"drawer-open":V(fe),"drawer-closed":!V(fe)}),F(d,`aria-expanded`,V(fe)),T(_,V(G)),x.inert=!V(fe)}),e(`click`,d,()=>i(fe,!V(fe))),e(`touchstart`,d,Se,void 0,!0),e(`touchend`,d,Ce),h(t,a)},c=e=>{var t=_M(),n=N(t),i=N(n),a=e=>{u(e,()=>V(se)?`left`:void 0,()=>V(_e),()=>!1)};D(i,e=>{V(H)&&e(a)});var o=I(i,2),s=e=>{var t=hM(),n=K(t),i=I(N(n),2),a=q(i,!0);r(2),O(n);var o=I(n,2);u(o,()=>`right`,()=>V(ve),()=>!1),z(()=>T(a,V(oe)[0]?.label??V(m).moreTab)),h(e,t)};D(o,e=>{V(se)&&e(s)}),O(n);var c=I(n,2);f(c,()=>!1),O(t),h(e,t)};D(o,e=>{n.showViewer?e(s):e(c,-1)}),h(t,a)},Oe=e=>{var t=vM(),n=N(t),r=N(n);u(r,()=>V(se)?`right`:void 0,()=>V(se)?V(ve):V(_e)),O(n),O(t),h(e,t)},ke=e=>{var t=xM(),r=N(t),a=e=>{Fj(e,{side:`left`,get tabs(){return V(ae)},collapsedWidth:48,onExpand:()=>V(he)?.expand(),onTabClick:e=>{i(_e,e,!0),V(he)?.expand()}})};D(r,e=>{V(pe)&&V(le)&&V(H)&&e(a)});var o=I(r,2);c(o,()=>Ql,(e,t)=>{t(e,{direction:`horizontal`,get autoSaveId(){return`selva-layout-${V(ye)??``}`},class:`min-h-0 flex-1`,children:(e,t)=>{var r=bM(),a=K(r),o=e=>{var t=uM(),r=K(t);{let e=y(()=>V(ue)?50:n.showViewer&&V(se)?22:30);c(r,()=>Wl,(t,n)=>{L(n(t,{order:1,get defaultSize(){return V(e)},minSize:15,maxSize:45,collapsible:!0,collapsedSize:0,onCollapse:()=>i(pe,!0),onExpand:()=>i(pe,!1),class:`ml-1`,children:(e,t)=>{var n=yM(),r=N(n);u(r,()=>V(se)?`left`:void 0,()=>V(_e)),O(n),z(()=>v(n,1,`min-h-0 flex h-full flex-col ${k()||V(pe)?`hidden`:``}`)),h(e,n)},$$slots:{default:!0}}),e=>i(he,e,!0),()=>V(he))})}var a=I(r,2);c(a,()=>Xl,(e,t)=>{t(e,{withHandle:!0,line:!1,get"data-collapsed"(){return V(pe)},onclick:()=>{V(pe)&&V(he)?.expand()}})}),h(e,t)};D(a,e=>{V(H)&&e(o)});var s=I(a,2),l=e=>{var t=U(),r=K(t);c(r,()=>Wl,(e,t)=>{t(e,{order:2,minSize:20,class:`min-h-0 mx-1 flex flex-col`,children:(e,t)=>{{let t=y(()=>({...R(),backgroundColor:n.schema?.viewerOptions?.backgroundColor}));zE(e,{get meshes(){return g()},get isSolving(){return n.isSolving},get logoUrl(){return n.logoUrl},get onViewerReady(){return n.onViewerReady},get viewerConfig(){return V(t)},get isFullscreen(){return k()},set isFullscreen(e){k(e)}})}},$$slots:{default:!0}})}),h(e,t)};D(s,e=>{n.showViewer&&e(l)});var d=I(s,2),f=e=>{var t=uM(),n=K(t);c(n,()=>Xl,(e,t)=>{t(e,{withHandle:!0,line:!1,get"data-collapsed"(){return V(me)},onclick:()=>{V(me)&&V(ge)?.expand()}})});var r=I(n,2);{let e=y(()=>V(ue)?50:25);c(r,()=>Wl,(t,n)=>{L(n(t,{order:3,get defaultSize(){return V(e)},minSize:15,maxSize:45,collapsible:!0,collapsedSize:0,onCollapse:()=>i(me,!0),onExpand:()=>i(me,!1),class:`mr-1`,children:(e,t)=>{var n=yM(),r=N(n);u(r,()=>`right`,()=>V(ve),()=>!V(H)),O(n),z(()=>v(n,1,`min-h-0 flex h-full flex-col ${k()||V(me)?`hidden`:``}`)),h(e,n)},$$slots:{default:!0}}),e=>i(ge,e,!0),()=>V(ge))})}h(e,t)};D(d,e=>{V(se)&&e(f)}),h(e,r)},$$slots:{default:!0}})});var s=I(o,2),l=e=>{Fj(e,{side:`right`,get tabs(){return V(oe)},collapsedWidth:48,onExpand:()=>V(ge)?.expand(),onTabClick:e=>{i(ve,e,!0),V(ge)?.expand()}})};D(s,e=>{V(me)&&V(se)&&e(l)}),O(t),h(e,t)};D(Ee,e=>{V(de)?e(De):!n.showViewer&&!V(ue)&&V(H)!==V(se)?e(Oe,1):e(ke,-1)}),HE(I(Ee,2),{get show(){return _()}}),O(Te);var Ae=I(Te,2);L(iM(Ae,{get schema(){return n.schema},get currentValues(){return n.values},onLoadValues:be,get onSaveState(){return n.onSaveState},get onListStates(){return n.onListStates},get labels(){return n.presetLabels}}),e=>i(ne,e,!0),()=>V(ne)),z(()=>J=v(Te,1,`min-h-0 sm:flex-row sm:py-(--page-py) flex flex-1 flex-col overflow-hidden ${V(pe)?`sm:pl-0`:`sm:pl-(--page-px)`} ${V(me)?`sm:pr-0`:`sm:pr-(--page-px)`}`,`svelte-1txzu1i`,J,{"fullscreen-layout":k(),relative:V(de)})),h(t,we),b()}x([`click`,`touchstart`,`touchend`]);function wM(e){let{FAST_THRESHOLD_MS:t,SLOW_THRESHOLD_MS:n,HISTORY_SIZE:r,ANIMATION_DELAY:a}=iu.SOLVING_INDICATOR,o=w(!1),s=null,c=null,l=[];return ce(()=>{let u=e();return de(()=>{if(u){c=performance.now();let e=l.length===0?1/0:l.reduce((e,t)=>e+t,0)/l.length;if(l.length>0&&e<t)return;let r=e===1/0||e>=n?0:(e-t)/(n-t)*a;s||(r===0?i(o,!0):s=setTimeout(()=>{i(o,!0),s=null},r))}else c!==null&&(l.push(performance.now()-c),l.length>r&&l.shift(),c=null),s&&=(clearTimeout(s),null),i(o,!1)}),()=>{s&&clearTimeout(s)}}),{get show(){return V(o)}}}var TM=`[Selva:blocked]`,EM=/:\s*component\s+"([^"]*)"\s*\(([0-9a-fA-F-]{36}|\.\.\.)\)\s*$/;function DM(e){let t=e.includes(TM),n=!t&&e.includes(`[Selva:log]`),r=t||n||e.includes(`[Selva:msg]`),i=e,a,o=EM.exec(i);return o&&(a=o[1]||void 0,i=i.slice(0,o.index)),r&&(i=i.replace(TM,``).replace(`[Selva:msg]`,``).replace(`[Selva:log]`,``).replace(/^\s*\d+\.\s*Solution exception:\s*/,``)),{message:i.replace(/\s{2,}/g,` `).trim(),source:a,blocked:t,authored:r,logOnly:n}}function OM(e,t){let n=(e,t)=>{let{message:n,source:r,authored:i,logOnly:a}=DM(e),o=(i||r===`Message`)&&!a;return{level:t,message:n,...r?{source:r}:{},...o?{isGate:o}:{}}};return[...e.map(e=>n(e,`error`)),...t.map(e=>n(e,`warning`))]}var kM=new Set([`error`,`warning`,`remark`]);function AM(e){if(!e||typeof e!=`object`)return null;let t=e;if(!Array.isArray(t.diagnostics))return null;let n=new Set,r=[];for(let e of t.diagnostics){if(!e||typeof e!=`object`)continue;let t=e,i=typeof t.message==`string`?t.message.trim():``;if(!i)continue;let a=kM.has(t.level)?t.level:`remark`,o=typeof t.source==`string`&&t.source?t.source:void 0,s=t.isGate===!0,c=`${a}\u0000${i}\u0000${o??``}\u0000${s}`;n.has(c)||(n.add(c),r.push({level:a,message:i,...o?{source:o}:{},...s?{isGate:s}:{}}))}let i=t.aborted===!0;return{diagnostics:r,blocked:t.blocked===!0||i,aborted:i}}function jM(e,t){return{diagnostics:OM(e,t),blocked:e.some(e=>e.includes(TM)),aborted:!1}}function MM(e,t){let n=t.blocked||t.aborted,r=n?[]:e.meshes;return{outputs:n?{}:e.outputs,...r===void 0?{}:{meshes:r},errors:t.diagnostics.filter(e=>e.level===`error`).map(e=>e.message),warnings:t.diagnostics.filter(e=>e.level===`warning`).map(e=>e.message),diagnostics:t.diagnostics,blocked:t.blocked,aborted:t.aborted,...e.source===void 0?{}:{source:e.source}}}zO.DEFINITION_NOT_CACHED;var NM=new Map;function PM(e,t){NM.set(e,t)}PM(`Rhino.Geometry.Point3d`,(e,t)=>{let n=t;return!n||typeof n.X!=`number`?null:new e.Point([n.X,n.Y,n.Z])}),PM(`Rhino.Geometry.Line`,(e,t)=>{let n=t;return!n||!n.From||!n.To?null:new e.Line([n.From.X,n.From.Y,n.From.Z],[n.To.X,n.To.Y,n.To.Z])});function FM(e){if(NM.has(e))return NM.get(e);for(let[t,n]of NM)if(e.startsWith(t))return n}function IM(e){return!!(e&&typeof e==`object`&&typeof e.data==`string`)}function LM(e,t){return{__decodeError:!0,type:e,raw:t}}function RM(e,t,n){let r=FM(t),i=!1;if(r)try{let t=r(n,e);if(t!=null)return t}catch(e){HO().warn(`Failed to decode Rhino type ${t}:`,e),i=!0}try{if(IM(e))return n.CommonObject.decode(e)}catch(n){return HO().warn(`Failed to decode ${t} with CommonObject:`,n),LM(t,e)}return i?LM(t,e):e}function zM(e){let t=new WeakSet,n=e=>{if(!e||typeof e!=`object`||t.has(e))return;t.add(e);let r=e.delete;if(typeof r==`function`){let t=e.isDeleted;(typeof t!=`function`||!t.call(e))&&r.call(e);return}if(Array.isArray(e)){for(let t of e)n(t);return}let i=Object.getPrototypeOf(e);if(i===Object.prototype||i===null)for(let t of Object.values(e))n(t)};n(e)}var BM={STRING:`System.String`,INT:`System.Int32`,DOUBLE:`System.Double`,BOOL:`System.Boolean`},VM=[`WebDisplay`],HM=`FileData`;function UM(e){return VM.some(t=>e.includes(t))}function WM(e){if(typeof e!=`string`)return e;let t=e.trim();if(!(t.startsWith(`{`)||t.startsWith(`[`)||t.startsWith(`"`)))return e;try{let e=JSON.parse(t);if(typeof e==`string`)try{return JSON.parse(e)}catch{return e}return e}catch{return e}}function GM(e,t,n){switch(t){case BM.STRING:return typeof e==`string`?e.replace(/^"(.*)"$/,`$1`):e;case BM.INT:return Number.parseInt(e,10);case BM.DOUBLE:return Number.parseFloat(e);case BM.BOOL:return String(e).toLowerCase()===`true`;default:return n&&t.startsWith(`Rhino.Geometry.`)?RM(e,t,n):e}}var KM=new WeakMap;function qM(e){if(KM.has(e))return KM.get(e);let t=WM(e.data);return KM.set(e,t),t}function JM(e,t,n,r){if(typeof e.data!=`string`)return e.data;let i=n?qM(e):e.data;return n&&t.includes(HM)?XM(i)??i:GM(i,t,r)}var YM=e=>e===!0||typeof e==`string`&&e.trim().toLowerCase()===`true`;function XM(e){if(!e||typeof e!=`object`)return null;let t=UO(e,`fileName`),n=UO(e,`fileType`),r=UO(e,`subFolder`),i=UO(e,`isBase64Encoded`);if(typeof t!=`string`||typeof n!=`string`||typeof r!=`string`||!GO(e,`data`)||typeof i!=`boolean`&&typeof i!=`string`)return null;let a=UO(e,`metadata`);return{fileName:t,fileType:n,data:UO(e,`data`),isBase64Encoded:YM(i),subFolder:r,...a?{metadata:a}:{}}}function ZM(e){let t=UO(e,`values`);return Array.isArray(t)?t:[]}function QM(e){return typeof e.type==`string`?e.type:``}function $M(e,t){if(e&&typeof e==`object`){for(let n of Object.values(e))if(Array.isArray(n))for(let e of n)e&&typeof e==`object`&&t(e)}}function eN(e,t=!1,n={}){let{parseValues:r=!0,rhino:i,stringOnly:a=!1}=n,o={},s=new Set;for(let n of ZM(e)){let e=UO(n,`paramName`);$M(UO(n,`innerTree`),n=>{let c=QM(n);if(UM(c)||a&&c!==BM.STRING)return;let l=t?n.id:e;if(!l)return;let u=JM(n,c,r,i);l in o?s.has(l)?o[l].push(u):(o[l]=[o[l],u],s.add(l)):o[l]=u})}return{values:o,dispose:()=>zM(o)}}function tN(e){let t=[];for(let n of ZM(e))$M(UO(n,`innerTree`),e=>{if(!QM(e).includes(HM))return;let n=XM(qM(e));n&&t.push(n)});return t}function nN(e,t,n={}){let{parseValues:r=!0,rhino:i,stringOnly:a=!1}=n;for(let n of ZM(e)){let e=UO(n,`innerTree`),o=!1;if(`byName`in t){if(UO(n,`paramName`)!==t.byName)continue;o=!0}let s=[];if($M(e,e=>{if(`byId`in t){if(e.id!==t.byId)return;o=!0}let n=QM(e);UM(n)||a&&n!==BM.STRING||s.push(JM(e,n,r,i))}),o)return s.length===0?void 0:s.length===1?s[0]:s}}var rN=class{response;debug;constructor(e,t=!1){this.response=e,this.debug=t}getValues(e=!1,t={}){return eN(this.response,e,t)}getValue(e,t){return nN(this.response,e,t)}getFileData(){return tN(this.response)}async getAndDownloadFiles(e,t){await tk(this.getFileData(),e,t)}},iN=/^\{(-?\d+(?:;-?\d+)*)?\}$/;function aN(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;let t=Object.entries(e);return t.length>0&&t.every(([e,t])=>iN.test(e)&&Array.isArray(t))}function oN(e,t,n){let r=Number(e.toFixed(t));return Math.abs(e-r)<n?r:e}function sN(e,t){if(!Number.isFinite(e)||e===0)return .1;let n=Math.abs(e);if(n>=1){let n=String(e).split(`.`)[1];if(n&&n.length>0){let e=Math.min(n.length,12),r=10**-e,i=Number(r.toFixed(e));return Math.abs(i-r)<t?i:r}return 1}let r=String(e),i=r.toLowerCase().match(/e(-?\d+)/);if(i){let e=Number(i[1]);if(e<0||r.toLowerCase().includes(`e-`)){let n=Math.abs(e),r=10**-n,i=Number(r.toFixed(n));return Math.abs(i-r)<t?i:r}return .1}let a=n.toFixed(12).replace(/0+$/,``),o=Math.min((a.split(`.`)[1]||``).length,12);if(o===0)return .1;let s=10**-o,c=Number(s.toFixed(o));return Math.abs(c-s)<t?c:s}function cN(e){return typeof e.stepSize==`number`&&Number.isFinite(e.stepSize)&&e.stepSize>0?e.stepSize:void 0}function lN(e,t,n){if(e==null)return e;if(Array.isArray(e)){let n=e.map(t).filter(e=>e!==null);return n.length>0?n:void 0}let r=t(e);return r===null?n?void 0:e:r}var uN=e=>{if(typeof e==`number`)return Number.isFinite(e)?e:null;if(typeof e==`string`){let t=e.trim();if(t===``||/^[+-]?0[xbo]/i.test(t))return null;let n=Number(t);return Number.isFinite(n)?n:null}return null},dN=e=>{if(typeof e==`boolean`)return e;if(typeof e==`string`){let t=e.trim().toLowerCase();if(t===`true`)return!0;if(t===`false`)return!1}return null},fN=e=>typeof e==`string`?e.length>=2&&e.startsWith(`"`)&&e.endsWith(`"`)?e.slice(1,-1):e.startsWith(`"`)?e.slice(1):e:null,pN=e=>{if(typeof e==`string`){let t=e.trim();return t.startsWith(`"`)&&t.endsWith(`"`)&&(t=t.slice(1,-1).trim()),t}return null};function mN(e){return t=>{if(typeof t==`object`&&t)return t;if(typeof t==`string`&&t.trim()!==``)try{let n=JSON.parse(t);return typeof n==`object`&&n?n:(HO().warn(`Parsed value for input ${e} is not an object`),null)}catch(n){return HO().warn(`Failed to parse object value "${t}" for input ${e}`,n),null}return null}}function hN(e,t=1e-8){let n=e.paramType===`Integer`,r=cN(e);if(aN(e.default))return{default:e.default,stepSize:r??(n?1:.1)};if(typeof e.default==`string`&&e.default.trim()!==``&&uN(e.default)===null)throw new BO(`Invalid numeric default "${e.default}" for input "${e.name||`unknown`}"`,zO.VALIDATION_ERROR,{context:{inputName:e.name,default:e.default}});let i=lN(e.default,uN,!0);if(n)return Array.isArray(i)?i=i.map(e=>typeof e==`number`?Math.round(e):e):typeof i==`number`&&(i=Math.round(i)),{default:i,stepSize:r??1};let a=Array.isArray(i)?i[0]:i,o;typeof a==`number`&&Number.isFinite(a)&&a!==0?o=a:typeof e.minimum==`number`&&Number.isFinite(e.minimum)&&e.minimum!==0?o=e.minimum:typeof e.maximum==`number`&&Number.isFinite(e.maximum)&&e.maximum!==0&&(o=e.maximum);let s=r??(o===void 0?.1:sN(o,t)),c=0,l=String(s),u=l.toLowerCase().match(/e(-?\d+)/);if(c=u?Math.abs(Number(u[1])):l.split(`.`)[1]?.length??0,c===0&&typeof a==`number`&&a!==0&&Math.abs(a)<1){let e=Math.ceil(-Math.log10(Math.abs(a)));Number.isFinite(e)&&e>0&&(c=e)}return c=Math.min(Math.max(c,0),12),Array.isArray(i)?i=i.map(e=>typeof e==`number`?oN(e,c,t):e):typeof i==`number`&&(i=oN(i,c,t)),{default:i,stepSize:s}}var gN=new Map([{types:[`Number`,`Integer`],parse(e,t){let{default:n,stepSize:r}=hN(e);return{...t,paramType:e.paramType,minimum:e.minimum,maximum:e.maximum,atLeast:e.atLeast,atMost:e.atMost,stepSize:r,default:n}},fallback(e,t){let n=(e.atMost??1)>1,r=typeof e.minimum==`number`&&Number.isFinite(e.minimum)&&e.minimum>0?e.minimum:0;return{...t,paramType:e.paramType,minimum:e.minimum,maximum:e.maximum,atLeast:e.atLeast,atMost:e.atMost,stepSize:cN(e)??(e.paramType===`Integer`?1:.1),default:n?[r]:r}}},{types:[`Boolean`],parse(e,t){if(aN(e.default))return{...t,paramType:`Boolean`,default:e.default};let n=lN(e.default,dN,!1);if(n!=null&&typeof n!=`boolean`&&!Array.isArray(n))throw new BO(`Invalid boolean default "${String(n)}" for input "${e.name||`unknown`}"`,zO.VALIDATION_ERROR,{context:{inputName:e.name,default:e.default}});return{...t,paramType:`Boolean`,default:n}},fallback(e,t){let n=(e.atMost??1)>1;return{...t,paramType:`Boolean`,default:n?[!1]:!1}}},{types:[`Text`],parse(e,t){let n=lN(e.default,fN,!1);return{...t,paramType:`Text`,default:n}},fallback(e,t){let n=(e.atMost??1)>1;return{...t,paramType:`Text`,default:n?[``]:``}}},{types:[`ValueList`],parse(e,t,n){if(!e.values||typeof e.values!=`object`||Object.keys(e.values).length===0)throw BO.missingValues(e.nickname||`unnamed`,`ValueList`);let r=e.default;if(e.default!==void 0&&e.default!==null){if(typeof e.default==`object`)throw new BO(`ValueList input "${e.nickname||`unnamed`}" default is not a string-able value`,zO.VALIDATION_ERROR,{context:{inputName:e.name,default:e.default}});let t=String(e.default).toLowerCase(),i=Object.keys(e.values).find(e=>e.toLowerCase()===t);if(i!==void 0)r=i;else{let t=`ValueList input "${e.nickname||`unnamed`}" default value "${e.default}" is not in available values`;HO().warn(t),n?.({code:zO.VALIDATION_ERROR,message:t})}}return{...t,paramType:`ValueList`,values:e.values,default:r}},fallback(e,t){return{...t,paramType:`ValueList`,values:e.values&&typeof e.values==`object`?e.values:{},default:void 0}}},{types:[`Geometry`],parse(e,t){let n=lN(e.default,mN(e.nickname||`unnamed`),!0);return{...t,paramType:`Geometry`,default:n}},fallback(e,t){let n=(e.atMost??1)>1;return{...t,paramType:`Geometry`,default:n?[null]:null}}},{types:[`File`],parse(e,t){let n=lN(e.default,mN(e.nickname||`unnamed`),!0);return{...t,paramType:`File`,acceptedFormats:e.acceptedFormats,default:n}},fallback(e,t){let n=(e.atMost??1)>1;return{...t,paramType:`File`,default:n?[null]:null}}},{types:[`Color`],parse(e,t){let n=lN(e.default,pN,!1);return{...t,paramType:`Color`,default:n}},fallback(e,t){let n=(e.atMost??1)>1;return{...t,paramType:`Color`,default:n?[`0, 0, 0`]:`0, 0, 0`}}}].flatMap(e=>e.types.map(t=>[t,e])));new Map([...gN.keys()].map(e=>[e.toLowerCase(),e]));function _N(e,t){return`external:${e}:${t}`}function vN(e){let{scopeKey:t,inputId:n}=e;if(!t||!n||typeof sessionStorage>`u`)return;let r=sessionStorage.getItem(_N(t,n));if(r!==null)try{return JSON.parse(r)}catch{return}}function yN(e){return zk(e).filter(e=>e.source?.kind===`client`).map(e=>({paramId:e.paramId,displayName:e.displayName??e.paramId}))}var bN=Object.freeze({solveId:null,running:!1,diagnostics:[],progress:new Map,ended:null,other:[],lastSeq:0});function xN(e,t){let n=t.solveId===e.solveId?e:{...bN,solveId:t.solveId,running:!0};if(t.seq<=n.lastSeq)return e;let r={...n,lastSeq:t.seq},i=t.payload??{};switch(t.type){case`solveStarted`:return{...r,running:!0};case`solveEnded`:return{...r,running:!1,ended:{kind:typeof i.kind==`string`?i.kind:`ok`}};case`diagnostic`:{let[e]=AM({diagnostics:[i]})?.diagnostics??[];return e?{...r,diagnostics:[...r.diagnostics,e]}:r}case`progress`:{let e=typeof i.source==`string`?i.source:``,t=new Map(r.progress),n=SN(i),a=r.progress.get(e)?.fraction;return a!==void 0&&n.fraction!==void 0&&n.fraction<a&&(n.fraction=a),t.set(e,n),{...r,progress:t}}default:return{...r,other:[...r.other,t]}}}function SN(e){let t=e=>typeof e==`number`&&Number.isFinite(e)?e:void 0,n=t(e.fraction),r=t(e.done),i=t(e.total),a=t(e.nextFraction),o=t(e.stepMs),s=e=>Math.min(1,Math.max(0,e));return{...typeof e.source==`string`?{source:e.source}:{},...n===void 0?{}:{fraction:s(n)},...r===void 0?{}:{done:r},...i===void 0?{}:{total:i},...typeof e.label==`string`?{label:e.label}:{},...a===void 0?{}:{nextFraction:s(a)},...o!==void 0&&o>0?{stepMs:o}:{}}}function CN(e,t,n){let r=new Set(yN(e).map(e=>e.paramId)),i={};for(let a of e.inputs){if(r.has(a.id)){let e=n({scopeKey:t,inputId:a.id});e!==void 0&&(i[a.id]=e);continue}i[a.id]=a.default??Bk(a.paramType)}for(let t of e.outputs)i[t.id]=null;return i}function wN(e){let t=e===!1;return{hasPendingChanges:t,hasNeverSolved:t}}function TN(e,t,n,r){return e.values[t]=n,r===!1?(e.pendingValues[t]=n,e.hasPendingChanges=!0,{state:e,shouldSolve:!1}):{state:e,shouldSolve:!0}}function EN(e,t){if(!e?.inputs)return t;let n={};for(let r of e.inputs)r.id in t&&(n[r.id]=t[r.id]);return n}function DN(e,t){return e.error=``,e.computeErrors=t.errors??[],e.computeWarnings=t.warnings??[],e.diagnostics=t.diagnostics??[],e.blocked=t.blocked??!1,e.blocked?(e.awaitingAck=!1,e.heldResult=null,kN(e,t)):jN(e.diagnostics)?(e.awaitingAck=!0,e.heldResult=t,e.pendingValues={},e.hasPendingChanges=!1,e):(e.awaitingAck=!1,e.heldResult=null,kN(e,t))}function ON(e){let t={};for(let n of e?.outputs??[])t[n.id]=null;return t}function kN(e,t){e.meshes=t.meshes??[];let{meshes:n,...r}=t;return e.lastResult=r,Object.assign(e.values,t.outputs),e.pendingValues={},e.hasPendingChanges=!1,e.hasNeverSolved=!1,e}function AN(e,t){return t?`solving`:e.awaitingAck?`review`:e.blocked?`blocked`:`idle`}function jN(e){return(e??[]).some(e=>e.isGate&&e.level!==`remark`)}function MN(e){let t=e.schema,n=wN(t?.instanceSolve),r={values:CN(t,e.scopeKey,vN),error:``,computeErrors:[],computeWarnings:[],diagnostics:[],blocked:!1,awaitingAck:!1,heldResult:null,meshes:[],pendingValues:{},hasPendingChanges:n.hasPendingChanges,hasNeverSolved:n.hasNeverSolved,lastResult:null},i=new Set,a=()=>i.forEach(e=>e()),o=new Set,s=[],c={status:`aborted`,diagnostics:[]};function l(){return new Promise(e=>s.push(e))}function u(e){let t=s;s=[],t.forEach(t=>t(e)),o.forEach(t=>t(e))}function d(){let e=s;s=[],e.forEach(e=>e(c))}function f(e){let t=r.diagnostics;if(e.aborted)return u({status:`aborted`,diagnostics:t});if(e.blocked)return u({status:`blocked`,diagnostics:t});u({status:`applied`,result:r.lastResult,diagnostics:t})}let p=bN,m=e.driver.onEvent?.(e=>{let t=xN(p,e);t!==p&&(p=t,a())});function h(){let e=l();return g(),e}function g(){e.driver.solve({...EN(t,r.values)}),a()}return{get values(){return r.values},get error(){return r.error},get computeErrors(){return r.computeErrors},get computeWarnings(){return r.computeWarnings},get diagnostics(){return r.diagnostics},get blocked(){return r.blocked},get awaitingAck(){return r.awaitingAck},acknowledge(){if(!r.awaitingAck)return;let e=r.heldResult;r.awaitingAck=!1,r.heldResult=null,e&&kN(r,e),a(),e&&f(e)},discard(){r.awaitingAck&&(r.awaitingAck=!1,r.heldResult=null,a(),u({status:`discarded`,diagnostics:r.diagnostics}))},get live(){return p},get phase(){return AN(r,e.driver.isSolving)},abort(){e.driver.cancel()},get meshes(){return r.meshes},get lastResult(){return r.lastResult},get hasPendingChanges(){return r.hasPendingChanges},get hasNeverSolved(){return r.hasNeverSolved},get isSolving(){return e.driver.isSolving},setValue(e,n,i=!1){let{shouldSolve:o}=TN(r,e,n,t?.instanceSolve);o||i?(i&&!o&&(r.pendingValues={},r.hasPendingChanges=!1),g()):a()},solve:h,ensureSolved(){return e.driver.isSolving||e.driver.hasQueued||r.awaitingAck?l():r.hasPendingChanges||r.hasNeverSolved||r.error||!r.lastResult?h():r.blocked?Promise.resolve({status:`blocked`,diagnostics:r.diagnostics}):Promise.resolve({status:`applied`,result:r.lastResult,diagnostics:r.diagnostics})},onSettled(e){return o.add(e),()=>o.delete(e)},loadValues(e){Object.assign(r.values,e),t?.instanceSolve===!1?(r.hasPendingChanges=!0,a()):g()},rebuild(n,i){d(),t=n,e.driver.clearCache?.(),r.meshes=[],r.lastResult=null,r.error=``,r.computeErrors=[],r.computeWarnings=[],r.diagnostics=[],r.blocked=!1,r.awaitingAck=!1,r.heldResult=null,r.pendingValues={},r.values=CN(n,i,vN);let o=wN(n?.instanceSolve);r.hasPendingChanges=o.hasPendingChanges,r.hasNeverSolved=o.hasNeverSolved,n&&Object.keys(r.values).length>0&&n.instanceSolve!==!1?g():a()},report(n){DN(r,n.blocked||n.aborted?{...n,outputs:ON(t),meshes:[]}:n),a(),!(r.awaitingAck||e.driver.hasQueued)&&f(n)},reportError(t){r.error=t,a(),e.driver.hasQueued||u({status:`failed`,error:t})},reportAborted(){a(),e.driver.hasQueued||u(c)},subscribe(e){return i.add(e),()=>i.delete(e)},notify:a,dispose(){m?.(),i.clear(),o.clear(),d()}}}function NN(e,t){let{runDeadlineMs:n,onChange:r}=t,i=!1,a=null,o=null;function s(e){i!==e&&(i=e,r?.())}function c(){o?.abort(),o=null}async function l(t){c(),o=new AbortController;let{signal:r}=o,i=setTimeout(()=>{console.warn(`[Solve/throttle] run exceeded ${n}ms — aborting`),o?.abort(new DOMException(`Run deadline exceeded`,`TimeoutError`))},n);s(!0);try{await e(t,r)}catch(e){(!(e instanceof Error)||e.name!==`AbortError`&&e.name!==`TimeoutError`)&&console.error(`[Solve/throttle] unhandled error in run:`,e)}finally{if(clearTimeout(i),s(!1),o=null,a!==null){let e=a;a=null,l(e)}}}function u(e){i?(a!==null&&console.debug(`[Solve/throttle] superseded pending run (latest-wins)`),a=e):l(e)}function d(){a=null,c()}return{trigger:u,get isRunning(){return i},get hasPending(){return a!==null},cancel:d}}function PN(e){return FN(e)}function FN(e){if(typeof e!=`object`||!e)return JSON.stringify(e)??`null`;if(Array.isArray(e))return`[${e.map(FN).join(`,`)}]`;let t=e;return`{${Object.keys(t).sort().map(e=>`${JSON.stringify(e)}:${FN(t[e])}`).join(`,`)}}`}function IN(e={}){let{max:t=16,meshPolicy:n}=e,r=new Map;function i(e){e.meshes?.length&&n?.release(e.meshes)}function a(e){return!n||!e.meshes?.length?e:{...e,meshes:n.clone(e.meshes)}}function o(e){let t=r.get(e);t!==void 0&&(r.delete(e),i(t))}return{get(e){let n=PN(e),i=r.get(n);if(i!==void 0)return r.delete(n),r.set(n,i),console.info(`[Solve/memo] HIT — served from client memo (${r.size}/${t})`),a(i)},set(e,n){let i=PN(e);for(o(i),r.set(i,a(n));r.size>t;){let e=r.keys().next().value;if(e===void 0)break;o(e),console.info(`[Solve/memo] evicted LRU entry (cap ${t})`)}},clear(){r.size>0&&console.info(`[Solve/memo] cleared ${r.size} entries (definition changed)`),r.forEach(i),r.clear()}}}function LN(e,t,n){let{meshPolicy:r,solveDeadlineMs:i,onChange:a,events:o}=n,s=IN({meshPolicy:r});function c(e){e.reason?.name===`TimeoutError`?t().reportError(`The solve took longer than ${Math.round(i/1e3)} s and was stopped.`):t().reportAborted()}let l=NN(async(n,r)=>{let i=s.get(n);if(i!==void 0){if(r.aborted)return c(r);t().report(i);return}try{let i=await e(n,r);if(r.aborted)return console.debug(`[Solve/driver] solve completed after abort — result discarded`),c(r);let a={...i,values:n};s.set(n,a),t().report(a)}catch(e){if(r.aborted)return console.debug(`[Solve/driver] solve aborted (cancelled or timed out)`),c(r);console.warn(`[Solve/driver] solve failed:`,e),t().reportError(e instanceof Error?e.message:String(e))}},{runDeadlineMs:i,onChange:a});return{solve(e){l.trigger(e)},cancel(){l.cancel(),o?.cancelCurrent?.()},get isSolving(){return l.isRunning},get hasQueued(){return l.hasPending},clearCache(){s.clear()},...o?{onEvent:e=>o.subscribe(e)}:{}}}function RN(){return typeof crypto<`u`&&`randomUUID`in crypto?crypto.randomUUID().replace(/-/g,``):Array.from({length:32},()=>Math.floor(Math.random()*16).toString(16)).join(``)}function zN(e){let t=RN(),n=new Set,r=e.fetch??((...e)=>fetch(...e)),i=null,a=null;function o(){if(i||typeof EventSource>`u`)return;let r=`${e.endpoint}${e.endpoint.includes(`?`)?`&`:`?`}streamId=${t}`;i=new EventSource(r),i.addEventListener(`solve`,e=>{let t;try{t=JSON.parse(e.data)}catch{return}t.type===`solveStarted`?a=t.solveId:t.type===`solveEnded`&&a===t.solveId&&(a=null);for(let e of n)e(t)})}return o(),{streamId:t,get currentSolveId(){return a},subscribe(e){return n.add(e),o(),()=>{n.delete(e)}},cancelCurrent(){let t=a;t&&r(e.cancelEndpoint(t),{method:`POST`,keepalive:!0}).catch(()=>{})},close(){i?.close(),i=null,n.clear(),a=null}}}function BN(e){let t={};if(!e)return t;for(let n of e.split(`,`)){let[e,...r]=n.split(`;`).map(e=>e.trim()),i=r.find(e=>e.startsWith(`dur=`));if(!e||!i)continue;let a=Number(i.slice(4));Number.isFinite(a)&&(t[e]=a)}return t}var VN=e=>{throw Error(`Rate limit reached. Try again in ${Math.ceil(e)}s.`)},HN=()=>{throw Error(`Your session has expired. Sign in again in a new tab, then re-run — your inputs are preserved.`)};function UN(e){let t=e.debug??!1,n=(...e)=>{t&&console.info(...e)},r=0;return async(i,a)=>{let o=r-Date.now();if(o>0)throw Error(`Rate limit reached. Try again in ${Math.ceil(o/1e3)}s.`);let s=performance.now(),c=e.inputs(),l=e.outputs(),u=e.channel?.(),d=e.versionId?.(),f=e.streamId?.(),p=JSON.stringify({inputs:c,values:i,definitionUrl:e.definitionUrl(),...d?{versionId:d}:u===`draft`?{channel:`draft`}:{},...f?{streamId:f}:{}}),m;try{m=await fetch(e.endpoint,{method:`POST`,headers:{"Content-Type":`application/json`},body:p,signal:a})}catch(e){if(a.aborted)return n(`[Compute] solve aborted during fetch — empty result discarded`),{outputs:{}};throw Error(`Request blocked — your session may have expired. Reload the page to sign in again.`,{cause:e})}if(a.aborted)return n(`[Compute] solve aborted after headers — empty result discarded`),{outputs:{}};let h=m.redirected&&new URL(m.url).pathname===`/login`;if((m.status===401||h)&&(e.onSessionExpired??HN)(),!m.ok){let t=await m.text().catch(()=>``),n={};try{n=JSON.parse(t)}catch{t&&console.warn(`[Compute] non-JSON error body (HTTP ${m.status}):`,t.slice(0,300))}if(m.status===503||m.status===504)throw Error(n.message||`Compute server is offline or unreachable. Please try again later.`);if(m.status===429){let t=Number(m.headers.get(`Retry-After`))||Number(n.retryAfter)||5;r=Date.now()+t*1e3,(e.onRateLimited??VN)(t)}throw Error(n.message||`Compute error (HTTP ${m.status})`)}let g=performance.now()-s,_=performance.now(),v=await m.text();if(a.aborted)return n(`[Compute] solve aborted mid-download — empty result discarded`),{outputs:{}};let y=performance.now()-_,b=v.length,x;try{x=JSON.parse(v)}catch(e){throw Error(`Received an invalid response from the server. Reload the page and try again.`,{cause:e})}let S=new rN(x,!1),C=AM(x.selva?.outcome)??jM(x.errors??[],x.warnings??[]),w=C.blocked||C.aborted,T=e.meshes&&!w?await e.meshes.extract(S.response,{debug:t}):[],E={};for(let e of w?[]:l){let t=S.getValue({byId:e.id},{parseValues:!0});E[e.id]=t??(e.nickname?S.getValue({byName:e.nickname},{parseValues:!0}):void 0)}if(t){let e=JSON.stringify(i).length,t=BN(m.headers.get(`Server-Timing`)),r=t.total??0,a=Math.max(0,g-r),o=b/1048576,s=o>=1?`${o.toFixed(2)} MB`:`${(b/1024).toFixed(0)} KB`,c=y>0?(o/(y/1e3)).toFixed(1):`∞`,l=performance.memory?.usedJSHeapSize,u=l===void 0?``:` | heap=${(l/1048576).toFixed(0)} MB`;if(n(`[Compute] req=${(p.length/1024).toFixed(0)}KB (values ${(e/1024).toFixed(0)}KB) | ttfb=${g.toFixed(0)}ms (network≈${a.toFixed(0)} + server ${r.toFixed(0)}) | download=${y.toFixed(0)}ms (${s} @ ${c} MB/s)${u}`),t.selva_cache!==void 0){let e=t.selva_cache?`HIT — served without calling compute`:`miss — solved on Rhino.Compute`;n(`[Compute] └─ cache: ${e}`)}}return MM({outputs:E,meshes:T,source:x},C)}}var WN=m(`<span class="text-xs shrink-0 text-muted-foreground tabular-nums"> </span>`),GN=m(`<span class="shrink-0 tabular-nums"> </span>`),KN=m(`<div class="mb-1 gap-2 text-xs flex justify-between text-muted-foreground"><span class="truncate"> </span> <!></div>`),qN=m(`<div class="h-full w-(--bar-width) rounded-full bg-primary transition-all duration-(--bar-ms) ease-linear"></div>`),JN=m(`<div class="animate-pulse h-full w-1/3 rounded-full bg-primary/60"></div>`),YN=m(`<div class="mt-2" data-testid="solve-progress"><!> <div class="h-1 overflow-hidden rounded-full bg-muted" role="progressbar"><!></div></div>`),XN=m(`<div><div><div class="gap-2 flex items-center"><!> <span class="min-w-0 text-sm flex-1 truncate"> </span> <!> <!></div> <!></div></div>`),ZN=m(`<!> `,1),QN=m(`<div class="mb-2"><div class="gap-2 text-sm font-medium flex items-center"><!></div> <p class="text-xs text-muted-foreground"> </p></div>`),$N=m(`<div><!></div>`),eP=m(`<!> <!>`,1),tP=m(`<div class="mt-3 gap-2 flex justify-end"><!></div>`),nP=m(`<div data-testid="solve-messages"><!> <!> <!></div>`),rP=m(`<div class="sr-only" role="status" aria-live="polite"> </div> <!>`,1);function iP(e,t){l(t,!0);let n=P(t,`diagnostics`,19,()=>[]),o=Je(),s=y(()=>o.messages),c=y(()=>[...t.live.progress.values()]),u=w({}),d=new Map,f={};ce(()=>{let e={},t={},n=de(()=>V(u)),r=new Map;for(let i of V(c)){if(i.fraction===void 0)continue;let a=i.source??``;if(r.set(a,i),d.get(a)===i&&n[a]){e[a]=n[a],f[a]&&n[a]!==f[a]&&(t[a]=f[a]);continue}e[a]={width:i.fraction,ms:150},i.nextFraction!==void 0&&i.stepMs!==void 0&&(t[a]={width:i.nextFraction,ms:i.stepMs})}if(d=r,f=t,i(u,e),Object.keys(t).length===0)return;let a=requestAnimationFrame(()=>{a=requestAnimationFrame(()=>i(u,{...e,...t}))});return()=>cancelAnimationFrame(a)});let p=y(()=>n().filter(e=>e.isGate)),m=y(()=>V(p).filter(e=>e.level!==`remark`)),g=y(()=>V(p).filter(e=>e.level===`remark`)),_=w(null),x=y(()=>t.phase===`solving`?`live`:t.phase===`blocked`&&V(_)===n()?`idle`:t.phase),C=w(!1),E=null;ce(()=>{if(V(x)===`live`){i(C,!1);return}if(V(g).length===0||E===n()||(E=n(),V(x)!==`idle`))return;i(C,!0);let e=setTimeout(()=>i(C,!1),6e3);return()=>clearTimeout(e)});let k=w(!1),A=w(!1),j=0;ce(()=>{if(V(x)===`live`){i(A,!1);let e=setTimeout(()=>{i(k,!0),j=performance.now()},300);return()=>clearTimeout(e)}if(!de(()=>V(k))||V(x)!==`idle`){i(k,!1),i(A,!1);return}i(A,!0);let e=Math.max(200,400-(performance.now()-j)),t=setTimeout(()=>{i(k,!1),i(A,!1)},e);return()=>clearTimeout(t)});let L=y(()=>V(A)?`live`:V(x)),ee=y(()=>V(L)===`live`?[...t.live.diagnostics]:V(L)===`idle`?V(g):V(m)),te=y(()=>V(ee).map(e=>({severity:e.level===`remark`?`note`:e.level,message:e.message,source:e.source}))),ne=w(void 0),re=0;ce(()=>{let e=V(c)[0],t=de(()=>V(ne));if(e?.label===t?.label&&e?.done===t?.done){i(ne,e);return}let n=()=>{i(ne,e),re=performance.now()},r=200-(performance.now()-re);if(!t||r<=0){n();return}let a=setTimeout(n,r);return()=>clearTimeout(a)});let ie=y(()=>V(L)===`review`||V(L)===`blocked`?!0:V(L)===`live`?V(k)&&(V(ee).length>0||V(c).length>0):V(ee).length>0&&V(C)),ae=y(()=>V(ie)?V(L)===`live`?(V(ne)??V(c)[0])?.label??V(s).solveSolving:V(L)===`idle`?V(ee).map(e=>e.message).join(` `):``:``);function oe(){i(_,n())}function H(e){e.key===`Escape`&&(V(x)===`review`?t.ondiscard():V(x)===`blocked`&&oe())}var se=rP();R(`keydown`,B,H);var U=K(se),le=q(U,!0),ue=I(U,2),W=e=>{var n=nP(),i=N(n),o=e=>{let n=y(()=>V(ne)??V(c)[0]);var i=XN(),o=N(i),l=N(o),d=N(l);sr(d,{class:`h-4 w-4 animate-spin shrink-0 text-muted-foreground`});var f=I(d,2),p=q(f,!0),m=I(f,2),g=e=>{var t=WN(),r=q(t);z(()=>T(r,`${V(n).done??``} / ${V(n).total??``}`)),h(e,t)};D(m,e=>{V(n)?.done!==void 0&&V(n)?.total!==void 0&&e(g)});var _=I(m,2);We(_,{variant:`secondary`,size:`xs`,class:`-my-1 shrink-0`,get disabled(){return V(A)},get onclick(){return t.onabort},children:(e,t)=>{r();var n=M();z(()=>T(n,V(s).solveMessagesAbort)),h(e,n)},$$slots:{default:!0}}),O(l);var v=I(l,2);S(v,19,()=>V(c),e=>e.source??``,(e,t,n)=>{var r=YN(),i=N(r),o=e=>{var n=KN(),r=N(n),i=q(r,!0),a=I(r,2),o=e=>{var n=GN(),r=q(n);z(()=>T(r,`${V(t).done??``} / ${V(t).total??``}`)),h(e,n)};D(a,e=>{V(t).done!==void 0&&V(t).total!==void 0&&e(o)}),O(n),z(()=>T(i,V(t).label??V(t).source??``)),h(e,n)};D(i,e=>{V(n)>0&&e(o)});var c=I(i,2);F(c,`aria-valuemin`,0),F(c,`aria-valuemax`,100);var l=N(c),d=e=>{let n=y(()=>V(A)?{width:1,ms:200}:V(u)[V(t).source??``]??{width:V(t).fraction,ms:150});var r=qN();let i;z(()=>i=a(r,``,i,{"--bar-width":`${V(n).width*100}%`,"--bar-ms":`${V(n).ms??``}ms`})),h(e,r)},f=e=>{var t=JN();h(e,t)};D(l,e=>{V(t).fraction===void 0?e(f,-1):e(d)}),O(c),O(r),z(e=>{F(c,`aria-label`,V(t).label??V(t).source??V(s).solveSolving),F(c,`aria-valuenow`,e)},[()=>V(t).fraction===void 0?void 0:Math.round(V(t).fraction*100)]),h(e,r)}),O(o),O(i),z(()=>T(p,V(n)?.label??V(s).solveSolving)),h(e,i)},l=e=>{var t=QN(),n=N(t),r=N(n),i=e=>{var t=ZN(),n=K(t);Be(n,{severity:`error`});var r=I(n);z(()=>T(r,` ${V(s).solveBlockedTitle??``}`)),h(e,t)},a=e=>{var t=ZN(),n=K(t);Be(n,{severity:`warning`});var r=I(n);z(()=>T(r,` ${V(s).solveMessagesTitle??``}`)),h(e,t)};D(r,e=>{V(L)===`blocked`?e(i):e(a,-1)}),O(n);var o=I(n,2),c=q(o,!0);O(t),z(()=>T(c,V(L)===`blocked`?V(s).solveBlocked:V(s).solveMessagesDescription)),h(e,t)};D(i,e=>{V(L)===`live`?e(o):(V(L)===`review`||V(L)===`blocked`)&&e(l,1)});var d=I(i,2),f=e=>{var t=$N(),n=N(t);Le(n,{get issues(){return V(te)},variant:`plain`}),O(t),z(()=>v(t,1,`max-h-40 overflow-y-auto ${V(L)===`live`?`mt-3 pt-3 border-t`:``}`)),h(e,t)};D(d,e=>{V(ee).length>0&&e(f)});var p=I(d,2),m=e=>{var n=tP(),i=N(n),a=e=>{We(e,{variant:`outline`,size:`sm`,onclick:oe,children:(e,t)=>{r();var n=M();z(()=>T(n,V(s).solveMessagesDismiss)),h(e,n)},$$slots:{default:!0}})},o=e=>{var n=eP(),i=K(n);We(i,{variant:`outline`,size:`sm`,get onclick(){return t.ondiscard},children:(e,t)=>{r();var n=M();z(()=>T(n,V(s).solveMessagesDiscard)),h(e,n)},$$slots:{default:!0}});var a=I(i,2);We(a,{size:`sm`,get onclick(){return t.onconfirm},children:(e,t)=>{r();var n=M();z(()=>T(n,V(s).solveMessagesConfirm)),h(e,n)},$$slots:{default:!0}}),h(e,n)};D(i,e=>{V(L)===`blocked`?e(a):e(o,-1)}),O(n),h(e,n)};D(p,e=>{(V(L)===`review`||V(L)===`blocked`)&&e(m)}),O(n),z(()=>{v(n,1,`bottom-4 p-3 shadow-lg w-lg fixed left-1/2 z-50 max-w-screen-inset -translate-x-1/2 rounded-lg border bg-background ${V(L)===`blocked`?`border-destructive/50`:``}`),F(n,`role`,V(L)===`review`||V(L)===`blocked`?`alert`:void 0),F(n,`data-view`,V(L))}),h(e,n)};D(ue,e=>{V(ie)&&e(W)}),z(()=>T(le,V(ae))),h(e,se),b()}var aP={},oP=(function(e,t,n,r,i){var a=new Worker(aP[t]||(aP[t]=URL.createObjectURL(new Blob([e+`;addEventListener("error",function(e){e=e.error;postMessage({$e$:[e.message,e.code,e.stack]})})`],{type:`text/javascript`}))));return a.onmessage=function(e){var t=e.data,n=t.$e$;if(n){var r=Error(n[0]);r.code=n[1],r.stack=n[2],i(r,null)}else i(null,t)},a.postMessage(n,r),a}),sP=Uint8Array,cP=Uint16Array,lP=Int32Array,uP=new sP([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),dP=new sP([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),fP=new sP([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),pP=function(e,t){for(var n=new cP(31),r=0;r<31;++r)n[r]=t+=1<<e[r-1];for(var i=new lP(n[30]),r=1;r<30;++r)for(var a=n[r];a<n[r+1];++a)i[a]=a-n[r]<<5|r;return{b:n,r:i}},mP=pP(uP,2),hP=mP.b,gP=mP.r;hP[28]=258,gP[258]=28;for(var _P=pP(dP,0),vP=_P.b,yP=_P.r,bP=new cP(32768),xP=0;xP<32768;++xP){var SP=(xP&43690)>>1|(xP&21845)<<1;SP=(SP&52428)>>2|(SP&13107)<<2,SP=(SP&61680)>>4|(SP&3855)<<4,bP[xP]=((SP&65280)>>8|(SP&255)<<8)>>1}for(var CP=(function(e,t,n){for(var r=e.length,i=0,a=new cP(t);i<r;++i)e[i]&&++a[e[i]-1];var o=new cP(t);for(i=1;i<t;++i)o[i]=o[i-1]+a[i-1]<<1;var s;if(n){s=new cP(1<<t);var c=15-t;for(i=0;i<r;++i)if(e[i])for(var l=i<<4|e[i],u=t-e[i],d=o[e[i]-1]++<<u,f=d|(1<<u)-1;d<=f;++d)s[bP[d]>>c]=l}else for(s=new cP(r),i=0;i<r;++i)e[i]&&(s[i]=bP[o[e[i]-1]++]>>15-e[i]);return s}),wP=new sP(288),xP=0;xP<144;++xP)wP[xP]=8;for(var xP=144;xP<256;++xP)wP[xP]=9;for(var xP=256;xP<280;++xP)wP[xP]=7;for(var xP=280;xP<288;++xP)wP[xP]=8;for(var TP=new sP(32),xP=0;xP<32;++xP)TP[xP]=5;var EP=CP(wP,9,0),DP=CP(wP,9,1),OP=CP(TP,5,0),kP=CP(TP,5,1),AP=function(e){for(var t=e[0],n=1;n<e.length;++n)e[n]>t&&(t=e[n]);return t},jP=function(e,t,n){var r=t/8|0;return(e[r]|e[r+1]<<8)>>(t&7)&n},MP=function(e,t){var n=t/8|0;return(e[n]|e[n+1]<<8|e[n+2]<<16)>>(t&7)},NP=function(e){return(e+7)/8|0},PP=function(e,t,n){return(t==null||t<0)&&(t=0),(n==null||n>e.length)&&(n=e.length),new sP(e.subarray(t,n))},FP=[`unexpected EOF`,`invalid block type`,`invalid length/literal`,`invalid distance`,`stream finished`,`no stream handler`,,`no callback`,`invalid UTF-8 data`,`extra field too long`,`date not in range 1980-2099`,`filename too long`,`stream finishing`,`invalid zip data`],IP=function(e,t,n){var r=Error(t||FP[e]);if(r.code=e,Error.captureStackTrace&&Error.captureStackTrace(r,IP),!n)throw r;return r},LP=function(e,t,n,r){var i=e.length,a=r?r.length:0;if(!i||t.f&&!t.l)return n||new sP(0);var o=!n,s=o||t.i!=2,c=t.i;o&&(n=new sP(i*3));var l=function(e){var t=n.length;if(e>t){var r=new sP(Math.max(t*2,e));r.set(n),n=r}},u=t.f||0,d=t.p||0,f=t.b||0,p=t.l,m=t.d,h=t.m,g=t.n,_=i*8;do{if(!p){u=jP(e,d,1);var v=jP(e,d+1,3);if(d+=3,!v){var y=NP(d)+4,b=e[y-4]|e[y-3]<<8,x=y+b;if(x>i){c&&IP(0);break}s&&l(f+b),n.set(e.subarray(y,x),f),t.b=f+=b,t.p=d=x*8,t.f=u;continue}if(v==1)p=DP,m=kP,h=9,g=5;else if(v==2){var S=jP(e,d,31)+257,C=jP(e,d+10,15)+4,w=S+jP(e,d+5,31)+1;d+=14;for(var T=new sP(w),E=new sP(19),D=0;D<C;++D)E[fP[D]]=jP(e,d+D*3,7);d+=C*3;for(var O=AP(E),k=(1<<O)-1,A=CP(E,O,1),D=0;D<w;){var j=A[jP(e,d,k)];d+=j&15;var y=j>>4;if(y<16)T[D++]=y;else{var M=0,N=0;for(y==16?(N=3+jP(e,d,3),d+=2,M=T[D-1]):y==17?(N=3+jP(e,d,7),d+=3):y==18&&(N=11+jP(e,d,127),d+=7);N--;)T[D++]=M}}var P=T.subarray(0,S),F=T.subarray(S);h=AP(P),g=AP(F),p=CP(P,h,1),m=CP(F,g,1)}else IP(1);if(d>_){c&&IP(0);break}}s&&l(f+131072);for(var I=(1<<h)-1,L=(1<<g)-1,ee=d;;ee=d){var M=p[MP(e,d)&I],R=M>>4;if(d+=M&15,d>_){c&&IP(0);break}if(M||IP(2),R<256)n[f++]=R;else if(R==256){ee=d,p=null;break}else{var te=R-254;if(R>264){var D=R-257,z=uP[D];te=jP(e,d,(1<<z)-1)+hP[D],d+=z}var ne=m[MP(e,d)&L],B=ne>>4;ne||IP(3),d+=ne&15;var F=vP[B];if(B>3){var z=dP[B];F+=MP(e,d)&(1<<z)-1,d+=z}if(d>_){c&&IP(0);break}s&&l(f+131072);var V=f+te;if(f<F){var re=a-F,ie=Math.min(F,V);for(re+f<0&&IP(3);f<ie;++f)n[f]=r[re+f]}for(;f<V;++f)n[f]=n[f-F]}}t.l=p,t.p=ee,t.b=f,t.f=u,p&&(u=1,t.m=h,t.d=m,t.n=g)}while(!u);return f!=n.length&&o?PP(n,0,f):n.subarray(0,f)},RP=function(e,t,n){n<<=t&7;var r=t/8|0;e[r]|=n,e[r+1]|=n>>8},zP=function(e,t,n){n<<=t&7;var r=t/8|0;e[r]|=n,e[r+1]|=n>>8,e[r+2]|=n>>16},BP=function(e,t){for(var n=[],r=0;r<e.length;++r)e[r]&&n.push({s:r,f:e[r]});var i=n.length,a=n.slice();if(!i)return{t:qP,l:0};if(i==1){var o=new sP(n[0].s+1);return o[n[0].s]=1,{t:o,l:1}}n.sort(function(e,t){return e.f-t.f}),n.push({s:-1,f:25001});var s=n[0],c=n[1],l=0,u=1,d=2;for(n[0]={s:-1,f:s.f+c.f,l:s,r:c};u!=i-1;)s=n[n[l].f<n[d].f?l++:d++],c=n[l!=u&&n[l].f<n[d].f?l++:d++],n[u++]={s:-1,f:s.f+c.f,l:s,r:c};for(var f=a[0].s,r=1;r<i;++r)a[r].s>f&&(f=a[r].s);var p=new cP(f+1),m=VP(n[u-1],p,0);if(m>t){var r=0,h=0,g=m-t,_=1<<g;for(a.sort(function(e,t){return p[t.s]-p[e.s]||e.f-t.f});r<i;++r){var v=a[r].s;if(p[v]>t)h+=_-(1<<m-p[v]),p[v]=t;else break}for(h>>=g;h>0;){var y=a[r].s;p[y]<t?h-=1<<t-p[y]++-1:++r}for(;r>=0&&h;--r){var b=a[r].s;p[b]==t&&(--p[b],++h)}m=t}return{t:new sP(p),l:m}},VP=function(e,t,n){return e.s==-1?Math.max(VP(e.l,t,n+1),VP(e.r,t,n+1)):t[e.s]=n},HP=function(e){for(var t=e.length;t&&!e[--t];);for(var n=new cP(++t),r=0,i=e[0],a=1,o=function(e){n[r++]=e},s=1;s<=t;++s)if(e[s]==i&&s!=t)++a;else{if(!i&&a>2){for(;a>138;a-=138)o(32754);a>2&&(o(a>10?a-11<<5|28690:a-3<<5|12305),a=0)}else if(a>3){for(o(i),--a;a>6;a-=6)o(8304);a>2&&(o(a-3<<5|8208),a=0)}for(;a--;)o(i);a=1,i=e[s]}return{c:n.subarray(0,r),n:t}},UP=function(e,t){for(var n=0,r=0;r<t.length;++r)n+=e[r]*t[r];return n},WP=function(e,t,n){var r=n.length,i=NP(t+2);e[i]=r&255,e[i+1]=r>>8,e[i+2]=e[i]^255,e[i+3]=e[i+1]^255;for(var a=0;a<r;++a)e[i+a+4]=n[a];return(i+4+r)*8},GP=function(e,t,n,r,i,a,o,s,c,l,u){RP(t,u++,n),++i[256];for(var d=BP(i,15),f=d.t,p=d.l,m=BP(a,15),h=m.t,g=m.l,_=HP(f),v=_.c,y=_.n,b=HP(h),x=b.c,S=b.n,C=new cP(19),w=0;w<v.length;++w)++C[v[w]&31];for(var w=0;w<x.length;++w)++C[x[w]&31];for(var T=BP(C,7),E=T.t,D=T.l,O=19;O>4&&!E[fP[O-1]];--O);var k=l+5<<3,A=UP(i,wP)+UP(a,TP)+o,j=UP(i,f)+UP(a,h)+o+14+3*O+UP(C,E)+2*C[16]+3*C[17]+7*C[18];if(c>=0&&k<=A&&k<=j)return WP(t,u,e.subarray(c,c+l));var M,N,P,F;if(RP(t,u,1+(j<A)),u+=2,j<A){M=CP(f,p,0),N=f,P=CP(h,g,0),F=h;var I=CP(E,D,0);RP(t,u,y-257),RP(t,u+5,S-1),RP(t,u+10,O-4),u+=14;for(var w=0;w<O;++w)RP(t,u+3*w,E[fP[w]]);u+=3*O;for(var L=[v,x],ee=0;ee<2;++ee)for(var R=L[ee],w=0;w<R.length;++w){var te=R[w]&31;RP(t,u,I[te]),u+=E[te],te>15&&(RP(t,u,R[w]>>5&127),u+=R[w]>>12)}}else M=EP,N=wP,P=OP,F=TP;for(var w=0;w<s;++w){var z=r[w];if(z>255){var te=z>>18&31;zP(t,u,M[te+257]),u+=N[te+257],te>7&&(RP(t,u,z>>23&31),u+=uP[te]);var ne=z&31;zP(t,u,P[ne]),u+=F[ne],ne>3&&(zP(t,u,z>>5&8191),u+=dP[ne])}else zP(t,u,M[z]),u+=N[z]}return zP(t,u,M[256]),u+N[256]},KP=new lP([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),qP=new sP(0),JP=function(e,t,n,r,i,a){var o=a.z||e.length,s=new sP(r+o+5*(1+Math.ceil(o/7e3))+i),c=s.subarray(r,s.length-i),l=a.l,u=(a.r||0)&7;if(t){u&&(c[0]=a.r>>3);for(var d=KP[t-1],f=d>>13,p=d&8191,m=(1<<n)-1,h=a.p||new cP(32768),g=a.h||new cP(m+1),_=Math.ceil(n/3),v=2*_,y=function(t){return(e[t]^e[t+1]<<_^e[t+2]<<v)&m},b=new lP(25e3),x=new cP(288),S=new cP(32),C=0,w=0,T=a.i||0,E=0,D=a.w||0,O=0;T+2<o;++T){var k=y(T),A=T&32767,j=g[k];if(h[A]=j,g[k]=A,D<=T){var M=o-T;if((C>7e3||E>24576)&&(M>423||!l)){u=GP(e,c,0,b,x,S,w,E,O,T-O,u),E=C=w=0,O=T;for(var N=0;N<286;++N)x[N]=0;for(var N=0;N<30;++N)S[N]=0}var P=2,F=0,I=p,L=A-j&32767;if(M>2&&k==y(T-L))for(var ee=Math.min(f,M)-1,R=Math.min(32767,T),te=Math.min(258,M);L<=R&&--I&&A!=j;){if(e[T+P]==e[T+P-L]){for(var z=0;z<te&&e[T+z]==e[T+z-L];++z);if(z>P){if(P=z,F=L,z>ee)break;for(var ne=Math.min(L,z-2),B=0,N=0;N<ne;++N){var V=T-L+N&32767,re=V-h[V]&32767;re>B&&(B=re,j=V)}}}A=j,j=h[A],L+=A-j&32767}if(F){b[E++]=268435456|gP[P]<<18|yP[F];var ie=gP[P]&31,ae=yP[F]&31;w+=uP[ie]+dP[ae],++x[257+ie],++S[ae],D=T+P,++C}else b[E++]=e[T],++x[e[T]]}}for(T=Math.max(T,D);T<o;++T)b[E++]=e[T],++x[e[T]];u=GP(e,c,l,b,x,S,w,E,O,T-O,u),l||(a.r=u&7|c[u/8|0]<<3,u-=7,a.h=g,a.p=h,a.i=T,a.w=D)}else{for(var T=a.w||0;T<o+l;T+=65535){var oe=T+65535;oe>=o&&(c[u/8|0]=l,oe=o),u=WP(c,u+1,e.subarray(T,oe))}a.i=o}return PP(s,0,r+NP(u)+i)},YP=(function(){for(var e=new Int32Array(256),t=0;t<256;++t){for(var n=t,r=9;--r;)n=(n&1&&-306674912)^n>>>1;e[t]=n}return e})(),XP=function(){var e=-1;return{p:function(t){for(var n=e,r=0;r<t.length;++r)n=YP[n&255^t[r]]^n>>>8;e=n},d:function(){return~e}}},ZP=function(e,t,n,r,i){if(!i&&(i={l:1},t.dictionary)){var a=t.dictionary.subarray(-32768),o=new sP(a.length+e.length);o.set(a),o.set(e,a.length),e=o,i.w=a.length}return JP(e,t.level==null?6:t.level,t.mem==null?i.l?Math.ceil(Math.max(8,Math.min(13,Math.log(e.length)))*1.5):20:12+t.mem,n,r,i)},QP=function(e,t){var n={};for(var r in e)n[r]=e[r];for(var r in t)n[r]=t[r];return n},$P=function(e,t,n){for(var r=e(),i=e.toString(),a=i.slice(i.indexOf(`[`)+1,i.lastIndexOf(`]`)).replace(/\s+/g,``).split(`,`),o=0;o<r.length;++o){var s=r[o],c=a[o];if(typeof s==`function`){t+=`;`+c+`=`;var l=s.toString();if(s.prototype){if(l.indexOf(`[native code]`)!=-1){var u=l.indexOf(` `,8)+1;t+=l.slice(u,l.indexOf(`(`,u))}else for(var d in t+=l,s.prototype)t+=`;`+c+`.prototype.`+d+`=`+s.prototype[d].toString()}else t+=l}else n[c]=s}return t},eF=[],tF=function(e){var t=[];for(var n in e)e[n].buffer&&t.push((e[n]=new e[n].constructor(e[n])).buffer);return t},nF=function(e,t,n,r){if(!eF[n]){for(var i=``,a={},o=e.length-1,s=0;s<o;++s)i=$P(e[s],i,a);eF[n]={c:$P(e[o],i,a),e:a}}var c=QP({},eF[n].e);return oP(eF[n].c+`;onmessage=function(e){for(var k in e.data)self[k]=e.data[k];onmessage=`+t.toString()+`}`,n,c,tF(c),r)},rF=function(){return[sP,cP,lP,uP,dP,fP,gP,yP,EP,wP,OP,TP,bP,KP,qP,CP,RP,zP,BP,VP,HP,UP,WP,GP,NP,PP,JP,ZP,cF,iF]},iF=function(e){return postMessage(e,[e.buffer])},aF=function(e,t,n,r,i,a){var o=nF(n,r,i,function(e,t){o.terminate(),a(e,t)});return o.postMessage([e,t],t.consume?[e.buffer]:[]),function(){o.terminate()}},oF=function(e,t,n){for(;n;++t)e[t]=n,n>>>=8};function sF(e,t,n){return n||(n=t,t={}),typeof n!=`function`&&IP(7),aF(e,t,[rF],function(e){return iF(cF(e.data[0],e.data[1]))},0,n)}function cF(e,t){return ZP(e,t||{},0,0)}function lF(e,t){return LP(e,{i:2},t&&t.out,t&&t.dictionary)}var uF=function(e,t,n,r){for(var i in e){var a=e[i],o=t+i,s=r;Array.isArray(a)&&(s=QP(r,a[1]),a=a[0]),ArrayBuffer.isView(a)?n[o]=[a,s]:(n[o+=`/`]=[new sP(0),s],uF(a,o,n,r))}},dF=typeof TextEncoder<`u`&&new TextEncoder,fF=typeof TextDecoder<`u`&&new TextDecoder;try{fF.decode(qP,{stream:!0})}catch{}function pF(e,t){if(t){for(var n=new sP(e.length),r=0;r<e.length;++r)n[r]=e.charCodeAt(r);return n}if(dF)return dF.encode(e);for(var i=e.length,a=new sP(e.length+(e.length>>1)),o=0,s=function(e){a[o++]=e},r=0;r<i;++r){if(o+5>a.length){var c=new sP(o+8+(i-r<<1));c.set(a),a=c}var l=e.charCodeAt(r);l<128||t?s(l):l<2048?(s(192|l>>6),s(128|l&63)):l>55295&&l<57344?(l=65536+(l&1047552)|e.charCodeAt(++r)&1023,s(240|l>>18),s(128|l>>12&63),s(128|l>>6&63),s(128|l&63)):(s(224|l>>12),s(128|l>>6&63),s(128|l&63))}return PP(a,0,o)}var mF=function(e){var t=0;if(e)for(var n in e){var r=e[n].length;r>65535&&IP(9),t+=r+4}return t},hF=function(e,t,n,r,i,a,o,s){var c=r.length,l=n.extra,u=s&&s.length,d=mF(l);oF(e,t,o==null?67324752:33639248),t+=4,o!=null&&(e[t++]=20,e[t++]=n.os),e[t]=20,t+=2,e[t++]=n.flag<<1|(a<0&&8),e[t++]=i&&8,e[t++]=n.compression&255,e[t++]=n.compression>>8;var f=new Date(n.mtime==null?Date.now():n.mtime),p=f.getFullYear()-1980;if((p<0||p>119)&&IP(10),oF(e,t,p<<25|f.getMonth()+1<<21|f.getDate()<<16|f.getHours()<<11|f.getMinutes()<<5|f.getSeconds()>>1),t+=4,a!=-1&&(oF(e,t,n.crc),oF(e,t+4,a<0?-a-2:a),oF(e,t+8,n.size)),oF(e,t+12,c),oF(e,t+14,d),t+=16,o!=null&&(oF(e,t,u),oF(e,t+6,n.attrs),oF(e,t+10,o),t+=14),e.set(r,t),t+=c,d)for(var m in l){var h=l[m],g=h.length;oF(e,t,+m),oF(e,t+2,g),e.set(h,t+4),t+=4+g}return u&&(e.set(s,t),t+=u),t},gF=function(e,t,n,r,i){oF(e,t,101010256),oF(e,t+8,n),oF(e,t+10,n),oF(e,t+12,r),oF(e,t+16,i)};function _F(e,t,n){n||(n=t,t={}),typeof n!=`function`&&IP(7);var r={};uF(e,``,r,t);var i=Object.keys(r),a=i.length,o=0,s=0,c=a,l=Array(a),u=[],d=function(){for(var e=0;e<u.length;++e)u[e]()},f=function(e,t){vF(function(){n(e,t)})};vF(function(){f=n});var p=function(){var e=new sP(s+22),t=o,n=s-o;s=0;for(var r=0;r<c;++r){var i=l[r];try{var a=i.c.length;hF(e,s,i,i.f,i.u,a);var u=30+i.f.length+mF(i.extra),d=s+u;e.set(i.c,d),hF(e,o,i,i.f,i.u,a,s,i.m),o+=16+u+(i.m?i.m.length:0),s=d+a}catch(e){return f(e,null)}}gF(e,o,l.length,n,t),f(null,e)};a||p();for(var m=function(e){var t=i[e],n=r[t],c=n[0],m=n[1],h=XP(),g=c.length;h.p(c);var _=pF(t),v=_.length,y=m.comment,b=y&&pF(y),x=b&&b.length,S=mF(m.extra),C=m.level==0?0:8,w=function(n,r){if(n)d(),f(n,null);else{var i=r.length;l[e]=QP(m,{size:g,crc:h.d(),c:r,f:_,m:b,u:v!=t.length||b&&y.length!=x,compression:C}),o+=30+v+S+i,s+=76+2*(v+S)+(x||0)+i,--a||p()}};if(v>65535&&w(IP(11,0,1),null),!C)w(null,c);else if(g<16e4)try{w(null,cF(c,m))}catch(e){w(e,null)}else u.push(sF(c,m,w))},h=0;h<c;++h)m(h);return d}var vF=typeof queueMicrotask==`function`?queueMicrotask:typeof setTimeout==`function`?setTimeout:function(e){e()};function yF(){let e=globalThis.Buffer;return typeof e==`function`?e:void 0}function bF(e){let t=e.replace(/[\t\n\f\r ]/g,``);if(t.length%4==0&&(t=t.replace(/={1,2}$/,``)),t.length%4==1||!/^[A-Za-z0-9+/]*$/.test(t))throw new Tx(`Invalid base64 input.`,wx.ENCODING_ERROR,{context:{inputLength:e.length}});let n=yF();if(n)return new Uint8Array(n.from(t,`base64`));if(typeof globalThis.atob==`function`){let e=globalThis.atob(t),n=new Uint8Array(e.length);for(let t=0;t<e.length;t++)n[t]=e.charCodeAt(t)&255;return n}throw new Tx(`Base64 decoding not supported in this environment.`,wx.INVALID_STATE,{context:{environmentInfo:`atob or Buffer not available`}})}function xF(e){return e.map(e=>{let t=e.clone(!0),n=[];e.traverse(e=>n.push(e));let r=0;return t.traverse(e=>{let t=n[r++],i=e;t.geometry&&(i.geometry=t.geometry.clone())}),t})}function SF(e){e.forEach(e=>Ux(e,{materials:!1}))}var CF={clone:xF,release:SF};function wF(e,t){let n=t??1;return{color:new Q(e??`#ffffff`),transparent:n<1,opacity:n}}function TF(e){let t=EF(e);if(!t)return null;let n=new ES;n.setPositions(t);let r=wF(e.color,e.opacity),i=new oS({color:r.color}),a=i;a.linewidth=e.width??2,a.transparent=r.transparent,a.opacity=r.opacity;let o=new DS(n,i);return o.computeLineDistances(),o.name=e.name,o.userData={source:`compute`,id:e.id,layer:e.layer,kind:`curve`,metadata:e.metadata},o}function EF(e){if(!e.points)throw new Tx(`Curve display item '${e.id}' has no tessellated points. It was produced by an outdated Display component — upgrade it in Grasshopper (Solution → Upgrade obsolete components) and re-save the definition.`,wx.INVALID_CONFIG,{context:{itemId:e.id,kind:e.kind}});return e.points.length>=6?e.points:null}function DF(e){let{position:t}=e;if(!t||typeof t.X!=`number`||!Number.isFinite(t.X)||typeof t.Y!=`number`||!Number.isFinite(t.Y)||typeof t.Z!=`number`||!Number.isFinite(t.Z))return Dx().warn(`Skipping point display item with missing or non-finite position (id: ${String(e.id)}).`),null;let n=new Om;n.setAttribute(`position`,new gm([t.X,t.Y,t.Z],3));let r=new Yh(n,new Wh({...wF(e.color,e.opacity),size:6,sizeAttenuation:!1}));return r.name=e.name,r.userData={source:`compute`,id:e.id,layer:e.layer,kind:`point`,metadata:e.metadata},r}function OF(e){if(!e||e.length===0)return[];let t=[];for(let n of e)switch(n.kind){case`curve`:{let e=TF(n);e&&t.push(e);break}case`point`:{let e=DF(n);e&&t.push(e);break}default:{let e=n;Dx().warn(`Skipping unknown display item kind: ${String(e.kind)}`);break}}return t}var kF=new Uint16Array(new Uint8Array([1,0]).buffer)[0]===1;function AF(e){return typeof e==`string`?bF(e):e instanceof Uint8Array?e:new Uint8Array(e)}function jF(e){if(e.byteLength<8)return e;let t=new DataView(e.buffer,e.byteOffset,e.byteLength);if(t.getUint32(0,!0)!==1515605075)return e;let n=t.getUint32(4,!0),r=e.subarray(8),i=Math.max(r.byteLength*1032+1024,1<<20);if(n>i)throw GF(`SLVZ header declares an implausible uncompressed length`,{uncompressedLen:n,deflatedBytes:r.byteLength,maxPlausibleLen:i});let a;try{a=lF(r,{out:new Uint8Array(n+1)})}catch(e){throw GF(`Failed to inflate SLVZ blob: ${e instanceof Error?e.message:String(e)}`,{uncompressedLen:n,deflatedBytes:r.byteLength})}if(a.byteLength!==n)throw GF(`SLVZ payload inflated to a different size than the header declares.`,{declaredLen:n,actualLen:a.byteLength,deflatedBytes:r.byteLength});return a}function MF(e){if(typeof TextDecoder<`u`)return new TextDecoder(`utf-8`).decode(e);if(globalThis.Buffer!==void 0)return globalThis.Buffer.from(e).toString(`utf-8`);throw new Tx(`No UTF-8 decoder available in this environment.`,wx.INVALID_STATE)}function NF(e,t,n){if(n===0)return new Int16Array;if(t%2==0)return new Int16Array(e,t,n);let r=new Uint8Array(n*2);return r.set(new Uint8Array(e,t,n*2)),new Int16Array(r.buffer)}function PF(e,t,n){if(n===0)return new Float32Array;if(t%4==0)return new Float32Array(e,t,n);let r=new Uint8Array(n*4);return r.set(new Uint8Array(e,t,n*4)),new Float32Array(r.buffer)}function FF(e,t,n){if(n===0)return new Uint16Array;if(t%2==0)return new Uint16Array(e,t,n);let r=new Uint8Array(n*2);return r.set(new Uint8Array(e,t,n*2)),new Uint16Array(r.buffer)}function IF(e,t,n){if(n===0)return new Uint32Array;if(t%4==0)return new Uint32Array(e,t,n);let r=new Uint8Array(n*4);return r.set(new Uint8Array(e,t,n*4)),new Uint32Array(r.buffer)}function LF(e,t){if(e.length!==0&&!(e instanceof Uint16Array&&t>65535)){for(let n=0;n<e.length;n++)if(e[n]>=t)throw GF(`Index out of range of vertexCount.`,{indexPosition:n,indexValue:e[n],vertexCount:t})}}function RF(e){return e>>>1^-(e&1)}function zF(e){let t=new Int16Array(e.length),n=0,r=0,i=0;for(let a=0;a<e.length;a+=3)n=n+RF(e[a])<<16>>16,r=r+RF(e[a+1])<<16>>16,i=i+RF(e[a+2])<<16>>16,t[a]=n,t[a+1]=r,t[a+2]=i;return t}function BF(e,t){let n=new Int16Array(t*3),r=t,i=0,a=0,o=0;for(let t=0;t<r;t++)i=i+RF(e[t]|e[r*3+t]<<8)<<16>>16,a=a+RF(e[r+t]|e[r*4+t]<<8)<<16>>16,o=o+RF(e[r*2+t]|e[r*5+t]<<8)<<16>>16,n[t*3]=i,n[t*3+1]=a,n[t*3+2]=o;return n}function VF(e,t){let n=new Uint16Array(t),r=0;for(let i=0;i<t;i++)r=r+RF(e[i]|e[t+i]<<8)&65535,n[i]=r;return n}function HF(e,t){let n=new Uint32Array(t),r=0;for(let i=0;i<t;i++){let a=(e[i]|e[t+i]<<8|e[t*2+i]<<16|e[t*3+i]<<24)>>>0;r=r+RF(a)>>>0,n[i]=r}return n}function UF(e){let t=new Uint16Array(e.length),n=0;for(let r=0;r<e.length;r++)n=n+RF(e[r])&65535,t[r]=n;return t}function WF(e){let t=new Uint32Array(e.length),n=0;for(let r=0;r<e.length;r++)n=n+RF(e[r])>>>0,t[r]=n;return t}function GF(e,t){return new Tx(e,wx.VALIDATION_ERROR,{context:t})}function KF(e,t,n,r,i,a=!1){if(n+36>e.byteLength)throw GF(`Insufficient data to read UV chunk header.`,{expectedBytes:36,availableBytes:e.byteLength-n,offset:n});let o=t.getUint32(n,!0);n+=4;let s=t.getFloat64(n,!0);n+=8;let c=t.getFloat64(n,!0);n+=8;let l=t.getFloat64(n,!0);n+=8;let u=t.getFloat64(n,!0);n+=8;let d=r*2,f=o===1,p=d*(f?4:2);if(n+p>e.byteLength)throw GF(`Insufficient data to read UV chunk.`,{expectedBytes:p,availableBytes:e.byteLength-n,offset:n,uvFormat:o,vertexCount:r});let m=e.byteOffset+n,h;if(f)h=PF(e.buffer,m,d).slice();else if(a){let t=e.subarray(n,n+p),i=r;h=new Float32Array(d);let a=0,o=0;for(let e=0;e<i;e++)a=a+RF(t[e]|t[i*2+e]<<8)&65535,o=o+RF(t[i+e]|t[i*3+e]<<8)&65535,h[e*2]=s+a*l,h[e*2+1]=c+o*u}else{let t=FF(e.buffer,m,d);h=new Float32Array(d);let n=0,r=0;for(let e=0;e<d;e+=2)i?(n=n+RF(t[e])&65535,r=r+RF(t[e+1])&65535):(n=t[e],r=t[e+1]),h[e]=s+n*l,h[e+1]=c+r*u}return{uvs:h,offset:n+p}}function qF(e,t,n,r){let i=n*3;if(t+i>e.byteLength)throw GF(`Insufficient data to read vertex-color chunk.`,{expectedBytes:i,availableBytes:e.byteLength-t,offset:t,vertexCount:n});let a=e.subarray(t,t+i);if(!r)return a.slice();let o=new Uint8Array(i),s=0,c=0,l=0;for(let e=0;e<i;e+=3)s=s+RF(a[e])&255,c=c+RF(a[e+1])&255,l=l+RF(a[e+2])&255,o[e]=s,o[e+1]=c,o[e+2]=l;return o}function JF(e){return e.byteLength>=4&&new DataView(e.buffer,e.byteOffset,4).getUint32(0,!0)===1297501267}function YF(e){let t=XF(e),n=null,r=null,i=null,a=[];for(let{type:e,payload:o}of t)switch(e){case 1297040711:n=o;break;case 1279410516:r=jF(o);break;case 1280590157:i=MF(o);break;case 1381516628:a.push(o)}if(n===null)throw GF(`SLVM container has no GEOM chunk.`,{chunkCount:t.length});if(r===null)throw GF(`SLVM container has no TABL chunk.`,{chunkCount:t.length});let{groups:o}=$F(r),s=eI(i,a);return{geometryBlob:n,metadata:{materials:s,groups:o}}}function XF(e){let t=new DataView(e.buffer,e.byteOffset,e.byteLength);if(e.byteLength<12||t.getUint32(0,!0)!==1297501267)throw GF(`Not an SLVM container (bad magic).`,{byteLength:e.byteLength});let n=t.getUint32(4,!0);if(n!==3)throw GF(`Unsupported SLVM version: ${n}`,{expectedVersion:3});let r=t.getUint32(8,!0),i=[],a=12;for(let n=0;n<r;n++){if(a+8>e.byteLength)throw GF(`Truncated SLVM chunk header.`,{offset:a,chunkIndex:n});let r=t.getUint32(a,!0),o=t.getUint32(a+4,!0);if(a+=8,a+o>e.byteLength)throw GF(`Truncated SLVM chunk payload.`,{offset:a,chunkIndex:n,byteLen:o});i.push({type:r,payload:e.subarray(a,a+o)}),a+=o+(4-o%4)%4}return i}function ZF(e){let t=0,n=0;for(;;){if(e.pos>=e.bytes.byteLength||n>28)throw GF(`Malformed varint in SLVM table.`,{pos:e.pos});let r=e.bytes[e.pos++];if(t|=(r&127)<<n,!(r&128))return t>>>0;n+=7}}function QF(e,t,n){let r=e.bytes[e.pos++],i=Array(t);switch(r){case 0:i.fill(``);break;case 1:for(let e=0;e<t;e++)i[e]=String(e+1);break;case 2:for(let r=0;r<t;r++)i[r]=n[ZF(e)]??``;break;default:throw GF(`Unknown SLVM string column mode: ${r}`,{pos:e.pos})}return i}function $F(e){let t={bytes:e,pos:0},n=ZF(t),r=ZF(t),i=ZF(t),a=n+r+i,o=ZF(t),s=Array(o);for(let n=0;n<o;n++){let r=ZF(t);s[n]=MF(e.subarray(t.pos,t.pos+r)),t.pos+=r}let c=Array(n),l=Array(n);for(let e=0;e<n;e++)c[e]=ZF(t),l[e]=ZF(t);for(let e=0;e<r;e++)ZF(t);let u=ZF(t),d=[];for(let e=0;e<u;e++)d.push({materialId:ZF(t),meshCount:ZF(t)});let f=QF(t,a,s),p=QF(t,a,s),m=Array(a),h=ZF(t);for(let e=0;e<h;e++){let e=s[ZF(t)]??``,n=ZF(t),r=Array(n),i=0;for(let e=0;e<n;e++)i+=ZF(t),r[e]=i;for(let i=0;i<n;i++){let n=s[ZF(t)]??``,a=r[i];(m[a]??={})[e]=n}}let g=d.length>0||n===0?d:[{materialId:0,meshCount:n}],_=[],v=0,y=0,b=0;for(let e of g){let t=[];for(let r=0;r<e.meshCount&&v<n;r++,v++){let e=m[v],n=e?.id;e!==void 0&&delete e.id,t.push({id:n,name:f[v],layer:p[v],vertexCount:c[v],indexCount:l[v]*3,vertexStart:y,indexStart:b,metadata:e??{}}),y+=c[v],b+=l[v]*3}_.push({materialId:e.materialId,meshes:t})}return{groups:_}}function eI(e,t){if(e===null)return[];let n;try{n=JSON.parse(e).materials??[]}catch(t){throw GF(`Failed to parse SLVM materials JSON: ${t instanceof Error?t.message:String(t)}`,{byteLength:e.length})}for(let e of n)for(let n of tI){let r=e[n];if(r?.startsWith(`slvm:tex:`)){let i=t[Number(r.slice(9))];i!==void 0&&(e[n]=nI(i))}}return n}var tI=[`map`,`roughnessMap`,`normalMap`];function nI(e){let t={bytes:e,pos:0},n=ZF(t),r=MF(e.subarray(t.pos,t.pos+n)),i=e.subarray(t.pos+n),a=``,o=32768;for(let e=0;e<i.byteLength;e+=o)a+=String.fromCharCode(...i.subarray(e,e+o));return`data:${r};base64,${btoa(a)}`}function rI(e){let t=iI(e),n;n=t.isFloat32?t.vertexData:t.planarByteSplit?BF(t.vertexData,t.vertexCount):t.deltaEncoded?zF(t.vertexData):t.vertexData;let r;if(t.planarByteSplit){let e=t.indexData;r=t.uint16Indices?VF(e,e.length/2):HF(e,e.length/4)}else r=t.deltaEncoded?t.indexData instanceof Uint16Array?UF(t.indexData):WF(t.indexData):t.indexData;return LF(r,t.vertexCount),{metadata:t.metadata,flags:t.flags,vertices:n,indices:r,origin:t.origin,scale:t.scale,uvs:t.uvs,colors:t.colors}}function iI(e){if(!kF)throw new Tx(`SLVA parsing requires a little-endian host: the zero-copy geometry readers view the wire bytes in host byte order.`,wx.ENVIRONMENT_ERROR);let t=AF(e);if(JF(t)){let e=YF(t),n=iI(e.geometryBlob);return n.metadata=e.metadata,n}let n=jF(t),r=new DataView(n.buffer,n.byteOffset,n.byteLength);if(n.byteLength<12)throw GF(`Blob too small to contain SLVA header.`,{expectedBytes:12,availableBytes:n.byteLength});let i=0,a=r.getUint32(i,!0);if(i+=4,a!==1096174675)throw GF(`Invalid SLVA magic: 0x${a.toString(16)}`,{expectedMagic:`0x41564c53`,actualMagic:`0x${a.toString(16)}`});let o=r.getUint32(i,!0);if(i+=4,o<1||o>4)throw GF(`Unsupported SLVA version: ${o}`,{minSupportedVersion:1,maxSupportedVersion:4,actualVersion:o});let s=r.getUint32(i,!0);if(i+=4,i+s>n.byteLength)throw GF(`Insufficient data to read metadata JSON.`,{expectedBytes:s,availableBytes:n.byteLength-i,offset:i});let c=n.subarray(i,i+s);i+=s;let l;try{l=s===0?{}:JSON.parse(MF(c))}catch(e){throw GF(`Failed to parse metadata JSON: ${e instanceof Error?e.message:String(e)}`,{metadataLen:s})}if(i+56>n.byteLength)throw GF(`Insufficient data to read geometry header.`,{expectedBytes:56,availableBytes:n.byteLength-i,offset:i});let u=r.getUint32(i,!0);i+=4;let d=r.getFloat64(i,!0);i+=8;let f=r.getFloat64(i,!0);i+=8;let p=r.getFloat64(i,!0);i+=8;let m=r.getFloat64(i,!0);i+=8;let h=r.getFloat64(i,!0);i+=8;let g=r.getFloat64(i,!0);i+=8;let _=r.getUint32(i,!0);i+=4;let v=!!(u&1),y=!!(u&4),b=!!(u&32),x=_*3,S=x*(v?4:2);if(i+S>n.byteLength)throw GF(`Insufficient data to read vertices.`,{expectedBytes:S,availableBytes:n.byteLength-i,offset:i,useFloat32:v,vertexCount:_});let C=n.byteOffset+i,w;if(w=v?PF(n.buffer,C,x):b?n.subarray(i,i+S):y?FF(n.buffer,C,x):NF(n.buffer,C,x),i+=S,i+4>n.byteLength)throw GF(`Insufficient data to read index count.`,{expectedBytes:4,availableBytes:n.byteLength-i,offset:i});let T=r.getUint32(i,!0);i+=4;let E=!!(u&2),D=T*(E?2:4);if(i+D>n.byteLength)throw GF(`Insufficient data to read indices.`,{expectedBytes:D,availableBytes:n.byteLength-i,offset:i,indexCount:T,useUint16Indices:E});let O=b?n.subarray(i,i+D):E?FF(n.buffer,n.byteOffset+i,T):IF(n.buffer,n.byteOffset+i,T);i+=D;let k=null;if(u&8){let e=KF(n,r,i,_,y,b);k=e.uvs,i=e.offset}let A=null;return u&16&&(A=qF(n,i,_,y)),{metadata:l,flags:u,vertexData:w,indexData:O,isFloat32:v,deltaEncoded:y,planarByteSplit:b,uint16Indices:E,vertexCount:_,origin:[d,f,p],scale:[m,h,g],uvs:k,colors:A}}function aI(e,t,n){if(n.length===0)return!1;let r=e=>{let t=16;for(;t<e*2;)t*=2;return t},i=(n,i)=>{if(i<12||i%3!=0)return!1;let a=0;for(let r=0;r<i;r++){let i=t[n+r]*3;a=Math.max(a,Math.abs(e[i]),Math.abs(e[i+1]),Math.abs(e[i+2]))}if(!(a>0)||!Number.isFinite(a))return!1;let o=1/(2*2**(Math.floor(Math.log2(a))-23)),s=r(i),c=s-1,l=new Int32Array(s).fill(-1),u=new Int32Array(s),d=new Int32Array(s),f=new Int32Array(s),p=(e,t,n)=>{let r=Math.imul(e,2654435761)^Math.imul(t,2246822519)^Math.imul(n,3266489917);for(r=(r^r>>>15)&c;l[r]!==-1&&(u[r]!==e||d[r]!==t||f[r]!==n);)r=r+1&c;return r},m=(e,t)=>{let n=e-t;return n>.25?t+1:n<-.25?t-1:t},h=new Int32Array(i);for(let r=0;r<i;r++){let i=t[n+r],a=e[i*3]*o,s=e[i*3+1]*o,c=e[i*3+2]*o,g=Math.round(a),_=Math.round(s),v=Math.round(c),y=m(a,g),b=m(s,_),x=m(c,v),S=-1;for(let e=0;e<8&&S===-1;e++){if(e&1&&y===g||e&2&&b===_||e&4&&x===v)continue;let t=p(e&1?y:g,e&2?b:_,e&4?x:v);l[t]!==-1&&(S=l[t])}if(S===-1){let e=p(g,_,v);l[e]=i,u[e]=g,d[e]=_,f[e]=v,S=i}h[r]=S}let g=r(i),_=g-1,v=new Int32Array(g).fill(-1),y=new Int32Array(g),b=(e,t)=>{let n=(Math.imul(e,2654435761)^Math.imul(t,2246822519))&_;for(;v[n]!==-1&&(v[n]!==e||y[n]!==t);)n=n+1&_;return n},x=(e,t)=>{let n=b(e,t);return v[n]===-1&&(v[n]=e,y[n]=t,!0)},S=(e,t)=>v[b(e,t)]!==-1,C=0;for(let e=0;e<i;e+=3){let t=h[e],n=h[e+1],r=h[e+2];if(t!==n&&n!==r&&r!==t){if(!x(t,n)||!x(n,r)||!x(r,t))return!1;C++}}if(C<4)return!1;for(let e=0;e<i;e+=3){let t=h[e],n=h[e+1],r=h[e+2];if(t!==n&&n!==r&&r!==t&&(!S(n,t)||!S(r,n)||!S(t,r)))return!1}let w=h[0]*3,T=e[w],E=e[w+1],D=e[w+2],O=0;for(let t=0;t<i;t+=3){let n=h[t]*3,r=h[t+1]*3,i=h[t+2]*3,a=e[n]-T,o=e[n+1]-E,s=e[n+2]-D,c=e[r]-T,l=e[r+1]-E,u=e[r+2]-D,d=e[i]-T,f=e[i+1]-E,p=e[i+2]-D;O+=a*(l*p-u*f)+o*(u*d-c*p)+s*(c*f-l*d)}return O>0},a=0;for(let e of n){if(!i(a,e))return!1;a+=e}return!0}function oI(e,t,n,r){let i=Math.cos(30*Math.PI/180),a=e.length/3,o=t.length,s=o/3;{let i=new Uint32Array(e.buffer,e.byteOffset,e.length),s=n?new Uint32Array(n.buffer,n.byteOffset,n.length):null,c=(e,t)=>e[t]===2147483648?0:e[t],l=(e,t)=>{for(let n=0;n<3;n++)if(c(i,e*3+n)!==c(i,t*3+n)||r&&r[e*3+n]!==r[t*3+n])return!1;return!s||s[e*2]===s[t*2]&&s[e*2+1]===s[t*2+1]},u=16;for(;u<a*2;)u*=2;let d=u-1,f=new Int32Array(u).fill(-1),p=new Uint32Array(a);for(let e=0;e<a;e++){let t=Math.imul(c(i,e*3),2654435761)^Math.imul(c(i,e*3+1),2246822519)^Math.imul(c(i,e*3+2),3266489917);for(t=(t^t>>>15)&d;f[t]!==-1&&!l(f[t],e);)t=t+1&d;f[t]===-1&&(f[t]=e),p[e]=f[t]}for(let e=0;e<o;e++)t[e]=p[t[e]]}let c=new Float32Array(s*3),l=new Float32Array(s);for(let n=0;n<s;n++){let r=t[n*3]*3,i=t[n*3+1]*3,a=t[n*3+2]*3,o=e[i]-e[r],s=e[i+1]-e[r+1],u=e[i+2]-e[r+2],d=e[a]-e[r],f=e[a+1]-e[r+1],p=e[a+2]-e[r+2],m=s*p-u*f,h=u*d-o*p,g=o*f-s*d,_=Math.sqrt(m*m+h*h+g*g);_!==0&&(c[n*3]=m/_,c[n*3+1]=h/_,c[n*3+2]=g/_,l[n]=_)}let u=new Uint32Array(a+1);for(let e=0;e<o;e++)u[t[e]+1]+=1;for(let e=0;e<a;e++)u[e+1]+=u[e];let d=new Uint32Array(o),f=u.slice(0,a);for(let e=0;e<o;e++){let n=t[e];d[f[n]]=e,f[n]+=1}let p=0;for(let e=0;e<a;e++)p=Math.max(p,u[e+1]-u[e]);let m=new Uint32Array(o),h=new Uint32Array(a),g=new Float32Array(Math.max(1,p)*3);for(let e=0;e<a;e++){let t=0;for(let n=u[e];n<u[e+1];n++){let e=d[n],r=Math.floor(e/3)*3,a=c[r],o=c[r+1],s=c[r+2],l=-1;if(a===0&&o===0&&s===0)l=0;else for(let e=0;e<t;e++)if(g[e*3]*a+g[e*3+1]*o+g[e*3+2]*s>=i){l=e;break}l===-1&&(l=t,g[t*3]=a,g[t*3+1]=o,g[t*3+2]=s,t++),m[e]=l}h[e]=Math.max(1,t)}let _=new Uint32Array(a+1);for(let e=0;e<a;e++)_[e+1]=_[e]+h[e]-1;let v=_[a],y=a+v,b=e,x=n,S=r;if(v>0){b=new Float32Array(y*3),b.set(e),x=n?new Float32Array(y*2):null,x&&n&&x.set(n),S=r?new Uint8Array(y*3):null,S&&r&&S.set(r);for(let t=0;t<a;t++)for(let i=1;i<h[t];i++){let o=a+_[t]+i-1;b[o*3]=e[t*3],b[o*3+1]=e[t*3+1],b[o*3+2]=e[t*3+2],x&&n&&(x[o*2]=n[t*2],x[o*2+1]=n[t*2+1]),S&&r&&(S[o*3]=r[t*3],S[o*3+1]=r[t*3+1],S[o*3+2]=r[t*3+2])}}let C=new Float32Array(y*3);for(let e=0;e<o;e++){let n=t[e],r=m[e],i=r===0?n:a+_[n]+r-1;t[e]=i;let o=Math.floor(e/3)*3,s=l[o/3];C[i*3]+=c[o]*s,C[i*3+1]+=c[o+1]*s,C[i*3+2]+=c[o+2]*s}for(let e=0;e<C.length;e+=3){let t=C[e],n=C[e+1],r=C[e+2],i=Math.sqrt(t*t+n*n+r*r)||1;C[e]=t/i,C[e+1]=n/i,C[e+2]=r/i}return{positions:b,normals:C,indices:t,uvs:x,colors:S}}function sI(e,t,n,r){let i=e.length/3,a=new Float32Array(i*3),o=new Float32Array(i*3);for(let t=0;t<n.length;t+=3){let i=n[t],s=n[t+1],c=n[t+2],l=e[s*3]-e[i*3],u=e[s*3+1]-e[i*3+1],d=e[s*3+2]-e[i*3+2],f=e[c*3]-e[i*3],p=e[c*3+1]-e[i*3+1],m=e[c*3+2]-e[i*3+2],h=u*m-d*p,g=d*f-l*m,_=l*p-u*f,v=Math.sqrt(h*h+g*g+_*_);if(v===0)continue;let y=(p*_-m*g)/v,b=(m*h-f*_)/v,x=(f*g-p*h)/v,S=(g*d-_*u)/v,C=(_*l-h*d)/v,w=(h*u-g*l)/v,T=r[s*2]-r[i*2],E=r[c*2]-r[i*2],D=r[s*2+1]-r[i*2+1],O=r[c*2+1]-r[i*2+1],k=T*y+E*S,A=T*b+E*C,j=T*x+E*w,M=D*y+O*S,N=D*b+O*C,P=D*x+O*w;for(let e=0;e<3;e++){let r=n[t+e];a[r*3]+=k,a[r*3+1]+=A,a[r*3+2]+=j,o[r*3]+=M,o[r*3+1]+=N,o[r*3+2]+=P}}let s=new Float32Array(i*4);for(let e=0;e<i;e++){let n=t[e*3],r=t[e*3+1],i=t[e*3+2],c=a[e*3]*n+a[e*3+1]*r+a[e*3+2]*i,l=a[e*3]-c*n,u=a[e*3+1]-c*r,d=a[e*3+2]-c*i,f=Math.sqrt(l*l+u*u+d*d);if(!(f>1e-12)){let e=+(Math.abs(n)<.9),t=1-e;l=t*i,u=-e*i,d=e*r-t*n,f=Math.sqrt(l*l+u*u+d*d)||1}l/=f,u/=f,d/=f;let p=r*d-i*u,m=i*l-n*d,h=n*u-r*l,g=p*o[e*3]+m*o[e*3+1]+h*o[e*3+2];s[e*4]=l,s[e*4+1]=u,s[e*4+2]=d,s[e*4+3]=g<0?-1:1}return s}function cI(e,t){let n=aI(e.positions,e.indices,t),r=oI(e.positions,e.indices,e.uvs,e.colors),i=r.uvs?sI(r.positions,r.normals,r.indices,r.uvs):null;return{...r,closed:n,tangents:i}}function lI(e){let{isFloat32:t,deltaEncoded:n,planarByteSplit:r,uint16Indices:i,origin:a,scale:o,uvs:s,colors:c,jobs:l}=e,u=e=>e>>>1^-(e&1),d;if(t)d=e.vertexData;else{let t;if(r){let n=e.vertexData,r=n.length/6;t=new Int16Array(r*3);let i=0,a=0,o=0;for(let e=0;e<r;e++)i=i+u(n[e]|n[r*3+e]<<8)<<16>>16,a=a+u(n[r+e]|n[r*4+e]<<8)<<16>>16,o=o+u(n[r*2+e]|n[r*5+e]<<8)<<16>>16,t[e*3]=i,t[e*3+1]=a,t[e*3+2]=o}else if(n){let n=e.vertexData;t=new Int16Array(n.length);let r=0,i=0,a=0;for(let e=0;e<n.length;e+=3)r=r+u(n[e])<<16>>16,i=i+u(n[e+1])<<16>>16,a=a+u(n[e+2])<<16>>16,t[e]=r,t[e+1]=i,t[e+2]=a}else t=e.vertexData;d=new Float32Array(t.length);let i=a[0],s=a[1],c=a[2],l=o[0],f=o[1],p=o[2];for(let e=0;e<t.length;e+=3)d[e]=i+(t[e]+32767)*l,d[e+1]=s+(t[e+1]+32767)*f,d[e+2]=c+(t[e+2]+32767)*p}let f;if(r){let t=e.indexData;if(i){let e=t.length/2,n=new Uint16Array(e),r=0;for(let i=0;i<e;i++)r=r+u(t[i]|t[e+i]<<8)&65535,n[i]=r;f=n}else{let e=t.length/4,n=new Uint32Array(e),r=0;for(let i=0;i<e;i++){let a=(t[i]|t[e+i]<<8|t[e*2+i]<<16|t[e*3+i]<<24)>>>0;r=r+u(a)>>>0,n[i]=r}f=n}}else if(n){let t=e.indexData;if(t instanceof Uint16Array){let e=new Uint16Array(t.length),n=0;for(let r=0;r<t.length;r++)n=n+u(t[r])&65535,e[r]=n;f=e}else{let e=new Uint32Array(t.length),n=0;for(let r=0;r<t.length;r++)n=n+u(t[r])>>>0,e[r]=n;f=e}}else f=e.indexData;let p=d.length/3;for(let e=0;e<f.length;e++)if(f[e]>=p)throw Error(`Index ${f[e]} out of range of vertexCount ${p}`);let m=[];for(let e of l){let t=0,n=0;for(let r of e.windows)t+=r.vertexCount,n+=r.indexCount;let r=new Float32Array(t*3),i=new Uint32Array(n),a=s?new Float32Array(t*2):null,o=c?new Uint8Array(t*3):null,l=0,u=0;for(let t of e.windows){let e=t.vertexStart*3;r.set(d.subarray(e,e+t.vertexCount*3),l*3),a&&s&&a.set(s.subarray(t.vertexStart*2,(t.vertexStart+t.vertexCount)*2),l*2),o&&c&&o.set(c.subarray(e,e+t.vertexCount*3),l*3);let n=t.vertexStart,p=t.vertexStart+t.vertexCount,m=l-t.vertexStart;for(let e=0;e<t.indexCount;e++){let r=f[t.indexStart+e];if(r<n||r>=p)throw Error(`Index ${r} outside vertex window [${n}, ${p})`);i[u+e]=r+m}l+=t.vertexCount,u+=t.indexCount}m.push({positions:r,indices:i,uvs:a,colors:o})}return m}function uI(){return[`const assemble = ${lI.toString()};`,`const isClosedSolid = ${aI.toString()};`,`const splitCreases = ${oI.toString()};`,`const grainTangents = ${sI.toString()};`,`self.onmessage = (event) => {`,` const { id, input } = event.data;`,` try {`,` const geometries = assemble(input).map((g, i) => {`,` const counts = input.jobs[i].windows.map((w) => w.indexCount);`,` const closed = isClosedSolid(g.positions, g.indices, counts);`,` const c = splitCreases(g.positions, g.indices, g.uvs, g.colors);`,` const tangents = c.uvs ? grainTangents(c.positions, c.normals, c.indices, c.uvs) : null;`,` return { ...c, closed, tangents };`,` });`,` const transfer = [];`,` for (const g of geometries) {`,` transfer.push(g.positions.buffer, g.normals.buffer, g.indices.buffer);`,` if (g.uvs) transfer.push(g.uvs.buffer);`,` if (g.tangents) transfer.push(g.tangents.buffer);`,` if (g.colors) transfer.push(g.colors.buffer);`,` }`,` self.postMessage({ id, geometries }, transfer);`,` } catch (error) {`,` self.postMessage({ id, error: String((error && error.message) || error) });`,` }`,`};`].join(`
5603
- `)}var dI,fI=new Map,pI=1;function mI(){if(dI!==void 0)return dI;if(typeof Worker>`u`||typeof Blob>`u`||typeof URL>`u`||typeof URL.createObjectURL!=`function`)return dI=null,null;try{let e=URL.createObjectURL(new Blob([uI()],{type:`text/javascript`})),t=new Worker(e);t.onmessage=e=>{let{id:t,geometries:n,error:r}=e.data,i=fI.get(t);i&&(fI.delete(t),n?i.resolve(n):i.reject(Error(r??`mesh assembly failed in worker`)))},t.onerror=()=>{for(let e of fI.values())e.reject(Error(`mesh assembly worker crashed`));fI.clear(),t.terminate(),dI=null},dI=t}catch{dI=null}return dI}function hI(e,t,n){return new Promise((r,i)=>{let a=pI++;fI.set(a,{resolve:r,reject:i}),e.postMessage({id:a,input:t},n)})}var gI=1;function _I(e){gI=Math.max(1,e)}Bx(_I);function vI(e,t,n,r){typeof document>`u`||new r_().load(t,t=>{if(t.colorSpace=n===`map`?`srgb`:``,t.anisotropy=gI,r){let e=t.image,n=e?.width&&e.height?e.height/e.width:1;t.wrapS=1e3,t.wrapT=1e3,t.repeat.set(1/r,1/(r*n))}e[n]=t,e.needsUpdate=!0},void 0,e=>{Dx().warn(`Failed to load material ${n} ${t}:`,e)})}var yI={brushed:{fibres:[{pitch:.04,length:[2,12],depth:.3},{pitch:.25,length:[5,40],depth:.18}],bands:[]},rolled:{fibres:[{pitch:.3,length:[80,600],depth:.07}],bands:[{width:20,length:1500,depth:.05}]}},bI=.35,xI=e=>e.toFixed(4);function SI(e,t){let n=yI[e];if(!n||!(t>0))return null;let r=n.fibres.map((e,t)=>`selvaFibres( vUv, footprint, ${xI(e.pitch)}, vec2( ${xI(e.length[0])}, ${xI(e.length[1])} ), ${xI(e.depth)}, ${xI(t*31+3)} )`).join(` + `)||`0.0`,i=n.bands.map(e=>`selvaBand( vUv, footprint, vec2( ${xI(e.length)}, ${xI(e.width)} ), ${xI(e.depth)} )`).join(` + `)||`0.0`;return{key:`finish:${e}:${xI(t)}`,patch:e=>{e.fragmentShader=e.fragmentShader.replace(`#include <common>`,`#include <common>
5600
+ ${V(Ee)?`cursor-grabbing`:V(_e)?`cursor-grab`:`cursor-zoom-in`}
5601
+ ${V(G)?`touch-pan-y`:`touch-none`}
5602
+ ${V(M)?`bg-(--image-bg)`:`checkerboard`}`,`svelte-n94kuu`),l=a(s,``,l,{"--image-bg":V(M)}),v(b,1,`px-2.5 py-1 text-xs bottom-2 rounded pointer-events-none absolute left-1/2 -translate-x-1/2 bg-foreground/80 text-background transition-opacity ${V(Ne)?`opacity-100`:`opacity-0`}`),T(x,V(o).zoomHint),T(H,`${V(_).fileName??``}${V(_).fileType??``}`),ye.disabled=!V(K)||V(ue)<=V(pe)+.001,F(ye,`title`,`${V(o).zoomOut??``} (−)`),F(ye,`aria-label`,V(o).zoomOut),T(we,`${V(ge)??``}%`),Te.disabled=!V(K)||V(ue)>=V(he)-.001,F(Te,`title`,`${V(o).zoomIn??``} (+)`),F(Te,`aria-label`,V(o).zoomIn),De.disabled=!V(K)||V(G),F(De,`title`,`${V(o).zoomFit??``} (0)`),F(De,`aria-label`,V(o).zoomFit),Oe.disabled=e,F(Oe,`title`,`${V(o).zoomActual??``} (1)`),F(Oe,`aria-label`,V(o).zoomActual)},[()=>!V(K)||Math.abs(V(ue)-1)<.001]),e(`pointerdown`,s,ke),e(`pointermove`,s,Ae),e(`pointerup`,s,je),R(`pointercancel`,s,je),e(`dblclick`,s,Me),e(`keydown`,s,Pe),e(`click`,ye,()=>Se(V(ue)/c)),e(`click`,Te,()=>Se(V(ue)*c)),e(`click`,De,xe),e(`click`,Oe,()=>Se(1)),h(t,r)};D(l,e=>{V(B)?e(d):V(p)?e(m,1):V(_)&&e(y,2)}),O(r),L(r,e=>i(P,e),()=>V(P)),z(()=>v(r,1,`rounded flex flex-col overflow-hidden border border-border bg-background ${V(te)?`h-dvh`:``}`)),h(t,r)};D(Ve,e=>{(V(B)||V(p)||V(_))&&e(He)}),h(t,Be),b()}x([`pointerdown`,`pointermove`,`pointerup`,`dblclick`,`keydown`,`click`]);var $A=m(`<div class="gap-2 flex items-center"><!> <!></div>`),ej=m(`<span class="text-muted-foreground not-italic"> </span>`),tj=m(`<div class="ml-4 pl-2 border-l border-border/50"><!></div>`),nj=m(`<div><button class="gap-1.5 py-0.5 text-xs flex w-full items-center text-muted-foreground transition-colors hover:text-foreground"><!> <!> <span class="font-medium"> </span></button> <!></div>`),rj=m(`<div class="gap-1.5 py-0.5 flex items-center justify-between"><div class="gap-1.5 min-w-0 flex items-center"><!> <span class="text-xs truncate text-foreground"> </span></div> <span class="text-xs shrink-0 text-muted-foreground"> </span></div>`),ij=m(`<div class="rounded px-3 py-3 text-sm border border-border bg-muted text-muted-foreground"> </div>`),aj=m(`<div class="gap-2 text-xs flex items-center justify-between text-muted-foreground"><span class="min-w-0 truncate"> </span> <span class="shrink-0"> </span></div>`),oj=m(`<div class="gap-1 flex flex-col"></div>`),sj=m(`<div class="mt-2"><!></div>`),cj=m(`<li class="truncate"><span class="font-mono"> </span></li>`),lj=m(`<div class="rounded px-3 py-2 text-sm border border-destructive bg-destructive/10 text-destructive"><div class="font-medium"> </div> <div class="mt-1 text-xs"> </div> <ul class="mt-1 ml-4 text-xs list-disc"></ul> <div class="mt-1 text-xs"> </div></div>`),uj=m(`<div class="rounded px-3 py-2 text-sm border border-destructive bg-destructive/10 text-destructive"> </div>`),dj=m(`<div class="gap-2 flex flex-col"><div class="rounded px-3 py-2 border border-border bg-muted"><div class="gap-2 flex items-center justify-between"><span class="min-w-0 text-sm font-medium truncate text-foreground"> </span> <span class="text-xs shrink-0 text-muted-foreground"> </span></div> <!></div> <!> <!> <!></div>`),fj=m(`<span class="font-bold text-primary"> </span>`),pj=m(`<div><!></div>`),mj=m(`<pre> </pre>`),hj=m(`<div class="group relative"><!> <!></div>`),gj=m(`<div role="group" class="group/field gap-2 flex flex-col"><!> <!></div>`);function _j(t,n){l(n,!0);let a=e=>{var t=$A(),i=N(t);gn(i,{children:(e,t)=>{r();var n=M();z(()=>T(n,V(m))),h(e,n)},$$slots:{default:!0}});var a=I(i,2),o=e=>{Yk(e,{get label(){return V(m)},get description(){return n.item.description}})};D(a,e=>{n.item.description&&e(o)}),O(t),h(e,t)},o=e=>{var t=ej(),n=J(t,!0);z(()=>T(n,V(d).waitingForData)),h(e,t)},s=(t,n=E,r=E)=>{var i=U(),a=q(i);S(a,17,n,([e,t])=>e,(t,n)=>{var i=y(()=>k(V(n),2));let a=()=>V(i)[1];var o=U(),c=q(o),l=t=>{let n=y(()=>r()?`${r()}/${a().name}`:a().name),i=y(()=>ae.has(V(n)));var o=nj(),c=N(o),l=N(c);{let e=y(()=>V(i)?`rotate-90`:``);rt(l,{size:12,get class(){return`shrink-0 transition-transform duration-150 ${V(e)??``}`}})}var u=I(l,2),d=e=>{bt(e,{size:13,class:`shrink-0 text-primary/70`})},f=e=>{Yn(e,{size:13,class:`shrink-0 text-primary/70`})};D(u,e=>{V(i)?e(d):e(f,-1)});var p=I(u,2),m=J(p,!0);O(c);var g=I(c,2),_=e=>{var t=tj(),r=N(t);s(r,()=>a().children,()=>V(n)),O(t),h(e,t)};D(g,e=>{V(i)&&e(_)}),O(o),z(()=>T(m,a().name)),e(`click`,c,()=>oe(V(n))),h(t,o)},u=e=>{var t=rj(),n=N(t),r=N(n);qn(r,{size:12,class:`shrink-0 text-muted-foreground`});var i=I(r,2),o=J(i);O(n);var s=I(n,2),c=J(s,!0);O(t),z(e=>{T(o,`${a().file.fileName??``}${a().file.fileType??``}`),T(c,e)},[()=>mk(hk(a().file.data))]),h(e,t)};D(c,e=>{a().type===`folder`?e(l):e(u,-1)}),h(t,o)}),h(t,i)},c=e=>{var t=U(),n=q(t),i=e=>{var t=ij(),n=J(t,!0);z(()=>T(n,V(d).waitingForFiles)),h(e,t)},a=e=>{var t=dj(),n=N(t),i=N(n),a=N(i),o=J(a,!0),c=I(a,2),l=J(c,!0);O(i);var u=I(i,2),f=e=>{var t=sj(),n=N(t),r=e=>{s(e,()=>V(ne),()=>``)},i=e=>{var t=oj();S(t,23,()=>V(P),(e,t)=>B(e)+`#`+t,(e,t)=>{var n=aj(),r=N(n),i=J(r),a=I(r,2),o=J(a,!0);O(n),z(e=>{T(i,`${V(t).fileName??``}${V(t).fileType??``}`),T(o,e)},[()=>mk(hk(V(t).data))]),h(e,n)}),O(t),h(e,t)};D(n,e=>{V(ne)?e(r):e(i,-1)}),O(t),h(e,t)};D(u,e=>{V(F)>1&&e(f)}),O(n);var p=I(n,2),m=e=>{var t=lj(),n=N(t),r=J(n,!0),i=I(n,2),a=J(i,!0),o=I(i,2);S(o,20,()=>V(re),e=>e,(e,t)=>{var n=cj(),r=N(n),i=J(r,!0);O(n),z(()=>T(i,t)),h(e,n)}),O(o);var s=I(o,2),c=J(s,!0);O(t),z(e=>{T(r,V(d).duplicateFilesTitle),T(a,e),T(c,V(d).duplicateFilesHint)},[()=>qe(V(re).length,V(d).duplicatePathsOne,V(d).duplicatePathsOther)]),h(e,t)};D(p,e=>{V(ie)&&e(m)});var g=I(p,2),_=e=>{var t=uj(),n=J(t,!0);z(()=>T(n,V(j))),h(e,t)};D(g,e=>{V(j)&&e(_)});var v=I(g,2);{let e=y(()=>V(A)||V(ie));We(v,{onclick:H,get disabled(){return V(e)},class:`w-full`,children:(e,t)=>{r();var n=M();z(e=>T(n,e),[()=>V(A)?V(d).downloading:V(F)===1?V(d).downloadFile:Ge(V(d).downloadFiles,{count:V(F)})]),h(e,n)},$$slots:{default:!0}})}O(t),z((e,t)=>{T(o,e),T(l,t)},[()=>V(F)===1?`${V(P)[0].fileName}${V(P)[0].fileType}`:Ge(V(d).fileCount,{count:V(F)}),()=>mk(V(L))]),h(e,t)};D(n,e=>{V(F)===0?e(i):e(a,-1)}),h(e,t)},u=Je(),d=y(()=>u.messages),f=w(!1),p,m=y(()=>n.displayName||n.item.displayName||n.item.paramId),g=y(()=>typeof n.value==`object`&&n.value!==null),_=y(()=>n.value==null?``:V(g)?JSON.stringify(n.value,null,2):String(n.value)),x=y(()=>n.value!=null);async function C(){try{await navigator.clipboard.writeText(V(_)),i(f,!0),clearTimeout(p),p=setTimeout(()=>i(f,!1),2e3)}catch(e){console.error(`Failed to copy:`,e)}}let A=w(!1),j=w(null),P=y(()=>n.value?Array.isArray(n.value)?n.value.filter(pk):pk(n.value)?[n.value]:[]:[]),F=y(()=>V(P).length),L=y(()=>V(P).reduce((e,t)=>e+hk(t.data),0));function ee(e){let t=new xe;for(let n=0;n<e.length;n++){let r=e[n],i=YO(r.subFolder),a=t;for(let e of i){a.has(e)||a.set(e,{type:`folder`,name:e,children:new xe});let t=a.get(e);t.type===`folder`&&(a=t.children)}let o=`${r.fileName}${r.fileType??``}`,s=a.has(o)?`${o}#${n}`:o;a.set(s,{type:`file`,file:r})}return t}function R(e,t=``){let n=[];for(let[r,i]of e)if(i.type===`folder`){let e=t?`${t}/${r}`:r;n.push(e),n.push(...R(i.children,e))}return n}let te=y(()=>V(P).some(e=>e.subFolder&&e.subFolder.length>0)),ne=y(()=>V(te)?ee(V(P)):null);function B(e){let t=YO(e.subFolder).join(`/`),n=`${e.fileName}${e.fileType??``}`;return t?`${t}/${n}`:n}let re=y(()=>{let e={};for(let t of V(P)){let n=B(t);e[n]=(e[n]??0)+1}return Object.entries(e).filter(([,e])=>e>1).map(([e])=>e)}),ie=y(()=>V(re).length>0),ae=new be;ce(()=>{if(V(ne)){ae.clear();for(let e of R(V(ne)))ae.add(e)}});function oe(e){ae.has(e)?ae.delete(e):ae.add(e)}async function H(){if(V(F)!==0){i(A,!0),i(j,null);try{if(V(F)===1)await fk(V(P)[0],V(P)[0].fileName);else{let e=n.displayName?n.displayName.replace(/[^a-z0-9]/gi,`_`).toLowerCase():`download`;await fk(V(P),e)}}catch(e){i(j,e instanceof Error?e.message:V(d).downloadFailed,!0),console.error(`[OutputDisplayWidget] Download error:`,e)}finally{i(A,!1)}}}var se=U(),le=q(se),ue=e=>{var t=gj(),i=N(t);a(i);var s=I(i,2),l=e=>{{let t=y(()=>typeof n.value==`string`?n.value:n.value==null?``:JSON.stringify(n.value));zA(e,{get item(){return n.item},get value(){return V(t)}})}},u=e=>{QA(e,{get item(){return n.item},get value(){return n.value}})},p=e=>{c(e)},m=e=>{var t=pj();v(t,1,`min-h-12.5 rounded px-3 py-3 font-mono text-sm border border-border flex items-center bg-muted/50 wrap-break-word`);var n=N(t),r=e=>{var t=fj(),n=J(t,!0);z(()=>T(n,V(_))),h(e,t)},i=e=>{o(e)};D(n,e=>{V(x)?e(r):e(i,-1)}),O(t),h(e,t)},b=e=>{var t=hj(),i=N(t),a=e=>{var t=mj();v(t,1,`min-h-12.5 rounded px-3 py-3 font-mono text-sm border border-border max-h-96 overflow-auto bg-muted/10 wrap-anywhere text-foreground`);var n=J(t,!0);z(()=>T(n,V(_))),h(e,t)},s=e=>{var t=pj();v(t,1,`min-h-12.5 rounded px-3 py-3 font-mono text-sm border border-border bg-muted/10 wrap-anywhere wrap-break-word whitespace-pre-wrap text-foreground`);var r=N(t),i=e=>{var t=M();z(()=>T(t,n.value)),h(e,t)},a=e=>{o(e)};D(r,e=>{V(x)?e(i):e(a,-1)}),O(t),h(e,t)};D(i,e=>{V(g)?e(a):e(s,-1)});var c=I(i,2),l=e=>{var t=pj(),n=N(t);We(n,{onclick:C,size:`sm`,children:(e,t)=>{r();var n=M();z(()=>T(n,V(f)?V(d).copied:V(d).copy)),h(e,n)},$$slots:{default:!0}}),O(t),z(()=>v(t,1,`right-2 top-2 absolute transition-opacity ${V(f)?`opacity-100`:`opacity-0 group-hover:opacity-100 focus-within:opacity-100 pointer-coarse:opacity-100`}`)),h(e,t)};D(c,e=>{V(x)&&e(l)}),O(t),h(e,t)};D(s,e=>{n.item.widgetType===`chart`?e(l):n.item.widgetType===`image`?e(u,1):n.item.widgetType===`file`?e(p,2):n.item.widgetType===`number`?e(m,3):n.item.widgetType===`text`&&e(b,4)}),O(t),h(e,t)};D(le,e=>{n.item.widgetType!==`dynamicValueList`&&e(ue)}),h(t,se),b()}x([`click`]);var vj=m(`<div class="gap-3 py-3 flex flex-col"></div>`),yj=m(`<div class="px-3"><h2 class="sr-only"> </h2> <!></div>`),bj=m(`<div class="h-full bg-muted dark:bg-background"><!></div>`);function xj(e,t){l(t,!0);let n=(e,n=E,r=E)=>{let i=y(()=>u(n().paramId));var a=U(),s=q(a),c=e=>{jA(e,{get item(){return n()},get value(){return t.values[V(i).id]},get displayName(){return n().displayName},get onChange(){return t.onValueChange},get disabled(){return r().disabled},get dynamicOptions(){return o()[V(i).id]}})};D(s,e=>{V(i)&&e(c)}),h(e,a)},r=(e,n=E)=>{let r=y(()=>d(n().paramId));var i=U(),a=q(i),o=e=>{_j(e,{get item(){return n()},get value(){return t.values[n().paramId]},get displayName(){return n().displayName}})};D(a,e=>{V(r)&&e(o)}),h(e,i)},i=Je(),a=y(()=>i.messages),o=P(t,`dynamicOptions`,19,()=>({})),s=y(()=>t.tab.groups.filter(e=>Tk(e,t.values)));function u(e){return t.inputs.find(t=>t.id===e)}function d(e){return t.outputs.find(t=>t.id===e)}var f=U(),p=q(f);c(p,()=>bn,(e,i)=>{i(e,{get value(){return t.tab.id},class:`min-h-0`,children:(e,i)=>{var o=bj();$s(N(o),{class:`h-full`,orientation:`vertical`,children:(e,i)=>{var o=yj(),c=N(o),l=J(c,!0),u=I(c,2),d=e=>{eu(e,{type:`empty`,size:`medium`,get message(){return V(a).tabNoGroups}})},f=e=>{var i=vj();S(i,21,()=>V(s),e=>e.id,(e,i)=>{{let a=y(()=>V(i).columns??1),o=y(()=>t.collapsedGroups[V(i).id]??!1),c=y(()=>V(s).length===1);Fk(e,{get label(){return V(i).label},get description(){return V(i).description},get items(){return V(i).items},get columns(){return V(a)},get collapsed(){return V(o)},get values(){return t.values},onToggle:()=>t.onToggleGroup(V(i).id),get inputSnippet(){return n},get outputSnippet(){return r},get flat(){return V(c)}})}}),O(i),h(e,i)};D(u,e=>{V(s).length===0?e(d):e(f,-1)}),O(o),z(()=>T(l,t.tab.label)),h(e,o)},$$slots:{default:!0}}),O(o),h(e,o)},$$slots:{default:!0}})}),h(e,f),b()}function Sj(e){return typeof e==`object`&&!!e&&(`targetInputId`in e||`options`in e)}function Cj(e){if(Sj(e))return e;let t=e;for(let e=0;e<2&&typeof t==`string`;e++){try{t=JSON.parse(t)}catch{return null}if(Sj(t))return t}return null}var wj=new Map,Tj=8;function Ej(e){if(typeof e!=`string`||e.length<1024)return Cj(e);let t=wj.get(e);if(t!==void 0||wj.has(e))return wj.delete(e),wj.set(e,t??null),t??null;let n=performance.now(),r=Cj(e);if(e.length>262144){let t=r?.options?Object.keys(r.options).length:0;console.info(`[DVL] parsed ${(e.length/1048576).toFixed(1)} MB options payload (${t} options) in ${(performance.now()-n).toFixed(0)}ms — cache miss`)}if(wj.size>=Tj){let e=wj.keys().next().value;e!==void 0&&wj.delete(e)}return wj.set(e,r),r}function Dj(e){let t=new Map;for(let n of Lk(e)){if(n.type!==`output`||n.widgetType!==`dynamicValueList`)continue;let e=n;typeof e.paramId==`string`&&t.set(e.paramId,{id:e.paramId,targetInputId:e.config?.targetInputId})}for(let n of e.outputs??[])n.type===`dynamicValueList`&&t.set(n.id,{id:n.id,targetInputId:n.targetInputId});return[...t.values()]}function Oj(e,t){let n={};for(let r of Dj(e)){let e=Ej(t[r.id]);if(!e)continue;let i=e.targetInputId??r.targetInputId;i&&e.options&&typeof e.options==`object`&&(n[i]=e.options)}return n}var kj=m(`<!> <!>`,1);function Aj(e,t){l(t,!0);let n=P(t,`requestedTabId`,3,null),r=w(``),a=fe({}),o=y(()=>t.schema.layout.type===`tabbed`?t.schema.layout.tabs.filter(e=>Ek(e,t.values)?t.panelFilter?t.panelFilter===`right`?e.position===`right`:e.position!==`right`:!0:!1):[]),s=y(()=>V(o).length>1),u=y(()=>Oj(t.schema,t.values));ce(()=>{n()&&V(o).some(e=>e.id===n())?i(r,n()):V(o).length>0&&!V(o).some(e=>e.id===V(r))&&i(r,V(o)[0].id,!0)}),ce(()=>{if(t.schema.layout.type!==`tabbed`)return;let e={};t.schema.layout.tabs.forEach(t=>t.groups.forEach(t=>{t.id in a||(e[t.id]=t.collapsed??!1)})),Object.keys(e).length>0&&Object.assign(a,e)});function d(e){a[e]=!a[e]}function f(e){i(r,e,!0)}var p=U(),m=q(p);c(m,()=>wn,(e,n)=>{n(e,{variant:`flush`,class:`min-h-0 mx-1 flex-1`,children:(e,n)=>{var i=U(),l=q(i);c(l,()=>vn,(e,n)=>{n(e,{get value(){return V(r)},variant:`line`,class:`min-h-0 flex-1`,children:(e,n)=>{var i=kj(),c=q(i),l=e=>{LO(e,{get tabs(){return V(o)},get activeTabId(){return V(r)},onTabChange:f})};D(c,e=>{V(s)&&e(l)});var p=I(c,2);S(p,17,()=>V(o),e=>e.id,(e,n)=>{xj(e,{get tab(){return V(n)},get values(){return t.values},get collapsedGroups(){return a},onToggleGroup:d,get onValueChange(){return t.onValueChange},get inputs(){return t.schema.inputs},get outputs(){return t.schema.outputs},get dynamicOptions(){return V(u)}})}),h(e,i)},$$slots:{default:!0}})}),h(e,i)},$$slots:{default:!0}})}),h(e,p),b()}var jj=m(`<span class="text-xs font-semibold"> </span>`),Mj=m(`<button type="button"><!></button>`),Nj=m(`<div role="button" tabindex="0"></div>`);function Pj(t,n){l(n,!0);let r=Je(),i=y(()=>r.messages),o=y(()=>[`gap-1 py-2 lg:py-3 lg:flex-col lg:w-auto px-2 lg:px-0`,`flex w-full shrink-0 flex-row items-center`,`backdrop-blur-sm bg-background/90 cursor-pointer`].join(` `));var s=Nj();S(s,21,()=>n.tabs,e=>e.id,(t,r)=>{var i=Mj();v(i,1,re(`w-8 h-8 rounded cursor-pointer flex shrink-0 items-center justify-center text-muted-foreground transition-colors hover:bg-accent hover:text-foreground`));var a=N(i),o=e=>{var t=U(),n=q(t),i=e=>{jO(e,{get icon(){return V(r).icon},class:`h-4 w-4`})},a=y(()=>V(r).icon.includes(`:`)),o=e=>{var t=jj(),n=J(t,!0);z(()=>T(n,V(r).icon)),h(e,t)};D(n,e=>{V(a)?e(i):e(o,-1)}),h(e,t)},s=e=>{var t=jj(),n=J(t,!0);z(e=>T(n,e),[()=>V(r).label[0]?.toUpperCase()??`?`]),h(e,t)};D(a,e=>{V(r).icon?e(o):e(s,-1)}),O(i),z(()=>{F(i,`title`,V(r).label),F(i,`aria-label`,V(r).label)}),e(`click`,i,e=>{e.stopPropagation(),n.onTabClick(V(r).id)}),h(t,i)}),O(s),z(e=>{v(s,1,re(V(o)),`svelte-17r9ylq`),a(s,`--collapsed-w: ${n.collapsedWidth??``}px;`),F(s,`aria-label`,e)},[()=>V(i).expandSidePanel.replace(`{side}`,n.side===`left`?V(i).panelSideLeft:V(i).panelSideRight)]),e(`click`,s,function(...e){n.onExpand?.apply(this,e)}),e(`keydown`,s,e=>(e.key===`Enter`||e.key===` `)&&n.onExpand()),h(t,s),b()}x([`click`,`keydown`]);function Fj(e,t,n){let r=[];for(let n of Ik(e))for(let i of n.items??[]){if(i.type!==`input`)continue;let a=t[i.paramId],o=e.inputs.find(e=>e.id===i.paramId);a!==void 0&&o&&r.push({paramId:i.paramId,nickname:o.nickname,displayName:i.displayName||o.nickname,paramType:o.paramType,value:a,groupName:n.label})}return{id:kn(),name:n.name,description:n.description,timestamp:new Date().toISOString(),schemaId:e.id,documentId:e.documentId??``,projectFileName:e.projectFileName??``,pluginVersion:e.pluginVersion??``,author:n.author,tags:n.tags??[],parameters:r}}function Ij(e,t){let n=[];e.documentId!==(t.documentId??``)&&n.push({paramId:`__document__`,severity:`error`,message:`Document ID mismatch - this state was saved for a different document`,details:{expected:t.documentId??``,actual:e.documentId}}),e.schemaId!==t.id&&n.push({paramId:`__schema__`,severity:`warning`,message:`Schema has changed since this state was saved`,details:{expected:t.id,actual:e.schemaId}});for(let r of e.parameters){let e=t.inputs.find(e=>e.id===r.paramId);if(!e){n.push({paramId:r.paramId,severity:`error`,message:`Parameter "${r.nickname}" no longer exists in the schema`});continue}e.nickname!==r.nickname&&n.push({paramId:r.paramId,severity:`warning`,message:`Parameter nickname changed`,details:{expected:r.nickname,actual:e.nickname}})}let r=n.some(e=>e.severity===`error`);return{isValid:n.length===0,issues:n,canLoad:!r}}function Lj(e,t){let n={};for(let r of e.parameters)t.inputs.some(e=>e.id===r.paramId)&&(n[r.paramId]=r.value);return n}function Rj(e,t){let n=Ij(e,t);return{values:Lj(e,t),issues:n.issues,isValid:n.isValid,canLoad:n.canLoad}}function zj(e){let t=new Blob([JSON.stringify(e,null,2)],{type:`application/json`}),n=e.name.replace(/[^a-z0-9]/gi,`_`),r=e.timestamp.split(`T`)[0].replace(/-/g,`_`),i=document.createElement(`a`);i.href=URL.createObjectURL(t),i.download=`${n}_${r}.slvp`,i.click(),URL.revokeObjectURL(i.href)}async function Bj(e){let t=JSON.parse(await e.text());if(!t.id||!t.name||!t.documentId||!t.parameters)throw Error(`Invalid saved state file format`);return t}var Vj={saveMenuItem:`Save inputs…`,loadMenuItem:`Load inputs…`,saveDialogTitle:`Save inputs`,saveDialogDescription:`Save the current input values as a .slvp file`,saveNameLabel:`Name *`,saveNamePlaceholder:`e.g., Design Option A`,saveDescriptionLabel:`Description`,saveDescriptionPlaceholder:`Optional description of this state`,saveAuthorLabel:`Author`,saveAuthorPlaceholder:`Your name or email`,saveTagsLabel:`Tags`,saveTagsPlaceholder:`facade, option-a, client-approved (comma-separated)`,saveNameRequired:`Please enter a name for these inputs`,saveConfirmButton:`Save`,loadDialogTitle:`Load inputs`,loadDialogDescription:`Select a .slvp file from your drive to load`,loadFromFileButton:`Select .slvp File`,loadEmptyList:`No saved states found`,loadImportError:`Failed to import state: `,validationTitle:`State Validation Report`,validationValidatingPrefix:`Validating state: `,validationNoIssuesTitle:`No Issues Found`,validationNoIssuesBody:`This state can be loaded safely.`,validationWarningsTitle:`Warnings Detected`,validationWarningsBody:`{count} warning(s) found, but state can still be loaded.`,validationErrorsTitle:`Critical Errors`,validationErrorsBody:`Cannot load this state due to critical incompatibilities.`,validationIssuesHeading:`Issues:`,validationExpected:`Expected:`,validationActual:`Actual:`,cancelButton:`Cancel`,loadAnywayButton:`Load Anyway`},Hj=m(`<!> <!>`,1),Uj=m(`<!> <div class="gap-4 py-4 grid"><div class="gap-2 grid"><!> <!></div> <div class="gap-2 grid"><!> <!></div> <div class="gap-2 grid"><!> <!></div> <div class="gap-2 grid"><!> <!></div></div> <!>`,1),Wj=m(`<p class="text-sm py-8 text-center text-muted-foreground">…</p>`),Gj=m(`<p class="text-sm py-8 text-center text-destructive"> </p>`),Kj=m(`<p class="text-sm py-8 text-center text-muted-foreground"> </p>`),qj=m(`<div class="text-xs mt-0.5 text-muted-foreground"> </div>`),Jj=m(`<button type="button" class="p-3 w-full rounded-lg border text-left transition-colors hover:bg-muted"><div class="text-sm font-medium"> </div> <!> <div class="text-xs mt-1 text-muted-foreground"> </div></button>`),Yj=m(`<div class="space-y-2"></div>`),Xj=m(`<div class="py-4"><!></div>`),Zj=m(`<!> `,1),Qj=m(`<div class="py-8"><!></div>`),$j=m(`<!> <!> <!>`,1),eM=m(`<div class="gap-2 flex flex-col"><h4 class="text-sm font-medium"> </h4> <!></div>`),tM=m(`<div class="gap-4 py-4 grid"><!> <!></div>`),nM=m(`<input type="file" accept=".slvp,.sps" class="hidden"/> <!> <!> <!>`,1);function rM(t,n){l(n,!0);let a=y(()=>({...Vj,...n.labels})),o=w(!1),s=w(``),u=w(``),d=w(``),f=w(``),p=w(!1),m=w(!1),g=w(null),_=w(``),v=w(null),x=w(fe([])),C=w(!1),E=w(``);function k(){i(s,`State ${new Date().toLocaleDateString()}`),i(u,``),i(d,n.schema.author||``,!0),i(f,``),i(o,!0)}async function A(){if(!V(s).trim()){Dn.error(V(a).saveNameRequired);return}let e=Fj(n.schema,n.currentValues,{name:V(s).trim(),description:V(u).trim()||void 0,author:V(d).trim()||void 0,tags:V(f).split(`,`).map(e=>e.trim()).filter(e=>e.length>0)});n.onSaveState?await n.onSaveState(e):zj(e),i(o,!1)}function j(e){let t=Rj(e,n.schema);t.isValid?n.onLoadValues(t.values):(i(g,t,!0),i(_,e.name,!0),i(p,!0))}async function P(e){let t=e.target;if(t.files&&t.files.length!==0){try{j(await Bj(t.files[0]))}catch(e){Dn.error(V(a).loadImportError+e.message)}t.value=``}}function F(){V(g)&&V(g).canLoad&&(n.onLoadValues(V(g).values),i(p,!1),i(g,null))}function ee(){i(p,!1),i(g,null)}async function R(){if(i(m,!0),n.onListStates){i(C,!0),i(E,``),i(x,[],!0);try{i(x,await n.onListStates(),!0)}catch(e){i(E,e.message,!0)}finally{i(C,!1)}}}function te(){V(v)?.click(),i(m,!1)}function ne(e){j(e),i(m,!1)}var B={openSave:k,openLoad:R},re=nM(),ie=q(re);L(ie,e=>i(v,e),()=>V(v));var ae=I(ie,2);c(ae,()=>hn,(e,t)=>{t(e,{get open(){return V(o)},set open(e){i(o,e,!0)},children:(e,t)=>{var n=U(),l=q(n);c(l,()=>mn,(e,t)=>{t(e,{children:(e,t)=>{var n=Uj(),l=q(n);c(l,()=>fn,(e,t)=>{t(e,{children:(e,t)=>{var n=Hj(),i=q(n);c(i,()=>dn,(e,t)=>{t(e,{children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).saveDialogTitle)),h(e,n)},$$slots:{default:!0}})});var o=I(i,2);c(o,()=>pn,(e,t)=>{t(e,{children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).saveDialogDescription)),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})});var p=I(l,2),m=N(p),g=N(m);gn(g,{for:`export-name`,children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).saveNameLabel)),h(e,n)},$$slots:{default:!0}});var _=I(g,2);Cn(_,{id:`export-name`,get placeholder(){return V(a).saveNamePlaceholder},get value(){return V(s)},set value(e){i(s,e,!0)}}),O(m);var v=I(m,2),y=N(v);gn(y,{for:`export-description`,children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).saveDescriptionLabel)),h(e,n)},$$slots:{default:!0}});var b=I(y,2);_n(b,{id:`export-description`,get placeholder(){return V(a).saveDescriptionPlaceholder},rows:3,get value(){return V(u)},set value(e){i(u,e,!0)}}),O(v);var x=I(v,2),S=N(x);gn(S,{for:`export-author`,children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).saveAuthorLabel)),h(e,n)},$$slots:{default:!0}});var C=I(S,2);Cn(C,{id:`export-author`,get placeholder(){return V(a).saveAuthorPlaceholder},get value(){return V(d)},set value(e){i(d,e,!0)}}),O(x);var w=I(x,2),E=N(w);gn(E,{for:`export-tags`,children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).saveTagsLabel)),h(e,n)},$$slots:{default:!0}});var D=I(E,2);Cn(D,{id:`export-tags`,get placeholder(){return V(a).saveTagsPlaceholder},get value(){return V(f)},set value(e){i(f,e,!0)}}),O(w),O(p);var k=I(p,2);c(k,()=>ft,(e,t)=>{t(e,{children:(e,t)=>{var n=Hj(),s=q(n);We(s,{variant:`outline`,onclick:()=>i(o,!1),children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).cancelButton)),h(e,n)},$$slots:{default:!0}});var c=I(s,2);We(c,{onclick:A,children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).saveConfirmButton)),h(e,n)},$$slots:{default:!0}}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})});var oe=I(ae,2);c(oe,()=>hn,(t,o)=>{o(t,{get open(){return V(m)},set open(e){i(m,e,!0)},children:(t,o)=>{var s=U(),l=q(s);c(l,()=>mn,(t,o)=>{o(t,{children:(t,o)=>{var s=$j(),l=q(s);c(l,()=>fn,(e,t)=>{t(e,{children:(e,t)=>{var n=Hj(),i=q(n);c(i,()=>dn,(e,t)=>{t(e,{children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).loadDialogTitle)),h(e,n)},$$slots:{default:!0}})});var o=I(i,2);c(o,()=>pn,(e,t)=>{t(e,{children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).loadDialogDescription)),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})});var u=I(l,2),d=t=>{var n=Xj(),r=N(n),i=e=>{var t=Wj();h(e,t)},o=e=>{var t=Gj(),n=J(t,!0);z(()=>T(n,V(E))),h(e,t)},s=e=>{var t=Kj(),n=J(t,!0);z(()=>T(n,V(a).loadEmptyList)),h(e,t)},c=t=>{var n=Yj();S(n,21,()=>V(x),e=>e.id,(t,n)=>{var r=Jj(),i=N(r),a=J(i,!0),o=I(i,2),s=e=>{var t=qj(),r=J(t,!0);z(()=>T(r,V(n).description)),h(e,t)};D(o,e=>{V(n).description&&e(s)});var c=I(o,2),l=J(c,!0);O(r),z(e=>{T(a,V(n).name),T(l,e)},[()=>new Date(V(n).timestamp).toLocaleString()]),e(`click`,r,()=>ne(V(n))),h(t,r)}),O(n),h(t,n)};D(r,e=>{V(C)?e(i):V(E)?e(o,1):V(x).length===0?e(s,2):e(c,-1)}),O(n),h(t,n)},f=e=>{var t=Qj(),n=N(t);We(n,{onclick:te,class:`w-full`,size:`lg`,children:(e,t)=>{var n=Zj(),r=q(n);yt(r,{class:`mr-2 h-4 w-4`});var i=I(r);z(()=>T(i,` ${V(a).loadFromFileButton??``}`)),h(e,n)},$$slots:{default:!0}}),O(t),h(e,t)};D(u,e=>{n.onListStates?e(d):e(f,-1)});var p=I(u,2);c(p,()=>ft,(e,t)=>{t(e,{children:(e,t)=>{We(e,{variant:`outline`,onclick:()=>i(m,!1),children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).cancelButton)),h(e,n)},$$slots:{default:!0}})},$$slots:{default:!0}})}),h(t,s)},$$slots:{default:!0}})}),h(t,s)},$$slots:{default:!0}})});var H=I(oe,2);return c(H,()=>hn,(e,t)=>{t(e,{get open(){return V(p)},set open(e){i(p,e,!0)},children:(e,t)=>{var n=U(),i=q(n);c(i,()=>mn,(e,t)=>{t(e,{class:`max-w-2xl`,children:(e,t)=>{var n=$j(),i=q(n);c(i,()=>fn,(e,t)=>{t(e,{children:(e,t)=>{var n=Hj(),i=q(n);c(i,()=>dn,(e,t)=>{t(e,{children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).validationTitle)),h(e,n)},$$slots:{default:!0}})});var o=I(i,2);c(o,()=>pn,(e,t)=>{t(e,{children:(e,t)=>{var n=U(),r=q(n),i=e=>{var t=M();z(()=>T(t,`${V(a).validationValidatingPrefix??``}${V(_)??``}`)),h(e,t)};D(r,e=>{V(_)&&e(i)}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})});var o=I(i,2),s=e=>{var t=tM(),n=N(t),i=e=>{On(e,{tone:`success`,get title(){return V(a).validationNoIssuesTitle},children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).validationNoIssuesBody)),h(e,n)},$$slots:{default:!0}})},o=e=>{On(e,{tone:`warning`,get title(){return V(a).validationWarningsTitle},children:(e,t)=>{r();var n=M();z(e=>T(n,e),[()=>V(a).validationWarningsBody.replace(`{count}`,String(V(g).issues.length))]),h(e,n)},$$slots:{default:!0}})},s=e=>{On(e,{tone:`danger`,get title(){return V(a).validationErrorsTitle},children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).validationErrorsBody)),h(e,n)},$$slots:{default:!0}})};D(n,e=>{V(g).isValid?e(i):V(g).canLoad?e(o,1):e(s,-1)});var c=I(n,2),l=e=>{var t=eM(),n=N(t),r=J(n,!0),i=I(n,2);{let e=y(()=>V(g).issues.map(e=>({severity:e.severity===`error`?`error`:`warning`,message:e.message,detail:e.details?`${V(a).validationExpected} ${e.details.expected} → ${V(a).validationActual} ${e.details.actual}`:void 0})));Le(i,{get issues(){return V(e)}})}O(t),z(()=>T(r,V(a).validationIssuesHeading)),h(e,t)};D(c,e=>{V(g).isValid||e(l)}),O(t),h(e,t)};D(o,e=>{V(g)&&e(s)});var l=I(o,2);c(l,()=>ft,(e,t)=>{t(e,{children:(e,t)=>{var n=Hj(),i=q(n);We(i,{variant:`outline`,onclick:ee,children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).cancelButton)),h(e,n)},$$slots:{default:!0}});var o=I(i,2),s=e=>{We(e,{onclick:F,children:(e,t)=>{r();var n=M();z(()=>T(n,V(a).loadAnywayButton)),h(e,n)},$$slots:{default:!0}})};D(o,e=>{V(g)?.canLoad&&e(s)}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})}),h(e,n)},$$slots:{default:!0}})}),e(`change`,ie,P),h(t,re),b(B)}x([`change`,`click`]);async function iM(e,t){if(!e.solvesFirst||!t)return e.onclick();let n=await t();n.status===`applied`&&await e.onclick(n)}var aM=m(`<!> `,1),oM=m(`<span class="text-xs leading-snug text-muted-foreground"> </span>`),sM=m(`<!> <span class="flex flex-col"> <!></span>`,1),cM=m(`<!> <!> <!> <!>`,1),lM=m(`<!> <!>`,1),uM=m(`<div class="mt-3 pb-3 pt-2 px-2 flex justify-end border-t border-border/50"><!></div>`),dM=m(`<div class="panel-footer px-1 svelte-1txzu1i"><!></div>`),fM=m(`<div class="panel-content-wrapper svelte-1txzu1i"><!> <!></div>`),pM=m(`<div class="drawer-footer svelte-1txzu1i"><!></div>`),mM=m(`<div class="my-4 gap-2 flex items-center" aria-hidden="true"><div class="h-px flex-1 bg-border"></div> <span class="text-xs font-medium px-1 text-muted-foreground"> </span> <div class="h-px flex-1 bg-border"></div></div> <!>`,1),hM=m(`<div><!></div> <div><button class="drawer-handle-bar touch-none svelte-1txzu1i"><div class="drawer-pill svelte-1txzu1i"></div> <span class="text-sm font-medium ml-2 text-foreground"> </span> <!></button> <div class="drawer-content svelte-1txzu1i"><div class="px-3 pb-6"><!> <!></div></div> <!></div>`,1),gM=m(`<div class="flex flex-1 flex-col overflow-hidden"><div class="px-3 pt-3 flex-1 overflow-y-auto"><!> <!></div> <!></div>`),_M=m(`<div class="min-h-0 flex h-full flex-1 justify-center"><div class="min-h-0 flex h-full w-4/5 flex-col"><!></div></div>`),vM=m(`<div><!></div>`),yM=m(`<!> <!> <!>`,1),bM=m(`<div class="min-h-0 flex h-full flex-1"><!> <!> <!></div>`),xM=m(`<main data-layout-root=""><!> <!></main> <!>`,1);function SM(t,n){l(n,!0);let a=e=>{var t=U(),r=q(t);c(r,()=>ks,(e,t)=>{t(e,{children:(e,t)=>{var r=lM(),i=q(r);{let e=(e,t)=>{We(e,W(()=>(t?.()).props,{variant:`outline`,size:`icon-lg`,class:`shrink-0`,get title(){return V(m).moreActions},get"aria-label"(){return V(m).moreActions},children:(e,t)=>{ht(e,{})},$$slots:{default:!0}}))};c(i,()=>Ds,(t,n)=>{n(t,{child:e,$$slots:{child:!0}})})}var a=I(i,2);c(a,()=>ls,(e,t)=>{t(e,{side:`top`,align:`end`,sideOffset:6,class:`min-w-56 z-10001 w-auto`,children:(e,t)=>{var r=cM(),i=q(r),a=e=>{var t=U(),n=q(t);c(n,()=>ds,(e,t)=>{t(e,{onSelect:()=>V(ne)?.openSave(),children:(e,t)=>{var n=aM(),r=q(n);Vn(r,{});var i=I(r);z(()=>T(i,` ${V(te).saveMenuItem??``}`)),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(i,e=>{M()&&e(a)});var o=I(i,2),s=e=>{var t=U(),n=q(t);c(n,()=>ds,(e,t)=>{t(e,{onSelect:()=>V(ne)?.openLoad(),children:(e,t)=>{var n=aM(),r=q(n);yt(r,{});var i=I(r);z(()=>T(i,` ${V(te).loadMenuItem??``}`)),h(e,n)},$$slots:{default:!0}})}),h(e,t)};D(o,e=>{ee()&&e(s)});var l=I(o,2),u=e=>{var t=U(),n=q(t);c(n,()=>vs,(e,t)=>{t(e,{})}),h(e,t)};D(l,e=>{(M()||ee())&&j().length>0&&e(u)});var d=I(l,2);S(d,17,j,e=>e.id,(e,t)=>{let r=y(()=>V(t).hint??(V(t).solvesFirst&&V(re)?V(m).calculatesFirst:void 0));var i=U(),a=q(i);{let e=y(()=>V(t).variant??`default`);c(a,()=>ds,(i,a)=>{a(i,{get disabled(){return V(t).disabled},get variant(){return V(e)},onSelect:()=>iM(V(t),n.ensureSolved),class:`items-start`,children:(e,n)=>{var i=sM(),a=q(i),o=e=>{let n=y(()=>V(t).icon);var r=U(),i=q(r);c(i,()=>V(n),(e,t)=>{t(e,{class:`mt-0.5`})}),h(e,r)};D(a,e=>{V(t).icon&&e(o)});var s=I(a,2),l=N(s),u=I(l),d=e=>{var t=oM(),n=J(t,!0);z(()=>T(n,V(r))),h(e,t)};D(u,e=>{V(r)&&e(d)}),O(s),z(()=>T(l,`${V(t).label??``} `)),h(e,i)},$$slots:{default:!0}})})}h(e,i)}),h(e,r)},$$slots:{default:!0}})}),h(e,r)},$$slots:{default:!0}})}),h(e,t)},s=e=>{var t=U(),r=q(t),i=e=>{{let t=y(()=>V(B)?a:void 0);ru(e,{get hasPendingChanges(){return x()},get hasNeverSolved(){return C()},get isSolving(){return n.isSolving},get oncalculate(){return A()},get trailing(){return V(t)}})}},o=e=>{var t=uM(),n=N(t);a(n),O(t),h(e,t)};D(r,e=>{n.schema.instanceSolve===!1?e(i):V(B)&&e(o,1)}),h(e,t)},u=(e,t=E,r=E,i)=>{let a=o(()=>d(i?.(),!0));var c=fM(),l=N(c),u=e=>{Aj(e,{get schema(){return n.schema},get values(){return n.values},get onValueChange(){return n.onValueChange},get panelFilter(){return t()},get requestedTabId(){return r()}})};D(l,e=>{n.schema.layout.type===`tabbed`&&e(u)});var f=I(l,2),p=e=>{var t=dM(),n=N(t);s(n),O(t),h(e,t)};D(f,e=>{V(a)&&!V(de)&&e(p)}),O(c),h(e,c)},f=(e,t=E)=>{var n=pM(),r=N(n);s(r),O(n),z(()=>n.inert=t()),h(e,n)},p=Je(),m=y(()=>p.messages),g=P(n,`meshes`,19,()=>[]),_=P(n,`showSolvingIndicator`,3,!1),x=P(n,`hasPendingChanges`,3,!1),C=P(n,`hasNeverSolved`,3,!1),k=P(n,`isViewerFullscreen`,15,!1),A=P(n,`oncalculate`,3,()=>{}),j=P(n,`panelActions`,19,()=>[]),M=P(n,`showSaveButton`,3,!0),ee=P(n,`showLoadButton`,3,!0),R=P(n,`viewerConfig`,19,()=>({})),te=y(()=>({...Vj,...n.presetLabels})),ne=w(null),B=y(()=>M()||ee()||j().length>0),re=y(()=>x()||C()),ie=y(()=>n.schema.layout.type===`tabbed`?n.schema.layout.tabs.filter(e=>Ek(e,n.values)):[]);ce(()=>{if(n.schema.layout.type!==`tabbed`)return;let e={};n.schema.layout.tabs.forEach(t=>t.groups.forEach(t=>{let r=wk(t.items,n.values);t.items.forEach(t=>{if(t.type===`linebreak`)return;let{visible:i,disabled:a,defaultValue:o}=r[Ck(t)],s=n.schema.inputs.find(e=>e.id===t.paramId);s&&o!==void 0&&(!i||a)&&n.values[s.id]!==o&&(e[s.id]=o)})})),Object.keys(e).length>0&&Object.assign(n.values,e)});let ae=y(()=>V(ie).filter(e=>e.position!==`right`)),oe=y(()=>V(ie).filter(e=>e.position===`right`)),H=y(()=>V(ae).length>0),se=y(()=>V(oe).length>0),le=y(()=>n.showViewer||V(se)),ue=y(()=>!n.showViewer&&V(H)&&V(se)),de=w(!1),G=w(`closed`),K=[`closed`,`half`,`full`],fe=y(()=>V(ae).length===1?V(ae)[0].label:V(m).parametersTab);ce(()=>{let e=window.matchMedia(`(max-width: 639px)`);function t(){i(de,e.matches,!0)}return t(),e.addEventListener(`change`,t),()=>e.removeEventListener(`change`,t)});let pe=w(!1),me=w(!1),he=w(null),ge=w(null),_e=w(null),ve=w(null),ye=y(()=>`${V(H)?`L`:``}${n.showViewer?`V`:``}${V(se)?`R`:``}`);async function be(e){Object.assign(n.values,e),await n.onLoadValues?.(e)}let xe=0;function Se(e){let t=K.indexOf(V(G))+e;i(G,K[Math.max(0,Math.min(K.length-1,t))],!0)}function Ce(e){xe=e.touches[0].clientY}function we(e){let t=e.changedTouches[0].clientY-xe;Math.abs(t)>40&&(e.preventDefault(),Se(t<0?1:-1))}function Te(){i(G,V(G)===`full`?`closed`:K[K.indexOf(V(G))+1],!0)}var Ee=xM(),De=q(Ee);let Oe;var ke=N(De),Ae=t=>{var i=U(),a=q(i),o=t=>{var i=hM(),a=q(i);let o;var s=N(a);{let e=y(()=>V(G)===`full`),t=y(()=>({...R(),backgroundColor:n.schema?.viewerOptions?.backgroundColor,showSceneManager:!1}));RE(s,{get meshes(){return g()},get isSolving(){return n.isSolving},get drawerOpen(){return V(e)},get logoUrl(){return n.logoUrl},get onViewerReady(){return n.onViewerReady},get viewerConfig(){return V(t)},get isFullscreen(){return k()},set isFullscreen(e){k(e)}})}O(a);var c=I(a,2),l=N(c),d=I(N(l),2),p=J(d,!0),_=I(d,2);{let e=y(()=>V(G)===`full`?`rotate-180`:``);it(_,{size:16,get class(){return`ml-auto text-muted-foreground transition-transform duration-300 ${V(e)??``}`}})}O(l);var b=I(l,2),x=N(b),S=N(x),C=e=>{u(e,()=>V(se)?`left`:void 0,()=>V(_e),()=>!1)};D(S,e=>{V(H)&&e(C)});var w=I(S,2),E=e=>{var t=mM(),n=q(t),i=I(N(n),2),a=J(i,!0);r(2),O(n);var o=I(n,2);u(o,()=>`right`,()=>V(ve),()=>!1),z(()=>T(a,V(oe)[0]?.label??V(m).moreTab)),h(e,t)};D(w,e=>{V(se)&&e(E)}),O(x),O(b);var A=I(b,2);f(A,()=>V(G)===`closed`),O(c),z(()=>{o=v(a,1,`viewer-region svelte-1txzu1i`,null,o,{"viewer-region-raised":V(G)!==`closed`}),v(c,1,`drawer-container rounded-t-2xl z-40 border-t bg-background shadow-sheet drawer-${V(G)??``}`,`svelte-1txzu1i`),F(l,`aria-expanded`,V(G)!==`closed`),T(p,V(fe)),b.inert=V(G)===`closed`}),e(`click`,l,Te),e(`touchstart`,l,Ce,void 0,!0),e(`touchend`,l,we),h(t,i)},s=e=>{var t=gM(),n=N(t),i=N(n),a=e=>{u(e,()=>V(se)?`left`:void 0,()=>V(_e),()=>!1)};D(i,e=>{V(H)&&e(a)});var o=I(i,2),s=e=>{var t=mM(),n=q(t),i=I(N(n),2),a=J(i,!0);r(2),O(n);var o=I(n,2);u(o,()=>`right`,()=>V(ve),()=>!1),z(()=>T(a,V(oe)[0]?.label??V(m).moreTab)),h(e,t)};D(o,e=>{V(se)&&e(s)}),O(n);var c=I(n,2);f(c,()=>!1),O(t),h(e,t)};D(a,e=>{n.showViewer?e(o):e(s,-1)}),h(t,i)},je=e=>{var t=_M(),n=N(t),r=N(n);u(r,()=>V(se)?`right`:void 0,()=>V(se)?V(ve):V(_e)),O(n),O(t),h(e,t)},Me=e=>{var t=bM(),r=N(t),a=e=>{Pj(e,{side:`left`,get tabs(){return V(ae)},collapsedWidth:48,onExpand:()=>V(he)?.expand(),onTabClick:e=>{i(_e,e,!0),V(he)?.expand()}})};D(r,e=>{V(pe)&&V(le)&&V(H)&&e(a)});var o=I(r,2);c(o,()=>Ql,(e,t)=>{t(e,{direction:`horizontal`,get autoSaveId(){return`selva-layout-${V(ye)??``}`},class:`min-h-0 flex-1`,children:(e,t)=>{var r=yM(),a=q(r),o=e=>{var t=lM(),r=q(t);{let e=y(()=>V(ue)?50:n.showViewer&&V(se)?22:30);c(r,()=>Wl,(t,n)=>{L(n(t,{order:1,get defaultSize(){return V(e)},minSize:15,maxSize:45,collapsible:!0,collapsedSize:0,onCollapse:()=>i(pe,!0),onExpand:()=>i(pe,!1),class:`ml-1`,children:(e,t)=>{var n=vM(),r=N(n);u(r,()=>V(se)?`left`:void 0,()=>V(_e)),O(n),z(()=>v(n,1,`min-h-0 flex h-full flex-col ${k()||V(pe)?`hidden`:``}`)),h(e,n)},$$slots:{default:!0}}),e=>i(he,e,!0),()=>V(he))})}var a=I(r,2);c(a,()=>Xl,(e,t)=>{t(e,{withHandle:!0,line:!1,get"data-collapsed"(){return V(pe)},onclick:()=>{V(pe)&&V(he)?.expand()}})}),h(e,t)};D(a,e=>{V(H)&&e(o)});var s=I(a,2),l=e=>{var t=U(),r=q(t);c(r,()=>Wl,(e,t)=>{t(e,{order:2,minSize:20,class:`min-h-0 mx-1 flex flex-col`,children:(e,t)=>{{let t=y(()=>({...R(),backgroundColor:n.schema?.viewerOptions?.backgroundColor}));RE(e,{get meshes(){return g()},get isSolving(){return n.isSolving},get logoUrl(){return n.logoUrl},get onViewerReady(){return n.onViewerReady},get viewerConfig(){return V(t)},get isFullscreen(){return k()},set isFullscreen(e){k(e)}})}},$$slots:{default:!0}})}),h(e,t)};D(s,e=>{n.showViewer&&e(l)});var d=I(s,2),f=e=>{var t=lM(),n=q(t);c(n,()=>Xl,(e,t)=>{t(e,{withHandle:!0,line:!1,get"data-collapsed"(){return V(me)},onclick:()=>{V(me)&&V(ge)?.expand()}})});var r=I(n,2);{let e=y(()=>V(ue)?50:25);c(r,()=>Wl,(t,n)=>{L(n(t,{order:3,get defaultSize(){return V(e)},minSize:15,maxSize:45,collapsible:!0,collapsedSize:0,onCollapse:()=>i(me,!0),onExpand:()=>i(me,!1),class:`mr-1`,children:(e,t)=>{var n=vM(),r=N(n);u(r,()=>`right`,()=>V(ve),()=>!V(H)),O(n),z(()=>v(n,1,`min-h-0 flex h-full flex-col ${k()||V(me)?`hidden`:``}`)),h(e,n)},$$slots:{default:!0}}),e=>i(ge,e,!0),()=>V(ge))})}h(e,t)};D(d,e=>{V(se)&&e(f)}),h(e,r)},$$slots:{default:!0}})});var s=I(o,2),l=e=>{Pj(e,{side:`right`,get tabs(){return V(oe)},collapsedWidth:48,onExpand:()=>V(ge)?.expand(),onTabClick:e=>{i(ve,e,!0),V(ge)?.expand()}})};D(s,e=>{V(me)&&V(se)&&e(l)}),O(t),h(e,t)};D(ke,e=>{V(de)?e(Ae):!n.showViewer&&!V(ue)&&V(H)!==V(se)?e(je,1):e(Me,-1)}),VE(I(ke,2),{get show(){return _()}}),O(De);var Ne=I(De,2);L(rM(Ne,{get schema(){return n.schema},get currentValues(){return n.values},onLoadValues:be,get onSaveState(){return n.onSaveState},get onListStates(){return n.onListStates},get labels(){return n.presetLabels}}),e=>i(ne,e,!0),()=>V(ne)),z(()=>Oe=v(De,1,`min-h-0 sm:flex-row sm:py-(--page-py) flex flex-1 flex-col overflow-hidden ${V(pe)?`sm:pl-0`:`sm:pl-(--page-px)`} ${V(me)?`sm:pr-0`:`sm:pr-(--page-px)`}`,`svelte-1txzu1i`,Oe,{"fullscreen-layout":k(),relative:V(de),"mobile-root":V(de)})),h(t,Ee),b()}x([`click`,`touchstart`,`touchend`]);function CM(e){let{FAST_THRESHOLD_MS:t,SLOW_THRESHOLD_MS:n,HISTORY_SIZE:r,ANIMATION_DELAY:a}=iu.SOLVING_INDICATOR,o=w(!1),s=null,c=null,l=[];return ce(()=>{let u=e();return de(()=>{if(u){c=performance.now();let e=l.length===0?1/0:l.reduce((e,t)=>e+t,0)/l.length;if(l.length>0&&e<t)return;let r=e===1/0||e>=n?0:(e-t)/(n-t)*a;s||(r===0?i(o,!0):s=setTimeout(()=>{i(o,!0),s=null},r))}else c!==null&&(l.push(performance.now()-c),l.length>r&&l.shift(),c=null),s&&=(clearTimeout(s),null),i(o,!1)}),()=>{s&&clearTimeout(s)}}),{get show(){return V(o)}}}var wM=`[Selva:blocked]`,TM=/:\s*component\s+"([^"]*)"\s*\(([0-9a-fA-F-]{36}|\.\.\.)\)\s*$/;function EM(e){let t=e.includes(wM),n=!t&&e.includes(`[Selva:log]`),r=t||n||e.includes(`[Selva:msg]`),i=e,a,o=TM.exec(i);return o&&(a=o[1]||void 0,i=i.slice(0,o.index)),r&&(i=i.replace(wM,``).replace(`[Selva:msg]`,``).replace(`[Selva:log]`,``).replace(/^\s*\d+\.\s*Solution exception:\s*/,``)),{message:i.replace(/\s{2,}/g,` `).trim(),source:a,blocked:t,authored:r,logOnly:n}}function DM(e,t){let n=(e,t)=>{let{message:n,source:r,authored:i,logOnly:a}=EM(e),o=(i||r===`Message`)&&!a;return{level:t,message:n,...r?{source:r}:{},...o?{isGate:o}:{}}};return[...e.map(e=>n(e,`error`)),...t.map(e=>n(e,`warning`))]}var OM=new Set([`error`,`warning`,`remark`]);function kM(e){if(!e||typeof e!=`object`)return null;let t=e;if(!Array.isArray(t.diagnostics))return null;let n=new Set,r=[];for(let e of t.diagnostics){if(!e||typeof e!=`object`)continue;let t=e,i=typeof t.message==`string`?t.message.trim():``;if(!i)continue;let a=OM.has(t.level)?t.level:`remark`,o=typeof t.source==`string`&&t.source?t.source:void 0,s=t.isGate===!0,c=`${a}\u0000${i}\u0000${o??``}\u0000${s}`;n.has(c)||(n.add(c),r.push({level:a,message:i,...o?{source:o}:{},...s?{isGate:s}:{}}))}let i=t.aborted===!0;return{diagnostics:r,blocked:t.blocked===!0||i,aborted:i}}function AM(e,t){return{diagnostics:DM(e,t),blocked:e.some(e=>e.includes(wM)),aborted:!1}}function jM(e,t){let n=t.blocked||t.aborted,r=n?[]:e.meshes;return{outputs:n?{}:e.outputs,...r===void 0?{}:{meshes:r},errors:t.diagnostics.filter(e=>e.level===`error`).map(e=>e.message),warnings:t.diagnostics.filter(e=>e.level===`warning`).map(e=>e.message),diagnostics:t.diagnostics,blocked:t.blocked,aborted:t.aborted,...e.source===void 0?{}:{source:e.source}}}RO.DEFINITION_NOT_CACHED;var MM=new Map;function NM(e,t){MM.set(e,t)}NM(`Rhino.Geometry.Point3d`,(e,t)=>{let n=t;return!n||typeof n.X!=`number`?null:new e.Point([n.X,n.Y,n.Z])}),NM(`Rhino.Geometry.Line`,(e,t)=>{let n=t;return!n||!n.From||!n.To?null:new e.Line([n.From.X,n.From.Y,n.From.Z],[n.To.X,n.To.Y,n.To.Z])});function PM(e){if(MM.has(e))return MM.get(e);for(let[t,n]of MM)if(e.startsWith(t))return n}function FM(e){return!!(e&&typeof e==`object`&&typeof e.data==`string`)}function IM(e,t){return{__decodeError:!0,type:e,raw:t}}function LM(e,t,n){let r=PM(t),i=!1;if(r)try{let t=r(n,e);if(t!=null)return t}catch(e){VO().warn(`Failed to decode Rhino type ${t}:`,e),i=!0}try{if(FM(e))return n.CommonObject.decode(e)}catch(n){return VO().warn(`Failed to decode ${t} with CommonObject:`,n),IM(t,e)}return i?IM(t,e):e}function RM(e){let t=new WeakSet,n=e=>{if(!e||typeof e!=`object`||t.has(e))return;t.add(e);let r=e.delete;if(typeof r==`function`){let t=e.isDeleted;(typeof t!=`function`||!t.call(e))&&r.call(e);return}if(Array.isArray(e)){for(let t of e)n(t);return}let i=Object.getPrototypeOf(e);if(i===Object.prototype||i===null)for(let t of Object.values(e))n(t)};n(e)}var zM={STRING:`System.String`,INT:`System.Int32`,DOUBLE:`System.Double`,BOOL:`System.Boolean`},BM=[`WebDisplay`],VM=`FileData`;function HM(e){return BM.some(t=>e.includes(t))}function UM(e){if(typeof e!=`string`)return e;let t=e.trim();if(!(t.startsWith(`{`)||t.startsWith(`[`)||t.startsWith(`"`)))return e;try{let e=JSON.parse(t);if(typeof e==`string`)try{return JSON.parse(e)}catch{return e}return e}catch{return e}}function WM(e,t,n){switch(t){case zM.STRING:return typeof e==`string`?e.replace(/^"(.*)"$/,`$1`):e;case zM.INT:return Number.parseInt(e,10);case zM.DOUBLE:return Number.parseFloat(e);case zM.BOOL:return String(e).toLowerCase()===`true`;default:return n&&t.startsWith(`Rhino.Geometry.`)?LM(e,t,n):e}}var GM=new WeakMap;function KM(e){if(GM.has(e))return GM.get(e);let t=UM(e.data);return GM.set(e,t),t}function qM(e,t,n,r){if(typeof e.data!=`string`)return e.data;let i=n?KM(e):e.data;return n&&t.includes(VM)?YM(i)??i:WM(i,t,r)}var JM=e=>e===!0||typeof e==`string`&&e.trim().toLowerCase()===`true`;function YM(e){if(!e||typeof e!=`object`)return null;let t=HO(e,`fileName`),n=HO(e,`fileType`),r=HO(e,`subFolder`),i=HO(e,`isBase64Encoded`);if(typeof t!=`string`||typeof n!=`string`||typeof r!=`string`||!WO(e,`data`)||typeof i!=`boolean`&&typeof i!=`string`)return null;let a=HO(e,`metadata`);return{fileName:t,fileType:n,data:HO(e,`data`),isBase64Encoded:JM(i),subFolder:r,...a?{metadata:a}:{}}}function XM(e){let t=HO(e,`values`);return Array.isArray(t)?t:[]}function ZM(e){return typeof e.type==`string`?e.type:``}function QM(e,t){if(e&&typeof e==`object`){for(let n of Object.values(e))if(Array.isArray(n))for(let e of n)e&&typeof e==`object`&&t(e)}}function $M(e,t=!1,n={}){let{parseValues:r=!0,rhino:i,stringOnly:a=!1}=n,o={},s=new Set;for(let n of XM(e)){let e=HO(n,`paramName`);QM(HO(n,`innerTree`),n=>{let c=ZM(n);if(HM(c)||a&&c!==zM.STRING)return;let l=t?n.id:e;if(!l)return;let u=qM(n,c,r,i);l in o?s.has(l)?o[l].push(u):(o[l]=[o[l],u],s.add(l)):o[l]=u})}return{values:o,dispose:()=>RM(o)}}function eN(e){let t=[];for(let n of XM(e))QM(HO(n,`innerTree`),e=>{if(!ZM(e).includes(VM))return;let n=YM(KM(e));n&&t.push(n)});return t}function tN(e,t,n={}){let{parseValues:r=!0,rhino:i,stringOnly:a=!1}=n;for(let n of XM(e)){let e=HO(n,`innerTree`),o=!1;if(`byName`in t){if(HO(n,`paramName`)!==t.byName)continue;o=!0}let s=[];if(QM(e,e=>{if(`byId`in t){if(e.id!==t.byId)return;o=!0}let n=ZM(e);HM(n)||a&&n!==zM.STRING||s.push(qM(e,n,r,i))}),o)return s.length===0?void 0:s.length===1?s[0]:s}}var nN=class{response;debug;constructor(e,t=!1){this.response=e,this.debug=t}getValues(e=!1,t={}){return $M(this.response,e,t)}getValue(e,t){return tN(this.response,e,t)}getFileData(){return eN(this.response)}async getAndDownloadFiles(e,t){await ek(this.getFileData(),e,t)}},rN=/^\{(-?\d+(?:;-?\d+)*)?\}$/;function iN(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;let t=Object.entries(e);return t.length>0&&t.every(([e,t])=>rN.test(e)&&Array.isArray(t))}function aN(e,t,n){let r=Number(e.toFixed(t));return Math.abs(e-r)<n?r:e}function oN(e,t){if(!Number.isFinite(e)||e===0)return .1;let n=Math.abs(e);if(n>=1){let n=String(e).split(`.`)[1];if(n&&n.length>0){let e=Math.min(n.length,12),r=10**-e,i=Number(r.toFixed(e));return Math.abs(i-r)<t?i:r}return 1}let r=String(e),i=r.toLowerCase().match(/e(-?\d+)/);if(i){let e=Number(i[1]);if(e<0||r.toLowerCase().includes(`e-`)){let n=Math.abs(e),r=10**-n,i=Number(r.toFixed(n));return Math.abs(i-r)<t?i:r}return .1}let a=n.toFixed(12).replace(/0+$/,``),o=Math.min((a.split(`.`)[1]||``).length,12);if(o===0)return .1;let s=10**-o,c=Number(s.toFixed(o));return Math.abs(c-s)<t?c:s}function sN(e){return typeof e.stepSize==`number`&&Number.isFinite(e.stepSize)&&e.stepSize>0?e.stepSize:void 0}function cN(e,t,n){if(e==null)return e;if(Array.isArray(e)){let n=e.map(t).filter(e=>e!==null);return n.length>0?n:void 0}let r=t(e);return r===null?n?void 0:e:r}var lN=e=>{if(typeof e==`number`)return Number.isFinite(e)?e:null;if(typeof e==`string`){let t=e.trim();if(t===``||/^[+-]?0[xbo]/i.test(t))return null;let n=Number(t);return Number.isFinite(n)?n:null}return null},uN=e=>{if(typeof e==`boolean`)return e;if(typeof e==`string`){let t=e.trim().toLowerCase();if(t===`true`)return!0;if(t===`false`)return!1}return null},dN=e=>typeof e==`string`?e.length>=2&&e.startsWith(`"`)&&e.endsWith(`"`)?e.slice(1,-1):e.startsWith(`"`)?e.slice(1):e:null,fN=e=>{if(typeof e==`string`){let t=e.trim();return t.startsWith(`"`)&&t.endsWith(`"`)&&(t=t.slice(1,-1).trim()),t}return null};function pN(e){return t=>{if(typeof t==`object`&&t)return t;if(typeof t==`string`&&t.trim()!==``)try{let n=JSON.parse(t);return typeof n==`object`&&n?n:(VO().warn(`Parsed value for input ${e} is not an object`),null)}catch(n){return VO().warn(`Failed to parse object value "${t}" for input ${e}`,n),null}return null}}function mN(e,t=1e-8){let n=e.paramType===`Integer`,r=sN(e);if(iN(e.default))return{default:e.default,stepSize:r??(n?1:.1)};if(typeof e.default==`string`&&e.default.trim()!==``&&lN(e.default)===null)throw new zO(`Invalid numeric default "${e.default}" for input "${e.name||`unknown`}"`,RO.VALIDATION_ERROR,{context:{inputName:e.name,default:e.default}});let i=cN(e.default,lN,!0);if(n)return Array.isArray(i)?i=i.map(e=>typeof e==`number`?Math.round(e):e):typeof i==`number`&&(i=Math.round(i)),{default:i,stepSize:r??1};let a=Array.isArray(i)?i[0]:i,o;typeof a==`number`&&Number.isFinite(a)&&a!==0?o=a:typeof e.minimum==`number`&&Number.isFinite(e.minimum)&&e.minimum!==0?o=e.minimum:typeof e.maximum==`number`&&Number.isFinite(e.maximum)&&e.maximum!==0&&(o=e.maximum);let s=r??(o===void 0?.1:oN(o,t)),c=0,l=String(s),u=l.toLowerCase().match(/e(-?\d+)/);if(c=u?Math.abs(Number(u[1])):l.split(`.`)[1]?.length??0,c===0&&typeof a==`number`&&a!==0&&Math.abs(a)<1){let e=Math.ceil(-Math.log10(Math.abs(a)));Number.isFinite(e)&&e>0&&(c=e)}return c=Math.min(Math.max(c,0),12),Array.isArray(i)?i=i.map(e=>typeof e==`number`?aN(e,c,t):e):typeof i==`number`&&(i=aN(i,c,t)),{default:i,stepSize:s}}var hN=new Map([{types:[`Number`,`Integer`],parse(e,t){let{default:n,stepSize:r}=mN(e);return{...t,paramType:e.paramType,minimum:e.minimum,maximum:e.maximum,atLeast:e.atLeast,atMost:e.atMost,stepSize:r,default:n}},fallback(e,t){let n=(e.atMost??1)>1,r=typeof e.minimum==`number`&&Number.isFinite(e.minimum)&&e.minimum>0?e.minimum:0;return{...t,paramType:e.paramType,minimum:e.minimum,maximum:e.maximum,atLeast:e.atLeast,atMost:e.atMost,stepSize:sN(e)??(e.paramType===`Integer`?1:.1),default:n?[r]:r}}},{types:[`Boolean`],parse(e,t){if(iN(e.default))return{...t,paramType:`Boolean`,default:e.default};let n=cN(e.default,uN,!1);if(n!=null&&typeof n!=`boolean`&&!Array.isArray(n))throw new zO(`Invalid boolean default "${String(n)}" for input "${e.name||`unknown`}"`,RO.VALIDATION_ERROR,{context:{inputName:e.name,default:e.default}});return{...t,paramType:`Boolean`,default:n}},fallback(e,t){let n=(e.atMost??1)>1;return{...t,paramType:`Boolean`,default:n?[!1]:!1}}},{types:[`Text`],parse(e,t){let n=cN(e.default,dN,!1);return{...t,paramType:`Text`,default:n}},fallback(e,t){let n=(e.atMost??1)>1;return{...t,paramType:`Text`,default:n?[``]:``}}},{types:[`ValueList`],parse(e,t,n){if(!e.values||typeof e.values!=`object`||Object.keys(e.values).length===0)throw zO.missingValues(e.nickname||`unnamed`,`ValueList`);let r=e.default;if(e.default!==void 0&&e.default!==null){if(typeof e.default==`object`)throw new zO(`ValueList input "${e.nickname||`unnamed`}" default is not a string-able value`,RO.VALIDATION_ERROR,{context:{inputName:e.name,default:e.default}});let t=String(e.default).toLowerCase(),i=Object.keys(e.values).find(e=>e.toLowerCase()===t);if(i!==void 0)r=i;else{let t=`ValueList input "${e.nickname||`unnamed`}" default value "${e.default}" is not in available values`;VO().warn(t),n?.({code:RO.VALIDATION_ERROR,message:t})}}return{...t,paramType:`ValueList`,values:e.values,default:r}},fallback(e,t){return{...t,paramType:`ValueList`,values:e.values&&typeof e.values==`object`?e.values:{},default:void 0}}},{types:[`Geometry`],parse(e,t){let n=cN(e.default,pN(e.nickname||`unnamed`),!0);return{...t,paramType:`Geometry`,default:n}},fallback(e,t){let n=(e.atMost??1)>1;return{...t,paramType:`Geometry`,default:n?[null]:null}}},{types:[`File`],parse(e,t){let n=cN(e.default,pN(e.nickname||`unnamed`),!0);return{...t,paramType:`File`,acceptedFormats:e.acceptedFormats,default:n}},fallback(e,t){let n=(e.atMost??1)>1;return{...t,paramType:`File`,default:n?[null]:null}}},{types:[`Color`],parse(e,t){let n=cN(e.default,fN,!1);return{...t,paramType:`Color`,default:n}},fallback(e,t){let n=(e.atMost??1)>1;return{...t,paramType:`Color`,default:n?[`0, 0, 0`]:`0, 0, 0`}}}].flatMap(e=>e.types.map(t=>[t,e])));new Map([...hN.keys()].map(e=>[e.toLowerCase(),e]));function gN(e,t){return`external:${e}:${t}`}function _N(e){let{scopeKey:t,inputId:n}=e;if(!t||!n||typeof sessionStorage>`u`)return;let r=sessionStorage.getItem(gN(t,n));if(r!==null)try{return JSON.parse(r)}catch{return}}function vN(e){return Rk(e).filter(e=>e.source?.kind===`client`).map(e=>({paramId:e.paramId,displayName:e.displayName??e.paramId}))}var yN=Object.freeze({solveId:null,running:!1,diagnostics:[],progress:new Map,ended:null,other:[],lastSeq:0});function bN(e,t){let n=t.solveId===e.solveId?e:{...yN,solveId:t.solveId,running:!0};if(t.seq<=n.lastSeq)return e;let r={...n,lastSeq:t.seq},i=t.payload??{};switch(t.type){case`solveStarted`:return{...r,running:!0};case`solveEnded`:return{...r,running:!1,ended:{kind:typeof i.kind==`string`?i.kind:`ok`}};case`diagnostic`:{let[e]=kM({diagnostics:[i]})?.diagnostics??[];return e?{...r,diagnostics:[...r.diagnostics,e]}:r}case`progress`:{let e=typeof i.source==`string`?i.source:``,t=new Map(r.progress),n=xN(i),a=r.progress.get(e)?.fraction;return a!==void 0&&n.fraction!==void 0&&n.fraction<a&&(n.fraction=a),t.set(e,n),{...r,progress:t}}default:return{...r,other:[...r.other,t]}}}function xN(e){let t=e=>typeof e==`number`&&Number.isFinite(e)?e:void 0,n=t(e.fraction),r=t(e.done),i=t(e.total),a=t(e.nextFraction),o=t(e.stepMs),s=e=>Math.min(1,Math.max(0,e));return{...typeof e.source==`string`?{source:e.source}:{},...n===void 0?{}:{fraction:s(n)},...r===void 0?{}:{done:r},...i===void 0?{}:{total:i},...typeof e.label==`string`?{label:e.label}:{},...a===void 0?{}:{nextFraction:s(a)},...o!==void 0&&o>0?{stepMs:o}:{}}}function SN(e,t,n){let r=new Set(vN(e).map(e=>e.paramId)),i={};for(let a of e.inputs){if(r.has(a.id)){let e=n({scopeKey:t,inputId:a.id});e!==void 0&&(i[a.id]=e);continue}i[a.id]=a.default??zk(a.paramType)}for(let t of e.outputs)i[t.id]=null;return i}function CN(e){let t=e===!1;return{hasPendingChanges:t,hasNeverSolved:t}}function wN(e,t,n,r){return e.values[t]=n,r===!1?(e.pendingValues[t]=n,e.hasPendingChanges=!0,{state:e,shouldSolve:!1}):{state:e,shouldSolve:!0}}function TN(e,t){if(!e?.inputs)return t;let n={};for(let r of e.inputs)r.id in t&&(n[r.id]=t[r.id]);return n}function EN(e,t){return e.error=``,e.computeErrors=t.errors??[],e.computeWarnings=t.warnings??[],e.diagnostics=t.diagnostics??[],e.blocked=t.blocked??!1,e.blocked?(e.awaitingAck=!1,e.heldResult=null,ON(e,t)):AN(e.diagnostics)?(e.awaitingAck=!0,e.heldResult=t,e.pendingValues={},e.hasPendingChanges=!1,e):(e.awaitingAck=!1,e.heldResult=null,ON(e,t))}function DN(e){let t={};for(let n of e?.outputs??[])t[n.id]=null;return t}function ON(e,t){e.meshes=t.meshes??[];let{meshes:n,...r}=t;return e.lastResult=r,Object.assign(e.values,t.outputs),e.pendingValues={},e.hasPendingChanges=!1,e.hasNeverSolved=!1,e}function kN(e,t){return t?`solving`:e.awaitingAck?`review`:e.blocked?`blocked`:`idle`}function AN(e){return(e??[]).some(e=>e.isGate&&e.level!==`remark`)}function jN(e){let t=e.schema,n=CN(t?.instanceSolve),r={values:SN(t,e.scopeKey,_N),error:``,computeErrors:[],computeWarnings:[],diagnostics:[],blocked:!1,awaitingAck:!1,heldResult:null,meshes:[],pendingValues:{},hasPendingChanges:n.hasPendingChanges,hasNeverSolved:n.hasNeverSolved,lastResult:null},i=new Set,a=()=>i.forEach(e=>e()),o=new Set,s=[],c={status:`aborted`,diagnostics:[]};function l(){return new Promise(e=>s.push(e))}function u(e){let t=s;s=[],t.forEach(t=>t(e)),o.forEach(t=>t(e))}function d(){let e=s;s=[],e.forEach(e=>e(c))}function f(e){let t=r.diagnostics;if(e.aborted)return u({status:`aborted`,diagnostics:t});if(e.blocked)return u({status:`blocked`,diagnostics:t});u({status:`applied`,result:r.lastResult,diagnostics:t})}let p=yN,m=e.driver.onEvent?.(e=>{let t=bN(p,e);t!==p&&(p=t,a())});function h(){let e=l();return g(),e}function g(){e.driver.solve({...TN(t,r.values)}),a()}return{get values(){return r.values},get error(){return r.error},get computeErrors(){return r.computeErrors},get computeWarnings(){return r.computeWarnings},get diagnostics(){return r.diagnostics},get blocked(){return r.blocked},get awaitingAck(){return r.awaitingAck},acknowledge(){if(!r.awaitingAck)return;let e=r.heldResult;r.awaitingAck=!1,r.heldResult=null,e&&ON(r,e),a(),e&&f(e)},discard(){r.awaitingAck&&(r.awaitingAck=!1,r.heldResult=null,a(),u({status:`discarded`,diagnostics:r.diagnostics}))},get live(){return p},get phase(){return kN(r,e.driver.isSolving)},abort(){e.driver.cancel()},get meshes(){return r.meshes},get lastResult(){return r.lastResult},get hasPendingChanges(){return r.hasPendingChanges},get hasNeverSolved(){return r.hasNeverSolved},get isSolving(){return e.driver.isSolving},setValue(e,n,i=!1){let{shouldSolve:o}=wN(r,e,n,t?.instanceSolve);o||i?(i&&!o&&(r.pendingValues={},r.hasPendingChanges=!1),g()):a()},solve:h,ensureSolved(){return e.driver.isSolving||e.driver.hasQueued||r.awaitingAck?l():r.hasPendingChanges||r.hasNeverSolved||r.error||!r.lastResult?h():r.blocked?Promise.resolve({status:`blocked`,diagnostics:r.diagnostics}):Promise.resolve({status:`applied`,result:r.lastResult,diagnostics:r.diagnostics})},onSettled(e){return o.add(e),()=>o.delete(e)},loadValues(e){Object.assign(r.values,e),t?.instanceSolve===!1?(r.hasPendingChanges=!0,a()):g()},rebuild(n,i){d(),t=n,e.driver.clearCache?.(),r.meshes=[],r.lastResult=null,r.error=``,r.computeErrors=[],r.computeWarnings=[],r.diagnostics=[],r.blocked=!1,r.awaitingAck=!1,r.heldResult=null,r.pendingValues={},r.values=SN(n,i,_N);let o=CN(n?.instanceSolve);r.hasPendingChanges=o.hasPendingChanges,r.hasNeverSolved=o.hasNeverSolved,n&&Object.keys(r.values).length>0&&n.instanceSolve!==!1?g():a()},report(n){EN(r,n.blocked||n.aborted?{...n,outputs:DN(t),meshes:[]}:n),a(),!(r.awaitingAck||e.driver.hasQueued)&&f(n)},reportError(t){r.error=t,a(),e.driver.hasQueued||u({status:`failed`,error:t})},reportAborted(){a(),e.driver.hasQueued||u(c)},subscribe(e){return i.add(e),()=>i.delete(e)},notify:a,dispose(){m?.(),i.clear(),o.clear(),d()}}}function MN(e,t){let{runDeadlineMs:n,onChange:r}=t,i=!1,a=null,o=null;function s(e){i!==e&&(i=e,r?.())}function c(){o?.abort(),o=null}async function l(t){c(),o=new AbortController;let{signal:r}=o,i=setTimeout(()=>{console.warn(`[Solve/throttle] run exceeded ${n}ms — aborting`),o?.abort(new DOMException(`Run deadline exceeded`,`TimeoutError`))},n);s(!0);try{await e(t,r)}catch(e){(!(e instanceof Error)||e.name!==`AbortError`&&e.name!==`TimeoutError`)&&console.error(`[Solve/throttle] unhandled error in run:`,e)}finally{if(clearTimeout(i),s(!1),o=null,a!==null){let e=a;a=null,l(e)}}}function u(e){i?(a!==null&&console.debug(`[Solve/throttle] superseded pending run (latest-wins)`),a=e):l(e)}function d(){a=null,c()}return{trigger:u,get isRunning(){return i},get hasPending(){return a!==null},cancel:d}}function NN(e){return PN(e)}function PN(e){if(typeof e!=`object`||!e)return JSON.stringify(e)??`null`;if(Array.isArray(e))return`[${e.map(PN).join(`,`)}]`;let t=e;return`{${Object.keys(t).sort().map(e=>`${JSON.stringify(e)}:${PN(t[e])}`).join(`,`)}}`}function FN(e={}){let{max:t=16,meshPolicy:n}=e,r=new Map;function i(e){e.meshes?.length&&n?.release(e.meshes)}function a(e){return!n||!e.meshes?.length?e:{...e,meshes:n.clone(e.meshes)}}function o(e){let t=r.get(e);t!==void 0&&(r.delete(e),i(t))}return{get(e){let n=NN(e),i=r.get(n);if(i!==void 0)return r.delete(n),r.set(n,i),console.info(`[Solve/memo] HIT — served from client memo (${r.size}/${t})`),a(i)},set(e,n){let i=NN(e);for(o(i),r.set(i,a(n));r.size>t;){let e=r.keys().next().value;if(e===void 0)break;o(e),console.info(`[Solve/memo] evicted LRU entry (cap ${t})`)}},clear(){r.size>0&&console.info(`[Solve/memo] cleared ${r.size} entries (definition changed)`),r.forEach(i),r.clear()}}}function IN(e,t,n){let{meshPolicy:r,solveDeadlineMs:i,onChange:a,events:o}=n,s=FN({meshPolicy:r});function c(e){e.reason?.name===`TimeoutError`?t().reportError(`The solve took longer than ${Math.round(i/1e3)} s and was stopped.`):t().reportAborted()}let l=MN(async(n,r)=>{let i=s.get(n);if(i!==void 0){if(r.aborted)return c(r);t().report(i);return}try{let i=await e(n,r);if(r.aborted)return console.debug(`[Solve/driver] solve completed after abort — result discarded`),c(r);let a={...i,values:n};s.set(n,a),t().report(a)}catch(e){if(r.aborted)return console.debug(`[Solve/driver] solve aborted (cancelled or timed out)`),c(r);console.warn(`[Solve/driver] solve failed:`,e),t().reportError(e instanceof Error?e.message:String(e))}},{runDeadlineMs:i,onChange:a});return{solve(e){l.trigger(e)},cancel(){l.cancel(),o?.cancelCurrent?.()},get isSolving(){return l.isRunning},get hasQueued(){return l.hasPending},clearCache(){s.clear()},...o?{onEvent:e=>o.subscribe(e)}:{}}}function LN(){return typeof crypto<`u`&&`randomUUID`in crypto?crypto.randomUUID().replace(/-/g,``):Array.from({length:32},()=>Math.floor(Math.random()*16).toString(16)).join(``)}function RN(e){let t=LN(),n=new Set,r=e.fetch??((...e)=>fetch(...e)),i=null,a=null;function o(){if(i||typeof EventSource>`u`)return;let r=`${e.endpoint}${e.endpoint.includes(`?`)?`&`:`?`}streamId=${t}`;i=new EventSource(r),i.addEventListener(`solve`,e=>{let t;try{t=JSON.parse(e.data)}catch{return}t.type===`solveStarted`?a=t.solveId:t.type===`solveEnded`&&a===t.solveId&&(a=null);for(let e of n)e(t)})}return o(),{streamId:t,get currentSolveId(){return a},subscribe(e){return n.add(e),o(),()=>{n.delete(e)}},cancelCurrent(){let t=a;t&&r(e.cancelEndpoint(t),{method:`POST`,keepalive:!0}).catch(()=>{})},close(){i?.close(),i=null,n.clear(),a=null}}}function zN(e){let t={};if(!e)return t;for(let n of e.split(`,`)){let[e,...r]=n.split(`;`).map(e=>e.trim()),i=r.find(e=>e.startsWith(`dur=`));if(!e||!i)continue;let a=Number(i.slice(4));Number.isFinite(a)&&(t[e]=a)}return t}var BN=e=>{throw Error(`Rate limit reached. Try again in ${Math.ceil(e)}s.`)},VN=()=>{throw Error(`Your session has expired. Sign in again in a new tab, then re-run — your inputs are preserved.`)};function HN(e){let t=e.debug??!1,n=(...e)=>{t&&console.info(...e)},r=0;return async(i,a)=>{let o=r-Date.now();if(o>0)throw Error(`Rate limit reached. Try again in ${Math.ceil(o/1e3)}s.`);let s=performance.now(),c=e.inputs(),l=e.outputs(),u=e.channel?.(),d=e.versionId?.(),f=e.streamId?.(),p=JSON.stringify({inputs:c,values:i,definitionUrl:e.definitionUrl(),...d?{versionId:d}:u===`draft`?{channel:`draft`}:{},...f?{streamId:f}:{}}),m;try{m=await fetch(e.endpoint,{method:`POST`,headers:{"Content-Type":`application/json`},body:p,signal:a})}catch(e){if(a.aborted)return n(`[Compute] solve aborted during fetch — empty result discarded`),{outputs:{}};throw Error(`Request blocked — your session may have expired. Reload the page to sign in again.`,{cause:e})}if(a.aborted)return n(`[Compute] solve aborted after headers — empty result discarded`),{outputs:{}};let h=m.redirected&&new URL(m.url).pathname===`/login`;if((m.status===401||h)&&(e.onSessionExpired??VN)(),!m.ok){let t=await m.text().catch(()=>``),n={};try{n=JSON.parse(t)}catch{t&&console.warn(`[Compute] non-JSON error body (HTTP ${m.status}):`,t.slice(0,300))}if(m.status===503||m.status===504)throw Error(n.message||`Compute server is offline or unreachable. Please try again later.`);if(m.status===429){let t=Number(m.headers.get(`Retry-After`))||Number(n.retryAfter)||5;r=Date.now()+t*1e3,(e.onRateLimited??BN)(t)}throw Error(n.message||`Compute error (HTTP ${m.status})`)}let g=performance.now()-s,_=performance.now(),v=await m.text();if(a.aborted)return n(`[Compute] solve aborted mid-download — empty result discarded`),{outputs:{}};let y=performance.now()-_,b=v.length,x;try{x=JSON.parse(v)}catch(e){throw Error(`Received an invalid response from the server. Reload the page and try again.`,{cause:e})}let S=new nN(x,!1),C=kM(x.selva?.outcome)??AM(x.errors??[],x.warnings??[]),w=C.blocked||C.aborted,T=e.meshes&&!w?await e.meshes.extract(S.response,{debug:t}):[],E={};for(let e of w?[]:l){let t=S.getValue({byId:e.id},{parseValues:!0});E[e.id]=t??(e.nickname?S.getValue({byName:e.nickname},{parseValues:!0}):void 0)}if(t){let e=JSON.stringify(i).length,t=zN(m.headers.get(`Server-Timing`)),r=t.total??0,a=Math.max(0,g-r),o=b/1048576,s=o>=1?`${o.toFixed(2)} MB`:`${(b/1024).toFixed(0)} KB`,c=y>0?(o/(y/1e3)).toFixed(1):`∞`,l=performance.memory?.usedJSHeapSize,u=l===void 0?``:` | heap=${(l/1048576).toFixed(0)} MB`;if(n(`[Compute] req=${(p.length/1024).toFixed(0)}KB (values ${(e/1024).toFixed(0)}KB) | ttfb=${g.toFixed(0)}ms (network≈${a.toFixed(0)} + server ${r.toFixed(0)}) | download=${y.toFixed(0)}ms (${s} @ ${c} MB/s)${u}`),t.selva_cache!==void 0){let e=t.selva_cache?`HIT — served without calling compute`:`miss — solved on Rhino.Compute`;n(`[Compute] └─ cache: ${e}`)}}return jM({outputs:E,meshes:T,source:x},C)}}var UN=m(`<span class="text-xs shrink-0 text-muted-foreground tabular-nums"> </span>`),WN=m(`<span class="shrink-0 tabular-nums"> </span>`),GN=m(`<div class="mb-1 gap-2 text-xs flex justify-between text-muted-foreground"><span class="truncate"> </span> <!></div>`),KN=m(`<div class="h-full w-(--bar-width) rounded-full bg-primary transition-all duration-(--bar-ms) ease-linear"></div>`),qN=m(`<div class="animate-pulse h-full w-1/3 rounded-full bg-primary/60"></div>`),JN=m(`<div class="mt-2" data-testid="solve-progress"><!> <div class="h-1 overflow-hidden rounded-full bg-muted" role="progressbar"><!></div></div>`),YN=m(`<div><div><div class="gap-2 flex items-center"><!> <span class="min-w-0 text-sm flex-1 truncate"> </span> <!> <!></div> <!></div></div>`),XN=m(`<!> `,1),ZN=m(`<div class="mb-2"><div class="gap-2 text-sm font-medium flex items-center"><!></div> <p class="text-xs text-muted-foreground"> </p></div>`),QN=m(`<div><!></div>`),$N=m(`<!> <!>`,1),eP=m(`<div class="mt-3 gap-2 flex justify-end"><!></div>`),tP=m(`<div data-testid="solve-messages"><!> <!> <!></div>`),nP=m(`<div class="sr-only" role="status" aria-live="polite"> </div> <!>`,1);function rP(e,t){l(t,!0);let n=P(t,`diagnostics`,19,()=>[]),o=Je(),s=y(()=>o.messages),c=y(()=>[...t.live.progress.values()]),u=w({}),d=new Map,f={};ce(()=>{let e={},t={},n=de(()=>V(u)),r=new Map;for(let i of V(c)){if(i.fraction===void 0)continue;let a=i.source??``;if(r.set(a,i),d.get(a)===i&&n[a]){e[a]=n[a],f[a]&&n[a]!==f[a]&&(t[a]=f[a]);continue}e[a]={width:i.fraction,ms:150},i.nextFraction!==void 0&&i.stepMs!==void 0&&(t[a]={width:i.nextFraction,ms:i.stepMs})}if(d=r,f=t,i(u,e),Object.keys(t).length===0)return;let a=requestAnimationFrame(()=>{a=requestAnimationFrame(()=>i(u,{...e,...t}))});return()=>cancelAnimationFrame(a)});let p=y(()=>n().filter(e=>e.isGate)),m=y(()=>V(p).filter(e=>e.level!==`remark`)),g=y(()=>V(p).filter(e=>e.level===`remark`)),_=w(null),x=y(()=>t.phase===`solving`?`live`:t.phase===`blocked`&&V(_)===n()?`idle`:t.phase),C=w(!1),E=null;ce(()=>{if(V(x)===`live`){i(C,!1);return}if(V(g).length===0||E===n()||(E=n(),V(x)!==`idle`))return;i(C,!0);let e=setTimeout(()=>i(C,!1),6e3);return()=>clearTimeout(e)});let k=w(!1),A=w(!1),j=0;ce(()=>{if(V(x)===`live`){i(A,!1);let e=setTimeout(()=>{i(k,!0),j=performance.now()},300);return()=>clearTimeout(e)}if(!de(()=>V(k))||V(x)!==`idle`){i(k,!1),i(A,!1);return}i(A,!0);let e=Math.max(200,400-(performance.now()-j)),t=setTimeout(()=>{i(k,!1),i(A,!1)},e);return()=>clearTimeout(t)});let L=y(()=>V(A)?`live`:V(x)),ee=y(()=>V(L)===`live`?[...t.live.diagnostics]:V(L)===`idle`?V(g):V(m)),te=y(()=>V(ee).map(e=>({severity:e.level===`remark`?`note`:e.level,message:e.message,source:e.source}))),ne=w(void 0),re=0;ce(()=>{let e=V(c)[0],t=de(()=>V(ne));if(e?.label===t?.label&&e?.done===t?.done){i(ne,e);return}let n=()=>{i(ne,e),re=performance.now()},r=200-(performance.now()-re);if(!t||r<=0){n();return}let a=setTimeout(n,r);return()=>clearTimeout(a)});let ie=y(()=>V(L)===`review`||V(L)===`blocked`?!0:V(L)===`live`?V(k)&&(V(ee).length>0||V(c).length>0):V(ee).length>0&&V(C)),ae=y(()=>V(ie)?V(L)===`live`?(V(ne)??V(c)[0])?.label??V(s).solveSolving:V(L)===`idle`?V(ee).map(e=>e.message).join(` `):``:``);function oe(){i(_,n())}function H(e){e.key===`Escape`&&(V(x)===`review`?t.ondiscard():V(x)===`blocked`&&oe())}var se=nP();R(`keydown`,B,H);var U=q(se),le=J(U,!0),ue=I(U,2),W=e=>{var n=tP(),i=N(n),o=e=>{let n=y(()=>V(ne)??V(c)[0]);var i=YN(),o=N(i),l=N(o),d=N(l);sr(d,{class:`h-4 w-4 animate-spin shrink-0 text-muted-foreground`});var f=I(d,2),p=J(f,!0),m=I(f,2),g=e=>{var t=UN(),r=J(t);z(()=>T(r,`${V(n).done??``} / ${V(n).total??``}`)),h(e,t)};D(m,e=>{V(n)?.done!==void 0&&V(n)?.total!==void 0&&e(g)});var _=I(m,2);We(_,{variant:`secondary`,size:`xs`,class:`-my-1 shrink-0`,get disabled(){return V(A)},get onclick(){return t.onabort},children:(e,t)=>{r();var n=M();z(()=>T(n,V(s).solveMessagesAbort)),h(e,n)},$$slots:{default:!0}}),O(l);var v=I(l,2);S(v,19,()=>V(c),e=>e.source??``,(e,t,n)=>{var r=JN(),i=N(r),o=e=>{var n=GN(),r=N(n),i=J(r,!0),a=I(r,2),o=e=>{var n=WN(),r=J(n);z(()=>T(r,`${V(t).done??``} / ${V(t).total??``}`)),h(e,n)};D(a,e=>{V(t).done!==void 0&&V(t).total!==void 0&&e(o)}),O(n),z(()=>T(i,V(t).label??V(t).source??``)),h(e,n)};D(i,e=>{V(n)>0&&e(o)});var c=I(i,2);F(c,`aria-valuemin`,0),F(c,`aria-valuemax`,100);var l=N(c),d=e=>{let n=y(()=>V(A)?{width:1,ms:200}:V(u)[V(t).source??``]??{width:V(t).fraction,ms:150});var r=KN();let i;z(()=>i=a(r,``,i,{"--bar-width":`${V(n).width*100}%`,"--bar-ms":`${V(n).ms??``}ms`})),h(e,r)},f=e=>{var t=qN();h(e,t)};D(l,e=>{V(t).fraction===void 0?e(f,-1):e(d)}),O(c),O(r),z(e=>{F(c,`aria-label`,V(t).label??V(t).source??V(s).solveSolving),F(c,`aria-valuenow`,e)},[()=>V(t).fraction===void 0?void 0:Math.round(V(t).fraction*100)]),h(e,r)}),O(o),O(i),z(()=>T(p,V(n)?.label??V(s).solveSolving)),h(e,i)},l=e=>{var t=ZN(),n=N(t),r=N(n),i=e=>{var t=XN(),n=q(t);Be(n,{severity:`error`});var r=I(n);z(()=>T(r,` ${V(s).solveBlockedTitle??``}`)),h(e,t)},a=e=>{var t=XN(),n=q(t);Be(n,{severity:`warning`});var r=I(n);z(()=>T(r,` ${V(s).solveMessagesTitle??``}`)),h(e,t)};D(r,e=>{V(L)===`blocked`?e(i):e(a,-1)}),O(n);var o=I(n,2),c=J(o,!0);O(t),z(()=>T(c,V(L)===`blocked`?V(s).solveBlocked:V(s).solveMessagesDescription)),h(e,t)};D(i,e=>{V(L)===`live`?e(o):(V(L)===`review`||V(L)===`blocked`)&&e(l,1)});var d=I(i,2),f=e=>{var t=QN(),n=N(t);Le(n,{get issues(){return V(te)},variant:`plain`}),O(t),z(()=>v(t,1,`max-h-40 overflow-y-auto ${V(L)===`live`?`mt-3 pt-3 border-t`:``}`)),h(e,t)};D(d,e=>{V(ee).length>0&&e(f)});var p=I(d,2),m=e=>{var n=eP(),i=N(n),a=e=>{We(e,{variant:`outline`,size:`sm`,onclick:oe,children:(e,t)=>{r();var n=M();z(()=>T(n,V(s).solveMessagesDismiss)),h(e,n)},$$slots:{default:!0}})},o=e=>{var n=$N(),i=q(n);We(i,{variant:`outline`,size:`sm`,get onclick(){return t.ondiscard},children:(e,t)=>{r();var n=M();z(()=>T(n,V(s).solveMessagesDiscard)),h(e,n)},$$slots:{default:!0}});var a=I(i,2);We(a,{size:`sm`,get onclick(){return t.onconfirm},children:(e,t)=>{r();var n=M();z(()=>T(n,V(s).solveMessagesConfirm)),h(e,n)},$$slots:{default:!0}}),h(e,n)};D(i,e=>{V(L)===`blocked`?e(a):e(o,-1)}),O(n),h(e,n)};D(p,e=>{(V(L)===`review`||V(L)===`blocked`)&&e(m)}),O(n),z(()=>{v(n,1,`bottom-4 p-3 shadow-lg w-lg fixed left-1/2 z-50 max-w-screen-inset -translate-x-1/2 rounded-lg border bg-background ${V(L)===`blocked`?`border-destructive/50`:``}`),F(n,`role`,V(L)===`review`||V(L)===`blocked`?`alert`:void 0),F(n,`data-view`,V(L))}),h(e,n)};D(ue,e=>{V(ie)&&e(W)}),z(()=>T(le,V(ae))),h(e,se),b()}var iP={},aP=(function(e,t,n,r,i){var a=new Worker(iP[t]||(iP[t]=URL.createObjectURL(new Blob([e+`;addEventListener("error",function(e){e=e.error;postMessage({$e$:[e.message,e.code,e.stack]})})`],{type:`text/javascript`}))));return a.onmessage=function(e){var t=e.data,n=t.$e$;if(n){var r=Error(n[0]);r.code=n[1],r.stack=n[2],i(r,null)}else i(null,t)},a.postMessage(n,r),a}),oP=Uint8Array,sP=Uint16Array,cP=Int32Array,lP=new oP([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),uP=new oP([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),dP=new oP([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),fP=function(e,t){for(var n=new sP(31),r=0;r<31;++r)n[r]=t+=1<<e[r-1];for(var i=new cP(n[30]),r=1;r<30;++r)for(var a=n[r];a<n[r+1];++a)i[a]=a-n[r]<<5|r;return{b:n,r:i}},pP=fP(lP,2),mP=pP.b,hP=pP.r;mP[28]=258,hP[258]=28;for(var gP=fP(uP,0),_P=gP.b,vP=gP.r,yP=new sP(32768),bP=0;bP<32768;++bP){var xP=(bP&43690)>>1|(bP&21845)<<1;xP=(xP&52428)>>2|(xP&13107)<<2,xP=(xP&61680)>>4|(xP&3855)<<4,yP[bP]=((xP&65280)>>8|(xP&255)<<8)>>1}for(var SP=(function(e,t,n){for(var r=e.length,i=0,a=new sP(t);i<r;++i)e[i]&&++a[e[i]-1];var o=new sP(t);for(i=1;i<t;++i)o[i]=o[i-1]+a[i-1]<<1;var s;if(n){s=new sP(1<<t);var c=15-t;for(i=0;i<r;++i)if(e[i])for(var l=i<<4|e[i],u=t-e[i],d=o[e[i]-1]++<<u,f=d|(1<<u)-1;d<=f;++d)s[yP[d]>>c]=l}else for(s=new sP(r),i=0;i<r;++i)e[i]&&(s[i]=yP[o[e[i]-1]++]>>15-e[i]);return s}),CP=new oP(288),bP=0;bP<144;++bP)CP[bP]=8;for(var bP=144;bP<256;++bP)CP[bP]=9;for(var bP=256;bP<280;++bP)CP[bP]=7;for(var bP=280;bP<288;++bP)CP[bP]=8;for(var wP=new oP(32),bP=0;bP<32;++bP)wP[bP]=5;var TP=SP(CP,9,0),EP=SP(CP,9,1),DP=SP(wP,5,0),OP=SP(wP,5,1),kP=function(e){for(var t=e[0],n=1;n<e.length;++n)e[n]>t&&(t=e[n]);return t},AP=function(e,t,n){var r=t/8|0;return(e[r]|e[r+1]<<8)>>(t&7)&n},jP=function(e,t){var n=t/8|0;return(e[n]|e[n+1]<<8|e[n+2]<<16)>>(t&7)},MP=function(e){return(e+7)/8|0},NP=function(e,t,n){return(t==null||t<0)&&(t=0),(n==null||n>e.length)&&(n=e.length),new oP(e.subarray(t,n))},PP=[`unexpected EOF`,`invalid block type`,`invalid length/literal`,`invalid distance`,`stream finished`,`no stream handler`,,`no callback`,`invalid UTF-8 data`,`extra field too long`,`date not in range 1980-2099`,`filename too long`,`stream finishing`,`invalid zip data`],FP=function(e,t,n){var r=Error(t||PP[e]);if(r.code=e,Error.captureStackTrace&&Error.captureStackTrace(r,FP),!n)throw r;return r},IP=function(e,t,n,r){var i=e.length,a=r?r.length:0;if(!i||t.f&&!t.l)return n||new oP(0);var o=!n,s=o||t.i!=2,c=t.i;o&&(n=new oP(i*3));var l=function(e){var t=n.length;if(e>t){var r=new oP(Math.max(t*2,e));r.set(n),n=r}},u=t.f||0,d=t.p||0,f=t.b||0,p=t.l,m=t.d,h=t.m,g=t.n,_=i*8;do{if(!p){u=AP(e,d,1);var v=AP(e,d+1,3);if(d+=3,!v){var y=MP(d)+4,b=e[y-4]|e[y-3]<<8,x=y+b;if(x>i){c&&FP(0);break}s&&l(f+b),n.set(e.subarray(y,x),f),t.b=f+=b,t.p=d=x*8,t.f=u;continue}if(v==1)p=EP,m=OP,h=9,g=5;else if(v==2){var S=AP(e,d,31)+257,C=AP(e,d+10,15)+4,w=S+AP(e,d+5,31)+1;d+=14;for(var T=new oP(w),E=new oP(19),D=0;D<C;++D)E[dP[D]]=AP(e,d+D*3,7);d+=C*3;for(var O=kP(E),k=(1<<O)-1,A=SP(E,O,1),D=0;D<w;){var j=A[AP(e,d,k)];d+=j&15;var y=j>>4;if(y<16)T[D++]=y;else{var M=0,N=0;for(y==16?(N=3+AP(e,d,3),d+=2,M=T[D-1]):y==17?(N=3+AP(e,d,7),d+=3):y==18&&(N=11+AP(e,d,127),d+=7);N--;)T[D++]=M}}var P=T.subarray(0,S),F=T.subarray(S);h=kP(P),g=kP(F),p=SP(P,h,1),m=SP(F,g,1)}else FP(1);if(d>_){c&&FP(0);break}}s&&l(f+131072);for(var I=(1<<h)-1,L=(1<<g)-1,ee=d;;ee=d){var M=p[jP(e,d)&I],R=M>>4;if(d+=M&15,d>_){c&&FP(0);break}if(M||FP(2),R<256)n[f++]=R;else if(R==256){ee=d,p=null;break}else{var te=R-254;if(R>264){var D=R-257,z=lP[D];te=AP(e,d,(1<<z)-1)+mP[D],d+=z}var ne=m[jP(e,d)&L],B=ne>>4;ne||FP(3),d+=ne&15;var F=_P[B];if(B>3){var z=uP[B];F+=jP(e,d)&(1<<z)-1,d+=z}if(d>_){c&&FP(0);break}s&&l(f+131072);var V=f+te;if(f<F){var re=a-F,ie=Math.min(F,V);for(re+f<0&&FP(3);f<ie;++f)n[f]=r[re+f]}for(;f<V;++f)n[f]=n[f-F]}}t.l=p,t.p=ee,t.b=f,t.f=u,p&&(u=1,t.m=h,t.d=m,t.n=g)}while(!u);return f!=n.length&&o?NP(n,0,f):n.subarray(0,f)},LP=function(e,t,n){n<<=t&7;var r=t/8|0;e[r]|=n,e[r+1]|=n>>8},RP=function(e,t,n){n<<=t&7;var r=t/8|0;e[r]|=n,e[r+1]|=n>>8,e[r+2]|=n>>16},zP=function(e,t){for(var n=[],r=0;r<e.length;++r)e[r]&&n.push({s:r,f:e[r]});var i=n.length,a=n.slice();if(!i)return{t:KP,l:0};if(i==1){var o=new oP(n[0].s+1);return o[n[0].s]=1,{t:o,l:1}}n.sort(function(e,t){return e.f-t.f}),n.push({s:-1,f:25001});var s=n[0],c=n[1],l=0,u=1,d=2;for(n[0]={s:-1,f:s.f+c.f,l:s,r:c};u!=i-1;)s=n[n[l].f<n[d].f?l++:d++],c=n[l!=u&&n[l].f<n[d].f?l++:d++],n[u++]={s:-1,f:s.f+c.f,l:s,r:c};for(var f=a[0].s,r=1;r<i;++r)a[r].s>f&&(f=a[r].s);var p=new sP(f+1),m=BP(n[u-1],p,0);if(m>t){var r=0,h=0,g=m-t,_=1<<g;for(a.sort(function(e,t){return p[t.s]-p[e.s]||e.f-t.f});r<i;++r){var v=a[r].s;if(p[v]>t)h+=_-(1<<m-p[v]),p[v]=t;else break}for(h>>=g;h>0;){var y=a[r].s;p[y]<t?h-=1<<t-p[y]++-1:++r}for(;r>=0&&h;--r){var b=a[r].s;p[b]==t&&(--p[b],++h)}m=t}return{t:new oP(p),l:m}},BP=function(e,t,n){return e.s==-1?Math.max(BP(e.l,t,n+1),BP(e.r,t,n+1)):t[e.s]=n},VP=function(e){for(var t=e.length;t&&!e[--t];);for(var n=new sP(++t),r=0,i=e[0],a=1,o=function(e){n[r++]=e},s=1;s<=t;++s)if(e[s]==i&&s!=t)++a;else{if(!i&&a>2){for(;a>138;a-=138)o(32754);a>2&&(o(a>10?a-11<<5|28690:a-3<<5|12305),a=0)}else if(a>3){for(o(i),--a;a>6;a-=6)o(8304);a>2&&(o(a-3<<5|8208),a=0)}for(;a--;)o(i);a=1,i=e[s]}return{c:n.subarray(0,r),n:t}},HP=function(e,t){for(var n=0,r=0;r<t.length;++r)n+=e[r]*t[r];return n},UP=function(e,t,n){var r=n.length,i=MP(t+2);e[i]=r&255,e[i+1]=r>>8,e[i+2]=e[i]^255,e[i+3]=e[i+1]^255;for(var a=0;a<r;++a)e[i+a+4]=n[a];return(i+4+r)*8},WP=function(e,t,n,r,i,a,o,s,c,l,u){LP(t,u++,n),++i[256];for(var d=zP(i,15),f=d.t,p=d.l,m=zP(a,15),h=m.t,g=m.l,_=VP(f),v=_.c,y=_.n,b=VP(h),x=b.c,S=b.n,C=new sP(19),w=0;w<v.length;++w)++C[v[w]&31];for(var w=0;w<x.length;++w)++C[x[w]&31];for(var T=zP(C,7),E=T.t,D=T.l,O=19;O>4&&!E[dP[O-1]];--O);var k=l+5<<3,A=HP(i,CP)+HP(a,wP)+o,j=HP(i,f)+HP(a,h)+o+14+3*O+HP(C,E)+2*C[16]+3*C[17]+7*C[18];if(c>=0&&k<=A&&k<=j)return UP(t,u,e.subarray(c,c+l));var M,N,P,F;if(LP(t,u,1+(j<A)),u+=2,j<A){M=SP(f,p,0),N=f,P=SP(h,g,0),F=h;var I=SP(E,D,0);LP(t,u,y-257),LP(t,u+5,S-1),LP(t,u+10,O-4),u+=14;for(var w=0;w<O;++w)LP(t,u+3*w,E[dP[w]]);u+=3*O;for(var L=[v,x],ee=0;ee<2;++ee)for(var R=L[ee],w=0;w<R.length;++w){var te=R[w]&31;LP(t,u,I[te]),u+=E[te],te>15&&(LP(t,u,R[w]>>5&127),u+=R[w]>>12)}}else M=TP,N=CP,P=DP,F=wP;for(var w=0;w<s;++w){var z=r[w];if(z>255){var te=z>>18&31;RP(t,u,M[te+257]),u+=N[te+257],te>7&&(LP(t,u,z>>23&31),u+=lP[te]);var ne=z&31;RP(t,u,P[ne]),u+=F[ne],ne>3&&(RP(t,u,z>>5&8191),u+=uP[ne])}else RP(t,u,M[z]),u+=N[z]}return RP(t,u,M[256]),u+N[256]},GP=new cP([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),KP=new oP(0),qP=function(e,t,n,r,i,a){var o=a.z||e.length,s=new oP(r+o+5*(1+Math.ceil(o/7e3))+i),c=s.subarray(r,s.length-i),l=a.l,u=(a.r||0)&7;if(t){u&&(c[0]=a.r>>3);for(var d=GP[t-1],f=d>>13,p=d&8191,m=(1<<n)-1,h=a.p||new sP(32768),g=a.h||new sP(m+1),_=Math.ceil(n/3),v=2*_,y=function(t){return(e[t]^e[t+1]<<_^e[t+2]<<v)&m},b=new cP(25e3),x=new sP(288),S=new sP(32),C=0,w=0,T=a.i||0,E=0,D=a.w||0,O=0;T+2<o;++T){var k=y(T),A=T&32767,j=g[k];if(h[A]=j,g[k]=A,D<=T){var M=o-T;if((C>7e3||E>24576)&&(M>423||!l)){u=WP(e,c,0,b,x,S,w,E,O,T-O,u),E=C=w=0,O=T;for(var N=0;N<286;++N)x[N]=0;for(var N=0;N<30;++N)S[N]=0}var P=2,F=0,I=p,L=A-j&32767;if(M>2&&k==y(T-L))for(var ee=Math.min(f,M)-1,R=Math.min(32767,T),te=Math.min(258,M);L<=R&&--I&&A!=j;){if(e[T+P]==e[T+P-L]){for(var z=0;z<te&&e[T+z]==e[T+z-L];++z);if(z>P){if(P=z,F=L,z>ee)break;for(var ne=Math.min(L,z-2),B=0,N=0;N<ne;++N){var V=T-L+N&32767,re=V-h[V]&32767;re>B&&(B=re,j=V)}}}A=j,j=h[A],L+=A-j&32767}if(F){b[E++]=268435456|hP[P]<<18|vP[F];var ie=hP[P]&31,ae=vP[F]&31;w+=lP[ie]+uP[ae],++x[257+ie],++S[ae],D=T+P,++C}else b[E++]=e[T],++x[e[T]]}}for(T=Math.max(T,D);T<o;++T)b[E++]=e[T],++x[e[T]];u=WP(e,c,l,b,x,S,w,E,O,T-O,u),l||(a.r=u&7|c[u/8|0]<<3,u-=7,a.h=g,a.p=h,a.i=T,a.w=D)}else{for(var T=a.w||0;T<o+l;T+=65535){var oe=T+65535;oe>=o&&(c[u/8|0]=l,oe=o),u=UP(c,u+1,e.subarray(T,oe))}a.i=o}return NP(s,0,r+MP(u)+i)},JP=(function(){for(var e=new Int32Array(256),t=0;t<256;++t){for(var n=t,r=9;--r;)n=(n&1&&-306674912)^n>>>1;e[t]=n}return e})(),YP=function(){var e=-1;return{p:function(t){for(var n=e,r=0;r<t.length;++r)n=JP[n&255^t[r]]^n>>>8;e=n},d:function(){return~e}}},XP=function(e,t,n,r,i){if(!i&&(i={l:1},t.dictionary)){var a=t.dictionary.subarray(-32768),o=new oP(a.length+e.length);o.set(a),o.set(e,a.length),e=o,i.w=a.length}return qP(e,t.level==null?6:t.level,t.mem==null?i.l?Math.ceil(Math.max(8,Math.min(13,Math.log(e.length)))*1.5):20:12+t.mem,n,r,i)},ZP=function(e,t){var n={};for(var r in e)n[r]=e[r];for(var r in t)n[r]=t[r];return n},QP=function(e,t,n){for(var r=e(),i=e.toString(),a=i.slice(i.indexOf(`[`)+1,i.lastIndexOf(`]`)).replace(/\s+/g,``).split(`,`),o=0;o<r.length;++o){var s=r[o],c=a[o];if(typeof s==`function`){t+=`;`+c+`=`;var l=s.toString();if(s.prototype){if(l.indexOf(`[native code]`)!=-1){var u=l.indexOf(` `,8)+1;t+=l.slice(u,l.indexOf(`(`,u))}else for(var d in t+=l,s.prototype)t+=`;`+c+`.prototype.`+d+`=`+s.prototype[d].toString()}else t+=l}else n[c]=s}return t},$P=[],eF=function(e){var t=[];for(var n in e)e[n].buffer&&t.push((e[n]=new e[n].constructor(e[n])).buffer);return t},tF=function(e,t,n,r){if(!$P[n]){for(var i=``,a={},o=e.length-1,s=0;s<o;++s)i=QP(e[s],i,a);$P[n]={c:QP(e[o],i,a),e:a}}var c=ZP({},$P[n].e);return aP($P[n].c+`;onmessage=function(e){for(var k in e.data)self[k]=e.data[k];onmessage=`+t.toString()+`}`,n,c,eF(c),r)},nF=function(){return[oP,sP,cP,lP,uP,dP,hP,vP,TP,CP,DP,wP,yP,GP,KP,SP,LP,RP,zP,BP,VP,HP,UP,WP,MP,NP,qP,XP,sF,rF]},rF=function(e){return postMessage(e,[e.buffer])},iF=function(e,t,n,r,i,a){var o=tF(n,r,i,function(e,t){o.terminate(),a(e,t)});return o.postMessage([e,t],t.consume?[e.buffer]:[]),function(){o.terminate()}},aF=function(e,t,n){for(;n;++t)e[t]=n,n>>>=8};function oF(e,t,n){return n||(n=t,t={}),typeof n!=`function`&&FP(7),iF(e,t,[nF],function(e){return rF(sF(e.data[0],e.data[1]))},0,n)}function sF(e,t){return XP(e,t||{},0,0)}function cF(e,t){return IP(e,{i:2},t&&t.out,t&&t.dictionary)}var lF=function(e,t,n,r){for(var i in e){var a=e[i],o=t+i,s=r;Array.isArray(a)&&(s=ZP(r,a[1]),a=a[0]),ArrayBuffer.isView(a)?n[o]=[a,s]:(n[o+=`/`]=[new oP(0),s],lF(a,o,n,r))}},uF=typeof TextEncoder<`u`&&new TextEncoder,dF=typeof TextDecoder<`u`&&new TextDecoder;try{dF.decode(KP,{stream:!0})}catch{}function fF(e,t){if(t){for(var n=new oP(e.length),r=0;r<e.length;++r)n[r]=e.charCodeAt(r);return n}if(uF)return uF.encode(e);for(var i=e.length,a=new oP(e.length+(e.length>>1)),o=0,s=function(e){a[o++]=e},r=0;r<i;++r){if(o+5>a.length){var c=new oP(o+8+(i-r<<1));c.set(a),a=c}var l=e.charCodeAt(r);l<128||t?s(l):l<2048?(s(192|l>>6),s(128|l&63)):l>55295&&l<57344?(l=65536+(l&1047552)|e.charCodeAt(++r)&1023,s(240|l>>18),s(128|l>>12&63),s(128|l>>6&63),s(128|l&63)):(s(224|l>>12),s(128|l>>6&63),s(128|l&63))}return NP(a,0,o)}var pF=function(e){var t=0;if(e)for(var n in e){var r=e[n].length;r>65535&&FP(9),t+=r+4}return t},mF=function(e,t,n,r,i,a,o,s){var c=r.length,l=n.extra,u=s&&s.length,d=pF(l);aF(e,t,o==null?67324752:33639248),t+=4,o!=null&&(e[t++]=20,e[t++]=n.os),e[t]=20,t+=2,e[t++]=n.flag<<1|(a<0&&8),e[t++]=i&&8,e[t++]=n.compression&255,e[t++]=n.compression>>8;var f=new Date(n.mtime==null?Date.now():n.mtime),p=f.getFullYear()-1980;if((p<0||p>119)&&FP(10),aF(e,t,p<<25|f.getMonth()+1<<21|f.getDate()<<16|f.getHours()<<11|f.getMinutes()<<5|f.getSeconds()>>1),t+=4,a!=-1&&(aF(e,t,n.crc),aF(e,t+4,a<0?-a-2:a),aF(e,t+8,n.size)),aF(e,t+12,c),aF(e,t+14,d),t+=16,o!=null&&(aF(e,t,u),aF(e,t+6,n.attrs),aF(e,t+10,o),t+=14),e.set(r,t),t+=c,d)for(var m in l){var h=l[m],g=h.length;aF(e,t,+m),aF(e,t+2,g),e.set(h,t+4),t+=4+g}return u&&(e.set(s,t),t+=u),t},hF=function(e,t,n,r,i){aF(e,t,101010256),aF(e,t+8,n),aF(e,t+10,n),aF(e,t+12,r),aF(e,t+16,i)};function gF(e,t,n){n||(n=t,t={}),typeof n!=`function`&&FP(7);var r={};lF(e,``,r,t);var i=Object.keys(r),a=i.length,o=0,s=0,c=a,l=Array(a),u=[],d=function(){for(var e=0;e<u.length;++e)u[e]()},f=function(e,t){_F(function(){n(e,t)})};_F(function(){f=n});var p=function(){var e=new oP(s+22),t=o,n=s-o;s=0;for(var r=0;r<c;++r){var i=l[r];try{var a=i.c.length;mF(e,s,i,i.f,i.u,a);var u=30+i.f.length+pF(i.extra),d=s+u;e.set(i.c,d),mF(e,o,i,i.f,i.u,a,s,i.m),o+=16+u+(i.m?i.m.length:0),s=d+a}catch(e){return f(e,null)}}hF(e,o,l.length,n,t),f(null,e)};a||p();for(var m=function(e){var t=i[e],n=r[t],c=n[0],m=n[1],h=YP(),g=c.length;h.p(c);var _=fF(t),v=_.length,y=m.comment,b=y&&fF(y),x=b&&b.length,S=pF(m.extra),C=m.level==0?0:8,w=function(n,r){if(n)d(),f(n,null);else{var i=r.length;l[e]=ZP(m,{size:g,crc:h.d(),c:r,f:_,m:b,u:v!=t.length||b&&y.length!=x,compression:C}),o+=30+v+S+i,s+=76+2*(v+S)+(x||0)+i,--a||p()}};if(v>65535&&w(FP(11,0,1),null),!C)w(null,c);else if(g<16e4)try{w(null,sF(c,m))}catch(e){w(e,null)}else u.push(oF(c,m,w))},h=0;h<c;++h)m(h);return d}var _F=typeof queueMicrotask==`function`?queueMicrotask:typeof setTimeout==`function`?setTimeout:function(e){e()};function vF(){let e=globalThis.Buffer;return typeof e==`function`?e:void 0}function yF(e){let t=e.replace(/[\t\n\f\r ]/g,``);if(t.length%4==0&&(t=t.replace(/={1,2}$/,``)),t.length%4==1||!/^[A-Za-z0-9+/]*$/.test(t))throw new Tx(`Invalid base64 input.`,wx.ENCODING_ERROR,{context:{inputLength:e.length}});let n=vF();if(n)return new Uint8Array(n.from(t,`base64`));if(typeof globalThis.atob==`function`){let e=globalThis.atob(t),n=new Uint8Array(e.length);for(let t=0;t<e.length;t++)n[t]=e.charCodeAt(t)&255;return n}throw new Tx(`Base64 decoding not supported in this environment.`,wx.INVALID_STATE,{context:{environmentInfo:`atob or Buffer not available`}})}function bF(e){return e.map(e=>{let t=e.clone(!0),n=[];e.traverse(e=>n.push(e));let r=0;return t.traverse(e=>{let t=n[r++],i=e;t.geometry&&(i.geometry=t.geometry.clone())}),t})}function xF(e){e.forEach(e=>Ux(e,{materials:!1}))}var SF={clone:bF,release:xF};function CF(e,t){let n=t??1;return{color:new Q(e??`#ffffff`),transparent:n<1,opacity:n}}function wF(e){let t=TF(e);if(!t)return null;let n=new ES;n.setPositions(t);let r=CF(e.color,e.opacity),i=new oS({color:r.color}),a=i;a.linewidth=e.width??2,a.transparent=r.transparent,a.opacity=r.opacity;let o=new DS(n,i);return o.computeLineDistances(),o.name=e.name,o.userData={source:`compute`,id:e.id,layer:e.layer,kind:`curve`,metadata:e.metadata},o}function TF(e){if(!e.points)throw new Tx(`Curve display item '${e.id}' has no tessellated points. It was produced by an outdated Display component — upgrade it in Grasshopper (Solution → Upgrade obsolete components) and re-save the definition.`,wx.INVALID_CONFIG,{context:{itemId:e.id,kind:e.kind}});return e.points.length>=6?e.points:null}function EF(e){let{position:t}=e;if(!t||typeof t.X!=`number`||!Number.isFinite(t.X)||typeof t.Y!=`number`||!Number.isFinite(t.Y)||typeof t.Z!=`number`||!Number.isFinite(t.Z))return Dx().warn(`Skipping point display item with missing or non-finite position (id: ${String(e.id)}).`),null;let n=new Om;n.setAttribute(`position`,new gm([t.X,t.Y,t.Z],3));let r=new Yh(n,new Wh({...CF(e.color,e.opacity),size:6,sizeAttenuation:!1}));return r.name=e.name,r.userData={source:`compute`,id:e.id,layer:e.layer,kind:`point`,metadata:e.metadata},r}function DF(e){if(!e||e.length===0)return[];let t=[];for(let n of e)switch(n.kind){case`curve`:{let e=wF(n);e&&t.push(e);break}case`point`:{let e=EF(n);e&&t.push(e);break}default:{let e=n;Dx().warn(`Skipping unknown display item kind: ${String(e.kind)}`);break}}return t}var OF=new Uint16Array(new Uint8Array([1,0]).buffer)[0]===1;function kF(e){return typeof e==`string`?yF(e):e instanceof Uint8Array?e:new Uint8Array(e)}function AF(e){if(e.byteLength<8)return e;let t=new DataView(e.buffer,e.byteOffset,e.byteLength);if(t.getUint32(0,!0)!==1515605075)return e;let n=t.getUint32(4,!0),r=e.subarray(8),i=Math.max(r.byteLength*1032+1024,1<<20);if(n>i)throw WF(`SLVZ header declares an implausible uncompressed length`,{uncompressedLen:n,deflatedBytes:r.byteLength,maxPlausibleLen:i});let a;try{a=cF(r,{out:new Uint8Array(n+1)})}catch(e){throw WF(`Failed to inflate SLVZ blob: ${e instanceof Error?e.message:String(e)}`,{uncompressedLen:n,deflatedBytes:r.byteLength})}if(a.byteLength!==n)throw WF(`SLVZ payload inflated to a different size than the header declares.`,{declaredLen:n,actualLen:a.byteLength,deflatedBytes:r.byteLength});return a}function jF(e){if(typeof TextDecoder<`u`)return new TextDecoder(`utf-8`).decode(e);if(globalThis.Buffer!==void 0)return globalThis.Buffer.from(e).toString(`utf-8`);throw new Tx(`No UTF-8 decoder available in this environment.`,wx.INVALID_STATE)}function MF(e,t,n){if(n===0)return new Int16Array;if(t%2==0)return new Int16Array(e,t,n);let r=new Uint8Array(n*2);return r.set(new Uint8Array(e,t,n*2)),new Int16Array(r.buffer)}function NF(e,t,n){if(n===0)return new Float32Array;if(t%4==0)return new Float32Array(e,t,n);let r=new Uint8Array(n*4);return r.set(new Uint8Array(e,t,n*4)),new Float32Array(r.buffer)}function PF(e,t,n){if(n===0)return new Uint16Array;if(t%2==0)return new Uint16Array(e,t,n);let r=new Uint8Array(n*2);return r.set(new Uint8Array(e,t,n*2)),new Uint16Array(r.buffer)}function FF(e,t,n){if(n===0)return new Uint32Array;if(t%4==0)return new Uint32Array(e,t,n);let r=new Uint8Array(n*4);return r.set(new Uint8Array(e,t,n*4)),new Uint32Array(r.buffer)}function IF(e,t){if(e.length!==0&&!(e instanceof Uint16Array&&t>65535)){for(let n=0;n<e.length;n++)if(e[n]>=t)throw WF(`Index out of range of vertexCount.`,{indexPosition:n,indexValue:e[n],vertexCount:t})}}function LF(e){return e>>>1^-(e&1)}function RF(e){let t=new Int16Array(e.length),n=0,r=0,i=0;for(let a=0;a<e.length;a+=3)n=n+LF(e[a])<<16>>16,r=r+LF(e[a+1])<<16>>16,i=i+LF(e[a+2])<<16>>16,t[a]=n,t[a+1]=r,t[a+2]=i;return t}function zF(e,t){let n=new Int16Array(t*3),r=t,i=0,a=0,o=0;for(let t=0;t<r;t++)i=i+LF(e[t]|e[r*3+t]<<8)<<16>>16,a=a+LF(e[r+t]|e[r*4+t]<<8)<<16>>16,o=o+LF(e[r*2+t]|e[r*5+t]<<8)<<16>>16,n[t*3]=i,n[t*3+1]=a,n[t*3+2]=o;return n}function BF(e,t){let n=new Uint16Array(t),r=0;for(let i=0;i<t;i++)r=r+LF(e[i]|e[t+i]<<8)&65535,n[i]=r;return n}function VF(e,t){let n=new Uint32Array(t),r=0;for(let i=0;i<t;i++){let a=(e[i]|e[t+i]<<8|e[t*2+i]<<16|e[t*3+i]<<24)>>>0;r=r+LF(a)>>>0,n[i]=r}return n}function HF(e){let t=new Uint16Array(e.length),n=0;for(let r=0;r<e.length;r++)n=n+LF(e[r])&65535,t[r]=n;return t}function UF(e){let t=new Uint32Array(e.length),n=0;for(let r=0;r<e.length;r++)n=n+LF(e[r])>>>0,t[r]=n;return t}function WF(e,t){return new Tx(e,wx.VALIDATION_ERROR,{context:t})}function GF(e,t,n,r,i,a=!1){if(n+36>e.byteLength)throw WF(`Insufficient data to read UV chunk header.`,{expectedBytes:36,availableBytes:e.byteLength-n,offset:n});let o=t.getUint32(n,!0);n+=4;let s=t.getFloat64(n,!0);n+=8;let c=t.getFloat64(n,!0);n+=8;let l=t.getFloat64(n,!0);n+=8;let u=t.getFloat64(n,!0);n+=8;let d=r*2,f=o===1,p=d*(f?4:2);if(n+p>e.byteLength)throw WF(`Insufficient data to read UV chunk.`,{expectedBytes:p,availableBytes:e.byteLength-n,offset:n,uvFormat:o,vertexCount:r});let m=e.byteOffset+n,h;if(f)h=NF(e.buffer,m,d).slice();else if(a){let t=e.subarray(n,n+p),i=r;h=new Float32Array(d);let a=0,o=0;for(let e=0;e<i;e++)a=a+LF(t[e]|t[i*2+e]<<8)&65535,o=o+LF(t[i+e]|t[i*3+e]<<8)&65535,h[e*2]=s+a*l,h[e*2+1]=c+o*u}else{let t=PF(e.buffer,m,d);h=new Float32Array(d);let n=0,r=0;for(let e=0;e<d;e+=2)i?(n=n+LF(t[e])&65535,r=r+LF(t[e+1])&65535):(n=t[e],r=t[e+1]),h[e]=s+n*l,h[e+1]=c+r*u}return{uvs:h,offset:n+p}}function KF(e,t,n,r){let i=n*3;if(t+i>e.byteLength)throw WF(`Insufficient data to read vertex-color chunk.`,{expectedBytes:i,availableBytes:e.byteLength-t,offset:t,vertexCount:n});let a=e.subarray(t,t+i);if(!r)return a.slice();let o=new Uint8Array(i),s=0,c=0,l=0;for(let e=0;e<i;e+=3)s=s+LF(a[e])&255,c=c+LF(a[e+1])&255,l=l+LF(a[e+2])&255,o[e]=s,o[e+1]=c,o[e+2]=l;return o}function qF(e){return e.byteLength>=4&&new DataView(e.buffer,e.byteOffset,4).getUint32(0,!0)===1297501267}function JF(e){let t=YF(e),n=null,r=null,i=null,a=[];for(let{type:e,payload:o}of t)switch(e){case 1297040711:n=o;break;case 1279410516:r=AF(o);break;case 1280590157:i=jF(o);break;case 1381516628:a.push(o)}if(n===null)throw WF(`SLVM container has no GEOM chunk.`,{chunkCount:t.length});if(r===null)throw WF(`SLVM container has no TABL chunk.`,{chunkCount:t.length});let{groups:o}=QF(r),s=$F(i,a);return{geometryBlob:n,metadata:{materials:s,groups:o}}}function YF(e){let t=new DataView(e.buffer,e.byteOffset,e.byteLength);if(e.byteLength<12||t.getUint32(0,!0)!==1297501267)throw WF(`Not an SLVM container (bad magic).`,{byteLength:e.byteLength});let n=t.getUint32(4,!0);if(n!==3)throw WF(`Unsupported SLVM version: ${n}`,{expectedVersion:3});let r=t.getUint32(8,!0),i=[],a=12;for(let n=0;n<r;n++){if(a+8>e.byteLength)throw WF(`Truncated SLVM chunk header.`,{offset:a,chunkIndex:n});let r=t.getUint32(a,!0),o=t.getUint32(a+4,!0);if(a+=8,a+o>e.byteLength)throw WF(`Truncated SLVM chunk payload.`,{offset:a,chunkIndex:n,byteLen:o});i.push({type:r,payload:e.subarray(a,a+o)}),a+=o+(4-o%4)%4}return i}function XF(e){let t=0,n=0;for(;;){if(e.pos>=e.bytes.byteLength||n>28)throw WF(`Malformed varint in SLVM table.`,{pos:e.pos});let r=e.bytes[e.pos++];if(t|=(r&127)<<n,!(r&128))return t>>>0;n+=7}}function ZF(e,t,n){let r=e.bytes[e.pos++],i=Array(t);switch(r){case 0:i.fill(``);break;case 1:for(let e=0;e<t;e++)i[e]=String(e+1);break;case 2:for(let r=0;r<t;r++)i[r]=n[XF(e)]??``;break;default:throw WF(`Unknown SLVM string column mode: ${r}`,{pos:e.pos})}return i}function QF(e){let t={bytes:e,pos:0},n=XF(t),r=XF(t),i=XF(t),a=n+r+i,o=XF(t),s=Array(o);for(let n=0;n<o;n++){let r=XF(t);s[n]=jF(e.subarray(t.pos,t.pos+r)),t.pos+=r}let c=Array(n),l=Array(n);for(let e=0;e<n;e++)c[e]=XF(t),l[e]=XF(t);for(let e=0;e<r;e++)XF(t);let u=XF(t),d=[];for(let e=0;e<u;e++)d.push({materialId:XF(t),meshCount:XF(t)});let f=ZF(t,a,s),p=ZF(t,a,s),m=Array(a),h=XF(t);for(let e=0;e<h;e++){let e=s[XF(t)]??``,n=XF(t),r=Array(n),i=0;for(let e=0;e<n;e++)i+=XF(t),r[e]=i;for(let i=0;i<n;i++){let n=s[XF(t)]??``,a=r[i];(m[a]??={})[e]=n}}let g=d.length>0||n===0?d:[{materialId:0,meshCount:n}],_=[],v=0,y=0,b=0;for(let e of g){let t=[];for(let r=0;r<e.meshCount&&v<n;r++,v++){let e=m[v],n=e?.id;e!==void 0&&delete e.id,t.push({id:n,name:f[v],layer:p[v],vertexCount:c[v],indexCount:l[v]*3,vertexStart:y,indexStart:b,metadata:e??{}}),y+=c[v],b+=l[v]*3}_.push({materialId:e.materialId,meshes:t})}return{groups:_}}function $F(e,t){if(e===null)return[];let n;try{n=JSON.parse(e).materials??[]}catch(t){throw WF(`Failed to parse SLVM materials JSON: ${t instanceof Error?t.message:String(t)}`,{byteLength:e.length})}for(let e of n)for(let n of eI){let r=e[n];if(r?.startsWith(`slvm:tex:`)){let i=t[Number(r.slice(9))];i!==void 0&&(e[n]=tI(i))}}return n}var eI=[`map`,`roughnessMap`,`normalMap`];function tI(e){let t={bytes:e,pos:0},n=XF(t),r=jF(e.subarray(t.pos,t.pos+n)),i=e.subarray(t.pos+n),a=``,o=32768;for(let e=0;e<i.byteLength;e+=o)a+=String.fromCharCode(...i.subarray(e,e+o));return`data:${r};base64,${btoa(a)}`}function nI(e){let t=rI(e),n;n=t.isFloat32?t.vertexData:t.planarByteSplit?zF(t.vertexData,t.vertexCount):t.deltaEncoded?RF(t.vertexData):t.vertexData;let r;if(t.planarByteSplit){let e=t.indexData;r=t.uint16Indices?BF(e,e.length/2):VF(e,e.length/4)}else r=t.deltaEncoded?t.indexData instanceof Uint16Array?HF(t.indexData):UF(t.indexData):t.indexData;return IF(r,t.vertexCount),{metadata:t.metadata,flags:t.flags,vertices:n,indices:r,origin:t.origin,scale:t.scale,uvs:t.uvs,colors:t.colors}}function rI(e){if(!OF)throw new Tx(`SLVA parsing requires a little-endian host: the zero-copy geometry readers view the wire bytes in host byte order.`,wx.ENVIRONMENT_ERROR);let t=kF(e);if(qF(t)){let e=JF(t),n=rI(e.geometryBlob);return n.metadata=e.metadata,n}let n=AF(t),r=new DataView(n.buffer,n.byteOffset,n.byteLength);if(n.byteLength<12)throw WF(`Blob too small to contain SLVA header.`,{expectedBytes:12,availableBytes:n.byteLength});let i=0,a=r.getUint32(i,!0);if(i+=4,a!==1096174675)throw WF(`Invalid SLVA magic: 0x${a.toString(16)}`,{expectedMagic:`0x41564c53`,actualMagic:`0x${a.toString(16)}`});let o=r.getUint32(i,!0);if(i+=4,o<1||o>4)throw WF(`Unsupported SLVA version: ${o}`,{minSupportedVersion:1,maxSupportedVersion:4,actualVersion:o});let s=r.getUint32(i,!0);if(i+=4,i+s>n.byteLength)throw WF(`Insufficient data to read metadata JSON.`,{expectedBytes:s,availableBytes:n.byteLength-i,offset:i});let c=n.subarray(i,i+s);i+=s;let l;try{l=s===0?{}:JSON.parse(jF(c))}catch(e){throw WF(`Failed to parse metadata JSON: ${e instanceof Error?e.message:String(e)}`,{metadataLen:s})}if(i+56>n.byteLength)throw WF(`Insufficient data to read geometry header.`,{expectedBytes:56,availableBytes:n.byteLength-i,offset:i});let u=r.getUint32(i,!0);i+=4;let d=r.getFloat64(i,!0);i+=8;let f=r.getFloat64(i,!0);i+=8;let p=r.getFloat64(i,!0);i+=8;let m=r.getFloat64(i,!0);i+=8;let h=r.getFloat64(i,!0);i+=8;let g=r.getFloat64(i,!0);i+=8;let _=r.getUint32(i,!0);i+=4;let v=!!(u&1),y=!!(u&4),b=!!(u&32),x=_*3,S=x*(v?4:2);if(i+S>n.byteLength)throw WF(`Insufficient data to read vertices.`,{expectedBytes:S,availableBytes:n.byteLength-i,offset:i,useFloat32:v,vertexCount:_});let C=n.byteOffset+i,w;if(w=v?NF(n.buffer,C,x):b?n.subarray(i,i+S):y?PF(n.buffer,C,x):MF(n.buffer,C,x),i+=S,i+4>n.byteLength)throw WF(`Insufficient data to read index count.`,{expectedBytes:4,availableBytes:n.byteLength-i,offset:i});let T=r.getUint32(i,!0);i+=4;let E=!!(u&2),D=T*(E?2:4);if(i+D>n.byteLength)throw WF(`Insufficient data to read indices.`,{expectedBytes:D,availableBytes:n.byteLength-i,offset:i,indexCount:T,useUint16Indices:E});let O=b?n.subarray(i,i+D):E?PF(n.buffer,n.byteOffset+i,T):FF(n.buffer,n.byteOffset+i,T);i+=D;let k=null;if(u&8){let e=GF(n,r,i,_,y,b);k=e.uvs,i=e.offset}let A=null;return u&16&&(A=KF(n,i,_,y)),{metadata:l,flags:u,vertexData:w,indexData:O,isFloat32:v,deltaEncoded:y,planarByteSplit:b,uint16Indices:E,vertexCount:_,origin:[d,f,p],scale:[m,h,g],uvs:k,colors:A}}function iI(e,t,n){if(n.length===0)return!1;let r=e=>{let t=16;for(;t<e*2;)t*=2;return t},i=(n,i)=>{if(i<12||i%3!=0)return!1;let a=0;for(let r=0;r<i;r++){let i=t[n+r]*3;a=Math.max(a,Math.abs(e[i]),Math.abs(e[i+1]),Math.abs(e[i+2]))}if(!(a>0)||!Number.isFinite(a))return!1;let o=1/(2*2**(Math.floor(Math.log2(a))-23)),s=r(i),c=s-1,l=new Int32Array(s).fill(-1),u=new Int32Array(s),d=new Int32Array(s),f=new Int32Array(s),p=(e,t,n)=>{let r=Math.imul(e,2654435761)^Math.imul(t,2246822519)^Math.imul(n,3266489917);for(r=(r^r>>>15)&c;l[r]!==-1&&(u[r]!==e||d[r]!==t||f[r]!==n);)r=r+1&c;return r},m=(e,t)=>{let n=e-t;return n>.25?t+1:n<-.25?t-1:t},h=new Int32Array(i);for(let r=0;r<i;r++){let i=t[n+r],a=e[i*3]*o,s=e[i*3+1]*o,c=e[i*3+2]*o,g=Math.round(a),_=Math.round(s),v=Math.round(c),y=m(a,g),b=m(s,_),x=m(c,v),S=-1;for(let e=0;e<8&&S===-1;e++){if(e&1&&y===g||e&2&&b===_||e&4&&x===v)continue;let t=p(e&1?y:g,e&2?b:_,e&4?x:v);l[t]!==-1&&(S=l[t])}if(S===-1){let e=p(g,_,v);l[e]=i,u[e]=g,d[e]=_,f[e]=v,S=i}h[r]=S}let g=r(i),_=g-1,v=new Int32Array(g).fill(-1),y=new Int32Array(g),b=(e,t)=>{let n=(Math.imul(e,2654435761)^Math.imul(t,2246822519))&_;for(;v[n]!==-1&&(v[n]!==e||y[n]!==t);)n=n+1&_;return n},x=(e,t)=>{let n=b(e,t);return v[n]===-1&&(v[n]=e,y[n]=t,!0)},S=(e,t)=>v[b(e,t)]!==-1,C=0;for(let e=0;e<i;e+=3){let t=h[e],n=h[e+1],r=h[e+2];if(t!==n&&n!==r&&r!==t){if(!x(t,n)||!x(n,r)||!x(r,t))return!1;C++}}if(C<4)return!1;for(let e=0;e<i;e+=3){let t=h[e],n=h[e+1],r=h[e+2];if(t!==n&&n!==r&&r!==t&&(!S(n,t)||!S(r,n)||!S(t,r)))return!1}let w=h[0]*3,T=e[w],E=e[w+1],D=e[w+2],O=0;for(let t=0;t<i;t+=3){let n=h[t]*3,r=h[t+1]*3,i=h[t+2]*3,a=e[n]-T,o=e[n+1]-E,s=e[n+2]-D,c=e[r]-T,l=e[r+1]-E,u=e[r+2]-D,d=e[i]-T,f=e[i+1]-E,p=e[i+2]-D;O+=a*(l*p-u*f)+o*(u*d-c*p)+s*(c*f-l*d)}return O>0},a=0;for(let e of n){if(!i(a,e))return!1;a+=e}return!0}function aI(e,t,n,r){let i=Math.cos(30*Math.PI/180),a=e.length/3,o=t.length,s=o/3;{let i=new Uint32Array(e.buffer,e.byteOffset,e.length),s=n?new Uint32Array(n.buffer,n.byteOffset,n.length):null,c=(e,t)=>e[t]===2147483648?0:e[t],l=(e,t)=>{for(let n=0;n<3;n++)if(c(i,e*3+n)!==c(i,t*3+n)||r&&r[e*3+n]!==r[t*3+n])return!1;return!s||s[e*2]===s[t*2]&&s[e*2+1]===s[t*2+1]},u=16;for(;u<a*2;)u*=2;let d=u-1,f=new Int32Array(u).fill(-1),p=new Uint32Array(a);for(let e=0;e<a;e++){let t=Math.imul(c(i,e*3),2654435761)^Math.imul(c(i,e*3+1),2246822519)^Math.imul(c(i,e*3+2),3266489917);for(t=(t^t>>>15)&d;f[t]!==-1&&!l(f[t],e);)t=t+1&d;f[t]===-1&&(f[t]=e),p[e]=f[t]}for(let e=0;e<o;e++)t[e]=p[t[e]]}let c=new Float32Array(s*3),l=new Float32Array(s);for(let n=0;n<s;n++){let r=t[n*3]*3,i=t[n*3+1]*3,a=t[n*3+2]*3,o=e[i]-e[r],s=e[i+1]-e[r+1],u=e[i+2]-e[r+2],d=e[a]-e[r],f=e[a+1]-e[r+1],p=e[a+2]-e[r+2],m=s*p-u*f,h=u*d-o*p,g=o*f-s*d,_=Math.sqrt(m*m+h*h+g*g);_!==0&&(c[n*3]=m/_,c[n*3+1]=h/_,c[n*3+2]=g/_,l[n]=_)}let u=new Uint32Array(a+1);for(let e=0;e<o;e++)u[t[e]+1]+=1;for(let e=0;e<a;e++)u[e+1]+=u[e];let d=new Uint32Array(o),f=u.slice(0,a);for(let e=0;e<o;e++){let n=t[e];d[f[n]]=e,f[n]+=1}let p=0;for(let e=0;e<a;e++)p=Math.max(p,u[e+1]-u[e]);let m=new Uint32Array(o),h=new Uint32Array(a),g=new Float32Array(Math.max(1,p)*3);for(let e=0;e<a;e++){let t=0;for(let n=u[e];n<u[e+1];n++){let e=d[n],r=Math.floor(e/3)*3,a=c[r],o=c[r+1],s=c[r+2],l=-1;if(a===0&&o===0&&s===0)l=0;else for(let e=0;e<t;e++)if(g[e*3]*a+g[e*3+1]*o+g[e*3+2]*s>=i){l=e;break}l===-1&&(l=t,g[t*3]=a,g[t*3+1]=o,g[t*3+2]=s,t++),m[e]=l}h[e]=Math.max(1,t)}let _=new Uint32Array(a+1);for(let e=0;e<a;e++)_[e+1]=_[e]+h[e]-1;let v=_[a],y=a+v,b=e,x=n,S=r;if(v>0){b=new Float32Array(y*3),b.set(e),x=n?new Float32Array(y*2):null,x&&n&&x.set(n),S=r?new Uint8Array(y*3):null,S&&r&&S.set(r);for(let t=0;t<a;t++)for(let i=1;i<h[t];i++){let o=a+_[t]+i-1;b[o*3]=e[t*3],b[o*3+1]=e[t*3+1],b[o*3+2]=e[t*3+2],x&&n&&(x[o*2]=n[t*2],x[o*2+1]=n[t*2+1]),S&&r&&(S[o*3]=r[t*3],S[o*3+1]=r[t*3+1],S[o*3+2]=r[t*3+2])}}let C=new Float32Array(y*3);for(let e=0;e<o;e++){let n=t[e],r=m[e],i=r===0?n:a+_[n]+r-1;t[e]=i;let o=Math.floor(e/3)*3,s=l[o/3];C[i*3]+=c[o]*s,C[i*3+1]+=c[o+1]*s,C[i*3+2]+=c[o+2]*s}for(let e=0;e<C.length;e+=3){let t=C[e],n=C[e+1],r=C[e+2],i=Math.sqrt(t*t+n*n+r*r)||1;C[e]=t/i,C[e+1]=n/i,C[e+2]=r/i}return{positions:b,normals:C,indices:t,uvs:x,colors:S}}function oI(e,t,n,r){let i=e.length/3,a=new Float32Array(i*3),o=new Float32Array(i*3);for(let t=0;t<n.length;t+=3){let i=n[t],s=n[t+1],c=n[t+2],l=e[s*3]-e[i*3],u=e[s*3+1]-e[i*3+1],d=e[s*3+2]-e[i*3+2],f=e[c*3]-e[i*3],p=e[c*3+1]-e[i*3+1],m=e[c*3+2]-e[i*3+2],h=u*m-d*p,g=d*f-l*m,_=l*p-u*f,v=Math.sqrt(h*h+g*g+_*_);if(v===0)continue;let y=(p*_-m*g)/v,b=(m*h-f*_)/v,x=(f*g-p*h)/v,S=(g*d-_*u)/v,C=(_*l-h*d)/v,w=(h*u-g*l)/v,T=r[s*2]-r[i*2],E=r[c*2]-r[i*2],D=r[s*2+1]-r[i*2+1],O=r[c*2+1]-r[i*2+1],k=T*y+E*S,A=T*b+E*C,j=T*x+E*w,M=D*y+O*S,N=D*b+O*C,P=D*x+O*w;for(let e=0;e<3;e++){let r=n[t+e];a[r*3]+=k,a[r*3+1]+=A,a[r*3+2]+=j,o[r*3]+=M,o[r*3+1]+=N,o[r*3+2]+=P}}let s=new Float32Array(i*4);for(let e=0;e<i;e++){let n=t[e*3],r=t[e*3+1],i=t[e*3+2],c=a[e*3]*n+a[e*3+1]*r+a[e*3+2]*i,l=a[e*3]-c*n,u=a[e*3+1]-c*r,d=a[e*3+2]-c*i,f=Math.sqrt(l*l+u*u+d*d);if(!(f>1e-12)){let e=+(Math.abs(n)<.9),t=1-e;l=t*i,u=-e*i,d=e*r-t*n,f=Math.sqrt(l*l+u*u+d*d)||1}l/=f,u/=f,d/=f;let p=r*d-i*u,m=i*l-n*d,h=n*u-r*l,g=p*o[e*3]+m*o[e*3+1]+h*o[e*3+2];s[e*4]=l,s[e*4+1]=u,s[e*4+2]=d,s[e*4+3]=g<0?-1:1}return s}function sI(e,t){let n=iI(e.positions,e.indices,t),r=aI(e.positions,e.indices,e.uvs,e.colors),i=r.uvs?oI(r.positions,r.normals,r.indices,r.uvs):null;return{...r,closed:n,tangents:i}}function cI(e){let{isFloat32:t,deltaEncoded:n,planarByteSplit:r,uint16Indices:i,origin:a,scale:o,uvs:s,colors:c,jobs:l}=e,u=e=>e>>>1^-(e&1),d;if(t)d=e.vertexData;else{let t;if(r){let n=e.vertexData,r=n.length/6;t=new Int16Array(r*3);let i=0,a=0,o=0;for(let e=0;e<r;e++)i=i+u(n[e]|n[r*3+e]<<8)<<16>>16,a=a+u(n[r+e]|n[r*4+e]<<8)<<16>>16,o=o+u(n[r*2+e]|n[r*5+e]<<8)<<16>>16,t[e*3]=i,t[e*3+1]=a,t[e*3+2]=o}else if(n){let n=e.vertexData;t=new Int16Array(n.length);let r=0,i=0,a=0;for(let e=0;e<n.length;e+=3)r=r+u(n[e])<<16>>16,i=i+u(n[e+1])<<16>>16,a=a+u(n[e+2])<<16>>16,t[e]=r,t[e+1]=i,t[e+2]=a}else t=e.vertexData;d=new Float32Array(t.length);let i=a[0],s=a[1],c=a[2],l=o[0],f=o[1],p=o[2];for(let e=0;e<t.length;e+=3)d[e]=i+(t[e]+32767)*l,d[e+1]=s+(t[e+1]+32767)*f,d[e+2]=c+(t[e+2]+32767)*p}let f;if(r){let t=e.indexData;if(i){let e=t.length/2,n=new Uint16Array(e),r=0;for(let i=0;i<e;i++)r=r+u(t[i]|t[e+i]<<8)&65535,n[i]=r;f=n}else{let e=t.length/4,n=new Uint32Array(e),r=0;for(let i=0;i<e;i++){let a=(t[i]|t[e+i]<<8|t[e*2+i]<<16|t[e*3+i]<<24)>>>0;r=r+u(a)>>>0,n[i]=r}f=n}}else if(n){let t=e.indexData;if(t instanceof Uint16Array){let e=new Uint16Array(t.length),n=0;for(let r=0;r<t.length;r++)n=n+u(t[r])&65535,e[r]=n;f=e}else{let e=new Uint32Array(t.length),n=0;for(let r=0;r<t.length;r++)n=n+u(t[r])>>>0,e[r]=n;f=e}}else f=e.indexData;let p=d.length/3;for(let e=0;e<f.length;e++)if(f[e]>=p)throw Error(`Index ${f[e]} out of range of vertexCount ${p}`);let m=[];for(let e of l){let t=0,n=0;for(let r of e.windows)t+=r.vertexCount,n+=r.indexCount;let r=new Float32Array(t*3),i=new Uint32Array(n),a=s?new Float32Array(t*2):null,o=c?new Uint8Array(t*3):null,l=0,u=0;for(let t of e.windows){let e=t.vertexStart*3;r.set(d.subarray(e,e+t.vertexCount*3),l*3),a&&s&&a.set(s.subarray(t.vertexStart*2,(t.vertexStart+t.vertexCount)*2),l*2),o&&c&&o.set(c.subarray(e,e+t.vertexCount*3),l*3);let n=t.vertexStart,p=t.vertexStart+t.vertexCount,m=l-t.vertexStart;for(let e=0;e<t.indexCount;e++){let r=f[t.indexStart+e];if(r<n||r>=p)throw Error(`Index ${r} outside vertex window [${n}, ${p})`);i[u+e]=r+m}l+=t.vertexCount,u+=t.indexCount}m.push({positions:r,indices:i,uvs:a,colors:o})}return m}function lI(){return[`const assemble = ${cI.toString()};`,`const isClosedSolid = ${iI.toString()};`,`const splitCreases = ${aI.toString()};`,`const grainTangents = ${oI.toString()};`,`self.onmessage = (event) => {`,` const { id, input } = event.data;`,` try {`,` const geometries = assemble(input).map((g, i) => {`,` const counts = input.jobs[i].windows.map((w) => w.indexCount);`,` const closed = isClosedSolid(g.positions, g.indices, counts);`,` const c = splitCreases(g.positions, g.indices, g.uvs, g.colors);`,` const tangents = c.uvs ? grainTangents(c.positions, c.normals, c.indices, c.uvs) : null;`,` return { ...c, closed, tangents };`,` });`,` const transfer = [];`,` for (const g of geometries) {`,` transfer.push(g.positions.buffer, g.normals.buffer, g.indices.buffer);`,` if (g.uvs) transfer.push(g.uvs.buffer);`,` if (g.tangents) transfer.push(g.tangents.buffer);`,` if (g.colors) transfer.push(g.colors.buffer);`,` }`,` self.postMessage({ id, geometries }, transfer);`,` } catch (error) {`,` self.postMessage({ id, error: String((error && error.message) || error) });`,` }`,`};`].join(`
5603
+ `)}var uI,dI=new Map,fI=1;function pI(){if(uI!==void 0)return uI;if(typeof Worker>`u`||typeof Blob>`u`||typeof URL>`u`||typeof URL.createObjectURL!=`function`)return uI=null,null;try{let e=URL.createObjectURL(new Blob([lI()],{type:`text/javascript`})),t=new Worker(e);t.onmessage=e=>{let{id:t,geometries:n,error:r}=e.data,i=dI.get(t);i&&(dI.delete(t),n?i.resolve(n):i.reject(Error(r??`mesh assembly failed in worker`)))},t.onerror=()=>{for(let e of dI.values())e.reject(Error(`mesh assembly worker crashed`));dI.clear(),t.terminate(),uI=null},uI=t}catch{uI=null}return uI}function mI(e,t,n){return new Promise((r,i)=>{let a=fI++;dI.set(a,{resolve:r,reject:i}),e.postMessage({id:a,input:t},n)})}var hI=1;function gI(e){hI=Math.max(1,e)}Bx(gI);function _I(e,t,n,r){typeof document>`u`||new r_().load(t,t=>{if(t.colorSpace=n===`map`?`srgb`:``,t.anisotropy=hI,r){let e=t.image,n=e?.width&&e.height?e.height/e.width:1;t.wrapS=1e3,t.wrapT=1e3,t.repeat.set(1/r,1/(r*n))}e[n]=t,e.needsUpdate=!0},void 0,e=>{Dx().warn(`Failed to load material ${n} ${t}:`,e)})}var vI={brushed:{fibres:[{pitch:.04,length:[2,12],depth:.3},{pitch:.25,length:[5,40],depth:.18}],bands:[]},rolled:{fibres:[{pitch:.3,length:[80,600],depth:.07}],bands:[{width:20,length:1500,depth:.05}]}},yI=.35,bI=e=>e.toFixed(4);function xI(e,t){let n=vI[e];if(!n||!(t>0))return null;let r=n.fibres.map((e,t)=>`selvaFibres( vUv, footprint, ${bI(e.pitch)}, vec2( ${bI(e.length[0])}, ${bI(e.length[1])} ), ${bI(e.depth)}, ${bI(t*31+3)} )`).join(` + `)||`0.0`,i=n.bands.map(e=>`selvaBand( vUv, footprint, vec2( ${bI(e.length)}, ${bI(e.width)} ), ${bI(e.depth)} )`).join(` + `)||`0.0`;return{key:`finish:${e}:${bI(t)}`,patch:e=>{e.fragmentShader=e.fragmentShader.replace(`#include <common>`,`#include <common>
5604
5604
  // Hash without sine: sin() loses precision on the large arguments mm UVs produce.
5605
5605
  float selvaHash( vec2 p ) {
5606
5606
  vec3 p3 = fract( vec3( p.xyx ) * 0.1031 );
@@ -5635,9 +5635,9 @@ void main() {
5635
5635
  float selvaFibres( vec2 uv, float footprint, float pitch, vec2 len, float depth, float seed ) {
5636
5636
  float level = clamp( log2( footprint / pitch ) + 0.5, 0.0, 14.0 );
5637
5637
  float l0 = floor( level );
5638
- float a = selvaFibreRow( uv, pitch * exp2( l0 ), len, seed + 7.0 * l0 ) * exp2( -${xI(bI)} * l0 );
5638
+ float a = selvaFibreRow( uv, pitch * exp2( l0 ), len, seed + 7.0 * l0 ) * exp2( -${bI(yI)} * l0 );
5639
5639
  float b = selvaFibreRow( uv, pitch * exp2( l0 + 1.0 ), len, seed + 7.0 * l0 + 7.0 )
5640
- * exp2( -${xI(bI)} * ( l0 + 1.0 ) );
5640
+ * exp2( -${bI(yI)} * ( l0 + 1.0 ) );
5641
5641
  return depth * mix( a, b, level - l0 );
5642
5642
  }
5643
5643
  float selvaBand( vec2 uv, float footprint, vec2 size, float depth ) {
@@ -5645,8 +5645,8 @@ void main() {
5645
5645
  return depth * fade * ( selvaNoise( uv / size ) * 2.0 - 1.0 );
5646
5646
  }`).replace(`#include <color_fragment>`,`#include <color_fragment>
5647
5647
  float footprint = max( fwidth( vUv.y ), 1e-6 );
5648
- float selvaFibre = ( ${r} ) * ${xI(t)};
5649
- float selvaStreak = selvaFibre + ( ${i} ) * ${xI(t)};
5648
+ float selvaFibre = ( ${r} ) * ${bI(t)};
5649
+ float selvaStreak = selvaFibre + ( ${i} ) * ${bI(t)};
5650
5650
  diffuseColor.rgb *= 1.0 + 0.5 * selvaStreak;`).replace(`#include <roughnessmap_fragment>`,`#include <roughnessmap_fragment>
5651
5651
  roughnessFactor = clamp( roughnessFactor * ( 1.0 + selvaStreak ), 0.0, 1.0 );`).replace(`#include <normal_fragment_maps>`,`#include <normal_fragment_maps>
5652
5652
  #ifdef USE_ANISOTROPY
@@ -5658,11 +5658,11 @@ void main() {
5658
5658
  vec3 selvaAcross = cross( selvaQ1, normal ) * dFdx( vUv ).y + cross( normal, selvaQ0 ) * dFdy( vUv ).y;
5659
5659
  selvaAcross *= inversesqrt( max( dot( selvaAcross, selvaAcross ), 1e-12 ) );
5660
5660
  #endif
5661
- normal = normalize( normal + ${xI(.6)} * selvaFibre * selvaAcross );`)}}}function CI(e,t){return t?.appearance?.cullBackfaces?!0:(t?.closed??!1)&&!e.transparent&&e.opacity>=1}function wI(e,t){let n=new Map;return(r,i)=>{let a=e[r],o=CI(a,{...t,closed:i}),s=`${r}:${o}`,c=n.get(s);return c||(c=TI(a,{...t,closed:o}),n.set(s,c)),c}}function TI(e,t){let n=Mx(e.color),r=t?.vertexColors??!1,i=t?.appearance,a=new Cg({color:n,metalness:e.metalness,roughness:e.roughness,opacity:e.opacity,transparent:e.transparent,vertexColors:r,side:CI(e,t)?0:2,polygonOffset:!0,polygonOffsetFactor:.25,polygonOffsetUnits:0,depthWrite:!0,depthTest:!0});e.envMapIntensity==null?i?.envMapIntensity!=null&&(a.envMapIntensity=Ax(i.envMapIntensity,e.metalness)):(a.envMapIntensity=e.envMapIntensity,a.userData[kx]=e.envMapIntensity),e.clearcoat!=null&&(a.clearcoat=e.clearcoat,a.clearcoatRoughness=e.clearcoatRoughness??0),e.anisotropy!=null&&e.anisotropy>0&&t?.hasUvs&&(a.anisotropy=e.anisotropy,a.anisotropyRotation=e.anisotropyRotation??0),e.transmission!=null&&(a.transmission=e.transmission,a.thickness=0),e.ior!=null&&(a.ior=e.ior),r&&DI(a);let o=e.finish&&t?.hasUvs?SI(e.finish,e.finishStrength??1):null;o&&(a.defines={...a.defines,USE_UV:``},EI(a,o.key,o.patch));let{mapSize:s}=e;return e.map&&vI(a,e.map,`map`,s),e.roughnessMap&&vI(a,e.roughnessMap,`roughnessMap`,s),e.normalMap&&vI(a,e.normalMap,`normalMap`,s),a}function EI(e,t,n){let r=e.onBeforeCompile,i=e.customProgramCacheKey.bind(e);e.onBeforeCompile=(t,i)=>{r.call(e,t,i),n(t)},e.customProgramCacheKey=()=>`${i()}|${t}`}function DI(e){EI(e,`srgb-vertex-colors`,e=>{e.vertexShader=e.vertexShader.replace(`#include <color_vertex>`,`#include <color_vertex>
5661
+ normal = normalize( normal + ${bI(.6)} * selvaFibre * selvaAcross );`)}}}function SI(e,t){return t?.appearance?.cullBackfaces?!0:(t?.closed??!1)&&!e.transparent&&e.opacity>=1}function CI(e,t){let n=new Map;return(r,i)=>{let a=e[r],o=SI(a,{...t,closed:i}),s=`${r}:${o}`,c=n.get(s);return c||(c=wI(a,{...t,closed:o}),n.set(s,c)),c}}function wI(e,t){let n=Mx(e.color),r=t?.vertexColors??!1,i=t?.appearance,a=new Cg({color:n,metalness:e.metalness,roughness:e.roughness,opacity:e.opacity,transparent:e.transparent,vertexColors:r,side:SI(e,t)?0:2,polygonOffset:!0,polygonOffsetFactor:.25,polygonOffsetUnits:0,depthWrite:!0,depthTest:!0});e.envMapIntensity==null?i?.envMapIntensity!=null&&(a.envMapIntensity=Ax(i.envMapIntensity,e.metalness)):(a.envMapIntensity=e.envMapIntensity,a.userData[kx]=e.envMapIntensity),e.clearcoat!=null&&(a.clearcoat=e.clearcoat,a.clearcoatRoughness=e.clearcoatRoughness??0),e.anisotropy!=null&&e.anisotropy>0&&t?.hasUvs&&(a.anisotropy=e.anisotropy,a.anisotropyRotation=e.anisotropyRotation??0),e.transmission!=null&&(a.transmission=e.transmission,a.thickness=0),e.ior!=null&&(a.ior=e.ior),r&&EI(a);let o=e.finish&&t?.hasUvs?xI(e.finish,e.finishStrength??1):null;o&&(a.defines={...a.defines,USE_UV:``},TI(a,o.key,o.patch));let{mapSize:s}=e;return e.map&&_I(a,e.map,`map`,s),e.roughnessMap&&_I(a,e.roughnessMap,`roughnessMap`,s),e.normalMap&&_I(a,e.normalMap,`normalMap`,s),a}function TI(e,t,n){let r=e.onBeforeCompile,i=e.customProgramCacheKey.bind(e);e.onBeforeCompile=(t,i)=>{r.call(e,t,i),n(t)},e.customProgramCacheKey=()=>`${i()}|${t}`}function EI(e){TI(e,`srgb-vertex-colors`,e=>{e.vertexShader=e.vertexShader.replace(`#include <color_vertex>`,`#include <color_vertex>
5662
5662
  #if defined( USE_COLOR ) || defined( USE_COLOR_ALPHA )
5663
5663
  vColor.rgb = mix(
5664
5664
  vColor.rgb / 12.92,
5665
5665
  pow( ( vColor.rgb + 0.055 ) / 1.055, vec3( 2.4 ) ),
5666
5666
  step( vec3( 0.04045 ), vColor.rgb )
5667
5667
  );
5668
- #endif`)})}function OI(e,t){return new Tx(e,wx.VALIDATION_ERROR,{context:t})}function kI(e,t,n,r){for(let i of e){if(!Number.isInteger(i.materialId)||i.materialId<0||i.materialId>=t)throw OI(`Group materialId out of range of the materials array.`,{materialId:i.materialId,materialCount:t});for(let e of i.meshes){let t={vertexStart:e.vertexStart,vertexCount:e.vertexCount,indexStart:e.indexStart,indexCount:e.indexCount};for(let[n,r]of Object.entries(t))if(!Number.isInteger(r)||r<0)throw OI(`Mesh metadata field "${n}" must be a non-negative integer.`,{meshName:e.name,field:n,value:r});if(e.vertexStart+e.vertexCount>n)throw OI(`Mesh vertex window exceeds the batch vertex buffer.`,{meshName:e.name,vertexStart:e.vertexStart,vertexCount:e.vertexCount,totalVertexCount:n});if(e.indexStart+e.indexCount>r)throw OI(`Mesh index window exceeds the batch index buffer.`,{meshName:e.name,indexStart:e.indexStart,indexCount:e.indexCount,totalIndexCount:r})}}}function AI(e,t){return OI(`Index references a vertex outside its mesh's vertex window.`,{meshName:t.name,indexValue:e,vertexStart:t.vertexStart,vertexCount:t.vertexCount})}function jI(e,t,n){let r=new Float32Array(e.length),i=t[0],a=t[1],o=t[2],s=n[0],c=n[1],l=n[2];for(let t=0;t<e.length;t+=3)r[t]=i+(e[t]+32767)*s,r[t+1]=a+(e[t+1]+32767)*c,r[t+2]=o+(e[t+2]+32767)*l;return r}function MI(e){let t=new Map;for(let n of e.meshes){let e=n.layer??``,r=t.get(e);r||(r=[],t.set(e,r)),r.push(n)}return[...t.values()].map(t=>({materialId:e.materialId,meshes:t}))}function NI(e,t,n,r,i=null,a=null){let o=0,s=0;for(let t of e.meshes)o+=t.vertexCount,s+=t.indexCount;let c=new Float32Array(o*3),l=new Uint32Array(s),u=i?new Float32Array(o*2):null,d=a?new Uint8Array(o*3):null,f=0,p=0;for(let r of e.meshes){let e=r.vertexStart*3,o=r.vertexCount*3;if(c.set(t.subarray(e,e+o),f*3),u&&i){let e=r.vertexStart*2;u.set(i.subarray(e,e+r.vertexCount*2),f*2)}d&&a&&d.set(a.subarray(e,e+o),f*3);let s=n.subarray(r.indexStart,r.indexStart+r.indexCount),m=f-r.vertexStart,h=r.vertexStart,g=r.vertexStart+r.vertexCount;for(let e=0;e<s.length;e++){let t=s[e];if(t<h||t>=g)throw AI(t,r);l[p+e]=t+m}f+=r.vertexCount,p+=r.indexCount}let m=cI({positions:c,indices:l,uvs:u,colors:d},e.meshes.map(e=>e.indexCount));return II(PI(m),e,r(e.materialId,m.closed))}function PI(e){let t=new Om;return t.setAttribute(`position`,new pm(e.positions,3)),t.setAttribute(`normal`,new pm(e.normals,3)),t.setIndex(new pm(e.indices,1)),e.uvs&&t.setAttribute(`uv`,new pm(e.uvs,2)),e.tangents&&t.setAttribute(`tangent`,new pm(e.tangents,4)),e.colors&&t.setAttribute(`color`,new pm(e.colors,3,!0)),t}function FI(e){let t=[],n=0;for(let r of e.meshes)t.push({trackingKey:r.id,name:r.name,layer:r.layer,metadata:r.metadata??{},indexStart:n,indexCount:r.indexCount}),n+=r.indexCount;return t}function II(e,t,n){let r=new _h(e,n),i=t.meshes[0],a=t.meshes.map(e=>e.name).filter(e=>e&&e.length>0);return r.name=a.length>0?a[0]:`merged_material_${t.materialId}`,r.castShadow=!0,r.receiveShadow=!0,r.userData={source:`compute`,name:r.name,layer:i?.layer??``,metadata:i?.metadata??{},members:FI(t)},r}function LI(e,t,n,r,i=null,a=null){let o=[];for(let s of e.meshes){let c=s.vertexStart*3,l=s.vertexCount*3,u=t.slice(c,c+l),d=n.subarray(s.indexStart,s.indexStart+s.indexCount),f=new Uint32Array(d.length),p=s.vertexStart,m=s.vertexStart+s.vertexCount;for(let e=0;e<d.length;e++){let t=d[e];if(t<p||t>=m)throw AI(t,s);f[e]=t-p}let h=s.vertexStart*2,g=cI({positions:u,indices:f,uvs:i?i.slice(h,h+s.vertexCount*2):null,colors:a?a.slice(c,c+l):null},[f.length]);o.push(RI(PI(g),s,r(e.materialId,g.closed)))}return o}function RI(e,t,n){let r=new _h(e,n);return r.name=t.name,r.userData={source:`compute`,name:t.name,layer:t.layer??``,trackingKey:t.id,metadata:t.metadata??{}},r.castShadow=!0,r.receiveShadow=!0,r}async function zI(e,t,n){let{mergeByMaterial:r=!0,debug:i=!1,material:a}=t??{},{parseTime:o=0,perfStart:s=i?performance.now():0}=n??{};if(!e.compressedData)return[];let c=await UI(e.compressedData,{mergeByMaterial:r,debug:i,material:a,fallback:{materials:e.materials,groups:e.groups}});if(c)return c;let l=performance.now();return HI(rI(e.compressedData),{mergeByMaterial:r,debug:i,material:a,parseTime:o,decodeTime:performance.now()-l,perfStart:s,blobBytes:i?WI(e.compressedData):0,fallback:{materials:e.materials,groups:e.groups}})}var BI=!1;function VI(e,t){if(e||BI)return;let n=0;for(let e of t)n+=e.meshes.length;n<1e3||(BI=!0,Dx().warn(`Parsing ${n} meshes with mergeByMaterial: false — each becomes its own THREE object, and render cost scales with object count. Drop the option to merge by material (the default); per-object identity survives it via userData.members.`))}function HI(e,t){let{mergeByMaterial:n,debug:r,material:i,parseTime:a,decodeTime:o,perfStart:s,blobBytes:c,fallback:l}=t,u=e.metadata.materials??l?.materials??[],d=e.metadata.groups??l?.groups??[],f=!!(e.flags&1);kI(d,u.length,e.vertices.length/3,e.indices.length);let p=f?e.vertices:jI(e.vertices,e.origin,e.scale);if(r){let t=e.vertices.byteLength+e.indices.byteLength;Dx().debug(`Mesh Batch Stats:`),Dx().debug(` Materials: ${u.length} | Groups: ${d.length}`),Dx().debug(` Vertices: ${e.vertices.length/3} | Indices: ${e.indices.length}`),Dx().debug(` Format: ${f?`float32`:`int16 quantized`}`),Dx().debug(` Blob: ${(c/1024/1024).toFixed(2)} MB | Geometry on wire: ${(t/1024/1024).toFixed(2)} MB`)}VI(n,d);let m=performance.now(),h=wI(u,{vertexColors:e.colors!=null,hasUvs:e.uvs!=null,appearance:i}),g=[],_=n?d.flatMap(MI):d;for(let t of _)if(n&&t.meshes.length>1){let n=NI(t,p,e.indices,h,e.uvs,e.colors);g.push(n)}else{let n=LI(t,p,e.indices,h,e.uvs,e.colors);g.push(...n)}let v=performance.now()-m;if(r){let e=performance.now()-s;Dx().debug(`Performance:`),a>0&&Dx().debug(` Parse JSON: ${a.toFixed(2)}ms`),Dx().debug(` Decode binary: ${o.toFixed(2)}ms`),Dx().debug(` Create Meshes: ${v.toFixed(2)}ms`),Dx().debug(` Total: ${e.toFixed(2)}ms`)}return Promise.resolve(g)}async function UI(e,t){if(typeof Worker>`u`)return null;let n=iI(e),r=n.planarByteSplit?n.indexData.length/(n.uint16Indices?2:4):n.indexData.length;if(r/3<5e4)return null;let i=mI();if(!i)return null;let a=n.metadata.materials??t.fallback?.materials??[],o=n.metadata.groups??t.fallback?.groups??[];kI(o,a.length,n.vertexCount,r);let s=e=>({vertexStart:e.vertexStart,vertexCount:e.vertexCount,indexStart:e.indexStart,indexCount:e.indexCount}),c=[],l=[],u=t.mergeByMaterial?o.flatMap(MI):o;for(let e of u)if(t.mergeByMaterial&&e.meshes.length>1)c.push({kind:`merged`,windows:e.meshes.map(s)}),l.push({kind:`merged`,group:e});else for(let t of e.meshes)c.push({kind:`single`,windows:[s(t)]}),l.push({kind:`single`,group:e,meshMeta:t});let d=n.vertexData.slice(),f=n.indexData.slice(),p=[d.buffer,f.buffer];n.uvs&&p.push(n.uvs.buffer),n.colors&&p.push(n.colors.buffer);let m;try{m=await hI(i,{vertexData:d,isFloat32:n.isFloat32,deltaEncoded:n.deltaEncoded,planarByteSplit:n.planarByteSplit,uint16Indices:n.uint16Indices,origin:n.origin,scale:n.scale,indexData:f,uvs:n.uvs,colors:n.colors,jobs:c},p)}catch(e){return Dx().warn(`Mesh assembly worker failed; falling back to main-thread parse.`,e),null}if(m.length!==c.length)return null;let h=wI(a,{vertexColors:n.colors!=null,hasUvs:n.uvs!=null,appearance:t.material}),g=[];for(let e=0;e<m.length;e++){let t=m[e],n=l[e],r=PI(t),i=h(n.group.materialId,t.closed),a=n.kind===`merged`?II(r,n.group,i):RI(r,n.meshMeta,i);g.push(a)}return t.debug&&Dx().debug(`Mesh batch assembled off-thread: ${g.length} meshes, ${r/3} triangles`),g}function WI(e){return Math.floor(e.length*3/4)}var GI={Angstroms:1e-10,Nanometers:1e-9,Microns:1e-6,Millimeters:.001,Centimeters:.01,Decimeters:.1,Meters:1,Dekameters:10,Hectometers:100,Kilometers:1e3,Megameters:1e6,Gigameters:1e9,Microinches:2.54e-8,Mils:254e-7,Inches:.0254,Feet:.3048,Yards:.9144,Miles:1609.344,NauticalMiles:1852};function KI(e){let t=e.split(`.`);return t.includes(`Display`)||t.includes(`DisplayBatch`)}var qI=new Set;async function JI(e,t){let n=performance.now(),r=[],{allowScaling:i=!0,allowAutoPosition:a=!1,groundAxis:o=`z`,debug:s=!1,parsing:c={}}=t??{};try{return await XI(e,r,i?YI(e.modelunits):1,c,s),a&&eL(r,o),r}catch(e){throw tL(e,r),e}finally{s&&rL(n)}}function YI(e){let t=GI[e];return t===void 0?(qI.has(e)||(qI.add(e),Dx().warn(`Unknown Rhino model unit "${e}" — geometry will not be scaled (factor 1). Known units: ${Object.keys(GI).join(`, `)}.`)),1):t}async function XI(e,t,n,r,i){for(let a of e.values){let e=a.InnerTree;for(let a in e){let o=e[a];o&&await ZI(o,t,n,r,i)}}}async function ZI(e,t,n,r,i){for(let a of e){if(!KI(a.type))continue;let e={debug:!1,...r,mergeByMaterial:r.mergeByMaterial??!0},o=QI(a.data);if(!o){Dx().error(`Error parsing display batch envelope: invalid JSON`);continue}let s=await zI(o,e),c=OF(o.items),l=[...s,...c];if(n!==1)for(let e of l)e.scale.set(n,n,n);t.push(...l),i&&Dx().debug(`Extracted ${s.length} meshes and ${c.length} items from batch`)}}function QI(e){return typeof e==`string`?$I(e):e}function $I(e){try{return JSON.parse(e)}catch{return}}function eL(e,t){e.length!==0&&Nx(e,Px(e).min[t],t)}function tL(e,t){Dx().error(`An unexpected error occurred:`,e),nL(t)}function nL(e){for(let t of e){let e=t;e.geometry&&e.geometry.dispose(),e.material&&(Array.isArray(e.material)?e.material.forEach(e=>e.dispose()):e.material.dispose())}}function rL(e){let t=performance.now()-e;Dx().info(`Time to process meshes:`,`${t.toFixed(2)}ms`)}function iL(e){let t=MN(e),n=w(0);ce(()=>{let e=t.subscribe(()=>{i(n,V(n)+1)});return()=>{e(),t.dispose()}});function r(e){return V(n),e()}return{get values(){return r(()=>t.values)},get error(){return r(()=>t.error)},get computeErrors(){return r(()=>t.computeErrors)},get computeWarnings(){return r(()=>t.computeWarnings)},get diagnostics(){return r(()=>t.diagnostics)},get blocked(){return r(()=>t.blocked)},get awaitingAck(){return r(()=>t.awaitingAck)},get live(){return r(()=>t.live)},get phase(){return r(()=>t.phase)},abort:()=>t.abort(),get meshes(){return r(()=>t.meshes)},get lastResult(){return r(()=>t.lastResult)},get hasPendingChanges(){return r(()=>t.hasPendingChanges)},get hasNeverSolved(){return r(()=>t.hasNeverSolved)},get isSolving(){return r(()=>t.isSolving)},acknowledge:()=>t.acknowledge(),discard:()=>t.discard(),setValue:(e,n,r)=>t.setValue(e,n,r),solve:()=>t.solve(),ensureSolved:()=>t.ensureSolved(),onSettled:e=>t.onSettled(e),loadValues:e=>t.loadValues(e),rebuild:(e,n)=>t.rebuild(e,n),report:e=>t.report(e),reportError:e=>t.reportError(e),reportAborted:()=>t.reportAborted(),subscribe:e=>t.subscribe(e),notify:()=>t.notify(),dispose:()=>t.dispose()}}function aL(e){le(()=>{let t=_(be);t&&e.component&&t.register(e)}),ae(()=>{try{_(be)?.unregister(e.id)}catch{}})}var oL=e=>{if(!e)return``;let t=e.replace(/^#/,``);if(!/^[0-9A-Fa-f]{6}$/.test(t))return e;let n=parseInt(t.slice(0,2),16)/255,r=parseInt(t.slice(2,4),16)/255,i=parseInt(t.slice(4,6),16)/255,a=e=>e<=.04045?e/12.92:((e+.055)/1.055)**2.4,o=a(n),s=a(r),c=a(i),l=o*.4124564+s*.3575761+c*.1804375,u=o*.2126729+s*.7151522+c*.072175,d=o*.0193339+s*.119192+c*.9503041,f=Math.cbrt(.8189330101*l+.3618667424*u-.1288597137*d),p=Math.cbrt(.0329845436*l+.9293118715*u+.0361456387*d),m=Math.cbrt(.0482003018*l+.2643662691*u+.633851707*d),h=.2104542553*f+.793617785*p-.0040720468*m,g=1.9779984951*f-2.428592205*p+.4505937099*m,_=.0259040371*f+.7827717662*p-.808675766*m,v=Math.sqrt(g*g+_*_),y=Math.atan2(_,g)*180/Math.PI;return y<0&&(y+=360),`oklch(${h.toFixed(3)} ${v.toFixed(3)} ${y.toFixed(1)})`},sL=m(`<div class="min-h-100 p-8 flex items-center justify-center"><!></div>`),cL=m(`<div class="min-h-100 flex items-center justify-center"><!></div>`),lL=m(`<div class="contents"><!></div> <!>`,1);function uL(e,t){l(t,!0);let r=P(t,`definitionKey`,3,``),o=P(t,`showModeToggle`,3,!1),s=P(t,`panelActions`,19,()=>[]),c=P(t,`showSaveButton`,3,!0),u=P(t,`showLoadButton`,3,!0),d=P(t,`footerItemId`,3,`footer-item`),f=P(t,`footerItemPriority`,3,0),p=P(t,`viewerConfig`,19,()=>({}));wA(t.clientSlot);let m=Ke(()=>t.lang,()=>t.messages),g=y(()=>m.messages),_=y(()=>t.externalScopeKey||r()||t.schema?.id||``),v=LN(t.onSolve,()=>x,{solveDeadlineMs:t.solveDeadlineMs,meshPolicy:CF,onChange:()=>x.notify(),events:t.events}),x=iL({schema:t.schema,scopeKey:t.externalScopeKey||r()||t.schema?.id||``,driver:v}),S=w(!1),C=wM(()=>x.isSolving);ce(()=>x.onSettled(e=>t.onSolved?.(e))),ce(()=>{t.onReady?.({loadValues:e=>x.loadValues(e),getLastResult:()=>x.lastResult,getSession:()=>x})});let T=w(``),E=w(!0);ce(()=>{r(),de(()=>{V(E)?(i(E,!1),i(T,r()),t.schema?.instanceSolve!==!1&&x.solve()):V(T)!==r()&&(x.rebuild(t.schema,V(_)),i(T,r()))})});function k(e,t,n=!1){x.setValue(e,t,n)}function A(){x.solve()}aL({id:de(()=>d()),component:de(()=>t.footerComponent),getProps:()=>t.footerComponentProps?.()??{},position:`left`,priority:de(()=>f())});let j=y(()=>t.isEmbedded??Sn.url.searchParams.get(`embed`)===`true`),M=y(()=>t.primaryColor??Sn.url.searchParams.get(`primary`)),F=y(()=>V(M)?oL(V(M)):void 0),L=y(()=>t.title??(t.schema?.description||t.schema.name));var ee=lL(),R=K(ee);let te;var ne=N(R);{let e=y(()=>!V(j));Re(ne,{mode:`fixed`,get showHeader(){return V(e)},showFooter:!0,get title(){return V(L)},get showModeToggle(){return o()},get navItems(){return t.navItems},get homeUrl(){return t.homeUrl},get brandName(){return t.brandName},get copyrightName(){return t.copyrightName},get footerText(){return t.footerText},get header(){return t.header},get rightContent(){return t.headerRight},get errors(){return x.computeErrors},get warnings(){return x.computeWarnings},get diagnostics(){return x.diagnostics},children:(e,a)=>{var o=U(),l=K(o),d=e=>{var t=sL();eu(N(t),{type:`error`,size:`medium`,get message(){return x.error}}),O(t),h(e,t)},f=e=>{var t=cL();eu(N(t),{type:`loading`,size:`large`,get message(){return V(g).loadingSchema}}),O(t),h(e,t)},m=e=>{var a=U(),o=K(a);n(o,r,e=>{{let n=y(()=>!!t.schema.viewerOptions?.enableRemote),r=y(()=>t.schema.instanceSolve!==!1&&C.show);CM(e,{get schema(){return t.schema},get showViewer(){return V(n)},get meshes(){return x.meshes},get isSolving(){return x.isSolving},get showSolvingIndicator(){return V(r)},get hasPendingChanges(){return x.hasPendingChanges},get hasNeverSolved(){return x.hasNeverSolved},get values(){return x.values},get logoUrl(){return t.logo},get onViewerReady(){return t.onViewerReady},get viewerConfig(){return p()},get panelActions(){return s()},get showSaveButton(){return c()},get showLoadButton(){return u()},get onSaveState(){return t.onSaveState},get onListStates(){return t.onListStates},get presetLabels(){return t.presetLabels},onValueChange:k,oncalculate:A,ensureSolved:()=>x.ensureSolved(),onLoadValues:()=>x.loadValues({}),get isViewerFullscreen(){return V(S)},set isViewerFullscreen(e){i(S,e,!0)}})}}),h(e,a)};D(l,e=>{x.error?e(d):t.schema?e(m,-1):e(f,1)}),h(e,o)},$$slots:{default:!0}})}O(R),iP(I(R,2),{get live(){return x.live},get phase(){return x.phase},get diagnostics(){return x.diagnostics},onabort:()=>x.abort(),onconfirm:()=>x.acknowledge(),ondiscard:()=>x.discard()}),z(()=>te=a(R,``,te,{"--primary":V(F)})),h(e,ee),b()}var dL=m(`<div class="text-muted-foreground flex items-center gap-1.5 text-xs"><!> <span> </span></div>`);function fL(e,t){var n=U(),r=K(n),i=e=>{var n=dL(),r=N(n);Ct(r,{class:`h-3 w-3`});var i=I(r,2),a=q(i,!0);O(n),z(()=>T(a,t.label)),h(e,n)};D(r,e=>{t.label&&e(i)}),h(e,n)}var pL=m(`<span class="bg-warning/15 text-warning rounded-full px-2.5 py-1 font-mono text-[11px] font-medium tracking-wide uppercase"> </span>`),mL=m(`<span class="bg-warning/15 text-warning rounded-full px-2.5 py-1 font-mono text-[11px] font-medium tracking-wide uppercase">Draft preview</span>`),hL=m(`<!> <!>`,1);function gL(e,t){l(t,!0);let n=y(()=>Sn.data),r=y(()=>!!V(n).user);function i(){return!!t.data.schema.viewerOptions?.enableRemote}let a=de(()=>V(r))?zN({endpoint:`/api/v1/solve-events`,cancelEndpoint:e=>`/api/v1/solve/${e}/cancel`}):null;ce(()=>()=>a?.close());let o=UN({endpoint:`/api/v1/compute`,definitionUrl:()=>t.data.ghDefinition,inputs:()=>t.data.schema.inputs,outputs:()=>t.data.schema.outputs,channel:()=>t.data.channel===`draft`?`draft`:void 0,versionId:()=>t.data.versionId,streamId:()=>a?.streamId??null,meshes:i()?{extract:(e,t)=>JI(e,t)}:void 0,debug:!0});{let i=e=>{var t=U(),n=K(t),i=e=>{Ve(e,{})};D(n,e=>{V(r)&&e(i)}),h(e,t)},s=e=>{var i=hL(),a=K(i),o=e=>{var n=pL(),r=q(n);z(()=>T(r,`v${t.data.versionNumber??``} preview`)),h(e,n)},s=e=>{var t=mL();h(e,t)};D(a,e=>{t.data.versionId?e(o):t.data.channel===`draft`&&e(s,1)});var c=I(a,2),l=e=>{var t=hL(),r=K(t);ze(r,{});var i=I(r,2);{let e=y(()=>V(n).user?.platformPermissions??[]),t=y(()=>V(n).ctx?.orgPermissions??[]),r=y(()=>V(n).ctx?.mayHoldApiTokens);Ue(i,{get platformPermissions(){return V(e)},get orgPermissions(){return V(t)},get mayHoldApiTokens(){return V(r)}})}h(e,t)};D(c,e=>{V(r)&&e(l)}),h(e,i)},c=y(()=>t.data.schema?.name||t.data.schema.description),l=y(()=>t.data.orgLogoUrl??void 0),u=y(()=>V(n).branding?.name),d=y(()=>a??void 0);uL(e,{get schema(){return t.data.schema},get onSolve(){return o},get definitionKey(){return t.data.currentDefinition},get title(){return V(c)},get logo(){return V(l)},showModeToggle:!0,get brandName(){return V(u)},homeUrl:`/`,get solveDeadlineMs(){return t.data.solveDeadlineMs},get events(){return V(d)},get footerComponent(){return fL},footerComponentProps:()=>({label:t.data.serverLabel}),navItems:i,headerRight:s,$$slots:{navItems:!0,headerRight:!0}})}b()}export{_F as a,gL as component,pF as i,cF as n,lF as r,sF as t};
5668
+ #endif`)})}function DI(e,t){return new Tx(e,wx.VALIDATION_ERROR,{context:t})}function OI(e,t,n,r){for(let i of e){if(!Number.isInteger(i.materialId)||i.materialId<0||i.materialId>=t)throw DI(`Group materialId out of range of the materials array.`,{materialId:i.materialId,materialCount:t});for(let e of i.meshes){let t={vertexStart:e.vertexStart,vertexCount:e.vertexCount,indexStart:e.indexStart,indexCount:e.indexCount};for(let[n,r]of Object.entries(t))if(!Number.isInteger(r)||r<0)throw DI(`Mesh metadata field "${n}" must be a non-negative integer.`,{meshName:e.name,field:n,value:r});if(e.vertexStart+e.vertexCount>n)throw DI(`Mesh vertex window exceeds the batch vertex buffer.`,{meshName:e.name,vertexStart:e.vertexStart,vertexCount:e.vertexCount,totalVertexCount:n});if(e.indexStart+e.indexCount>r)throw DI(`Mesh index window exceeds the batch index buffer.`,{meshName:e.name,indexStart:e.indexStart,indexCount:e.indexCount,totalIndexCount:r})}}}function kI(e,t){return DI(`Index references a vertex outside its mesh's vertex window.`,{meshName:t.name,indexValue:e,vertexStart:t.vertexStart,vertexCount:t.vertexCount})}function AI(e,t,n){let r=new Float32Array(e.length),i=t[0],a=t[1],o=t[2],s=n[0],c=n[1],l=n[2];for(let t=0;t<e.length;t+=3)r[t]=i+(e[t]+32767)*s,r[t+1]=a+(e[t+1]+32767)*c,r[t+2]=o+(e[t+2]+32767)*l;return r}function jI(e){let t=new Map;for(let n of e.meshes){let e=n.layer??``,r=t.get(e);r||(r=[],t.set(e,r)),r.push(n)}return[...t.values()].map(t=>({materialId:e.materialId,meshes:t}))}function MI(e,t,n,r,i=null,a=null){let o=0,s=0;for(let t of e.meshes)o+=t.vertexCount,s+=t.indexCount;let c=new Float32Array(o*3),l=new Uint32Array(s),u=i?new Float32Array(o*2):null,d=a?new Uint8Array(o*3):null,f=0,p=0;for(let r of e.meshes){let e=r.vertexStart*3,o=r.vertexCount*3;if(c.set(t.subarray(e,e+o),f*3),u&&i){let e=r.vertexStart*2;u.set(i.subarray(e,e+r.vertexCount*2),f*2)}d&&a&&d.set(a.subarray(e,e+o),f*3);let s=n.subarray(r.indexStart,r.indexStart+r.indexCount),m=f-r.vertexStart,h=r.vertexStart,g=r.vertexStart+r.vertexCount;for(let e=0;e<s.length;e++){let t=s[e];if(t<h||t>=g)throw kI(t,r);l[p+e]=t+m}f+=r.vertexCount,p+=r.indexCount}let m=sI({positions:c,indices:l,uvs:u,colors:d},e.meshes.map(e=>e.indexCount));return FI(NI(m),e,r(e.materialId,m.closed))}function NI(e){let t=new Om;return t.setAttribute(`position`,new pm(e.positions,3)),t.setAttribute(`normal`,new pm(e.normals,3)),t.setIndex(new pm(e.indices,1)),e.uvs&&t.setAttribute(`uv`,new pm(e.uvs,2)),e.tangents&&t.setAttribute(`tangent`,new pm(e.tangents,4)),e.colors&&t.setAttribute(`color`,new pm(e.colors,3,!0)),t}function PI(e){let t=[],n=0;for(let r of e.meshes)t.push({trackingKey:r.id,name:r.name,layer:r.layer,metadata:r.metadata??{},indexStart:n,indexCount:r.indexCount}),n+=r.indexCount;return t}function FI(e,t,n){let r=new _h(e,n),i=t.meshes[0],a=t.meshes.map(e=>e.name).filter(e=>e&&e.length>0);return r.name=a.length>0?a[0]:`merged_material_${t.materialId}`,r.castShadow=!0,r.receiveShadow=!0,r.userData={source:`compute`,name:r.name,layer:i?.layer??``,metadata:i?.metadata??{},members:PI(t)},r}function II(e,t,n,r,i=null,a=null){let o=[];for(let s of e.meshes){let c=s.vertexStart*3,l=s.vertexCount*3,u=t.slice(c,c+l),d=n.subarray(s.indexStart,s.indexStart+s.indexCount),f=new Uint32Array(d.length),p=s.vertexStart,m=s.vertexStart+s.vertexCount;for(let e=0;e<d.length;e++){let t=d[e];if(t<p||t>=m)throw kI(t,s);f[e]=t-p}let h=s.vertexStart*2,g=sI({positions:u,indices:f,uvs:i?i.slice(h,h+s.vertexCount*2):null,colors:a?a.slice(c,c+l):null},[f.length]);o.push(LI(NI(g),s,r(e.materialId,g.closed)))}return o}function LI(e,t,n){let r=new _h(e,n);return r.name=t.name,r.userData={source:`compute`,name:t.name,layer:t.layer??``,trackingKey:t.id,metadata:t.metadata??{}},r.castShadow=!0,r.receiveShadow=!0,r}async function RI(e,t,n){let{mergeByMaterial:r=!0,debug:i=!1,material:a}=t??{},{parseTime:o=0,perfStart:s=i?performance.now():0}=n??{};if(!e.compressedData)return[];let c=await HI(e.compressedData,{mergeByMaterial:r,debug:i,material:a,fallback:{materials:e.materials,groups:e.groups}});if(c)return c;let l=performance.now();return VI(nI(e.compressedData),{mergeByMaterial:r,debug:i,material:a,parseTime:o,decodeTime:performance.now()-l,perfStart:s,blobBytes:i?UI(e.compressedData):0,fallback:{materials:e.materials,groups:e.groups}})}var zI=!1;function BI(e,t){if(e||zI)return;let n=0;for(let e of t)n+=e.meshes.length;n<1e3||(zI=!0,Dx().warn(`Parsing ${n} meshes with mergeByMaterial: false — each becomes its own THREE object, and render cost scales with object count. Drop the option to merge by material (the default); per-object identity survives it via userData.members.`))}function VI(e,t){let{mergeByMaterial:n,debug:r,material:i,parseTime:a,decodeTime:o,perfStart:s,blobBytes:c,fallback:l}=t,u=e.metadata.materials??l?.materials??[],d=e.metadata.groups??l?.groups??[],f=!!(e.flags&1);OI(d,u.length,e.vertices.length/3,e.indices.length);let p=f?e.vertices:AI(e.vertices,e.origin,e.scale);if(r){let t=e.vertices.byteLength+e.indices.byteLength;Dx().debug(`Mesh Batch Stats:`),Dx().debug(` Materials: ${u.length} | Groups: ${d.length}`),Dx().debug(` Vertices: ${e.vertices.length/3} | Indices: ${e.indices.length}`),Dx().debug(` Format: ${f?`float32`:`int16 quantized`}`),Dx().debug(` Blob: ${(c/1024/1024).toFixed(2)} MB | Geometry on wire: ${(t/1024/1024).toFixed(2)} MB`)}BI(n,d);let m=performance.now(),h=CI(u,{vertexColors:e.colors!=null,hasUvs:e.uvs!=null,appearance:i}),g=[],_=n?d.flatMap(jI):d;for(let t of _)if(n&&t.meshes.length>1){let n=MI(t,p,e.indices,h,e.uvs,e.colors);g.push(n)}else{let n=II(t,p,e.indices,h,e.uvs,e.colors);g.push(...n)}let v=performance.now()-m;if(r){let e=performance.now()-s;Dx().debug(`Performance:`),a>0&&Dx().debug(` Parse JSON: ${a.toFixed(2)}ms`),Dx().debug(` Decode binary: ${o.toFixed(2)}ms`),Dx().debug(` Create Meshes: ${v.toFixed(2)}ms`),Dx().debug(` Total: ${e.toFixed(2)}ms`)}return Promise.resolve(g)}async function HI(e,t){if(typeof Worker>`u`)return null;let n=rI(e),r=n.planarByteSplit?n.indexData.length/(n.uint16Indices?2:4):n.indexData.length;if(r/3<5e4)return null;let i=pI();if(!i)return null;let a=n.metadata.materials??t.fallback?.materials??[],o=n.metadata.groups??t.fallback?.groups??[];OI(o,a.length,n.vertexCount,r);let s=e=>({vertexStart:e.vertexStart,vertexCount:e.vertexCount,indexStart:e.indexStart,indexCount:e.indexCount}),c=[],l=[],u=t.mergeByMaterial?o.flatMap(jI):o;for(let e of u)if(t.mergeByMaterial&&e.meshes.length>1)c.push({kind:`merged`,windows:e.meshes.map(s)}),l.push({kind:`merged`,group:e});else for(let t of e.meshes)c.push({kind:`single`,windows:[s(t)]}),l.push({kind:`single`,group:e,meshMeta:t});let d=n.vertexData.slice(),f=n.indexData.slice(),p=[d.buffer,f.buffer];n.uvs&&p.push(n.uvs.buffer),n.colors&&p.push(n.colors.buffer);let m;try{m=await mI(i,{vertexData:d,isFloat32:n.isFloat32,deltaEncoded:n.deltaEncoded,planarByteSplit:n.planarByteSplit,uint16Indices:n.uint16Indices,origin:n.origin,scale:n.scale,indexData:f,uvs:n.uvs,colors:n.colors,jobs:c},p)}catch(e){return Dx().warn(`Mesh assembly worker failed; falling back to main-thread parse.`,e),null}if(m.length!==c.length)return null;let h=CI(a,{vertexColors:n.colors!=null,hasUvs:n.uvs!=null,appearance:t.material}),g=[];for(let e=0;e<m.length;e++){let t=m[e],n=l[e],r=NI(t),i=h(n.group.materialId,t.closed),a=n.kind===`merged`?FI(r,n.group,i):LI(r,n.meshMeta,i);g.push(a)}return t.debug&&Dx().debug(`Mesh batch assembled off-thread: ${g.length} meshes, ${r/3} triangles`),g}function UI(e){return Math.floor(e.length*3/4)}var WI={Angstroms:1e-10,Nanometers:1e-9,Microns:1e-6,Millimeters:.001,Centimeters:.01,Decimeters:.1,Meters:1,Dekameters:10,Hectometers:100,Kilometers:1e3,Megameters:1e6,Gigameters:1e9,Microinches:2.54e-8,Mils:254e-7,Inches:.0254,Feet:.3048,Yards:.9144,Miles:1609.344,NauticalMiles:1852};function GI(e){let t=e.split(`.`);return t.includes(`Display`)||t.includes(`DisplayBatch`)}var KI=new Set;async function qI(e,t){let n=performance.now(),r=[],{allowScaling:i=!0,allowAutoPosition:a=!1,groundAxis:o=`z`,debug:s=!1,parsing:c={}}=t??{};try{return await YI(e,r,i?JI(e.modelunits):1,c,s),a&&$I(r,o),r}catch(e){throw eL(e,r),e}finally{s&&nL(n)}}function JI(e){let t=WI[e];return t===void 0?(KI.has(e)||(KI.add(e),Dx().warn(`Unknown Rhino model unit "${e}" — geometry will not be scaled (factor 1). Known units: ${Object.keys(WI).join(`, `)}.`)),1):t}async function YI(e,t,n,r,i){for(let a of e.values){let e=a.InnerTree;for(let a in e){let o=e[a];o&&await XI(o,t,n,r,i)}}}async function XI(e,t,n,r,i){for(let a of e){if(!GI(a.type))continue;let e={debug:!1,...r,mergeByMaterial:r.mergeByMaterial??!0},o=ZI(a.data);if(!o){Dx().error(`Error parsing display batch envelope: invalid JSON`);continue}let s=await RI(o,e),c=DF(o.items),l=[...s,...c];if(n!==1)for(let e of l)e.scale.set(n,n,n);t.push(...l),i&&Dx().debug(`Extracted ${s.length} meshes and ${c.length} items from batch`)}}function ZI(e){return typeof e==`string`?QI(e):e}function QI(e){try{return JSON.parse(e)}catch{return}}function $I(e,t){e.length!==0&&Nx(e,Px(e).min[t],t)}function eL(e,t){Dx().error(`An unexpected error occurred:`,e),tL(t)}function tL(e){for(let t of e){let e=t;e.geometry&&e.geometry.dispose(),e.material&&(Array.isArray(e.material)?e.material.forEach(e=>e.dispose()):e.material.dispose())}}function nL(e){let t=performance.now()-e;Dx().info(`Time to process meshes:`,`${t.toFixed(2)}ms`)}function rL(e){let t=jN(e),n=w(0);ce(()=>{let e=t.subscribe(()=>{i(n,V(n)+1)});return()=>{e(),t.dispose()}});function r(e){return V(n),e()}return{get values(){return r(()=>t.values)},get error(){return r(()=>t.error)},get computeErrors(){return r(()=>t.computeErrors)},get computeWarnings(){return r(()=>t.computeWarnings)},get diagnostics(){return r(()=>t.diagnostics)},get blocked(){return r(()=>t.blocked)},get awaitingAck(){return r(()=>t.awaitingAck)},get live(){return r(()=>t.live)},get phase(){return r(()=>t.phase)},abort:()=>t.abort(),get meshes(){return r(()=>t.meshes)},get lastResult(){return r(()=>t.lastResult)},get hasPendingChanges(){return r(()=>t.hasPendingChanges)},get hasNeverSolved(){return r(()=>t.hasNeverSolved)},get isSolving(){return r(()=>t.isSolving)},acknowledge:()=>t.acknowledge(),discard:()=>t.discard(),setValue:(e,n,r)=>t.setValue(e,n,r),solve:()=>t.solve(),ensureSolved:()=>t.ensureSolved(),onSettled:e=>t.onSettled(e),loadValues:e=>t.loadValues(e),rebuild:(e,n)=>t.rebuild(e,n),report:e=>t.report(e),reportError:e=>t.reportError(e),reportAborted:()=>t.reportAborted(),subscribe:e=>t.subscribe(e),notify:()=>t.notify(),dispose:()=>t.dispose()}}function iL(e){le(()=>{let t=_(ye);t&&e.component&&t.register(e)}),ae(()=>{try{_(ye)?.unregister(e.id)}catch{}})}var aL=e=>{if(!e)return``;let t=e.replace(/^#/,``);if(!/^[0-9A-Fa-f]{6}$/.test(t))return e;let n=parseInt(t.slice(0,2),16)/255,r=parseInt(t.slice(2,4),16)/255,i=parseInt(t.slice(4,6),16)/255,a=e=>e<=.04045?e/12.92:((e+.055)/1.055)**2.4,o=a(n),s=a(r),c=a(i),l=o*.4124564+s*.3575761+c*.1804375,u=o*.2126729+s*.7151522+c*.072175,d=o*.0193339+s*.119192+c*.9503041,f=Math.cbrt(.8189330101*l+.3618667424*u-.1288597137*d),p=Math.cbrt(.0329845436*l+.9293118715*u+.0361456387*d),m=Math.cbrt(.0482003018*l+.2643662691*u+.633851707*d),h=.2104542553*f+.793617785*p-.0040720468*m,g=1.9779984951*f-2.428592205*p+.4505937099*m,_=.0259040371*f+.7827717662*p-.808675766*m,v=Math.sqrt(g*g+_*_),y=Math.atan2(_,g)*180/Math.PI;return y<0&&(y+=360),`oklch(${h.toFixed(3)} ${v.toFixed(3)} ${y.toFixed(1)})`},oL=m(`<div class="min-h-100 p-8 flex items-center justify-center"><!></div>`),sL=m(`<div class="min-h-100 flex items-center justify-center"><!></div>`),cL=m(`<div class="contents"><!></div> <!>`,1);function lL(e,t){l(t,!0);let r=P(t,`definitionKey`,3,``),o=P(t,`showModeToggle`,3,!1),s=P(t,`panelActions`,19,()=>[]),c=P(t,`showSaveButton`,3,!0),u=P(t,`showLoadButton`,3,!0),d=P(t,`footerItemId`,3,`footer-item`),f=P(t,`footerItemPriority`,3,0),p=P(t,`viewerConfig`,19,()=>({}));CA(t.clientSlot);let m=Ke(()=>t.lang,()=>t.messages),g=y(()=>m.messages),_=y(()=>t.externalScopeKey||r()||t.schema?.id||``),v=IN(t.onSolve,()=>x,{solveDeadlineMs:t.solveDeadlineMs,meshPolicy:SF,onChange:()=>x.notify(),events:t.events}),x=rL({schema:t.schema,scopeKey:t.externalScopeKey||r()||t.schema?.id||``,driver:v}),S=w(!1),C=CM(()=>x.isSolving);ce(()=>x.onSettled(e=>t.onSolved?.(e))),ce(()=>{t.onReady?.({loadValues:e=>x.loadValues(e),getLastResult:()=>x.lastResult,getSession:()=>x})});let T=w(``),E=w(!0);ce(()=>{r(),de(()=>{V(E)?(i(E,!1),i(T,r()),t.schema?.instanceSolve!==!1&&x.solve()):V(T)!==r()&&(x.rebuild(t.schema,V(_)),i(T,r()))})});function k(e,t,n=!1){x.setValue(e,t,n)}function A(){x.solve()}iL({id:de(()=>d()),component:de(()=>t.footerComponent),getProps:()=>t.footerComponentProps?.()??{},position:`left`,priority:de(()=>f())});let j=y(()=>t.isEmbedded??Sn.url.searchParams.get(`embed`)===`true`),M=y(()=>t.primaryColor??Sn.url.searchParams.get(`primary`)),F=y(()=>V(M)?aL(V(M)):void 0),L=y(()=>t.title??(t.schema?.description||t.schema.name));var ee=cL(),R=q(ee);let te;var ne=N(R);{let e=y(()=>!V(j));Re(ne,{mode:`fixed`,get showHeader(){return V(e)},showFooter:!0,get title(){return V(L)},get showModeToggle(){return o()},get navItems(){return t.navItems},get homeUrl(){return t.homeUrl},get brandName(){return t.brandName},get copyrightName(){return t.copyrightName},get footerText(){return t.footerText},get header(){return t.header},get rightContent(){return t.headerRight},get errors(){return x.computeErrors},get warnings(){return x.computeWarnings},get diagnostics(){return x.diagnostics},children:(e,a)=>{var o=U(),l=q(o),d=e=>{var t=oL();eu(N(t),{type:`error`,size:`medium`,get message(){return x.error}}),O(t),h(e,t)},f=e=>{var t=sL();eu(N(t),{type:`loading`,size:`large`,get message(){return V(g).loadingSchema}}),O(t),h(e,t)},m=e=>{var a=U(),o=q(a);n(o,r,e=>{{let n=y(()=>!!t.schema.viewerOptions?.enableRemote),r=y(()=>t.schema.instanceSolve!==!1&&C.show);SM(e,{get schema(){return t.schema},get showViewer(){return V(n)},get meshes(){return x.meshes},get isSolving(){return x.isSolving},get showSolvingIndicator(){return V(r)},get hasPendingChanges(){return x.hasPendingChanges},get hasNeverSolved(){return x.hasNeverSolved},get values(){return x.values},get logoUrl(){return t.logo},get onViewerReady(){return t.onViewerReady},get viewerConfig(){return p()},get panelActions(){return s()},get showSaveButton(){return c()},get showLoadButton(){return u()},get onSaveState(){return t.onSaveState},get onListStates(){return t.onListStates},get presetLabels(){return t.presetLabels},onValueChange:k,oncalculate:A,ensureSolved:()=>x.ensureSolved(),onLoadValues:()=>x.loadValues({}),get isViewerFullscreen(){return V(S)},set isViewerFullscreen(e){i(S,e,!0)}})}}),h(e,a)};D(l,e=>{x.error?e(d):t.schema?e(m,-1):e(f,1)}),h(e,o)},$$slots:{default:!0}})}O(R),rP(I(R,2),{get live(){return x.live},get phase(){return x.phase},get diagnostics(){return x.diagnostics},onabort:()=>x.abort(),onconfirm:()=>x.acknowledge(),ondiscard:()=>x.discard()}),z(()=>te=a(R,``,te,{"--primary":V(F)})),h(e,ee),b()}var uL=m(`<div class="text-muted-foreground flex items-center gap-1.5 text-xs"><!> <span> </span></div>`);function dL(e,t){var n=U(),r=q(n),i=e=>{var n=uL(),r=N(n);Ct(r,{class:`h-3 w-3`});var i=I(r,2),a=J(i,!0);O(n),z(()=>T(a,t.label)),h(e,n)};D(r,e=>{t.label&&e(i)}),h(e,n)}var fL=m(`<span class="bg-warning/15 text-warning shrink-0 rounded-full px-2.5 py-1 font-mono text-[11px] font-medium tracking-wide whitespace-nowrap uppercase"> <span class="hidden sm:inline">preview</span></span>`),pL=m(`<span class="bg-warning/15 text-warning shrink-0 rounded-full px-2.5 py-1 font-mono text-[11px] font-medium tracking-wide whitespace-nowrap uppercase">Draft<span class="hidden sm:inline">preview</span></span>`),mL=m(`<!> <!>`,1);function hL(e,t){l(t,!0);let n=y(()=>Sn.data),i=y(()=>!!V(n).user);function a(){return!!t.data.schema.viewerOptions?.enableRemote}let o=de(()=>V(i))?RN({endpoint:`/api/v1/solve-events`,cancelEndpoint:e=>`/api/v1/solve/${e}/cancel`}):null;ce(()=>()=>o?.close());let s=HN({endpoint:`/api/v1/compute`,definitionUrl:()=>t.data.ghDefinition,inputs:()=>t.data.schema.inputs,outputs:()=>t.data.schema.outputs,channel:()=>t.data.channel===`draft`?`draft`:void 0,versionId:()=>t.data.versionId,streamId:()=>o?.streamId??null,meshes:a()?{extract:(e,t)=>qI(e,t)}:void 0,debug:!0});{let a=e=>{var t=U(),n=q(t),r=e=>{Ve(e,{})};D(n,e=>{V(i)&&e(r)}),h(e,t)},c=e=>{var a=mL(),o=q(a),s=e=>{var n=fL(),i=N(n);r(),O(n),z(()=>T(i,`v${t.data.versionNumber??``}`)),h(e,n)},c=e=>{var t=pL();h(e,t)};D(o,e=>{t.data.versionId?e(s):t.data.channel===`draft`&&e(c,1)});var l=I(o,2),u=e=>{var t=mL(),r=q(t);ze(r,{});var i=I(r,2);{let e=y(()=>V(n).user?.platformPermissions??[]),t=y(()=>V(n).ctx?.orgPermissions??[]),r=y(()=>V(n).ctx?.mayHoldApiTokens);Ue(i,{get platformPermissions(){return V(e)},get orgPermissions(){return V(t)},get mayHoldApiTokens(){return V(r)}})}h(e,t)};D(l,e=>{V(i)&&e(u)}),h(e,a)},l=y(()=>t.data.schema?.name||t.data.schema.description),u=y(()=>t.data.orgLogoUrl??void 0),d=y(()=>V(n).branding?.name),f=y(()=>o??void 0);lL(e,{get schema(){return t.data.schema},get onSolve(){return s},get definitionKey(){return t.data.currentDefinition},get title(){return V(l)},get logo(){return V(u)},showModeToggle:!0,get brandName(){return V(d)},homeUrl:`/`,get solveDeadlineMs(){return t.data.solveDeadlineMs},get events(){return V(f)},get footerComponent(){return dL},footerComponentProps:()=>({label:t.data.serverLabel}),navItems:a,headerRight:c,$$slots:{navItems:!0,headerRight:!0}})}b()}export{gF as a,hL as component,fF as i,sF as n,cF as r,oF as t};