@selvajs/selva 4.7.0-beta.5 → 4.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (849) hide show
  1. package/build/client/_app/immutable/chunks/0M2DDHMf.js +2 -0
  2. package/build/client/_app/immutable/chunks/0M2DDHMf.js.br +0 -0
  3. package/build/client/_app/immutable/chunks/0M2DDHMf.js.gz +0 -0
  4. package/build/client/_app/immutable/chunks/BG2iwmg_.js +1 -0
  5. package/build/client/_app/immutable/chunks/BG2iwmg_.js.br +0 -0
  6. package/build/client/_app/immutable/chunks/BG2iwmg_.js.gz +0 -0
  7. package/build/client/_app/immutable/chunks/BHKDoXDm2.js +1 -0
  8. package/build/client/_app/immutable/chunks/BHKDoXDm2.js.br +2 -0
  9. package/build/client/_app/immutable/chunks/BHKDoXDm2.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/C-eh-BYT2.js +1 -0
  11. package/build/client/_app/immutable/chunks/C-eh-BYT2.js.br +0 -0
  12. package/build/client/_app/immutable/chunks/C-eh-BYT2.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/Cg_4c8n32.js +1 -0
  14. package/build/client/_app/immutable/chunks/Cg_4c8n32.js.br +0 -0
  15. package/build/client/_app/immutable/chunks/Cg_4c8n32.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/CuCezvy62.js +1 -0
  17. package/build/client/_app/immutable/chunks/CuCezvy62.js.br +0 -0
  18. package/build/client/_app/immutable/chunks/CuCezvy62.js.gz +0 -0
  19. package/build/client/_app/immutable/chunks/D9DFvnxj.js +1 -0
  20. package/build/client/_app/immutable/chunks/D9DFvnxj.js.br +3 -0
  21. package/build/client/_app/immutable/chunks/D9DFvnxj.js.gz +0 -0
  22. package/build/client/_app/immutable/chunks/DFsxVbse.js +1 -0
  23. package/build/client/_app/immutable/chunks/DFsxVbse.js.br +0 -0
  24. package/build/client/_app/immutable/chunks/DFsxVbse.js.gz +0 -0
  25. package/build/client/_app/immutable/chunks/DxuIu10f.js +5462 -0
  26. package/build/client/_app/immutable/chunks/DxuIu10f.js.br +0 -0
  27. package/build/client/_app/immutable/chunks/DxuIu10f.js.gz +0 -0
  28. package/build/client/_app/immutable/chunks/qU0FhiPD.js +2 -0
  29. package/build/client/_app/immutable/chunks/qU0FhiPD.js.br +0 -0
  30. package/build/client/_app/immutable/chunks/qU0FhiPD.js.gz +0 -0
  31. package/build/client/_app/immutable/entry/app.ChwO476H.js +2 -0
  32. package/build/client/_app/immutable/entry/app.ChwO476H.js.br +0 -0
  33. package/build/client/_app/immutable/entry/app.ChwO476H.js.gz +0 -0
  34. package/build/client/_app/immutable/entry/start.CUuVPYpM.js +1 -0
  35. package/build/client/_app/immutable/entry/start.CUuVPYpM.js.br +0 -0
  36. package/build/client/_app/immutable/entry/start.CUuVPYpM.js.gz +0 -0
  37. package/build/client/_app/immutable/nodes/1.BJ_E7jBc.js +1 -0
  38. package/build/client/_app/immutable/nodes/1.BJ_E7jBc.js.br +0 -0
  39. package/build/client/_app/immutable/nodes/1.BJ_E7jBc.js.gz +0 -0
  40. package/build/client/_app/immutable/nodes/11.DUk5QCcO.js +2 -0
  41. package/build/client/_app/immutable/nodes/11.DUk5QCcO.js.br +0 -0
  42. package/build/client/_app/immutable/nodes/11.DUk5QCcO.js.gz +0 -0
  43. package/build/client/_app/immutable/nodes/13.BuZd04Lo.js +2 -0
  44. package/build/client/_app/immutable/nodes/13.BuZd04Lo.js.br +0 -0
  45. package/build/client/_app/immutable/nodes/13.BuZd04Lo.js.gz +0 -0
  46. package/build/client/_app/immutable/nodes/14.BXK0gR3D.js +2 -0
  47. package/build/client/_app/immutable/nodes/14.BXK0gR3D.js.br +0 -0
  48. package/build/client/_app/immutable/nodes/14.BXK0gR3D.js.gz +0 -0
  49. package/build/client/_app/immutable/nodes/15.DQnCVxPm.js +21 -0
  50. package/build/client/_app/immutable/nodes/15.DQnCVxPm.js.br +0 -0
  51. package/build/client/_app/immutable/nodes/15.DQnCVxPm.js.gz +0 -0
  52. package/build/client/_app/immutable/nodes/16.SF5XHiBi.js +6 -0
  53. package/build/client/_app/immutable/nodes/16.SF5XHiBi.js.br +0 -0
  54. package/build/client/_app/immutable/nodes/16.SF5XHiBi.js.gz +0 -0
  55. package/build/client/_app/immutable/nodes/17.CkfBZYMU.js +2 -0
  56. package/build/client/_app/immutable/nodes/17.CkfBZYMU.js.br +0 -0
  57. package/build/client/_app/immutable/nodes/17.CkfBZYMU.js.gz +0 -0
  58. package/build/client/_app/immutable/nodes/19.lXobnwX1.js +2 -0
  59. package/build/client/_app/immutable/nodes/19.lXobnwX1.js.br +0 -0
  60. package/build/client/_app/immutable/nodes/19.lXobnwX1.js.gz +0 -0
  61. package/build/client/_app/immutable/nodes/2.CRHtzkzt.js +1 -0
  62. package/build/client/_app/immutable/nodes/2.CRHtzkzt.js.br +0 -0
  63. package/build/client/_app/immutable/nodes/2.CRHtzkzt.js.gz +0 -0
  64. package/build/client/_app/immutable/nodes/20.CzAIzrQM.js +12 -0
  65. package/build/client/_app/immutable/nodes/20.CzAIzrQM.js.br +0 -0
  66. package/build/client/_app/immutable/nodes/20.CzAIzrQM.js.gz +0 -0
  67. package/build/client/_app/immutable/nodes/21.x1LrYfez.js +6 -0
  68. package/build/client/_app/immutable/nodes/21.x1LrYfez.js.br +0 -0
  69. package/build/client/_app/immutable/nodes/21.x1LrYfez.js.gz +0 -0
  70. package/build/client/_app/immutable/nodes/23.BtInHilP.js +16 -0
  71. package/build/client/_app/immutable/nodes/23.BtInHilP.js.br +0 -0
  72. package/build/client/_app/immutable/nodes/23.BtInHilP.js.gz +0 -0
  73. package/build/client/_app/immutable/nodes/24.Dqy8AH_J.js +6 -0
  74. package/build/client/_app/immutable/nodes/24.Dqy8AH_J.js.br +0 -0
  75. package/build/client/_app/immutable/nodes/24.Dqy8AH_J.js.gz +0 -0
  76. package/build/client/_app/immutable/nodes/27.BiurRrzb.js +4 -0
  77. package/build/client/_app/immutable/nodes/27.BiurRrzb.js.br +0 -0
  78. package/build/client/_app/immutable/nodes/27.BiurRrzb.js.gz +0 -0
  79. package/build/client/_app/immutable/nodes/28.TVh72E_-.js +4 -0
  80. package/build/client/_app/immutable/nodes/28.TVh72E_-.js.br +0 -0
  81. package/build/client/_app/immutable/nodes/28.TVh72E_-.js.gz +0 -0
  82. package/build/client/_app/immutable/nodes/29.KA_Czrio.js +2 -0
  83. package/build/client/_app/immutable/nodes/29.KA_Czrio.js.br +0 -0
  84. package/build/client/_app/immutable/nodes/29.KA_Czrio.js.gz +0 -0
  85. package/build/client/_app/immutable/nodes/3.De6eJ76N.js +1 -0
  86. package/build/client/_app/immutable/nodes/3.De6eJ76N.js.br +0 -0
  87. package/build/client/_app/immutable/nodes/3.De6eJ76N.js.gz +0 -0
  88. package/build/client/_app/immutable/nodes/30.BDN5YXAl.js +2 -0
  89. package/build/client/_app/immutable/nodes/30.BDN5YXAl.js.br +0 -0
  90. package/build/client/_app/immutable/nodes/30.BDN5YXAl.js.gz +0 -0
  91. package/build/client/_app/immutable/nodes/5.OMz0FTZb.js +1 -0
  92. package/build/client/_app/immutable/nodes/5.OMz0FTZb.js.br +3 -0
  93. package/build/client/_app/immutable/nodes/5.OMz0FTZb.js.gz +0 -0
  94. package/build/client/_app/immutable/nodes/6.CXaFpK04.js +1 -0
  95. package/build/client/_app/immutable/nodes/6.CXaFpK04.js.br +0 -0
  96. package/build/client/_app/immutable/nodes/6.CXaFpK04.js.gz +0 -0
  97. package/build/client/_app/immutable/nodes/7.CYdy2UgN.js +1 -0
  98. package/build/client/_app/immutable/nodes/7.CYdy2UgN.js.br +0 -0
  99. package/build/client/_app/immutable/nodes/7.CYdy2UgN.js.gz +0 -0
  100. package/build/client/_app/immutable/nodes/8.Bd7w36bu.js +2 -0
  101. package/build/client/_app/immutable/nodes/8.Bd7w36bu.js.br +0 -0
  102. package/build/client/_app/immutable/nodes/8.Bd7w36bu.js.gz +0 -0
  103. package/build/client/_app/immutable/nodes/9.B4uZJGIZ.js +1 -0
  104. package/build/client/_app/immutable/nodes/9.B4uZJGIZ.js.br +0 -0
  105. package/build/client/_app/immutable/nodes/9.B4uZJGIZ.js.gz +0 -0
  106. package/build/client/_app/version.json +1 -1
  107. package/build/client/_app/version.json.br +0 -0
  108. package/build/client/_app/version.json.gz +0 -0
  109. package/build/handler.js +4 -4
  110. package/build/index.js +4 -4
  111. package/build/server/chunks/chunks/AppHeader.js-CCBy-F-z.js +281 -0
  112. package/build/server/chunks/chunks/AppHeader.js-CCBy-F-z.js.map +1 -0
  113. package/build/server/chunks/chunks/SideNav.js-BNI_NYXt.js +67 -0
  114. package/build/server/chunks/chunks/SideNav.js-BNI_NYXt.js.map +1 -0
  115. package/build/server/chunks/chunks/UserChip.js-CABWy9hQ.js +1163 -0
  116. package/build/server/chunks/chunks/UserChip.js-CABWy9hQ.js.map +1 -0
  117. package/build/server/chunks/chunks/access.server.js-55bmpUSo.js +453 -0
  118. package/build/server/chunks/chunks/access.server.js-55bmpUSo.js.map +1 -0
  119. package/build/server/chunks/chunks/access2.server.js-DOKxmHQB.js +20 -0
  120. package/build/server/chunks/chunks/access2.server.js-DOKxmHQB.js.map +1 -0
  121. package/build/server/chunks/chunks/admin-auth.server.js-BP5VABG_.js +180 -0
  122. package/build/server/chunks/chunks/admin-auth.server.js-BP5VABG_.js.map +1 -0
  123. package/build/server/chunks/chunks/admin-config.js-DgmGM6ot.js +3 -0
  124. package/build/server/chunks/chunks/admin-config.js-DgmGM6ot.js.map +1 -0
  125. package/build/server/chunks/chunks/api-errors.js-BdoYiwnt.js +141 -0
  126. package/build/server/chunks/chunks/api-errors.js-BdoYiwnt.js.map +1 -0
  127. package/build/server/chunks/chunks/auth-bootstrap.server.js-pwspdWCF.js +162 -0
  128. package/build/server/chunks/chunks/auth-bootstrap.server.js-pwspdWCF.js.map +1 -0
  129. package/build/server/chunks/chunks/auth.server.js-CiKOtWZ5.js +2 -0
  130. package/build/server/chunks/chunks/auth.server.js-CiKOtWZ5.js.map +1 -0
  131. package/build/server/chunks/chunks/bootHealth.server.js-s-jZ2KDW.js +91 -0
  132. package/build/server/chunks/chunks/bootHealth.server.js-s-jZ2KDW.js.map +1 -0
  133. package/build/server/chunks/chunks/chunk-N2WCSETE.js-CK2Q00_P.js +2953 -0
  134. package/build/server/chunks/chunks/chunk-N2WCSETE.js-CK2Q00_P.js.map +1 -0
  135. package/build/server/chunks/chunks/chunk-S3VUIIRE.js-CeBwYPAp.js +1502 -0
  136. package/build/server/chunks/chunks/chunk-S3VUIIRE.js-CeBwYPAp.js.map +1 -0
  137. package/build/server/chunks/chunks/client.js-ChMP-ADp.js +58 -0
  138. package/build/server/chunks/chunks/client.js-ChMP-ADp.js.map +1 -0
  139. package/build/server/chunks/chunks/clientCache.server.js-DOyqlBzg.js +195 -0
  140. package/build/server/chunks/chunks/clientCache.server.js-DOyqlBzg.js.map +1 -0
  141. package/build/server/chunks/chunks/compute.js-_N5R8pkI.js +747 -0
  142. package/build/server/chunks/chunks/compute.js-_N5R8pkI.js.map +1 -0
  143. package/build/server/chunks/chunks/computeLimits.js-Bv2Kbjk8.js +48 -0
  144. package/build/server/chunks/chunks/computeLimits.js-Bv2Kbjk8.js.map +1 -0
  145. package/build/server/chunks/chunks/evictChangedServers.js-BOiQY_IL.js +29 -0
  146. package/build/server/chunks/chunks/evictChangedServers.js-BOiQY_IL.js.map +1 -0
  147. package/build/server/chunks/chunks/forms.js-pYfsLUaH.js +2 -0
  148. package/build/server/chunks/chunks/forms.js-pYfsLUaH.js.map +1 -0
  149. package/build/server/chunks/chunks/internal.js-WBVEU67X.js.map +1 -1
  150. package/build/server/chunks/chunks/internal2.js-CRTtDh_a.js +224 -0
  151. package/build/server/chunks/chunks/internal2.js-CRTtDh_a.js.map +1 -0
  152. package/build/server/chunks/chunks/navigation.js-pYfsLUaH.js +2 -0
  153. package/build/server/chunks/chunks/navigation.js-pYfsLUaH.js.map +1 -0
  154. package/build/server/chunks/chunks/org-members.server.js-BlOWocal.js +35 -0
  155. package/build/server/chunks/chunks/org-members.server.js-BlOWocal.js.map +1 -0
  156. package/build/server/chunks/chunks/package.js-CzPJLFIP.js +76 -0
  157. package/build/server/chunks/chunks/package.js-CzPJLFIP.js.map +1 -0
  158. package/build/server/chunks/chunks/permissions.server.js-C-4T_yf-.js +15 -0
  159. package/build/server/chunks/chunks/permissions.server.js-C-4T_yf-.js.map +1 -0
  160. package/build/server/chunks/chunks/providers.server.js-BCmROUq1.js +6252 -0
  161. package/build/server/chunks/chunks/providers.server.js-BCmROUq1.js.map +1 -0
  162. package/build/server/chunks/chunks/resolve.server.js-ObCEn_tG.js +62 -0
  163. package/build/server/chunks/chunks/resolve.server.js-ObCEn_tG.js.map +1 -0
  164. package/build/server/chunks/chunks/selfUpdate.server.js-B0IhATul.js +152 -0
  165. package/build/server/chunks/chunks/selfUpdate.server.js-B0IhATul.js.map +1 -0
  166. package/build/server/chunks/chunks/state.js-CSskG5O4.js +64 -0
  167. package/build/server/chunks/chunks/state.js-CSskG5O4.js.map +1 -0
  168. package/build/server/chunks/chunks/stores.js-DHkf0lFO.js +35 -0
  169. package/build/server/chunks/chunks/stores.js-DHkf0lFO.js.map +1 -0
  170. package/build/server/chunks/chunks/utils2.js-V7yGq-Kd.js +62 -0
  171. package/build/server/chunks/chunks/utils2.js-V7yGq-Kd.js.map +1 -0
  172. package/build/server/chunks/chunks/visualization-HDBKPJGQ.js-CCyAXlVS.js +21 -0
  173. package/build/server/chunks/chunks/visualization-HDBKPJGQ.js-CCyAXlVS.js.map +1 -0
  174. package/build/server/chunks/entries/endpoints/admin/api/compute/_server.ts.js-ny6qg7b3.js +93 -0
  175. package/build/server/chunks/entries/endpoints/admin/api/compute/_server.ts.js-ny6qg7b3.js.map +1 -0
  176. package/build/server/chunks/entries/endpoints/admin/api/compute/actions/_server.ts.js-CIr-FMIO.js +53 -0
  177. package/build/server/chunks/entries/endpoints/admin/api/compute/actions/_server.ts.js-CIr-FMIO.js.map +1 -0
  178. package/build/server/chunks/entries/endpoints/admin/api/compute/status/_server.ts.js-h7EKtq-V.js +79 -0
  179. package/build/server/chunks/entries/endpoints/admin/api/compute/status/_server.ts.js-h7EKtq-V.js.map +1 -0
  180. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/_server.ts.js-DDyPMdU4.js +50 -0
  181. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/_server.ts.js-DDyPMdU4.js.map +1 -0
  182. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/assets/_kind_/_server.ts.js-Bre1-6Si.js +86 -0
  183. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/assets/_kind_/_server.ts.js-Bre1-6Si.js.map +1 -0
  184. package/build/server/chunks/entries/endpoints/admin/api/orgs/_server.ts.js-BAGRN9q-.js +72 -0
  185. package/build/server/chunks/entries/endpoints/admin/api/orgs/_server.ts.js-BAGRN9q-.js.map +1 -0
  186. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/_server.ts.js-DjIbDzDD.js +74 -0
  187. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/_server.ts.js-DjIbDzDD.js.map +1 -0
  188. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/_server.ts.js-BV9YEqFI.js +34 -0
  189. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/_server.ts.js-BV9YEqFI.js.map +1 -0
  190. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_server.ts.js-xF_08qt2.js +71 -0
  191. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_server.ts.js-xF_08qt2.js.map +1 -0
  192. package/build/server/chunks/entries/endpoints/admin/api/projects/_server.ts.js-CS6KQL0A.js +103 -0
  193. package/build/server/chunks/entries/endpoints/admin/api/projects/_server.ts.js-CS6KQL0A.js.map +1 -0
  194. package/build/server/chunks/entries/endpoints/admin/api/system/health/_server.ts.js-VuOYrejT.js +208 -0
  195. package/build/server/chunks/entries/endpoints/admin/api/system/health/_server.ts.js-VuOYrejT.js.map +1 -0
  196. package/build/server/chunks/entries/endpoints/admin/api/system/throughput/_server.ts.js-V5NRs6as.js +90 -0
  197. package/build/server/chunks/entries/endpoints/admin/api/system/throughput/_server.ts.js-V5NRs6as.js.map +1 -0
  198. package/build/server/chunks/entries/endpoints/admin/api/system/update/_server.ts.js-_SPujsJW.js +403 -0
  199. package/build/server/chunks/entries/endpoints/admin/api/system/update/_server.ts.js-_SPujsJW.js.map +1 -0
  200. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/_server.ts.js-CYIpAhPx.js +76 -0
  201. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/_server.ts.js-CYIpAhPx.js.map +1 -0
  202. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/disable/_server.ts.js--FE-5A1u.js +46 -0
  203. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/disable/_server.ts.js--FE-5A1u.js.map +1 -0
  204. package/build/server/chunks/entries/endpoints/admin/api/users/_server.ts.js-DYFX69rD.js +86 -0
  205. package/build/server/chunks/entries/endpoints/admin/api/users/_server.ts.js-DYFX69rD.js.map +1 -0
  206. package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-Dzn1VE28.js +0 -0
  207. package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-Dzn1VE28.js.map +1 -0
  208. package/build/server/chunks/entries/endpoints/api/compute/schema/_server.ts.js-CEfiTeNA.js +68 -0
  209. package/build/server/chunks/entries/endpoints/api/compute/schema/_server.ts.js-CEfiTeNA.js.map +1 -0
  210. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/_server.ts.js-2okm_O3E.js +75 -0
  211. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/_server.ts.js-2okm_O3E.js.map +1 -0
  212. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/_server.ts.js-BQGJqa_y.js +46 -0
  213. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/_server.ts.js-BQGJqa_y.js.map +1 -0
  214. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_server.ts.js-BxSN3roq.js +44 -0
  215. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_server.ts.js-BxSN3roq.js.map +1 -0
  216. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/publish/_server.ts.js-BaDepDiY.js +40 -0
  217. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/publish/_server.ts.js-BaDepDiY.js.map +1 -0
  218. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_linkId_/_server.ts.js-BBxUhG6I.js +46 -0
  219. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_linkId_/_server.ts.js-BBxUhG6I.js.map +1 -0
  220. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_server.ts.js-B2anGcET.js +84 -0
  221. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_server.ts.js-B2anGcET.js.map +1 -0
  222. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_server.ts.js-CxxJA6un.js +47 -0
  223. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_server.ts.js-CxxJA6un.js.map +1 -0
  224. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_versionId_/_server.ts.js-DbJbMiPZ.js +40 -0
  225. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_versionId_/_server.ts.js-DbJbMiPZ.js.map +1 -0
  226. package/build/server/chunks/entries/endpoints/api/definitions/_server.ts.js-Dojg7QIG.js +94 -0
  227. package/build/server/chunks/entries/endpoints/api/definitions/_server.ts.js-Dojg7QIG.js.map +1 -0
  228. package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-B74eCnn7.js +59 -0
  229. package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-B74eCnn7.js.map +1 -0
  230. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-BzclyMf8.js +89 -0
  231. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-BzclyMf8.js.map +1 -0
  232. package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-A00t9oxG.js +56 -0
  233. package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-A00t9oxG.js.map +1 -0
  234. package/build/server/chunks/entries/endpoints/api/invites/_id_/_server.ts.js-D_xEGLcw.js +49 -0
  235. package/build/server/chunks/entries/endpoints/api/invites/_id_/_server.ts.js-D_xEGLcw.js.map +1 -0
  236. package/build/server/chunks/entries/endpoints/api/invites/_server.ts.js-Dgx1PidW.js +77 -0
  237. package/build/server/chunks/entries/endpoints/api/invites/_server.ts.js-Dgx1PidW.js.map +1 -0
  238. package/build/server/chunks/entries/endpoints/api/me/starred/_guid_/_server.ts.js-B__-qCZA.js +45 -0
  239. package/build/server/chunks/entries/endpoints/api/me/starred/_guid_/_server.ts.js-B__-qCZA.js.map +1 -0
  240. package/build/server/chunks/entries/endpoints/api/org/compute/_server.ts.js-BWqlr7Hd.js +110 -0
  241. package/build/server/chunks/entries/endpoints/api/org/compute/_server.ts.js-BWqlr7Hd.js.map +1 -0
  242. package/build/server/chunks/entries/endpoints/api/orgs/_orgId_/members/_userId_/_server.ts.js-B3QCGoJy.js +79 -0
  243. package/build/server/chunks/entries/endpoints/api/orgs/_orgId_/members/_userId_/_server.ts.js-B3QCGoJy.js.map +1 -0
  244. package/build/server/chunks/entries/endpoints/api/projects/_id_/_server.ts.js-6F-0PFlm.js +71 -0
  245. package/build/server/chunks/entries/endpoints/api/projects/_id_/_server.ts.js-6F-0PFlm.js.map +1 -0
  246. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_server.ts.js-BFmaq97W.js +65 -0
  247. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_server.ts.js-BFmaq97W.js.map +1 -0
  248. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_userId_/_server.ts.js-DTlokUo_.js +64 -0
  249. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_userId_/_server.ts.js-DTlokUo_.js.map +1 -0
  250. package/build/server/chunks/entries/endpoints/api/projects/_id_/reclaim/_server.ts.js-BvqrCqZV.js +48 -0
  251. package/build/server/chunks/entries/endpoints/api/projects/_id_/reclaim/_server.ts.js-BvqrCqZV.js.map +1 -0
  252. package/build/server/chunks/entries/endpoints/api/projects/_server.ts.js-leU_84Nx.js +85 -0
  253. package/build/server/chunks/entries/endpoints/api/projects/_server.ts.js-leU_84Nx.js.map +1 -0
  254. package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-CW4BLamb.js +48 -0
  255. package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-CW4BLamb.js.map +1 -0
  256. package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-Cn9baLry.js +52 -0
  257. package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-Cn9baLry.js.map +1 -0
  258. package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-YxiD2iVO.js +51 -0
  259. package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-YxiD2iVO.js.map +1 -0
  260. package/build/server/chunks/entries/hooks.server.js-bN3sgEaQ.js +341 -0
  261. package/build/server/chunks/entries/hooks.server.js-bN3sgEaQ.js.map +1 -0
  262. package/build/server/chunks/entries/pages/_error.svelte.js-BPgus5uY.js +35 -0
  263. package/build/server/chunks/entries/pages/_error.svelte.js-BPgus5uY.js.map +1 -0
  264. package/build/server/chunks/entries/pages/_layout.server.ts.js-i5sNzfgp.js +34 -0
  265. package/build/server/chunks/entries/pages/_layout.server.ts.js-i5sNzfgp.js.map +1 -0
  266. package/build/server/chunks/entries/pages/_page.svelte.js-C3CdYJ8Y.js +76 -0
  267. package/build/server/chunks/entries/pages/_page.svelte.js-C3CdYJ8Y.js.map +1 -0
  268. package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-D92N4MfM.js +109 -0
  269. package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-D92N4MfM.js.map +1 -0
  270. package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-Bw4mDBgj.js +148 -0
  271. package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-Bw4mDBgj.js.map +1 -0
  272. package/build/server/chunks/entries/pages/admin/_error.svelte.js-DiYtKa0_.js +36 -0
  273. package/build/server/chunks/entries/pages/admin/_error.svelte.js-DiYtKa0_.js.map +1 -0
  274. package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-CfMnIH9f.js +31 -0
  275. package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-CfMnIH9f.js.map +1 -0
  276. package/build/server/chunks/entries/pages/admin/_layout.svelte.js-D_-AZdM0.js +121 -0
  277. package/build/server/chunks/entries/pages/admin/_layout.svelte.js-D_-AZdM0.js.map +1 -0
  278. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-CmMD4AwU.js +75 -0
  279. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-CmMD4AwU.js.map +1 -0
  280. package/build/server/chunks/entries/pages/admin/_page.svelte.js-Dn97wpia.js +359 -0
  281. package/build/server/chunks/entries/pages/admin/_page.svelte.js-Dn97wpia.js.map +1 -0
  282. package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-CHrfPCF5.js +245 -0
  283. package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-CHrfPCF5.js.map +1 -0
  284. package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-CuXWmYGp.js +45 -0
  285. package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-CuXWmYGp.js.map +1 -0
  286. package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-3VheJpBQ.js +612 -0
  287. package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-3VheJpBQ.js.map +1 -0
  288. package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-DY5J4mc_.js +35 -0
  289. package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-DY5J4mc_.js.map +1 -0
  290. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-B2axmFCj.js +86 -0
  291. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-B2axmFCj.js.map +1 -0
  292. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-DonYN1Ds.js +616 -0
  293. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-DonYN1Ds.js.map +1 -0
  294. package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-BTxvr6mI.js +42 -0
  295. package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-BTxvr6mI.js.map +1 -0
  296. package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-BM5A0rkN.js +282 -0
  297. package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-BM5A0rkN.js.map +1 -0
  298. package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-ClTMrj80.js +79 -0
  299. package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-ClTMrj80.js.map +1 -0
  300. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-DR1hipue.js +1363 -0
  301. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-DR1hipue.js.map +1 -0
  302. package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-DYzUydL1.js +70 -0
  303. package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-DYzUydL1.js.map +1 -0
  304. package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-BucX_9sF.js +681 -0
  305. package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-BucX_9sF.js.map +1 -0
  306. package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-Dx3cCf3T.js +62 -0
  307. package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-Dx3cCf3T.js.map +1 -0
  308. package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-DnfZ3Mmf.js +62 -0
  309. package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-DnfZ3Mmf.js.map +1 -0
  310. package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-DGYJ32pv.js +124 -0
  311. package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-DGYJ32pv.js.map +1 -0
  312. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-DHN53ehq.js +12096 -0
  313. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-DHN53ehq.js.map +1 -0
  314. package/build/server/chunks/entries/pages/library/_page.server.ts.js-BjiPxbmt.js +73 -0
  315. package/build/server/chunks/entries/pages/library/_page.server.ts.js-BjiPxbmt.js.map +1 -0
  316. package/build/server/chunks/entries/pages/library/_page.svelte.js-1gntWlkk.js +328 -0
  317. package/build/server/chunks/entries/pages/library/_page.svelte.js-1gntWlkk.js.map +1 -0
  318. package/build/server/chunks/entries/pages/login/_page.server.ts.js-DMGOwB2E.js +76 -0
  319. package/build/server/chunks/entries/pages/login/_page.server.ts.js-DMGOwB2E.js.map +1 -0
  320. package/build/server/chunks/entries/pages/login/_page.svelte.js-CQqtzw2V.js +256 -0
  321. package/build/server/chunks/entries/pages/login/_page.svelte.js-CQqtzw2V.js.map +1 -0
  322. package/build/server/chunks/entries/pages/logout/_page.server.ts.js-BzJqFWUU.js +16 -0
  323. package/build/server/chunks/entries/pages/logout/_page.server.ts.js-BzJqFWUU.js.map +1 -0
  324. package/build/server/chunks/entries/pages/projects/_layout.svelte.js-bZZHqRUq.js +49 -0
  325. package/build/server/chunks/entries/pages/projects/_layout.svelte.js-bZZHqRUq.js.map +1 -0
  326. package/build/server/chunks/entries/pages/projects/_page.server.ts.js-CGAQADjp.js +101 -0
  327. package/build/server/chunks/entries/pages/projects/_page.server.ts.js-CGAQADjp.js.map +1 -0
  328. package/build/server/chunks/entries/pages/projects/_page.svelte.js-DuYt1pGa.js +3745 -0
  329. package/build/server/chunks/entries/pages/projects/_page.svelte.js-DuYt1pGa.js.map +1 -0
  330. package/build/server/chunks/entries/pages/setup/_page.server.ts.js-Cht_e3W1.js +113 -0
  331. package/build/server/chunks/entries/pages/setup/_page.server.ts.js-Cht_e3W1.js.map +1 -0
  332. package/build/server/chunks/entries/pages/setup/_page.svelte.js-CkRPD2-y.js +321 -0
  333. package/build/server/chunks/entries/pages/setup/_page.svelte.js-CkRPD2-y.js.map +1 -0
  334. package/build/server/chunks/entries/pages/team/_layout.server.ts.js-C6ydG0ba.js +28 -0
  335. package/build/server/chunks/entries/pages/team/_layout.server.ts.js-C6ydG0ba.js.map +1 -0
  336. package/build/server/chunks/entries/pages/team/_layout.svelte.js-C10q4GW6.js +162 -0
  337. package/build/server/chunks/entries/pages/team/_layout.svelte.js-C10q4GW6.js.map +1 -0
  338. package/build/server/chunks/entries/pages/team/_page.server.ts.js-Dm0BcY_1.js +35 -0
  339. package/build/server/chunks/entries/pages/team/_page.server.ts.js-Dm0BcY_1.js.map +1 -0
  340. package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-B7_0-uNx.js +42 -0
  341. package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-B7_0-uNx.js.map +1 -0
  342. package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-CSfa36i0.js +593 -0
  343. package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-CSfa36i0.js.map +1 -0
  344. package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-B1J9PbcB.js +58 -0
  345. package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-B1J9PbcB.js.map +1 -0
  346. package/build/server/chunks/entries/pages/team/members/_page.svelte.js-ByLm7nMt.js +539 -0
  347. package/build/server/chunks/entries/pages/team/members/_page.svelte.js-ByLm7nMt.js.map +1 -0
  348. package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-DwfdGrm_.js +42 -0
  349. package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-DwfdGrm_.js.map +1 -0
  350. package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-HSAAn-DI.js +436 -0
  351. package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-HSAAn-DI.js.map +1 -0
  352. package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-CQt9n8zT.js +50 -0
  353. package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-CQt9n8zT.js.map +1 -0
  354. package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-C8udTojx.js +262 -0
  355. package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-C8udTojx.js.map +1 -0
  356. package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-D3fQdI4F.js +32 -0
  357. package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-D3fQdI4F.js.map +1 -0
  358. package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-Wx1gYCuo.js +16 -0
  359. package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-Wx1gYCuo.js.map +1 -0
  360. package/build/server/chunks/handler-C_oBT0th.js +1206 -0
  361. package/build/server/chunks/handler-C_oBT0th.js.map +1 -0
  362. package/build/server/chunks/index.js-B-RhTrwV.js +3747 -0
  363. package/build/server/chunks/index.js-B-RhTrwV.js.map +1 -0
  364. package/build/server/chunks/manifest.js-DbaT8xLo.js +548 -0
  365. package/build/server/chunks/manifest.js-DbaT8xLo.js.map +1 -0
  366. package/build/server/chunks/nodes/0.js-CEpLefNw.js +25 -0
  367. package/build/server/chunks/nodes/0.js-CEpLefNw.js.map +1 -0
  368. package/build/server/chunks/nodes/1.js-DgRzBm1_.js +9 -0
  369. package/build/server/chunks/nodes/1.js-DgRzBm1_.js.map +1 -0
  370. package/build/server/chunks/nodes/10.js-DdhhLQJt.js +27 -0
  371. package/build/server/chunks/nodes/10.js-DdhhLQJt.js.map +1 -0
  372. package/build/server/chunks/nodes/11.js-Dn1bMnHV.js +28 -0
  373. package/build/server/chunks/nodes/11.js-Dn1bMnHV.js.map +1 -0
  374. package/build/server/chunks/nodes/12.js-pdOO2q2s.js +26 -0
  375. package/build/server/chunks/nodes/12.js-pdOO2q2s.js.map +1 -0
  376. package/build/server/chunks/nodes/13.js-D0HebxbI.js +26 -0
  377. package/build/server/chunks/nodes/13.js-D0HebxbI.js.map +1 -0
  378. package/build/server/chunks/nodes/14.js-CqSx1wax.js +26 -0
  379. package/build/server/chunks/nodes/14.js-CqSx1wax.js.map +1 -0
  380. package/build/server/chunks/nodes/15.js-CVKsi7kp.js +38 -0
  381. package/build/server/chunks/nodes/15.js-CVKsi7kp.js.map +1 -0
  382. package/build/server/chunks/nodes/16.js-Q_Bu1thc.js +29 -0
  383. package/build/server/chunks/nodes/16.js-Q_Bu1thc.js.map +1 -0
  384. package/build/server/chunks/nodes/17.js-CZ8hiAKX.js +9 -0
  385. package/build/server/chunks/nodes/17.js-CZ8hiAKX.js.map +1 -0
  386. package/build/server/chunks/nodes/18.js-7XdBdlyl.js +34 -0
  387. package/build/server/chunks/nodes/18.js-7XdBdlyl.js.map +1 -0
  388. package/build/server/chunks/nodes/19.js--QTqW8Rg.js +27 -0
  389. package/build/server/chunks/nodes/19.js--QTqW8Rg.js.map +1 -0
  390. package/build/server/chunks/nodes/2.js-DlRr_y1E.js +27 -0
  391. package/build/server/chunks/nodes/2.js-DlRr_y1E.js.map +1 -0
  392. package/build/server/chunks/nodes/20.js-DuurViiQ.js +40 -0
  393. package/build/server/chunks/nodes/20.js-DuurViiQ.js.map +1 -0
  394. package/build/server/chunks/nodes/21.js-DLPsGBUe.js +34 -0
  395. package/build/server/chunks/nodes/21.js-DLPsGBUe.js.map +1 -0
  396. package/build/server/chunks/nodes/22.js-iFX0FYlU.js +24 -0
  397. package/build/server/chunks/nodes/22.js-iFX0FYlU.js.map +1 -0
  398. package/build/server/chunks/nodes/23.js-DeF7i6MK.js +28 -0
  399. package/build/server/chunks/nodes/23.js-DeF7i6MK.js.map +1 -0
  400. package/build/server/chunks/nodes/24.js-IGhSaU-_.js +34 -0
  401. package/build/server/chunks/nodes/24.js-IGhSaU-_.js.map +1 -0
  402. package/build/server/chunks/nodes/25.js-DfgGSsw1.js +26 -0
  403. package/build/server/chunks/nodes/25.js-DfgGSsw1.js.map +1 -0
  404. package/build/server/chunks/nodes/27.js-C5yOaHre.js +27 -0
  405. package/build/server/chunks/nodes/27.js-C5yOaHre.js.map +1 -0
  406. package/build/server/chunks/nodes/28.js-DRt6k5eX.js +26 -0
  407. package/build/server/chunks/nodes/28.js-DRt6k5eX.js.map +1 -0
  408. package/build/server/chunks/nodes/29.js-BpciAAsH.js +26 -0
  409. package/build/server/chunks/nodes/29.js-BpciAAsH.js.map +1 -0
  410. package/build/server/chunks/nodes/3.js-D2dw1aIG.js +9 -0
  411. package/build/server/chunks/nodes/3.js-D2dw1aIG.js.map +1 -0
  412. package/build/server/chunks/nodes/30.js-B19f3CLv.js +26 -0
  413. package/build/server/chunks/nodes/30.js-B19f3CLv.js.map +1 -0
  414. package/build/server/chunks/nodes/31.js-DIaImYmw.js +26 -0
  415. package/build/server/chunks/nodes/31.js-DIaImYmw.js.map +1 -0
  416. package/build/server/chunks/nodes/32.js-Btz0fZDj.js +26 -0
  417. package/build/server/chunks/nodes/32.js-Btz0fZDj.js.map +1 -0
  418. package/build/server/chunks/nodes/5.js-BjxuAVp4.js +15 -0
  419. package/build/server/chunks/nodes/5.js-BjxuAVp4.js.map +1 -0
  420. package/build/server/chunks/nodes/6.js-BqjMGg59.js +26 -0
  421. package/build/server/chunks/nodes/6.js-BqjMGg59.js.map +1 -0
  422. package/build/server/chunks/nodes/7.js-BLQSVoBK.js +12 -0
  423. package/build/server/chunks/nodes/7.js-BLQSVoBK.js.map +1 -0
  424. package/build/server/chunks/nodes/8.js-BEznbukO.js +35 -0
  425. package/build/server/chunks/nodes/8.js-BEznbukO.js.map +1 -0
  426. package/build/server/chunks/nodes/9.js-yf_0hC1V.js +26 -0
  427. package/build/server/chunks/nodes/9.js-yf_0hC1V.js.map +1 -0
  428. package/package.json +11 -11
  429. package/build/client/_app/immutable/chunks/2OVL58yC2.js +0 -1
  430. package/build/client/_app/immutable/chunks/2OVL58yC2.js.br +0 -0
  431. package/build/client/_app/immutable/chunks/2OVL58yC2.js.gz +0 -0
  432. package/build/client/_app/immutable/chunks/BPtz4qQZ2.js +0 -1
  433. package/build/client/_app/immutable/chunks/BPtz4qQZ2.js.br +0 -0
  434. package/build/client/_app/immutable/chunks/BPtz4qQZ2.js.gz +0 -0
  435. package/build/client/_app/immutable/chunks/BdRVK1vu.js +0 -2
  436. package/build/client/_app/immutable/chunks/BdRVK1vu.js.br +0 -0
  437. package/build/client/_app/immutable/chunks/BdRVK1vu.js.gz +0 -0
  438. package/build/client/_app/immutable/chunks/DJcPjHsg.js +0 -1
  439. package/build/client/_app/immutable/chunks/DJcPjHsg.js.br +0 -0
  440. package/build/client/_app/immutable/chunks/DJcPjHsg.js.gz +0 -0
  441. package/build/client/_app/immutable/chunks/DXTlR_fj.js +0 -5462
  442. package/build/client/_app/immutable/chunks/DXTlR_fj.js.br +0 -0
  443. package/build/client/_app/immutable/chunks/DXTlR_fj.js.gz +0 -0
  444. package/build/client/_app/immutable/chunks/UkolJKa32.js +0 -1
  445. package/build/client/_app/immutable/chunks/UkolJKa32.js.br +0 -2
  446. package/build/client/_app/immutable/chunks/UkolJKa32.js.gz +0 -0
  447. package/build/client/_app/immutable/chunks/baw9jva62.js +0 -1
  448. package/build/client/_app/immutable/chunks/baw9jva62.js.br +0 -0
  449. package/build/client/_app/immutable/chunks/baw9jva62.js.gz +0 -0
  450. package/build/client/_app/immutable/chunks/e_P2-3vc.js +0 -2
  451. package/build/client/_app/immutable/chunks/e_P2-3vc.js.br +0 -0
  452. package/build/client/_app/immutable/chunks/e_P2-3vc.js.gz +0 -0
  453. package/build/client/_app/immutable/chunks/fPi7CIcX.js +0 -1
  454. package/build/client/_app/immutable/chunks/fPi7CIcX.js.br +0 -0
  455. package/build/client/_app/immutable/chunks/fPi7CIcX.js.gz +0 -0
  456. package/build/client/_app/immutable/chunks/kf9gY1So.js +0 -1
  457. package/build/client/_app/immutable/chunks/kf9gY1So.js.br +0 -2
  458. package/build/client/_app/immutable/chunks/kf9gY1So.js.gz +0 -0
  459. package/build/client/_app/immutable/entry/app.oKZsHOIr.js +0 -2
  460. package/build/client/_app/immutable/entry/app.oKZsHOIr.js.br +0 -0
  461. package/build/client/_app/immutable/entry/app.oKZsHOIr.js.gz +0 -0
  462. package/build/client/_app/immutable/entry/start.DTm8KofL.js +0 -1
  463. package/build/client/_app/immutable/entry/start.DTm8KofL.js.br +0 -1
  464. package/build/client/_app/immutable/entry/start.DTm8KofL.js.gz +0 -0
  465. package/build/client/_app/immutable/nodes/1.C-w54CfF.js +0 -1
  466. package/build/client/_app/immutable/nodes/1.C-w54CfF.js.br +0 -0
  467. package/build/client/_app/immutable/nodes/1.C-w54CfF.js.gz +0 -0
  468. package/build/client/_app/immutable/nodes/11.CDSdxC2l.js +0 -2
  469. package/build/client/_app/immutable/nodes/11.CDSdxC2l.js.br +0 -0
  470. package/build/client/_app/immutable/nodes/11.CDSdxC2l.js.gz +0 -0
  471. package/build/client/_app/immutable/nodes/13.JZ7vM7DT.js +0 -2
  472. package/build/client/_app/immutable/nodes/13.JZ7vM7DT.js.br +0 -0
  473. package/build/client/_app/immutable/nodes/13.JZ7vM7DT.js.gz +0 -0
  474. package/build/client/_app/immutable/nodes/14.DORKykCg.js +0 -2
  475. package/build/client/_app/immutable/nodes/14.DORKykCg.js.br +0 -0
  476. package/build/client/_app/immutable/nodes/14.DORKykCg.js.gz +0 -0
  477. package/build/client/_app/immutable/nodes/15.DdRH9qLZ.js +0 -21
  478. package/build/client/_app/immutable/nodes/15.DdRH9qLZ.js.br +0 -0
  479. package/build/client/_app/immutable/nodes/15.DdRH9qLZ.js.gz +0 -0
  480. package/build/client/_app/immutable/nodes/16.VpU9ur-W.js +0 -6
  481. package/build/client/_app/immutable/nodes/16.VpU9ur-W.js.br +0 -0
  482. package/build/client/_app/immutable/nodes/16.VpU9ur-W.js.gz +0 -0
  483. package/build/client/_app/immutable/nodes/17.DOkFzPv8.js +0 -2
  484. package/build/client/_app/immutable/nodes/17.DOkFzPv8.js.br +0 -0
  485. package/build/client/_app/immutable/nodes/17.DOkFzPv8.js.gz +0 -0
  486. package/build/client/_app/immutable/nodes/19.DLY-0xju.js +0 -2
  487. package/build/client/_app/immutable/nodes/19.DLY-0xju.js.br +0 -0
  488. package/build/client/_app/immutable/nodes/19.DLY-0xju.js.gz +0 -0
  489. package/build/client/_app/immutable/nodes/2.B2Ht-eXC.js +0 -1
  490. package/build/client/_app/immutable/nodes/2.B2Ht-eXC.js.br +0 -0
  491. package/build/client/_app/immutable/nodes/2.B2Ht-eXC.js.gz +0 -0
  492. package/build/client/_app/immutable/nodes/20.zW7P9yAA.js +0 -12
  493. package/build/client/_app/immutable/nodes/20.zW7P9yAA.js.br +0 -0
  494. package/build/client/_app/immutable/nodes/20.zW7P9yAA.js.gz +0 -0
  495. package/build/client/_app/immutable/nodes/21.Dgw38XUG.js +0 -6
  496. package/build/client/_app/immutable/nodes/21.Dgw38XUG.js.br +0 -0
  497. package/build/client/_app/immutable/nodes/21.Dgw38XUG.js.gz +0 -0
  498. package/build/client/_app/immutable/nodes/23.BTrCHZNB.js +0 -16
  499. package/build/client/_app/immutable/nodes/23.BTrCHZNB.js.br +0 -0
  500. package/build/client/_app/immutable/nodes/23.BTrCHZNB.js.gz +0 -0
  501. package/build/client/_app/immutable/nodes/24.oXfUAIu3.js +0 -6
  502. package/build/client/_app/immutable/nodes/24.oXfUAIu3.js.br +0 -0
  503. package/build/client/_app/immutable/nodes/24.oXfUAIu3.js.gz +0 -0
  504. package/build/client/_app/immutable/nodes/27.X40UvD1F.js +0 -4
  505. package/build/client/_app/immutable/nodes/27.X40UvD1F.js.br +0 -0
  506. package/build/client/_app/immutable/nodes/27.X40UvD1F.js.gz +0 -0
  507. package/build/client/_app/immutable/nodes/28.Dr7lOdry.js +0 -4
  508. package/build/client/_app/immutable/nodes/28.Dr7lOdry.js.br +0 -0
  509. package/build/client/_app/immutable/nodes/28.Dr7lOdry.js.gz +0 -0
  510. package/build/client/_app/immutable/nodes/29.D2AMWuOp.js +0 -2
  511. package/build/client/_app/immutable/nodes/29.D2AMWuOp.js.br +0 -0
  512. package/build/client/_app/immutable/nodes/29.D2AMWuOp.js.gz +0 -0
  513. package/build/client/_app/immutable/nodes/3.DNBRM1XV.js +0 -1
  514. package/build/client/_app/immutable/nodes/3.DNBRM1XV.js.br +0 -0
  515. package/build/client/_app/immutable/nodes/3.DNBRM1XV.js.gz +0 -0
  516. package/build/client/_app/immutable/nodes/30.65jXD6Hx.js +0 -2
  517. package/build/client/_app/immutable/nodes/30.65jXD6Hx.js.br +0 -0
  518. package/build/client/_app/immutable/nodes/30.65jXD6Hx.js.gz +0 -0
  519. package/build/client/_app/immutable/nodes/5.CSplf0ao.js +0 -1
  520. package/build/client/_app/immutable/nodes/5.CSplf0ao.js.br +0 -0
  521. package/build/client/_app/immutable/nodes/5.CSplf0ao.js.gz +0 -0
  522. package/build/client/_app/immutable/nodes/6.Cr2hG_wc.js +0 -1
  523. package/build/client/_app/immutable/nodes/6.Cr2hG_wc.js.br +0 -0
  524. package/build/client/_app/immutable/nodes/6.Cr2hG_wc.js.gz +0 -0
  525. package/build/client/_app/immutable/nodes/7.CEZkW_Tr.js +0 -1
  526. package/build/client/_app/immutable/nodes/7.CEZkW_Tr.js.br +0 -0
  527. package/build/client/_app/immutable/nodes/7.CEZkW_Tr.js.gz +0 -0
  528. package/build/client/_app/immutable/nodes/8.C1Yta3H5.js +0 -2
  529. package/build/client/_app/immutable/nodes/8.C1Yta3H5.js.br +0 -0
  530. package/build/client/_app/immutable/nodes/8.C1Yta3H5.js.gz +0 -0
  531. package/build/client/_app/immutable/nodes/9.DizAGKkF.js +0 -1
  532. package/build/client/_app/immutable/nodes/9.DizAGKkF.js.br +0 -0
  533. package/build/client/_app/immutable/nodes/9.DizAGKkF.js.gz +0 -0
  534. package/build/server/chunks/chunks/AppHeader.js-AYAN3F5z.js +0 -281
  535. package/build/server/chunks/chunks/AppHeader.js-AYAN3F5z.js.map +0 -1
  536. package/build/server/chunks/chunks/SideNav.js-DKHpQjuu.js +0 -67
  537. package/build/server/chunks/chunks/SideNav.js-DKHpQjuu.js.map +0 -1
  538. package/build/server/chunks/chunks/UserChip.js-C-6376Q0.js +0 -1163
  539. package/build/server/chunks/chunks/UserChip.js-C-6376Q0.js.map +0 -1
  540. package/build/server/chunks/chunks/access.server.js-DTk8L9Xm.js +0 -453
  541. package/build/server/chunks/chunks/access.server.js-DTk8L9Xm.js.map +0 -1
  542. package/build/server/chunks/chunks/access2.server.js-snT285fJ.js +0 -20
  543. package/build/server/chunks/chunks/access2.server.js-snT285fJ.js.map +0 -1
  544. package/build/server/chunks/chunks/admin-auth.server.js-CWv707EC.js +0 -180
  545. package/build/server/chunks/chunks/admin-auth.server.js-CWv707EC.js.map +0 -1
  546. package/build/server/chunks/chunks/admin-config.js-DdCBspOh.js +0 -3
  547. package/build/server/chunks/chunks/admin-config.js-DdCBspOh.js.map +0 -1
  548. package/build/server/chunks/chunks/api-errors.js-BXNSPeAn.js +0 -141
  549. package/build/server/chunks/chunks/api-errors.js-BXNSPeAn.js.map +0 -1
  550. package/build/server/chunks/chunks/auth-bootstrap.server.js-DRbumHNf.js +0 -162
  551. package/build/server/chunks/chunks/auth-bootstrap.server.js-DRbumHNf.js.map +0 -1
  552. package/build/server/chunks/chunks/auth.server.js-D2zzXC2B.js +0 -2
  553. package/build/server/chunks/chunks/auth.server.js-D2zzXC2B.js.map +0 -1
  554. package/build/server/chunks/chunks/bootHealth.server.js-uYPUvUjO.js +0 -91
  555. package/build/server/chunks/chunks/bootHealth.server.js-uYPUvUjO.js.map +0 -1
  556. package/build/server/chunks/chunks/chunk-6TMSTNHN.js-3Bz2KNTb.js +0 -1502
  557. package/build/server/chunks/chunks/chunk-6TMSTNHN.js-3Bz2KNTb.js.map +0 -1
  558. package/build/server/chunks/chunks/chunk-NVMSD4CC.js-BgY8vvUs.js +0 -2919
  559. package/build/server/chunks/chunks/chunk-NVMSD4CC.js-BgY8vvUs.js.map +0 -1
  560. package/build/server/chunks/chunks/client.js-P-TdOF79.js +0 -58
  561. package/build/server/chunks/chunks/client.js-P-TdOF79.js.map +0 -1
  562. package/build/server/chunks/chunks/clientCache.server.js-D5qWksO1.js +0 -195
  563. package/build/server/chunks/chunks/clientCache.server.js-D5qWksO1.js.map +0 -1
  564. package/build/server/chunks/chunks/compute.js-DJMNVamB.js +0 -747
  565. package/build/server/chunks/chunks/compute.js-DJMNVamB.js.map +0 -1
  566. package/build/server/chunks/chunks/computeLimits.js-BvAV5j60.js +0 -48
  567. package/build/server/chunks/chunks/computeLimits.js-BvAV5j60.js.map +0 -1
  568. package/build/server/chunks/chunks/evictChangedServers.js-ClNIxVww.js +0 -29
  569. package/build/server/chunks/chunks/evictChangedServers.js-ClNIxVww.js.map +0 -1
  570. package/build/server/chunks/chunks/forms.js-2QtFofqz.js +0 -2
  571. package/build/server/chunks/chunks/forms.js-2QtFofqz.js.map +0 -1
  572. package/build/server/chunks/chunks/internal2.js-DEN8UhZO.js +0 -224
  573. package/build/server/chunks/chunks/internal2.js-DEN8UhZO.js.map +0 -1
  574. package/build/server/chunks/chunks/navigation.js-2QtFofqz.js +0 -2
  575. package/build/server/chunks/chunks/navigation.js-2QtFofqz.js.map +0 -1
  576. package/build/server/chunks/chunks/org-members.server.js-YlJjV8_t.js +0 -35
  577. package/build/server/chunks/chunks/org-members.server.js-YlJjV8_t.js.map +0 -1
  578. package/build/server/chunks/chunks/package.js-CaaoNObv.js +0 -76
  579. package/build/server/chunks/chunks/package.js-CaaoNObv.js.map +0 -1
  580. package/build/server/chunks/chunks/permissions.server.js-BR0B8hVZ.js +0 -15
  581. package/build/server/chunks/chunks/permissions.server.js-BR0B8hVZ.js.map +0 -1
  582. package/build/server/chunks/chunks/providers.server.js-DVrVQ227.js +0 -6247
  583. package/build/server/chunks/chunks/providers.server.js-DVrVQ227.js.map +0 -1
  584. package/build/server/chunks/chunks/resolve.server.js-CsO79Ncd.js +0 -62
  585. package/build/server/chunks/chunks/resolve.server.js-CsO79Ncd.js.map +0 -1
  586. package/build/server/chunks/chunks/selfUpdate.server.js-BZsKx2kH.js +0 -152
  587. package/build/server/chunks/chunks/selfUpdate.server.js-BZsKx2kH.js.map +0 -1
  588. package/build/server/chunks/chunks/state.js-F5ep4mVz.js +0 -64
  589. package/build/server/chunks/chunks/state.js-F5ep4mVz.js.map +0 -1
  590. package/build/server/chunks/chunks/stores.js-D23nyPLC.js +0 -35
  591. package/build/server/chunks/chunks/stores.js-D23nyPLC.js.map +0 -1
  592. package/build/server/chunks/chunks/utils2.js-BeHcWGXn.js +0 -62
  593. package/build/server/chunks/chunks/utils2.js-BeHcWGXn.js.map +0 -1
  594. package/build/server/chunks/chunks/visualization-BIHTM2KJ.js-tLehqRSm.js +0 -21
  595. package/build/server/chunks/chunks/visualization-BIHTM2KJ.js-tLehqRSm.js.map +0 -1
  596. package/build/server/chunks/entries/endpoints/admin/api/compute/_server.ts.js-wVuDvrFy.js +0 -93
  597. package/build/server/chunks/entries/endpoints/admin/api/compute/_server.ts.js-wVuDvrFy.js.map +0 -1
  598. package/build/server/chunks/entries/endpoints/admin/api/compute/actions/_server.ts.js-cD2vCXHV.js +0 -53
  599. package/build/server/chunks/entries/endpoints/admin/api/compute/actions/_server.ts.js-cD2vCXHV.js.map +0 -1
  600. package/build/server/chunks/entries/endpoints/admin/api/compute/status/_server.ts.js-GP1jx9qX.js +0 -79
  601. package/build/server/chunks/entries/endpoints/admin/api/compute/status/_server.ts.js-GP1jx9qX.js.map +0 -1
  602. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/_server.ts.js-D6Y4KbYK.js +0 -50
  603. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/_server.ts.js-D6Y4KbYK.js.map +0 -1
  604. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/assets/_kind_/_server.ts.js-DZJjpxc2.js +0 -86
  605. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/assets/_kind_/_server.ts.js-DZJjpxc2.js.map +0 -1
  606. package/build/server/chunks/entries/endpoints/admin/api/orgs/_server.ts.js-CS4Qz_XQ.js +0 -72
  607. package/build/server/chunks/entries/endpoints/admin/api/orgs/_server.ts.js-CS4Qz_XQ.js.map +0 -1
  608. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/_server.ts.js-3Ebkx09z.js +0 -74
  609. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/_server.ts.js-3Ebkx09z.js.map +0 -1
  610. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/_server.ts.js-DOhMfJyf.js +0 -34
  611. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/_server.ts.js-DOhMfJyf.js.map +0 -1
  612. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_server.ts.js-BrLIt3Jh.js +0 -71
  613. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_server.ts.js-BrLIt3Jh.js.map +0 -1
  614. package/build/server/chunks/entries/endpoints/admin/api/projects/_server.ts.js-CYVWpcid.js +0 -103
  615. package/build/server/chunks/entries/endpoints/admin/api/projects/_server.ts.js-CYVWpcid.js.map +0 -1
  616. package/build/server/chunks/entries/endpoints/admin/api/system/health/_server.ts.js-DeiqLieq.js +0 -208
  617. package/build/server/chunks/entries/endpoints/admin/api/system/health/_server.ts.js-DeiqLieq.js.map +0 -1
  618. package/build/server/chunks/entries/endpoints/admin/api/system/throughput/_server.ts.js-Dq4mvpeu.js +0 -90
  619. package/build/server/chunks/entries/endpoints/admin/api/system/throughput/_server.ts.js-Dq4mvpeu.js.map +0 -1
  620. package/build/server/chunks/entries/endpoints/admin/api/system/update/_server.ts.js-DfWo6sH-.js +0 -403
  621. package/build/server/chunks/entries/endpoints/admin/api/system/update/_server.ts.js-DfWo6sH-.js.map +0 -1
  622. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/_server.ts.js-BjF6nnTY.js +0 -76
  623. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/_server.ts.js-BjF6nnTY.js.map +0 -1
  624. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/disable/_server.ts.js-VTxX1cJJ.js +0 -46
  625. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/disable/_server.ts.js-VTxX1cJJ.js.map +0 -1
  626. package/build/server/chunks/entries/endpoints/admin/api/users/_server.ts.js-BrV4UzaJ.js +0 -86
  627. package/build/server/chunks/entries/endpoints/admin/api/users/_server.ts.js-BrV4UzaJ.js.map +0 -1
  628. package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-BWpyFqnS.js +0 -0
  629. package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-BWpyFqnS.js.map +0 -1
  630. package/build/server/chunks/entries/endpoints/api/compute/schema/_server.ts.js-Bim33O-D.js +0 -64
  631. package/build/server/chunks/entries/endpoints/api/compute/schema/_server.ts.js-Bim33O-D.js.map +0 -1
  632. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/_server.ts.js-B81Y_gEm.js +0 -75
  633. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/_server.ts.js-B81Y_gEm.js.map +0 -1
  634. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/_server.ts.js-Zf1Tcfe8.js +0 -46
  635. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/_server.ts.js-Zf1Tcfe8.js.map +0 -1
  636. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_server.ts.js-arAfVsw-.js +0 -44
  637. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_server.ts.js-arAfVsw-.js.map +0 -1
  638. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/publish/_server.ts.js-CUjzFtk_.js +0 -40
  639. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/publish/_server.ts.js-CUjzFtk_.js.map +0 -1
  640. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_linkId_/_server.ts.js-BKAgaQh9.js +0 -46
  641. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_linkId_/_server.ts.js-BKAgaQh9.js.map +0 -1
  642. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_server.ts.js-iMpHd7MR.js +0 -84
  643. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_server.ts.js-iMpHd7MR.js.map +0 -1
  644. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_server.ts.js-DJ6mSPwT.js +0 -47
  645. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_server.ts.js-DJ6mSPwT.js.map +0 -1
  646. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_versionId_/_server.ts.js-KkfSAaKU.js +0 -40
  647. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_versionId_/_server.ts.js-KkfSAaKU.js.map +0 -1
  648. package/build/server/chunks/entries/endpoints/api/definitions/_server.ts.js-fc6Xi8vt.js +0 -94
  649. package/build/server/chunks/entries/endpoints/api/definitions/_server.ts.js-fc6Xi8vt.js.map +0 -1
  650. package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-Buqf5yUC.js +0 -59
  651. package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-Buqf5yUC.js.map +0 -1
  652. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-BVmQ7dkH.js +0 -89
  653. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-BVmQ7dkH.js.map +0 -1
  654. package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-DCNRkHyf.js +0 -56
  655. package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-DCNRkHyf.js.map +0 -1
  656. package/build/server/chunks/entries/endpoints/api/invites/_id_/_server.ts.js-7pTpOKW0.js +0 -49
  657. package/build/server/chunks/entries/endpoints/api/invites/_id_/_server.ts.js-7pTpOKW0.js.map +0 -1
  658. package/build/server/chunks/entries/endpoints/api/invites/_server.ts.js-g93YLTLU.js +0 -77
  659. package/build/server/chunks/entries/endpoints/api/invites/_server.ts.js-g93YLTLU.js.map +0 -1
  660. package/build/server/chunks/entries/endpoints/api/me/starred/_guid_/_server.ts.js-CEExfukq.js +0 -45
  661. package/build/server/chunks/entries/endpoints/api/me/starred/_guid_/_server.ts.js-CEExfukq.js.map +0 -1
  662. package/build/server/chunks/entries/endpoints/api/org/compute/_server.ts.js-DbDWz9gf.js +0 -110
  663. package/build/server/chunks/entries/endpoints/api/org/compute/_server.ts.js-DbDWz9gf.js.map +0 -1
  664. package/build/server/chunks/entries/endpoints/api/orgs/_orgId_/members/_userId_/_server.ts.js-DAEkbq9O.js +0 -79
  665. package/build/server/chunks/entries/endpoints/api/orgs/_orgId_/members/_userId_/_server.ts.js-DAEkbq9O.js.map +0 -1
  666. package/build/server/chunks/entries/endpoints/api/projects/_id_/_server.ts.js-DFCbEjiK.js +0 -71
  667. package/build/server/chunks/entries/endpoints/api/projects/_id_/_server.ts.js-DFCbEjiK.js.map +0 -1
  668. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_server.ts.js-BPj5goxx.js +0 -65
  669. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_server.ts.js-BPj5goxx.js.map +0 -1
  670. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_userId_/_server.ts.js-B475Pa8T.js +0 -64
  671. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_userId_/_server.ts.js-B475Pa8T.js.map +0 -1
  672. package/build/server/chunks/entries/endpoints/api/projects/_id_/reclaim/_server.ts.js-Cc1nlfHR.js +0 -48
  673. package/build/server/chunks/entries/endpoints/api/projects/_id_/reclaim/_server.ts.js-Cc1nlfHR.js.map +0 -1
  674. package/build/server/chunks/entries/endpoints/api/projects/_server.ts.js-eb-kwNJ0.js +0 -85
  675. package/build/server/chunks/entries/endpoints/api/projects/_server.ts.js-eb-kwNJ0.js.map +0 -1
  676. package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-tvYDn2S7.js +0 -48
  677. package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-tvYDn2S7.js.map +0 -1
  678. package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-C4mvL4p5.js +0 -52
  679. package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-C4mvL4p5.js.map +0 -1
  680. package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-D7hQjRs_.js +0 -51
  681. package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-D7hQjRs_.js.map +0 -1
  682. package/build/server/chunks/entries/hooks.server.js-xCzuEP4L.js +0 -341
  683. package/build/server/chunks/entries/hooks.server.js-xCzuEP4L.js.map +0 -1
  684. package/build/server/chunks/entries/pages/_error.svelte.js-CxXvoX2l.js +0 -35
  685. package/build/server/chunks/entries/pages/_error.svelte.js-CxXvoX2l.js.map +0 -1
  686. package/build/server/chunks/entries/pages/_layout.server.ts.js-CBN-MFPt.js +0 -34
  687. package/build/server/chunks/entries/pages/_layout.server.ts.js-CBN-MFPt.js.map +0 -1
  688. package/build/server/chunks/entries/pages/_page.svelte.js-BayTh-oz.js +0 -76
  689. package/build/server/chunks/entries/pages/_page.svelte.js-BayTh-oz.js.map +0 -1
  690. package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-CqEE42rK.js +0 -109
  691. package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-CqEE42rK.js.map +0 -1
  692. package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-CzQ_a18S.js +0 -148
  693. package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-CzQ_a18S.js.map +0 -1
  694. package/build/server/chunks/entries/pages/admin/_error.svelte.js-DuflaaU8.js +0 -36
  695. package/build/server/chunks/entries/pages/admin/_error.svelte.js-DuflaaU8.js.map +0 -1
  696. package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-BX-PJtTN.js +0 -31
  697. package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-BX-PJtTN.js.map +0 -1
  698. package/build/server/chunks/entries/pages/admin/_layout.svelte.js-Blxit_Pi.js +0 -121
  699. package/build/server/chunks/entries/pages/admin/_layout.svelte.js-Blxit_Pi.js.map +0 -1
  700. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-V33ek5uk.js +0 -75
  701. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-V33ek5uk.js.map +0 -1
  702. package/build/server/chunks/entries/pages/admin/_page.svelte.js-DCz01DT4.js +0 -359
  703. package/build/server/chunks/entries/pages/admin/_page.svelte.js-DCz01DT4.js.map +0 -1
  704. package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-CB_j-5nN.js +0 -245
  705. package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-CB_j-5nN.js.map +0 -1
  706. package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-D716GE03.js +0 -45
  707. package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-D716GE03.js.map +0 -1
  708. package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-C_roaqwN.js +0 -612
  709. package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-C_roaqwN.js.map +0 -1
  710. package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-BLAT_3BT.js +0 -35
  711. package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-BLAT_3BT.js.map +0 -1
  712. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-LItiLsTO.js +0 -86
  713. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-LItiLsTO.js.map +0 -1
  714. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-CD7GzJ0a.js +0 -616
  715. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-CD7GzJ0a.js.map +0 -1
  716. package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-DHQ1SMC8.js +0 -42
  717. package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-DHQ1SMC8.js.map +0 -1
  718. package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-PEVVD1hz.js +0 -282
  719. package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-PEVVD1hz.js.map +0 -1
  720. package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-7xxEcfbl.js +0 -79
  721. package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-7xxEcfbl.js.map +0 -1
  722. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-DV29U8ML.js +0 -1363
  723. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-DV29U8ML.js.map +0 -1
  724. package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-D-nx2W_5.js +0 -70
  725. package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-D-nx2W_5.js.map +0 -1
  726. package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-IdZ3AdQd.js +0 -681
  727. package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-IdZ3AdQd.js.map +0 -1
  728. package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-4YV39zo1.js +0 -62
  729. package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-4YV39zo1.js.map +0 -1
  730. package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-CeWL1Qk4.js +0 -62
  731. package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-CeWL1Qk4.js.map +0 -1
  732. package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-DhFb3NaU.js +0 -124
  733. package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-DhFb3NaU.js.map +0 -1
  734. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-BsffxeXd.js +0 -12096
  735. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-BsffxeXd.js.map +0 -1
  736. package/build/server/chunks/entries/pages/library/_page.server.ts.js-BkMeXS9O.js +0 -73
  737. package/build/server/chunks/entries/pages/library/_page.server.ts.js-BkMeXS9O.js.map +0 -1
  738. package/build/server/chunks/entries/pages/library/_page.svelte.js-blnmEQ-o.js +0 -328
  739. package/build/server/chunks/entries/pages/library/_page.svelte.js-blnmEQ-o.js.map +0 -1
  740. package/build/server/chunks/entries/pages/login/_page.server.ts.js-Bw-a30vh.js +0 -76
  741. package/build/server/chunks/entries/pages/login/_page.server.ts.js-Bw-a30vh.js.map +0 -1
  742. package/build/server/chunks/entries/pages/login/_page.svelte.js-DSXMr75X.js +0 -256
  743. package/build/server/chunks/entries/pages/login/_page.svelte.js-DSXMr75X.js.map +0 -1
  744. package/build/server/chunks/entries/pages/logout/_page.server.ts.js-DgEnEaqK.js +0 -16
  745. package/build/server/chunks/entries/pages/logout/_page.server.ts.js-DgEnEaqK.js.map +0 -1
  746. package/build/server/chunks/entries/pages/projects/_layout.svelte.js-Bv9GVGMV.js +0 -49
  747. package/build/server/chunks/entries/pages/projects/_layout.svelte.js-Bv9GVGMV.js.map +0 -1
  748. package/build/server/chunks/entries/pages/projects/_page.server.ts.js-BUxZcCVz.js +0 -101
  749. package/build/server/chunks/entries/pages/projects/_page.server.ts.js-BUxZcCVz.js.map +0 -1
  750. package/build/server/chunks/entries/pages/projects/_page.svelte.js-O8Sd-6bV.js +0 -3745
  751. package/build/server/chunks/entries/pages/projects/_page.svelte.js-O8Sd-6bV.js.map +0 -1
  752. package/build/server/chunks/entries/pages/setup/_page.server.ts.js-DoCznQ0-.js +0 -113
  753. package/build/server/chunks/entries/pages/setup/_page.server.ts.js-DoCznQ0-.js.map +0 -1
  754. package/build/server/chunks/entries/pages/setup/_page.svelte.js-CCPZU4QX.js +0 -321
  755. package/build/server/chunks/entries/pages/setup/_page.svelte.js-CCPZU4QX.js.map +0 -1
  756. package/build/server/chunks/entries/pages/team/_layout.server.ts.js-D1j-DbQg.js +0 -28
  757. package/build/server/chunks/entries/pages/team/_layout.server.ts.js-D1j-DbQg.js.map +0 -1
  758. package/build/server/chunks/entries/pages/team/_layout.svelte.js-Dk2pFA0B.js +0 -162
  759. package/build/server/chunks/entries/pages/team/_layout.svelte.js-Dk2pFA0B.js.map +0 -1
  760. package/build/server/chunks/entries/pages/team/_page.server.ts.js-B2OdV_29.js +0 -35
  761. package/build/server/chunks/entries/pages/team/_page.server.ts.js-B2OdV_29.js.map +0 -1
  762. package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-BlCuggyX.js +0 -42
  763. package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-BlCuggyX.js.map +0 -1
  764. package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-DYNE5ABk.js +0 -593
  765. package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-DYNE5ABk.js.map +0 -1
  766. package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-B4b3SZOP.js +0 -58
  767. package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-B4b3SZOP.js.map +0 -1
  768. package/build/server/chunks/entries/pages/team/members/_page.svelte.js-CHd4CN0C.js +0 -539
  769. package/build/server/chunks/entries/pages/team/members/_page.svelte.js-CHd4CN0C.js.map +0 -1
  770. package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-NFDW3PWw.js +0 -42
  771. package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-NFDW3PWw.js.map +0 -1
  772. package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-BFU_On_5.js +0 -436
  773. package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-BFU_On_5.js.map +0 -1
  774. package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-C-ZrYWBh.js +0 -50
  775. package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-C-ZrYWBh.js.map +0 -1
  776. package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-yqHcDyMF.js +0 -262
  777. package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-yqHcDyMF.js.map +0 -1
  778. package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-D4Qjk1fq.js +0 -32
  779. package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-D4Qjk1fq.js.map +0 -1
  780. package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-C0GnGxkp.js +0 -16
  781. package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-C0GnGxkp.js.map +0 -1
  782. package/build/server/chunks/handler-C1wPoG6z.js +0 -1206
  783. package/build/server/chunks/handler-C1wPoG6z.js.map +0 -1
  784. package/build/server/chunks/index.js-CcGY6Xru.js +0 -3747
  785. package/build/server/chunks/index.js-CcGY6Xru.js.map +0 -1
  786. package/build/server/chunks/manifest.js-4zIU5_xF.js +0 -548
  787. package/build/server/chunks/manifest.js-4zIU5_xF.js.map +0 -1
  788. package/build/server/chunks/nodes/0.js-B_6GhKJ8.js +0 -25
  789. package/build/server/chunks/nodes/0.js-B_6GhKJ8.js.map +0 -1
  790. package/build/server/chunks/nodes/1.js-w6iNuu_p.js +0 -9
  791. package/build/server/chunks/nodes/1.js-w6iNuu_p.js.map +0 -1
  792. package/build/server/chunks/nodes/10.js-B1qCAcpJ.js +0 -27
  793. package/build/server/chunks/nodes/10.js-B1qCAcpJ.js.map +0 -1
  794. package/build/server/chunks/nodes/11.js-O6PJlINw.js +0 -28
  795. package/build/server/chunks/nodes/11.js-O6PJlINw.js.map +0 -1
  796. package/build/server/chunks/nodes/12.js-CUbufUon.js +0 -26
  797. package/build/server/chunks/nodes/12.js-CUbufUon.js.map +0 -1
  798. package/build/server/chunks/nodes/13.js-HhzOjujZ.js +0 -26
  799. package/build/server/chunks/nodes/13.js-HhzOjujZ.js.map +0 -1
  800. package/build/server/chunks/nodes/14.js-CNftKGUy.js +0 -26
  801. package/build/server/chunks/nodes/14.js-CNftKGUy.js.map +0 -1
  802. package/build/server/chunks/nodes/15.js-iS2sMPAh.js +0 -38
  803. package/build/server/chunks/nodes/15.js-iS2sMPAh.js.map +0 -1
  804. package/build/server/chunks/nodes/16.js-BLW2wpqY.js +0 -29
  805. package/build/server/chunks/nodes/16.js-BLW2wpqY.js.map +0 -1
  806. package/build/server/chunks/nodes/17.js-BXU0IoJo.js +0 -9
  807. package/build/server/chunks/nodes/17.js-BXU0IoJo.js.map +0 -1
  808. package/build/server/chunks/nodes/18.js-DGns1zZz.js +0 -34
  809. package/build/server/chunks/nodes/18.js-DGns1zZz.js.map +0 -1
  810. package/build/server/chunks/nodes/19.js-viNBXeh7.js +0 -27
  811. package/build/server/chunks/nodes/19.js-viNBXeh7.js.map +0 -1
  812. package/build/server/chunks/nodes/2.js-D4shsDuL.js +0 -27
  813. package/build/server/chunks/nodes/2.js-D4shsDuL.js.map +0 -1
  814. package/build/server/chunks/nodes/20.js-Cy3-jXnw.js +0 -40
  815. package/build/server/chunks/nodes/20.js-Cy3-jXnw.js.map +0 -1
  816. package/build/server/chunks/nodes/21.js-BG1ajoFp.js +0 -34
  817. package/build/server/chunks/nodes/21.js-BG1ajoFp.js.map +0 -1
  818. package/build/server/chunks/nodes/22.js-BJsw1K0_.js +0 -24
  819. package/build/server/chunks/nodes/22.js-BJsw1K0_.js.map +0 -1
  820. package/build/server/chunks/nodes/23.js-BYM4G85N.js +0 -28
  821. package/build/server/chunks/nodes/23.js-BYM4G85N.js.map +0 -1
  822. package/build/server/chunks/nodes/24.js-BqgIDvwz.js +0 -34
  823. package/build/server/chunks/nodes/24.js-BqgIDvwz.js.map +0 -1
  824. package/build/server/chunks/nodes/25.js-DWhdYf2C.js +0 -26
  825. package/build/server/chunks/nodes/25.js-DWhdYf2C.js.map +0 -1
  826. package/build/server/chunks/nodes/27.js-Bz-IRtAq.js +0 -27
  827. package/build/server/chunks/nodes/27.js-Bz-IRtAq.js.map +0 -1
  828. package/build/server/chunks/nodes/28.js-BEawWTlr.js +0 -26
  829. package/build/server/chunks/nodes/28.js-BEawWTlr.js.map +0 -1
  830. package/build/server/chunks/nodes/29.js-KJTwD08r.js +0 -26
  831. package/build/server/chunks/nodes/29.js-KJTwD08r.js.map +0 -1
  832. package/build/server/chunks/nodes/3.js-CtTwes7V.js +0 -9
  833. package/build/server/chunks/nodes/3.js-CtTwes7V.js.map +0 -1
  834. package/build/server/chunks/nodes/30.js-iD-GalAT.js +0 -26
  835. package/build/server/chunks/nodes/30.js-iD-GalAT.js.map +0 -1
  836. package/build/server/chunks/nodes/31.js-BKsO_tnZ.js +0 -26
  837. package/build/server/chunks/nodes/31.js-BKsO_tnZ.js.map +0 -1
  838. package/build/server/chunks/nodes/32.js-yb1lQm_m.js +0 -26
  839. package/build/server/chunks/nodes/32.js-yb1lQm_m.js.map +0 -1
  840. package/build/server/chunks/nodes/5.js-B09SDkNw.js +0 -15
  841. package/build/server/chunks/nodes/5.js-B09SDkNw.js.map +0 -1
  842. package/build/server/chunks/nodes/6.js--SQ6F4Vx.js +0 -26
  843. package/build/server/chunks/nodes/6.js--SQ6F4Vx.js.map +0 -1
  844. package/build/server/chunks/nodes/7.js-BYGZJ3r0.js +0 -12
  845. package/build/server/chunks/nodes/7.js-BYGZJ3r0.js.map +0 -1
  846. package/build/server/chunks/nodes/8.js-DylKEQoi.js +0 -35
  847. package/build/server/chunks/nodes/8.js-DylKEQoi.js.map +0 -1
  848. package/build/server/chunks/nodes/9.js-U2TxkMWR.js +0 -26
  849. package/build/server/chunks/nodes/9.js-U2TxkMWR.js.map +0 -1
@@ -1,2919 +0,0 @@
1
- import { _ as _e$1, m, h, p, l, a as x } from './chunk-Y3M7P3BW.js-qwxSY5dh.js';
2
- import { i as inflateSync } from './esm2.js-C_Dsvb5P.js';
3
- import * as z from 'three';
4
- import { ViewHelper } from 'three/addons/helpers/ViewHelper.js';
5
- import { LineSegmentsGeometry } from 'three/addons/lines/LineSegmentsGeometry.js';
6
- import { LineSegments2 } from 'three/addons/lines/LineSegments2.js';
7
- import { LineMaterial } from 'three/addons/lines/LineMaterial.js';
8
- import { Pass, FullScreenQuad } from 'three/addons/postprocessing/Pass.js';
9
- import { EffectComposer } from 'three/addons/postprocessing/EffectComposer.js';
10
- import { RenderPass } from 'three/addons/postprocessing/RenderPass.js';
11
- import { GTAOPass } from 'three/addons/postprocessing/GTAOPass.js';
12
- import { SMAAPass } from 'three/addons/postprocessing/SMAAPass.js';
13
- import { OutputPass } from 'three/addons/postprocessing/OutputPass.js';
14
- import { CSS2DRenderer, CSS2DObject } from 'three/addons/renderers/CSS2DRenderer.js';
15
- import { Line2 } from 'three/addons/lines/Line2.js';
16
- import { LineGeometry } from 'three/addons/lines/LineGeometry.js';
17
- import { OrbitControls } from 'three/addons/controls/OrbitControls.js';
18
- import { HDRLoader } from 'three/addons/loaders/HDRLoader.js';
19
-
20
- //#region ../compute/dist/chunk-NVMSD4CC.js
21
- var Ln = {};
22
- _e$1(Ln, {
23
- CONCRETE_MATERIAL: () => ht,
24
- EMISSIVE_MATERIAL: () => pt,
25
- GLASS_MATERIAL: () => yt,
26
- METAL_MATERIAL: () => Et,
27
- PLASTIC_MATERIAL: () => gt,
28
- RUBBER_MATERIAL: () => bt,
29
- SHARED_MATERIALS: () => We,
30
- WOOD_MATERIAL: () => Tt
31
- });
32
- var pt = new z.MeshPhysicalMaterial({
33
- color: 0,
34
- emissive: new z.Color(16777215),
35
- emissiveIntensity: 5,
36
- metalness: 0,
37
- roughness: .2,
38
- clearcoat: .3,
39
- clearcoatRoughness: .2,
40
- depthWrite: true,
41
- depthTest: true,
42
- transparent: false,
43
- alphaTest: 0,
44
- polygonOffset: true,
45
- polygonOffsetFactor: 1,
46
- polygonOffsetUnits: 1,
47
- side: z.FrontSide,
48
- dithering: true
49
- });
50
- var Et = new z.MeshPhysicalMaterial({
51
- color: new z.Color(0),
52
- metalness: .9,
53
- roughness: .3,
54
- envMapIntensity: 1.2,
55
- clearcoat: .3,
56
- clearcoatRoughness: .2,
57
- reflectivity: 1,
58
- ior: 2.5,
59
- thickness: 1,
60
- depthWrite: true,
61
- transparent: false,
62
- alphaTest: 0,
63
- depthTest: true,
64
- polygonOffset: true,
65
- polygonOffsetFactor: 1,
66
- polygonOffsetUnits: 1,
67
- side: z.FrontSide,
68
- dithering: true
69
- });
70
- var ht = new z.MeshPhysicalMaterial({
71
- color: new z.Color(13421772),
72
- metalness: 0,
73
- roughness: .92,
74
- envMapIntensity: .15,
75
- clearcoat: .05,
76
- clearcoatRoughness: .9,
77
- reflectivity: .15,
78
- transmission: 0,
79
- ior: 1.45,
80
- thickness: 0,
81
- depthWrite: true,
82
- transparent: false,
83
- alphaTest: 0,
84
- depthTest: true,
85
- polygonOffset: true,
86
- polygonOffsetFactor: 1,
87
- polygonOffsetUnits: 1,
88
- side: z.FrontSide,
89
- dithering: true
90
- });
91
- var gt = new z.MeshPhysicalMaterial({
92
- color: new z.Color(16777215),
93
- metalness: 0,
94
- roughness: .3,
95
- envMapIntensity: .5,
96
- clearcoat: .5,
97
- clearcoatRoughness: .1,
98
- reflectivity: .5,
99
- ior: 1.4,
100
- transmission: 0,
101
- transparent: false,
102
- depthWrite: true,
103
- side: z.FrontSide,
104
- dithering: true,
105
- polygonOffset: true,
106
- polygonOffsetFactor: 1,
107
- polygonOffsetUnits: 1
108
- });
109
- var yt = new z.MeshPhysicalMaterial({
110
- color: new z.Color(16777215),
111
- metalness: 0,
112
- roughness: 0,
113
- transmission: .95,
114
- transparent: true,
115
- depthWrite: false,
116
- envMapIntensity: 1,
117
- clearcoat: 1,
118
- clearcoatRoughness: 0,
119
- ior: 1.52,
120
- reflectivity: .9,
121
- thickness: 1,
122
- side: z.DoubleSide,
123
- polygonOffset: true,
124
- polygonOffsetFactor: 1,
125
- polygonOffsetUnits: 1
126
- });
127
- var bt = new z.MeshPhysicalMaterial({
128
- color: new z.Color(1710618),
129
- metalness: 0,
130
- roughness: .9,
131
- envMapIntensity: .2,
132
- clearcoat: .1,
133
- clearcoatRoughness: .8,
134
- reflectivity: .2,
135
- ior: 1.3,
136
- transmission: 0,
137
- depthWrite: true,
138
- side: z.FrontSide,
139
- polygonOffset: true,
140
- polygonOffsetFactor: 1,
141
- polygonOffsetUnits: 1
142
- });
143
- var Tt = new z.MeshPhysicalMaterial({
144
- color: new z.Color(8934707),
145
- metalness: 0,
146
- roughness: .7,
147
- envMapIntensity: .3,
148
- clearcoat: .3,
149
- clearcoatRoughness: .4,
150
- reflectivity: .3,
151
- ior: 1.3,
152
- transmission: 0,
153
- depthWrite: true,
154
- side: z.FrontSide,
155
- dithering: true,
156
- polygonOffset: true,
157
- polygonOffsetFactor: 1,
158
- polygonOffsetUnits: 1
159
- });
160
- var We = /* @__PURE__ */ new Set([
161
- pt,
162
- Et,
163
- ht,
164
- gt,
165
- yt,
166
- bt,
167
- Tt
168
- ]);
169
- var ae = {
170
- HUGE_THRESHOLD: 1e4,
171
- LARGE_THRESHOLD: 1e3,
172
- SCALE_RATIO_THRESHOLD: 100,
173
- NEAR_PLANE_FACTOR: {
174
- TINY: 1e-4,
175
- SMALL: .001,
176
- NORMAL: .01
177
- },
178
- FAR_PLANE_FACTOR: {
179
- HUGE: 100,
180
- LARGE: 50,
181
- NORMAL: 20
182
- },
183
- INITIAL_DISTANCE_MULTIPLIER: 4
184
- };
185
- function ba(e, n, t, r, a) {
186
- if (Fn(e), n.length === 0) return;
187
- n.forEach((u) => {
188
- e.add(u);
189
- });
190
- let o = $e(n), i = o.getCenter(new z.Vector3()), l = o.getSize(new z.Vector3()), s = Math.max(l.x, l.y, l.z);
191
- if (s / Math.min(l.x || 1, l.y || 1, l.z || 1) > ae.SCALE_RATIO_THRESHOLD || s > ae.HUGE_THRESHOLD ? (t.near = s * ae.NEAR_PLANE_FACTOR.TINY, t.far = s * ae.FAR_PLANE_FACTOR.HUGE) : s > ae.LARGE_THRESHOLD ? (t.near = s * ae.NEAR_PLANE_FACTOR.SMALL, t.far = s * ae.FAR_PLANE_FACTOR.LARGE) : (t.near = Math.max(.01, s * ae.NEAR_PLANE_FACTOR.NORMAL), t.far = Math.max(2e3, s * ae.FAR_PLANE_FACTOR.NORMAL)), t.updateProjectionMatrix(), !a) {
192
- let u = s * ae.INITIAL_DISTANCE_MULTIPLIER;
193
- t.position.set(i.x + u * .8, i.y + u, i.z + u * 1.2), r.target.copy(i), r.update();
194
- }
195
- }
196
- function Rt(e) {
197
- if (!e || typeof e != "string") return m().warn(`Invalid color input: ${e}, using white`), new z.Color(16777215);
198
- let n = e.trim();
199
- if (/^#?[0-9A-Fa-f]{6}$/.test(n)) try {
200
- let r = n.startsWith("#") ? n : `#${n}`;
201
- return new z.Color(r);
202
- } catch {
203
- return m().warn(`Invalid hex color: ${e}, using white`), new z.Color(16777215);
204
- }
205
- if (n.includes(",")) {
206
- let r = n.split(",").map((a) => parseInt(a.trim(), 10));
207
- if (r.length === 3 && r.every((a) => !isNaN(a) && a >= 0 && a <= 255)) return new z.Color(r[0] / 255, r[1] / 255, r[2] / 255);
208
- }
209
- let t = n.toLowerCase();
210
- return t in z.Color.NAMES ? new z.Color(z.Color.NAMES[t]) : (m().warn(`Invalid color string: ${e}, using white`), new z.Color(16777215));
211
- }
212
- function xt(e, n, t = "z") {
213
- e.forEach((r) => {
214
- r.position[t] -= n;
215
- });
216
- }
217
- function $e(e) {
218
- let n = new z.Box3();
219
- return e.length === 0 || e.forEach((t) => {
220
- t.updateMatrixWorld(true);
221
- let r = new z.Box3().setFromObject(t);
222
- n.union(r);
223
- }), n;
224
- }
225
- var On = /* @__PURE__ */ new Set([
226
- "grid",
227
- "floor",
228
- "label-layer",
229
- "measure"
230
- ]);
231
- function In(e) {
232
- let n = e;
233
- for (; n;) {
234
- if (typeof n.userData.id == "string" && On.has(n.userData.id)) return true;
235
- n = n.parent;
236
- }
237
- return false;
238
- }
239
- function le(e) {
240
- e.updateMatrixWorld(true);
241
- let n = new z.Box3();
242
- return e.traverse((t) => {
243
- let r = t;
244
- t.visible && !In(t) && r.geometry && n.expandByObject(t);
245
- }), n;
246
- }
247
- var Pn = /* @__PURE__ */ new Set([
248
- "floor",
249
- "grid",
250
- "label-layer"
251
- ]);
252
- var Se = "selvaGeometryCache";
253
- function Fn(e) {
254
- [...e.children].forEach((t) => {
255
- Pn.has(t.userData.id) || t.userData.source !== "user" && (t.traverse((r) => {
256
- let a = r;
257
- if (!a.geometry && !a.material) return;
258
- a.geometry?.userData?.[Se] || a.geometry?.dispose();
259
- let o = a.material;
260
- if (!o) return;
261
- (Array.isArray(o) ? o : [o]).forEach((l) => {
262
- if (!We.has(l)) {
263
- for (let s of Object.values(l)) s instanceof z.Texture && s.dispose();
264
- l.dispose();
265
- }
266
- });
267
- }), t.removeFromParent());
268
- });
269
- }
270
- function Bn(e) {
271
- let n = e.clone().normalize(), t = new z.Vector3(0, 0, 1), r = new z.Vector3(0, 1, 0), a = Math.abs(n.dot(t)) > .9 ? r : t, o = new z.Vector3().crossVectors(n, a).normalize(), i = new z.Vector3().crossVectors(o, n).normalize();
272
- return {
273
- top: n.clone(),
274
- bottom: n.clone().negate(),
275
- front: i.clone(),
276
- back: i.clone().negate(),
277
- right: o.clone(),
278
- left: o.clone().negate(),
279
- iso: i.clone().multiplyScalar(1.2).add(o.clone()).add(n.clone()).normalize()
280
- };
281
- }
282
- function vt(e) {
283
- let { scene: n, perspective: t, controls: r, onActiveCameraChange: a } = e, o = (e.up ?? t.up).clone().normalize(), i = Bn(o), l = new z.OrthographicCamera(-1, 1, 1, -1, t.near, t.far);
284
- l.up.copy(o);
285
- let s = "perspective", c = t.aspect, u = () => s === "perspective" ? t : l, d = null, E = () => {
286
- d?.cancel(), d = null;
287
- }, T = () => {
288
- let h = (s === "orthographic" ? l : t).position.distanceTo(r.target) * Math.tan(t.fov * Math.PI / 360), b = h * c;
289
- l.left = -b, l.right = b, l.top = h, l.bottom = -h, l.near = t.near, l.far = t.far, l.updateProjectionMatrix();
290
- }, v = (p) => {
291
- if (p !== s) {
292
- if (E(), p === "orthographic") l.position.copy(t.position), l.up.copy(t.up), l.lookAt(r.target), l.zoom = 1, T();
293
- else {
294
- let h = (l.top - l.bottom) / (2 * l.zoom) / Math.tan(t.fov * Math.PI / 360), b = l.position.clone().sub(r.target);
295
- b.lengthSq() < 1e-12 && b.copy(o), b.normalize(), t.position.copy(r.target).add(b.multiplyScalar(h));
296
- }
297
- s = p, r.object = u(), r.update(), a(u());
298
- }
299
- }, y = (p, f, h, b) => {
300
- let C = t.fov * (Math.PI / 180), H = f / (2 * Math.tan(C / 2)) * 1.5, L = kn(h, o), P = p.clone().add(L.clone().multiplyScalar(H)), k = u();
301
- s === "orthographic" && (l.zoom = 1), E(), b ? d = _n(k, r, P, p, () => {
302
- s === "orthographic" && T();
303
- }) : (k.position.copy(P), r.target.copy(p), s === "orthographic" && T(), r.update());
304
- }, m = (p, f = true) => {
305
- let h = le(n), b = h.isEmpty() ? r.target.clone() : h.getCenter(new z.Vector3()), C = h.isEmpty() ? new z.Vector3(1, 1, 1) : h.getSize(new z.Vector3()), H = Math.max(C.x, C.y, C.z) || 1;
306
- y(b, H, p, f);
307
- };
308
- return {
309
- getActiveCamera: u,
310
- getProjection: () => s,
311
- setProjection: v,
312
- toggleProjection: () => (v(s === "perspective" ? "orthographic" : "perspective"), s),
313
- setView: (p, f = true) => {
314
- m(i[p], f);
315
- },
316
- setViewDirection: m,
317
- frameBounds: (p, f = true) => {
318
- if (p.isEmpty()) return;
319
- let h = p.getCenter(new z.Vector3()), b = p.getSize(new z.Vector3()), C = Math.max(b.x, b.y, b.z) || 1, H = u().position.clone().sub(r.target);
320
- H.lengthSq() < 1e-12 && H.copy(i.iso), y(h, C, H.normalize(), f);
321
- },
322
- setRotateEnabled: (p) => {
323
- r.enableRotate = p;
324
- },
325
- isRotateEnabled: () => r.enableRotate,
326
- updateAspect: (p, f) => {
327
- c = f === 0 ? c : p / f, s === "orthographic" && T();
328
- },
329
- dispose: E
330
- };
331
- }
332
- function kn(e, n) {
333
- let t = n.clone().normalize(), r = e.clone().normalize();
334
- if (Math.abs(r.dot(t)) < .9999) return e;
335
- let a = Math.abs(t.dot(new z.Vector3(0, 0, 1))) > .9 ? new z.Vector3(0, 1, 0) : new z.Vector3(0, 0, 1), o = new z.Vector3().crossVectors(t, a).normalize(), i = .5 * Math.PI / 180;
336
- return r.multiplyScalar(Math.cos(i)).add(o.multiplyScalar(Math.sin(i))).normalize();
337
- }
338
- var Un = (e) => 1 - Math.pow(1 - e, 3);
339
- function _n(e, n, t, r, a, o = 250) {
340
- let i = e.position.clone(), l = n.target.clone(), s = performance.now(), c = null, u = () => {
341
- c = null;
342
- let d = Un(Math.min((performance.now() - s) / o, 1));
343
- e.position.lerpVectors(i, t, d), n.target.lerpVectors(l, r, d), a(), n.update(), d < 1 && (c = requestAnimationFrame(u));
344
- };
345
- return c = requestAnimationFrame(u), { cancel: () => {
346
- c !== null && (cancelAnimationFrame(c), c = null);
347
- } };
348
- }
349
- function Vn(e) {
350
- if (!(e > 0) || !Number.isFinite(e)) return 1;
351
- let t = Math.pow(10, Math.floor(Math.log10(e))), r = e / t;
352
- return (r >= 5 ? 5 : r >= 2 ? 2 : 1) * t;
353
- }
354
- var zn = `
355
- varying vec3 vWorldPos;
356
- void main() {
357
- vec4 world = modelMatrix * vec4(position, 1.0);
358
- vWorldPos = world.xyz;
359
- gl_Position = projectionMatrix * viewMatrix * world;
360
- }
361
- `;
362
- var Gn = `
363
- precision highp float;
364
- varying vec3 vWorldPos;
365
-
366
- uniform vec2 uAxes; // indices (0=x,1=y,2=z) of the two in-plane world axes
367
- uniform float uCell;
368
- uniform float uMajor;
369
- uniform vec3 uCellColor;
370
- uniform vec3 uMajorColor;
371
- uniform vec3 uCenter; // fade center (camera position), projected onto plane
372
- uniform float uFade;
373
-
374
- // Antialiased grid line intensity for a given spacing, using screen-space derivatives so lines
375
- // stay ~1px regardless of zoom (the standard "pristine grid" technique).
376
- float gridLine(vec2 coord, float spacing) {
377
- vec2 c = coord / spacing;
378
- vec2 d = fwidth(c);
379
- vec2 g = abs(fract(c - 0.5) - 0.5) / max(d, 1e-6);
380
- float line = min(g.x, g.y);
381
- return 1.0 - clamp(line, 0.0, 1.0);
382
- }
383
-
384
- // Index a vec3 by a float axis id (0/1/2) without dynamic indexing (WebGL1-safe).
385
- float axis(vec3 v, float i) {
386
- return i < 0.5 ? v.x : (i < 1.5 ? v.y : v.z);
387
- }
388
-
389
- void main() {
390
- // Pick the two in-plane world coordinates.
391
- vec2 coord = vec2(axis(vWorldPos, uAxes.x), axis(vWorldPos, uAxes.y));
392
-
393
- float minor = gridLine(coord, uCell);
394
- float major = gridLine(coord, uCell * uMajor);
395
-
396
- vec3 color = mix(uCellColor, uMajorColor, major);
397
- float alpha = max(minor, major);
398
-
399
- // Radial fade from the camera-projected center.
400
- float dist = distance(vWorldPos, uCenter);
401
- float fade = 1.0 - clamp(dist / uFade, 0.0, 1.0);
402
- alpha *= fade * fade;
403
-
404
- if (alpha < 0.001) discard;
405
- gl_FragColor = vec4(color, alpha);
406
- }
407
- `;
408
- function wt(e = {}) {
409
- let { cellSize: n = 1, majorEvery: t = 10, cellColor: r = 8947848, majorColor: a = 4473924, fadeDistance: o = 100, plane: i = "y" } = e, l = i === "y" ? new z.Vector2(0, 2) : i === "z" ? new z.Vector2(0, 1) : new z.Vector2(1, 2), s = 2.5, c = new z.PlaneGeometry(1, 1);
410
- i === "y" ? c.rotateX(-Math.PI / 2) : i === "x" && c.rotateY(Math.PI / 2);
411
- let u = new z.ShaderMaterial({
412
- vertexShader: zn,
413
- fragmentShader: Gn,
414
- transparent: true,
415
- depthWrite: false,
416
- side: z.DoubleSide,
417
- uniforms: {
418
- uAxes: { value: l },
419
- uCell: { value: n },
420
- uMajor: { value: t },
421
- uCellColor: { value: new z.Color(r) },
422
- uMajorColor: { value: new z.Color(a) },
423
- uCenter: { value: new z.Vector3() },
424
- uFade: { value: o }
425
- }
426
- }), d = new z.Mesh(c, u);
427
- d.name = "grid", d.userData.id = "grid", d.renderOrder = -1;
428
- let E = o, T = o * s, v = new z.Vector3();
429
- return {
430
- object: d,
431
- update: (y) => {
432
- i === "y" ? (d.position.set(y.x, 0, y.z), v.set(y.x, 0, y.z)) : i === "z" ? (d.position.set(y.x, y.y, 0), v.set(y.x, y.y, 0)) : (d.position.set(0, y.y, y.z), v.set(0, y.y, y.z)), u.uniforms.uCenter.value.copy(v), d.scale.setScalar(T);
433
- },
434
- fitToContent: (y) => {
435
- if (y.isEmpty()) return;
436
- let m = y.getSize(new z.Vector3()), g = (M, p) => p === 0 ? M.x : p === 1 ? M.y : M.z, R = Math.max(g(m, l.x), g(m, l.y));
437
- if (!(R > 0) || !Number.isFinite(R)) return;
438
- let x = 20;
439
- u.uniforms.uCell.value = Vn(R / x), E = R * 2, u.uniforms.uFade.value = E, T = E * s;
440
- },
441
- setVisible: (y) => {
442
- d.visible = y;
443
- },
444
- dispose: () => {
445
- d.removeFromParent(), c.dispose(), u.dispose();
446
- }
447
- };
448
- }
449
- function Mt(e) {
450
- let { camera: n, domElement: t, controller: r } = e, a = new ViewHelper(n, t);
451
- a.setLabels("X", "Y", "Z");
452
- let o = true, i = 128, l = new z.Raycaster(), s = new z.OrthographicCamera(-2, 2, 2, -2, 0, 4);
453
- s.position.set(0, 0, 2), s.updateMatrixWorld();
454
- let c = {
455
- posX: new z.Vector3(1, 0, 0),
456
- negX: new z.Vector3(-1, 0, 0),
457
- posY: new z.Vector3(0, 1, 0),
458
- negY: new z.Vector3(0, -1, 0),
459
- posZ: new z.Vector3(0, 0, 1),
460
- negZ: new z.Vector3(0, 0, -1)
461
- }, u = (E) => {
462
- let T = t.getBoundingClientRect(), v = T.left + t.offsetWidth - i - a.location.right, y = T.top + t.offsetHeight - i - a.location.bottom, m = new z.Vector2((E.clientX - v) / i * 2 - 1, -((E.clientY - y) / i) * 2 + 1);
463
- if (Math.abs(m.x) > 1 || Math.abs(m.y) > 1) return null;
464
- a.quaternion.copy(n.quaternion).invert(), a.updateMatrixWorld(), l.setFromCamera(m, s);
465
- let g = l.intersectObjects(a.children, false);
466
- for (let R of g) {
467
- let x = R.object.userData?.type;
468
- if (typeof x == "string" && x in c) return x;
469
- }
470
- return null;
471
- };
472
- return {
473
- render: (E) => {
474
- if (!o) return;
475
- let T = E.autoClear;
476
- E.autoClear = false, a.render(E), E.autoClear = T;
477
- },
478
- update: () => {},
479
- handleClick: (E) => {
480
- if (!o) return false;
481
- let T = u(E);
482
- return T ? (r.getProjection() === "orthographic" && r.setProjection("perspective"), r.setViewDirection(c[T], false), true) : false;
483
- },
484
- isAnimating: false,
485
- setVisible: (E) => {
486
- o = E;
487
- },
488
- isVisible: () => o,
489
- dispose: () => a.dispose()
490
- };
491
- }
492
- function De(e, n, t) {
493
- let o = Math.cos(Math.PI / 180 * t), i = e.length / 3;
494
- if (i >= 67108864) throw new Error(`extractEdgeSegments: ${i} vertices exceeds 2^26 limit`);
495
- let l = new Float64Array(i), s = new Float64Array(i), c = new Float64Array(i);
496
- for (let f = 0; f < i; f++) l[f] = Math.round(e[3 * f] * 1e4), s[f] = Math.round(e[3 * f + 1] * 1e4), c[f] = Math.round(e[3 * f + 2] * 1e4);
497
- let u = 16;
498
- for (; u < i * 2;) u <<= 1;
499
- let d = u - 1, E = new Int32Array(u).fill(-1), T = new Int32Array(i);
500
- for (let f = 0; f < i; f++) {
501
- let h = (Math.imul(l[f] | 0, 73856093) ^ Math.imul(s[f] | 0, 19349663) ^ Math.imul(c[f] | 0, 83492791)) & d;
502
- for (;;) {
503
- let b = E[h];
504
- if (b === -1) {
505
- E[h] = f, T[f] = f;
506
- break;
507
- }
508
- if (l[b] === l[f] && s[b] === s[f] && c[b] === c[f]) {
509
- T[f] = b;
510
- break;
511
- }
512
- h = h + 1 & d;
513
- }
514
- }
515
- let v = /* @__PURE__ */ new Float32Array(4096), y = 0, m = (f, h) => {
516
- if (y + 6 > v.length) {
517
- let b = new Float32Array(v.length * 2);
518
- b.set(v), v = b;
519
- }
520
- v[y++] = e[3 * f], v[y++] = e[3 * f + 1], v[y++] = e[3 * f + 2], v[y++] = e[3 * h], v[y++] = e[3 * h + 1], v[y++] = e[3 * h + 2];
521
- }, g = /* @__PURE__ */ new Map(), R = [], x = [], M = [], p = (n ? n.length : i) / 3;
522
- for (let f = 0; f < p; f++) {
523
- let h = n ? n[3 * f] : 3 * f, b = n ? n[3 * f + 1] : 3 * f + 1, C = n ? n[3 * f + 2] : 3 * f + 2, H = T[h], L = T[b], P = T[C];
524
- if (H === L || L === P || P === H) continue;
525
- let k = e[3 * C] - e[3 * b], O = e[3 * C + 1] - e[3 * b + 1], I = e[3 * C + 2] - e[3 * b + 2], S = e[3 * h] - e[3 * b], D = e[3 * h + 1] - e[3 * b + 1], G = e[3 * h + 2] - e[3 * b + 2], j = O * G - I * D, $ = I * S - k * G, U = k * D - O * S, Q = j * j + $ * $ + U * U;
526
- if (Q > 0) {
527
- let K = 1 / Math.sqrt(Q);
528
- j *= K, $ *= K, U *= K;
529
- } else j = 0, $ = 0, U = 0;
530
- for (let K = 0; K < 3; K++) {
531
- let de, fe, ne, se;
532
- K === 0 ? (de = h, fe = b, ne = H, se = L) : K === 1 ? (de = b, fe = C, ne = L, se = P) : (de = C, fe = h, ne = P, se = H);
533
- let Ae = se * 67108864 + ne, me = g.get(Ae);
534
- if (me !== void 0 && me !== -1) j * M[3 * me] + $ * M[3 * me + 1] + U * M[3 * me + 2] <= o && m(de, fe), g.set(Ae, -1);
535
- else {
536
- let ge = ne * 67108864 + se;
537
- if (!g.has(ge)) {
538
- let je = R.length;
539
- g.set(ge, je), R.push(de), x.push(fe), M.push(j, $, U);
540
- }
541
- }
542
- }
543
- }
544
- for (let f of g.values()) f !== -1 && m(R[f], x[f]);
545
- return v.slice(0, y);
546
- }
547
- function Ct() {
548
- return [
549
- `const extract = ${De.toString()};`,
550
- "self.onmessage = (event) => {",
551
- " const { id, positions, index, thresholdAngle } = event.data;",
552
- " try {",
553
- " const segments = extract(positions, index, thresholdAngle);",
554
- " self.postMessage({ id, segments }, [segments.buffer]);",
555
- " } catch (error) {",
556
- " self.postMessage({ id, error: String((error && error.message) || error) });",
557
- " }",
558
- "};"
559
- ].join(`
560
- `);
561
- }
562
- var xe = "edge-overlay";
563
- var Qe = "triangle-cap";
564
- var qn = 2236962;
565
- var Yn = 1.5;
566
- var Xn = 44;
567
- var Kn = .75;
568
- var Zn = 4e6;
569
- var Jn = 2e6;
570
- var Qn = 25e3;
571
- var Ht = 128 * 1024 * 1024;
572
- var er = 80;
573
- var At = 20;
574
- var tr = 1;
575
- var nr = 2;
576
- function Dt(e, n) {
577
- let t = Array.isArray(e.material) ? e.material : [e.material];
578
- for (let r of t) r && (r.polygonOffset = n, r.polygonOffsetFactor = n ? tr : 0, r.polygonOffsetUnits = n ? nr : 0);
579
- }
580
- function Ye(e) {
581
- let n = e.getAttribute("position");
582
- return n ? (e.index ? e.index.count : n.count) / 3 : 0;
583
- }
584
- function Lt(e) {
585
- let n = e.getAttribute("position");
586
- if (!n || n.isInterleavedBufferAttribute || n.itemSize !== 3 || !(n.array instanceof Float32Array) || n.count >= 67108864) return null;
587
- let t = e.index;
588
- return t && !(t.array instanceof Uint32Array) && !(t.array instanceof Uint16Array) ? null : {
589
- positions: n.array,
590
- index: t ? t.array : null
591
- };
592
- }
593
- function Ot(e, n) {
594
- let r = 2166136261, a = (s) => {
595
- r ^= s, r = Math.imul(r, 16777619);
596
- }, o = new Uint32Array(e.positions.buffer, e.positions.byteOffset, e.positions.length), i = Math.min(4096, o.length);
597
- for (let s = 0; s < i; s++) a(o[s]);
598
- for (let s = Math.max(i, o.length - 4096); s < o.length; s++) a(o[s]);
599
- let l = 0;
600
- if (e.index) {
601
- l = e.index.length;
602
- let s = Math.min(4096, l);
603
- for (let c = 0; c < s; c++) a(e.index[c]);
604
- for (let c = Math.max(s, l - 4096); c < l; c++) a(e.index[c]);
605
- }
606
- return `${n}:${e.positions.length}:${l}:${r >>> 0}`;
607
- }
608
- var ce = /* @__PURE__ */ new Map();
609
- var Le = 0;
610
- function It(e) {
611
- let n = ce.get(e);
612
- return n && (ce.delete(e), ce.set(e, n)), n;
613
- }
614
- function Pt(e, n) {
615
- if (n.byteLength > Ht) return;
616
- let t = ce.get(e);
617
- for (t && (Le -= t.byteLength, ce.delete(e)), ce.set(e, n), Le += n.byteLength; Le > Ht;) {
618
- let r = ce.keys().next().value;
619
- Le -= ce.get(r).byteLength, ce.delete(r);
620
- }
621
- }
622
- function rr(e, n) {
623
- let t = new z.EdgesGeometry(e, n), r = t.attributes.position ? t.attributes.position.array : /* @__PURE__ */ new Float32Array(0);
624
- return t.dispose(), r;
625
- }
626
- function Xe(e, n) {
627
- let t = Lt(e);
628
- if (!t) return rr(e, n);
629
- let r = Ot(t, n), a = It(r);
630
- if (a) return a;
631
- let o = De(t.positions, t.index, n);
632
- return Pt(r, o), o;
633
- }
634
- var Ee;
635
- var Re = /* @__PURE__ */ new Map();
636
- var or = 1;
637
- function ar() {
638
- if (Ee !== void 0) return Ee;
639
- if (typeof Worker > "u" || typeof Blob > "u" || typeof URL > "u" || typeof URL.createObjectURL != "function") return Ee = null, null;
640
- try {
641
- let e = URL.createObjectURL(new Blob([Ct()], { type: "text/javascript" })), n = new Worker(e);
642
- n.onmessage = (t) => {
643
- let { id: r, segments: a, error: o } = t.data, i = Re.get(r);
644
- i && (Re.delete(r), a ? i.resolve(a) : i.reject(new Error(o ?? "edge extraction failed in worker")));
645
- }, n.onerror = () => {
646
- for (let t of Re.values()) t.reject(/* @__PURE__ */ new Error("edge extraction worker crashed"));
647
- Re.clear(), n.terminate(), Ee = null;
648
- }, Ee = n;
649
- } catch {
650
- Ee = null;
651
- }
652
- return Ee;
653
- }
654
- function ir(e, n, t) {
655
- return new Promise((r, a) => {
656
- let o = or++;
657
- Re.set(o, {
658
- resolve: r,
659
- reject: a
660
- });
661
- let i = n.positions.slice(), l = n.index ? n.index.slice() : null, s = [i.buffer];
662
- l && s.push(l.buffer), e.postMessage({
663
- id: o,
664
- positions: i,
665
- index: l,
666
- thresholdAngle: t
667
- }, s);
668
- });
669
- }
670
- var qe = /* @__PURE__ */ new Map();
671
- function sr(e, n) {
672
- let t = Lt(e);
673
- if (!t || Ye(e) < Qn) return Promise.resolve(Xe(e, n));
674
- let r = Ot(t, n), a = It(r);
675
- if (a) return Promise.resolve(a);
676
- let o = qe.get(r);
677
- if (o) return o;
678
- let i = ar();
679
- if (!i) return Promise.resolve(Xe(e, n));
680
- let l = ir(i, t, n).catch(() => De(t.positions, t.index, n)).then((s) => (Pt(r, s), s)).finally(() => {
681
- qe.delete(r);
682
- });
683
- return qe.set(r, l), l;
684
- }
685
- var Oe = /* @__PURE__ */ new WeakMap();
686
- function Ke(e, n) {
687
- return Oe.get(e)?.get(n);
688
- }
689
- function Ft(e, n, t) {
690
- let r = Oe.get(e);
691
- r || (r = /* @__PURE__ */ new Map(), Oe.set(e, r));
692
- let a = new LineSegmentsGeometry();
693
- a.setPositions(t);
694
- let o = {
695
- geometry: a,
696
- refCount: 0,
697
- segmentCount: t.length / 6
698
- };
699
- return r.set(n, o), o;
700
- }
701
- function lr(e) {
702
- let n = e.userData, t = n.edgeSource && Oe.get(n.edgeSource), r = n.edgeThresholdAngle != null ? t?.get(n.edgeThresholdAngle) : void 0;
703
- if (!r || r.geometry !== e.geometry) {
704
- e.geometry.dispose();
705
- return;
706
- }
707
- r.refCount -= 1, r.refCount <= 0 && (r.geometry.dispose(), t.delete(n.edgeThresholdAngle));
708
- }
709
- function Bt(e) {
710
- return {
711
- forcedColor: e.color != null ? new z.Color(e.color) : null,
712
- darken: z.MathUtils.clamp(e.darken ?? Kn, 0, 1),
713
- width: e.width ?? Yn,
714
- thresholdAngle: e.thresholdAngle ?? Xn,
715
- distanceFade: e.distanceFade ?? true,
716
- maxTriangles: e.maxTriangles ?? Zn,
717
- maxSegments: e.maxSegments ?? Jn
718
- };
719
- }
720
- function cr(e, n) {
721
- let r = (Array.isArray(e.material) ? e.material[0] : e.material)?.color;
722
- return r ? r.clone().multiplyScalar(1 - n) : new z.Color(qn);
723
- }
724
- var Ie = class {
725
- constructor(n) {
726
- h(this, "options", n);
727
- h(this, "byKey", /* @__PURE__ */ new Map());
728
- }
729
- for(n, t) {
730
- let r = this.options.forcedColor ?? cr(n, this.options.darken), a = r.getHex() * 2 + (t ? 1 : 0), o = this.byKey.get(a);
731
- return o || (o = ur(r, this.options.width, t), this.byKey.set(a, o)), o;
732
- }
733
- disposeUnused(n) {
734
- let t = new Set(n.map((r) => r.material));
735
- for (let r of this.byKey.values()) t.has(r) || r.dispose();
736
- }
737
- };
738
- function ur(e, n, t) {
739
- let r = new LineMaterial({ color: e });
740
- return r.linewidth = n, t && (r.transparent = true), r;
741
- }
742
- function dr(e, n, t, r, a) {
743
- n.refCount += 1;
744
- let o = new LineSegments2(n.geometry, t);
745
- return o.userData.kind = xe, o.userData.edgeSource = e, o.userData.edgeThresholdAngle = r, o.raycast = () => {}, a && pr(o), o;
746
- }
747
- var St = new z.Vector3();
748
- var mr = new z.Vector3();
749
- function fr(e, n, t) {
750
- e.geometry.boundingSphere || e.geometry.computeBoundingSphere();
751
- let r = e.geometry.boundingSphere;
752
- if (!r || r.radius <= 0) return Infinity;
753
- let a = r.radius * e.matrixWorld.getMaxScaleOnAxis();
754
- if (St.copy(r.center).applyMatrix4(e.matrixWorld), n.isPerspectiveCamera) {
755
- let o = n, i = mr.setFromMatrixPosition(n.matrixWorld).distanceTo(St);
756
- if (i <= a) return Infinity;
757
- return a / (i * Math.tan(z.MathUtils.degToRad(o.fov) * .5)) * t;
758
- }
759
- if (n.isOrthographicCamera) {
760
- let o = n, i = (o.top - o.bottom) / o.zoom;
761
- return i > 0 ? 2 * a / i * t : Infinity;
762
- }
763
- return Infinity;
764
- }
765
- function pr(e) {
766
- e.onBeforeRender = (n, t, r) => {
767
- LineSegments2.prototype.onBeforeRender.call(e, n);
768
- let a = e.material, o = fr(e, r, a.resolution.y);
769
- a.opacity = z.MathUtils.clamp((o - At) / (er - At), 0, 1);
770
- };
771
- }
772
- function Er(e) {
773
- return e.userData?.kind === xe;
774
- }
775
- function kt(e, n) {
776
- let t = [];
777
- return e.traverse((r) => {
778
- if (r instanceof z.Mesh && !(r.userData.id === "floor" || r.userData.id === "grid") && r.userData.kind !== "edge-overlay" && !r.children.some((a) => a.userData?.kind === "edge-overlay") && r.geometry) {
779
- if (Ye(r.geometry) > n) {
780
- r.userData.edgesSkipped = Qe, console.debug(`[edges] skipping mesh over triangle cap (${Ye(r.geometry)} > ${n})`);
781
- return;
782
- }
783
- delete r.userData.edgesSkipped, t.push(r);
784
- }
785
- }), t;
786
- }
787
- function Ut(e, n, t, r) {
788
- let a = r.distanceFade && n.segmentCount <= r.maxSegments, o = dr(e.geometry, n, t.for(e, a), r.thresholdAngle, a);
789
- return e.add(o), Dt(e, true), o;
790
- }
791
- function La(e, n = {}) {
792
- let t = Bt(n), r = new Ie(t), a = [];
793
- for (let o of kt(e, t.maxTriangles)) {
794
- let i = Ke(o.geometry, t.thresholdAngle) ?? Ft(o.geometry, t.thresholdAngle, Xe(o.geometry, t.thresholdAngle));
795
- a.push(Ut(o, i, r, t));
796
- }
797
- return r.disposeUnused(a), a;
798
- }
799
- var _t = /* @__PURE__ */ new WeakMap();
800
- function Ze(e) {
801
- return _t.get(e) ?? 0;
802
- }
803
- function hr(e, n) {
804
- for (let t = e; t; t = t.parent) if (t === n) return true;
805
- return false;
806
- }
807
- async function Vt(e, n = {}) {
808
- let t = Bt(n), r = new Ie(t), a = Ze(e), o = [], i = kt(e, t.maxTriangles).map(async (l) => {
809
- let s = Ke(l.geometry, t.thresholdAngle);
810
- if (!s) {
811
- let c = await sr(l.geometry, t.thresholdAngle);
812
- if (Ze(e) !== a || !hr(l, e) || l.children.some((u) => u.userData?.kind === "edge-overlay")) return;
813
- s = Ke(l.geometry, t.thresholdAngle), s || (s = Ft(l.geometry, t.thresholdAngle, c));
814
- }
815
- o.push(Ut(l, s, r, t));
816
- });
817
- return await Promise.all(i), r.disposeUnused(o), o;
818
- }
819
- function zt(e) {
820
- _t.set(e, Ze(e) + 1);
821
- let n = [];
822
- e.traverse((r) => {
823
- r instanceof LineSegments2 && Er(r) && n.push(r);
824
- });
825
- let t = /* @__PURE__ */ new Set();
826
- for (let r of n) lr(r), t.add(r.material), r.parent instanceof z.Mesh && Dt(r.parent, false), r.removeFromParent();
827
- return t.forEach((r) => r.dispose()), n.length;
828
- }
829
- var et = {
830
- uniforms: {
831
- tDiffuse: { value: null },
832
- tNormal: { value: null },
833
- tDepth: { value: null },
834
- uResolution: { value: new z.Vector2(1, 1) },
835
- uColor: { value: new z.Color(2236962) },
836
- uOpacity: { value: 1 },
837
- uNormalThreshold: { value: .4 },
838
- uDepthThreshold: { value: .02 },
839
- uThickness: { value: 1 },
840
- uNear: { value: .1 },
841
- uFar: { value: 1e3 },
842
- uPerspective: { value: 1 }
843
- },
844
- vertexShader: `
845
- varying vec2 vUv;
846
- void main() {
847
- vUv = uv;
848
- gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);
849
- }
850
- `,
851
- fragmentShader: `
852
- uniform sampler2D tDiffuse;
853
- uniform sampler2D tNormal;
854
- uniform sampler2D tDepth;
855
- uniform vec2 uResolution;
856
- uniform vec3 uColor;
857
- uniform float uOpacity;
858
- uniform float uNormalThreshold;
859
- uniform float uDepthThreshold;
860
- uniform float uThickness;
861
- uniform float uNear;
862
- uniform float uFar;
863
- uniform float uPerspective;
864
- varying vec2 vUv;
865
-
866
- float viewZOf(const in float depth) {
867
- float perspective = (uNear * uFar) / ((uFar - uNear) * depth - uFar);
868
- float orthographic = -(depth * (uFar - uNear) + uNear);
869
- return mix(orthographic, perspective, uPerspective);
870
- }
871
-
872
- void main() {
873
- vec4 color = texture2D(tDiffuse, vUv);
874
- vec2 texel = uThickness / uResolution;
875
-
876
- // Roberts cross over the two diagonal pairs.
877
- vec2 offsetA = vec2(texel.x, texel.y);
878
- vec2 offsetB = vec2(texel.x, -texel.y);
879
-
880
- float z0 = viewZOf(texture2D(tDepth, vUv + offsetA).x);
881
- float z1 = viewZOf(texture2D(tDepth, vUv - offsetA).x);
882
- float z2 = viewZOf(texture2D(tDepth, vUv + offsetB).x);
883
- float z3 = viewZOf(texture2D(tDepth, vUv - offsetB).x);
884
- float zCenter = viewZOf(texture2D(tDepth, vUv).x);
885
- // Relative difference: a constant threshold in absolute Z turns distant geometry into
886
- // noise (depth precision) and near geometry blind; normalizing by the center depth keeps
887
- // the response scale-invariant across the viewer's mm\u2192m scenes.
888
- float depthDelta = (abs(z0 - z1) + abs(z2 - z3)) / max(abs(zCenter), 1e-6);
889
- float depthEdge = step(uDepthThreshold, depthDelta);
890
-
891
- vec3 n0 = texture2D(tNormal, vUv + offsetA).rgb * 2.0 - 1.0;
892
- vec3 n1 = texture2D(tNormal, vUv - offsetA).rgb * 2.0 - 1.0;
893
- vec3 n2 = texture2D(tNormal, vUv + offsetB).rgb * 2.0 - 1.0;
894
- vec3 n3 = texture2D(tNormal, vUv - offsetB).rgb * 2.0 - 1.0;
895
- float normalDelta = (1.0 - dot(n0, n1)) + (1.0 - dot(n2, n3));
896
- float normalEdge = step(uNormalThreshold, normalDelta);
897
-
898
- float edge = max(depthEdge, normalEdge) * uOpacity;
899
- gl_FragColor = vec4(mix(color.rgb, uColor, edge), color.a);
900
- }
901
- `
902
- };
903
- var Pe = class extends Pass {
904
- constructor(t, r, a, o, i = {}) {
905
- super();
906
- h(this, "camera");
907
- h(this, "scene");
908
- h(this, "normalMaterial");
909
- h(this, "edgeMaterial");
910
- h(this, "fsQuad");
911
- h(this, "normalTarget", null);
912
- h(this, "width");
913
- h(this, "height");
914
- this.scene = t, this.camera = r, this.width = Math.max(1, a), this.height = Math.max(1, o), this.normalMaterial = new z.MeshNormalMaterial(), this.normalMaterial.blending = z.NoBlending, this.edgeMaterial = new z.ShaderMaterial({
915
- uniforms: z.UniformsUtils.clone(et.uniforms),
916
- vertexShader: et.vertexShader,
917
- fragmentShader: et.fragmentShader
918
- });
919
- let l = this.edgeMaterial.uniforms;
920
- l.uColor.value = new z.Color(i.color ?? 2236962), l.uOpacity.value = i.opacity ?? 1, l.uNormalThreshold.value = i.normalThreshold ?? .4, l.uDepthThreshold.value = i.depthThreshold ?? .02, l.uThickness.value = i.thickness ?? 1, this.fsQuad = new FullScreenQuad(this.edgeMaterial), this.needsSwap = true;
921
- }
922
- acquireNormalTarget() {
923
- if (!this.normalTarget) {
924
- let t = new z.DepthTexture(this.width, this.height);
925
- this.normalTarget = new z.WebGLRenderTarget(this.width, this.height, {
926
- minFilter: z.NearestFilter,
927
- magFilter: z.NearestFilter,
928
- depthTexture: t
929
- });
930
- }
931
- return this.normalTarget;
932
- }
933
- setSize(t, r) {
934
- this.width = Math.max(1, t), this.height = Math.max(1, r), this.normalTarget?.setSize(this.width, this.height);
935
- }
936
- render(t, r, a) {
937
- let o = this.acquireNormalTarget(), i = t.getRenderTarget(), l = t.autoClear, s = t.getClearColor(new z.Color()), c = t.getClearAlpha(), u = this.scene.overrideMaterial;
938
- t.setRenderTarget(o), t.setClearColor(7829503, 1), t.autoClear = true, this.scene.overrideMaterial = this.normalMaterial, t.render(this.scene, this.camera), this.scene.overrideMaterial = u, t.setClearColor(s, c), t.autoClear = l;
939
- let d = this.edgeMaterial.uniforms;
940
- d.tDiffuse.value = a.texture, d.tNormal.value = o.texture, d.tDepth.value = o.depthTexture, d.uResolution.value.set(this.width, this.height);
941
- let E = this.camera;
942
- d.uPerspective.value = E.isPerspectiveCamera ? 1 : 0, d.uNear.value = this.camera.near ?? .1, d.uFar.value = this.camera.far ?? 1e3, t.setRenderTarget(this.renderToScreen ? null : r), this.fsQuad.render(t), t.setRenderTarget(i);
943
- }
944
- dispose() {
945
- this.normalTarget?.dispose(), this.normalMaterial.dispose(), this.edgeMaterial.dispose(), this.fsQuad.dispose();
946
- }
947
- };
948
- function Gt(e, n, t, r, a, o) {
949
- let i = new EffectComposer(e), l = new RenderPass(n, t);
950
- i.addPass(l);
951
- let s = null;
952
- (o.ambientOcclusion ?? true) && (s = new GTAOPass(n, t, r, a), s.blendIntensity = o.aoIntensity ?? 1, s.updateGtaoMaterial({ screenSpaceRadius: true }), i.addPass(s));
953
- let u = new Pe(n, t, r, a, typeof o.edgeDetection == "object" ? o.edgeDetection : {});
954
- u.enabled = !!o.edgeDetection, i.addPass(u);
955
- let d = new SMAAPass();
956
- i.addPass(d);
957
- let E = new OutputPass();
958
- i.addPass(E), e.toneMapping = o.toneMapping, e.toneMappingExposure = o.toneMappingExposure;
959
- let T = o.aoPixelRatio ?? 1;
960
- return i.setSize(r, a), {
961
- render: (v) => i.render(v),
962
- setSize: (v, y, m) => {
963
- i.setPixelRatio(Math.min(m, T)), i.setSize(v, y);
964
- },
965
- setCamera: (v) => {
966
- if (l.camera = v, u.camera = v, !s) return;
967
- s.camera = v;
968
- let y = v.isPerspectiveCamera ? 1 : 0;
969
- s.gtaoMaterial.defines.PERSPECTIVE_CAMERA !== y && (s.gtaoMaterial.defines.PERSPECTIVE_CAMERA = y, s.gtaoMaterial.needsUpdate = true);
970
- },
971
- setEdgeDetection: (v) => {
972
- u.enabled = v;
973
- },
974
- edgeDetectionEnabled: () => u.enabled,
975
- dispose: () => {
976
- i.dispose(), s?.dispose(), u.dispose(), d.dispose(), E.dispose();
977
- }
978
- };
979
- }
980
- function jt(e, n) {
981
- let t = new CSS2DRenderer(), r = t.domElement;
982
- r.style.position = "absolute", r.style.top = "0", r.style.left = "0", r.style.overflow = "hidden", r.style.pointerEvents = "none", r.style.zIndex = "30", getComputedStyle(e).position === "static" && (e.style.position = "relative"), e.appendChild(r);
983
- let a = {
984
- width: e.clientWidth || 1,
985
- height: e.clientHeight || 1
986
- };
987
- t.setSize(a.width, a.height);
988
- let o = new z.Group();
989
- o.name = "label-layer", o.userData.id = "label-layer", n.add(o);
990
- let i = /* @__PURE__ */ new Set();
991
- return {
992
- addLabel: (s, c, u) => {
993
- let d = document.createElement("div");
994
- d.textContent = s, u ? d.className = u : Object.assign(d.style, {
995
- padding: "2px 6px",
996
- borderRadius: "4px",
997
- background: "rgba(20, 20, 20, 0.78)",
998
- color: "#fff",
999
- font: "12px/1.3 system-ui, sans-serif",
1000
- whiteSpace: "pre",
1001
- textAlign: "center",
1002
- userSelect: "none"
1003
- }), d.style.pointerEvents = "none";
1004
- let E = new CSS2DObject(d);
1005
- return E.position.copy(c), o.add(E), i.add(E), {
1006
- object: E,
1007
- setPosition: (T) => E.position.copy(T),
1008
- setText: (T) => {
1009
- d.textContent = T;
1010
- },
1011
- remove: () => {
1012
- E.removeFromParent(), d.remove(), i.delete(E);
1013
- }
1014
- };
1015
- },
1016
- render: (s, c) => t.render(s, c),
1017
- setSize: (s, c) => t.setSize(s, c),
1018
- dispose: () => {
1019
- i.forEach((s) => {
1020
- s.removeFromParent(), s.element.remove();
1021
- }), i.clear(), o.removeFromParent(), r.remove();
1022
- }
1023
- };
1024
- }
1025
- var Sr = 12;
1026
- var Dr = 16763904;
1027
- var Wt = .015;
1028
- var $t = {
1029
- Millimeters: {
1030
- metersPerUnit: 1 / 1e3,
1031
- suffix: "mm"
1032
- },
1033
- Centimeters: {
1034
- metersPerUnit: 1 / 100,
1035
- suffix: "cm"
1036
- },
1037
- Meters: {
1038
- metersPerUnit: 1,
1039
- suffix: "m"
1040
- },
1041
- Inches: {
1042
- metersPerUnit: 1 / 39.37,
1043
- suffix: "in"
1044
- },
1045
- Feet: {
1046
- metersPerUnit: 1 / 3.28084,
1047
- suffix: "ft"
1048
- }
1049
- };
1050
- function Lr(e) {
1051
- let n = e && $t[e] || $t.Meters;
1052
- return (t) => `${(t / n.metersPerUnit).toPrecision(3)} ${n.suffix}`;
1053
- }
1054
- function Or(e, n) {
1055
- if (e.isOrthographicCamera) {
1056
- let r = e;
1057
- return Math.abs(r.top - r.bottom) / (r.zoom || 1) * Wt;
1058
- }
1059
- return ((n ? e.position.distanceTo(n) : e.position.length()) || 1) * Wt;
1060
- }
1061
- function Ir(e) {
1062
- let n = e.object;
1063
- if (n instanceof z.Mesh) return e.face ? [
1064
- e.face.a,
1065
- e.face.b,
1066
- e.face.c
1067
- ] : null;
1068
- if (n instanceof z.Points) return e.index != null ? [e.index] : null;
1069
- if (n instanceof z.Line) {
1070
- if (e.index == null) return null;
1071
- let t = n.geometry.index;
1072
- return t ? e.index + 1 >= t.count ? null : [t.getX(e.index), t.getX(e.index + 1)] : [e.index, e.index + 1];
1073
- }
1074
- return null;
1075
- }
1076
- function Pr(e, n, t, r) {
1077
- let a = e.point.clone(), o = e.object, i = Ir(e);
1078
- if (!i || !o.geometry) return a;
1079
- let l = o.geometry.attributes.position;
1080
- if (!l) return a;
1081
- let s = (E) => {
1082
- let T = E.clone().project(n);
1083
- return new z.Vector2((T.x + 1) / 2 * t.width, (1 - T.y) / 2 * t.height);
1084
- }, c = s(a), u = a, d = r;
1085
- for (let E of i) {
1086
- if (E >= l.count) continue;
1087
- let v = new z.Vector3().fromBufferAttribute(l, E).applyMatrix4(o.matrixWorld), y = s(v).distanceTo(c);
1088
- y < d && (d = y, u = v);
1089
- }
1090
- return u;
1091
- }
1092
- function qt(e) {
1093
- let { canvas: n, scene: t, getActiveCamera: r, getViewTarget: a, labelLayer: o, options: i = {} } = e, l = i.snapPixels ?? Sr, s = new z.Color(i.color ?? Dr), c = Lr(i.displayUnit), u = (S, D) => `${c(S)}
1094
- \u0394x ${c(D.x)} \u0394y ${c(D.y)} \u0394z ${c(D.z)}`, d = i.format ?? u, E = new z.Raycaster(), T = new z.Vector2(), v = false, y = [], m = [], g = null, R = null, x = new z.PointsMaterial({
1095
- color: s,
1096
- size: 8,
1097
- sizeAttenuation: false,
1098
- depthTest: false
1099
- }), M = new z.PointsMaterial({
1100
- color: s,
1101
- size: 11,
1102
- sizeAttenuation: false,
1103
- depthTest: false,
1104
- transparent: true,
1105
- opacity: .5
1106
- }), p = null, f = (S) => {
1107
- if (!S) {
1108
- p && (p.visible = false);
1109
- return;
1110
- }
1111
- if (!p) {
1112
- let D = new z.BufferGeometry();
1113
- D.setAttribute("position", new z.Float32BufferAttribute([
1114
- 0,
1115
- 0,
1116
- 0
1117
- ], 3)), p = new z.Points(D, M), p.renderOrder = 1e3, p.userData.id = "measure", p.raycast = () => {}, t.add(p);
1118
- }
1119
- p.position.copy(S), p.visible = true;
1120
- }, h = (S) => {
1121
- let D = new z.BufferGeometry();
1122
- D.setAttribute("position", new z.Float32BufferAttribute([
1123
- S.x,
1124
- S.y,
1125
- S.z
1126
- ], 3));
1127
- let G = new z.Points(D, x);
1128
- return G.renderOrder = 999, G.userData.id = "measure", G.raycast = () => {}, t.add(G), G;
1129
- }, b = () => {
1130
- y.length = 0, m.forEach((S) => {
1131
- S.geometry.dispose(), S.removeFromParent();
1132
- }), m.length = 0, g && (g.geometry.dispose(), g.material.dispose(), g.removeFromParent(), g = null), R?.remove(), R = null;
1133
- }, C = () => {
1134
- if (y.length !== 2) return;
1135
- let [S, D] = y, G = new LineGeometry();
1136
- G.setPositions([
1137
- S.x,
1138
- S.y,
1139
- S.z,
1140
- D.x,
1141
- D.y,
1142
- D.z
1143
- ]);
1144
- let j = new LineMaterial({ color: s });
1145
- j.linewidth = 2, j.depthTest = false, g = new Line2(G, j), g.renderOrder = 998, g.userData.id = "measure", g.raycast = () => {}, t.add(g);
1146
- let $ = S.clone().add(D).multiplyScalar(.5), U = new z.Vector3(Math.abs(D.x - S.x), Math.abs(D.y - S.y), Math.abs(D.z - S.z));
1147
- R = o.addLabel(d(S.distanceTo(D), U), $, i.labelClassName);
1148
- }, H = (S) => {
1149
- let D = n.getBoundingClientRect();
1150
- T.x = (S.clientX - D.left) / D.width * 2 - 1, T.y = -((S.clientY - D.top) / D.height) * 2 + 1;
1151
- let G = r();
1152
- E.setFromCamera(T, G);
1153
- let j = Or(G, a?.());
1154
- E.params.Line.threshold = j, E.params.Points.threshold = j;
1155
- let $ = E.intersectObjects(t.children, true).filter((U) => U.object.userData.id !== "measure" && U.object.userData.id !== "grid");
1156
- return $.length === 0 ? null : Pr($[0], G, {
1157
- width: D.width,
1158
- height: D.height
1159
- }, l);
1160
- }, L = null, P = 0, k = () => {
1161
- P && (cancelAnimationFrame(P), P = 0), L = null;
1162
- };
1163
- return {
1164
- setEnabled: (S) => {
1165
- v = S, S || (k(), b(), f(null));
1166
- },
1167
- isEnabled: () => v,
1168
- handleClick: (S) => {
1169
- if (!v) return false;
1170
- y.length === 2 && b();
1171
- let D = H(S);
1172
- return D === null || (y.push(D), m.push(h(D)), y.length === 2 && C()), true;
1173
- },
1174
- handleMove: (S) => {
1175
- v && (L = S, !P && (P = requestAnimationFrame(() => {
1176
- P = 0;
1177
- let D = L;
1178
- L = null, !(!v || !D) && f(H(D));
1179
- })));
1180
- },
1181
- clear: b,
1182
- dispose: () => {
1183
- k(), b(), p && (p.geometry.dispose(), p.removeFromParent(), p = null), x.dispose(), M.dispose();
1184
- }
1185
- };
1186
- }
1187
- var Fr = 64;
1188
- var Br = 256;
1189
- var oe = /* @__PURE__ */ new Map();
1190
- var ve = /* @__PURE__ */ new Map();
1191
- var Fe = 0;
1192
- var ke = class extends Error {
1193
- constructor(n) {
1194
- super(`Texture load for ${n} resolved after clearTextureCache(); texture disposed.`), this.name = "StaleTextureLoadError";
1195
- }
1196
- };
1197
- var Be = 1;
1198
- function Yt(e) {
1199
- Be = Math.max(1, e);
1200
- for (let n of oe.values()) n.anisotropy !== Be && (n.anisotropy = Be, n.needsUpdate = true);
1201
- }
1202
- function Xt(e, n) {
1203
- let t = kr(n), r = oe.get(t);
1204
- if (r) {
1205
- oe.delete(t), oe.set(t, r), e.map = r, e.needsUpdate = true;
1206
- return;
1207
- }
1208
- typeof document > "u" || Vr(n, t).then((a) => {
1209
- e.map = a, e.needsUpdate = true;
1210
- }).catch((a) => {
1211
- a instanceof ke || m().warn(`Failed to load material texture ${n}:`, a);
1212
- });
1213
- }
1214
- function Za() {
1215
- Fe++;
1216
- for (let e of oe.values()) e.dispose();
1217
- oe.clear(), ve.clear();
1218
- }
1219
- function kr(e) {
1220
- return e.length <= Br ? e : `data-uri:${Ur(e).toString(16)}:${e.length}`;
1221
- }
1222
- function Ur(e) {
1223
- let n = 2166136261;
1224
- for (let t = 0; t < e.length; t++) n ^= e.charCodeAt(t), n = Math.imul(n, 16777619);
1225
- return n >>> 0;
1226
- }
1227
- function _r(e, n) {
1228
- for (oe.set(e, n); oe.size > 64;) {
1229
- let t = oe.keys().next().value, r = oe.get(t);
1230
- oe.delete(t), r.dispose();
1231
- }
1232
- }
1233
- function Vr(e, n) {
1234
- let t = ve.get(n);
1235
- if (!t) {
1236
- let r = Fe;
1237
- t = new Promise((a, o) => {
1238
- new z.TextureLoader().load(e, (i) => {
1239
- if (r !== Fe) {
1240
- i.dispose(), o(new ke(e));
1241
- return;
1242
- }
1243
- i.colorSpace = z.SRGBColorSpace, i.anisotropy = Be, _r(n, i), ve.delete(n), a(i);
1244
- }, void 0, (i) => {
1245
- r === Fe && ve.delete(n), o(i);
1246
- });
1247
- }), ve.set(n, t);
1248
- }
1249
- return t;
1250
- }
1251
- var zr = .5;
1252
- var Gr = .01;
1253
- var Nr = .05;
1254
- function Kt({ camera: e, scene: n, groundNormals: t = [] }) {
1255
- let r = e.near, a = e.near, o = new z.Vector3(), i = new z.Vector3();
1256
- return { update: () => {
1257
- e.near !== a && (r = e.near);
1258
- let s = le(n), c = r;
1259
- if (!s.isEmpty()) {
1260
- let u = s.getSize(i).length() * .5, d = e.position.distanceTo(s.getCenter(o)) - u;
1261
- for (let E of t) d = Math.min(d, Math.abs(e.position.dot(E)));
1262
- c = z.MathUtils.clamp(d * zr, r, e.far * Gr);
1263
- }
1264
- Math.abs(c - a) > a * Nr && (e.near = c, e.updateProjectionMatrix(), a = c);
1265
- } };
1266
- }
1267
- var Te = new z.Vector3(0, 0, 1);
1268
- var $r = "technical";
1269
- var tt = {
1270
- studio: {
1271
- toneMapping: z.ACESFilmicToneMapping,
1272
- toneMappingExposure: 1,
1273
- envMapIntensity: 1,
1274
- environmentIntensity: 1,
1275
- hemisphereIntensity: .75,
1276
- ambientIntensity: .4,
1277
- cullBackfaces: false,
1278
- ambientOcclusion: false
1279
- },
1280
- technical: {
1281
- toneMapping: z.NeutralToneMapping,
1282
- toneMappingExposure: 1,
1283
- envMapIntensity: .9,
1284
- environmentIntensity: 1,
1285
- hemisphereIntensity: .35,
1286
- ambientIntensity: .25,
1287
- cullBackfaces: false,
1288
- ambientOcclusion: false
1289
- },
1290
- showcase: {
1291
- toneMapping: z.ACESFilmicToneMapping,
1292
- toneMappingExposure: 1.15,
1293
- envMapIntensity: 1.4,
1294
- environmentIntensity: 1.25,
1295
- hemisphereIntensity: .35,
1296
- ambientIntensity: .15,
1297
- cullBackfaces: false,
1298
- ambientOcclusion: false
1299
- }
1300
- };
1301
- function qr(e) {
1302
- let n = tt[e];
1303
- return {
1304
- envMapIntensity: n.envMapIntensity,
1305
- cullBackfaces: n.cullBackfaces
1306
- };
1307
- }
1308
- function Yr(e) {
1309
- let n = Math.abs(e.x), t = Math.abs(e.y), r = Math.abs(e.z);
1310
- return r >= n && r >= t ? "z" : t >= n && t >= r ? "y" : "x";
1311
- }
1312
- var pi = function(e, n) {
1313
- let t = Xr(n || {}), r = t.environment?.sceneUp || Te, a = t.render.pixelRatio ?? Math.min(window.devicePixelRatio, 2), o = Zr(t), i = no(t, e);
1314
- i.up.copy(r);
1315
- let l = ro(e, t, a);
1316
- Yt(l.capabilities.getMaxAnisotropy());
1317
- let s = ao(i, e, t), c = vt({
1318
- scene: o,
1319
- perspective: i,
1320
- controls: s,
1321
- onActiveCameraChange: () => {},
1322
- up: r
1323
- }), u = () => c.getActiveCamera(), d = false;
1324
- Qr(o, l, t, () => d);
1325
- let E = eo(o, t), T = E.sun, v = () => {
1326
- T && Kr(T, le(o));
1327
- };
1328
- t.floor?.enabled && to(o, t);
1329
- let y = t.grid.enabled ? wt({
1330
- cellSize: t.grid.cellSize,
1331
- majorEvery: t.grid.majorEvery,
1332
- cellColor: t.grid.cellColor,
1333
- majorColor: t.grid.majorColor,
1334
- fadeDistance: t.grid.fadeDistance,
1335
- plane: t.grid.plane
1336
- }) : null;
1337
- y && o.add(y.object);
1338
- let m = () => {
1339
- y && y.fitToContent(le(o));
1340
- }, g = t.gizmo.enabled ? Mt({
1341
- camera: i,
1342
- domElement: e,
1343
- controller: c
1344
- }) : null, R = [];
1345
- if (y) {
1346
- let A = t.grid.plane ?? "z";
1347
- R.push(new z.Vector3(A === "x" ? 1 : 0, A === "y" ? 1 : 0, A === "z" ? 1 : 0));
1348
- }
1349
- t.floor.enabled && R.push(r.clone().normalize());
1350
- let x = t.camera.dynamicNear ? Kt({
1351
- camera: i,
1352
- scene: o,
1353
- groundNormals: R
1354
- }) : null, M = e.parentElement ?? e, p = t.measure.enabled ? jt(M, o) : null, f = t.measure.enabled && p ? qt({
1355
- canvas: e,
1356
- scene: o,
1357
- getActiveCamera: u,
1358
- labelLayer: p,
1359
- options: {
1360
- snapPixels: t.measure.snapPixels,
1361
- color: t.measure.color,
1362
- labelClassName: t.measure.labelClassName,
1363
- displayUnit: t.measure.displayUnit,
1364
- format: t.measure.format
1365
- }
1366
- }) : null, h = t.events.enableEventHandlers !== false ? oo(e, o, c, t) : {
1367
- dispose: () => {},
1368
- fitToView: () => {},
1369
- clearSelection: () => {}
1370
- }, b = 5, C = 0, H = 0, L = (A) => {
1371
- C = A.clientX, H = A.clientY;
1372
- }, P = (A) => Math.hypot(A.clientX - C, A.clientY - H) > b, k = (A) => {
1373
- if (!P(A)) {
1374
- if (f?.handleClick(A)) {
1375
- A.stopImmediatePropagation();
1376
- return;
1377
- }
1378
- g?.handleClick(A) && A.stopImmediatePropagation();
1379
- }
1380
- };
1381
- (g || f) && (e.addEventListener("mousedown", L, { capture: true }), e.addEventListener("click", k, { capture: true }));
1382
- let O = (A) => f?.handleMove(A);
1383
- f && e.addEventListener("mousemove", O, { passive: true });
1384
- let I = () => {}, S = (A) => {
1385
- Vt(A, {
1386
- color: t.edges.color,
1387
- darken: t.edges.darken,
1388
- width: t.edges.width,
1389
- thresholdAngle: t.edges.thresholdAngle,
1390
- distanceFade: t.edges.distanceFade,
1391
- maxTriangles: t.edges.maxTriangles,
1392
- maxSegments: t.edges.maxSegments
1393
- }).then(() => {
1394
- D(A), I();
1395
- });
1396
- }, D = (A) => {
1397
- if (t.edges.screenSpaceFallback === false) return;
1398
- let B = false;
1399
- A.traverse((Z) => {
1400
- Z.userData?.edgesSkipped === "triangle-cap" && (B = true);
1401
- }), B !== K && (K = B, ne());
1402
- }, G = (A) => {
1403
- zt(A), K && (K = false, ne()), I();
1404
- }, j = e.parentElement, $ = () => j ? {
1405
- width: j.clientWidth,
1406
- height: j.clientHeight
1407
- } : {
1408
- width: window.innerWidth,
1409
- height: window.innerHeight
1410
- }, U = null, Q = !!t.render.ambientOcclusion, K = false, de = false, fe = (A) => {
1411
- let { width: B, height: Z } = $(), pe = Gt(l, o, u(), Math.max(1, B), Math.max(1, Z), {
1412
- toneMapping: t.render.toneMapping ?? z.NeutralToneMapping,
1413
- toneMappingExposure: t.render.toneMappingExposure ?? 1,
1414
- ambientOcclusion: A,
1415
- aoIntensity: t.render.aoIntensity,
1416
- aoPixelRatio: t.render.aoPixelRatio,
1417
- edgeDetection: false
1418
- });
1419
- return pe.setSize(Math.max(1, B), Math.max(1, Z), a), pe;
1420
- }, ne = () => {
1421
- if (!(Q || K)) {
1422
- U?.dispose(), U = null, I();
1423
- return;
1424
- }
1425
- (!U || de !== Q) && (U?.dispose(), U = fe(Q), de = Q), U.setEdgeDetection(K), I();
1426
- }, se = () => {
1427
- U?.dispose(), U = null, ne();
1428
- }, Ae = (A) => {
1429
- Q = A, ne();
1430
- };
1431
- ne();
1432
- let me = (A) => {
1433
- A.ambientIntensity !== void 0 && (E.ambient.intensity = A.ambientIntensity), A.hemisphereIntensity !== void 0 && !E.hemisphere && A.hemisphereIntensity > 0 && (E.hemisphere = new z.HemisphereLight(A.hemisphereSkyColor ?? t.lighting.hemisphereSkyColor, A.hemisphereGroundColor ?? t.lighting.hemisphereGroundColor, A.hemisphereIntensity), E.hemisphere.position.copy(t.environment.sceneUp ?? Te), o.add(E.hemisphere)), E.hemisphere && (A.hemisphereIntensity !== void 0 && (E.hemisphere.intensity = A.hemisphereIntensity), A.hemisphereSkyColor !== void 0 && E.hemisphere.color.set(A.hemisphereSkyColor), A.hemisphereGroundColor !== void 0 && E.hemisphere.groundColor.set(A.hemisphereGroundColor)), I();
1434
- }, ge = (A) => {
1435
- t.environment.environmentIntensity = A, o.environmentIntensity = A, I();
1436
- }, je = (A) => {
1437
- t.render.toneMappingExposure = A, l.toneMappingExposure = A, U && se();
1438
- }, Rn = (A) => {
1439
- t.render.aoIntensity = A, U && se();
1440
- }, xn = (A) => {
1441
- let B = tt[A];
1442
- ct = A, l.toneMapping = B.toneMapping, l.toneMappingExposure = B.toneMappingExposure, t.render.toneMapping = B.toneMapping, t.render.toneMappingExposure = B.toneMappingExposure, me({
1443
- hemisphereIntensity: B.hemisphereIntensity,
1444
- ambientIntensity: B.ambientIntensity
1445
- }), ge(B.environmentIntensity), Q = B.ambientOcclusion, U ? se() : ne(), o.traverse((Z) => {
1446
- if (Z.userData.source !== "compute") return;
1447
- let pe = Z, Sn = Array.isArray(pe.material) ? pe.material : pe.material ? [pe.material] : [];
1448
- for (let mt of Sn) "envMapIntensity" in mt && (mt.envMapIntensity = B.envMapIntensity);
1449
- }), I();
1450
- }, ct = t.look, vn = () => qr(ct), { animate: wn, dispose: Mn, invalidate: ut } = Jr(l, o, i, u, c, s, $, a, t.events.onFrame, y, g, () => U, p, x, t.render.onDemand ?? true);
1451
- I = ut, wn(), o.up.set(r.x, r.y, r.z), v(), m();
1452
- let dt = (A) => {
1453
- A.traverse((B) => {
1454
- let Z = B;
1455
- !Z.geometry && !Z.material || (Z.geometry?.dispose(), Array.isArray(Z.material) ? Z.material.forEach(_e) : Z.material && _e(Z.material));
1456
- });
1457
- }, Cn = (A) => {
1458
- A.userData.source = "user", o.add(A);
1459
- }, Hn = (A) => {
1460
- A.removeFromParent(), dt(A);
1461
- }, An = () => {
1462
- o.children.filter((B) => B.userData.source === "user").forEach((B) => {
1463
- B.removeFromParent(), dt(B);
1464
- });
1465
- };
1466
- return {
1467
- scene: o,
1468
- camera: i,
1469
- controls: s,
1470
- renderer: l,
1471
- cameraController: c,
1472
- grid: y,
1473
- gizmo: g,
1474
- measureTool: f,
1475
- applyEdges: S,
1476
- clearEdges: G,
1477
- invalidate: ut,
1478
- setAmbientOcclusion: Ae,
1479
- setLook: xn,
1480
- setFillLights: me,
1481
- setEnvironmentIntensity: ge,
1482
- setToneMappingExposure: je,
1483
- setAoIntensity: Rn,
1484
- getMaterialAppearance: vn,
1485
- updateShadowBounds: v,
1486
- updateGridScale: m,
1487
- dispose: () => {
1488
- d || (d = true, Mn(), h.dispose(), (g || f) && (e.removeEventListener("mousedown", L, { capture: true }), e.removeEventListener("click", k, { capture: true })), f && e.removeEventListener("mousemove", O), f?.dispose(), p?.dispose(), g?.dispose(), y?.dispose(), U?.dispose(), c.dispose(), s.dispose(), l.dispose(), l.forceContextLoss(), o.traverse((A) => {
1489
- let B = A;
1490
- !B.geometry && !B.material || (B.geometry?.dispose(), Array.isArray(B.material) ? B.material.forEach(_e) : B.material && _e(B.material));
1491
- }), o.environment?.dispose(), o.background instanceof z.Texture && o.background.dispose());
1492
- },
1493
- fitToView: h.fitToView,
1494
- clearSelection: h.clearSelection,
1495
- addUserGeometry: Cn,
1496
- removeUserGeometry: Hn,
1497
- clearUserGeometry: An
1498
- };
1499
- };
1500
- function Xr(e) {
1501
- let n = e.sceneScale || "m", r = {
1502
- mm: {
1503
- cameraDistance: 20,
1504
- near: .1,
1505
- far: 2e3,
1506
- floorSize: 100,
1507
- lightDistance: 10,
1508
- lightHeight: 20,
1509
- minDistance: .1,
1510
- shadowSize: 100,
1511
- scaleFactor: 1e3
1512
- },
1513
- cm: {
1514
- cameraDistance: 20,
1515
- near: .1,
1516
- far: 2e3,
1517
- floorSize: 100,
1518
- lightDistance: 25,
1519
- lightHeight: 50,
1520
- minDistance: .1,
1521
- shadowSize: 100,
1522
- scaleFactor: 100
1523
- },
1524
- m: {
1525
- cameraDistance: 10,
1526
- near: .01,
1527
- far: 2e3,
1528
- floorSize: 50,
1529
- lightDistance: 25,
1530
- lightHeight: 50,
1531
- minDistance: .001,
1532
- shadowSize: 100,
1533
- scaleFactor: 1
1534
- },
1535
- inches: {
1536
- cameraDistance: 15,
1537
- near: .1,
1538
- far: 2e3,
1539
- floorSize: 80,
1540
- lightDistance: 20,
1541
- lightHeight: 40,
1542
- minDistance: .1,
1543
- shadowSize: 80,
1544
- scaleFactor: 39.37
1545
- },
1546
- feet: {
1547
- cameraDistance: 8,
1548
- near: .1,
1549
- far: 2e3,
1550
- floorSize: 40,
1551
- lightDistance: 15,
1552
- lightHeight: 30,
1553
- minDistance: .1,
1554
- shadowSize: 60,
1555
- scaleFactor: 3.28084
1556
- }
1557
- }[n], a = e.look ?? $r, o = tt[a];
1558
- return {
1559
- sceneScale: n,
1560
- look: a,
1561
- camera: {
1562
- position: e.camera?.position || new z.Vector3(-r.cameraDistance, -r.cameraDistance, r.cameraDistance),
1563
- fov: e.camera?.fov || 20,
1564
- near: e.camera?.near || r.near,
1565
- far: e.camera?.far || r.far,
1566
- target: e.camera?.target || new z.Vector3(0, 0, 0),
1567
- dynamicNear: e.camera?.dynamicNear ?? true
1568
- },
1569
- lighting: {
1570
- enableSunlight: e.lighting?.enableSunlight ?? true,
1571
- sunlightIntensity: e.lighting?.sunlightIntensity ?? 1,
1572
- sunlightPosition: e.lighting?.sunlightPosition || new z.Vector3(r.lightDistance, r.lightDistance, r.lightHeight),
1573
- ambientLightColor: e.lighting?.ambientLightColor || new z.Color(4210752),
1574
- ambientLightIntensity: e.lighting?.ambientLightIntensity ?? o.ambientIntensity,
1575
- sunlightColor: e.lighting?.sunlightColor || 16777215,
1576
- enableHemisphereLight: e.lighting?.enableHemisphereLight ?? o.hemisphereIntensity > 0,
1577
- hemisphereSkyColor: e.lighting?.hemisphereSkyColor ?? 14673663,
1578
- hemisphereGroundColor: e.lighting?.hemisphereGroundColor ?? 7036754,
1579
- hemisphereIntensity: e.lighting?.hemisphereIntensity ?? o.hemisphereIntensity
1580
- },
1581
- environment: {
1582
- hdrPath: e.environment?.hdrPath || "/baseHDR.hdr",
1583
- backgroundColor: e.environment?.backgroundColor || new z.Color(15790320),
1584
- enableEnvironmentLighting: e.environment?.enableEnvironmentLighting ?? true,
1585
- sceneUp: e.environment?.sceneUp || Te,
1586
- showEnvironment: e.environment?.showEnvironment ?? false,
1587
- environmentIntensity: e.environment?.environmentIntensity ?? o.environmentIntensity
1588
- },
1589
- floor: {
1590
- enabled: e.floor?.enabled ?? false,
1591
- size: e.floor?.size || r.floorSize,
1592
- color: e.floor?.color || new z.Color(8421504),
1593
- roughness: e.floor?.roughness ?? .7,
1594
- metalness: e.floor?.metalness ?? 0,
1595
- receiveShadow: e.floor?.receiveShadow ?? true
1596
- },
1597
- render: {
1598
- enableShadows: e.render?.enableShadows ?? true,
1599
- shadowMapSize: e.render?.shadowMapSize || 2048,
1600
- antialias: e.render?.antialias ?? true,
1601
- pixelRatio: e.render?.pixelRatio || Math.min(window.devicePixelRatio, 2),
1602
- toneMapping: e.render?.toneMapping ?? o.toneMapping,
1603
- toneMappingExposure: e.render?.toneMappingExposure ?? o.toneMappingExposure,
1604
- preserveDrawingBuffer: e.render?.preserveDrawingBuffer ?? false,
1605
- ambientOcclusion: e.render?.ambientOcclusion ?? o.ambientOcclusion,
1606
- aoIntensity: e.render?.aoIntensity ?? 1,
1607
- aoPixelRatio: e.render?.aoPixelRatio ?? 1,
1608
- onDemand: e.render?.onDemand ?? true
1609
- },
1610
- controls: {
1611
- enableDamping: e.controls?.enableDamping ?? false,
1612
- dampingFactor: e.controls?.dampingFactor || .05,
1613
- autoRotate: e.controls?.autoRotate ?? false,
1614
- autoRotateSpeed: e.controls?.autoRotateSpeed || .5,
1615
- enableZoom: e.controls?.enableZoom ?? true,
1616
- enablePan: e.controls?.enablePan ?? true,
1617
- minDistance: e.controls?.minDistance || r.minDistance,
1618
- maxDistance: e.controls?.maxDistance || Infinity
1619
- },
1620
- grid: {
1621
- enabled: e.grid?.enabled ?? false,
1622
- cellSize: e.grid?.cellSize ?? 1,
1623
- majorEvery: e.grid?.majorEvery ?? 10,
1624
- cellColor: e.grid?.cellColor ?? 8947848,
1625
- majorColor: e.grid?.majorColor ?? 4473924,
1626
- fadeDistance: e.grid?.fadeDistance ?? 100,
1627
- plane: e.grid?.plane ?? Yr(e.environment?.sceneUp ?? Te)
1628
- },
1629
- gizmo: { enabled: e.gizmo?.enabled ?? false },
1630
- edges: {
1631
- enabled: e.edges?.enabled ?? false,
1632
- color: e.edges?.color,
1633
- darken: e.edges?.darken,
1634
- width: e.edges?.width ?? 1.5,
1635
- thresholdAngle: e.edges?.thresholdAngle ?? 44,
1636
- distanceFade: e.edges?.distanceFade ?? true
1637
- },
1638
- measure: {
1639
- enabled: e.measure?.enabled ?? false,
1640
- snapPixels: e.measure?.snapPixels,
1641
- color: e.measure?.color,
1642
- labelClassName: e.measure?.labelClassName,
1643
- displayUnit: e.measure?.displayUnit,
1644
- format: e.measure?.format
1645
- },
1646
- events: {
1647
- onBackgroundClicked: e.events?.onBackgroundClicked,
1648
- onObjectSelected: e.events?.onObjectSelected,
1649
- onMeshMetadataClicked: e.events?.onMeshMetadataClicked,
1650
- onMeshDoubleClicked: e.events?.onMeshDoubleClicked,
1651
- selectionColor: e.events?.selectionColor || "#ff0000",
1652
- enableEventHandlers: e.events?.enableEventHandlers ?? true,
1653
- enableKeyboardControls: e.events?.enableKeyboardControls ?? true,
1654
- enableClickToFocus: e.events?.enableClickToFocus ?? true,
1655
- enableDoubleClickZoom: e.events?.enableDoubleClickZoom ?? true,
1656
- onReady: e.events?.onReady,
1657
- onFrame: e.events?.onFrame
1658
- }
1659
- };
1660
- }
1661
- function _e(e) {
1662
- for (let n of Object.values(e)) n instanceof z.Texture && n.dispose();
1663
- e.dispose();
1664
- }
1665
- function Kr(e, n) {
1666
- if (n.isEmpty()) return;
1667
- let t = n.getCenter(new z.Vector3()), r = n.getSize(new z.Vector3()).length() * .5 * 1.2, a = e.shadow.camera;
1668
- a.left = -r, a.right = r, a.top = r, a.bottom = -r, e.target.position.copy(t), e.target.updateMatrixWorld();
1669
- let o = e.position.distanceTo(t);
1670
- a.near = Math.max(r * .01, o - r), a.far = o + r, a.updateProjectionMatrix();
1671
- }
1672
- function Zr(e) {
1673
- let n = new z.Scene();
1674
- return n.background = (typeof e.environment.backgroundColor == "string" ? new z.Color(e.environment.backgroundColor) : e.environment.backgroundColor) || null, n;
1675
- }
1676
- function Jr(e, n, t, r, a, o, i, l, s, c, u, d, E, T, v = true) {
1677
- let y = null, m = performance.now(), g = true, R = 0, x = 500, M = new z.Matrix4(), p = new z.Matrix4(), f = null, h = () => {
1678
- g = true;
1679
- }, b = (O) => {
1680
- O.updateMatrixWorld();
1681
- let I = f !== O || !M.equals(O.matrixWorld) || !p.equals(O.projectionMatrix);
1682
- return I && (f = O, M.copy(O.matrixWorld), p.copy(O.projectionMatrix)), I;
1683
- }, C = e.domElement, H = [
1684
- "pointerdown",
1685
- "pointerup",
1686
- "wheel"
1687
- ];
1688
- if (v) for (let O of H) C.addEventListener(O, h, { passive: true });
1689
- let L = () => {
1690
- let { width: O, height: I } = i();
1691
- if (O === 0 || I === 0) return;
1692
- let S = Math.floor(O * l), D = Math.floor(I * l);
1693
- (e.domElement.width !== S || e.domElement.height !== D) && (e.setPixelRatio(l), e.setSize(O, I, false), t.aspect = O / I, t.updateProjectionMatrix(), a.updateAspect(O, I), d?.()?.setSize(O, I, l), E?.setSize(O, I), h());
1694
- }, P = function() {
1695
- y = requestAnimationFrame(P);
1696
- let O = performance.now(), I = (O - m) / 1e3;
1697
- m = O, L(), (o.enableDamping || o.autoRotate) && o.update(), c && c.update(r().position), u && u.update(I), T && T.update(), s?.(I);
1698
- let S = r();
1699
- if (v) {
1700
- if (!(g || b(S) || O - R >= x)) return;
1701
- g = false, R = O;
1702
- }
1703
- let D = d?.();
1704
- D ? (D.setCamera(S), D.render(I)) : e.render(n, S), E && E.render(n, S), u && u.render(e);
1705
- };
1706
- return {
1707
- animate: P,
1708
- dispose: () => {
1709
- if (y !== null && (cancelAnimationFrame(y), y = null), v) for (let O of H) C.removeEventListener(O, h);
1710
- },
1711
- invalidate: h
1712
- };
1713
- }
1714
- function Qr(e, n, t, r) {
1715
- t.environment.enableEnvironmentLighting ? new HDRLoader().load(t.environment.hdrPath || "/baseHDR.hdr", function(a) {
1716
- if (r()) {
1717
- a.dispose();
1718
- return;
1719
- }
1720
- if (!a?.image) {
1721
- m().warn("HDR loaded without image data; skipping environment map."), a?.dispose(), t.events.onReady?.();
1722
- return;
1723
- }
1724
- a.mapping = z.EquirectangularReflectionMapping;
1725
- let o = new z.PMREMGenerator(n);
1726
- o.compileEquirectangularShader();
1727
- let i = o.fromEquirectangular(a).texture;
1728
- o.dispose(), e.environment = i, e.environmentIntensity = t.environment.environmentIntensity ?? 1, t.environment.showEnvironment ? e.background = a : a.dispose(), t.events.onReady?.();
1729
- }, void 0, function(a) {
1730
- r() || (m().warn("HDR texture could not be loaded, falling back to basic lighting:", a), t.events.onReady?.());
1731
- }) : t.events.onReady?.();
1732
- }
1733
- function eo(e, n) {
1734
- let t = new z.AmbientLight(n.lighting.ambientLightColor, n.lighting.ambientLightIntensity);
1735
- e.add(t);
1736
- let r = null;
1737
- if (n.lighting.enableHemisphereLight) {
1738
- r = new z.HemisphereLight(n.lighting.hemisphereSkyColor, n.lighting.hemisphereGroundColor, n.lighting.hemisphereIntensity);
1739
- let i = n.environment.sceneUp ?? Te;
1740
- r.position.copy(i), e.add(r);
1741
- }
1742
- if (!n.lighting.enableSunlight) return {
1743
- ambient: t,
1744
- hemisphere: r,
1745
- sun: null
1746
- };
1747
- let a = new z.DirectionalLight(n.lighting.sunlightColor ?? 16777215, n.lighting.sunlightIntensity), o = n.lighting.sunlightPosition;
1748
- return o && a.position.set(o.x, o.y, o.z), n.render.enableShadows ? (a.castShadow = true, a.shadow.mapSize.width = n.render.shadowMapSize || 2048, a.shadow.mapSize.height = n.render.shadowMapSize || 2048, a.shadow.bias = -1e-4, a.shadow.normalBias = .02, a.shadow.radius = 4, e.add(a), e.add(a.target), {
1749
- ambient: t,
1750
- hemisphere: r,
1751
- sun: a
1752
- }) : (e.add(a), {
1753
- ambient: t,
1754
- hemisphere: r,
1755
- sun: null
1756
- });
1757
- }
1758
- function to(e, n) {
1759
- let t = n.floor.size, r = new z.PlaneGeometry(t, t), a = typeof n.floor.color == "string" ? new z.Color(n.floor.color) : n.floor.color, o = new z.MeshStandardMaterial({
1760
- color: a,
1761
- roughness: n.floor.roughness,
1762
- metalness: n.floor.metalness,
1763
- side: z.DoubleSide
1764
- }), i = new z.Mesh(r, o);
1765
- i.userData.id = "floor", i.name = "floor";
1766
- let l = (n.environment?.sceneUp || Te).clone().normalize();
1767
- i.quaternion.setFromUnitVectors(new z.Vector3(0, 0, 1), l), i.position.set(0, 0, 0), n.floor.receiveShadow && n.render.enableShadows && (i.receiveShadow = true), e.add(i);
1768
- }
1769
- function no(e, n) {
1770
- let t = n.parentElement, r = t ? t.clientWidth : window.innerWidth, a = t ? t.clientHeight : window.innerHeight, o = new z.PerspectiveCamera(e.camera.fov, r / a, e.camera.near, e.camera.far), i = e.camera.position;
1771
- return i && o.position.set(i.x, i.y, i.z), o;
1772
- }
1773
- function ro(e, n, t) {
1774
- let r = new z.WebGLRenderer({
1775
- antialias: n.render.antialias,
1776
- canvas: e,
1777
- alpha: true,
1778
- powerPreference: "high-performance",
1779
- preserveDrawingBuffer: n.render.preserveDrawingBuffer,
1780
- logarithmicDepthBuffer: false
1781
- }), a = e.parentElement, o = a ? a.clientWidth : window.innerWidth, i = a ? a.clientHeight : window.innerHeight;
1782
- return a && (e.style.width = "100%", e.style.height = "100%", e.style.display = "block"), r.setSize(o, i, false), r.setPixelRatio(t), n.render.enableShadows && (r.shadowMap.enabled = true, r.shadowMap.type = z.VSMShadowMap), r.toneMapping = n.render.toneMapping, r.toneMappingExposure = n.render.toneMappingExposure ?? 1, r.outputColorSpace = z.SRGBColorSpace, r.sortObjects = true, r;
1783
- }
1784
- function oo(e, n, t, r) {
1785
- let a = /* @__PURE__ */ new Set(), o = /* @__PURE__ */ new Map(), i = new z.Raycaster(), l = new z.Vector2(), s = new z.Vector2(), c = () => t.getActiveCamera(), u = (p) => {
1786
- let f = p;
1787
- for (; f;) {
1788
- if (!f.visible) return false;
1789
- f = f.parent;
1790
- }
1791
- return true;
1792
- }, d = () => {
1793
- let p = le(n);
1794
- if (p.isEmpty()) {
1795
- m().warn("No objects to fit to view");
1796
- return;
1797
- }
1798
- t.frameBounds(p, false);
1799
- }, E = typeof r.events.selectionColor == "string" ? new z.Color(r.events.selectionColor) : r.events.selectionColor instanceof z.Color ? r.events.selectionColor : new z.Color("#ff0000"), T = () => {
1800
- a.forEach((p) => {
1801
- let f = p;
1802
- if (o.has(p)) {
1803
- let h = o.get(p), b = f.material;
1804
- b instanceof z.Material ? b.dispose() : Array.isArray(b) && b.forEach((H) => H.dispose()), f.material = h, o.delete(p);
1805
- let C = p;
1806
- for (; C.parent;) C = C.parent;
1807
- C !== n && (h instanceof z.Material ? h.dispose() : h.forEach((H) => H.dispose()));
1808
- }
1809
- }), a.clear();
1810
- }, v = (p) => {
1811
- let f = p;
1812
- if (!(f.material instanceof z.Material)) return false;
1813
- o.set(p, f.material);
1814
- let h = f.material.clone();
1815
- return p instanceof z.Mesh && "emissive" in h ? h.emissive = E.clone() : "color" in h && (h.color = E.clone()), f.material = h, true;
1816
- }, y = () => {
1817
- let p = le(n), f = p.isEmpty() ? 1 : p.getSize(new z.Vector3()).length();
1818
- i.params.Points.threshold = f * .01;
1819
- }, m$1 = (p) => {
1820
- s.set(p.clientX, p.clientY);
1821
- }, g = (p) => {
1822
- let f = new z.Vector2(p.clientX, p.clientY);
1823
- if (s.distanceTo(f) > 5) return;
1824
- let h = e.getBoundingClientRect();
1825
- l.x = (p.clientX - h.left) / h.width * 2 - 1, l.y = -((p.clientY - h.top) / h.height) * 2 + 1, y(), i.setFromCamera(l, c());
1826
- let b = i.intersectObjects(n.children, true).filter((C) => u(C.object));
1827
- if (b.length > 0) {
1828
- let C = b[0].object;
1829
- a.has(C) || (T(), a.add(C), v(C), r.events?.onObjectSelected?.(C), C instanceof z.Mesh && Object.keys(C.userData).length > 0 && r.events?.onMeshMetadataClicked?.(C.userData));
1830
- } else T(), r.events?.onBackgroundClicked?.({
1831
- x: l.x,
1832
- y: l.y
1833
- });
1834
- }, R = (p) => {
1835
- let f = e.getBoundingClientRect();
1836
- l.x = (p.clientX - f.left) / f.width * 2 - 1, l.y = -((p.clientY - f.top) / f.height) * 2 + 1, y(), i.setFromCamera(l, c());
1837
- let h = i.intersectObjects(n.children, true).filter((H) => u(H.object));
1838
- if (h.length === 0) return;
1839
- let b = h[0].object;
1840
- if (r.events?.onMeshDoubleClicked?.(b), !r.events?.enableDoubleClickZoom) return;
1841
- let C = new z.Box3().setFromObject(b);
1842
- C.isEmpty() || t.frameBounds(C, true);
1843
- }, x = (p) => {
1844
- if (r.events?.enableKeyboardControls) switch (p.key.toLowerCase()) {
1845
- case "f":
1846
- p.preventDefault(), d();
1847
- break;
1848
- case "escape":
1849
- p.preventDefault(), T();
1850
- break;
1851
- case " ":
1852
- p.preventDefault(), d();
1853
- break;
1854
- }
1855
- };
1856
- return r.events?.enableClickToFocus && (e.addEventListener("mousedown", m$1), e.addEventListener("click", g), e.addEventListener("dblclick", R)), r.events?.enableKeyboardControls && (e.setAttribute("tabindex", "0"), e.addEventListener("keydown", x)), {
1857
- dispose: () => {
1858
- e.removeEventListener("mousedown", m$1), e.removeEventListener("click", g), e.removeEventListener("dblclick", R), e.removeEventListener("keydown", x), T();
1859
- },
1860
- fitToView: d,
1861
- clearSelection: T
1862
- };
1863
- }
1864
- function ao(e, n, t) {
1865
- let r = new OrbitControls(e, n), a = t.camera.target;
1866
- return a && r.target.set(a.x, a.y, a.z), r.enableDamping = t.controls.enableDamping || false, r.dampingFactor = t.controls.dampingFactor || .05, r.autoRotate = t.controls.autoRotate || false, r.autoRotateSpeed = t.controls.autoRotateSpeed || .5, r.enableZoom = t.controls.enableZoom ?? true, r.enablePan = t.controls.enablePan ?? true, r.minDistance = t.controls.minDistance || .001, r.maxDistance = t.controls.maxDistance || Infinity, r.screenSpacePanning = false, r.maxPolarAngle = Math.PI, r.update(), r;
1867
- }
1868
- var hi = [
1869
- "technical",
1870
- "studio",
1871
- "showcase"
1872
- ];
1873
- function Ve(e, n, t, r = true) {
1874
- return {
1875
- x: e,
1876
- y: n,
1877
- z: t
1878
- };
1879
- }
1880
- var co = "#ffffff";
1881
- var Zt = 12;
1882
- var uo = 4e-4;
1883
- var mo = 12;
1884
- var fo = .05;
1885
- function Jt(e, n = {}) {
1886
- if (!e || e.length === 0) return [];
1887
- let { rhino: t, applyTransforms: r = true } = n, a = [];
1888
- for (let o of e) switch (o.kind) {
1889
- case "curve": {
1890
- let i = Eo(o, t, r);
1891
- i && a.push(i);
1892
- break;
1893
- }
1894
- case "point": {
1895
- let i = ho(o, r);
1896
- i && a.push(i);
1897
- break;
1898
- }
1899
- default: {
1900
- let l = o;
1901
- m().warn(`Skipping unknown display item kind: ${String(l.kind)}`);
1902
- break;
1903
- }
1904
- }
1905
- return a;
1906
- }
1907
- var po = 2;
1908
- function Eo(e, n, t) {
1909
- if (!n) return m().warn("No rhino3dm instance provided; skipping curve display item."), null;
1910
- let r = go(e.json, n);
1911
- if (!r) return null;
1912
- let a;
1913
- try {
1914
- a = yo(r, t);
1915
- } catch (d) {
1916
- return m().warn("Failed to tessellate curve display item; skipping.", d), null;
1917
- } finally {
1918
- Me(r);
1919
- }
1920
- if (a.length < 2) return null;
1921
- let o = [];
1922
- for (let d of a) o.push(d.x, d.y, d.z);
1923
- let i = new LineGeometry();
1924
- i.setPositions(o);
1925
- let l = Qt(e.color, e.opacity), s = new LineMaterial({ color: l.color }), c = s;
1926
- c.linewidth = e.width ?? po, c.transparent = l.transparent, c.opacity = l.opacity;
1927
- let u = new Line2(i, s);
1928
- return u.computeLineDistances(), u.name = e.name, u.userData = {
1929
- source: "compute",
1930
- id: e.id,
1931
- layer: e.layer,
1932
- kind: "curve",
1933
- metadata: e.metadata
1934
- }, u;
1935
- }
1936
- function ho(e, n) {
1937
- let { position: t } = e;
1938
- 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 m().warn(`Skipping point display item with missing or non-finite position (id: ${String(e.id)}).`), null;
1939
- let { x: r, y: a, z: o } = Ve(t.X, t.Y, t.Z, n), i = new z.BufferGeometry();
1940
- i.setAttribute("position", new z.Float32BufferAttribute([
1941
- r,
1942
- a,
1943
- o
1944
- ], 3));
1945
- let l = new z.PointsMaterial({
1946
- ...Qt(e.color, e.opacity),
1947
- size: 6,
1948
- sizeAttenuation: false
1949
- }), s = new z.Points(i, l);
1950
- return s.name = e.name, s.userData = {
1951
- source: "compute",
1952
- id: e.id,
1953
- layer: e.layer,
1954
- kind: "point",
1955
- metadata: e.metadata
1956
- }, s;
1957
- }
1958
- function Me(e) {
1959
- e?.delete?.();
1960
- }
1961
- function go(e, n) {
1962
- try {
1963
- let t = JSON.parse(e), r = n.CommonObject.decode(t);
1964
- return r && typeof r.pointAt == "function" ? r : (Me(r), m().warn("Decoded display-item JSON is not a curve; skipping."), null);
1965
- } catch (t) {
1966
- return m().warn("Failed to decode curve display item JSON:", t), null;
1967
- }
1968
- }
1969
- function yo(e, n) {
1970
- return bo(e, n) || To(e, n);
1971
- }
1972
- function bo(e, n) {
1973
- if (!e.isPolyline()) return null;
1974
- let t = e.tryGetPolyline(), r = Array.isArray(t) ? t[1] : t;
1975
- if (!r || typeof r.count != "number" || r.count < 2) return Me(r), null;
1976
- let a = [];
1977
- for (let o = 0; o < r.count; o++) {
1978
- let i = r.get(o), { x: l, y: s, z: c } = Ve(i[0], i[1], i[2], n);
1979
- a.push(new z.Vector3(l, s, c));
1980
- }
1981
- return Me(r), a;
1982
- }
1983
- function To(e, n) {
1984
- let t = e.domain, r = t[0], o = t[1] - r, i = (d) => {
1985
- let E = e.pointAt(d), { x: T, y: v, z: y } = Ve(E[0], E[1], E[2], n);
1986
- return new z.Vector3(T, v, y);
1987
- }, l = Ro(e), s = r, c = i(r), u = [c];
1988
- for (let d = 0; d < Zt; d++) {
1989
- let E = r + o * (d + 1) / Zt, T = i(E);
1990
- nt(s, c, E, T, i, l, mo, u), u.push(T), s = E, c = T;
1991
- }
1992
- return u;
1993
- }
1994
- function nt(e, n, t, r, a, o, i, l) {
1995
- if (i <= 0) return;
1996
- let s = (e + t) / 2, c = a(s), u = vo(c, n, r), d = xo(n, c, r);
1997
- u <= o && d <= fo || (nt(e, n, s, c, a, o, i - 1, l), l.push(c), nt(s, c, t, r, a, o, i - 1, l));
1998
- }
1999
- function Ro(e) {
2000
- let n = e.getBoundingBox(), t = n.min, r = n.max;
2001
- Me(n);
2002
- let a = Math.hypot(r[0] - t[0], r[1] - t[1], r[2] - t[2]);
2003
- return Math.max(a * uo, 1e-6);
2004
- }
2005
- function xo(e, n, t) {
2006
- let r = n.x - e.x, a = n.y - e.y, o = n.z - e.z, i = t.x - n.x, l = t.y - n.y, s = t.z - n.z, c = Math.sqrt(r * r + a * a + o * o), u = Math.sqrt(i * i + l * l + s * s);
2007
- if (c === 0 || u === 0) return 0;
2008
- let d = r * i + a * l + o * s, E = Math.max(-1, Math.min(1, d / (c * u)));
2009
- return Math.acos(E);
2010
- }
2011
- function vo(e, n, t) {
2012
- let r = t.x - n.x, a = t.y - n.y, o = t.z - n.z, i = r * r + a * a + o * o;
2013
- if (i === 0) return e.distanceTo(n);
2014
- let l = e.x - n.x, s = e.y - n.y, c = e.z - n.z, u = Math.max(0, Math.min(1, (l * r + s * a + c * o) / i)), d = l - r * u, E = s - a * u, T = c - o * u;
2015
- return Math.sqrt(d * d + E * E + T * T);
2016
- }
2017
- function Qt(e, n) {
2018
- let t = n ?? 1;
2019
- return {
2020
- color: new z.Color(e ?? co),
2021
- transparent: t < 1,
2022
- opacity: t
2023
- };
2024
- }
2025
- var en = 1096174675;
2026
- var Mo = 1515605075;
2027
- var tn = 3;
2028
- var nn = 1;
2029
- var ot = 1;
2030
- var Co = 2;
2031
- var Ho = 4;
2032
- var Ao = 8;
2033
- var So = 16;
2034
- var Ai = 0;
2035
- var Do = 1;
2036
- var rn = 12;
2037
- var on = 56;
2038
- var Lo = new Uint16Array(new Uint8Array([1, 0]).buffer)[0] === 1;
2039
- function at(e) {
2040
- let n = it(e), t;
2041
- n.isFloat32 ? t = n.vertexData : n.deltaEncoded ? t = Vo(n.vertexData) : t = n.vertexData;
2042
- let r = n.indexData;
2043
- return n.deltaEncoded && (r = r instanceof Uint16Array ? zo(r) : Go(r)), _o(r, n.vertexCount), {
2044
- metadata: n.metadata,
2045
- flags: n.flags,
2046
- vertices: t,
2047
- indices: r,
2048
- origin: n.origin,
2049
- scale: n.scale,
2050
- uvs: n.uvs,
2051
- colors: n.colors
2052
- };
2053
- }
2054
- function it(e) {
2055
- if (!Lo) throw new p("SLVA parsing requires a little-endian host: the zero-copy geometry readers view the wire bytes in host byte order.", l.ENVIRONMENT_ERROR);
2056
- let n = Fo(Po(e)), t = new DataView(n.buffer, n.byteOffset, n.byteLength);
2057
- if (n.byteLength < rn) throw X("Blob too small to contain SLVA header.", {
2058
- expectedBytes: rn,
2059
- availableBytes: n.byteLength
2060
- });
2061
- let r = 0, a = t.getUint32(r, true);
2062
- if (r += 4, a !== 1096174675) throw X(`Invalid SLVA magic: 0x${a.toString(16)}`, {
2063
- expectedMagic: `0x${en.toString(16)}`,
2064
- actualMagic: `0x${a.toString(16)}`
2065
- });
2066
- let o = t.getUint32(r, true);
2067
- if (r += 4, o < 1 || o > 3) throw X(`Unsupported SLVA version: ${o}`, {
2068
- minSupportedVersion: 1,
2069
- maxSupportedVersion: 3,
2070
- actualVersion: o
2071
- });
2072
- let i = t.getUint32(r, true);
2073
- if (r += 4, r + i > n.byteLength) throw X("Insufficient data to read metadata JSON.", {
2074
- expectedBytes: i,
2075
- availableBytes: n.byteLength - r,
2076
- offset: r
2077
- });
2078
- let l$1 = n.subarray(r, r + i);
2079
- r += i;
2080
- let s;
2081
- try {
2082
- s = JSON.parse(Bo(l$1));
2083
- } catch (I) {
2084
- throw X(`Failed to parse metadata JSON: ${I instanceof Error ? I.message : String(I)}`, { metadataLen: i });
2085
- }
2086
- if (r + on > n.byteLength) throw X("Insufficient data to read geometry header.", {
2087
- expectedBytes: on,
2088
- availableBytes: n.byteLength - r,
2089
- offset: r
2090
- });
2091
- let c = t.getUint32(r, true);
2092
- r += 4;
2093
- let u = t.getFloat64(r, true);
2094
- r += 8;
2095
- let d = t.getFloat64(r, true);
2096
- r += 8;
2097
- let E = t.getFloat64(r, true);
2098
- r += 8;
2099
- let T = t.getFloat64(r, true);
2100
- r += 8;
2101
- let v = t.getFloat64(r, true);
2102
- r += 8;
2103
- let y = t.getFloat64(r, true);
2104
- r += 8;
2105
- let m = t.getUint32(r, true);
2106
- r += 4;
2107
- let g = (c & 1) !== 0, R = (c & 4) !== 0, x = m * 3, p$1 = x * (g ? 4 : 2);
2108
- if (r + p$1 > n.byteLength) throw X("Insufficient data to read vertices.", {
2109
- expectedBytes: p$1,
2110
- availableBytes: n.byteLength - r,
2111
- offset: r,
2112
- useFloat32: g,
2113
- vertexCount: m
2114
- });
2115
- let f = n.byteOffset + r, h;
2116
- if (g ? h = sn(n.buffer, f, x) : R ? h = rt(n.buffer, f, x) : h = ko(n.buffer, f, x), r += p$1, r + 4 > n.byteLength) throw X("Insufficient data to read index count.", {
2117
- expectedBytes: 4,
2118
- availableBytes: n.byteLength - r,
2119
- offset: r
2120
- });
2121
- let b = t.getUint32(r, true);
2122
- r += 4;
2123
- let C = (c & 2) !== 0, L = b * (C ? 2 : 4);
2124
- if (r + L > n.byteLength) throw X("Insufficient data to read indices.", {
2125
- expectedBytes: L,
2126
- availableBytes: n.byteLength - r,
2127
- offset: r,
2128
- indexCount: b,
2129
- useUint16Indices: C
2130
- });
2131
- let P = C ? rt(n.buffer, n.byteOffset + r, b) : Uo(n.buffer, n.byteOffset + r, b);
2132
- r += L;
2133
- let k = null;
2134
- if ((c & 8) !== 0) {
2135
- let I = Oo(n, t, r, m, R);
2136
- k = I.uvs, r = I.offset;
2137
- }
2138
- let O = null;
2139
- return c & 16 && (O = Io(n, r, m, R)), {
2140
- metadata: s,
2141
- flags: c,
2142
- vertexData: h,
2143
- indexData: P,
2144
- isFloat32: g,
2145
- deltaEncoded: R,
2146
- vertexCount: m,
2147
- origin: [
2148
- u,
2149
- d,
2150
- E
2151
- ],
2152
- scale: [
2153
- T,
2154
- v,
2155
- y
2156
- ],
2157
- uvs: k,
2158
- colors: O
2159
- };
2160
- }
2161
- var an = 36;
2162
- function Oo(e, n, t, r, a) {
2163
- if (t + an > e.byteLength) throw X("Insufficient data to read UV chunk header.", {
2164
- expectedBytes: an,
2165
- availableBytes: e.byteLength - t,
2166
- offset: t
2167
- });
2168
- let o = n.getUint32(t, true);
2169
- t += 4;
2170
- let i = n.getFloat64(t, true);
2171
- t += 8;
2172
- let l = n.getFloat64(t, true);
2173
- t += 8;
2174
- let s = n.getFloat64(t, true);
2175
- t += 8;
2176
- let c = n.getFloat64(t, true);
2177
- t += 8;
2178
- let u = r * 2, d = o === 1, E = u * (d ? 4 : 2);
2179
- if (t + E > e.byteLength) throw X("Insufficient data to read UV chunk.", {
2180
- expectedBytes: E,
2181
- availableBytes: e.byteLength - t,
2182
- offset: t,
2183
- uvFormat: o,
2184
- vertexCount: r
2185
- });
2186
- let T = e.byteOffset + t, v;
2187
- if (d) v = sn(e.buffer, T, u).slice();
2188
- else {
2189
- let y = rt(e.buffer, T, u);
2190
- v = new Float32Array(u);
2191
- let m = 0, g = 0;
2192
- for (let R = 0; R < u; R += 2) a ? (m = m + ie(y[R]) & 65535, g = g + ie(y[R + 1]) & 65535) : (m = y[R], g = y[R + 1]), v[R] = i + m * s, v[R + 1] = l + g * c;
2193
- }
2194
- return {
2195
- uvs: v,
2196
- offset: t + E
2197
- };
2198
- }
2199
- function Io(e, n, t, r) {
2200
- let a = t * 3;
2201
- if (n + a > e.byteLength) throw X("Insufficient data to read vertex-color chunk.", {
2202
- expectedBytes: a,
2203
- availableBytes: e.byteLength - n,
2204
- offset: n,
2205
- vertexCount: t
2206
- });
2207
- let o = e.subarray(n, n + a);
2208
- if (!r) return o.slice();
2209
- let i = new Uint8Array(a), l = 0, s = 0, c = 0;
2210
- for (let u = 0; u < a; u += 3) l = l + ie(o[u]) & 255, s = s + ie(o[u + 1]) & 255, c = c + ie(o[u + 2]) & 255, i[u] = l, i[u + 1] = s, i[u + 2] = c;
2211
- return i;
2212
- }
2213
- function Po(e) {
2214
- return typeof e == "string" ? x(e) : e instanceof Uint8Array ? e : new Uint8Array(e);
2215
- }
2216
- function Fo(e) {
2217
- if (e.byteLength < 8) return e;
2218
- let n = new DataView(e.buffer, e.byteOffset, e.byteLength);
2219
- if (n.getUint32(0, true) !== 1515605075) return e;
2220
- let t = n.getUint32(4, true), r = e.subarray(8), a = Math.max(r.byteLength * 1032 + 1024, 1 << 20);
2221
- if (t > a) throw X("SLVZ header declares an implausible uncompressed length", {
2222
- uncompressedLen: t,
2223
- deflatedBytes: r.byteLength,
2224
- maxPlausibleLen: a
2225
- });
2226
- let o;
2227
- try {
2228
- o = inflateSync(r, { out: new Uint8Array(t + 1) });
2229
- } catch (i) {
2230
- throw X(`Failed to inflate SLVZ blob: ${i instanceof Error ? i.message : String(i)}`, {
2231
- uncompressedLen: t,
2232
- deflatedBytes: r.byteLength
2233
- });
2234
- }
2235
- if (o.byteLength !== t) throw X("SLVZ payload inflated to a different size than the header declares.", {
2236
- declaredLen: t,
2237
- actualLen: o.byteLength,
2238
- deflatedBytes: r.byteLength
2239
- });
2240
- return o;
2241
- }
2242
- function Bo(e) {
2243
- if (typeof TextDecoder < "u") return new TextDecoder("utf-8").decode(e);
2244
- if (typeof globalThis.Buffer < "u") return globalThis.Buffer.from(e).toString("utf-8");
2245
- throw new p("No UTF-8 decoder available in this environment.", l.INVALID_STATE);
2246
- }
2247
- function ko(e, n, t) {
2248
- if (t === 0) return /* @__PURE__ */ new Int16Array(0);
2249
- if (n % 2 === 0) return new Int16Array(e, n, t);
2250
- let r = new Uint8Array(t * 2);
2251
- return r.set(new Uint8Array(e, n, t * 2)), new Int16Array(r.buffer);
2252
- }
2253
- function sn(e, n, t) {
2254
- if (t === 0) return /* @__PURE__ */ new Float32Array(0);
2255
- if (n % 4 === 0) return new Float32Array(e, n, t);
2256
- let r = new Uint8Array(t * 4);
2257
- return r.set(new Uint8Array(e, n, t * 4)), new Float32Array(r.buffer);
2258
- }
2259
- function rt(e, n, t) {
2260
- if (t === 0) return /* @__PURE__ */ new Uint16Array(0);
2261
- if (n % 2 === 0) return new Uint16Array(e, n, t);
2262
- let r = new Uint8Array(t * 2);
2263
- return r.set(new Uint8Array(e, n, t * 2)), new Uint16Array(r.buffer);
2264
- }
2265
- function Uo(e, n, t) {
2266
- if (t === 0) return /* @__PURE__ */ new Uint32Array(0);
2267
- if (n % 4 === 0) return new Uint32Array(e, n, t);
2268
- let r = new Uint8Array(t * 4);
2269
- return r.set(new Uint8Array(e, n, t * 4)), new Uint32Array(r.buffer);
2270
- }
2271
- function _o(e, n) {
2272
- if (e.length !== 0 && !(e instanceof Uint16Array && n > 65535)) {
2273
- for (let t = 0; t < e.length; t++) if (e[t] >= n) throw X("Index out of range of vertexCount.", {
2274
- indexPosition: t,
2275
- indexValue: e[t],
2276
- vertexCount: n
2277
- });
2278
- }
2279
- }
2280
- function ie(e) {
2281
- return e >>> 1 ^ -(e & 1);
2282
- }
2283
- function Vo(e) {
2284
- let n = new Int16Array(e.length), t = 0, r = 0, a = 0;
2285
- for (let o = 0; o < e.length; o += 3) t = t + ie(e[o]) << 16 >> 16, r = r + ie(e[o + 1]) << 16 >> 16, a = a + ie(e[o + 2]) << 16 >> 16, n[o] = t, n[o + 1] = r, n[o + 2] = a;
2286
- return n;
2287
- }
2288
- function zo(e) {
2289
- let n = new Uint16Array(e.length), t = 0;
2290
- for (let r = 0; r < e.length; r++) t = t + ie(e[r]) & 65535, n[r] = t;
2291
- return n;
2292
- }
2293
- function Go(e) {
2294
- let n = new Uint32Array(e.length), t = 0;
2295
- for (let r = 0; r < e.length; r++) t = t + ie(e[r]) >>> 0, n[r] = t;
2296
- return n;
2297
- }
2298
- function X(e, n) {
2299
- return new p(e, l.VALIDATION_ERROR, { context: n });
2300
- }
2301
- var ln = 256 * 1024 * 1024;
2302
- var ze = 1024;
2303
- var ue = /* @__PURE__ */ new Map();
2304
- var st = 0;
2305
- function cn(e, n) {
2306
- let t = 2166136261, r = (a) => {
2307
- t ^= a, t = Math.imul(t, 16777619);
2308
- };
2309
- for (let a = 0; a < n.length; a++) r(n.charCodeAt(a));
2310
- for (let a of e) {
2311
- if (!a) {
2312
- r(57005);
2313
- continue;
2314
- }
2315
- let o = a.byteLength;
2316
- if (r(o), (a.byteOffset & 3) === 0 && (o & 3) === 0) {
2317
- let i = new Uint32Array(a.buffer, a.byteOffset, o >> 2), l = Math.min(ze, i.length);
2318
- for (let s = 0; s < l; s++) r(i[s]);
2319
- for (let s = Math.max(l, i.length - ze); s < i.length; s++) r(i[s]);
2320
- } else {
2321
- let i = new Uint8Array(a.buffer, a.byteOffset, o), l = Math.min(ze * 4, i.length);
2322
- for (let s = 0; s < l; s++) r(i[s]);
2323
- for (let s = Math.max(l, i.length - ze * 4); s < i.length; s++) r(i[s]);
2324
- }
2325
- }
2326
- return `${(t >>> 0).toString(36)}:${e.length}`;
2327
- }
2328
- function No(e) {
2329
- let n = e.index?.array.byteLength ?? 0;
2330
- for (let t of Object.values(e.attributes)) n += t.array.byteLength;
2331
- return n;
2332
- }
2333
- function Ge(e) {
2334
- let n = ue.get(e);
2335
- if (n) return ue.delete(e), ue.set(e, n), n.geometry;
2336
- }
2337
- function Ne(e, n) {
2338
- let t = No(n);
2339
- if (!(t > ln || (n.userData[Se] = true, ue.get(e)))) for (ue.set(e, {
2340
- geometry: n,
2341
- bytes: t
2342
- }), st += t; st > ln && ue.size > 1;) {
2343
- let a = ue.keys().next().value, o = ue.get(a);
2344
- ue.delete(a), st -= o.bytes, delete o.geometry.userData[Se], o.geometry.dispose();
2345
- }
2346
- }
2347
- function jo(e) {
2348
- let { isFloat32: n, deltaEncoded: t, origin: r, scale: a, uvs: o, colors: i, jobs: l } = e, s = (m) => m >>> 1 ^ -(m & 1), c;
2349
- if (n) c = e.vertexData;
2350
- else {
2351
- let m;
2352
- if (t) {
2353
- let h = e.vertexData;
2354
- m = new Int16Array(h.length);
2355
- let b = 0, C = 0, H = 0;
2356
- for (let L = 0; L < h.length; L += 3) b = b + s(h[L]) << 16 >> 16, C = C + s(h[L + 1]) << 16 >> 16, H = H + s(h[L + 2]) << 16 >> 16, m[L] = b, m[L + 1] = C, m[L + 2] = H;
2357
- } else m = e.vertexData;
2358
- c = new Float32Array(m.length);
2359
- let g = r[0], R = r[1], x = r[2], M = a[0], p = a[1], f = a[2];
2360
- for (let h = 0; h < m.length; h += 3) c[h] = g + (m[h] + 32767) * M, c[h + 1] = R + (m[h + 1] + 32767) * p, c[h + 2] = x + (m[h + 2] + 32767) * f;
2361
- }
2362
- let u;
2363
- if (t) {
2364
- let m = e.indexData;
2365
- if (m instanceof Uint16Array) {
2366
- let g = new Uint16Array(m.length), R = 0;
2367
- for (let x = 0; x < m.length; x++) R = R + s(m[x]) & 65535, g[x] = R;
2368
- u = g;
2369
- } else {
2370
- let g = new Uint32Array(m.length), R = 0;
2371
- for (let x = 0; x < m.length; x++) R = R + s(m[x]) >>> 0, g[x] = R;
2372
- u = g;
2373
- }
2374
- } else u = e.indexData;
2375
- let d = c.length / 3;
2376
- for (let m = 0; m < u.length; m++) if (u[m] >= d) throw new Error(`Index ${u[m]} out of range of vertexCount ${d}`);
2377
- let E = 1024, T = (m, g) => {
2378
- let R = 2166136261, x = (M) => {
2379
- R ^= M, R = Math.imul(R, 16777619);
2380
- };
2381
- for (let M = 0; M < g.length; M++) x(g.charCodeAt(M));
2382
- for (let M of m) {
2383
- if (!M) {
2384
- x(57005);
2385
- continue;
2386
- }
2387
- let p = M.byteLength;
2388
- if (x(p), (M.byteOffset & 3) === 0 && (p & 3) === 0) {
2389
- let f = new Uint32Array(M.buffer, M.byteOffset, p >> 2), h = Math.min(E, f.length);
2390
- for (let b = 0; b < h; b++) x(f[b]);
2391
- for (let b = Math.max(h, f.length - E); b < f.length; b++) x(f[b]);
2392
- } else {
2393
- let f = new Uint8Array(M.buffer, M.byteOffset, p), h = Math.min(E * 4, f.length);
2394
- for (let b = 0; b < h; b++) x(f[b]);
2395
- for (let b = Math.max(h, f.length - E * 4); b < f.length; b++) x(f[b]);
2396
- }
2397
- }
2398
- return `${(R >>> 0).toString(36)}:${m.length}`;
2399
- }, v = (m, g) => {
2400
- let R = [], x = m;
2401
- for (let M of g) {
2402
- x += `|${M.vertexStart},${M.vertexCount},${M.indexStart},${M.indexCount}`;
2403
- let p = M.vertexStart * 3, f = p + M.vertexCount * 3;
2404
- R.push(c.subarray(p, f)), R.push(u.subarray(M.indexStart, M.indexStart + M.indexCount)), R.push(o ? o.subarray(M.vertexStart * 2, (M.vertexStart + M.vertexCount) * 2) : null), R.push(i ? i.subarray(p, f) : null);
2405
- }
2406
- return T(R, x);
2407
- }, y = [];
2408
- for (let m of l) {
2409
- let g = 0, R = 0;
2410
- for (let H of m.windows) g += H.vertexCount, R += H.indexCount;
2411
- let x = new Float32Array(g * 3), M = new Uint32Array(R), p = o ? new Float32Array(g * 2) : null, f = i ? new Uint8Array(g * 3) : null, h = 0, b = 0;
2412
- for (let H of m.windows) {
2413
- let L = H.vertexStart * 3;
2414
- x.set(c.subarray(L, L + H.vertexCount * 3), h * 3), p && o && p.set(o.subarray(H.vertexStart * 2, (H.vertexStart + H.vertexCount) * 2), h * 2), f && i && f.set(i.subarray(L, L + H.vertexCount * 3), h * 3);
2415
- let P = H.vertexStart, k = H.vertexStart + H.vertexCount, O = h - H.vertexStart;
2416
- for (let I = 0; I < H.indexCount; I++) {
2417
- let S = u[H.indexStart + I];
2418
- if (S < P || S >= k) throw new Error(`Index ${S} outside vertex window [${P}, ${k})`);
2419
- M[b + I] = S + O;
2420
- }
2421
- h += H.vertexCount, b += H.indexCount;
2422
- }
2423
- let C = new Float32Array(g * 3);
2424
- for (let H = 0; H < M.length; H += 3) {
2425
- let L = M[H] * 3, P = M[H + 1] * 3, k = M[H + 2] * 3, O = x[k] - x[P], I = x[k + 1] - x[P + 1], S = x[k + 2] - x[P + 2], D = x[L] - x[P], G = x[L + 1] - x[P + 1], j = x[L + 2] - x[P + 2], $ = I * j - S * G, U = S * D - O * j, Q = O * G - I * D;
2426
- C[L] += $, C[L + 1] += U, C[L + 2] += Q, C[P] += $, C[P + 1] += U, C[P + 2] += Q, C[k] += $, C[k + 1] += U, C[k + 2] += Q;
2427
- }
2428
- for (let H = 0; H < C.length; H += 3) {
2429
- let L = C[H], P = C[H + 1], k = C[H + 2], O = Math.sqrt(L * L + P * P + k * k) || 1;
2430
- C[H] = L / O, C[H + 1] = P / O, C[H + 2] = k / O;
2431
- }
2432
- y.push({
2433
- key: v(m.kind, m.windows),
2434
- positions: x,
2435
- normals: C,
2436
- indices: M,
2437
- uvs: p,
2438
- colors: f
2439
- });
2440
- }
2441
- return y;
2442
- }
2443
- function un() {
2444
- return [
2445
- `const assemble = ${jo.toString()};`,
2446
- "self.onmessage = (event) => {",
2447
- " const { id, input } = event.data;",
2448
- " try {",
2449
- " const geometries = assemble(input);",
2450
- " const transfer = [];",
2451
- " for (const g of geometries) {",
2452
- " transfer.push(g.positions.buffer, g.normals.buffer, g.indices.buffer);",
2453
- " if (g.uvs) transfer.push(g.uvs.buffer);",
2454
- " if (g.colors) transfer.push(g.colors.buffer);",
2455
- " }",
2456
- " self.postMessage({ id, geometries }, transfer);",
2457
- " } catch (error) {",
2458
- " self.postMessage({ id, error: String((error && error.message) || error) });",
2459
- " }",
2460
- "};"
2461
- ].join(`
2462
- `);
2463
- }
2464
- async function Vi(e, n) {
2465
- let { debug: t = false } = n ?? {}, r = t ? performance.now() : 0, a, o = performance.now();
2466
- try {
2467
- a = JSON.parse(e);
2468
- } catch (l) {
2469
- return m().error("Error parsing mesh batch envelope JSON:", l), [];
2470
- }
2471
- let i = performance.now() - o;
2472
- return await lt(a, n, {
2473
- parseTime: i,
2474
- perfStart: r
2475
- });
2476
- }
2477
- async function lt(e, n, t) {
2478
- let { mergeByMaterial: r = true, applyTransforms: a = true, debug: o = false, material: i } = n ?? {}, { parseTime: l = 0, perfStart: s = o ? performance.now() : 0 } = t ?? {};
2479
- if (!e.compressedData) return [];
2480
- let c = await En(e.compressedData, {
2481
- mergeByMaterial: r,
2482
- debug: o,
2483
- material: i,
2484
- fallback: {
2485
- materials: e.materials,
2486
- groups: e.groups,
2487
- sourceComponentId: e.sourceComponentId
2488
- }
2489
- });
2490
- if (c) return c;
2491
- let u = performance.now();
2492
- return dn(at(e.compressedData), {
2493
- mergeByMaterial: r,
2494
- applyTransforms: a,
2495
- debug: o,
2496
- material: i,
2497
- parseTime: l,
2498
- decodeTime: performance.now() - u,
2499
- perfStart: s,
2500
- blobBytes: o ? ra(e.compressedData) : 0,
2501
- fallback: {
2502
- materials: e.materials,
2503
- groups: e.groups,
2504
- sourceComponentId: e.sourceComponentId
2505
- }
2506
- });
2507
- }
2508
- async function zi(e, n) {
2509
- let { mergeByMaterial: t = true, applyTransforms: r = true, debug: a = false, material: o } = n ?? {}, i = a ? performance.now() : 0, l = await En(e, {
2510
- mergeByMaterial: t,
2511
- debug: a,
2512
- material: o
2513
- });
2514
- if (l) return l;
2515
- let s = performance.now(), c = at(e), u = performance.now() - s, d = e.byteLength;
2516
- return dn(c, {
2517
- mergeByMaterial: t,
2518
- applyTransforms: r,
2519
- debug: a,
2520
- material: o,
2521
- parseTime: 0,
2522
- decodeTime: u,
2523
- perfStart: i,
2524
- blobBytes: d
2525
- });
2526
- }
2527
- function dn(e, n) {
2528
- let { mergeByMaterial: t, applyTransforms: r, debug: a, material: o, parseTime: i, decodeTime: l, perfStart: s, blobBytes: c, fallback: u } = n, d = e.metadata.materials ?? u?.materials ?? [], E = e.metadata.groups ?? u?.groups ?? [], T = u?.sourceComponentId ?? e.metadata.sourceComponentId, v = (e.flags & 1) !== 0;
2529
- mn(E, d.length, e.vertices.length / 3, e.indices.length);
2530
- let y = v ? $o(e.vertices) : Wo(e.vertices, e.origin, e.scale);
2531
- if (a) {
2532
- let M = e.vertices.byteLength + e.indices.byteLength;
2533
- m().debug("Mesh Batch Stats:"), m().debug(` Materials: ${d.length} | Groups: ${E.length}`), m().debug(` Vertices: ${e.vertices.length / 3} | Indices: ${e.indices.length}`), m().debug(` Format: ${v ? "float32" : "int16 quantized"}`), m().debug(` Blob: ${(c / 1024 / 1024).toFixed(2)} MB | Geometry on wire: ${(M / 1024 / 1024).toFixed(2)} MB`);
2534
- }
2535
- let m$2 = performance.now(), g = d.map((M) => hn(M, {
2536
- vertexColors: e.colors != null,
2537
- appearance: o
2538
- })), R = [];
2539
- for (let M of E) if (t && M.meshes.length > 1) {
2540
- let p = ta(M, y, e.indices, g, e.uvs, e.colors);
2541
- p.userData.sourceComponentId = T ?? null, R.push(p);
2542
- } else {
2543
- let p = na(M, y, e.indices, g, e.uvs, e.colors);
2544
- for (let f of p) f.userData.sourceComponentId = T ?? null;
2545
- R.push(...p);
2546
- }
2547
- let x = performance.now() - m$2;
2548
- if (a) {
2549
- let M = performance.now() - s;
2550
- m().debug("Performance:"), i > 0 && m().debug(` Parse JSON: ${i.toFixed(2)}ms`), m().debug(` Decode binary: ${l.toFixed(2)}ms`), m().debug(` Create Meshes: ${x.toFixed(2)}ms`), m().debug(` Total: ${M.toFixed(2)}ms`);
2551
- }
2552
- return Promise.resolve(R);
2553
- }
2554
- function Ce(e, n) {
2555
- return new p(e, l.VALIDATION_ERROR, { context: n });
2556
- }
2557
- function mn(e, n, t, r) {
2558
- for (let a of e) {
2559
- if (!Number.isInteger(a.materialId) || a.materialId < 0 || a.materialId >= n) throw Ce("Group materialId out of range of the materials array.", {
2560
- materialId: a.materialId,
2561
- materialCount: n
2562
- });
2563
- for (let o of a.meshes) {
2564
- let i = {
2565
- vertexStart: o.vertexStart,
2566
- vertexCount: o.vertexCount,
2567
- indexStart: o.indexStart,
2568
- indexCount: o.indexCount
2569
- };
2570
- for (let [l, s] of Object.entries(i)) if (!Number.isInteger(s) || s < 0) throw Ce(`Mesh metadata field "${l}" must be a non-negative integer.`, {
2571
- meshName: o.name,
2572
- field: l,
2573
- value: s
2574
- });
2575
- if (o.vertexStart + o.vertexCount > t) throw Ce("Mesh vertex window exceeds the batch vertex buffer.", {
2576
- meshName: o.name,
2577
- vertexStart: o.vertexStart,
2578
- vertexCount: o.vertexCount,
2579
- totalVertexCount: t
2580
- });
2581
- if (o.indexStart + o.indexCount > r) throw Ce("Mesh index window exceeds the batch index buffer.", {
2582
- meshName: o.name,
2583
- indexStart: o.indexStart,
2584
- indexCount: o.indexCount,
2585
- totalIndexCount: r
2586
- });
2587
- }
2588
- }
2589
- }
2590
- function fn(e, n) {
2591
- return Ce("Index references a vertex outside its mesh's vertex window.", {
2592
- meshName: n.name,
2593
- indexValue: e,
2594
- vertexStart: n.vertexStart,
2595
- vertexCount: n.vertexCount
2596
- });
2597
- }
2598
- function pn(e, n, t, r, a, o) {
2599
- let i = [], l = e;
2600
- for (let s of n) {
2601
- l += `|${s.vertexStart},${s.vertexCount},${s.indexStart},${s.indexCount}`;
2602
- let c = s.vertexStart * 3, u = c + s.vertexCount * 3;
2603
- i.push(t.subarray(c, u)), i.push(r.subarray(s.indexStart, s.indexStart + s.indexCount)), i.push(a ? a.subarray(s.vertexStart * 2, (s.vertexStart + s.vertexCount) * 2) : null), i.push(o ? o.subarray(c, u) : null);
2604
- }
2605
- return cn(i, l);
2606
- }
2607
- function Wo(e, n, t, r) {
2608
- let a = new Float32Array(e.length), o = n[0], i = n[1], l = n[2], s = t[0], c = t[1], u = t[2];
2609
- for (let d = 0; d < e.length; d += 3) a[d] = o + (e[d] + 32767) * s, a[d + 1] = i + (e[d + 1] + 32767) * c, a[d + 2] = l + (e[d + 2] + 32767) * u;
2610
- return a;
2611
- }
2612
- function $o(e, n) {
2613
- return e;
2614
- }
2615
- var qo = 5e4;
2616
- var he;
2617
- var He = /* @__PURE__ */ new Map();
2618
- var Yo = 1;
2619
- function Xo() {
2620
- if (he !== void 0) return he;
2621
- if (typeof Worker > "u" || typeof Blob > "u" || typeof URL > "u" || typeof URL.createObjectURL != "function") return he = null, null;
2622
- try {
2623
- let e = URL.createObjectURL(new Blob([un()], { type: "text/javascript" })), n = new Worker(e);
2624
- n.onmessage = (t) => {
2625
- let { id: r, geometries: a, error: o } = t.data, i = He.get(r);
2626
- i && (He.delete(r), a ? i.resolve(a) : i.reject(new Error(o ?? "mesh assembly failed in worker")));
2627
- }, n.onerror = () => {
2628
- for (let t of He.values()) t.reject(/* @__PURE__ */ new Error("mesh assembly worker crashed"));
2629
- He.clear(), n.terminate(), he = null;
2630
- }, he = n;
2631
- } catch {
2632
- he = null;
2633
- }
2634
- return he;
2635
- }
2636
- function Ko(e, n, t) {
2637
- return new Promise((r, a) => {
2638
- let o = Yo++;
2639
- He.set(o, {
2640
- resolve: r,
2641
- reject: a
2642
- }), e.postMessage({
2643
- id: o,
2644
- input: n
2645
- }, t);
2646
- });
2647
- }
2648
- async function En(e, n) {
2649
- if (typeof Worker > "u") return null;
2650
- let t = it(e);
2651
- if (t.indexData.length / 3 < qo) return null;
2652
- let r = Xo();
2653
- if (!r) return null;
2654
- let a = t.metadata.materials ?? n.fallback?.materials ?? [], o = t.metadata.groups ?? n.fallback?.groups ?? [], i = n.fallback?.sourceComponentId ?? t.metadata.sourceComponentId;
2655
- mn(o, a.length, t.vertexCount, t.indexData.length);
2656
- let l = (m) => ({
2657
- vertexStart: m.vertexStart,
2658
- vertexCount: m.vertexCount,
2659
- indexStart: m.indexStart,
2660
- indexCount: m.indexCount
2661
- }), s = [], c = [];
2662
- for (let m of o) if (n.mergeByMaterial && m.meshes.length > 1) s.push({
2663
- kind: "merged",
2664
- windows: m.meshes.map(l)
2665
- }), c.push({
2666
- kind: "merged",
2667
- group: m
2668
- });
2669
- else for (let g of m.meshes) s.push({
2670
- kind: "single",
2671
- windows: [l(g)]
2672
- }), c.push({
2673
- kind: "single",
2674
- group: m,
2675
- meshMeta: g
2676
- });
2677
- let u = t.vertexData.slice(), d = t.indexData.slice(), E = [u.buffer, d.buffer];
2678
- t.uvs && E.push(t.uvs.buffer), t.colors && E.push(t.colors.buffer);
2679
- let T;
2680
- try {
2681
- T = await Ko(r, {
2682
- vertexData: u,
2683
- isFloat32: t.isFloat32,
2684
- deltaEncoded: t.deltaEncoded,
2685
- origin: t.origin,
2686
- scale: t.scale,
2687
- indexData: d,
2688
- uvs: t.uvs,
2689
- colors: t.colors,
2690
- jobs: s
2691
- }, E);
2692
- } catch (m$3) {
2693
- return m().warn("Mesh assembly worker failed; falling back to main-thread parse.", m$3), null;
2694
- }
2695
- if (T.length !== s.length) return null;
2696
- let v = a.map((m) => hn(m, {
2697
- vertexColors: t.colors != null,
2698
- appearance: n.material
2699
- })), y = [];
2700
- for (let m = 0; m < T.length; m++) {
2701
- let g = T[m], R = c[m], x = Ge(g.key);
2702
- x || (x = new z.BufferGeometry(), x.setAttribute("position", new z.BufferAttribute(g.positions, 3)), x.setAttribute("normal", new z.BufferAttribute(g.normals, 3)), x.setIndex(new z.BufferAttribute(g.indices, 1)), g.uvs && x.setAttribute("uv", new z.BufferAttribute(g.uvs, 2)), g.colors && x.setAttribute("color", new z.BufferAttribute(g.colors, 3, true)), Ne(g.key, x));
2703
- let M = R.kind === "merged" ? gn(x, R.group, v) : yn(x, R.meshMeta, R.group, v);
2704
- M.userData.sourceComponentId = i ?? null, y.push(M);
2705
- }
2706
- return n.debug && m().debug(`Mesh batch assembled off-thread: ${y.length} meshes, ${t.indexData.length / 3} triangles`), y;
2707
- }
2708
- var Zo = .5;
2709
- var Jo = .5;
2710
- var Qo = .3;
2711
- function hn(e, n) {
2712
- let t = Rt(e.color), r = n?.vertexColors ?? false, a = n?.appearance, o = new z.MeshPhysicalMaterial({
2713
- color: t,
2714
- metalness: e.metalness,
2715
- roughness: e.roughness,
2716
- opacity: e.opacity,
2717
- transparent: e.transparent,
2718
- vertexColors: r,
2719
- side: a?.cullBackfaces ? z.FrontSide : z.DoubleSide,
2720
- polygonOffset: true,
2721
- polygonOffsetFactor: .5,
2722
- polygonOffsetUnits: .5,
2723
- depthWrite: true,
2724
- depthTest: true
2725
- });
2726
- return a?.envMapIntensity != null && (o.envMapIntensity = a.envMapIntensity), e.metalness > Zo && (o.clearcoat = Jo, o.clearcoatRoughness = Qo), r && ea(o), e.map && Xt(o, e.map), o;
2727
- }
2728
- function ea(e) {
2729
- e.onBeforeCompile = (n) => {
2730
- n.vertexShader = n.vertexShader.replace("#include <color_vertex>", `#include <color_vertex>
2731
- #if defined( USE_COLOR ) || defined( USE_COLOR_ALPHA )
2732
- vColor.rgb = mix(
2733
- vColor.rgb / 12.92,
2734
- pow( ( vColor.rgb + 0.055 ) / 1.055, vec3( 2.4 ) ),
2735
- step( vec3( 0.04045 ), vColor.rgb )
2736
- );
2737
- #endif`);
2738
- };
2739
- }
2740
- function ta(e, n, t, r, a = null, o = null) {
2741
- let i = pn("merged", e.meshes, n, t, a, o), l = Ge(i);
2742
- if (!l) {
2743
- let s = 0, c = 0;
2744
- for (let m of e.meshes) s += m.vertexCount, c += m.indexCount;
2745
- let u = new Float32Array(s * 3), d = new Uint32Array(c), E = a ? new Float32Array(s * 2) : null, T = o ? new Uint8Array(s * 3) : null, v = 0, y = 0;
2746
- for (let m of e.meshes) {
2747
- let g = m.vertexStart * 3, R = m.vertexCount * 3;
2748
- if (u.set(n.subarray(g, g + R), v * 3), E && a) {
2749
- let h = m.vertexStart * 2;
2750
- E.set(a.subarray(h, h + m.vertexCount * 2), v * 2);
2751
- }
2752
- T && o && T.set(o.subarray(g, g + R), v * 3);
2753
- let x = t.subarray(m.indexStart, m.indexStart + m.indexCount), M = v - m.vertexStart, p = m.vertexStart, f = m.vertexStart + m.vertexCount;
2754
- for (let h = 0; h < x.length; h++) {
2755
- let b = x[h];
2756
- if (b < p || b >= f) throw fn(b, m);
2757
- d[y + h] = b + M;
2758
- }
2759
- v += m.vertexCount, y += m.indexCount;
2760
- }
2761
- l = new z.BufferGeometry(), l.setAttribute("position", new z.BufferAttribute(u, 3)), l.setIndex(new z.BufferAttribute(d, 1)), E && l.setAttribute("uv", new z.BufferAttribute(E, 2)), T && l.setAttribute("color", new z.BufferAttribute(T, 3, true)), l.computeVertexNormals(), Ne(i, l);
2762
- }
2763
- return gn(l, e, r);
2764
- }
2765
- function gn(e, n, t) {
2766
- let r = new z.Mesh(e, t[n.materialId]), a = n.meshes[0], o = n.meshes.map((i) => i.name).filter((i) => i && i.length > 0);
2767
- return r.name = o.length > 0 ? o[0] : `merged_material_${n.materialId}`, r.castShadow = true, r.receiveShadow = true, r.userData = {
2768
- source: "compute",
2769
- name: r.name,
2770
- layer: a?.layer ?? "",
2771
- originalIndex: a?.originalIndex ?? 0,
2772
- metadata: a?.metadata ?? {},
2773
- mergedFrom: n.meshes.slice(1).map((i) => ({
2774
- name: i.name,
2775
- layer: i.layer,
2776
- originalIndex: i.originalIndex
2777
- }))
2778
- }, r;
2779
- }
2780
- function na(e, n, t, r, a = null, o = null) {
2781
- let i = [];
2782
- for (let l of e.meshes) {
2783
- let s = l.vertexStart * 3, c = l.vertexCount * 3, u = pn("single", [l], n, t, a, o), d = Ge(u);
2784
- if (!d) {
2785
- let E = n.slice(s, s + c), T = t.subarray(l.indexStart, l.indexStart + l.indexCount), v = new Uint32Array(T.length), y = l.vertexStart, m = l.vertexStart + l.vertexCount;
2786
- for (let g = 0; g < T.length; g++) {
2787
- let R = T[g];
2788
- if (R < y || R >= m) throw fn(R, l);
2789
- v[g] = R - y;
2790
- }
2791
- if (d = new z.BufferGeometry(), d.setAttribute("position", new z.BufferAttribute(E, 3)), d.setIndex(new z.BufferAttribute(v, 1)), a) {
2792
- let g = l.vertexStart * 2, R = a.slice(g, g + l.vertexCount * 2);
2793
- d.setAttribute("uv", new z.BufferAttribute(R, 2));
2794
- }
2795
- if (o) {
2796
- let g = o.slice(s, s + c);
2797
- d.setAttribute("color", new z.BufferAttribute(g, 3, true));
2798
- }
2799
- d.computeVertexNormals(), Ne(u, d);
2800
- }
2801
- i.push(yn(d, l, e, r));
2802
- }
2803
- return i;
2804
- }
2805
- function yn(e, n, t, r) {
2806
- let a = new z.Mesh(e, r[t.materialId]);
2807
- return a.name = n.name, a.userData = {
2808
- source: "compute",
2809
- name: n.name,
2810
- layer: n.layer ?? "",
2811
- originalIndex: n.originalIndex,
2812
- metadata: n.metadata ?? {}
2813
- }, a.castShadow = true, a.receiveShadow = true, a;
2814
- }
2815
- function ra(e) {
2816
- return Math.floor(e.length * 3 / 4);
2817
- }
2818
- var bn = {
2819
- Angstroms: 1e-10,
2820
- Nanometers: 1e-9,
2821
- Microns: 1e-6,
2822
- Millimeters: .001,
2823
- Centimeters: .01,
2824
- Decimeters: .1,
2825
- Meters: 1,
2826
- Dekameters: 10,
2827
- Hectometers: 100,
2828
- Kilometers: 1e3,
2829
- Megameters: 1e6,
2830
- Gigameters: 1e9,
2831
- Microinches: 2.54e-8,
2832
- Mils: 254e-7,
2833
- Inches: .0254,
2834
- Feet: .3048,
2835
- Yards: .9144,
2836
- Miles: 1609.344,
2837
- NauticalMiles: 1852
2838
- };
2839
- var oa = "Display";
2840
- var aa = "DisplayBatch";
2841
- function ia(e) {
2842
- let n = e.split(".");
2843
- return n.includes(oa) || n.includes(aa);
2844
- }
2845
- var Tn = /* @__PURE__ */ new Set();
2846
- async function qi(e, n) {
2847
- let t = performance.now(), r = [], { allowScaling: a = true, allowAutoPosition: o = true, rhino: i, debug: l = false, parsing: s = {} } = n ?? {};
2848
- try {
2849
- return await la(e, r, a ? sa(e.modelunits) : 1, s, i, l), o && ma(r), r;
2850
- } catch (c) {
2851
- throw fa(c, r), c;
2852
- } finally {
2853
- l && Ea(t);
2854
- }
2855
- }
2856
- function sa(e) {
2857
- let n = bn[e];
2858
- return n !== void 0 ? n : (Tn.has(e) || (Tn.add(e), m().warn(`Unknown Rhino model unit "${e}" \u2014 geometry will not be scaled (factor 1). Known units: ${Object.keys(bn).join(", ")}.`)), 1);
2859
- }
2860
- async function la(e, n, t, r, a, o) {
2861
- for (let i of e.values) {
2862
- let l = i.InnerTree;
2863
- for (let s in l) {
2864
- let c = l[s];
2865
- c && await ca(c, n, t, r, a, o);
2866
- }
2867
- }
2868
- }
2869
- async function ca(e, n, t, r, a, o) {
2870
- for (let i of e) {
2871
- if (!ia(i.type)) continue;
2872
- let l = {
2873
- mergeByMaterial: true,
2874
- applyTransforms: true,
2875
- debug: false,
2876
- ...r
2877
- }, s = ua(i.data);
2878
- if (!s) {
2879
- m().error("Error parsing display batch envelope: invalid JSON");
2880
- continue;
2881
- }
2882
- let c = await lt(s, l), u = Jt(s.items, {
2883
- rhino: a,
2884
- applyTransforms: l.applyTransforms
2885
- }), d = [...c, ...u];
2886
- if (t !== 1) for (let E of d) E.scale.set(t, t, t);
2887
- n.push(...d), o && m().debug(`Extracted ${c.length} meshes and ${u.length} items from batch`);
2888
- }
2889
- }
2890
- function ua(e) {
2891
- return typeof e == "string" ? da(e) : e;
2892
- }
2893
- function da(e) {
2894
- try {
2895
- return JSON.parse(e);
2896
- } catch {
2897
- return;
2898
- }
2899
- }
2900
- function ma(e) {
2901
- if (e.length === 0) return;
2902
- xt(e, $e(e).min.z, "z");
2903
- }
2904
- function fa(e, n) {
2905
- m().error("An unexpected error occurred:", e), pa(n);
2906
- }
2907
- function pa(e) {
2908
- for (let n of e) {
2909
- let t = n;
2910
- t.geometry && t.geometry.dispose(), t.material && (Array.isArray(t.material) ? t.material.forEach((r) => r.dispose()) : t.material.dispose());
2911
- }
2912
- }
2913
- function Ea(e) {
2914
- let n = performance.now() - e;
2915
- m().info("Time to process meshes:", `${n.toFixed(2)}ms`);
2916
- }
2917
-
2918
- export { $e as $, Ao as A, Co as C, Do as D, Er as E, Fr as F, Gt as G, Ho as H, Jt as J, Ln as L, Mo as M, Pr as P, Qe as Q, Rt as R, So as S, Vt as V, Yt as Y, Za as Z, Ai as a, bn as b, La as c, xt as d, en as e, Mt as f, qi as g, hi as h, qr as i, jt as j, at as k, Vi as l, lt as m, nn as n, ot as o, pi as p, qt as q, zt as r, ba as s, tn as t, vt as v, wt as w, xe as x, zi as z };
2919
- //# sourceMappingURL=chunk-NVMSD4CC.js-BgY8vvUs.js.map