@flyfish-group/file-viewer-web 1.0.19 → 1.0.20

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 (286) hide show
  1. package/LICENSE +160 -0
  2. package/README.md +1 -1
  3. package/package.json +8 -8
  4. package/viewer/_headers +15 -0
  5. package/viewer/assets/{3MFLoader-B_6HM3dj.js → 3MFLoader-BLLnIDfF.js} +1 -1
  6. package/viewer/assets/{AMFLoader-BxP14esn.js → AMFLoader-Co6GFjGd.js} +1 -1
  7. package/viewer/assets/{ArchiveViewer-CcaAEWxO.js → ArchiveViewer-BMJ8ixUE.js} +1 -1
  8. package/viewer/assets/AudioViewer-CDHIKRNg.js +1 -0
  9. package/viewer/assets/{CadViewer-C0QgqOUx.js → CadViewer-DHqSLOq3.js} +1 -1
  10. package/viewer/assets/CodeViewer-elZC5_N5.js +2 -0
  11. package/viewer/assets/{ColladaLoader-Dz956C1E.js → ColladaLoader-DLsqbaWZ.js} +1 -1
  12. package/viewer/assets/DrawingViewer-BtxOj-Gs.js +2 -0
  13. package/viewer/assets/{EdaViewer-CPQ0OplH.js → EdaViewer-CkERmUTW.js} +4 -4
  14. package/viewer/assets/EmailViewer-DHtoEemj.js +4 -0
  15. package/viewer/assets/{EpubViewer-CHbzxH40.js → EpubViewer-C-y1Yxuf.js} +2 -2
  16. package/viewer/assets/{FBXLoader-DlzmRpnh.js → FBXLoader-CDJxWnMq.js} +1 -1
  17. package/viewer/assets/{GLTFLoader-hUKNI0Am.js → GLTFLoader-tdpRj7x3.js} +1 -1
  18. package/viewer/assets/ImageViewer-CkbkF92U.js +1 -0
  19. package/viewer/assets/{KMZLoader-D8eC-S0G.js → KMZLoader-Co2u3IuK.js} +1 -1
  20. package/viewer/assets/{MarkdownViewer-BjNTASd0.js → MarkdownViewer-oNfC_8ZI.js} +2 -2
  21. package/viewer/assets/ModelViewer-gMxpjdoy.js +2 -0
  22. package/viewer/assets/{OBJLoader-C1dmYv7h.js → OBJLoader-CIcUmaIR.js} +1 -1
  23. package/viewer/assets/OfdViewer-B431vHsV.js +2 -0
  24. package/viewer/assets/{PCDLoader-CgQJdB5e.js → PCDLoader-Ckik2ZNQ.js} +1 -1
  25. package/viewer/assets/{PLYLoader-Dq4pQnK6.js → PLYLoader-CpoozyyG.js} +1 -1
  26. package/viewer/assets/{PdfView-BArHGbuC.js → PdfView-CoVz5YgH.js} +2 -2
  27. package/viewer/assets/{PdfView-CDkaqnJh.css → PdfView-d7S_ChQk.css} +1 -1
  28. package/viewer/assets/{PptxRender-CIEoUuJx.js → PptxRender-NZXFW_yB.js} +2 -2
  29. package/viewer/assets/{STLLoader-CzbmjAk6.js → STLLoader--ClWNq9A.js} +1 -1
  30. package/viewer/assets/{TDSLoader-nrxosCSD.js → TDSLoader-Dat6-0hj.js} +1 -1
  31. package/viewer/assets/TypstViewer-BgO4CftA.js +60 -0
  32. package/viewer/assets/TypstViewer-CYzlZT3R.css +1 -0
  33. package/viewer/assets/{USDLoader-BsPrvVXf.js → USDLoader-D5bNRrcv.js} +1 -1
  34. package/viewer/assets/{UmdViewer-Bl9DwUir.js → UmdViewer-DOnvsKP9.js} +2 -2
  35. package/viewer/assets/{VRMLLoader-B9TF3kFK.js → VRMLLoader-Cc44JIu6.js} +1 -1
  36. package/viewer/assets/{VTKLoader-C2k-pFrD.js → VTKLoader-B7r87HF1.js} +1 -1
  37. package/viewer/assets/{XYZLoader-ENA3V0e-.js → XYZLoader-D0wrbuYP.js} +1 -1
  38. package/viewer/assets/{XlsxTable-vFfPghWj.js → XlsxTable-Dw0Jcxvw.js} +2 -2
  39. package/viewer/assets/{ar-SA-G6X2FPQ2-Dk8lrbtV.js → ar-SA-G6X2FPQ2-BFhEDKSC.js} +1 -1
  40. package/viewer/assets/architecture-7EHR7CIX-DZ0FMAJv.js +1 -0
  41. package/viewer/assets/{architectureDiagram-3BPJPVTR-CUiv7vBt.js → architectureDiagram-3BPJPVTR-7Bjepzmi.js} +1 -1
  42. package/viewer/assets/archive-DQ5P8M1W.js +2 -0
  43. package/viewer/assets/audio-Bkx6GgKW.js +2 -0
  44. package/viewer/assets/{az-AZ-76LH7QW2-CwsjUnyx.js → az-AZ-76LH7QW2-X4BKx5b-.js} +1 -1
  45. package/viewer/assets/{bg-BG-XCXSNQG7-D8cD2Wnb.js → bg-BG-XCXSNQG7-5o1TFhxr.js} +1 -1
  46. package/viewer/assets/{blockDiagram-GPEHLZMM-jPcghXAd.js → blockDiagram-GPEHLZMM-BaxQac23.js} +1 -1
  47. package/viewer/assets/{bn-BD-2XOGV67Q-BTIzZo-P.js → bn-BD-2XOGV67Q-BmHkUh14.js} +1 -1
  48. package/viewer/assets/{c4Diagram-AAUBKEIU-CLxdQz33.js → c4Diagram-AAUBKEIU-DlQu80c9.js} +1 -1
  49. package/viewer/assets/{ca-ES-6MX7JW3Y-DN6VCZj-.js → ca-ES-6MX7JW3Y-BppuWJIV.js} +1 -1
  50. package/viewer/assets/cad-CvbH3H5s.js +2 -0
  51. package/viewer/assets/{cfb-CBlZ-Tu_.js → cfb-z-t_baTx.js} +1 -1
  52. package/viewer/assets/channel-DSRv-gEi.js +1 -0
  53. package/viewer/assets/{chunk-2J33WTMH-DySKz026.js → chunk-2J33WTMH-DJMn9D2P.js} +1 -1
  54. package/viewer/assets/{chunk-3OPIFGDE-_GjvnJ3T.js → chunk-3OPIFGDE-D3k-y1T_.js} +1 -1
  55. package/viewer/assets/{chunk-4BX2VUAB-DXd3aEQr.js → chunk-4BX2VUAB-D9CCa3ZN.js} +1 -1
  56. package/viewer/assets/{chunk-55IACEB6-DUBLXdKL.js → chunk-55IACEB6-BxMlg3uk.js} +1 -1
  57. package/viewer/assets/{chunk-5ZQYHXKU-BRF7hE13.js → chunk-5ZQYHXKU-Dt0AW7Zd.js} +1 -1
  58. package/viewer/assets/{chunk-727SXJPM-Cix1-bNS.js → chunk-727SXJPM-ynA6Cu0a.js} +1 -1
  59. package/viewer/assets/{chunk-AGHRB4JF-DOd8ZVka.js → chunk-AGHRB4JF-CGwx4hVn.js} +1 -1
  60. package/viewer/assets/{chunk-AQP2D5EJ-ByeTmPD8.js → chunk-AQP2D5EJ-DoPeDIuu.js} +1 -1
  61. package/viewer/assets/{chunk-BSJP7CBP-DPTup-7J.js → chunk-BSJP7CBP-KzA514ql.js} +1 -1
  62. package/viewer/assets/{chunk-CSCIHK7Q-CaK7NLDn.js → chunk-CSCIHK7Q-BejYIrDO.js} +2 -2
  63. package/viewer/assets/{chunk-EIO257PC-BTeCKQKr.js → chunk-EIO257PC-KzrtKBd7.js} +1 -1
  64. package/viewer/assets/{chunk-FMBD7UC4-BOqvoY4U.js → chunk-FMBD7UC4-CrxD0CA5.js} +1 -1
  65. package/viewer/assets/{chunk-K2UTITRG-ChrjtByO.js → chunk-K2UTITRG-DXfKb63q.js} +4 -4
  66. package/viewer/assets/{chunk-KSCS5N6A-DJ5nNoVF.js → chunk-KSCS5N6A-DW6DrVYV.js} +1 -1
  67. package/viewer/assets/{chunk-L5ZTLDWV-Cd0mA4d7.js → chunk-L5ZTLDWV-GaltCiZi.js} +1 -1
  68. package/viewer/assets/{chunk-LZXEDZCA-CsydnLnr.js → chunk-LZXEDZCA-Ad0rMmnf.js} +2 -2
  69. package/viewer/assets/{chunk-ND2GUHAM-BeSPY4Yj.js → chunk-ND2GUHAM-Dkwaucui.js} +1 -1
  70. package/viewer/assets/{chunk-NZK2D7GU-D-37z8Pl.js → chunk-NZK2D7GU-BXZ5n5sm.js} +1 -1
  71. package/viewer/assets/{chunk-O5CBEL6O-CdSRkJ7Y.js → chunk-O5CBEL6O-BJuZKW5r.js} +1 -1
  72. package/viewer/assets/chunk-QZHKN3VN-Ctvlkpgr.js +1 -0
  73. package/viewer/assets/{chunk-SRAX5OIU-DTPuYDPS.js → chunk-SRAX5OIU-ca-Jd-qc.js} +1 -1
  74. package/viewer/assets/{chunk-WU5MYG2G-BT9QGgBg.js → chunk-WU5MYG2G-DBI7WOLB.js} +1 -1
  75. package/viewer/assets/{chunk-XPW4576I-CmkE4v20.js → chunk-XPW4576I-pnqD549R.js} +1 -1
  76. package/viewer/assets/classDiagram-4FO5ZUOK-DFuDCleV.js +1 -0
  77. package/viewer/assets/classDiagram-v2-Q7XG4LA2-D5AtHBzM.js +1 -0
  78. package/viewer/assets/compiler-Qh6d_b5m.js +1 -0
  79. package/viewer/assets/{core-DjVECA_w.js → core-Dw5gmsJk.js} +1 -1
  80. package/viewer/assets/{cose-bilkent-S5V4N54A-BhrcOJUn.js → cose-bilkent-S5V4N54A-COdvc8g3.js} +1 -1
  81. package/viewer/assets/{cs-CZ-2BRQDIVT-B1W9dn8v.js → cs-CZ-2BRQDIVT-DuBx-KE8.js} +1 -1
  82. package/viewer/assets/{da-DK-5WZEPLOC-TySh-MvB.js → da-DK-5WZEPLOC-D__2K29n.js} +1 -1
  83. package/viewer/assets/{dagre-BM42HDAG-CjBTMuh6.js → dagre-BM42HDAG-Dw1xNQJG.js} +1 -1
  84. package/viewer/assets/{dagre-Os9l8Ofh.js → dagre-D0es08Si.js} +1 -1
  85. package/viewer/assets/{de-DE-XR44H4JA-DNe7czwY.js → de-DE-XR44H4JA-Bk-_VAqx.js} +1 -1
  86. package/viewer/assets/{diagram-2AECGRRQ-DmTRvL7i.js → diagram-2AECGRRQ-CubhPlh2.js} +1 -1
  87. package/viewer/assets/{diagram-5GNKFQAL-CXNgVJV4.js → diagram-5GNKFQAL-lcCwHKpr.js} +1 -1
  88. package/viewer/assets/{diagram-KO2AKTUF-DFzniapf.js → diagram-KO2AKTUF-DobOKV0C.js} +1 -1
  89. package/viewer/assets/{diagram-LMA3HP47-CCZQcG0T.js → diagram-LMA3HP47-BtrCo4rD.js} +1 -1
  90. package/viewer/assets/{diagram-OG6HWLK6-CSPhlVR3.js → diagram-OG6HWLK6-C0AEdDFW.js} +1 -1
  91. package/viewer/assets/{dist-DmVKTZVH.js → dist-Ddjj4E9h.js} +4 -4
  92. package/viewer/assets/{dist-Bs30FHMp.js → dist-Dj6dnR61.js} +1 -1
  93. package/viewer/assets/{docx-preview-DUt9cw6d.js → docx-preview-QBQnGzxq.js} +1 -1
  94. package/viewer/assets/drawing-Bf13GcVj.js +2 -0
  95. package/viewer/assets/ebook-B8feQEjI.js +2 -0
  96. package/viewer/assets/eda-DgG7ZdZb.js +2 -0
  97. package/viewer/assets/{el-GR-BZB4AONW-iz07YMT3.js → el-GR-BZB4AONW-ClFE4N7r.js} +1 -1
  98. package/viewer/assets/email-C6R5vWPC.js +2 -0
  99. package/viewer/assets/{en-B4ZKOASM-g9Xo_oqu.js → en-B4ZKOASM-DBe8Q8-a.js} +1 -1
  100. package/viewer/assets/{erDiagram-TEJ5UH35-BCEiJAYO.js → erDiagram-TEJ5UH35-B2m2BuHV.js} +1 -1
  101. package/viewer/assets/{es-ES-U4NZUMDT-CxLMMu7P.js → es-ES-U4NZUMDT-wL5hCh7L.js} +1 -1
  102. package/viewer/assets/{eu-ES-A7QVB2H4-BD4OhaBy.js → eu-ES-A7QVB2H4-DeE2jNFU.js} +1 -1
  103. package/viewer/assets/eventmodeling-FCH6USID-DAUOWXUA.js +1 -0
  104. package/viewer/assets/{fa-IR-HGAKTJCU-DZTpPZj7.js → fa-IR-HGAKTJCU-D82MLeqy.js} +1 -1
  105. package/viewer/assets/{fi-FI-Z5N7JZ37-ns5ukavM.js → fi-FI-Z5N7JZ37-lO7MSiJw.js} +1 -1
  106. package/viewer/assets/{flowDiagram-I6XJVG4X-DRoiC2ap.js → flowDiagram-I6XJVG4X-CeEbcFuy.js} +1 -1
  107. package/viewer/assets/{fr-FR-RHASNOE6-DukYzLkS.js → fr-FR-RHASNOE6-DgX1wyXR.js} +1 -1
  108. package/viewer/assets/{ganttDiagram-6RSMTGT7-D-cpqJ1c.js → ganttDiagram-6RSMTGT7-B03SOSpP.js} +1 -1
  109. package/viewer/assets/gitGraph-WXDBUCRP-B9WMYi3w.js +1 -0
  110. package/viewer/assets/{gitGraphDiagram-PVQCEYII-DtAUzVmv.js → gitGraphDiagram-PVQCEYII-mHEQgNfb.js} +1 -1
  111. package/viewer/assets/{gl-ES-HMX3MZ6V-Cjk7SCTx.js → gl-ES-HMX3MZ6V-9KoX61Oe.js} +1 -1
  112. package/viewer/assets/global-compiler-Bh6eQCsc.js +1 -0
  113. package/viewer/assets/global-renderer-D05nc19Q.js +1 -0
  114. package/viewer/assets/{he-IL-6SHJWFNN-CPFW3xAY.js → he-IL-6SHJWFNN-69L5ObUT.js} +1 -1
  115. package/viewer/assets/{hi-IN-IWLTKZ5I-DisVfnaM.js → hi-IN-IWLTKZ5I-D0f5F2Wb.js} +1 -1
  116. package/viewer/assets/{hu-HU-A5ZG7DT2-BfFVgJtk.js → hu-HU-A5ZG7DT2-Rjx2yH6Q.js} +1 -1
  117. package/viewer/assets/{id-ID-SAP4L64H-BcRF-r9G.js → id-ID-SAP4L64H-qMtwIenq.js} +1 -1
  118. package/viewer/assets/image-Cd_jEwgA.js +2 -0
  119. package/viewer/assets/image-GAAHSSAO-CB1oJrYk.js +1 -0
  120. package/viewer/assets/index-Da-_mMtb.css +1 -0
  121. package/viewer/assets/index-Wv8YWT7J.js +299 -0
  122. package/viewer/assets/info-J43DQDTF-DTr9gjto.js +1 -0
  123. package/viewer/assets/{infoDiagram-5YYISTIA-0U1kwPhy.js → infoDiagram-5YYISTIA-CNXh2C8P.js} +1 -1
  124. package/viewer/assets/{ishikawaDiagram-YF4QCWOH-DD7UBwKB.js → ishikawaDiagram-YF4QCWOH-CcEwHo89.js} +1 -1
  125. package/viewer/assets/{it-IT-JPQ66NNP-DF9-U5KK.js → it-IT-JPQ66NNP-CZ0glSTd.js} +1 -1
  126. package/viewer/assets/{ja-JP-DBVTYXUO-D0oP-cZ2.js → ja-JP-DBVTYXUO-D_g1i_kv.js} +1 -1
  127. package/viewer/assets/{journeyDiagram-JHISSGLW-F0aNIP-8.js → journeyDiagram-JHISSGLW-Bdq1KGcd.js} +1 -1
  128. package/viewer/assets/{jszip.min-DHUfArgC.js → jszip.min-2KGdI7OW.js} +1 -1
  129. package/viewer/assets/{kaa-6HZHGXH3-VvXC4vMQ.js → kaa-6HZHGXH3-Ciy4tIWa.js} +1 -1
  130. package/viewer/assets/{kab-KAB-ZGHBKWFO-DRCkdS3f.js → kab-KAB-ZGHBKWFO-DStCEYdM.js} +1 -1
  131. package/viewer/assets/{kanban-definition-UN3LZRKU-DBEnmJSa.js → kanban-definition-UN3LZRKU-DKeeGN4i.js} +1 -1
  132. package/viewer/assets/{kk-KZ-P5N5QNE5-DZ5GveXb.js → kk-KZ-P5N5QNE5-CpgZ8UeG.js} +1 -1
  133. package/viewer/assets/{km-KH-HSX4SM5Z-D7pETFw0.js → km-KH-HSX4SM5Z-0OSO_DJy.js} +1 -1
  134. package/viewer/assets/{ko-KR-MTYHY66A-HSLEHqQR.js → ko-KR-MTYHY66A-B4fUmV2s.js} +1 -1
  135. package/viewer/assets/{ku-TR-6OUDTVRD-BlwpBrtP.js → ku-TR-6OUDTVRD-D_CCtBZL.js} +1 -1
  136. package/viewer/assets/{lib-MyZCR7RP.js → lib-6sh2y9xa.js} +2 -2
  137. package/viewer/assets/{lt-LT-XHIRWOB4-Dhu43bCC.js → lt-LT-XHIRWOB4-CnSvxOcs.js} +1 -1
  138. package/viewer/assets/{lv-LV-5QDEKY6T-DzCqbO2y.js → lv-LV-5QDEKY6T-yIZXLULP.js} +1 -1
  139. package/viewer/assets/md-DbNdm2Si.js +2 -0
  140. package/viewer/assets/{mermaid-parser.core-C6XeWUpp.js → mermaid-parser.core-DTeJC58J.js} +2 -2
  141. package/viewer/assets/{mindmap-definition-RKZ34NQL-DZabRNmz.js → mindmap-definition-RKZ34NQL-bEw579ip.js} +1 -1
  142. package/viewer/assets/model-CV4SMZZ6.js +2 -0
  143. package/viewer/assets/{mr-IN-CRQNXWMA-JRrDEdHH.js → mr-IN-CRQNXWMA-DzxKpSKQ.js} +1 -1
  144. package/viewer/assets/{my-MM-5M5IBNSE-DgtXAn-m.js → my-MM-5M5IBNSE-CETT4oOr.js} +1 -1
  145. package/viewer/assets/{nb-NO-T6EIAALU-DIogHd49.js → nb-NO-T6EIAALU-CAnmje1E.js} +1 -1
  146. package/viewer/assets/{nestedRender-BfyUMgZx.js → nestedRender-B6UKcdX4.js} +3 -3
  147. package/viewer/assets/{nl-NL-IS3SIHDZ-Dj3eBF-z.js → nl-NL-IS3SIHDZ-CYiI_F71.js} +1 -1
  148. package/viewer/assets/{nn-NO-6E72VCQL-Cn6gfO2d.js → nn-NO-6E72VCQL-DfK33vgs.js} +1 -1
  149. package/viewer/assets/{oc-FR-POXYY2M6-DbuLv90f.js → oc-FR-POXYY2M6-rsDUyd92.js} +1 -1
  150. package/viewer/assets/ofd-BxfWMAIn.js +2 -0
  151. package/viewer/assets/{ofd-CCbysLg2.js → ofd-BxyAgdTZ.js} +4 -4
  152. package/viewer/assets/{pa-IN-N4M65BXN-B9Jfucii.js → pa-IN-N4M65BXN-D3fxb7s8.js} +1 -1
  153. package/viewer/assets/packet-YPE3B663-BtC974QL.js +1 -0
  154. package/viewer/assets/pdf-BtF-yTwh.js +2 -0
  155. package/viewer/assets/percentages-BXMCSKIN-rHVIt6Og.js +1 -0
  156. package/viewer/assets/{pica-CXjnXwN8.js → pica-LwlR7GZ_.js} +1 -1
  157. package/viewer/assets/pie-LRSECV5Y-muMG-ZB-.js +1 -0
  158. package/viewer/assets/{pieDiagram-4H26LBE5-hBGmntmk.js → pieDiagram-4H26LBE5-DRm24cUR.js} +1 -1
  159. package/viewer/assets/{pl-PL-T2D74RX3-CZA6kVxr.js → pl-PL-T2D74RX3-Dcj-mgYc.js} +1 -1
  160. package/viewer/assets/pptx-CykgL7yb.js +2 -0
  161. package/viewer/assets/{prod-DGEzi_sx.js → prod-Be_zziKY.js} +7 -7
  162. package/viewer/assets/{pt-BR-5N22H2LF-CJBEgmdW.js → pt-BR-5N22H2LF-BC6AJ2XQ.js} +1 -1
  163. package/viewer/assets/{pt-PT-UZXXM6DQ-YcL-83Sy.js → pt-PT-UZXXM6DQ-BQRA2Ei2.js} +1 -1
  164. package/viewer/assets/{quadrantDiagram-W4KKPZXB-5sC-S6oT.js → quadrantDiagram-W4KKPZXB-Cpex5d0w.js} +1 -1
  165. package/viewer/assets/radar-GUYGQ44K-DjwaY-WI.js +1 -0
  166. package/viewer/assets/renderer-AG2ARmm1.js +1 -0
  167. package/viewer/assets/{requirementDiagram-4Y6WPE33-DkUHwjui.js → requirementDiagram-4Y6WPE33-Bi-Gqe6A.js} +1 -1
  168. package/viewer/assets/{ro-RO-JPDTUUEW-DjtOcA5F.js → ro-RO-JPDTUUEW-ChYTHueN.js} +1 -1
  169. package/viewer/assets/{rough.esm-CA6TiziR.js → rough.esm-C7pj5SVA.js} +1 -1
  170. package/viewer/assets/{ru-RU-B4JR7IUQ-CivC8w7d.js → ru-RU-B4JR7IUQ-Bx00WSTh.js} +1 -1
  171. package/viewer/assets/{sankeyDiagram-5OEKKPKP-DHnEZduX.js → sankeyDiagram-5OEKKPKP-84kfwo8z.js} +1 -1
  172. package/viewer/assets/{sequenceDiagram-3UESZ5HK-liCjEWzN.js → sequenceDiagram-3UESZ5HK-BBMDtPQb.js} +1 -1
  173. package/viewer/assets/{si-LK-N5RQ5JYF-DcC_iAkX.js → si-LK-N5RQ5JYF-BLYCVFa-.js} +1 -1
  174. package/viewer/assets/{sk-SK-C5VTKIMK-B5j33LSm.js → sk-SK-C5VTKIMK-BdHbc0aq.js} +1 -1
  175. package/viewer/assets/{sl-SI-NN7IZMDC-Bvp7QhC6.js → sl-SI-NN7IZMDC-yEFJ1FCu.js} +1 -1
  176. package/viewer/assets/{src-C-6PUQ-1.js → src-DJvfcK9f.js} +4 -4
  177. package/viewer/assets/{stateDiagram-AJRCARHV-BT0rGRCf.js → stateDiagram-AJRCARHV-DpWMSn6f.js} +1 -1
  178. package/viewer/assets/stateDiagram-v2-BHNVJYJU-BZAIiz9H.js +1 -0
  179. package/viewer/assets/subset-shared.chunk-CeMN1KJe.js +1 -0
  180. package/viewer/assets/{subset-worker.chunk-DJcS8Bpg.js → subset-worker.chunk-bqXfw36l.js} +1 -1
  181. package/viewer/assets/{sv-SE-XGPEYMSR-DFEd48lm.js → sv-SE-XGPEYMSR-LJunb4rU.js} +1 -1
  182. package/viewer/assets/{ta-IN-2NMHFXQM-CHNfCwC-.js → ta-IN-2NMHFXQM-C9tS4YNI.js} +1 -1
  183. package/viewer/assets/text-CXq6Yvj4.js +2 -0
  184. package/viewer/assets/{th-TH-HPSO5L25-4cc3XUNg.js → th-TH-HPSO5L25-pB850Qy6.js} +1 -1
  185. package/viewer/assets/{timeline-definition-PNZ67QCA-mCfjuMwo.js → timeline-definition-PNZ67QCA-DeHl9yso.js} +1 -1
  186. package/viewer/assets/{tr-TR-DEFEU3FU-BN6Up0rv.js → tr-TR-DEFEU3FU-BfsnnzYD.js} +1 -1
  187. package/viewer/assets/treeView-BLDUP644-B1td6hO4.js +1 -0
  188. package/viewer/assets/treemap-LRROVOQU-CyDF1cUl.js +1 -0
  189. package/viewer/assets/typst-FnG1RrXx.js +2 -0
  190. package/viewer/assets/typst_ts_renderer_bg-DRRWm1TP.wasm +0 -0
  191. package/viewer/assets/{uk-UA-QMV73CPH-DzjnXfb4.js → uk-UA-QMV73CPH-hozuzLQP.js} +1 -1
  192. package/viewer/assets/umd-Bznc3NVB.js +2 -0
  193. package/viewer/assets/{vennDiagram-CIIHVFJN-CxlImpyM.js → vennDiagram-CIIHVFJN-ntTg_y9t.js} +1 -1
  194. package/viewer/assets/{vi-VN-M7AON7JQ-DSWHNiUw.js → vi-VN-M7AON7JQ-D-o2NbvO.js} +1 -1
  195. package/viewer/assets/wardley-L42UT6IY-B4Pi_ryj.js +1 -0
  196. package/viewer/assets/{wardleyDiagram-YWT4CUSO-Bc_vp_2j.js → wardleyDiagram-YWT4CUSO-XxEarUzP.js} +1 -1
  197. package/viewer/assets/wasm-7R9pz8Yn.js +1 -0
  198. package/viewer/assets/wasm-pack-shim-C-PtSIYt.js +1 -0
  199. package/viewer/assets/wasm-pack-shim-CXDHyOYK.js +1 -0
  200. package/viewer/assets/{word-FdCJXkda.js → word-C1KqDob2.js} +2 -2
  201. package/viewer/assets/xlsx-CmfThisG.js +2 -0
  202. package/viewer/assets/{xychartDiagram-2RQKCTM6-cRvSMQE8.js → xychartDiagram-2RQKCTM6-CD_eFT84.js} +1 -1
  203. package/viewer/assets/{zh-CN-LNUGB5OW-CRscQdGo.js → zh-CN-LNUGB5OW-BGtuRT1n.js} +1 -1
  204. package/viewer/assets/{zh-HK-E62DVLB3-DwtXc2ez.js → zh-HK-E62DVLB3-YIetx3Of.js} +1 -1
  205. package/viewer/assets/{zh-TW-RAJ6MFWO-B7ojXG_Q.js → zh-TW-RAJ6MFWO-ZHpfnA6Q.js} +1 -1
  206. package/viewer/flyfish-viewer-manifest.json +1 -1
  207. package/viewer/index.html +2 -2
  208. package/viewer/assets/AudioViewer-BjF25YAm.js +0 -1
  209. package/viewer/assets/CodeViewer-Ch9na7WK.js +0 -2
  210. package/viewer/assets/DrawingViewer-BG-a6aRI.js +0 -2
  211. package/viewer/assets/EmailViewer-BVedx1xl.js +0 -4
  212. package/viewer/assets/ImageViewer-BhiqDvTd.js +0 -1
  213. package/viewer/assets/ModelViewer-vJ20JzA9.js +0 -2
  214. package/viewer/assets/OfdViewer-NQPw-Mah.js +0 -2
  215. package/viewer/assets/architecture-7EHR7CIX-DuuZoBFI.js +0 -1
  216. package/viewer/assets/archive-CIcfmjdA.js +0 -2
  217. package/viewer/assets/audio-BVz7r-vA.js +0 -2
  218. package/viewer/assets/cad-Bp11_qg7.js +0 -2
  219. package/viewer/assets/channel-BEgY7lnG.js +0 -1
  220. package/viewer/assets/chunk-QZHKN3VN-B7qto_fo.js +0 -1
  221. package/viewer/assets/classDiagram-4FO5ZUOK-BsYZOWlA.js +0 -1
  222. package/viewer/assets/classDiagram-v2-Q7XG4LA2-D8H8TEqe.js +0 -1
  223. package/viewer/assets/drawing-adB9hOzE.js +0 -2
  224. package/viewer/assets/ebook-4d5cskIQ.js +0 -2
  225. package/viewer/assets/eda-D-cY1IPP.js +0 -2
  226. package/viewer/assets/email-BtlW1Mff.js +0 -2
  227. package/viewer/assets/eventmodeling-FCH6USID-BtuOgoLy.js +0 -1
  228. package/viewer/assets/gitGraph-WXDBUCRP-2o_b6R_7.js +0 -1
  229. package/viewer/assets/image-D6N1bDFE.js +0 -2
  230. package/viewer/assets/image-GAAHSSAO-CMi25gOf.js +0 -1
  231. package/viewer/assets/index-B_rKNGx-.css +0 -1
  232. package/viewer/assets/index-DP0aBxNP.js +0 -299
  233. package/viewer/assets/info-J43DQDTF-DYwZejl8.js +0 -1
  234. package/viewer/assets/md-CJ8I-UoT.js +0 -2
  235. package/viewer/assets/model-dLh7hsTV.js +0 -2
  236. package/viewer/assets/ofd-P60wwkCc.js +0 -2
  237. package/viewer/assets/packet-YPE3B663-Bcn5b98B.js +0 -1
  238. package/viewer/assets/pdf-D1LQO7uf.js +0 -2
  239. package/viewer/assets/percentages-BXMCSKIN-BVl7pumT.js +0 -1
  240. package/viewer/assets/pie-LRSECV5Y-v7uF-sA7.js +0 -1
  241. package/viewer/assets/pptx-98BF9vSb.js +0 -2
  242. package/viewer/assets/radar-GUYGQ44K-BCS4X1aw.js +0 -1
  243. package/viewer/assets/stateDiagram-v2-BHNVJYJU-9scd674J.js +0 -1
  244. package/viewer/assets/subset-shared.chunk-BWLKXcn8.js +0 -1
  245. package/viewer/assets/text-CocRMFVl.js +0 -2
  246. package/viewer/assets/treeView-BLDUP644-krRIGIJs.js +0 -1
  247. package/viewer/assets/treemap-LRROVOQU-BuCUkeJd.js +0 -1
  248. package/viewer/assets/umd-CVCUOmhK.js +0 -2
  249. package/viewer/assets/wardley-L42UT6IY-CAK0a62K.js +0 -1
  250. package/viewer/assets/xlsx-DLSWS024.js +0 -2
  251. /package/viewer/assets/{bash-BJm0Os9e.js → bash-v6a5s0TG.js} +0 -0
  252. /package/viewer/assets/{cpp-DF3_Y4Y1.js → cpp-CzPJnyWn.js} +0 -0
  253. /package/viewer/assets/{csharp-BtVV86wX.js → csharp-CUZg0Piy.js} +0 -0
  254. /package/viewer/assets/{css-wZv8YE7b.js → css-CmdNZR7s.js} +0 -0
  255. /package/viewer/assets/{cytoscape.esm-WGAx6pUv.js → cytoscape.esm-BsFEMzg7.js} +0 -0
  256. /package/viewer/assets/{diff-Bxf4Bdyj.js → diff-C4YBjULe.js} +0 -0
  257. /package/viewer/assets/{directory-open-01563666-BniaG4fL.js → directory-open-01563666-BnIEPxMj.js} +0 -0
  258. /package/viewer/assets/{directory-open-4ed118d0-BHba9d9p.js → directory-open-4ed118d0-CTCUDMMl.js} +0 -0
  259. /package/viewer/assets/{fflate.module-BCuI6M8v.js → fflate.module-CnrP-VZU.js} +0 -0
  260. /package/viewer/assets/{file-open-002ab408-CbDP93PM.js → file-open-002ab408-CmWWDvbm.js} +0 -0
  261. /package/viewer/assets/{file-open-7c801643-CWQArfXm.js → file-open-7c801643-0DFC1QL7.js} +0 -0
  262. /package/viewer/assets/{file-save-3189631c-BmTfrWvU.js → file-save-3189631c-CGw7IQIT.js} +0 -0
  263. /package/viewer/assets/{file-save-745eba88-DNetLxMl.js → file-save-745eba88-BaJCoLHk.js} +0 -0
  264. /package/viewer/assets/{go-B7mD4oi7.js → go-DRIfKlug.js} +0 -0
  265. /package/viewer/assets/{graphlib-rjQwA88M.js → graphlib-DWHYYbzM.js} +0 -0
  266. /package/viewer/assets/{image-blob-reduce.esm-ClRzuTkj.js → image-blob-reduce.esm-U4cJkLwY.js} +0 -0
  267. /package/viewer/assets/{ini-BMQSfYcX.js → ini-mGJCE6tP.js} +0 -0
  268. /package/viewer/assets/{java-CLKxIYNp.js → java-wxwgypiQ.js} +0 -0
  269. /package/viewer/assets/{javascript-KR3bXd09.js → javascript-DVXHcAAd.js} +0 -0
  270. /package/viewer/assets/{json-CKtDrYhA.js → json-BGVZ214P.js} +0 -0
  271. /package/viewer/assets/{katex-BRA9miIt.js → katex-BMZGv2yo.js} +0 -0
  272. /package/viewer/assets/{libarchive-BWmjBS7s.js → libarchive-BdUg47Sl.js} +0 -0
  273. /package/viewer/assets/{markdown-DQnm92SS.js → markdown-D4bsoCMs.js} +0 -0
  274. /package/viewer/assets/{mp4-BUE9yAIt.js → mp4-B-BC_K8Z.js} +0 -0
  275. /package/viewer/assets/{php-B8QdQEEH.js → php-DjR7_33H.js} +0 -0
  276. /package/viewer/assets/{postal-mime-_xaVOoDw.js → postal-mime-DhooDFq1.js} +0 -0
  277. /package/viewer/assets/{printLayout-CMOwK714.js → printLayout-BKR9eA_I.js} +0 -0
  278. /package/viewer/assets/{python-5t6UGqKu.js → python-knoOST3F.js} +0 -0
  279. /package/viewer/assets/{roundRect-Bcu5tbLc.js → roundRect-BgfzMm9N.js} +0 -0
  280. /package/viewer/assets/{rust-CKj8FOnD.js → rust-cznU34-d.js} +0 -0
  281. /package/viewer/assets/{sql-Ce6HY06Z.js → sql-BtslwpxF.js} +0 -0
  282. /package/viewer/assets/{three.module-CZIqdNh9.js → three.module-DGhmpURB.js} +0 -0
  283. /package/viewer/assets/{typescript-CL2ByGCA.js → typescript-xkhBQGCI.js} +0 -0
  284. /package/viewer/assets/{worker-ref-BqLasdQ2.js → worker-ref-BcbHdN1M.js} +0 -0
  285. /package/viewer/assets/{xml-CKLaISb_.js → xml-RJsMctTC.js} +0 -0
  286. /package/viewer/assets/{yaml-CnW-k44d.js → yaml-CZIBJyY6.js} +0 -0
@@ -1 +1 @@
1
- import{$ as e,A as t,B as n,Bt as r,C as i,Ct as a,Dt as o,E as s,Ft as c,G as l,H as u,Ht as d,I as f,K as p,L as m,M as h,Mt as g,N as _,O as v,Ot as ee,P as te,Pt as y,R as ne,U as re,V as ie,W as ae,X as b,Z as oe,_t as se,at as x,bt as ce,ct as le,dt as ue,et as de,f as fe,ft as pe,gt as me,ht as he,it as S,k as ge,kt as _e,l as C,lt as ve,m as w,o as ye,ot as be,p as T,pt as xe,q as E,r as Se,s as Ce,st as we,tt as D,u as Te,ut as O,vt as Ee,wt as k,x as De,yt as A,z as Oe,zt as j}from"./three.module-CZIqdNh9.js";function M(e,t){if(t===0)return console.warn(`THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles.`),e;if(t===2||t===1){let n=e.getIndex();if(n===null){let t=[],r=e.getAttribute(`position`);if(r!==void 0){for(let e=0;e<r.count;e++)t.push(e);e.setIndex(t),n=e.getIndex()}else return console.error(`THREE.BufferGeometryUtils.toTrianglesDrawMode(): Undefined position attribute. Processing not possible.`),e}let r=n.count-2,i=[];if(t===2)for(let e=1;e<=r;e++)i.push(n.getX(0)),i.push(n.getX(e)),i.push(n.getX(e+1));else for(let e=0;e<r;e++)e%2==0?(i.push(n.getX(e)),i.push(n.getX(e+1)),i.push(n.getX(e+2))):(i.push(n.getX(e+2)),i.push(n.getX(e+1)),i.push(n.getX(e)));i.length/3!==r&&console.error(`THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unable to generate correct amount of triangles.`);let a=e.clone();return a.setIndex(i),a.clearGroups(),a}else return console.error(`THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unknown draw mode:`,t),e}function ke(e){let t=new Map,n=new Map,r=e.clone();return N(e,r,function(e,r){t.set(r,e),n.set(e,r)}),r.traverse(function(e){if(!e.isSkinnedMesh)return;let r=e,i=t.get(e),a=i.skeleton.bones;r.skeleton=i.skeleton.clone(),r.bindMatrix.copy(i.bindMatrix),r.skeleton.bones=a.map(function(e){return n.get(e)}),r.bind(r.skeleton,r.bindMatrix)}),r}function N(e,t,n){n(e,t);for(let r=0;r<e.children.length;r++)N(e.children[r],t.children[r],n)}var Ae=class extends p{constructor(e){super(e),this.dracoLoader=null,this.ktx2Loader=null,this.meshoptDecoder=null,this.pluginCallbacks=[],this.register(function(e){return new Fe(e)}),this.register(function(e){return new Ie(e)}),this.register(function(e){return new Ge(e)}),this.register(function(e){return new Ke(e)}),this.register(function(e){return new qe(e)}),this.register(function(e){return new Re(e)}),this.register(function(e){return new ze(e)}),this.register(function(e){return new Be(e)}),this.register(function(e){return new Ve(e)}),this.register(function(e){return new Pe(e)}),this.register(function(e){return new He(e)}),this.register(function(e){return new Le(e)}),this.register(function(e){return new We(e)}),this.register(function(e){return new Ue(e)}),this.register(function(e){return new Me(e)}),this.register(function(e){return new I(e,F.EXT_MESHOPT_COMPRESSION)}),this.register(function(e){return new I(e,F.KHR_MESHOPT_COMPRESSION)}),this.register(function(e){return new Je(e)})}load(e,t,n,r){let a=this,o;if(this.resourcePath!==``)o=this.resourcePath;else if(this.path!==``){let t=E.extractUrlBase(e);o=E.resolveURL(t,this.path)}else o=E.extractUrlBase(e);this.manager.itemStart(e);let s=function(t){r?r(t):console.error(t),a.manager.itemError(e),a.manager.itemEnd(e)},c=new i(this.manager);c.setPath(this.path),c.setResponseType(`arraybuffer`),c.setRequestHeader(this.requestHeader),c.setWithCredentials(this.withCredentials),c.load(e,function(n){try{a.parse(n,o,function(n){t(n),a.manager.itemEnd(e)},s)}catch(e){s(e)}},n,s)}setDRACOLoader(e){return this.dracoLoader=e,this}setKTX2Loader(e){return this.ktx2Loader=e,this}setMeshoptDecoder(e){return this.meshoptDecoder=e,this}register(e){return this.pluginCallbacks.indexOf(e)===-1&&this.pluginCallbacks.push(e),this}unregister(e){return this.pluginCallbacks.indexOf(e)!==-1&&this.pluginCallbacks.splice(this.pluginCallbacks.indexOf(e),1),this}parse(e,t,n,r){let i,a={},o={},s=new TextDecoder;if(typeof e==`string`)i=JSON.parse(e);else if(e instanceof ArrayBuffer)if(s.decode(new Uint8Array(e,0,4))===L){try{a[F.KHR_BINARY_GLTF]=new Ye(e)}catch(e){r&&r(e);return}i=JSON.parse(a[F.KHR_BINARY_GLTF].content)}else i=JSON.parse(s.decode(e));else i=e;if(i.asset===void 0||i.asset.version[0]<2){r&&r(Error(`THREE.GLTFLoader: Unsupported asset. glTF versions >=2.0 are supported.`));return}let c=new ct(i,{path:t||this.resourcePath||``,crossOrigin:this.crossOrigin,requestHeader:this.requestHeader,manager:this.manager,ktx2Loader:this.ktx2Loader,meshoptDecoder:this.meshoptDecoder});c.fileLoader.setRequestHeader(this.requestHeader);for(let e=0;e<this.pluginCallbacks.length;e++){let t=this.pluginCallbacks[e](c);t.name||console.error(`THREE.GLTFLoader: Invalid plugin found: missing name`),o[t.name]=t,a[t.name]=!0}if(i.extensionsUsed)for(let e=0;e<i.extensionsUsed.length;++e){let t=i.extensionsUsed[e],n=i.extensionsRequired||[];switch(t){case F.KHR_MATERIALS_UNLIT:a[t]=new Ne;break;case F.KHR_DRACO_MESH_COMPRESSION:a[t]=new Xe(i,this.dracoLoader);break;case F.KHR_TEXTURE_TRANSFORM:a[t]=new Ze;break;case F.KHR_MESH_QUANTIZATION:a[t]=new Qe;break;default:n.indexOf(t)>=0&&o[t]===void 0&&console.warn(`THREE.GLTFLoader: Unknown extension "`+t+`".`)}}c.setExtensions(a),c.setPlugins(o),c.parse(n,r)}parseAsync(e,t){let n=this;return new Promise(function(r,i){n.parse(e,t,r,i)})}};function je(){let e={};return{get:function(t){return e[t]},add:function(t,n){e[t]=n},remove:function(t){delete e[t]},removeAll:function(){e={}}}}function P(e,t,n){let r=e.json.materials[t];return r.extensions&&r.extensions[n]?r.extensions[n]:null}var F={KHR_BINARY_GLTF:`KHR_binary_glTF`,KHR_DRACO_MESH_COMPRESSION:`KHR_draco_mesh_compression`,KHR_LIGHTS_PUNCTUAL:`KHR_lights_punctual`,KHR_MATERIALS_CLEARCOAT:`KHR_materials_clearcoat`,KHR_MATERIALS_DISPERSION:`KHR_materials_dispersion`,KHR_MATERIALS_IOR:`KHR_materials_ior`,KHR_MATERIALS_SHEEN:`KHR_materials_sheen`,KHR_MATERIALS_SPECULAR:`KHR_materials_specular`,KHR_MATERIALS_TRANSMISSION:`KHR_materials_transmission`,KHR_MATERIALS_IRIDESCENCE:`KHR_materials_iridescence`,KHR_MATERIALS_ANISOTROPY:`KHR_materials_anisotropy`,KHR_MATERIALS_UNLIT:`KHR_materials_unlit`,KHR_MATERIALS_VOLUME:`KHR_materials_volume`,KHR_TEXTURE_BASISU:`KHR_texture_basisu`,KHR_TEXTURE_TRANSFORM:`KHR_texture_transform`,KHR_MESH_QUANTIZATION:`KHR_mesh_quantization`,KHR_MATERIALS_EMISSIVE_STRENGTH:`KHR_materials_emissive_strength`,EXT_MATERIALS_BUMP:`EXT_materials_bump`,EXT_TEXTURE_WEBP:`EXT_texture_webp`,EXT_TEXTURE_AVIF:`EXT_texture_avif`,EXT_MESHOPT_COMPRESSION:`EXT_meshopt_compression`,KHR_MESHOPT_COMPRESSION:`KHR_meshopt_compression`,EXT_MESH_GPU_INSTANCING:`EXT_mesh_gpu_instancing`},Me=class{constructor(e){this.parser=e,this.name=F.KHR_LIGHTS_PUNCTUAL,this.cache={refs:{},uses:{}}}_markDefs(){let e=this.parser,t=this.parser.json.nodes||[];for(let n=0,r=t.length;n<r;n++){let r=t[n];r.extensions&&r.extensions[this.name]&&r.extensions[this.name].light!==void 0&&e._addNodeRef(this.cache,r.extensions[this.name].light)}}_loadLight(e){let t=this.parser,n=`light:`+e,r=t.cache.get(n);if(r)return r;let i=t.json,a=((i.extensions&&i.extensions[this.name]||{}).lights||[])[e],o,s=new T(16777215);a.color!==void 0&&s.setRGB(a.color[0],a.color[1],a.color[2],l);let c=a.range===void 0?0:a.range;switch(a.type){case`directional`:o=new De(s),o.target.position.set(0,0,-1),o.add(o.target);break;case`point`:o=new he(s),o.distance=c;break;case`spot`:o=new g(s),o.distance=c,a.spot=a.spot||{},a.spot.innerConeAngle=a.spot.innerConeAngle===void 0?0:a.spot.innerConeAngle,a.spot.outerConeAngle=a.spot.outerConeAngle===void 0?Math.PI/4:a.spot.outerConeAngle,o.angle=a.spot.outerConeAngle,o.penumbra=1-a.spot.innerConeAngle/a.spot.outerConeAngle,o.target.position.set(0,0,-1),o.add(o.target);break;default:throw Error(`THREE.GLTFLoader: Unexpected light type: `+a.type)}return o.position.set(0,0,0),X(o,a),a.intensity!==void 0&&(o.intensity=a.intensity),o.name=t.createUniqueName(a.name||`light_`+e),r=Promise.resolve(o),t.cache.add(n,r),r}getDependency(e,t){if(e===`light`)return this._loadLight(t)}createNodeAttachment(e){let t=this,n=this.parser,r=n.json.nodes[e],i=(r.extensions&&r.extensions[this.name]||{}).light;return i===void 0?null:this._loadLight(i).then(function(e){return n._getNodeRef(t.cache,i,e)})}},Ne=class{constructor(){this.name=F.KHR_MATERIALS_UNLIT}getMaterialType(){return D}extendParams(e,t,n){let r=[];e.color=new T(1,1,1),e.opacity=1;let i=t.pbrMetallicRoughness;if(i){if(Array.isArray(i.baseColorFactor)){let t=i.baseColorFactor;e.color.setRGB(t[0],t[1],t[2],l),e.opacity=t[3]}i.baseColorTexture!==void 0&&r.push(n.assignTexture(e,`map`,i.baseColorTexture,k))}return Promise.all(r)}},Pe=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_EMISSIVE_STRENGTH}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);return n===null||n.emissiveStrength!==void 0&&(t.emissiveIntensity=n.emissiveStrength),Promise.resolve()}},Fe=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_CLEARCOAT}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);if(n===null)return Promise.resolve();let r=[];if(n.clearcoatFactor!==void 0&&(t.clearcoat=n.clearcoatFactor),n.clearcoatTexture!==void 0&&r.push(this.parser.assignTexture(t,`clearcoatMap`,n.clearcoatTexture)),n.clearcoatRoughnessFactor!==void 0&&(t.clearcoatRoughness=n.clearcoatRoughnessFactor),n.clearcoatRoughnessTexture!==void 0&&r.push(this.parser.assignTexture(t,`clearcoatRoughnessMap`,n.clearcoatRoughnessTexture)),n.clearcoatNormalTexture!==void 0&&(r.push(this.parser.assignTexture(t,`clearcoatNormalMap`,n.clearcoatNormalTexture)),n.clearcoatNormalTexture.scale!==void 0)){let e=n.clearcoatNormalTexture.scale;t.clearcoatNormalScale=new j(e,e)}return Promise.all(r)}},Ie=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_DISPERSION}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);return n===null||(t.dispersion=n.dispersion===void 0?0:n.dispersion),Promise.resolve()}},Le=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_IRIDESCENCE}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);if(n===null)return Promise.resolve();let r=[];return n.iridescenceFactor!==void 0&&(t.iridescence=n.iridescenceFactor),n.iridescenceTexture!==void 0&&r.push(this.parser.assignTexture(t,`iridescenceMap`,n.iridescenceTexture)),n.iridescenceIor!==void 0&&(t.iridescenceIOR=n.iridescenceIor),t.iridescenceThicknessRange===void 0&&(t.iridescenceThicknessRange=[100,400]),n.iridescenceThicknessMinimum!==void 0&&(t.iridescenceThicknessRange[0]=n.iridescenceThicknessMinimum),n.iridescenceThicknessMaximum!==void 0&&(t.iridescenceThicknessRange[1]=n.iridescenceThicknessMaximum),n.iridescenceThicknessTexture!==void 0&&r.push(this.parser.assignTexture(t,`iridescenceThicknessMap`,n.iridescenceThicknessTexture)),Promise.all(r)}},Re=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_SHEEN}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);if(n===null)return Promise.resolve();let r=[];if(t.sheenColor=new T(0,0,0),t.sheenRoughness=0,t.sheen=1,n.sheenColorFactor!==void 0){let e=n.sheenColorFactor;t.sheenColor.setRGB(e[0],e[1],e[2],l)}return n.sheenRoughnessFactor!==void 0&&(t.sheenRoughness=n.sheenRoughnessFactor),n.sheenColorTexture!==void 0&&r.push(this.parser.assignTexture(t,`sheenColorMap`,n.sheenColorTexture,k)),n.sheenRoughnessTexture!==void 0&&r.push(this.parser.assignTexture(t,`sheenRoughnessMap`,n.sheenRoughnessTexture)),Promise.all(r)}},ze=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_TRANSMISSION}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);if(n===null)return Promise.resolve();let r=[];return n.transmissionFactor!==void 0&&(t.transmission=n.transmissionFactor),n.transmissionTexture!==void 0&&r.push(this.parser.assignTexture(t,`transmissionMap`,n.transmissionTexture)),Promise.all(r)}},Be=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_VOLUME}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);if(n===null)return Promise.resolve();let r=[];t.thickness=n.thicknessFactor===void 0?0:n.thicknessFactor,n.thicknessTexture!==void 0&&r.push(this.parser.assignTexture(t,`thicknessMap`,n.thicknessTexture)),t.attenuationDistance=n.attenuationDistance||1/0;let i=n.attenuationColor||[1,1,1];return t.attenuationColor=new T().setRGB(i[0],i[1],i[2],l),Promise.all(r)}},Ve=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_IOR}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);return n===null?Promise.resolve():(t.ior=n.ior===void 0?1.5:n.ior,t.ior===0&&(t.ior=1e3),Promise.resolve())}},He=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_SPECULAR}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);if(n===null)return Promise.resolve();let r=[];t.specularIntensity=n.specularFactor===void 0?1:n.specularFactor,n.specularTexture!==void 0&&r.push(this.parser.assignTexture(t,`specularIntensityMap`,n.specularTexture));let i=n.specularColorFactor||[1,1,1];return t.specularColor=new T().setRGB(i[0],i[1],i[2],l),n.specularColorTexture!==void 0&&r.push(this.parser.assignTexture(t,`specularColorMap`,n.specularColorTexture,k)),Promise.all(r)}},Ue=class{constructor(e){this.parser=e,this.name=F.EXT_MATERIALS_BUMP}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);if(n===null)return Promise.resolve();let r=[];return t.bumpScale=n.bumpFactor===void 0?1:n.bumpFactor,n.bumpTexture!==void 0&&r.push(this.parser.assignTexture(t,`bumpMap`,n.bumpTexture)),Promise.all(r)}},We=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_ANISOTROPY}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);if(n===null)return Promise.resolve();let r=[];return n.anisotropyStrength!==void 0&&(t.anisotropy=n.anisotropyStrength),n.anisotropyRotation!==void 0&&(t.anisotropyRotation=n.anisotropyRotation),n.anisotropyTexture!==void 0&&r.push(this.parser.assignTexture(t,`anisotropyMap`,n.anisotropyTexture)),Promise.all(r)}},Ge=class{constructor(e){this.parser=e,this.name=F.KHR_TEXTURE_BASISU}loadTexture(e){let t=this.parser,n=t.json,r=n.textures[e];if(!r.extensions||!r.extensions[this.name])return null;let i=r.extensions[this.name],a=t.options.ktx2Loader;if(!a){if(n.extensionsRequired&&n.extensionsRequired.indexOf(this.name)>=0)throw Error(`THREE.GLTFLoader: setKTX2Loader must be called before loading KTX2 textures`);return null}return t.loadTextureImage(e,i.source,a)}},Ke=class{constructor(e){this.parser=e,this.name=F.EXT_TEXTURE_WEBP}loadTexture(e){let t=this.name,n=this.parser,r=n.json,i=r.textures[e];if(!i.extensions||!i.extensions[t])return null;let a=i.extensions[t],o=r.images[a.source],s=n.textureLoader;if(o.uri){let e=n.options.manager.getHandler(o.uri);e!==null&&(s=e)}return n.loadTextureImage(e,a.source,s)}},qe=class{constructor(e){this.parser=e,this.name=F.EXT_TEXTURE_AVIF}loadTexture(e){let t=this.name,n=this.parser,r=n.json,i=r.textures[e];if(!i.extensions||!i.extensions[t])return null;let a=i.extensions[t],o=r.images[a.source],s=n.textureLoader;if(o.uri){let e=n.options.manager.getHandler(o.uri);e!==null&&(s=e)}return n.loadTextureImage(e,a.source,s)}},I=class{constructor(e,t){this.name=t,this.parser=e}loadBufferView(e){let t=this.parser.json,n=t.bufferViews[e];if(n.extensions&&n.extensions[this.name]){let e=n.extensions[this.name],r=this.parser.getDependency(`buffer`,e.buffer),i=this.parser.options.meshoptDecoder;if(!i||!i.supported){if(t.extensionsRequired&&t.extensionsRequired.indexOf(this.name)>=0)throw Error(`THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files`);return null}return r.then(function(t){let n=e.byteOffset||0,r=e.byteLength||0,a=e.count,o=e.byteStride,s=new Uint8Array(t,n,r);return i.decodeGltfBufferAsync?i.decodeGltfBufferAsync(a,o,s,e.mode,e.filter).then(function(e){return e.buffer}):i.ready.then(function(){let t=new ArrayBuffer(a*o);return i.decodeGltfBuffer(new Uint8Array(t),a,o,s,e.mode,e.filter),t})})}else return null}},Je=class{constructor(e){this.name=F.EXT_MESH_GPU_INSTANCING,this.parser=e}createNodeMesh(n){let i=this.parser.json,a=i.nodes[n];if(!a.extensions||!a.extensions[this.name]||a.mesh===void 0)return null;let o=i.meshes[a.mesh];for(let e of o.primitives)if(e.mode!==V.TRIANGLES&&e.mode!==V.TRIANGLE_STRIP&&e.mode!==V.TRIANGLE_FAN&&e.mode!==void 0)return null;let s=a.extensions[this.name].attributes,c=[],l={};for(let e in s)c.push(this.parser.getDependency(`accessor`,s[e]).then(t=>(l[e]=t,l[e])));return c.length<1?null:(c.push(this.parser.createNodeMesh(n)),Promise.all(c).then(n=>{let i=n.pop(),a=i.isGroup?i.children:[i],o=n[0].count,s=[];for(let n of a){let i=new e,a=new r,c=new A,u=new r(1,1,1),d=new t(n.geometry,n.material,o);for(let e=0;e<o;e++)l.TRANSLATION&&a.fromBufferAttribute(l.TRANSLATION,e),l.ROTATION&&c.fromBufferAttribute(l.ROTATION,e),l.SCALE&&u.fromBufferAttribute(l.SCALE,e),d.setMatrixAt(e,i.compose(a,c,u));for(let e in l)if(e===`_COLOR_0`){let t=l[e];d.instanceColor=new ge(t.array,t.itemSize,t.normalized)}else e!==`TRANSLATION`&&e!==`ROTATION`&&e!==`SCALE`&&n.geometry.setAttribute(e,l[e]);ue.prototype.copy.call(d,n),this.parser.assignFinalMaterial(d),s.push(d)}return i.isGroup?(i.clear(),i.add(...s),i):s[0]}))}},L=`glTF`,R=12,z={JSON:1313821514,BIN:5130562},Ye=class{constructor(e){this.name=F.KHR_BINARY_GLTF,this.content=null,this.body=null;let t=new DataView(e,0,R),n=new TextDecoder;if(this.header={magic:n.decode(new Uint8Array(e.slice(0,4))),version:t.getUint32(4,!0),length:t.getUint32(8,!0)},this.header.magic!==L)throw Error(`THREE.GLTFLoader: Unsupported glTF-Binary header.`);if(this.header.version<2)throw Error(`THREE.GLTFLoader: Legacy binary file detected.`);let r=this.header.length-R,i=new DataView(e,R),a=0;for(;a<r;){let t=i.getUint32(a,!0);a+=4;let r=i.getUint32(a,!0);if(a+=4,r===z.JSON){let r=new Uint8Array(e,R+a,t);this.content=n.decode(r)}else if(r===z.BIN){let n=R+a;this.body=e.slice(n,n+t)}a+=t}if(this.content===null)throw Error(`THREE.GLTFLoader: JSON content not found.`)}},Xe=class{constructor(e,t){if(!t)throw Error(`THREE.GLTFLoader: No DRACOLoader instance provided.`);this.name=F.KHR_DRACO_MESH_COMPRESSION,this.json=e,this.dracoLoader=t,this.dracoLoader.preload()}decodePrimitive(e,t){let n=this.json,r=this.dracoLoader,i=e.extensions[this.name].bufferView,a=e.extensions[this.name].attributes,o={},s={},c={};for(let e in a){let t=K[e]||e.toLowerCase();o[t]=a[e]}for(let t in e.attributes){let r=K[t]||t.toLowerCase();if(a[t]!==void 0){let i=n.accessors[e.attributes[t]];c[r]=H[i.componentType].name,s[r]=i.normalized===!0}}return t.getDependency(`bufferView`,i).then(function(e){return new Promise(function(t,n){r.decodeDracoFile(e,function(e){for(let t in e.attributes){let n=e.attributes[t],r=s[t];r!==void 0&&(n.normalized=r)}t(e)},o,c,l,n)})})}},Ze=class{constructor(){this.name=F.KHR_TEXTURE_TRANSFORM}extendTexture(e,t){return(t.texCoord===void 0||t.texCoord===e.channel)&&t.offset===void 0&&t.rotation===void 0&&t.scale===void 0?e:(e=e.clone(),t.texCoord!==void 0&&(e.channel=t.texCoord),t.offset!==void 0&&e.offset.fromArray(t.offset),t.rotation!==void 0&&(e.rotation=t.rotation),t.scale!==void 0&&e.repeat.fromArray(t.scale),e.needsUpdate=!0,e)}},Qe=class{constructor(){this.name=F.KHR_MESH_QUANTIZATION}},B=class extends te{constructor(e,t,n,r){super(e,t,n,r)}copySampleValue_(e){let t=this.resultBuffer,n=this.sampleValues,r=this.valueSize,i=e*r*3+r;for(let e=0;e!==r;e++)t[e]=n[i+e];return t}interpolate_(e,t,n,r){let i=this.resultBuffer,a=this.sampleValues,o=this.valueSize,s=o*2,c=o*3,l=r-t,u=(n-t)/l,d=u*u,f=d*u,p=e*c,m=p-c,h=-2*f+3*d,g=f-d,_=1-h,v=g-d+u;for(let e=0;e!==o;e++){let t=a[m+e+o],n=a[m+e+s]*l,r=a[p+e+o],c=a[p+e]*l;i[e]=_*t+v*n+h*r+g*c}return i}},$e=new A,et=class extends B{interpolate_(e,t,n,r){let i=super.interpolate_(e,t,n,r);return $e.fromArray(i).normalize().toArray(i),i}},V={FLOAT:5126,FLOAT_MAT3:35675,FLOAT_MAT4:35676,FLOAT_VEC2:35664,FLOAT_VEC3:35665,FLOAT_VEC4:35666,LINEAR:9729,REPEAT:10497,SAMPLER_2D:35678,POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6,UNSIGNED_BYTE:5121,UNSIGNED_SHORT:5123},H={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array},U={9728:we,9729:u,9984:ve,9985:ae,9986:le,9987:re},W={33071:fe,33648:be,10497:a},G={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},K={POSITION:`position`,NORMAL:`normal`,TANGENT:`tangent`,TEXCOORD_0:`uv`,TEXCOORD_1:`uv1`,TEXCOORD_2:`uv2`,TEXCOORD_3:`uv3`,COLOR_0:`color`,WEIGHTS_0:`skinWeight`,JOINTS_0:`skinIndex`},q={scale:`scale`,translation:`position`,rotation:`quaternion`,weights:`morphTargetInfluences`},tt={CUBICSPLINE:void 0,LINEAR:m,STEP:f},J={OPAQUE:`OPAQUE`,MASK:`MASK`,BLEND:`BLEND`};function nt(e){return e.DefaultMaterial===void 0&&(e.DefaultMaterial=new x({color:16777215,emissive:0,metalness:1,roughness:1,transparent:!1,depthTest:!0,side:0})),e.DefaultMaterial}function Y(e,t,n){for(let r in n.extensions)e[r]===void 0&&(t.userData.gltfExtensions=t.userData.gltfExtensions||{},t.userData.gltfExtensions[r]=n.extensions[r])}function X(e,t){t.extras!==void 0&&(typeof t.extras==`object`?Object.assign(e.userData,t.extras):console.warn(`THREE.GLTFLoader: Ignoring primitive type .extras, `+t.extras))}function rt(e,t,n){let r=!1,i=!1,a=!1;for(let e=0,n=t.length;e<n;e++){let n=t[e];if(n.POSITION!==void 0&&(r=!0),n.NORMAL!==void 0&&(i=!0),n.COLOR_0!==void 0&&(a=!0),r&&i&&a)break}if(!r&&!i&&!a)return Promise.resolve(e);let o=[],s=[],c=[];for(let l=0,u=t.length;l<u;l++){let u=t[l];if(r){let t=u.POSITION===void 0?e.attributes.position:n.getDependency(`accessor`,u.POSITION);o.push(t)}if(i){let t=u.NORMAL===void 0?e.attributes.normal:n.getDependency(`accessor`,u.NORMAL);s.push(t)}if(a){let t=u.COLOR_0===void 0?e.attributes.color:n.getDependency(`accessor`,u.COLOR_0);c.push(t)}}return Promise.all([Promise.all(o),Promise.all(s),Promise.all(c)]).then(function(t){let n=t[0],o=t[1],s=t[2];return r&&(e.morphAttributes.position=n),i&&(e.morphAttributes.normal=o),a&&(e.morphAttributes.color=s),e.morphTargetsRelative=!0,e})}function it(e,t){if(e.updateMorphTargets(),t.weights!==void 0)for(let n=0,r=t.weights.length;n<r;n++)e.morphTargetInfluences[n]=t.weights[n];if(t.extras&&Array.isArray(t.extras.targetNames)){let n=t.extras.targetNames;if(e.morphTargetInfluences.length===n.length){e.morphTargetDictionary={};for(let t=0,r=n.length;t<r;t++)e.morphTargetDictionary[n[t]]=t}else console.warn(`THREE.GLTFLoader: Invalid extras.targetNames length. Ignoring names.`)}}function at(e){let t,n=e.extensions&&e.extensions[F.KHR_DRACO_MESH_COMPRESSION];if(t=n?`draco:`+n.bufferView+`:`+n.indices+`:`+Z(n.attributes):e.indices+`:`+Z(e.attributes)+`:`+e.mode,e.targets!==void 0)for(let n=0,r=e.targets.length;n<r;n++)t+=`:`+Z(e.targets[n]);return t}function Z(e){let t=``,n=Object.keys(e).sort();for(let r=0,i=n.length;r<i;r++)t+=n[r]+`:`+e[n[r]]+`;`;return t}function Q(e){switch(e){case Int8Array:return 1/127;case Uint8Array:return 1/255;case Int16Array:return 1/32767;case Uint16Array:return 1/65535;default:throw Error(`THREE.GLTFLoader: Unsupported normalized accessor component type.`)}}function ot(e){return e.search(/\.jpe?g($|\?)/i)>0||e.search(/^data\:image\/jpeg/)===0?`image/jpeg`:e.search(/\.webp($|\?)/i)>0||e.search(/^data\:image\/webp/)===0?`image/webp`:e.search(/\.ktx2($|\?)/i)>0||e.search(/^data\:image\/ktx2/)===0?`image/ktx2`:`image/png`}var st=new e,ct=class{constructor(e={},t={}){this.json=e,this.extensions={},this.plugins={},this.options=t,this.cache=new je,this.associations=new Map,this.primitiveCache={},this.nodeCache={},this.meshCache={refs:{},uses:{}},this.cameraCache={refs:{},uses:{}},this.lightCache={refs:{},uses:{}},this.sourceCache={},this.textureCache={},this.nodeNamesUsed={};let n=!1,r=-1,a=!1,o=-1;if(typeof navigator<`u`&&navigator.userAgent!==void 0){let e=navigator.userAgent;n=/^((?!chrome|android).)*safari/i.test(e)===!0;let t=e.match(/Version\/(\d+)/);r=n&&t?parseInt(t[1],10):-1,a=e.indexOf(`Firefox`)>-1,o=a?e.match(/Firefox\/([0-9]+)\./)[1]:-1}typeof createImageBitmap>`u`||n&&r<17||a&&o<98?this.textureLoader=new c(this.options.manager):this.textureLoader=new v(this.options.manager),this.textureLoader.setCrossOrigin(this.options.crossOrigin),this.textureLoader.setRequestHeader(this.options.requestHeader),this.fileLoader=new i(this.options.manager),this.fileLoader.setResponseType(`arraybuffer`),this.options.crossOrigin===`use-credentials`&&this.fileLoader.setWithCredentials(!0)}setExtensions(e){this.extensions=e}setPlugins(e){this.plugins=e}parse(e,t){let n=this,r=this.json,i=this.extensions;this.cache.removeAll(),this.nodeCache={},this._invokeAll(function(e){return e._markDefs&&e._markDefs()}),Promise.all(this._invokeAll(function(e){return e.beforeRoot&&e.beforeRoot()})).then(function(){return Promise.all([n.getDependencies(`scene`),n.getDependencies(`animation`),n.getDependencies(`camera`)])}).then(function(t){let a={scene:t[0][r.scene||0],scenes:t[0],animations:t[1],cameras:t[2],asset:r.asset,parser:n,userData:{}};return Y(i,a,r),X(a,r),Promise.all(n._invokeAll(function(e){return e.afterRoot&&e.afterRoot(a)})).then(function(){for(let e of a.scenes)e.updateMatrixWorld();e(a)})}).catch(t)}_markDefs(){let e=this.json.nodes||[],t=this.json.skins||[],n=this.json.meshes||[];for(let n=0,r=t.length;n<r;n++){let r=t[n].joints;for(let t=0,n=r.length;t<n;t++)e[r[t]].isBone=!0}for(let t=0,r=e.length;t<r;t++){let r=e[t];r.mesh!==void 0&&(this._addNodeRef(this.meshCache,r.mesh),r.skin!==void 0&&(n[r.mesh].isSkinnedMesh=!0)),r.camera!==void 0&&this._addNodeRef(this.cameraCache,r.camera)}}_addNodeRef(e,t){t!==void 0&&(e.refs[t]===void 0&&(e.refs[t]=e.uses[t]=0),e.refs[t]++)}_getNodeRef(e,t,n){if(e.refs[t]<=1)return n;let r=n.clone(),i=(e,t)=>{let n=this.associations.get(e);n!=null&&this.associations.set(t,n);for(let[n,r]of e.children.entries())i(r,t.children[n])};return i(n,r),r.name+=`_instance_`+ e.uses[t]++,r}_invokeOne(e){let t=Object.values(this.plugins);t.push(this);for(let n=0;n<t.length;n++){let r=e(t[n]);if(r)return r}return null}_invokeAll(e){let t=Object.values(this.plugins);t.unshift(this);let n=[];for(let r=0;r<t.length;r++){let i=e(t[r]);i&&n.push(i)}return n}getDependency(e,t){let n=e+`:`+t,r=this.cache.get(n);if(!r){switch(e){case`scene`:r=this.loadScene(t);break;case`node`:r=this._invokeOne(function(e){return e.loadNode&&e.loadNode(t)});break;case`mesh`:r=this._invokeOne(function(e){return e.loadMesh&&e.loadMesh(t)});break;case`accessor`:r=this.loadAccessor(t);break;case`bufferView`:r=this._invokeOne(function(e){return e.loadBufferView&&e.loadBufferView(t)});break;case`buffer`:r=this.loadBuffer(t);break;case`material`:r=this._invokeOne(function(e){return e.loadMaterial&&e.loadMaterial(t)});break;case`texture`:r=this._invokeOne(function(e){return e.loadTexture&&e.loadTexture(t)});break;case`skin`:r=this.loadSkin(t);break;case`animation`:r=this._invokeOne(function(e){return e.loadAnimation&&e.loadAnimation(t)});break;case`camera`:r=this.loadCamera(t);break;default:if(r=this._invokeOne(function(n){return n!=this&&n.getDependency&&n.getDependency(e,t)}),!r)throw Error(`Unknown type: `+e);break}this.cache.add(n,r)}return r}getDependencies(e){let t=this.cache.get(e);if(!t){let n=this,r=this.json[e+(e===`mesh`?`es`:`s`)]||[];t=Promise.all(r.map(function(t,r){return n.getDependency(e,r)})),this.cache.add(e,t)}return t}loadBuffer(e){let t=this.json.buffers[e],n=this.fileLoader;if(t.type&&t.type!==`arraybuffer`)throw Error(`THREE.GLTFLoader: `+t.type+` buffer type is not supported.`);if(t.uri===void 0&&e===0)return Promise.resolve(this.extensions[F.KHR_BINARY_GLTF].body);let r=this.options;return new Promise(function(e,i){n.load(E.resolveURL(t.uri,r.path),e,void 0,function(){i(Error(`THREE.GLTFLoader: Failed to load buffer "`+t.uri+`".`))})})}loadBufferView(e){let t=this.json.bufferViews[e];return this.getDependency(`buffer`,t.buffer).then(function(e){let n=t.byteLength||0,r=t.byteOffset||0;return e.slice(r,r+n)})}loadAccessor(e){let t=this,n=this.json,r=this.json.accessors[e];if(r.bufferView===void 0&&r.sparse===void 0){let e=G[r.type],t=H[r.componentType],n=r.normalized===!0,i=new t(r.count*e);return Promise.resolve(new C(i,e,n))}let i=[];return r.bufferView===void 0?i.push(null):i.push(this.getDependency(`bufferView`,r.bufferView)),r.sparse!==void 0&&(i.push(this.getDependency(`bufferView`,r.sparse.indices.bufferView)),i.push(this.getDependency(`bufferView`,r.sparse.values.bufferView))),Promise.all(i).then(function(e){let i=e[0],a=G[r.type],o=H[r.componentType],s=o.BYTES_PER_ELEMENT,c=s*a,l=r.byteOffset||0,u=r.bufferView===void 0?void 0:n.bufferViews[r.bufferView].byteStride,d=r.normalized===!0,f,p;if(u&&u!==c){let e=Math.floor(l/u),n=`InterleavedBuffer:`+r.bufferView+`:`+r.componentType+`:`+e+`:`+r.count,c=t.cache.get(n);c||(f=new o(i,e*u,r.count*u/s),c=new h(f,u/s),t.cache.add(n,c)),p=new _(c,a,l%u/s,d)}else f=i===null?new o(r.count*a):new o(i,l,r.count*a),p=new C(f,a,d);if(r.sparse!==void 0){let t=G.SCALAR,n=H[r.sparse.indices.componentType],s=r.sparse.indices.byteOffset||0,c=r.sparse.values.byteOffset||0,l=new n(e[1],s,r.sparse.count*t),u=new o(e[2],c,r.sparse.count*a);i!==null&&(p=new C(p.array.slice(),p.itemSize,p.normalized)),p.normalized=!1;for(let e=0,t=l.length;e<t;e++){let t=l[e];if(p.setX(t,u[e*a]),a>=2&&p.setY(t,u[e*a+1]),a>=3&&p.setZ(t,u[e*a+2]),a>=4&&p.setW(t,u[e*a+3]),a>=5)throw Error(`THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.`)}p.normalized=d}return p})}loadTexture(e){let t=this.json,n=this.options,r=t.textures[e].source,i=t.images[r],a=this.textureLoader;if(i.uri){let e=n.manager.getHandler(i.uri);e!==null&&(a=e)}return this.loadTextureImage(e,r,a)}loadTextureImage(e,t,n){let r=this,i=this.json,a=i.textures[e],o=i.images[t],s=(o.uri||o.bufferView)+`:`+a.sampler;if(this.textureCache[s])return this.textureCache[s];let c=this.loadImageSource(t,n).then(function(t){t.flipY=!1,t.name=a.name||o.name||``,t.name===``&&typeof o.uri==`string`&&o.uri.startsWith(`data:image/`)===!1&&(t.name=o.uri);let n=(i.samplers||{})[a.sampler]||{};return t.magFilter=U[n.magFilter]||1006,t.minFilter=U[n.minFilter]||1008,t.wrapS=W[n.wrapS]||1e3,t.wrapT=W[n.wrapT]||1e3,t.generateMipmaps=!t.isCompressedTexture&&t.minFilter!==1003&&t.minFilter!==1006,r.associations.set(t,{textures:e}),t}).catch(function(){return null});return this.textureCache[s]=c,c}loadImageSource(e,t){let n=this,r=this.json,i=this.options;if(this.sourceCache[e]!==void 0)return this.sourceCache[e].then(e=>e.clone());let a=r.images[e],o=self.URL||self.webkitURL,s=a.uri||``,c=!1;if(a.bufferView!==void 0)s=n.getDependency(`bufferView`,a.bufferView).then(function(e){c=!0;let t=new Blob([e],{type:a.mimeType});return s=o.createObjectURL(t),s});else if(a.uri===void 0)throw Error(`THREE.GLTFLoader: Image `+e+` is missing URI and bufferView`);let l=Promise.resolve(s).then(function(e){return new Promise(function(n,r){let a=n;t.isImageBitmapLoader===!0&&(a=function(e){let t=new y(e);t.needsUpdate=!0,n(t)}),t.load(E.resolveURL(e,i.path),a,void 0,r)})}).then(function(e){return c===!0&&o.revokeObjectURL(s),X(e,a),e.userData.mimeType=a.mimeType||ot(a.uri),e}).catch(function(e){throw console.error(`THREE.GLTFLoader: Couldn't load texture`,s),e});return this.sourceCache[e]=l,l}assignTexture(e,t,n,r){let i=this;return this.getDependency(`texture`,n.index).then(function(a){if(!a)return null;if(n.texCoord!==void 0&&n.texCoord>0&&(a=a.clone(),a.channel=n.texCoord),i.extensions[F.KHR_TEXTURE_TRANSFORM]){let e=n.extensions===void 0?void 0:n.extensions[F.KHR_TEXTURE_TRANSFORM];if(e){let t=i.associations.get(a);a=i.extensions[F.KHR_TEXTURE_TRANSFORM].extendTexture(a,e),i.associations.set(a,t)}}return r!==void 0&&(a.colorSpace=r),e[t]=a,a})}assignFinalMaterial(e){let t=e.geometry,n=e.material,r=t.attributes.tangent===void 0,i=t.attributes.color!==void 0,a=t.attributes.normal===void 0;if(e.isPoints){let e=`PointsMaterial:`+n.uuid,t=this.cache.get(e);t||(t=new se,b.prototype.copy.call(t,n),t.color.copy(n.color),t.map=n.map,t.sizeAttenuation=!1,this.cache.add(e,t)),n=t}else if(e.isLine){let e=`LineBasicMaterial:`+n.uuid,t=this.cache.get(e);t||(t=new Oe,b.prototype.copy.call(t,n),t.color.copy(n.color),t.map=n.map,this.cache.add(e,t)),n=t}if(r||i||a){let e=`ClonedMaterial:`+n.uuid+`:`;r&&(e+=`derivative-tangents:`),i&&(e+=`vertex-colors:`),a&&(e+=`flat-shading:`);let t=this.cache.get(e);t||(t=n.clone(),i&&(t.vertexColors=!0),a&&(t.flatShading=!0),r&&(t.normalScale&&(t.normalScale.y*=-1),t.clearcoatNormalScale&&(t.clearcoatNormalScale.y*=-1)),this.cache.add(e,t),this.associations.set(t,this.associations.get(n))),n=t}e.material=n}getMaterialType(){return x}loadMaterial(e){let t=this,n=this.json,r=this.extensions,i=n.materials[e],a,o={},s=i.extensions||{},c=[];if(s[F.KHR_MATERIALS_UNLIT]){let e=r[F.KHR_MATERIALS_UNLIT];a=e.getMaterialType(),c.push(e.extendParams(o,i,t))}else{let n=i.pbrMetallicRoughness||{};if(o.color=new T(1,1,1),o.opacity=1,Array.isArray(n.baseColorFactor)){let e=n.baseColorFactor;o.color.setRGB(e[0],e[1],e[2],l),o.opacity=e[3]}n.baseColorTexture!==void 0&&c.push(t.assignTexture(o,`map`,n.baseColorTexture,k)),o.metalness=n.metallicFactor===void 0?1:n.metallicFactor,o.roughness=n.roughnessFactor===void 0?1:n.roughnessFactor,n.metallicRoughnessTexture!==void 0&&(c.push(t.assignTexture(o,`metalnessMap`,n.metallicRoughnessTexture)),c.push(t.assignTexture(o,`roughnessMap`,n.metallicRoughnessTexture))),a=this._invokeOne(function(t){return t.getMaterialType&&t.getMaterialType(e)}),c.push(Promise.all(this._invokeAll(function(t){return t.extendMaterialParams&&t.extendMaterialParams(e,o)})))}i.doubleSided===!0&&(o.side=2);let u=i.alphaMode||J.OPAQUE;if(u===J.BLEND?(o.transparent=!0,o.depthWrite=!1):(o.transparent=!1,u===J.MASK&&(o.alphaTest=i.alphaCutoff===void 0?.5:i.alphaCutoff)),i.normalTexture!==void 0&&a!==D&&(c.push(t.assignTexture(o,`normalMap`,i.normalTexture)),o.normalScale=new j(1,1),i.normalTexture.scale!==void 0)){let e=i.normalTexture.scale;o.normalScale.set(e,e)}if(i.occlusionTexture!==void 0&&a!==D&&(c.push(t.assignTexture(o,`aoMap`,i.occlusionTexture)),i.occlusionTexture.strength!==void 0&&(o.aoMapIntensity=i.occlusionTexture.strength)),i.emissiveFactor!==void 0&&a!==D){let e=i.emissiveFactor;o.emissive=new T().setRGB(e[0],e[1],e[2],l)}return i.emissiveTexture!==void 0&&a!==D&&c.push(t.assignTexture(o,`emissiveMap`,i.emissiveTexture,k)),Promise.all(c).then(function(){let n=new a(o);return i.name&&(n.name=i.name),X(n,i),t.associations.set(n,{materials:e}),i.extensions&&Y(r,n,i),n})}createUniqueName(e){let t=Ee.sanitizeNodeName(e||``);return t in this.nodeNamesUsed?t+`_`+ ++this.nodeNamesUsed[t]:(this.nodeNamesUsed[t]=0,t)}loadGeometries(e){let t=this,n=this.extensions,r=this.primitiveCache;function i(e){return n[F.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(e,t).then(function(n){return $(n,e,t)})}let a=[];for(let n=0,o=e.length;n<o;n++){let o=e[n],s=at(o),c=r[s];if(c)a.push(c.promise);else{let e;e=o.extensions&&o.extensions[F.KHR_DRACO_MESH_COMPRESSION]?i(o):$(new Te,o,t),r[s]={primitive:o,promise:e},a.push(e)}}return Promise.all(a)}loadMesh(e){let t=this,r=this.json,i=this.extensions,a=r.meshes[e],o=a.primitives,c=[];for(let e=0,t=o.length;e<t;e++){let t=o[e].material===void 0?nt(this.cache):this.getDependency(`material`,o[e].material);c.push(t)}return c.push(t.loadGeometries(o)),Promise.all(c).then(function(r){let c=r.slice(0,r.length-1),l=r[r.length-1],u=[];for(let r=0,s=l.length;r<s;r++){let s=l[r],d=o[r],f,p=c[r];if(d.mode===V.TRIANGLES||d.mode===V.TRIANGLE_STRIP||d.mode===V.TRIANGLE_FAN||d.mode===void 0)f=a.isSkinnedMesh===!0?new ee(s,p):new de(s,p),f.isSkinnedMesh===!0&&f.normalizeSkinWeights(),d.mode===V.TRIANGLE_STRIP?f.geometry=M(f.geometry,1):d.mode===V.TRIANGLE_FAN&&(f.geometry=M(f.geometry,2));else if(d.mode===V.LINES)f=new ie(s,p);else if(d.mode===V.LINE_STRIP)f=new ne(s,p);else if(d.mode===V.LINE_LOOP)f=new n(s,p);else if(d.mode===V.POINTS)f=new me(s,p);else throw Error(`THREE.GLTFLoader: Primitive mode unsupported: `+d.mode);Object.keys(f.geometry.morphAttributes).length>0&&it(f,a),f.name=t.createUniqueName(a.name||`mesh_`+e),X(f,a),d.extensions&&Y(i,f,d),t.assignFinalMaterial(f),u.push(f)}for(let n=0,r=u.length;n<r;n++)t.associations.set(u[n],{meshes:e,primitives:n});if(u.length===1)return a.extensions&&Y(i,u[0],a),u[0];let d=new s;a.extensions&&Y(i,d,a),t.associations.set(d,{meshes:e});for(let e=0,t=u.length;e<t;e++)d.add(u[e]);return d})}loadCamera(e){let t,n=this.json.cameras[e],r=n[n.type];if(!r){console.warn(`THREE.GLTFLoader: Missing camera parameters.`);return}return n.type===`perspective`?t=new xe(oe.radToDeg(r.yfov),r.aspectRatio||1,r.znear||1,r.zfar||2e6):n.type===`orthographic`&&(t=new pe(-r.xmag,r.xmag,r.ymag,-r.ymag,r.znear,r.zfar)),n.name&&(t.name=this.createUniqueName(n.name)),X(t,n),Promise.resolve(t)}loadSkin(t){let n=this.json.skins[t],r=[];for(let e=0,t=n.joints.length;e<t;e++)r.push(this._loadNodeShallow(n.joints[e]));return n.inverseBindMatrices===void 0?r.push(null):r.push(this.getDependency(`accessor`,n.inverseBindMatrices)),Promise.all(r).then(function(t){let r=t.pop(),i=t,a=[],s=[];for(let t=0,o=i.length;t<o;t++){let o=i[t];if(o){a.push(o);let n=new e;r!==null&&n.fromArray(r.array,t*16),s.push(n)}else console.warn(`THREE.GLTFLoader: Joint "%s" could not be found.`,n.joints[t])}return new o(a,s)})}loadAnimation(e){let t=this.json,n=this,r=t.animations[e],i=r.name?r.name:`animation_`+e,a=[],o=[],s=[],c=[],l=[];for(let e=0,t=r.channels.length;e<t;e++){let t=r.channels[e],n=r.samplers[t.sampler],i=t.target,u=i.node,d=r.parameters===void 0?n.input:r.parameters[n.input],f=r.parameters===void 0?n.output:r.parameters[n.output];i.node!==void 0&&(a.push(this.getDependency(`node`,u)),o.push(this.getDependency(`accessor`,d)),s.push(this.getDependency(`accessor`,f)),c.push(n),l.push(i))}return Promise.all([Promise.all(a),Promise.all(o),Promise.all(s),Promise.all(c),Promise.all(l)]).then(function(e){let t=e[0],a=e[1],o=e[2],s=e[3],c=e[4],l=[];for(let e=0,r=t.length;e<r;e++){let r=t[e],i=a[e],u=o[e],d=s[e],f=c[e];if(r===void 0)continue;r.updateMatrix&&r.updateMatrix();let p=n._createAnimationTracks(r,i,u,d,f);if(p)for(let e=0;e<p.length;e++)l.push(p[e])}let u=new Se(i,void 0,l);return X(u,r),u})}createNodeMesh(e){let t=this.json,n=this,r=t.nodes[e];return r.mesh===void 0?null:n.getDependency(`mesh`,r.mesh).then(function(e){let t=n._getNodeRef(n.meshCache,r.mesh,e);return r.weights!==void 0&&t.traverse(function(e){if(e.isMesh)for(let t=0,n=r.weights.length;t<n;t++)e.morphTargetInfluences[t]=r.weights[t]}),t})}loadNode(e){let t=this.json,n=this,i=t.nodes[e],a=n._loadNodeShallow(e),o=[],s=i.children||[];for(let e=0,t=s.length;e<t;e++)o.push(n.getDependency(`node`,s[e]));let c=i.skin===void 0?Promise.resolve(null):n.getDependency(`skin`,i.skin);return Promise.all([a,Promise.all(o),c]).then(function(e){let t=e[0],n=e[1],i=e[2];i!==null&&t.traverse(function(e){e.isSkinnedMesh&&e.bind(i,st)});for(let e=0,r=n.length;e<r;e++)t.add(n[e]);if(t.userData.pivot!==void 0&&n.length>0){let e=t.userData.pivot,i=n[0];t.pivot=new r().fromArray(e),t.position.x-=e[0],t.position.y-=e[1],t.position.z-=e[2],i.position.set(0,0,0),delete t.userData.pivot}return t})}_loadNodeShallow(t){let n=this.json,r=this.extensions,i=this;if(this.nodeCache[t]!==void 0)return this.nodeCache[t];let a=n.nodes[t],o=a.name?i.createUniqueName(a.name):``,c=[],l=i._invokeOne(function(e){return e.createNodeMesh&&e.createNodeMesh(t)});return l&&c.push(l),a.camera!==void 0&&c.push(i.getDependency(`camera`,a.camera).then(function(e){return i._getNodeRef(i.cameraCache,a.camera,e)})),i._invokeAll(function(e){return e.createNodeAttachment&&e.createNodeAttachment(t)}).forEach(function(e){c.push(e)}),this.nodeCache[t]=Promise.all(c).then(function(n){let c;if(c=a.isBone===!0?new ye:n.length>1?new s:n.length===1?n[0]:new ue,c!==n[0])for(let e=0,t=n.length;e<t;e++)c.add(n[e]);if(a.name&&(c.userData.name=a.name,c.name=o),X(c,a),a.extensions&&Y(r,c,a),a.matrix!==void 0){let t=new e;t.fromArray(a.matrix),c.applyMatrix4(t)}else a.translation!==void 0&&c.position.fromArray(a.translation),a.rotation!==void 0&&c.quaternion.fromArray(a.rotation),a.scale!==void 0&&c.scale.fromArray(a.scale);if(!i.associations.has(c))i.associations.set(c,{});else if(a.mesh!==void 0&&i.meshCache.refs[a.mesh]>1){let e=i.associations.get(c);i.associations.set(c,{...e})}return i.associations.get(c).nodes=t,c}),this.nodeCache[t]}loadScene(e){let t=this.extensions,n=this.json.scenes[e],r=this,i=new s;n.name&&(i.name=r.createUniqueName(n.name)),X(i,n),n.extensions&&Y(t,i,n);let a=n.nodes||[],o=[];for(let e=0,t=a.length;e<t;e++)o.push(r.getDependency(`node`,a[e]));return Promise.all(o).then(function(e){for(let t=0,n=e.length;t<n;t++){let n=e[t];n.parent===null?i.add(n):i.add(ke(n))}return r.associations=(e=>{let t=new Map;for(let[e,n]of r.associations)(e instanceof b||e instanceof y)&&t.set(e,n);return e.traverse(e=>{let n=r.associations.get(e);n!=null&&t.set(e,n)}),t})(i),i})}_createAnimationTracks(e,t,n,r,i){let a=[],o=e.name?e.name:e.uuid,s=[];function c(e){e.morphTargetInfluences&&s.push(e.name?e.name:e.uuid)}q[i.path]===q.weights?(c(e),e.isGroup&&e.children.forEach(c)):s.push(o);let l;switch(q[i.path]){case q.weights:l=O;break;case q.rotation:l=ce;break;case q.translation:case q.scale:l=d;break;default:switch(n.itemSize){case 1:l=O;break;default:l=d;break}break}let u=r.interpolation===void 0?m:tt[r.interpolation],f=this._getArrayFromAccessor(n);for(let e=0,n=s.length;e<n;e++){let n=new l(s[e]+`.`+q[i.path],t.array,f,u);r.interpolation===`CUBICSPLINE`&&this._createCubicSplineTrackInterpolant(n),a.push(n)}return a}_getArrayFromAccessor(e){let t=e.array;if(e.normalized){let e=Q(t.constructor),n=new Float32Array(t.length);for(let r=0,i=t.length;r<i;r++)n[r]=t[r]*e;t=n}return t}_createCubicSplineTrackInterpolant(e){e.createInterpolant=function(e){return new(this instanceof ce?et:B)(this.times,this.values,this.getValueSize()/3,e)},e.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline=!0}};function lt(e,t,n){let i=t.attributes,a=new Ce;if(i.POSITION!==void 0){let e=n.json.accessors[i.POSITION],t=e.min,o=e.max;if(t!==void 0&&o!==void 0){if(a.set(new r(t[0],t[1],t[2]),new r(o[0],o[1],o[2])),e.normalized){let t=Q(H[e.componentType]);a.min.multiplyScalar(t),a.max.multiplyScalar(t)}}else{console.warn(`THREE.GLTFLoader: Missing min/max properties for accessor POSITION.`);return}}else return;let o=t.targets;if(o!==void 0){let e=new r,t=new r;for(let r=0,i=o.length;r<i;r++){let i=o[r];if(i.POSITION!==void 0){let r=n.json.accessors[i.POSITION],a=r.min,o=r.max;if(a!==void 0&&o!==void 0){if(t.setX(Math.max(Math.abs(a[0]),Math.abs(o[0]))),t.setY(Math.max(Math.abs(a[1]),Math.abs(o[1]))),t.setZ(Math.max(Math.abs(a[2]),Math.abs(o[2]))),r.normalized){let e=Q(H[r.componentType]);t.multiplyScalar(e)}e.max(t)}else console.warn(`THREE.GLTFLoader: Missing min/max properties for accessor POSITION.`)}}a.expandByVector(e)}e.boundingBox=a;let s=new _e;a.getCenter(s.center),s.radius=a.min.distanceTo(a.max)/2,e.boundingSphere=s}function $(e,t,n){let r=t.attributes,i=[];function a(t,r){return n.getDependency(`accessor`,t).then(function(t){e.setAttribute(r,t)})}for(let t in r){let n=K[t]||t.toLowerCase();n in e.attributes||i.push(a(r[t],n))}if(t.indices!==void 0&&!e.index){let r=n.getDependency(`accessor`,t.indices).then(function(t){e.setIndex(t)});i.push(r)}return w.workingColorSpace!==`srgb-linear`&&`COLOR_0`in r&&console.warn(`THREE.GLTFLoader: Converting vertex colors from "srgb-linear" to "${w.workingColorSpace}" not supported.`),X(e,t),lt(e,t,n),Promise.all(i).then(function(){return t.targets===void 0?e:rt(e,t.targets,n)})}export{Ae as GLTFLoader};
1
+ import{$ as e,A as t,B as n,Bt as r,C as i,Ct as a,Dt as o,E as s,Ft as c,G as l,H as u,Ht as d,I as f,K as p,L as m,M as h,Mt as g,N as _,O as v,Ot as ee,P as te,Pt as y,R as ne,U as re,V as ie,W as ae,X as b,Z as oe,_t as se,at as x,bt as ce,ct as le,dt as ue,et as de,f as fe,ft as pe,gt as me,ht as he,it as S,k as ge,kt as _e,l as C,lt as ve,m as w,o as ye,ot as be,p as T,pt as xe,q as E,r as Se,s as Ce,st as we,tt as D,u as Te,ut as O,vt as Ee,wt as k,x as De,yt as A,z as Oe,zt as j}from"./three.module-DGhmpURB.js";function M(e,t){if(t===0)return console.warn(`THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles.`),e;if(t===2||t===1){let n=e.getIndex();if(n===null){let t=[],r=e.getAttribute(`position`);if(r!==void 0){for(let e=0;e<r.count;e++)t.push(e);e.setIndex(t),n=e.getIndex()}else return console.error(`THREE.BufferGeometryUtils.toTrianglesDrawMode(): Undefined position attribute. Processing not possible.`),e}let r=n.count-2,i=[];if(t===2)for(let e=1;e<=r;e++)i.push(n.getX(0)),i.push(n.getX(e)),i.push(n.getX(e+1));else for(let e=0;e<r;e++)e%2==0?(i.push(n.getX(e)),i.push(n.getX(e+1)),i.push(n.getX(e+2))):(i.push(n.getX(e+2)),i.push(n.getX(e+1)),i.push(n.getX(e)));i.length/3!==r&&console.error(`THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unable to generate correct amount of triangles.`);let a=e.clone();return a.setIndex(i),a.clearGroups(),a}else return console.error(`THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unknown draw mode:`,t),e}function ke(e){let t=new Map,n=new Map,r=e.clone();return N(e,r,function(e,r){t.set(r,e),n.set(e,r)}),r.traverse(function(e){if(!e.isSkinnedMesh)return;let r=e,i=t.get(e),a=i.skeleton.bones;r.skeleton=i.skeleton.clone(),r.bindMatrix.copy(i.bindMatrix),r.skeleton.bones=a.map(function(e){return n.get(e)}),r.bind(r.skeleton,r.bindMatrix)}),r}function N(e,t,n){n(e,t);for(let r=0;r<e.children.length;r++)N(e.children[r],t.children[r],n)}var Ae=class extends p{constructor(e){super(e),this.dracoLoader=null,this.ktx2Loader=null,this.meshoptDecoder=null,this.pluginCallbacks=[],this.register(function(e){return new Fe(e)}),this.register(function(e){return new Ie(e)}),this.register(function(e){return new Ge(e)}),this.register(function(e){return new Ke(e)}),this.register(function(e){return new qe(e)}),this.register(function(e){return new Re(e)}),this.register(function(e){return new ze(e)}),this.register(function(e){return new Be(e)}),this.register(function(e){return new Ve(e)}),this.register(function(e){return new Pe(e)}),this.register(function(e){return new He(e)}),this.register(function(e){return new Le(e)}),this.register(function(e){return new We(e)}),this.register(function(e){return new Ue(e)}),this.register(function(e){return new Me(e)}),this.register(function(e){return new I(e,F.EXT_MESHOPT_COMPRESSION)}),this.register(function(e){return new I(e,F.KHR_MESHOPT_COMPRESSION)}),this.register(function(e){return new Je(e)})}load(e,t,n,r){let a=this,o;if(this.resourcePath!==``)o=this.resourcePath;else if(this.path!==``){let t=E.extractUrlBase(e);o=E.resolveURL(t,this.path)}else o=E.extractUrlBase(e);this.manager.itemStart(e);let s=function(t){r?r(t):console.error(t),a.manager.itemError(e),a.manager.itemEnd(e)},c=new i(this.manager);c.setPath(this.path),c.setResponseType(`arraybuffer`),c.setRequestHeader(this.requestHeader),c.setWithCredentials(this.withCredentials),c.load(e,function(n){try{a.parse(n,o,function(n){t(n),a.manager.itemEnd(e)},s)}catch(e){s(e)}},n,s)}setDRACOLoader(e){return this.dracoLoader=e,this}setKTX2Loader(e){return this.ktx2Loader=e,this}setMeshoptDecoder(e){return this.meshoptDecoder=e,this}register(e){return this.pluginCallbacks.indexOf(e)===-1&&this.pluginCallbacks.push(e),this}unregister(e){return this.pluginCallbacks.indexOf(e)!==-1&&this.pluginCallbacks.splice(this.pluginCallbacks.indexOf(e),1),this}parse(e,t,n,r){let i,a={},o={},s=new TextDecoder;if(typeof e==`string`)i=JSON.parse(e);else if(e instanceof ArrayBuffer)if(s.decode(new Uint8Array(e,0,4))===L){try{a[F.KHR_BINARY_GLTF]=new Ye(e)}catch(e){r&&r(e);return}i=JSON.parse(a[F.KHR_BINARY_GLTF].content)}else i=JSON.parse(s.decode(e));else i=e;if(i.asset===void 0||i.asset.version[0]<2){r&&r(Error(`THREE.GLTFLoader: Unsupported asset. glTF versions >=2.0 are supported.`));return}let c=new ct(i,{path:t||this.resourcePath||``,crossOrigin:this.crossOrigin,requestHeader:this.requestHeader,manager:this.manager,ktx2Loader:this.ktx2Loader,meshoptDecoder:this.meshoptDecoder});c.fileLoader.setRequestHeader(this.requestHeader);for(let e=0;e<this.pluginCallbacks.length;e++){let t=this.pluginCallbacks[e](c);t.name||console.error(`THREE.GLTFLoader: Invalid plugin found: missing name`),o[t.name]=t,a[t.name]=!0}if(i.extensionsUsed)for(let e=0;e<i.extensionsUsed.length;++e){let t=i.extensionsUsed[e],n=i.extensionsRequired||[];switch(t){case F.KHR_MATERIALS_UNLIT:a[t]=new Ne;break;case F.KHR_DRACO_MESH_COMPRESSION:a[t]=new Xe(i,this.dracoLoader);break;case F.KHR_TEXTURE_TRANSFORM:a[t]=new Ze;break;case F.KHR_MESH_QUANTIZATION:a[t]=new Qe;break;default:n.indexOf(t)>=0&&o[t]===void 0&&console.warn(`THREE.GLTFLoader: Unknown extension "`+t+`".`)}}c.setExtensions(a),c.setPlugins(o),c.parse(n,r)}parseAsync(e,t){let n=this;return new Promise(function(r,i){n.parse(e,t,r,i)})}};function je(){let e={};return{get:function(t){return e[t]},add:function(t,n){e[t]=n},remove:function(t){delete e[t]},removeAll:function(){e={}}}}function P(e,t,n){let r=e.json.materials[t];return r.extensions&&r.extensions[n]?r.extensions[n]:null}var F={KHR_BINARY_GLTF:`KHR_binary_glTF`,KHR_DRACO_MESH_COMPRESSION:`KHR_draco_mesh_compression`,KHR_LIGHTS_PUNCTUAL:`KHR_lights_punctual`,KHR_MATERIALS_CLEARCOAT:`KHR_materials_clearcoat`,KHR_MATERIALS_DISPERSION:`KHR_materials_dispersion`,KHR_MATERIALS_IOR:`KHR_materials_ior`,KHR_MATERIALS_SHEEN:`KHR_materials_sheen`,KHR_MATERIALS_SPECULAR:`KHR_materials_specular`,KHR_MATERIALS_TRANSMISSION:`KHR_materials_transmission`,KHR_MATERIALS_IRIDESCENCE:`KHR_materials_iridescence`,KHR_MATERIALS_ANISOTROPY:`KHR_materials_anisotropy`,KHR_MATERIALS_UNLIT:`KHR_materials_unlit`,KHR_MATERIALS_VOLUME:`KHR_materials_volume`,KHR_TEXTURE_BASISU:`KHR_texture_basisu`,KHR_TEXTURE_TRANSFORM:`KHR_texture_transform`,KHR_MESH_QUANTIZATION:`KHR_mesh_quantization`,KHR_MATERIALS_EMISSIVE_STRENGTH:`KHR_materials_emissive_strength`,EXT_MATERIALS_BUMP:`EXT_materials_bump`,EXT_TEXTURE_WEBP:`EXT_texture_webp`,EXT_TEXTURE_AVIF:`EXT_texture_avif`,EXT_MESHOPT_COMPRESSION:`EXT_meshopt_compression`,KHR_MESHOPT_COMPRESSION:`KHR_meshopt_compression`,EXT_MESH_GPU_INSTANCING:`EXT_mesh_gpu_instancing`},Me=class{constructor(e){this.parser=e,this.name=F.KHR_LIGHTS_PUNCTUAL,this.cache={refs:{},uses:{}}}_markDefs(){let e=this.parser,t=this.parser.json.nodes||[];for(let n=0,r=t.length;n<r;n++){let r=t[n];r.extensions&&r.extensions[this.name]&&r.extensions[this.name].light!==void 0&&e._addNodeRef(this.cache,r.extensions[this.name].light)}}_loadLight(e){let t=this.parser,n=`light:`+e,r=t.cache.get(n);if(r)return r;let i=t.json,a=((i.extensions&&i.extensions[this.name]||{}).lights||[])[e],o,s=new T(16777215);a.color!==void 0&&s.setRGB(a.color[0],a.color[1],a.color[2],l);let c=a.range===void 0?0:a.range;switch(a.type){case`directional`:o=new De(s),o.target.position.set(0,0,-1),o.add(o.target);break;case`point`:o=new he(s),o.distance=c;break;case`spot`:o=new g(s),o.distance=c,a.spot=a.spot||{},a.spot.innerConeAngle=a.spot.innerConeAngle===void 0?0:a.spot.innerConeAngle,a.spot.outerConeAngle=a.spot.outerConeAngle===void 0?Math.PI/4:a.spot.outerConeAngle,o.angle=a.spot.outerConeAngle,o.penumbra=1-a.spot.innerConeAngle/a.spot.outerConeAngle,o.target.position.set(0,0,-1),o.add(o.target);break;default:throw Error(`THREE.GLTFLoader: Unexpected light type: `+a.type)}return o.position.set(0,0,0),X(o,a),a.intensity!==void 0&&(o.intensity=a.intensity),o.name=t.createUniqueName(a.name||`light_`+e),r=Promise.resolve(o),t.cache.add(n,r),r}getDependency(e,t){if(e===`light`)return this._loadLight(t)}createNodeAttachment(e){let t=this,n=this.parser,r=n.json.nodes[e],i=(r.extensions&&r.extensions[this.name]||{}).light;return i===void 0?null:this._loadLight(i).then(function(e){return n._getNodeRef(t.cache,i,e)})}},Ne=class{constructor(){this.name=F.KHR_MATERIALS_UNLIT}getMaterialType(){return D}extendParams(e,t,n){let r=[];e.color=new T(1,1,1),e.opacity=1;let i=t.pbrMetallicRoughness;if(i){if(Array.isArray(i.baseColorFactor)){let t=i.baseColorFactor;e.color.setRGB(t[0],t[1],t[2],l),e.opacity=t[3]}i.baseColorTexture!==void 0&&r.push(n.assignTexture(e,`map`,i.baseColorTexture,k))}return Promise.all(r)}},Pe=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_EMISSIVE_STRENGTH}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);return n===null||n.emissiveStrength!==void 0&&(t.emissiveIntensity=n.emissiveStrength),Promise.resolve()}},Fe=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_CLEARCOAT}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);if(n===null)return Promise.resolve();let r=[];if(n.clearcoatFactor!==void 0&&(t.clearcoat=n.clearcoatFactor),n.clearcoatTexture!==void 0&&r.push(this.parser.assignTexture(t,`clearcoatMap`,n.clearcoatTexture)),n.clearcoatRoughnessFactor!==void 0&&(t.clearcoatRoughness=n.clearcoatRoughnessFactor),n.clearcoatRoughnessTexture!==void 0&&r.push(this.parser.assignTexture(t,`clearcoatRoughnessMap`,n.clearcoatRoughnessTexture)),n.clearcoatNormalTexture!==void 0&&(r.push(this.parser.assignTexture(t,`clearcoatNormalMap`,n.clearcoatNormalTexture)),n.clearcoatNormalTexture.scale!==void 0)){let e=n.clearcoatNormalTexture.scale;t.clearcoatNormalScale=new j(e,e)}return Promise.all(r)}},Ie=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_DISPERSION}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);return n===null||(t.dispersion=n.dispersion===void 0?0:n.dispersion),Promise.resolve()}},Le=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_IRIDESCENCE}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);if(n===null)return Promise.resolve();let r=[];return n.iridescenceFactor!==void 0&&(t.iridescence=n.iridescenceFactor),n.iridescenceTexture!==void 0&&r.push(this.parser.assignTexture(t,`iridescenceMap`,n.iridescenceTexture)),n.iridescenceIor!==void 0&&(t.iridescenceIOR=n.iridescenceIor),t.iridescenceThicknessRange===void 0&&(t.iridescenceThicknessRange=[100,400]),n.iridescenceThicknessMinimum!==void 0&&(t.iridescenceThicknessRange[0]=n.iridescenceThicknessMinimum),n.iridescenceThicknessMaximum!==void 0&&(t.iridescenceThicknessRange[1]=n.iridescenceThicknessMaximum),n.iridescenceThicknessTexture!==void 0&&r.push(this.parser.assignTexture(t,`iridescenceThicknessMap`,n.iridescenceThicknessTexture)),Promise.all(r)}},Re=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_SHEEN}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);if(n===null)return Promise.resolve();let r=[];if(t.sheenColor=new T(0,0,0),t.sheenRoughness=0,t.sheen=1,n.sheenColorFactor!==void 0){let e=n.sheenColorFactor;t.sheenColor.setRGB(e[0],e[1],e[2],l)}return n.sheenRoughnessFactor!==void 0&&(t.sheenRoughness=n.sheenRoughnessFactor),n.sheenColorTexture!==void 0&&r.push(this.parser.assignTexture(t,`sheenColorMap`,n.sheenColorTexture,k)),n.sheenRoughnessTexture!==void 0&&r.push(this.parser.assignTexture(t,`sheenRoughnessMap`,n.sheenRoughnessTexture)),Promise.all(r)}},ze=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_TRANSMISSION}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);if(n===null)return Promise.resolve();let r=[];return n.transmissionFactor!==void 0&&(t.transmission=n.transmissionFactor),n.transmissionTexture!==void 0&&r.push(this.parser.assignTexture(t,`transmissionMap`,n.transmissionTexture)),Promise.all(r)}},Be=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_VOLUME}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);if(n===null)return Promise.resolve();let r=[];t.thickness=n.thicknessFactor===void 0?0:n.thicknessFactor,n.thicknessTexture!==void 0&&r.push(this.parser.assignTexture(t,`thicknessMap`,n.thicknessTexture)),t.attenuationDistance=n.attenuationDistance||1/0;let i=n.attenuationColor||[1,1,1];return t.attenuationColor=new T().setRGB(i[0],i[1],i[2],l),Promise.all(r)}},Ve=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_IOR}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);return n===null?Promise.resolve():(t.ior=n.ior===void 0?1.5:n.ior,t.ior===0&&(t.ior=1e3),Promise.resolve())}},He=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_SPECULAR}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);if(n===null)return Promise.resolve();let r=[];t.specularIntensity=n.specularFactor===void 0?1:n.specularFactor,n.specularTexture!==void 0&&r.push(this.parser.assignTexture(t,`specularIntensityMap`,n.specularTexture));let i=n.specularColorFactor||[1,1,1];return t.specularColor=new T().setRGB(i[0],i[1],i[2],l),n.specularColorTexture!==void 0&&r.push(this.parser.assignTexture(t,`specularColorMap`,n.specularColorTexture,k)),Promise.all(r)}},Ue=class{constructor(e){this.parser=e,this.name=F.EXT_MATERIALS_BUMP}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);if(n===null)return Promise.resolve();let r=[];return t.bumpScale=n.bumpFactor===void 0?1:n.bumpFactor,n.bumpTexture!==void 0&&r.push(this.parser.assignTexture(t,`bumpMap`,n.bumpTexture)),Promise.all(r)}},We=class{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_ANISOTROPY}getMaterialType(e){return P(this.parser,e,this.name)===null?null:S}extendMaterialParams(e,t){let n=P(this.parser,e,this.name);if(n===null)return Promise.resolve();let r=[];return n.anisotropyStrength!==void 0&&(t.anisotropy=n.anisotropyStrength),n.anisotropyRotation!==void 0&&(t.anisotropyRotation=n.anisotropyRotation),n.anisotropyTexture!==void 0&&r.push(this.parser.assignTexture(t,`anisotropyMap`,n.anisotropyTexture)),Promise.all(r)}},Ge=class{constructor(e){this.parser=e,this.name=F.KHR_TEXTURE_BASISU}loadTexture(e){let t=this.parser,n=t.json,r=n.textures[e];if(!r.extensions||!r.extensions[this.name])return null;let i=r.extensions[this.name],a=t.options.ktx2Loader;if(!a){if(n.extensionsRequired&&n.extensionsRequired.indexOf(this.name)>=0)throw Error(`THREE.GLTFLoader: setKTX2Loader must be called before loading KTX2 textures`);return null}return t.loadTextureImage(e,i.source,a)}},Ke=class{constructor(e){this.parser=e,this.name=F.EXT_TEXTURE_WEBP}loadTexture(e){let t=this.name,n=this.parser,r=n.json,i=r.textures[e];if(!i.extensions||!i.extensions[t])return null;let a=i.extensions[t],o=r.images[a.source],s=n.textureLoader;if(o.uri){let e=n.options.manager.getHandler(o.uri);e!==null&&(s=e)}return n.loadTextureImage(e,a.source,s)}},qe=class{constructor(e){this.parser=e,this.name=F.EXT_TEXTURE_AVIF}loadTexture(e){let t=this.name,n=this.parser,r=n.json,i=r.textures[e];if(!i.extensions||!i.extensions[t])return null;let a=i.extensions[t],o=r.images[a.source],s=n.textureLoader;if(o.uri){let e=n.options.manager.getHandler(o.uri);e!==null&&(s=e)}return n.loadTextureImage(e,a.source,s)}},I=class{constructor(e,t){this.name=t,this.parser=e}loadBufferView(e){let t=this.parser.json,n=t.bufferViews[e];if(n.extensions&&n.extensions[this.name]){let e=n.extensions[this.name],r=this.parser.getDependency(`buffer`,e.buffer),i=this.parser.options.meshoptDecoder;if(!i||!i.supported){if(t.extensionsRequired&&t.extensionsRequired.indexOf(this.name)>=0)throw Error(`THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files`);return null}return r.then(function(t){let n=e.byteOffset||0,r=e.byteLength||0,a=e.count,o=e.byteStride,s=new Uint8Array(t,n,r);return i.decodeGltfBufferAsync?i.decodeGltfBufferAsync(a,o,s,e.mode,e.filter).then(function(e){return e.buffer}):i.ready.then(function(){let t=new ArrayBuffer(a*o);return i.decodeGltfBuffer(new Uint8Array(t),a,o,s,e.mode,e.filter),t})})}else return null}},Je=class{constructor(e){this.name=F.EXT_MESH_GPU_INSTANCING,this.parser=e}createNodeMesh(n){let i=this.parser.json,a=i.nodes[n];if(!a.extensions||!a.extensions[this.name]||a.mesh===void 0)return null;let o=i.meshes[a.mesh];for(let e of o.primitives)if(e.mode!==V.TRIANGLES&&e.mode!==V.TRIANGLE_STRIP&&e.mode!==V.TRIANGLE_FAN&&e.mode!==void 0)return null;let s=a.extensions[this.name].attributes,c=[],l={};for(let e in s)c.push(this.parser.getDependency(`accessor`,s[e]).then(t=>(l[e]=t,l[e])));return c.length<1?null:(c.push(this.parser.createNodeMesh(n)),Promise.all(c).then(n=>{let i=n.pop(),a=i.isGroup?i.children:[i],o=n[0].count,s=[];for(let n of a){let i=new e,a=new r,c=new A,u=new r(1,1,1),d=new t(n.geometry,n.material,o);for(let e=0;e<o;e++)l.TRANSLATION&&a.fromBufferAttribute(l.TRANSLATION,e),l.ROTATION&&c.fromBufferAttribute(l.ROTATION,e),l.SCALE&&u.fromBufferAttribute(l.SCALE,e),d.setMatrixAt(e,i.compose(a,c,u));for(let e in l)if(e===`_COLOR_0`){let t=l[e];d.instanceColor=new ge(t.array,t.itemSize,t.normalized)}else e!==`TRANSLATION`&&e!==`ROTATION`&&e!==`SCALE`&&n.geometry.setAttribute(e,l[e]);ue.prototype.copy.call(d,n),this.parser.assignFinalMaterial(d),s.push(d)}return i.isGroup?(i.clear(),i.add(...s),i):s[0]}))}},L=`glTF`,R=12,z={JSON:1313821514,BIN:5130562},Ye=class{constructor(e){this.name=F.KHR_BINARY_GLTF,this.content=null,this.body=null;let t=new DataView(e,0,R),n=new TextDecoder;if(this.header={magic:n.decode(new Uint8Array(e.slice(0,4))),version:t.getUint32(4,!0),length:t.getUint32(8,!0)},this.header.magic!==L)throw Error(`THREE.GLTFLoader: Unsupported glTF-Binary header.`);if(this.header.version<2)throw Error(`THREE.GLTFLoader: Legacy binary file detected.`);let r=this.header.length-R,i=new DataView(e,R),a=0;for(;a<r;){let t=i.getUint32(a,!0);a+=4;let r=i.getUint32(a,!0);if(a+=4,r===z.JSON){let r=new Uint8Array(e,R+a,t);this.content=n.decode(r)}else if(r===z.BIN){let n=R+a;this.body=e.slice(n,n+t)}a+=t}if(this.content===null)throw Error(`THREE.GLTFLoader: JSON content not found.`)}},Xe=class{constructor(e,t){if(!t)throw Error(`THREE.GLTFLoader: No DRACOLoader instance provided.`);this.name=F.KHR_DRACO_MESH_COMPRESSION,this.json=e,this.dracoLoader=t,this.dracoLoader.preload()}decodePrimitive(e,t){let n=this.json,r=this.dracoLoader,i=e.extensions[this.name].bufferView,a=e.extensions[this.name].attributes,o={},s={},c={};for(let e in a){let t=K[e]||e.toLowerCase();o[t]=a[e]}for(let t in e.attributes){let r=K[t]||t.toLowerCase();if(a[t]!==void 0){let i=n.accessors[e.attributes[t]];c[r]=H[i.componentType].name,s[r]=i.normalized===!0}}return t.getDependency(`bufferView`,i).then(function(e){return new Promise(function(t,n){r.decodeDracoFile(e,function(e){for(let t in e.attributes){let n=e.attributes[t],r=s[t];r!==void 0&&(n.normalized=r)}t(e)},o,c,l,n)})})}},Ze=class{constructor(){this.name=F.KHR_TEXTURE_TRANSFORM}extendTexture(e,t){return(t.texCoord===void 0||t.texCoord===e.channel)&&t.offset===void 0&&t.rotation===void 0&&t.scale===void 0?e:(e=e.clone(),t.texCoord!==void 0&&(e.channel=t.texCoord),t.offset!==void 0&&e.offset.fromArray(t.offset),t.rotation!==void 0&&(e.rotation=t.rotation),t.scale!==void 0&&e.repeat.fromArray(t.scale),e.needsUpdate=!0,e)}},Qe=class{constructor(){this.name=F.KHR_MESH_QUANTIZATION}},B=class extends te{constructor(e,t,n,r){super(e,t,n,r)}copySampleValue_(e){let t=this.resultBuffer,n=this.sampleValues,r=this.valueSize,i=e*r*3+r;for(let e=0;e!==r;e++)t[e]=n[i+e];return t}interpolate_(e,t,n,r){let i=this.resultBuffer,a=this.sampleValues,o=this.valueSize,s=o*2,c=o*3,l=r-t,u=(n-t)/l,d=u*u,f=d*u,p=e*c,m=p-c,h=-2*f+3*d,g=f-d,_=1-h,v=g-d+u;for(let e=0;e!==o;e++){let t=a[m+e+o],n=a[m+e+s]*l,r=a[p+e+o],c=a[p+e]*l;i[e]=_*t+v*n+h*r+g*c}return i}},$e=new A,et=class extends B{interpolate_(e,t,n,r){let i=super.interpolate_(e,t,n,r);return $e.fromArray(i).normalize().toArray(i),i}},V={FLOAT:5126,FLOAT_MAT3:35675,FLOAT_MAT4:35676,FLOAT_VEC2:35664,FLOAT_VEC3:35665,FLOAT_VEC4:35666,LINEAR:9729,REPEAT:10497,SAMPLER_2D:35678,POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6,UNSIGNED_BYTE:5121,UNSIGNED_SHORT:5123},H={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array},U={9728:we,9729:u,9984:ve,9985:ae,9986:le,9987:re},W={33071:fe,33648:be,10497:a},G={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},K={POSITION:`position`,NORMAL:`normal`,TANGENT:`tangent`,TEXCOORD_0:`uv`,TEXCOORD_1:`uv1`,TEXCOORD_2:`uv2`,TEXCOORD_3:`uv3`,COLOR_0:`color`,WEIGHTS_0:`skinWeight`,JOINTS_0:`skinIndex`},q={scale:`scale`,translation:`position`,rotation:`quaternion`,weights:`morphTargetInfluences`},tt={CUBICSPLINE:void 0,LINEAR:m,STEP:f},J={OPAQUE:`OPAQUE`,MASK:`MASK`,BLEND:`BLEND`};function nt(e){return e.DefaultMaterial===void 0&&(e.DefaultMaterial=new x({color:16777215,emissive:0,metalness:1,roughness:1,transparent:!1,depthTest:!0,side:0})),e.DefaultMaterial}function Y(e,t,n){for(let r in n.extensions)e[r]===void 0&&(t.userData.gltfExtensions=t.userData.gltfExtensions||{},t.userData.gltfExtensions[r]=n.extensions[r])}function X(e,t){t.extras!==void 0&&(typeof t.extras==`object`?Object.assign(e.userData,t.extras):console.warn(`THREE.GLTFLoader: Ignoring primitive type .extras, `+t.extras))}function rt(e,t,n){let r=!1,i=!1,a=!1;for(let e=0,n=t.length;e<n;e++){let n=t[e];if(n.POSITION!==void 0&&(r=!0),n.NORMAL!==void 0&&(i=!0),n.COLOR_0!==void 0&&(a=!0),r&&i&&a)break}if(!r&&!i&&!a)return Promise.resolve(e);let o=[],s=[],c=[];for(let l=0,u=t.length;l<u;l++){let u=t[l];if(r){let t=u.POSITION===void 0?e.attributes.position:n.getDependency(`accessor`,u.POSITION);o.push(t)}if(i){let t=u.NORMAL===void 0?e.attributes.normal:n.getDependency(`accessor`,u.NORMAL);s.push(t)}if(a){let t=u.COLOR_0===void 0?e.attributes.color:n.getDependency(`accessor`,u.COLOR_0);c.push(t)}}return Promise.all([Promise.all(o),Promise.all(s),Promise.all(c)]).then(function(t){let n=t[0],o=t[1],s=t[2];return r&&(e.morphAttributes.position=n),i&&(e.morphAttributes.normal=o),a&&(e.morphAttributes.color=s),e.morphTargetsRelative=!0,e})}function it(e,t){if(e.updateMorphTargets(),t.weights!==void 0)for(let n=0,r=t.weights.length;n<r;n++)e.morphTargetInfluences[n]=t.weights[n];if(t.extras&&Array.isArray(t.extras.targetNames)){let n=t.extras.targetNames;if(e.morphTargetInfluences.length===n.length){e.morphTargetDictionary={};for(let t=0,r=n.length;t<r;t++)e.morphTargetDictionary[n[t]]=t}else console.warn(`THREE.GLTFLoader: Invalid extras.targetNames length. Ignoring names.`)}}function at(e){let t,n=e.extensions&&e.extensions[F.KHR_DRACO_MESH_COMPRESSION];if(t=n?`draco:`+n.bufferView+`:`+n.indices+`:`+Z(n.attributes):e.indices+`:`+Z(e.attributes)+`:`+e.mode,e.targets!==void 0)for(let n=0,r=e.targets.length;n<r;n++)t+=`:`+Z(e.targets[n]);return t}function Z(e){let t=``,n=Object.keys(e).sort();for(let r=0,i=n.length;r<i;r++)t+=n[r]+`:`+e[n[r]]+`;`;return t}function Q(e){switch(e){case Int8Array:return 1/127;case Uint8Array:return 1/255;case Int16Array:return 1/32767;case Uint16Array:return 1/65535;default:throw Error(`THREE.GLTFLoader: Unsupported normalized accessor component type.`)}}function ot(e){return e.search(/\.jpe?g($|\?)/i)>0||e.search(/^data\:image\/jpeg/)===0?`image/jpeg`:e.search(/\.webp($|\?)/i)>0||e.search(/^data\:image\/webp/)===0?`image/webp`:e.search(/\.ktx2($|\?)/i)>0||e.search(/^data\:image\/ktx2/)===0?`image/ktx2`:`image/png`}var st=new e,ct=class{constructor(e={},t={}){this.json=e,this.extensions={},this.plugins={},this.options=t,this.cache=new je,this.associations=new Map,this.primitiveCache={},this.nodeCache={},this.meshCache={refs:{},uses:{}},this.cameraCache={refs:{},uses:{}},this.lightCache={refs:{},uses:{}},this.sourceCache={},this.textureCache={},this.nodeNamesUsed={};let n=!1,r=-1,a=!1,o=-1;if(typeof navigator<`u`&&navigator.userAgent!==void 0){let e=navigator.userAgent;n=/^((?!chrome|android).)*safari/i.test(e)===!0;let t=e.match(/Version\/(\d+)/);r=n&&t?parseInt(t[1],10):-1,a=e.indexOf(`Firefox`)>-1,o=a?e.match(/Firefox\/([0-9]+)\./)[1]:-1}typeof createImageBitmap>`u`||n&&r<17||a&&o<98?this.textureLoader=new c(this.options.manager):this.textureLoader=new v(this.options.manager),this.textureLoader.setCrossOrigin(this.options.crossOrigin),this.textureLoader.setRequestHeader(this.options.requestHeader),this.fileLoader=new i(this.options.manager),this.fileLoader.setResponseType(`arraybuffer`),this.options.crossOrigin===`use-credentials`&&this.fileLoader.setWithCredentials(!0)}setExtensions(e){this.extensions=e}setPlugins(e){this.plugins=e}parse(e,t){let n=this,r=this.json,i=this.extensions;this.cache.removeAll(),this.nodeCache={},this._invokeAll(function(e){return e._markDefs&&e._markDefs()}),Promise.all(this._invokeAll(function(e){return e.beforeRoot&&e.beforeRoot()})).then(function(){return Promise.all([n.getDependencies(`scene`),n.getDependencies(`animation`),n.getDependencies(`camera`)])}).then(function(t){let a={scene:t[0][r.scene||0],scenes:t[0],animations:t[1],cameras:t[2],asset:r.asset,parser:n,userData:{}};return Y(i,a,r),X(a,r),Promise.all(n._invokeAll(function(e){return e.afterRoot&&e.afterRoot(a)})).then(function(){for(let e of a.scenes)e.updateMatrixWorld();e(a)})}).catch(t)}_markDefs(){let e=this.json.nodes||[],t=this.json.skins||[],n=this.json.meshes||[];for(let n=0,r=t.length;n<r;n++){let r=t[n].joints;for(let t=0,n=r.length;t<n;t++)e[r[t]].isBone=!0}for(let t=0,r=e.length;t<r;t++){let r=e[t];r.mesh!==void 0&&(this._addNodeRef(this.meshCache,r.mesh),r.skin!==void 0&&(n[r.mesh].isSkinnedMesh=!0)),r.camera!==void 0&&this._addNodeRef(this.cameraCache,r.camera)}}_addNodeRef(e,t){t!==void 0&&(e.refs[t]===void 0&&(e.refs[t]=e.uses[t]=0),e.refs[t]++)}_getNodeRef(e,t,n){if(e.refs[t]<=1)return n;let r=n.clone(),i=(e,t)=>{let n=this.associations.get(e);n!=null&&this.associations.set(t,n);for(let[n,r]of e.children.entries())i(r,t.children[n])};return i(n,r),r.name+=`_instance_`+ e.uses[t]++,r}_invokeOne(e){let t=Object.values(this.plugins);t.push(this);for(let n=0;n<t.length;n++){let r=e(t[n]);if(r)return r}return null}_invokeAll(e){let t=Object.values(this.plugins);t.unshift(this);let n=[];for(let r=0;r<t.length;r++){let i=e(t[r]);i&&n.push(i)}return n}getDependency(e,t){let n=e+`:`+t,r=this.cache.get(n);if(!r){switch(e){case`scene`:r=this.loadScene(t);break;case`node`:r=this._invokeOne(function(e){return e.loadNode&&e.loadNode(t)});break;case`mesh`:r=this._invokeOne(function(e){return e.loadMesh&&e.loadMesh(t)});break;case`accessor`:r=this.loadAccessor(t);break;case`bufferView`:r=this._invokeOne(function(e){return e.loadBufferView&&e.loadBufferView(t)});break;case`buffer`:r=this.loadBuffer(t);break;case`material`:r=this._invokeOne(function(e){return e.loadMaterial&&e.loadMaterial(t)});break;case`texture`:r=this._invokeOne(function(e){return e.loadTexture&&e.loadTexture(t)});break;case`skin`:r=this.loadSkin(t);break;case`animation`:r=this._invokeOne(function(e){return e.loadAnimation&&e.loadAnimation(t)});break;case`camera`:r=this.loadCamera(t);break;default:if(r=this._invokeOne(function(n){return n!=this&&n.getDependency&&n.getDependency(e,t)}),!r)throw Error(`Unknown type: `+e);break}this.cache.add(n,r)}return r}getDependencies(e){let t=this.cache.get(e);if(!t){let n=this,r=this.json[e+(e===`mesh`?`es`:`s`)]||[];t=Promise.all(r.map(function(t,r){return n.getDependency(e,r)})),this.cache.add(e,t)}return t}loadBuffer(e){let t=this.json.buffers[e],n=this.fileLoader;if(t.type&&t.type!==`arraybuffer`)throw Error(`THREE.GLTFLoader: `+t.type+` buffer type is not supported.`);if(t.uri===void 0&&e===0)return Promise.resolve(this.extensions[F.KHR_BINARY_GLTF].body);let r=this.options;return new Promise(function(e,i){n.load(E.resolveURL(t.uri,r.path),e,void 0,function(){i(Error(`THREE.GLTFLoader: Failed to load buffer "`+t.uri+`".`))})})}loadBufferView(e){let t=this.json.bufferViews[e];return this.getDependency(`buffer`,t.buffer).then(function(e){let n=t.byteLength||0,r=t.byteOffset||0;return e.slice(r,r+n)})}loadAccessor(e){let t=this,n=this.json,r=this.json.accessors[e];if(r.bufferView===void 0&&r.sparse===void 0){let e=G[r.type],t=H[r.componentType],n=r.normalized===!0,i=new t(r.count*e);return Promise.resolve(new C(i,e,n))}let i=[];return r.bufferView===void 0?i.push(null):i.push(this.getDependency(`bufferView`,r.bufferView)),r.sparse!==void 0&&(i.push(this.getDependency(`bufferView`,r.sparse.indices.bufferView)),i.push(this.getDependency(`bufferView`,r.sparse.values.bufferView))),Promise.all(i).then(function(e){let i=e[0],a=G[r.type],o=H[r.componentType],s=o.BYTES_PER_ELEMENT,c=s*a,l=r.byteOffset||0,u=r.bufferView===void 0?void 0:n.bufferViews[r.bufferView].byteStride,d=r.normalized===!0,f,p;if(u&&u!==c){let e=Math.floor(l/u),n=`InterleavedBuffer:`+r.bufferView+`:`+r.componentType+`:`+e+`:`+r.count,c=t.cache.get(n);c||(f=new o(i,e*u,r.count*u/s),c=new h(f,u/s),t.cache.add(n,c)),p=new _(c,a,l%u/s,d)}else f=i===null?new o(r.count*a):new o(i,l,r.count*a),p=new C(f,a,d);if(r.sparse!==void 0){let t=G.SCALAR,n=H[r.sparse.indices.componentType],s=r.sparse.indices.byteOffset||0,c=r.sparse.values.byteOffset||0,l=new n(e[1],s,r.sparse.count*t),u=new o(e[2],c,r.sparse.count*a);i!==null&&(p=new C(p.array.slice(),p.itemSize,p.normalized)),p.normalized=!1;for(let e=0,t=l.length;e<t;e++){let t=l[e];if(p.setX(t,u[e*a]),a>=2&&p.setY(t,u[e*a+1]),a>=3&&p.setZ(t,u[e*a+2]),a>=4&&p.setW(t,u[e*a+3]),a>=5)throw Error(`THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.`)}p.normalized=d}return p})}loadTexture(e){let t=this.json,n=this.options,r=t.textures[e].source,i=t.images[r],a=this.textureLoader;if(i.uri){let e=n.manager.getHandler(i.uri);e!==null&&(a=e)}return this.loadTextureImage(e,r,a)}loadTextureImage(e,t,n){let r=this,i=this.json,a=i.textures[e],o=i.images[t],s=(o.uri||o.bufferView)+`:`+a.sampler;if(this.textureCache[s])return this.textureCache[s];let c=this.loadImageSource(t,n).then(function(t){t.flipY=!1,t.name=a.name||o.name||``,t.name===``&&typeof o.uri==`string`&&o.uri.startsWith(`data:image/`)===!1&&(t.name=o.uri);let n=(i.samplers||{})[a.sampler]||{};return t.magFilter=U[n.magFilter]||1006,t.minFilter=U[n.minFilter]||1008,t.wrapS=W[n.wrapS]||1e3,t.wrapT=W[n.wrapT]||1e3,t.generateMipmaps=!t.isCompressedTexture&&t.minFilter!==1003&&t.minFilter!==1006,r.associations.set(t,{textures:e}),t}).catch(function(){return null});return this.textureCache[s]=c,c}loadImageSource(e,t){let n=this,r=this.json,i=this.options;if(this.sourceCache[e]!==void 0)return this.sourceCache[e].then(e=>e.clone());let a=r.images[e],o=self.URL||self.webkitURL,s=a.uri||``,c=!1;if(a.bufferView!==void 0)s=n.getDependency(`bufferView`,a.bufferView).then(function(e){c=!0;let t=new Blob([e],{type:a.mimeType});return s=o.createObjectURL(t),s});else if(a.uri===void 0)throw Error(`THREE.GLTFLoader: Image `+e+` is missing URI and bufferView`);let l=Promise.resolve(s).then(function(e){return new Promise(function(n,r){let a=n;t.isImageBitmapLoader===!0&&(a=function(e){let t=new y(e);t.needsUpdate=!0,n(t)}),t.load(E.resolveURL(e,i.path),a,void 0,r)})}).then(function(e){return c===!0&&o.revokeObjectURL(s),X(e,a),e.userData.mimeType=a.mimeType||ot(a.uri),e}).catch(function(e){throw console.error(`THREE.GLTFLoader: Couldn't load texture`,s),e});return this.sourceCache[e]=l,l}assignTexture(e,t,n,r){let i=this;return this.getDependency(`texture`,n.index).then(function(a){if(!a)return null;if(n.texCoord!==void 0&&n.texCoord>0&&(a=a.clone(),a.channel=n.texCoord),i.extensions[F.KHR_TEXTURE_TRANSFORM]){let e=n.extensions===void 0?void 0:n.extensions[F.KHR_TEXTURE_TRANSFORM];if(e){let t=i.associations.get(a);a=i.extensions[F.KHR_TEXTURE_TRANSFORM].extendTexture(a,e),i.associations.set(a,t)}}return r!==void 0&&(a.colorSpace=r),e[t]=a,a})}assignFinalMaterial(e){let t=e.geometry,n=e.material,r=t.attributes.tangent===void 0,i=t.attributes.color!==void 0,a=t.attributes.normal===void 0;if(e.isPoints){let e=`PointsMaterial:`+n.uuid,t=this.cache.get(e);t||(t=new se,b.prototype.copy.call(t,n),t.color.copy(n.color),t.map=n.map,t.sizeAttenuation=!1,this.cache.add(e,t)),n=t}else if(e.isLine){let e=`LineBasicMaterial:`+n.uuid,t=this.cache.get(e);t||(t=new Oe,b.prototype.copy.call(t,n),t.color.copy(n.color),t.map=n.map,this.cache.add(e,t)),n=t}if(r||i||a){let e=`ClonedMaterial:`+n.uuid+`:`;r&&(e+=`derivative-tangents:`),i&&(e+=`vertex-colors:`),a&&(e+=`flat-shading:`);let t=this.cache.get(e);t||(t=n.clone(),i&&(t.vertexColors=!0),a&&(t.flatShading=!0),r&&(t.normalScale&&(t.normalScale.y*=-1),t.clearcoatNormalScale&&(t.clearcoatNormalScale.y*=-1)),this.cache.add(e,t),this.associations.set(t,this.associations.get(n))),n=t}e.material=n}getMaterialType(){return x}loadMaterial(e){let t=this,n=this.json,r=this.extensions,i=n.materials[e],a,o={},s=i.extensions||{},c=[];if(s[F.KHR_MATERIALS_UNLIT]){let e=r[F.KHR_MATERIALS_UNLIT];a=e.getMaterialType(),c.push(e.extendParams(o,i,t))}else{let n=i.pbrMetallicRoughness||{};if(o.color=new T(1,1,1),o.opacity=1,Array.isArray(n.baseColorFactor)){let e=n.baseColorFactor;o.color.setRGB(e[0],e[1],e[2],l),o.opacity=e[3]}n.baseColorTexture!==void 0&&c.push(t.assignTexture(o,`map`,n.baseColorTexture,k)),o.metalness=n.metallicFactor===void 0?1:n.metallicFactor,o.roughness=n.roughnessFactor===void 0?1:n.roughnessFactor,n.metallicRoughnessTexture!==void 0&&(c.push(t.assignTexture(o,`metalnessMap`,n.metallicRoughnessTexture)),c.push(t.assignTexture(o,`roughnessMap`,n.metallicRoughnessTexture))),a=this._invokeOne(function(t){return t.getMaterialType&&t.getMaterialType(e)}),c.push(Promise.all(this._invokeAll(function(t){return t.extendMaterialParams&&t.extendMaterialParams(e,o)})))}i.doubleSided===!0&&(o.side=2);let u=i.alphaMode||J.OPAQUE;if(u===J.BLEND?(o.transparent=!0,o.depthWrite=!1):(o.transparent=!1,u===J.MASK&&(o.alphaTest=i.alphaCutoff===void 0?.5:i.alphaCutoff)),i.normalTexture!==void 0&&a!==D&&(c.push(t.assignTexture(o,`normalMap`,i.normalTexture)),o.normalScale=new j(1,1),i.normalTexture.scale!==void 0)){let e=i.normalTexture.scale;o.normalScale.set(e,e)}if(i.occlusionTexture!==void 0&&a!==D&&(c.push(t.assignTexture(o,`aoMap`,i.occlusionTexture)),i.occlusionTexture.strength!==void 0&&(o.aoMapIntensity=i.occlusionTexture.strength)),i.emissiveFactor!==void 0&&a!==D){let e=i.emissiveFactor;o.emissive=new T().setRGB(e[0],e[1],e[2],l)}return i.emissiveTexture!==void 0&&a!==D&&c.push(t.assignTexture(o,`emissiveMap`,i.emissiveTexture,k)),Promise.all(c).then(function(){let n=new a(o);return i.name&&(n.name=i.name),X(n,i),t.associations.set(n,{materials:e}),i.extensions&&Y(r,n,i),n})}createUniqueName(e){let t=Ee.sanitizeNodeName(e||``);return t in this.nodeNamesUsed?t+`_`+ ++this.nodeNamesUsed[t]:(this.nodeNamesUsed[t]=0,t)}loadGeometries(e){let t=this,n=this.extensions,r=this.primitiveCache;function i(e){return n[F.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(e,t).then(function(n){return $(n,e,t)})}let a=[];for(let n=0,o=e.length;n<o;n++){let o=e[n],s=at(o),c=r[s];if(c)a.push(c.promise);else{let e;e=o.extensions&&o.extensions[F.KHR_DRACO_MESH_COMPRESSION]?i(o):$(new Te,o,t),r[s]={primitive:o,promise:e},a.push(e)}}return Promise.all(a)}loadMesh(e){let t=this,r=this.json,i=this.extensions,a=r.meshes[e],o=a.primitives,c=[];for(let e=0,t=o.length;e<t;e++){let t=o[e].material===void 0?nt(this.cache):this.getDependency(`material`,o[e].material);c.push(t)}return c.push(t.loadGeometries(o)),Promise.all(c).then(function(r){let c=r.slice(0,r.length-1),l=r[r.length-1],u=[];for(let r=0,s=l.length;r<s;r++){let s=l[r],d=o[r],f,p=c[r];if(d.mode===V.TRIANGLES||d.mode===V.TRIANGLE_STRIP||d.mode===V.TRIANGLE_FAN||d.mode===void 0)f=a.isSkinnedMesh===!0?new ee(s,p):new de(s,p),f.isSkinnedMesh===!0&&f.normalizeSkinWeights(),d.mode===V.TRIANGLE_STRIP?f.geometry=M(f.geometry,1):d.mode===V.TRIANGLE_FAN&&(f.geometry=M(f.geometry,2));else if(d.mode===V.LINES)f=new ie(s,p);else if(d.mode===V.LINE_STRIP)f=new ne(s,p);else if(d.mode===V.LINE_LOOP)f=new n(s,p);else if(d.mode===V.POINTS)f=new me(s,p);else throw Error(`THREE.GLTFLoader: Primitive mode unsupported: `+d.mode);Object.keys(f.geometry.morphAttributes).length>0&&it(f,a),f.name=t.createUniqueName(a.name||`mesh_`+e),X(f,a),d.extensions&&Y(i,f,d),t.assignFinalMaterial(f),u.push(f)}for(let n=0,r=u.length;n<r;n++)t.associations.set(u[n],{meshes:e,primitives:n});if(u.length===1)return a.extensions&&Y(i,u[0],a),u[0];let d=new s;a.extensions&&Y(i,d,a),t.associations.set(d,{meshes:e});for(let e=0,t=u.length;e<t;e++)d.add(u[e]);return d})}loadCamera(e){let t,n=this.json.cameras[e],r=n[n.type];if(!r){console.warn(`THREE.GLTFLoader: Missing camera parameters.`);return}return n.type===`perspective`?t=new xe(oe.radToDeg(r.yfov),r.aspectRatio||1,r.znear||1,r.zfar||2e6):n.type===`orthographic`&&(t=new pe(-r.xmag,r.xmag,r.ymag,-r.ymag,r.znear,r.zfar)),n.name&&(t.name=this.createUniqueName(n.name)),X(t,n),Promise.resolve(t)}loadSkin(t){let n=this.json.skins[t],r=[];for(let e=0,t=n.joints.length;e<t;e++)r.push(this._loadNodeShallow(n.joints[e]));return n.inverseBindMatrices===void 0?r.push(null):r.push(this.getDependency(`accessor`,n.inverseBindMatrices)),Promise.all(r).then(function(t){let r=t.pop(),i=t,a=[],s=[];for(let t=0,o=i.length;t<o;t++){let o=i[t];if(o){a.push(o);let n=new e;r!==null&&n.fromArray(r.array,t*16),s.push(n)}else console.warn(`THREE.GLTFLoader: Joint "%s" could not be found.`,n.joints[t])}return new o(a,s)})}loadAnimation(e){let t=this.json,n=this,r=t.animations[e],i=r.name?r.name:`animation_`+e,a=[],o=[],s=[],c=[],l=[];for(let e=0,t=r.channels.length;e<t;e++){let t=r.channels[e],n=r.samplers[t.sampler],i=t.target,u=i.node,d=r.parameters===void 0?n.input:r.parameters[n.input],f=r.parameters===void 0?n.output:r.parameters[n.output];i.node!==void 0&&(a.push(this.getDependency(`node`,u)),o.push(this.getDependency(`accessor`,d)),s.push(this.getDependency(`accessor`,f)),c.push(n),l.push(i))}return Promise.all([Promise.all(a),Promise.all(o),Promise.all(s),Promise.all(c),Promise.all(l)]).then(function(e){let t=e[0],a=e[1],o=e[2],s=e[3],c=e[4],l=[];for(let e=0,r=t.length;e<r;e++){let r=t[e],i=a[e],u=o[e],d=s[e],f=c[e];if(r===void 0)continue;r.updateMatrix&&r.updateMatrix();let p=n._createAnimationTracks(r,i,u,d,f);if(p)for(let e=0;e<p.length;e++)l.push(p[e])}let u=new Se(i,void 0,l);return X(u,r),u})}createNodeMesh(e){let t=this.json,n=this,r=t.nodes[e];return r.mesh===void 0?null:n.getDependency(`mesh`,r.mesh).then(function(e){let t=n._getNodeRef(n.meshCache,r.mesh,e);return r.weights!==void 0&&t.traverse(function(e){if(e.isMesh)for(let t=0,n=r.weights.length;t<n;t++)e.morphTargetInfluences[t]=r.weights[t]}),t})}loadNode(e){let t=this.json,n=this,i=t.nodes[e],a=n._loadNodeShallow(e),o=[],s=i.children||[];for(let e=0,t=s.length;e<t;e++)o.push(n.getDependency(`node`,s[e]));let c=i.skin===void 0?Promise.resolve(null):n.getDependency(`skin`,i.skin);return Promise.all([a,Promise.all(o),c]).then(function(e){let t=e[0],n=e[1],i=e[2];i!==null&&t.traverse(function(e){e.isSkinnedMesh&&e.bind(i,st)});for(let e=0,r=n.length;e<r;e++)t.add(n[e]);if(t.userData.pivot!==void 0&&n.length>0){let e=t.userData.pivot,i=n[0];t.pivot=new r().fromArray(e),t.position.x-=e[0],t.position.y-=e[1],t.position.z-=e[2],i.position.set(0,0,0),delete t.userData.pivot}return t})}_loadNodeShallow(t){let n=this.json,r=this.extensions,i=this;if(this.nodeCache[t]!==void 0)return this.nodeCache[t];let a=n.nodes[t],o=a.name?i.createUniqueName(a.name):``,c=[],l=i._invokeOne(function(e){return e.createNodeMesh&&e.createNodeMesh(t)});return l&&c.push(l),a.camera!==void 0&&c.push(i.getDependency(`camera`,a.camera).then(function(e){return i._getNodeRef(i.cameraCache,a.camera,e)})),i._invokeAll(function(e){return e.createNodeAttachment&&e.createNodeAttachment(t)}).forEach(function(e){c.push(e)}),this.nodeCache[t]=Promise.all(c).then(function(n){let c;if(c=a.isBone===!0?new ye:n.length>1?new s:n.length===1?n[0]:new ue,c!==n[0])for(let e=0,t=n.length;e<t;e++)c.add(n[e]);if(a.name&&(c.userData.name=a.name,c.name=o),X(c,a),a.extensions&&Y(r,c,a),a.matrix!==void 0){let t=new e;t.fromArray(a.matrix),c.applyMatrix4(t)}else a.translation!==void 0&&c.position.fromArray(a.translation),a.rotation!==void 0&&c.quaternion.fromArray(a.rotation),a.scale!==void 0&&c.scale.fromArray(a.scale);if(!i.associations.has(c))i.associations.set(c,{});else if(a.mesh!==void 0&&i.meshCache.refs[a.mesh]>1){let e=i.associations.get(c);i.associations.set(c,{...e})}return i.associations.get(c).nodes=t,c}),this.nodeCache[t]}loadScene(e){let t=this.extensions,n=this.json.scenes[e],r=this,i=new s;n.name&&(i.name=r.createUniqueName(n.name)),X(i,n),n.extensions&&Y(t,i,n);let a=n.nodes||[],o=[];for(let e=0,t=a.length;e<t;e++)o.push(r.getDependency(`node`,a[e]));return Promise.all(o).then(function(e){for(let t=0,n=e.length;t<n;t++){let n=e[t];n.parent===null?i.add(n):i.add(ke(n))}return r.associations=(e=>{let t=new Map;for(let[e,n]of r.associations)(e instanceof b||e instanceof y)&&t.set(e,n);return e.traverse(e=>{let n=r.associations.get(e);n!=null&&t.set(e,n)}),t})(i),i})}_createAnimationTracks(e,t,n,r,i){let a=[],o=e.name?e.name:e.uuid,s=[];function c(e){e.morphTargetInfluences&&s.push(e.name?e.name:e.uuid)}q[i.path]===q.weights?(c(e),e.isGroup&&e.children.forEach(c)):s.push(o);let l;switch(q[i.path]){case q.weights:l=O;break;case q.rotation:l=ce;break;case q.translation:case q.scale:l=d;break;default:switch(n.itemSize){case 1:l=O;break;default:l=d;break}break}let u=r.interpolation===void 0?m:tt[r.interpolation],f=this._getArrayFromAccessor(n);for(let e=0,n=s.length;e<n;e++){let n=new l(s[e]+`.`+q[i.path],t.array,f,u);r.interpolation===`CUBICSPLINE`&&this._createCubicSplineTrackInterpolant(n),a.push(n)}return a}_getArrayFromAccessor(e){let t=e.array;if(e.normalized){let e=Q(t.constructor),n=new Float32Array(t.length);for(let r=0,i=t.length;r<i;r++)n[r]=t[r]*e;t=n}return t}_createCubicSplineTrackInterpolant(e){e.createInterpolant=function(e){return new(this instanceof ce?et:B)(this.times,this.values,this.getValueSize()/3,e)},e.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline=!0}};function lt(e,t,n){let i=t.attributes,a=new Ce;if(i.POSITION!==void 0){let e=n.json.accessors[i.POSITION],t=e.min,o=e.max;if(t!==void 0&&o!==void 0){if(a.set(new r(t[0],t[1],t[2]),new r(o[0],o[1],o[2])),e.normalized){let t=Q(H[e.componentType]);a.min.multiplyScalar(t),a.max.multiplyScalar(t)}}else{console.warn(`THREE.GLTFLoader: Missing min/max properties for accessor POSITION.`);return}}else return;let o=t.targets;if(o!==void 0){let e=new r,t=new r;for(let r=0,i=o.length;r<i;r++){let i=o[r];if(i.POSITION!==void 0){let r=n.json.accessors[i.POSITION],a=r.min,o=r.max;if(a!==void 0&&o!==void 0){if(t.setX(Math.max(Math.abs(a[0]),Math.abs(o[0]))),t.setY(Math.max(Math.abs(a[1]),Math.abs(o[1]))),t.setZ(Math.max(Math.abs(a[2]),Math.abs(o[2]))),r.normalized){let e=Q(H[r.componentType]);t.multiplyScalar(e)}e.max(t)}else console.warn(`THREE.GLTFLoader: Missing min/max properties for accessor POSITION.`)}}a.expandByVector(e)}e.boundingBox=a;let s=new _e;a.getCenter(s.center),s.radius=a.min.distanceTo(a.max)/2,e.boundingSphere=s}function $(e,t,n){let r=t.attributes,i=[];function a(t,r){return n.getDependency(`accessor`,t).then(function(t){e.setAttribute(r,t)})}for(let t in r){let n=K[t]||t.toLowerCase();n in e.attributes||i.push(a(r[t],n))}if(t.indices!==void 0&&!e.index){let r=n.getDependency(`accessor`,t.indices).then(function(t){e.setIndex(t)});i.push(r)}return w.workingColorSpace!==`srgb-linear`&&`COLOR_0`in r&&console.warn(`THREE.GLTFLoader: Converting vertex colors from "srgb-linear" to "${w.workingColorSpace}" not supported.`),X(e,t),lt(e,t,n),Promise.all(i).then(function(){return t.targets===void 0?e:rt(e,t.targets,n)})}export{Ae as GLTFLoader};
@@ -0,0 +1 @@
1
+ import{A as e,D as t,F as n,J as r,L as i,M as a,N as o,P as s,T as c,U as l,_ as u,g as d,j as f,k as p,u as m,x as h,y as g,z as ee}from"./index-Wv8YWT7J.js";var _=r(l(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?t.exports=r():typeof define==`function`&&define.amd?define(r):(n=typeof globalThis<`u`?globalThis:n||self,n.Viewer=r())})(e,(function(){function e(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function t(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,s(r.key),r)}}function n(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),Object.defineProperty(e,`prototype`,{writable:!1}),e}function r(e,t,n){return(t=s(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function a(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?i(Object(n),!0).forEach(function(t){r(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function o(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function s(e){var t=o(e,`string`);return typeof t==`symbol`?t:t+``}function c(e){"@babel/helpers - typeof";return c=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},c(e)}var l={backdrop:!0,button:!0,navbar:!0,title:!0,toolbar:!0,className:``,container:`body`,filter:null,fullscreen:!0,inheritedAttributes:[`crossOrigin`,`decoding`,`isMap`,`loading`,`referrerPolicy`,`sizes`,`srcset`,`useMap`],initialCoverage:.9,initialViewIndex:0,inline:!1,interval:5e3,keyboard:!0,focus:!0,loading:!0,loop:!0,minWidth:200,minHeight:100,movable:!0,rotatable:!0,scalable:!0,zoomable:!0,zoomOnTouch:!0,zoomOnWheel:!0,slideOnTouch:!0,toggleOnDblclick:!0,tooltip:!0,transition:!0,zIndex:2015,zIndexInline:0,zoomRatio:.1,minZoomRatio:.01,maxZoomRatio:100,url:`src`,ready:null,show:null,shown:null,hide:null,hidden:null,view:null,viewed:null,move:null,moved:null,rotate:null,rotated:null,scale:null,scaled:null,zoom:null,zoomed:null,play:null,stop:null},u=`<div class="viewer-container" tabindex="-1" touch-action="none"><div class="viewer-canvas"></div><div class="viewer-footer"><div class="viewer-title"></div><div class="viewer-toolbar"></div><div class="viewer-navbar"><ul class="viewer-list" role="navigation"></ul></div></div><div class="viewer-tooltip" role="alert" aria-hidden="true"></div><div class="viewer-button" data-viewer-action="mix" role="button"></div><div class="viewer-player"></div></div>`,d=typeof window<`u`&&window.document!==void 0,f=d?window:{},p=d&&f.document.documentElement?`ontouchstart`in f.document.documentElement:!1,m=d?`PointerEvent`in f:!1,h=`viewer`,g=`move`,ee=`switch`,_=`zoom`,v=`${h}-active`,te=`${h}-close`,y=`${h}-fade`,b=`${h}-fixed`,ne=`${h}-fullscreen`,re=`${h}-fullscreen-exit`,x=`${h}-hide`,S=`${h}-hide-md-down`,ie=`${h}-hide-sm-down`,ae=`${h}-hide-xs-down`,C=`${h}-in`,w=`${h}-invisible`,T=`${h}-loading`,oe=`${h}-move`,se=`${h}-open`,E=`${h}-show`,D=`${h}-transition`,O=`click`,ce=`dblclick`,le=`dragstart`,ue=`focusin`,de=`keydown`,k=`load`,A=`error`,fe=p?`touchend touchcancel`:`mouseup`,pe=p?`touchmove`:`mousemove`,me=m?`pointerdown`:p?`touchstart`:`mousedown`,he=m?`pointermove`:pe,ge=m?`pointerup pointercancel`:fe,_e=`resize`,j=`transitionend`,ve=`wheel`,ye=`ready`,be=`show`,xe=`shown`,Se=`hide`,Ce=`hidden`,we=`view`,M=`viewed`,Te=`move`,Ee=`moved`,De=`rotate`,Oe=`rotated`,ke=`scale`,Ae=`scaled`,N=`zoom`,je=`zoomed`,Me=`play`,Ne=`stop`,P=`${h}Action`,Pe=/\s\s*/,F=[`zoom-in`,`zoom-out`,`one-to-one`,`reset`,`prev`,`play`,`next`,`rotate-left`,`rotate-right`,`flip-horizontal`,`flip-vertical`];function I(e){return typeof e==`string`}var Fe=Number.isNaN||f.isNaN;function L(e){return typeof e==`number`&&!Fe(e)}function R(e){return e===void 0}function z(e){return c(e)===`object`&&e!==null}var Ie=Object.prototype.hasOwnProperty;function B(e){if(!z(e))return!1;try{var t=e.constructor,n=t.prototype;return t&&n&&Ie.call(n,`isPrototypeOf`)}catch{return!1}}function V(e){return typeof e==`function`}function H(e,t){if(e&&V(t))if(Array.isArray(e)||L(e.length)){var n=e.length,r;for(r=0;r<n&&t.call(e,e[r],r,e)!==!1;r+=1);}else z(e)&&Object.keys(e).forEach(function(n){t.call(e,e[n],n,e)});return e}var U=Object.assign||function(e){var t=[...arguments].slice(1);return z(e)&&t.length>0&&t.forEach(function(t){z(t)&&Object.keys(t).forEach(function(n){e[n]=t[n]})}),e},Le=/^(?:width|height|left|top|marginLeft|marginTop)$/;function W(e,t){var n=e.style;H(t,function(e,t){Le.test(t)&&L(e)&&(e+=`px`),n[t]=e})}function Re(e){return I(e)?e.replace(/&(?!amp;|quot;|#39;|lt;|gt;)/g,`&amp;`).replace(/"/g,`&quot;`).replace(/'/g,`&#39;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`):e}function G(e,t){return!e||!t?!1:e.classList?e.classList.contains(t):e.className.indexOf(t)>-1}function K(e,t){if(!(!e||!t)){if(L(e.length)){H(e,function(e){K(e,t)});return}if(e.classList){e.classList.add(t);return}var n=e.className.trim();n?n.indexOf(t)<0&&(e.className=`${n} ${t}`):e.className=t}}function q(e,t){if(!(!e||!t)){if(L(e.length)){H(e,function(e){q(e,t)});return}if(e.classList){e.classList.remove(t);return}e.className.indexOf(t)>=0&&(e.className=e.className.replace(t,``))}}function J(e,t,n){if(t){if(L(e.length)){H(e,function(e){J(e,t,n)});return}n?K(e,t):q(e,t)}}var ze=/([a-z\d])([A-Z])/g;function Be(e){return e.replace(ze,`$1-$2`).toLowerCase()}function Y(e,t){return z(e[t])?e[t]:e.dataset?e.dataset[t]:e.getAttribute(`data-${Be(t)}`)}function Ve(e,t,n){z(n)?e[t]=n:e.dataset?e.dataset[t]=n:e.setAttribute(`data-${Be(t)}`,n)}var He=function(){var e=!1;if(d){var t=!1,n=function(){},r=Object.defineProperty({},`once`,{get:function(){return e=!0,t},set:function(e){t=e}});f.addEventListener(`test`,n,r),f.removeEventListener(`test`,n,r)}return e}();function X(e,t,n){var r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},i=n;t.trim().split(Pe).forEach(function(t){if(!He){var a=e.listeners;a&&a[t]&&a[t][n]&&(i=a[t][n],delete a[t][n],Object.keys(a[t]).length===0&&delete a[t],Object.keys(a).length===0&&delete e.listeners)}e.removeEventListener(t,i,r)})}function Z(e,t,n){var r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},i=n;t.trim().split(Pe).forEach(function(t){if(r.once&&!He){var a=e.listeners,o=a===void 0?{}:a;i=function(){delete o[t][n],e.removeEventListener(t,i,r);var a=[...arguments];n.apply(e,a)},o[t]||(o[t]={}),o[t][n]&&e.removeEventListener(t,o[t][n],r),o[t][n]=i,e.listeners=o}e.addEventListener(t,i,r)})}function Q(e,t,n,r){var i;return V(Event)&&V(CustomEvent)?i=new CustomEvent(t,a({bubbles:!0,cancelable:!0,detail:n},r)):(i=document.createEvent(`CustomEvent`),i.initCustomEvent(t,!0,!0,n)),e.dispatchEvent(i)}function Ue(e){var t=e.getBoundingClientRect();return{left:t.left+(window.pageXOffset-document.documentElement.clientLeft),top:t.top+(window.pageYOffset-document.documentElement.clientTop)}}function We(e){var t=e.rotate,n=e.scaleX,r=e.scaleY,i=e.translateX,a=e.translateY,o=[];L(i)&&i!==0&&o.push(`translateX(${i}px)`),L(a)&&a!==0&&o.push(`translateY(${a}px)`),L(t)&&t!==0&&o.push(`rotate(${t}deg)`),L(n)&&n!==1&&o.push(`scaleX(${n})`),L(r)&&r!==1&&o.push(`scaleY(${r})`);var s=o.length?o.join(` `):`none`;return{WebkitTransform:s,msTransform:s,transform:s}}function Ge(e){return I(e)?decodeURIComponent(e.replace(/^.*\//,``).replace(/[?&#].*$/,``)):``}var Ke=f.navigator&&/Version\/\d+(\.\d+)+?\s+Safari/i.test(f.navigator.userAgent);function qe(e,t,n){var r=document.createElement(`img`);if(e.naturalWidth&&!Ke)return n(e.naturalWidth,e.naturalHeight),r;var i=document.body||document.documentElement;return r.onload=function(){n(r.width,r.height),Ke||i.removeChild(r)},H(t.inheritedAttributes,function(t){var n=e.getAttribute(t);n!==null&&r.setAttribute(t,n)}),r.src=e.src,Ke||(r.style.cssText=`left:0;max-height:none!important;max-width:none!important;min-height:0!important;min-width:0!important;opacity:0;position:absolute;top:0;z-index:-1;`,i.appendChild(r)),r}function Je(e){switch(e){case 2:return ae;case 3:return ie;case 4:return S;default:return``}}function Ye(e){var t=a({},e),n=[];return H(e,function(e,r){delete t[r],H(t,function(t){var r=Math.abs(e.startX-t.startX),i=Math.abs(e.startY-t.startY),a=Math.abs(e.endX-t.endX),o=Math.abs(e.endY-t.endY),s=Math.sqrt(r*r+i*i),c=(Math.sqrt(a*a+o*o)-s)/s;n.push(c)})}),n.sort(function(e,t){return Math.abs(e)<Math.abs(t)}),n[0]}function Xe(e,t){var n=e.pageX,r=e.pageY,i={endX:n,endY:r};return t?i:a({timeStamp:Date.now(),startX:n,startY:r},i)}function Ze(e){var t=0,n=0,r=0;return H(e,function(e){var i=e.startX,a=e.startY;t+=i,n+=a,r+=1}),t/=r,n/=r,{pageX:t,pageY:n}}var Qe={render:function(){this.initContainer(),this.initViewer(),this.initList(),this.renderViewer()},initBody:function(){var e=this.element.ownerDocument,t=e.body||e.documentElement;this.body=t,this.scrollbarWidth=window.innerWidth-e.documentElement.clientWidth,this.initialBodyPaddingRight=t.style.paddingRight,this.initialBodyComputedPaddingRight=window.getComputedStyle(t).paddingRight},initContainer:function(){this.containerData={width:window.innerWidth,height:window.innerHeight}},initViewer:function(){var e=this.options,t=this.parent,n;e.inline&&(n={width:Math.max(t.offsetWidth,e.minWidth),height:Math.max(t.offsetHeight,e.minHeight)},this.parentData=n),(this.fulled||!n)&&(n=this.containerData),this.viewerData=U({},n)},renderViewer:function(){this.options.inline&&!this.fulled&&W(this.viewer,this.viewerData)},initList:function(){var e=this,t=this.element,n=this.options,r=this.list,i=[];r.innerHTML=``,H(this.images,function(t,a){var o=t.src,s=t.alt||Ge(o),c=e.getImageURL(t);if(o||c){var l=document.createElement(`li`),u=document.createElement(`img`);H(n.inheritedAttributes,function(e){var n=t.getAttribute(e);n!==null&&u.setAttribute(e,n)}),n.navbar&&(u.src=o||c),u.alt=s,u.setAttribute(`data-original-url`,c||o),l.setAttribute(`data-index`,a),l.setAttribute(`data-viewer-action`,`view`),l.setAttribute(`role`,`button`),n.keyboard&&l.setAttribute(`tabindex`,0),l.appendChild(u),r.appendChild(l),i.push(l)}}),this.items=i,H(i,function(t){var r=t.firstElementChild,i,a;Ve(r,`filled`,!0),n.loading&&K(t,T),Z(r,k,i=function(i){X(r,A,a),n.loading&&q(t,T),e.loadImage(i)},{once:!0}),Z(r,A,a=function(){X(r,k,i),n.loading&&q(t,T)},{once:!0})}),n.transition&&Z(t,M,function(){K(r,D)},{once:!0})},renderList:function(){var e=this.index,t=this.items[e];if(t){var n=t.nextElementSibling,r=parseInt(window.getComputedStyle(n||t).marginLeft,10),i=t.offsetWidth,a=i+r;W(this.list,U({width:a*this.length-r},We({translateX:(this.viewerData.width-i)/2-a*e})))}},resetList:function(){var e=this.list;e.innerHTML=``,q(e,D),W(e,We({translateX:0}))},initImage:function(e){var t=this,n=this.options,r=this.image,i=this.viewerData,a=this.footer.offsetHeight,o=i.width,s=Math.max(i.height-a,a),c=this.imageData||{},l;this.imageInitializing={abort:function(){l.onload=null}},l=qe(r,n,function(r,i){var a=r/i,l=Math.max(0,Math.min(1,n.initialCoverage)),u=o,d=s;t.imageInitializing=!1,s*a>o?d=o/a:u=s*a,l=L(l)?l:.9,u=Math.min(u*l,r),d=Math.min(d*l,i);var f=(o-u)/2,p=(s-d)/2,m={left:f,top:p,x:f,y:p,width:u,height:d,oldRatio:1,ratio:u/r,aspectRatio:a,naturalWidth:r,naturalHeight:i},h=U({},m);n.rotatable&&(m.rotate=c.rotate||0,h.rotate=0),n.scalable&&(m.scaleX=c.scaleX||1,m.scaleY=c.scaleY||1,h.scaleX=1,h.scaleY=1),t.imageData=m,t.initialImageData=h,e&&e()})},renderImage:function(e){var t=this,n=this.image,r=this.imageData;if(W(n,U({width:r.width,height:r.height,marginLeft:r.x,marginTop:r.y},We(r))),e)if((this.viewing||this.moving||this.rotating||this.scaling||this.zooming)&&this.options.transition&&G(n,D)){var i=function(){t.imageRendering=!1,e()};this.imageRendering={abort:function(){X(n,j,i)}},Z(n,j,i,{once:!0})}else e()},resetImage:function(){var e=this.image;e&&(this.viewing&&this.viewing.abort(),e.parentNode.removeChild(e),this.image=null,this.title.innerHTML=``)}},$e={bind:function(){var e=this.options,t=this.viewer,n=this.canvas,r=this.element.ownerDocument;Z(t,O,this.onClick=this.click.bind(this)),Z(t,le,this.onDragStart=this.dragstart.bind(this)),Z(n,me,this.onPointerDown=this.pointerdown.bind(this)),Z(r,he,this.onPointerMove=this.pointermove.bind(this)),Z(r,ge,this.onPointerUp=this.pointerup.bind(this)),Z(r,de,this.onKeyDown=this.keydown.bind(this)),Z(window,_e,this.onResize=this.resize.bind(this)),e.zoomable&&e.zoomOnWheel&&Z(t,ve,this.onWheel=this.wheel.bind(this),{passive:!1,capture:!0}),e.toggleOnDblclick&&Z(n,ce,this.onDblclick=this.dblclick.bind(this))},unbind:function(){var e=this.options,t=this.viewer,n=this.canvas,r=this.element.ownerDocument;X(t,O,this.onClick),X(t,le,this.onDragStart),X(n,me,this.onPointerDown),X(r,he,this.onPointerMove),X(r,ge,this.onPointerUp),X(r,de,this.onKeyDown),X(window,_e,this.onResize),e.zoomable&&e.zoomOnWheel&&X(t,ve,this.onWheel,{passive:!1,capture:!0}),e.toggleOnDblclick&&X(n,ce,this.onDblclick)}},et={click:function(e){var t=this.options,n=this.imageData,r=e.target,i=Y(r,P);switch(!i&&r.localName===`img`&&r.parentElement.localName===`li`&&(r=r.parentElement,i=Y(r,P)),p&&e.isTrusted&&r===this.canvas&&clearTimeout(this.clickCanvasTimeout),i){case`mix`:this.played?this.stop():t.inline?this.fulled?this.exit():this.full():this.hide();break;case`hide`:this.pointerMoved||this.hide();break;case`view`:this.view(Y(r,`index`));break;case`zoom-in`:this.zoom(.1,!0);break;case`zoom-out`:this.zoom(-.1,!0);break;case`one-to-one`:this.toggle();break;case`reset`:this.reset();break;case`prev`:this.prev(t.loop);break;case`play`:this.play(t.fullscreen);break;case`next`:this.next(t.loop);break;case`rotate-left`:this.rotate(-90);break;case`rotate-right`:this.rotate(90);break;case`flip-horizontal`:this.scaleX(-n.scaleX||-1);break;case`flip-vertical`:this.scaleY(-n.scaleY||-1);break;default:this.played&&this.stop()}},dblclick:function(e){e.preventDefault(),this.viewed&&e.target===this.image&&(p&&e.isTrusted&&clearTimeout(this.doubleClickImageTimeout),this.toggle(e.isTrusted?e:e.detail&&e.detail.originalEvent))},load:function(){var e=this;this.timeout&&=(clearTimeout(this.timeout),!1);var t=this.element,n=this.options,r=this.image,i=this.index,a=this.viewerData;q(r,w),n.loading&&q(this.canvas,T),r.style.cssText=`height:0;margin-left:${a.width/2}px;margin-top:${a.height/2}px;max-width:none!important;position:relative;width:0;`,this.initImage(function(){J(r,oe,n.movable),J(r,D,n.transition),e.renderImage(function(){e.viewed=!0,e.viewing=!1,V(n.viewed)&&Z(t,M,n.viewed,{once:!0}),Q(t,M,{originalImage:e.images[i],index:i,image:r},{cancelable:!1})})})},loadImage:function(e){var t=e.target,n=t.parentNode,r=n.offsetWidth||30,i=n.offsetHeight||50,a=!!Y(t,`filled`);qe(t,this.options,function(e,n){var o=e/n,s=r,c=i;i*o>r?a?s=i*o:c=r/o:a?c=r/o:s=i*o,W(t,U({width:s,height:c},We({translateX:(r-s)/2,translateY:(i-c)/2})))})},keydown:function(e){var t=this.options;if(t.keyboard){var n=e.keyCode||e.which||e.charCode;switch(n){case 13:this.viewer.contains(e.target)&&this.click(e);break}if(this.fulled)switch(n){case 27:this.played?this.stop():t.inline?this.fulled&&this.exit():this.hide();break;case 32:this.played&&this.stop();break;case 37:this.played&&this.playing?this.playing.prev():this.prev(t.loop);break;case 38:e.preventDefault(),this.zoom(t.zoomRatio,!0);break;case 39:this.played&&this.playing?this.playing.next():this.next(t.loop);break;case 40:e.preventDefault(),this.zoom(-t.zoomRatio,!0);break;case 48:case 49:e.ctrlKey&&(e.preventDefault(),this.toggle());break}}},dragstart:function(e){e.target.localName===`img`&&e.preventDefault()},pointerdown:function(e){var t=this.options,n=this.pointers,r=e.buttons,i=e.button;if(this.pointerMoved=!1,!(!this.viewed||this.showing||this.viewing||this.hiding||(e.type===`mousedown`||e.type===`pointerdown`&&e.pointerType===`mouse`)&&(L(r)&&r!==1||L(i)&&i!==0||e.ctrlKey))){e.preventDefault(),e.changedTouches?H(e.changedTouches,function(e){n[e.identifier]=Xe(e)}):n[e.pointerId||0]=Xe(e);var a=t.movable?g:!1;t.zoomOnTouch&&t.zoomable&&Object.keys(n).length>1?a=_:t.slideOnTouch&&(e.pointerType===`touch`||e.type===`touchstart`)&&this.isSwitchable()&&(a=ee),t.transition&&(a===g||a===_)&&q(this.image,D),this.action=a}},pointermove:function(e){var t=this.pointers,n=this.action;!this.viewed||!n||(e.preventDefault(),e.changedTouches?H(e.changedTouches,function(e){U(t[e.identifier]||{},Xe(e,!0))}):U(t[e.pointerId||0]||{},Xe(e,!0)),this.change(e))},pointerup:function(e){var t=this,n=this.options,r=this.action,i=this.pointers,a;e.changedTouches?H(e.changedTouches,function(e){a=i[e.identifier],delete i[e.identifier]}):(a=i[e.pointerId||0],delete i[e.pointerId||0]),r&&(e.preventDefault(),n.transition&&(r===g||r===_)&&K(this.image,D),this.action=!1,p&&r!==_&&a&&Date.now()-a.timeStamp<500&&(clearTimeout(this.clickCanvasTimeout),clearTimeout(this.doubleClickImageTimeout),n.toggleOnDblclick&&this.viewed&&e.target===this.image?this.imageClicked?(this.imageClicked=!1,this.doubleClickImageTimeout=setTimeout(function(){Q(t.image,ce,{originalEvent:e})},50)):(this.imageClicked=!0,this.doubleClickImageTimeout=setTimeout(function(){t.imageClicked=!1},500)):(this.imageClicked=!1,n.backdrop&&n.backdrop!==`static`&&e.target===this.canvas&&(this.clickCanvasTimeout=setTimeout(function(){Q(t.canvas,O,{originalEvent:e})},50)))))},resize:function(){var e=this;if(!(!this.isShown||this.hiding)&&(this.fulled&&(this.close(),this.initBody(),this.open()),this.initContainer(),this.initViewer(),this.renderViewer(),this.renderList(),this.viewed&&this.initImage(function(){e.renderImage()}),this.played)){if(this.options.fullscreen&&this.fulled&&!(document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement)){this.stop();return}H(this.player.getElementsByTagName(`img`),function(t){Z(t,k,e.loadImage.bind(e),{once:!0}),Q(t,k)})}},wheel:function(e){var t=this;if(this.viewed&&(e.preventDefault(),!this.wheeling)){this.wheeling=!0,setTimeout(function(){t.wheeling=!1},50);var n=Number(this.options.zoomRatio)||.1,r=1;e.deltaY?r=e.deltaY>0?1:-1:e.wheelDelta?r=-e.wheelDelta/120:e.detail&&(r=e.detail>0?1:-1),this.zoom(-r*n,!0,null,e)}}},tt={show:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,t=this.element,n=this.options;if(n.inline||this.showing||this.isShown||this.showing)return this;if(!this.ready)return this.build(),this.ready&&this.show(e),this;if(V(n.show)&&Z(t,be,n.show,{once:!0}),Q(t,be)===!1||!this.ready)return this;this.hiding&&this.transitioning.abort(),this.showing=!0,this.open();var r=this.viewer;if(q(r,x),r.setAttribute(`role`,`dialog`),r.setAttribute(`aria-labelledby`,this.title.id),r.setAttribute(`aria-modal`,!0),r.removeAttribute(`aria-hidden`),n.transition&&!e){var i=this.shown.bind(this);this.transitioning={abort:function(){X(r,j,i),q(r,C)}},K(r,D),r.initialOffsetWidth=r.offsetWidth,Z(r,j,i,{once:!0}),K(r,C)}else K(r,C),this.shown();return this},hide:function(){var e=this,t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,n=this.element,r=this.options;if(r.inline||this.hiding||!(this.isShown||this.showing)||(V(r.hide)&&Z(n,Se,r.hide,{once:!0}),Q(n,Se)===!1))return this;this.showing&&this.transitioning.abort(),this.hiding=!0,this.played?this.stop():this.viewing&&this.viewing.abort();var i=this.viewer,a=this.image,o=function(){q(i,C),e.hidden()};if(r.transition&&!t){var s=function(t){t&&t.target===i&&(X(i,j,s),e.hidden())},c=function(){G(i,D)?(Z(i,j,s),q(i,C)):o()};this.transitioning={abort:function(){e.viewed&&G(a,D)?X(a,j,c):G(i,D)&&X(i,j,s)}},this.viewed&&G(a,D)?(Z(a,j,c,{once:!0}),this.zoomTo(0,!1,null,null,!0)):c()}else o();return this},view:function(){var e=this,t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.options.initialViewIndex;if(t=Number(t)||0,this.hiding||this.played||t<0||t>=this.length||this.viewed&&t===this.index)return this;if(!this.isShown)return this.index=t,this.show();this.viewing&&this.viewing.abort();var n=this.element,r=this.options,i=this.title,a=this.canvas,o=this.items[t],s=o.querySelector(`img`),c=Y(s,`originalUrl`),l=s.getAttribute(`alt`),u=document.createElement(`img`);if(H(r.inheritedAttributes,function(e){var t=s.getAttribute(e);t!==null&&u.setAttribute(e,t)}),u.src=c,u.alt=l,V(r.view)&&Z(n,we,r.view,{once:!0}),Q(n,we,{originalImage:this.images[t],index:t,image:u})===!1||!this.isShown||this.hiding||this.played)return this;var d=this.items[this.index];d&&(q(d,v),d.removeAttribute(`aria-selected`)),K(o,v),o.setAttribute(`aria-selected`,!0),r.focus&&o.focus(),this.image=u,this.viewed=!1,this.index=t,this.imageData={},K(u,w),r.loading&&K(a,T),a.innerHTML=``,a.appendChild(u),this.renderList(),i.innerHTML=``;var f=function(){var t=e.imageData,n=Array.isArray(r.title)?r.title[1]:r.title;i.innerHTML=Re(V(n)?n.call(e,u,t):`${l} (${t.naturalWidth} × ${t.naturalHeight})`)},p,m;return Z(n,M,f,{once:!0}),this.viewing={abort:function(){X(n,M,f),u.complete?e.imageRendering?e.imageRendering.abort():e.imageInitializing&&e.imageInitializing.abort():(u.src=``,X(u,k,p),e.timeout&&clearTimeout(e.timeout))}},u.complete?this.load():(Z(u,k,p=function(){X(u,A,m),e.load()},{once:!0}),Z(u,A,m=function(){X(u,k,p),e.timeout&&=(clearTimeout(e.timeout),!1),q(u,w),r.loading&&q(e.canvas,T)},{once:!0}),this.timeout&&clearTimeout(this.timeout),this.timeout=setTimeout(function(){q(u,w),e.timeout=!1},1e3)),this},prev:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,t=this.index-1;return t<0&&(t=e?this.length-1:0),this.view(t),this},next:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,t=this.length-1,n=this.index+1;return n>t&&(n=e?0:t),this.view(n),this},move:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e,n=this.imageData;return this.moveTo(R(e)?e:n.x+Number(e),R(t)?t:n.y+Number(t)),this},moveTo:function(e){var t=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=this.element,a=this.options,o=this.imageData;if(e=Number(e),n=Number(n),this.viewed&&!this.played&&a.movable){var s=o.x,c=o.y,l=!1;if(L(e)?l=!0:e=s,L(n)?l=!0:n=c,l){if(V(a.move)&&Z(i,Te,a.move,{once:!0}),Q(i,Te,{x:e,y:n,oldX:s,oldY:c,originalEvent:r})===!1)return this;o.x=e,o.y=n,o.left=e,o.top=n,this.moving=!0,this.renderImage(function(){t.moving=!1,V(a.moved)&&Z(i,Ee,a.moved,{once:!0}),Q(i,Ee,{x:e,y:n,oldX:s,oldY:c,originalEvent:r},{cancelable:!1})})}}return this},rotate:function(e){return this.rotateTo((this.imageData.rotate||0)+Number(e)),this},rotateTo:function(e){var t=this,n=this.element,r=this.options,i=this.imageData;if(e=Number(e),L(e)&&this.viewed&&!this.played&&r.rotatable){var a=i.rotate;if(V(r.rotate)&&Z(n,De,r.rotate,{once:!0}),Q(n,De,{degree:e,oldDegree:a})===!1)return this;i.rotate=e,this.rotating=!0,this.renderImage(function(){t.rotating=!1,V(r.rotated)&&Z(n,Oe,r.rotated,{once:!0}),Q(n,Oe,{degree:e,oldDegree:a},{cancelable:!1})})}return this},scaleX:function(e){return this.scale(e,this.imageData.scaleY),this},scaleY:function(e){return this.scale(this.imageData.scaleX,e),this},scale:function(e){var t=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e,r=this.element,i=this.options,a=this.imageData;if(e=Number(e),n=Number(n),this.viewed&&!this.played&&i.scalable){var o=a.scaleX,s=a.scaleY,c=!1;if(L(e)?c=!0:e=o,L(n)?c=!0:n=s,c){if(V(i.scale)&&Z(r,ke,i.scale,{once:!0}),Q(r,ke,{scaleX:e,scaleY:n,oldScaleX:o,oldScaleY:s})===!1)return this;a.scaleX=e,a.scaleY=n,this.scaling=!0,this.renderImage(function(){t.scaling=!1,V(i.scaled)&&Z(r,Ae,i.scaled,{once:!0}),Q(r,Ae,{scaleX:e,scaleY:n,oldScaleX:o,oldScaleY:s},{cancelable:!1})})}}return this},zoom:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,i=this.imageData;return e=Number(e),e=e<0?1/(1-e):1+e,this.zoomTo(i.width*e/i.naturalWidth,t,n,r),this},zoomTo:function(e){var t=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1,o=this.element,s=this.options,c=this.pointers,l=this.imageData,u=l.x,d=l.y,f=l.width,p=l.height,m=l.naturalWidth,h=l.naturalHeight;if(e=Math.max(0,e),L(e)&&this.viewed&&!this.played&&(a||s.zoomable)){if(!a){var g=Math.max(.01,s.minZoomRatio),ee=Math.min(100,s.maxZoomRatio);e=Math.min(Math.max(e,g),ee)}if(i)switch(i.type){case`wheel`:s.zoomRatio>=.055&&e>.95&&e<1.05&&(e=1);break;case`pointermove`:case`touchmove`:case`mousemove`:e>.99&&e<1.01&&(e=1);break}var _=m*e,v=h*e,te=_-f,y=v-p,b=l.ratio;if(V(s.zoom)&&Z(o,N,s.zoom,{once:!0}),Q(o,N,{ratio:e,oldRatio:b,originalEvent:i})===!1)return this;if(this.zooming=!0,i){var ne=Ue(this.viewer),re=c&&Object.keys(c).length>0?Ze(c):{pageX:i.pageX,pageY:i.pageY};l.x-=te*((re.pageX-ne.left-u)/f),l.y-=y*((re.pageY-ne.top-d)/p)}else B(r)&&L(r.x)&&L(r.y)?(l.x-=te*((r.x-u)/f),l.y-=y*((r.y-d)/p)):(l.x-=te/2,l.y-=y/2);l.left=l.x,l.top=l.y,l.width=_,l.height=v,l.oldRatio=b,l.ratio=e,this.renderImage(function(){t.zooming=!1,V(s.zoomed)&&Z(o,je,s.zoomed,{once:!0}),Q(o,je,{ratio:e,oldRatio:b,originalEvent:i},{cancelable:!1})}),n&&this.tooltip()}return this},play:function(){var e=this,t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;if(!this.isShown||this.played)return this;var n=this.element,r=this.options;if(V(r.play)&&Z(n,Me,r.play,{once:!0}),Q(n,Me)===!1)return this;var i=this.player,a=this.loadImage.bind(this),o=[],s=0,c=0;if(this.played=!0,this.onLoadWhenPlay=a,t&&this.requestFullscreen(t),K(i,E),H(this.items,function(e,t){var n=e.querySelector(`img`),l=document.createElement(`img`);l.src=Y(n,`originalUrl`),l.alt=n.getAttribute(`alt`),l.referrerPolicy=n.referrerPolicy,s+=1,K(l,y),J(l,D,r.transition),G(e,v)&&(K(l,C),c=t),o.push(l),Z(l,k,a,{once:!0}),i.appendChild(l)}),L(r.interval)&&r.interval>0){var l=function(){clearTimeout(e.playing.timeout),q(o[c],C),--c,c=c>=0?c:s-1,K(o[c],C),e.playing.timeout=setTimeout(l,r.interval)},u=function(){clearTimeout(e.playing.timeout),q(o[c],C),c+=1,c=c<s?c:0,K(o[c],C),e.playing.timeout=setTimeout(u,r.interval)};s>1&&(this.playing={prev:l,next:u,timeout:setTimeout(u,r.interval)})}return this},stop:function(){var e=this;if(!this.played)return this;var t=this.element,n=this.options;if(V(n.stop)&&Z(t,Ne,n.stop,{once:!0}),Q(t,Ne)===!1)return this;var r=this.player;return clearTimeout(this.playing.timeout),this.playing=!1,this.played=!1,H(r.getElementsByTagName(`img`),function(t){X(t,k,e.onLoadWhenPlay)}),q(r,E),r.innerHTML=``,this.exitFullscreen(),this},full:function(){var e=this,t=this.options,n=this.viewer,r=this.image,i=this.list;return!this.isShown||this.played||this.fulled||!t.inline?this:(this.fulled=!0,this.open(),K(this.button,re),t.transition&&(q(i,D),this.viewed&&q(r,D)),K(n,b),n.setAttribute(`role`,`dialog`),n.setAttribute(`aria-labelledby`,this.title.id),n.setAttribute(`aria-modal`,!0),n.removeAttribute(`style`),W(n,{zIndex:t.zIndex}),t.focus&&this.enforceFocus(),this.initContainer(),this.viewerData=U({},this.containerData),this.renderList(),this.viewed&&this.initImage(function(){e.renderImage(function(){t.transition&&setTimeout(function(){K(r,D),K(i,D)},0)})}),this)},exit:function(){var e=this,t=this.options,n=this.viewer,r=this.image,i=this.list;return!this.isShown||this.played||!this.fulled||!t.inline?this:(this.fulled=!1,this.close(),q(this.button,re),t.transition&&(q(i,D),this.viewed&&q(r,D)),t.focus&&this.clearEnforceFocus(),n.removeAttribute(`role`),n.removeAttribute(`aria-labelledby`),n.removeAttribute(`aria-modal`),q(n,b),W(n,{zIndex:t.zIndexInline}),this.viewerData=U({},this.parentData),this.renderViewer(),this.renderList(),this.viewed&&this.initImage(function(){e.renderImage(function(){t.transition&&setTimeout(function(){K(r,D),K(i,D)},0)})}),this)},tooltip:function(){var e=this,t=this.options,n=this.tooltipBox,r=this.imageData;return!this.viewed||this.played||!t.tooltip?this:(n.textContent=`${Math.round(r.ratio*100)}%`,this.tooltipping?clearTimeout(this.tooltipping):t.transition?(this.fading&&Q(n,j),K(n,E),K(n,y),K(n,D),n.removeAttribute(`aria-hidden`),n.initialOffsetWidth=n.offsetWidth,K(n,C)):(K(n,E),n.removeAttribute(`aria-hidden`)),this.tooltipping=setTimeout(function(){t.transition?(Z(n,j,function(){q(n,E),q(n,y),q(n,D),n.setAttribute(`aria-hidden`,!0),e.fading=!1},{once:!0}),q(n,C),e.fading=!0):(q(n,E),n.setAttribute(`aria-hidden`,!0)),e.tooltipping=!1},1e3),this)},toggle:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;return this.imageData.ratio===1?this.zoomTo(this.imageData.oldRatio,!0,null,e):this.zoomTo(1,!0,null,e),this},reset:function(){return this.viewed&&!this.played&&(this.imageData=U({},this.initialImageData),this.renderImage()),this},update:function(){var e=this,t=this.element,n=this.options,r=this.isImg;if(r&&!t.parentNode)return this.destroy();var i=[];if(H(r?[t]:t.querySelectorAll(`img`),function(t){V(n.filter)?n.filter.call(e,t)&&i.push(t):e.getImageURL(t)&&i.push(t)}),!i.length)return this;if(this.images=i,this.length=i.length,this.ready){var a=[];if(H(this.items,function(e,t){var n=e.querySelector(`img`),r=i[t];r&&n?(r.src!==n.src||r.alt!==n.alt)&&a.push(t):a.push(t)}),W(this.list,{width:`auto`}),this.initList(),this.isShown)if(this.length){if(this.viewed){var o=a.indexOf(this.index);if(o>=0)this.viewed=!1,this.view(Math.max(Math.min(this.index-o,this.length-1),0));else{var s=this.items[this.index];K(s,v),s.setAttribute(`aria-selected`,!0)}}}else this.image=null,this.viewed=!1,this.index=0,this.imageData={},this.canvas.innerHTML=``,this.title.innerHTML=``}else this.build();return this},destroy:function(){var e=this.element,t=this.options;return e[h]?(this.destroyed=!0,this.ready?(this.played&&this.stop(),t.inline?(this.fulled&&this.exit(),this.unbind()):this.isShown?(this.viewing&&(this.imageRendering?this.imageRendering.abort():this.imageInitializing&&this.imageInitializing.abort()),this.hiding&&this.transitioning.abort(),this.hidden()):this.showing&&(this.transitioning.abort(),this.hidden()),this.ready=!1,this.viewer.parentNode.removeChild(this.viewer)):t.inline&&(this.delaying?this.delaying.abort():this.initializing&&this.initializing.abort()),t.inline||X(e,O,this.onStart),e[h]=void 0,this):this}},nt={getImageURL:function(e){var t=this.options.url;return t=I(t)?e.getAttribute(t):V(t)?t.call(this,e):``,t},enforceFocus:function(){var e=this;this.clearEnforceFocus(),Z(document,ue,this.onFocusin=function(t){var n=e.viewer,r=t.target;if(!(r===document||r===n||n.contains(r))){for(;r;){if(r.getAttribute(`tabindex`)!==null||r.getAttribute(`aria-modal`)===`true`)return;r=r.parentElement}n.focus()}})},clearEnforceFocus:function(){this.onFocusin&&=(X(document,ue,this.onFocusin),null)},open:function(){var e=this.body;K(e,se),this.scrollbarWidth>0&&(e.style.paddingRight=`${this.scrollbarWidth+(parseFloat(this.initialBodyComputedPaddingRight)||0)}px`)},close:function(){var e=this.body;q(e,se),this.scrollbarWidth>0&&(e.style.paddingRight=this.initialBodyPaddingRight)},shown:function(){var e=this.element,t=this.options,n=this.viewer;this.fulled=!0,this.isShown=!0,this.render(),this.bind(),this.showing=!1,t.focus&&(n.focus(),this.enforceFocus()),V(t.shown)&&Z(e,xe,t.shown,{once:!0}),Q(e,xe)!==!1&&this.ready&&this.isShown&&!this.hiding&&this.view(this.index)},hidden:function(){var e=this.element,t=this.options,n=this.viewer;t.fucus&&this.clearEnforceFocus(),this.close(),this.unbind(),K(n,x),n.removeAttribute(`role`),n.removeAttribute(`aria-labelledby`),n.removeAttribute(`aria-modal`),n.setAttribute(`aria-hidden`,!0),this.resetList(),this.resetImage(),this.fulled=!1,this.viewed=!1,this.isShown=!1,this.hiding=!1,this.destroyed||(V(t.hidden)&&Z(e,Ce,t.hidden,{once:!0}),Q(e,Ce,null,{cancelable:!1}))},requestFullscreen:function(e){var t=this.element.ownerDocument;if(this.fulled&&!(t.fullscreenElement||t.webkitFullscreenElement||t.mozFullScreenElement||t.msFullscreenElement)){var n=t.documentElement;n.requestFullscreen?B(e)?n.requestFullscreen(e):n.requestFullscreen():n.webkitRequestFullscreen?n.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):n.mozRequestFullScreen?n.mozRequestFullScreen():n.msRequestFullscreen&&n.msRequestFullscreen()}},exitFullscreen:function(){var e=this.element.ownerDocument;this.fulled&&(e.fullscreenElement||e.webkitFullscreenElement||e.mozFullScreenElement||e.msFullscreenElement)&&(e.exitFullscreen?e.exitFullscreen():e.webkitExitFullscreen?e.webkitExitFullscreen():e.mozCancelFullScreen?e.mozCancelFullScreen():e.msExitFullscreen&&e.msExitFullscreen())},change:function(e){var t=this.options,n=this.pointers,r=n[Object.keys(n)[0]];if(r){var i=r.endX-r.startX,a=r.endY-r.startY;switch(this.action){case g:(i!==0||a!==0)&&(this.pointerMoved=!0,this.move(i,a,e));break;case _:this.zoom(Ye(n),!1,null,e);break;case ee:this.action=`switched`;var o=Math.abs(i);o>1&&o>Math.abs(a)&&(this.pointers={},i>1?this.prev(t.loop):i<-1&&this.next(t.loop));break}H(n,function(e){e.startX=e.endX,e.startY=e.endY})}},isSwitchable:function(){var e=this.imageData,t=this.viewerData;return this.length>1&&e.x>=0&&e.y>=0&&e.width<=t.width&&e.height<=t.height}},rt=f.Viewer,it=function(e){return function(){return e+=1,e}}(-1),at=function(){function t(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(e(this,t),!n||n.nodeType!==1)throw Error(`The first argument is required and must be an element.`);this.element=n,this.options=U({},l,B(r)&&r),this.action=!1,this.fading=!1,this.fulled=!1,this.hiding=!1,this.imageClicked=!1,this.imageData={},this.index=this.options.initialViewIndex,this.isImg=!1,this.isShown=!1,this.length=0,this.moving=!1,this.played=!1,this.playing=!1,this.pointers={},this.ready=!1,this.rotating=!1,this.scaling=!1,this.showing=!1,this.timeout=!1,this.tooltipping=!1,this.viewed=!1,this.viewing=!1,this.wheeling=!1,this.zooming=!1,this.pointerMoved=!1,this.id=it(),this.init()}return n(t,[{key:`init`,value:function(){var e=this,t=this.element,n=this.options;if(!t[h]){t[h]=this,n.focus&&!n.keyboard&&(n.focus=!1);var r=t.localName===`img`,i=[];if(H(r?[t]:t.querySelectorAll(`img`),function(t){V(n.filter)?n.filter.call(e,t)&&i.push(t):e.getImageURL(t)&&i.push(t)}),this.isImg=r,this.length=i.length,this.images=i,this.initBody(),R(document.createElement(h).style.transition)&&(n.transition=!1),n.inline){var a=0,o=function(){if(a+=1,a===e.length){var t;e.initializing=!1,e.delaying={abort:function(){clearTimeout(t)}},t=setTimeout(function(){e.delaying=!1,e.build()},0)}};this.initializing={abort:function(){H(i,function(e){e.complete||(X(e,k,o),X(e,A,o))})}},H(i,function(e){if(e.complete)o();else{var t,n;Z(e,k,t=function(){X(e,A,n),o()},{once:!0}),Z(e,A,n=function(){X(e,k,t),o()},{once:!0})}})}else Z(t,O,this.onStart=function(t){var r=t.target;r.localName===`img`&&(!V(n.filter)||n.filter.call(e,r))&&e.view(e.images.indexOf(r))})}}},{key:`build`,value:function(){if(!this.ready){var e=this.element,t=this.options,n=e.parentNode,r=document.createElement(`div`);r.innerHTML=u;var i=r.querySelector(`.${h}-container`),a=i.querySelector(`.${h}-title`),o=i.querySelector(`.${h}-toolbar`),s=i.querySelector(`.${h}-navbar`),c=i.querySelector(`.${h}-button`),l=i.querySelector(`.${h}-canvas`);if(this.parent=n,this.viewer=i,this.title=a,this.toolbar=o,this.navbar=s,this.button=c,this.canvas=l,this.footer=i.querySelector(`.${h}-footer`),this.tooltipBox=i.querySelector(`.${h}-tooltip`),this.player=i.querySelector(`.${h}-player`),this.list=i.querySelector(`.${h}-list`),i.id=`${h}${this.id}`,a.id=`${h}Title${this.id}`,K(a,t.title?Je(Array.isArray(t.title)?t.title[0]:t.title):x),K(s,t.navbar?Je(t.navbar):x),J(c,x,!t.button),t.keyboard&&c.setAttribute(`tabindex`,0),t.backdrop&&(K(i,`${h}-backdrop`),!t.inline&&t.backdrop!==`static`&&Ve(l,P,`hide`)),I(t.className)&&t.className&&t.className.split(Pe).forEach(function(e){K(i,e)}),t.toolbar){var d=document.createElement(`ul`),f=B(t.toolbar),p=F.slice(0,3),m=F.slice(7,9),g=F.slice(9);f||K(o,Je(t.toolbar)),H(f?t.toolbar:F,function(e,n){var r=f&&B(e),i=f?Be(n):e,a=r&&!R(e.show)?e.show:e;if(!(!a||!t.zoomable&&p.indexOf(i)!==-1||!t.rotatable&&m.indexOf(i)!==-1||!t.scalable&&g.indexOf(i)!==-1)){var o=r&&!R(e.size)?e.size:e,s=r&&!R(e.click)?e.click:e,c=document.createElement(`li`);t.keyboard&&c.setAttribute(`tabindex`,0),c.setAttribute(`role`,`button`),K(c,`${h}-${i}`),V(s)||Ve(c,P,i),L(a)&&K(c,Je(a)),[`small`,`large`].indexOf(o)===-1?i===`play`&&K(c,`${h}-large`):K(c,`${h}-${o}`),V(s)&&Z(c,O,s),d.appendChild(c)}}),o.appendChild(d)}else K(o,x);if(!t.rotatable){var ee=o.querySelectorAll(`li[class*="rotate"]`);K(ee,w),H(ee,function(e){o.appendChild(e)})}if(t.inline)K(c,ne),W(i,{zIndex:t.zIndexInline}),window.getComputedStyle(n).position===`static`&&W(n,{position:`relative`}),n.insertBefore(i,e.nextSibling);else{K(c,te),K(i,b),K(i,y),K(i,x),W(i,{zIndex:t.zIndex});var _=t.container;I(_)&&(_=e.ownerDocument.querySelector(_)),_||=this.body,_.appendChild(i)}if(t.inline&&(this.render(),this.bind(),this.isShown=!0),this.ready=!0,V(t.ready)&&Z(e,ye,t.ready,{once:!0}),Q(e,ye)===!1){this.ready=!1;return}this.ready&&t.inline&&this.view(this.index)}}}],[{key:`noConflict`,value:function(){return window.Viewer=rt,t}},{key:`setDefaults`,value:function(e){U(l,B(e)&&e)}}])}();return U(at.prototype,Qe,$e,et,tt,nt),at}))}))(),1),v=typeof global==`object`&&global&&global.Object===Object&&global,te=typeof self==`object`&&self&&self.Object===Object&&self,y=v||te||Function(`return this`)(),b=y.Symbol,ne=Object.prototype,re=ne.hasOwnProperty,x=ne.toString,S=b?b.toStringTag:void 0;function ie(e){var t=re.call(e,S),n=e[S];try{e[S]=void 0;var r=!0}catch{}var i=x.call(e);return r&&(t?e[S]=n:delete e[S]),i}var ae=Object.prototype.toString;function C(e){return ae.call(e)}var w=`[object Null]`,T=`[object Undefined]`,oe=b?b.toStringTag:void 0;function se(e){return e==null?e===void 0?T:w:oe&&oe in Object(e)?ie(e):C(e)}function E(e){return typeof e==`object`&&!!e}var D=Array.isArray;function O(e){var t=typeof e;return e!=null&&(t==`object`||t==`function`)}function ce(e){return e}var le=`[object AsyncFunction]`,ue=`[object Function]`,de=`[object GeneratorFunction]`,k=`[object Proxy]`;function A(e){if(!O(e))return!1;var t=se(e);return t==ue||t==de||t==le||t==k}var fe=y[`__core-js_shared__`],pe=function(){var e=/[^.]+$/.exec(fe&&fe.keys&&fe.keys.IE_PROTO||``);return e?`Symbol(src)_1.`+e:``}();function me(e){return!!pe&&pe in e}var he=Function.prototype.toString;function ge(e){if(e!=null){try{return he.call(e)}catch{}try{return e+``}catch{}}return``}var _e=/[\\^$.*+?()[\]{}|]/g,j=/^\[object .+?Constructor\]$/,ve=Function.prototype,ye=Object.prototype,be=ve.toString,xe=ye.hasOwnProperty,Se=RegExp(`^`+be.call(xe).replace(_e,`\\$&`).replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,`$1.*?`)+`$`);function Ce(e){return!O(e)||me(e)?!1:(A(e)?Se:j).test(ge(e))}function we(e,t){return e?.[t]}function M(e,t){var n=we(e,t);return Ce(n)?n:void 0}function Te(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}var Ee=800,De=16,Oe=Date.now;function ke(e){var t=0,n=0;return function(){var r=Oe(),i=De-(r-n);if(n=r,i>0){if(++t>=Ee)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function Ae(e){return function(){return e}}var N=function(){try{var e=M(Object,`defineProperty`);return e({},``,{}),e}catch{}}(),je=ke(N?function(e,t){return N(e,`toString`,{configurable:!0,enumerable:!1,value:Ae(t),writable:!0})}:ce),Me=9007199254740991,Ne=/^(?:0|[1-9]\d*)$/;function P(e,t){var n=typeof e;return t??=Me,!!t&&(n==`number`||n!=`symbol`&&Ne.test(e))&&e>-1&&e%1==0&&e<t}function Pe(e,t,n){t==`__proto__`&&N?N(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function F(e,t){return e===t||e!==e&&t!==t}var I=Object.prototype.hasOwnProperty;function Fe(e,t,n){var r=e[t];(!(I.call(e,t)&&F(r,n))||n===void 0&&!(t in e))&&Pe(e,t,n)}function L(e,t,n,r){var i=!n;n||={};for(var a=-1,o=t.length;++a<o;){var s=t[a],c=r?r(n[s],e[s],s,n,e):void 0;c===void 0&&(c=e[s]),i?Pe(n,s,c):Fe(n,s,c)}return n}var R=Math.max;function z(e,t,n){return t=R(t===void 0?e.length-1:t,0),function(){for(var r=arguments,i=-1,a=R(r.length-t,0),o=Array(a);++i<a;)o[i]=r[t+i];i=-1;for(var s=Array(t+1);++i<t;)s[i]=r[i];return s[t]=n(o),Te(e,this,s)}}function Ie(e,t){return je(z(e,t,ce),e+``)}var B=9007199254740991;function V(e){return typeof e==`number`&&e>-1&&e%1==0&&e<=B}function H(e){return e!=null&&V(e.length)&&!A(e)}function U(e,t,n){if(!O(n))return!1;var r=typeof t;return(r==`number`?H(n)&&P(t,n.length):r==`string`&&t in n)?F(n[t],e):!1}function Le(e){return Ie(function(t,n){var r=-1,i=n.length,a=i>1?n[i-1]:void 0,o=i>2?n[2]:void 0;for(a=e.length>3&&typeof a==`function`?(i--,a):void 0,o&&U(n[0],n[1],o)&&(a=i<3?void 0:a,i=1),t=Object(t);++r<i;){var s=n[r];s&&e(t,s,r,a)}return t})}var W=Object.prototype;function Re(e){var t=e&&e.constructor;return e===(typeof t==`function`&&t.prototype||W)}function G(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}var K=`[object Arguments]`;function q(e){return E(e)&&se(e)==K}var J=Object.prototype,ze=J.hasOwnProperty,Be=J.propertyIsEnumerable,Y=q(function(){return arguments}())?q:function(e){return E(e)&&ze.call(e,`callee`)&&!Be.call(e,`callee`)};function Ve(){return!1}var He=typeof exports==`object`&&exports&&!exports.nodeType&&exports,X=He&&typeof module==`object`&&module&&!module.nodeType&&module,Z=X&&X.exports===He?y.Buffer:void 0,Q=(Z?Z.isBuffer:void 0)||Ve,Ue=`[object Arguments]`,We=`[object Array]`,Ge=`[object Boolean]`,Ke=`[object Date]`,qe=`[object Error]`,Je=`[object Function]`,Ye=`[object Map]`,Xe=`[object Number]`,Ze=`[object Object]`,Qe=`[object RegExp]`,$e=`[object Set]`,et=`[object String]`,tt=`[object WeakMap]`,nt=`[object ArrayBuffer]`,rt=`[object DataView]`,it=`[object Float32Array]`,at=`[object Float64Array]`,ot=`[object Int8Array]`,st=`[object Int16Array]`,ct=`[object Int32Array]`,lt=`[object Uint8Array]`,ut=`[object Uint8ClampedArray]`,dt=`[object Uint16Array]`,ft=`[object Uint32Array]`,$={};$[it]=$[at]=$[ot]=$[st]=$[ct]=$[lt]=$[ut]=$[dt]=$[ft]=!0,$[Ue]=$[We]=$[nt]=$[Ge]=$[rt]=$[Ke]=$[qe]=$[Je]=$[Ye]=$[Xe]=$[Ze]=$[Qe]=$[$e]=$[et]=$[tt]=!1;function pt(e){return E(e)&&V(e.length)&&!!$[se(e)]}function mt(e){return function(t){return e(t)}}var ht=typeof exports==`object`&&exports&&!exports.nodeType&&exports,gt=ht&&typeof module==`object`&&module&&!module.nodeType&&module,_t=gt&&gt.exports===ht&&v.process,vt=function(){try{return gt&&gt.require&&gt.require(`util`).types||_t&&_t.binding&&_t.binding(`util`)}catch{}}(),yt=vt&&vt.isTypedArray,bt=yt?mt(yt):pt,xt=Object.prototype.hasOwnProperty;function St(e,t){var n=D(e),r=!n&&Y(e),i=!n&&!r&&Q(e),a=!n&&!r&&!i&&bt(e),o=n||r||i||a,s=o?G(e.length,String):[],c=s.length;for(var l in e)(t||xt.call(e,l))&&!(o&&(l==`length`||i&&(l==`offset`||l==`parent`)||a&&(l==`buffer`||l==`byteLength`||l==`byteOffset`)||P(l,c)))&&s.push(l);return s}function Ct(e,t){return function(n){return e(t(n))}}var wt=Ct(Object.keys,Object),Tt=Object.prototype.hasOwnProperty;function Et(e){if(!Re(e))return wt(e);var t=[];for(var n in Object(e))Tt.call(e,n)&&n!=`constructor`&&t.push(n);return t}function Dt(e){return H(e)?St(e):Et(e)}var Ot=Object.prototype.hasOwnProperty;Le(function(e,t){if(Re(t)||H(t)){L(t,Dt(t),e);return}for(var n in t)Ot.call(t,n)&&Fe(e,n,t[n])});function kt(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}var At=Object.prototype.hasOwnProperty;function jt(e){if(!O(e))return kt(e);var t=Re(e),n=[];for(var r in e)r==`constructor`&&(t||!At.call(e,r))||n.push(r);return n}function Mt(e){return H(e)?St(e,!0):jt(e)}var Nt=Object.prototype,Pt=Nt.hasOwnProperty;Ie(function(e,t){e=Object(e);var n=-1,r=t.length,i=r>2?t[2]:void 0;for(i&&U(t[0],t[1],i)&&(r=1);++n<r;)for(var a=t[n],o=Mt(a),s=-1,c=o.length;++s<c;){var l=o[s],u=e[l];(u===void 0||F(u,Nt[l])&&!Pt.call(e,l))&&(e[l]=a[l])}return e});var Ft=c({name:`Viewer`,props:{images:{type:Array,default:()=>[]},rebuild:{type:Boolean,default:!1},trigger:{type:Object,default:null},options:{type:Object,default:()=>null}},emits:[`inited`],setup(n,{emit:r}){let a,o=i();function c(){a=new _.default(o.value,n.options),r(`inited`,a)}function l(){a&&a.destroy()}function u(){l(),c()}function d(){a?(a.update(),r(`inited`,a)):c()}function f(){n.rebuild?u():d()}let m={deep:!0};return s(()=>n.images,()=>{t(()=>{f()})},m),s(()=>n.trigger,()=>{t(()=>{f()})},m),s(()=>n.options,()=>{t(()=>{u()})},m),p(()=>c()),e(()=>l()),{root:o,createViewer:c,rebuildViewer:u,updateViewer:d,destroyViewer:l}}}),It=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},Lt={ref:`root`};function Rt(e,t,n,r,i,a){return f(),h(`div`,Lt,[o(e.$slots,`default`,{images:e.images,options:e.options})],512)}var zt=It(Ft,[[`render`,Rt]]),Bt=[`src`],Vt=m(c({__name:`ImageViewer`,props:{image:{}},setup(e){let t=e,r=u(()=>t.image?[{src:t.image,index:0}]:[]);return(e,t)=>(f(),g(ee(zt),{images:r.value,style:{height:`100%`}},{default:n(()=>[(f(!0),h(d,null,a(r.value,e=>(f(),h(`img`,{alt:`图片`,src:e.src,key:e.index,class:`image`},null,8,Bt))),128))]),_:1},8,[`images`]))}}),[[`__scopeId`,`data-v-b0f61c51`]]);export{Vt as default};
@@ -1 +1 @@
1
- import{C as e,E as t,J as n,K as r}from"./three.module-CZIqdNh9.js";import{t as i}from"./fflate.module-BCuI6M8v.js";import{ColladaLoader as a}from"./ColladaLoader-Dz956C1E.js";var o=class extends r{constructor(e){super(e)}load(t,n,r,i){let a=this,o=new e(a.manager);o.setPath(a.path),o.setResponseType(`arraybuffer`),o.setRequestHeader(a.requestHeader),o.setWithCredentials(a.withCredentials),o.load(t,function(e){try{n(a.parse(e))}catch(e){i?i(e):console.error(e),a.manager.itemError(t)}},r,i)}parse(e){function r(e){for(let t in s)if(t.slice(-e.length)===e)return s[t]}let o=new n;o.setURLModifier(function(e){let t=r(e);if(t){console.log(`Loading`,e);let n=new Blob([t.buffer],{type:`application/octet-stream`});return URL.createObjectURL(n)}return e});let s=i(new Uint8Array(e));if(s[`doc.kml`]){let e=new DOMParser().parseFromString(new TextDecoder().decode(s[`doc.kml`]),`application/xml`).querySelector(`Placemark Model Link href`);if(e)return new a(o).parse(new TextDecoder().decode(s[e.textContent]))}else{console.warn(`KMZLoader: Missing doc.kml file.`);for(let e in s)if(e.split(`.`).pop().toLowerCase()===`dae`)return new a(o).parse(new TextDecoder().decode(s[e]))}return console.error(`KMZLoader: Couldn't find .dae file.`),{scene:new t}}};export{o as KMZLoader};
1
+ import{C as e,E as t,J as n,K as r}from"./three.module-DGhmpURB.js";import{t as i}from"./fflate.module-CnrP-VZU.js";import{ColladaLoader as a}from"./ColladaLoader-DLsqbaWZ.js";var o=class extends r{constructor(e){super(e)}load(t,n,r,i){let a=this,o=new e(a.manager);o.setPath(a.path),o.setResponseType(`arraybuffer`),o.setRequestHeader(a.requestHeader),o.setWithCredentials(a.withCredentials),o.load(t,function(e){try{n(a.parse(e))}catch(e){i?i(e):console.error(e),a.manager.itemError(t)}},r,i)}parse(e){function r(e){for(let t in s)if(t.slice(-e.length)===e)return s[t]}let o=new n;o.setURLModifier(function(e){let t=r(e);if(t){console.log(`Loading`,e);let n=new Blob([t.buffer],{type:`application/octet-stream`});return URL.createObjectURL(n)}return e});let s=i(new Uint8Array(e));if(s[`doc.kml`]){let e=new DOMParser().parseFromString(new TextDecoder().decode(s[`doc.kml`]),`application/xml`).querySelector(`Placemark Model Link href`);if(e)return new a(o).parse(new TextDecoder().decode(s[e.textContent]))}else{console.warn(`KMZLoader: Missing doc.kml file.`);for(let e in s)if(e.split(`.`).pop().toLowerCase()===`dae`)return new a(o).parse(new TextDecoder().decode(s[e]))}return console.error(`KMZLoader: Couldn't find .dae file.`),{scene:new t}}};export{o as KMZLoader};
@@ -1,4 +1,4 @@
1
- import{A as e,_ as t,b as n,g as r,l as i,w as a}from"./index-DP0aBxNP.js";function o(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var s=o();function c(e){s=e}var l={exec:()=>null};function u(e,t=``){let n=typeof e==`string`?e:e.source,r={replace:(e,t)=>{let i=typeof t==`string`?t:t.source;return i=i.replace(f.caret,`$1`),n=n.replace(e,i),r},getRegex:()=>new RegExp(n,t)};return r}var d=((e=``)=>{try{return!!RegExp(`(?<=1)(?<!1)`+e)}catch{return!1}})(),f={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,`i`),blockquoteBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}>`)},p=/^(?:[ \t]*(?:\n|$))+/,m=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,ee=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,h=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,te=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,g=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,_=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,v=u(_).replace(/bull/g,g).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,``).getRegex(),ne=u(_).replace(/bull/g,g).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),y=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,re=/^[^\n]+/,b=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,ie=u(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace(`label`,b).replace(`title`,/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),ae=u(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,g).getRegex(),x=`address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul`,S=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,oe=u(`^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))`,`i`).replace(`comment`,S).replace(`tag`,x).replace(`attribute`,/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),se=u(y).replace(`hr`,h).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,x).getRegex(),C={blockquote:u(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace(`paragraph`,se).getRegex(),code:m,def:ie,fences:ee,heading:te,hr:h,html:oe,lheading:v,list:ae,newline:p,paragraph:se,table:l,text:re},w=u(`^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)`).replace(`hr`,h).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`blockquote`,` {0,3}>`).replace(`code`,`(?: {4}| {0,3} )[^\\n]`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,x).getRegex(),ce={...C,lheading:ne,table:w,paragraph:u(y).replace(`hr`,h).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`table`,w).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,x).getRegex()},le={...C,html:u(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace(`comment`,S).replace(/tag/g,`(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b`).getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:l,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:u(y).replace(`hr`,h).replace(`heading`,` *#{1,6} *[^
1
+ import{T as e,_ as t,j as n,u as r,v as i,x as a}from"./index-Wv8YWT7J.js";function o(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var s=o();function c(e){s=e}var l={exec:()=>null};function u(e,t=``){let n=typeof e==`string`?e:e.source,r={replace:(e,t)=>{let i=typeof t==`string`?t:t.source;return i=i.replace(f.caret,`$1`),n=n.replace(e,i),r},getRegex:()=>new RegExp(n,t)};return r}var d=((e=``)=>{try{return!!RegExp(`(?<=1)(?<!1)`+e)}catch{return!1}})(),f={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,`i`),blockquoteBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}>`)},p=/^(?:[ \t]*(?:\n|$))+/,m=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,ee=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,h=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,te=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,g=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,_=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,v=u(_).replace(/bull/g,g).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,``).getRegex(),ne=u(_).replace(/bull/g,g).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),y=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,re=/^[^\n]+/,b=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,ie=u(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace(`label`,b).replace(`title`,/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),ae=u(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,g).getRegex(),x=`address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul`,S=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,oe=u(`^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))`,`i`).replace(`comment`,S).replace(`tag`,x).replace(`attribute`,/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),se=u(y).replace(`hr`,h).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,x).getRegex(),C={blockquote:u(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace(`paragraph`,se).getRegex(),code:m,def:ie,fences:ee,heading:te,hr:h,html:oe,lheading:v,list:ae,newline:p,paragraph:se,table:l,text:re},w=u(`^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)`).replace(`hr`,h).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`blockquote`,` {0,3}>`).replace(`code`,`(?: {4}| {0,3} )[^\\n]`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,x).getRegex(),ce={...C,lheading:ne,table:w,paragraph:u(y).replace(`hr`,h).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`table`,w).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,x).getRegex()},le={...C,html:u(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace(`comment`,S).replace(/tag/g,`(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b`).getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:l,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:u(y).replace(`hr`,h).replace(`heading`,` *#{1,6} *[^
2
2
  ]`).replace(`lheading`,v).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`|fences`,``).replace(`|list`,``).replace(`|html`,``).replace(`|tag`,``).getRegex()},ue=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,de=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,T=/^( {2,}|\\)\n(?!\s*$)/,fe=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,E=/[\p{P}\p{S}]/u,D=/[\s\p{P}\p{S}]/u,O=/[^\s\p{P}\p{S}]/u,pe=u(/^((?![*_])punctSpace)/,`u`).replace(/punctSpace/g,D).getRegex(),k=/(?!~)[\p{P}\p{S}]/u,me=/(?!~)[\s\p{P}\p{S}]/u,he=/(?:[^\s\p{P}\p{S}]|~)/u,ge=u(/link|precode-code|html/,`g`).replace(`link`,/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace(`precode-`,d?"(?<!`)()":"(^^|[^`])").replace(`code`,/(?<b>`+)[^`]+\k<b>(?!`)/).replace(`html`,/<(?! )[^<>]*?>/).getRegex(),A=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,_e=u(A,`u`).replace(/punct/g,E).getRegex(),ve=u(A,`u`).replace(/punct/g,k).getRegex(),j=`^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)`,ye=u(j,`gu`).replace(/notPunctSpace/g,O).replace(/punctSpace/g,D).replace(/punct/g,E).getRegex(),be=u(j,`gu`).replace(/notPunctSpace/g,he).replace(/punctSpace/g,me).replace(/punct/g,k).getRegex(),xe=u(`^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)`,`gu`).replace(/notPunctSpace/g,O).replace(/punctSpace/g,D).replace(/punct/g,E).getRegex(),Se=u(/^~~?(?:((?!~)punct)|[^\s~])/,`u`).replace(/punct/g,E).getRegex(),Ce=u(`^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)`,`gu`).replace(/notPunctSpace/g,O).replace(/punctSpace/g,D).replace(/punct/g,E).getRegex(),we=u(/\\(punct)/,`gu`).replace(/punct/g,E).getRegex(),Te=u(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace(`scheme`,/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace(`email`,/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Ee=u(S).replace(`(?:-->|$)`,`-->`).getRegex(),De=u(`^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>`).replace(`comment`,Ee).replace(`attribute`,/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),M=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,Oe=u(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace(`label`,M).replace(`href`,/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace(`title`,/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),N=u(/^!?\[(label)\]\[(ref)\]/).replace(`label`,M).replace(`ref`,b).getRegex(),P=u(/^!?\[(ref)\](?:\[\])?/).replace(`ref`,b).getRegex(),ke=u(`reflink|nolink(?!\\()`,`g`).replace(`reflink`,N).replace(`nolink`,P).getRegex(),F=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,I={_backpedal:l,anyPunctuation:we,autolink:Te,blockSkip:ge,br:T,code:de,del:l,delLDelim:l,delRDelim:l,emStrongLDelim:_e,emStrongRDelimAst:ye,emStrongRDelimUnd:xe,escape:ue,link:Oe,nolink:P,punctuation:pe,reflink:N,reflinkSearch:ke,tag:De,text:fe,url:l},Ae={...I,link:u(/^!?\[(label)\]\((.*?)\)/).replace(`label`,M).getRegex(),reflink:u(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace(`label`,M).getRegex()},L={...I,emStrongRDelimAst:be,emStrongLDelim:ve,delLDelim:Se,delRDelim:Ce,url:u(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace(`protocol`,F).replace(`email`,/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:u(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace(`protocol`,F).getRegex()},je={...L,br:u(T).replace(`{2,}`,`*`).getRegex(),text:u(L.text).replace(`\\b_`,`\\b_| {2,}\\n`).replace(/\{2,\}/g,`*`).getRegex()},R={normal:C,gfm:ce,pedantic:le},z={normal:I,gfm:L,breaks:je,pedantic:Ae},Me={"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`,"'":`&#39;`},B=e=>Me[e];function V(e,t){if(t){if(f.escapeTest.test(e))return e.replace(f.escapeReplace,B)}else if(f.escapeTestNoEncode.test(e))return e.replace(f.escapeReplaceNoEncode,B);return e}function H(e){try{e=encodeURI(e).replace(f.percentDecode,`%`)}catch{return null}return e}function U(e,t){let n=e.replace(f.findPipe,(e,t,n)=>{let r=!1,i=t;for(;--i>=0&&n[i]===`\\`;)r=!r;return r?`|`:` |`}).split(f.splitPipe),r=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),t)if(n.length>t)n.splice(t);else for(;n.length<t;)n.push(``);for(;r<n.length;r++)n[r]=n[r].trim().replace(f.slashPipe,`|`);return n}function W(e,t,n){let r=e.length;if(r===0)return``;let i=0;for(;i<r;){let a=e.charAt(r-i-1);if(a===t&&!n)i++;else if(a!==t&&n)i++;else break}return e.slice(0,r-i)}function G(e){let t=e.split(`
3
3
  `),n=t.length-1;for(;n>=0&&f.blankLine.test(t[n]);)n--;return t.length-n<=2?e:t.slice(0,n+1).join(`
4
4
  `)}function Ne(e,t){if(e.indexOf(t[1])===-1)return-1;let n=0;for(let r=0;r<e.length;r++)if(e[r]===`\\`)r++;else if(e[r]===t[0])n++;else if(e[r]===t[1]&&(n--,n<0))return r;return n>0?-2:-1}function Pe(e,t=0){let n=t,r=``;for(let t of e)if(t===` `){let e=4-n%4;r+=` `.repeat(e),n+=e}else r+=t,n++;return r}function Fe(e,t,n,r,i){let a=t.href,o=t.title||null,s=e[1].replace(i.other.outputLinkReplace,`$1`);r.state.inLink=!0;let c={type:e[0].charAt(0)===`!`?`image`:`link`,raw:n,href:a,title:o,text:s,tokens:r.inlineTokens(s)};return r.state.inLink=!1,c}function Ie(e,t,n){let r=e.match(n.other.indentCodeCompensation);if(r===null)return t;let i=r[1];return t.split(`
@@ -61,4 +61,4 @@ ${this.parser.parse(e)}</blockquote>
61
61
  ${e}</tr>
62
62
  `}tablecell(e){let t=this.parser.parseInline(e.tokens),n=e.header?`th`:`td`;return(e.align?`<${n} align="${e.align}">`:`<${n}>`)+t+`</${n}>
63
63
  `}strong({tokens:e}){return`<strong>${this.parser.parseInline(e)}</strong>`}em({tokens:e}){return`<em>${this.parser.parseInline(e)}</em>`}codespan({text:e}){return`<code>${V(e,!0)}</code>`}br(e){return`<br>`}del({tokens:e}){return`<del>${this.parser.parseInline(e)}</del>`}link({href:e,title:t,tokens:n}){let r=this.parser.parseInline(n),i=H(e);if(i===null)return r;e=i;let a=`<a href="`+e+`"`;return t&&(a+=` title="`+V(t)+`"`),a+=`>`+r+`</a>`,a}image({href:e,title:t,text:n,tokens:r}){r&&(n=this.parser.parseInline(r,this.parser.textRenderer));let i=H(e);if(i===null)return V(n);e=i;let a=`<img src="${e}" alt="${V(n)}"`;return t&&(a+=` title="${V(t)}"`),a+=`>`,a}text(e){return`tokens`in e&&e.tokens?this.parser.parseInline(e.tokens):`escaped`in e&&e.escaped?e.text:V(e.text)}},Y=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return``+e}image({text:e}){return``+e}br(){return``}checkbox({raw:e}){return e}},X=class e{options;renderer;textRenderer;constructor(e){this.options=e||s,this.options.renderer=this.options.renderer||new J,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new Y}static parse(t,n){return new e(n).parse(t)}static parseInline(t,n){return new e(n).parseInline(t)}parse(e){this.renderer.parser=this;let t=``;for(let n=0;n<e.length;n++){let r=e[n];if(this.options.extensions?.renderers?.[r.type]){let e=r,n=this.options.extensions.renderers[e.type].call({parser:this},e);if(n!==!1||![`space`,`hr`,`heading`,`code`,`table`,`blockquote`,`list`,`html`,`def`,`paragraph`,`text`].includes(e.type)){t+=n||``;continue}}let i=r;switch(i.type){case`space`:t+=this.renderer.space(i);break;case`hr`:t+=this.renderer.hr(i);break;case`heading`:t+=this.renderer.heading(i);break;case`code`:t+=this.renderer.code(i);break;case`table`:t+=this.renderer.table(i);break;case`blockquote`:t+=this.renderer.blockquote(i);break;case`list`:t+=this.renderer.list(i);break;case`checkbox`:t+=this.renderer.checkbox(i);break;case`html`:t+=this.renderer.html(i);break;case`def`:t+=this.renderer.def(i);break;case`paragraph`:t+=this.renderer.paragraph(i);break;case`text`:t+=this.renderer.text(i);break;default:{let e=`Token with "`+i.type+`" type was not found.`;if(this.options.silent)return console.error(e),``;throw Error(e)}}}return t}parseInline(e,t=this.renderer){this.renderer.parser=this;let n=``;for(let r=0;r<e.length;r++){let i=e[r];if(this.options.extensions?.renderers?.[i.type]){let e=this.options.extensions.renderers[i.type].call({parser:this},i);if(e!==!1||![`escape`,`html`,`link`,`image`,`strong`,`em`,`codespan`,`br`,`del`,`text`].includes(i.type)){n+=e||``;continue}}let a=i;switch(a.type){case`escape`:n+=t.text(a);break;case`html`:n+=t.html(a);break;case`link`:n+=t.link(a);break;case`image`:n+=t.image(a);break;case`checkbox`:n+=t.checkbox(a);break;case`strong`:n+=t.strong(a);break;case`em`:n+=t.em(a);break;case`codespan`:n+=t.codespan(a);break;case`br`:n+=t.br(a);break;case`del`:n+=t.del(a);break;case`text`:n+=t.text(a);break;default:{let e=`Token with "`+a.type+`" type was not found.`;if(this.options.silent)return console.error(e),``;throw Error(e)}}}return n}},Z=class{options;block;constructor(e){this.options=e||s}static passThroughHooks=new Set([`preprocess`,`postprocess`,`processAllTokens`,`emStrongMask`]);static passThroughHooksRespectAsync=new Set([`preprocess`,`postprocess`,`processAllTokens`]);preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}emStrongMask(e){return e}provideLexer(e=this.block){return e?q.lex:q.lexInline}provideParser(e=this.block){return e?X.parse:X.parseInline}},Q=new class{defaults=o();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=X;Renderer=J;TextRenderer=Y;Lexer=q;Tokenizer=K;Hooks=Z;constructor(...e){this.use(...e)}walkTokens(e,t){let n=[];for(let r of e)switch(n=n.concat(t.call(this,r)),r.type){case`table`:{let e=r;for(let r of e.header)n=n.concat(this.walkTokens(r.tokens,t));for(let r of e.rows)for(let e of r)n=n.concat(this.walkTokens(e.tokens,t));break}case`list`:{let e=r;n=n.concat(this.walkTokens(e.items,t));break}default:{let e=r;this.defaults.extensions?.childTokens?.[e.type]?this.defaults.extensions.childTokens[e.type].forEach(r=>{let i=e[r].flat(1/0);n=n.concat(this.walkTokens(i,t))}):e.tokens&&(n=n.concat(this.walkTokens(e.tokens,t)))}}return n}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(e=>{let n={...e};if(n.async=this.defaults.async||n.async||!1,e.extensions&&(e.extensions.forEach(e=>{if(!e.name)throw Error(`extension name required`);if(`renderer`in e){let n=t.renderers[e.name];n?t.renderers[e.name]=function(...t){let r=e.renderer.apply(this,t);return r===!1&&(r=n.apply(this,t)),r}:t.renderers[e.name]=e.renderer}if(`tokenizer`in e){if(!e.level||e.level!==`block`&&e.level!==`inline`)throw Error(`extension level must be 'block' or 'inline'`);let n=t[e.level];n?n.unshift(e.tokenizer):t[e.level]=[e.tokenizer],e.start&&(e.level===`block`?t.startBlock?t.startBlock.push(e.start):t.startBlock=[e.start]:e.level===`inline`&&(t.startInline?t.startInline.push(e.start):t.startInline=[e.start]))}`childTokens`in e&&e.childTokens&&(t.childTokens[e.name]=e.childTokens)}),n.extensions=t),e.renderer){let t=this.defaults.renderer||new J(this.defaults);for(let n in e.renderer){if(!(n in t))throw Error(`renderer '${n}' does not exist`);if([`options`,`parser`].includes(n))continue;let r=n,i=e.renderer[r],a=t[r];t[r]=(...e)=>{let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n||``}}n.renderer=t}if(e.tokenizer){let t=this.defaults.tokenizer||new K(this.defaults);for(let n in e.tokenizer){if(!(n in t))throw Error(`tokenizer '${n}' does not exist`);if([`options`,`rules`,`lexer`].includes(n))continue;let r=n,i=e.tokenizer[r],a=t[r];t[r]=(...e)=>{let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n}}n.tokenizer=t}if(e.hooks){let t=this.defaults.hooks||new Z;for(let n in e.hooks){if(!(n in t))throw Error(`hook '${n}' does not exist`);if([`options`,`block`].includes(n))continue;let r=n,i=e.hooks[r],a=t[r];Z.passThroughHooks.has(n)?t[r]=e=>{if(this.defaults.async&&Z.passThroughHooksRespectAsync.has(n))return(async()=>{let n=await i.call(t,e);return a.call(t,n)})();let r=i.call(t,e);return a.call(t,r)}:t[r]=(...e)=>{if(this.defaults.async)return(async()=>{let n=await i.apply(t,e);return n===!1&&(n=await a.apply(t,e)),n})();let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n}}n.hooks=t}if(e.walkTokens){let t=this.defaults.walkTokens,r=e.walkTokens;n.walkTokens=function(e){let n=[];return n.push(r.call(this,e)),t&&(n=n.concat(t.call(this,e))),n}}this.defaults={...this.defaults,...n}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return q.lex(e,t??this.defaults)}parser(e,t){return X.parse(e,t??this.defaults)}parseMarkdown(e){return(t,n)=>{let r={...n},i={...this.defaults,...r},a=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&r.async===!1)return a(Error(`marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise.`));if(typeof t>`u`||t===null)return a(Error(`marked(): input parameter is undefined or null`));if(typeof t!=`string`)return a(Error(`marked(): input parameter is of type `+Object.prototype.toString.call(t)+`, string expected`));if(i.hooks&&(i.hooks.options=i,i.hooks.block=e),i.async)return(async()=>{let n=i.hooks?await i.hooks.preprocess(t):t,r=await(i.hooks?await i.hooks.provideLexer(e):e?q.lex:q.lexInline)(n,i),a=i.hooks?await i.hooks.processAllTokens(r):r;i.walkTokens&&await Promise.all(this.walkTokens(a,i.walkTokens));let o=await(i.hooks?await i.hooks.provideParser(e):e?X.parse:X.parseInline)(a,i);return i.hooks?await i.hooks.postprocess(o):o})().catch(a);try{i.hooks&&(t=i.hooks.preprocess(t));let n=(i.hooks?i.hooks.provideLexer(e):e?q.lex:q.lexInline)(t,i);i.hooks&&(n=i.hooks.processAllTokens(n)),i.walkTokens&&this.walkTokens(n,i.walkTokens);let r=(i.hooks?i.hooks.provideParser(e):e?X.parse:X.parseInline)(n,i);return i.hooks&&(r=i.hooks.postprocess(r)),r}catch(e){return a(e)}}}onError(e,t){return n=>{if(n.message+=`
64
- Please report this to https://github.com/markedjs/marked.`,e){let e=`<p>An error occurred:</p><pre>`+V(n.message+``,!0)+`</pre>`;return t?Promise.resolve(e):e}if(t)return Promise.reject(n);throw n}}};function $(e,t){return Q.parse(e,t)}$.options=$.setOptions=function(e){return Q.setOptions(e),$.defaults=Q.defaults,c($.defaults),$},$.getDefaults=o,$.defaults=s,$.use=function(...e){return Q.use(...e),$.defaults=Q.defaults,c($.defaults),$},$.walkTokens=function(e,t){return Q.walkTokens(e,t)},$.parseInline=Q.parseInline,$.Parser=X,$.parser=X.parse,$.Renderer=J,$.TextRenderer=Y,$.Lexer=q,$.lexer=q.lex,$.Tokenizer=K,$.Hooks=Z,$.parse=$,$.options,$.setOptions,$.use,$.walkTokens,$.parseInline,X.parse,q.lex;var Le={class:`markdown-viewer`},Re=[`innerHTML`],ze=i(a({__name:`MarkdownViewer`,props:{data:{}},setup(i){let a=i,o=r(()=>$(a.data));return(r,i)=>(e(),n(`div`,Le,[t(`article`,{class:`markdown-body`,innerHTML:o.value},null,8,Re)]))}}),[[`__scopeId`,`data-v-4e44ce1e`]]);export{ze as default};
64
+ Please report this to https://github.com/markedjs/marked.`,e){let e=`<p>An error occurred:</p><pre>`+V(n.message+``,!0)+`</pre>`;return t?Promise.resolve(e):e}if(t)return Promise.reject(n);throw n}}};function $(e,t){return Q.parse(e,t)}$.options=$.setOptions=function(e){return Q.setOptions(e),$.defaults=Q.defaults,c($.defaults),$},$.getDefaults=o,$.defaults=s,$.use=function(...e){return Q.use(...e),$.defaults=Q.defaults,c($.defaults),$},$.walkTokens=function(e,t){return Q.walkTokens(e,t)},$.parseInline=Q.parseInline,$.Parser=X,$.parser=X.parse,$.Renderer=J,$.TextRenderer=Y,$.Lexer=q,$.lexer=q.lex,$.Tokenizer=K,$.Hooks=Z,$.parse=$,$.options,$.setOptions,$.use,$.walkTokens,$.parseInline,X.parse,q.lex;var Le={class:`markdown-viewer`},Re=[`innerHTML`],ze=r(e({__name:`MarkdownViewer`,props:{data:{}},setup(e){let r=e,o=t(()=>$(r.data));return(e,t)=>(n(),a(`div`,Le,[i(`article`,{class:`markdown-body`,innerHTML:o.value},null,8,Re)]))}}),[[`__scopeId`,`data-v-4e44ce1e`]]);export{ze as default};
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./GLTFLoader-tdpRj7x3.js","./three.module-DGhmpURB.js","./OBJLoader-CIcUmaIR.js","./STLLoader--ClWNq9A.js","./PLYLoader-CpoozyyG.js","./FBXLoader-CDJxWnMq.js","./fflate.module-CnrP-VZU.js","./ColladaLoader-DLsqbaWZ.js","./TDSLoader-Dat6-0hj.js","./3MFLoader-BLLnIDfF.js","./AMFLoader-Co6GFjGd.js","./USDLoader-D5bNRrcv.js","./KMZLoader-Co2u3IuK.js","./PCDLoader-Ckik2ZNQ.js","./VRMLLoader-Cc44JIu6.js","./XYZLoader-D0wrbuYP.js","./VTKLoader-B7r87HF1.js"])))=>i.map(i=>d[i]);
2
+ import{B as e,D as t,H as n,L as r,O as i,P as a,T as o,b as ee,j as s,k as te,t as c,u as l,v as u,x as d}from"./index-Wv8YWT7J.js";import{Bt as f,D as ne,It as p,Nt as m,T as re,Tt as ie,Y as h,Z as g,_t as ae,a as oe,at as se,et as _,g as v,gt as ce,i as y,jt as b,mt as x,p as le,pt as ue,s as S,t as de,wt as fe,x as C,xt as w,yt as T,zt as E}from"./three.module-DGhmpURB.js";var D={type:`change`},O={type:`start`},k={type:`end`},A=new w,j=new x,M=Math.cos(70*g.DEG2RAD),N=new f,P=2*Math.PI,F={NONE:-1,ROTATE:0,DOLLY:1,PAN:2,TOUCH_ROTATE:3,TOUCH_PAN:4,TOUCH_DOLLY_PAN:5,TOUCH_DOLLY_ROTATE:6},I=1e-6,pe=class extends v{constructor(e,t=null){super(e,t),this.state=F.NONE,this.target=new f,this.cursor=new f,this.minDistance=0,this.maxDistance=1/0,this.minZoom=0,this.maxZoom=1/0,this.minTargetRadius=0,this.maxTargetRadius=1/0,this.minPolarAngle=0,this.maxPolarAngle=Math.PI,this.minAzimuthAngle=-1/0,this.maxAzimuthAngle=1/0,this.enableDamping=!1,this.dampingFactor=.05,this.enableZoom=!0,this.zoomSpeed=1,this.enableRotate=!0,this.rotateSpeed=1,this.keyRotateSpeed=1,this.enablePan=!0,this.panSpeed=1,this.screenSpacePanning=!0,this.keyPanSpeed=7,this.zoomToCursor=!1,this.autoRotate=!1,this.autoRotateSpeed=2,this.keys={LEFT:`ArrowLeft`,UP:`ArrowUp`,RIGHT:`ArrowRight`,BOTTOM:`ArrowDown`},this.mouseButtons={LEFT:h.ROTATE,MIDDLE:h.DOLLY,RIGHT:h.PAN},this.touches={ONE:m.ROTATE,TWO:m.DOLLY_PAN},this.target0=this.target.clone(),this.position0=this.object.position.clone(),this.zoom0=this.object.zoom,this._cursorStyle=`auto`,this._domElementKeyEvents=null,this._lastPosition=new f,this._lastQuaternion=new T,this._lastTargetPosition=new f,this._quat=new T().setFromUnitVectors(e.up,new f(0,1,0)),this._quatInverse=this._quat.clone().invert(),this._spherical=new b,this._sphericalDelta=new b,this._scale=1,this._panOffset=new f,this._rotateStart=new E,this._rotateEnd=new E,this._rotateDelta=new E,this._panStart=new E,this._panEnd=new E,this._panDelta=new E,this._dollyStart=new E,this._dollyEnd=new E,this._dollyDelta=new E,this._dollyDirection=new f,this._mouse=new E,this._performCursorZoom=!1,this._pointers=[],this._pointerPositions={},this._controlActive=!1,this._onPointerMove=R.bind(this),this._onPointerDown=L.bind(this),this._onPointerUp=z.bind(this),this._onContextMenu=K.bind(this),this._onMouseWheel=H.bind(this),this._onKeyDown=U.bind(this),this._onTouchStart=W.bind(this),this._onTouchMove=G.bind(this),this._onMouseDown=B.bind(this),this._onMouseMove=V.bind(this),this._interceptControlDown=q.bind(this),this._interceptControlUp=J.bind(this),this.domElement!==null&&this.connect(this.domElement),this.update()}set cursorStyle(e){this._cursorStyle=e,e===`grab`?this.domElement.style.cursor=`grab`:this.domElement.style.cursor=`auto`}get cursorStyle(){return this._cursorStyle}connect(e){super.connect(e),this.domElement.addEventListener(`pointerdown`,this._onPointerDown),this.domElement.addEventListener(`pointercancel`,this._onPointerUp),this.domElement.addEventListener(`contextmenu`,this._onContextMenu),this.domElement.addEventListener(`wheel`,this._onMouseWheel,{passive:!1}),this.domElement.getRootNode().addEventListener(`keydown`,this._interceptControlDown,{passive:!0,capture:!0}),this.domElement.style.touchAction=`none`}disconnect(){this.domElement.removeEventListener(`pointerdown`,this._onPointerDown),this.domElement.ownerDocument.removeEventListener(`pointermove`,this._onPointerMove),this.domElement.ownerDocument.removeEventListener(`pointerup`,this._onPointerUp),this.domElement.removeEventListener(`pointercancel`,this._onPointerUp),this.domElement.removeEventListener(`wheel`,this._onMouseWheel),this.domElement.removeEventListener(`contextmenu`,this._onContextMenu),this.stopListenToKeyEvents(),this.domElement.getRootNode().removeEventListener(`keydown`,this._interceptControlDown,{capture:!0}),this.domElement.style.touchAction=``}dispose(){this.disconnect()}getPolarAngle(){return this._spherical.phi}getAzimuthalAngle(){return this._spherical.theta}getDistance(){return this.object.position.distanceTo(this.target)}listenToKeyEvents(e){e.addEventListener(`keydown`,this._onKeyDown),this._domElementKeyEvents=e}stopListenToKeyEvents(){this._domElementKeyEvents!==null&&(this._domElementKeyEvents.removeEventListener(`keydown`,this._onKeyDown),this._domElementKeyEvents=null)}saveState(){this.target0.copy(this.target),this.position0.copy(this.object.position),this.zoom0=this.object.zoom}reset(){this.target.copy(this.target0),this.object.position.copy(this.position0),this.object.zoom=this.zoom0,this.object.updateProjectionMatrix(),this.dispatchEvent(D),this.update(),this.state=F.NONE}pan(e,t){this._pan(e,t),this.update()}dollyIn(e){this._dollyIn(e),this.update()}dollyOut(e){this._dollyOut(e),this.update()}rotateLeft(e){this._rotateLeft(e),this.update()}rotateUp(e){this._rotateUp(e),this.update()}update(e=null){let t=this.object.position;N.copy(t).sub(this.target),N.applyQuaternion(this._quat),this._spherical.setFromVector3(N),this.autoRotate&&this.state===F.NONE&&this._rotateLeft(this._getAutoRotationAngle(e)),this.enableDamping?(this._spherical.theta+=this._sphericalDelta.theta*this.dampingFactor,this._spherical.phi+=this._sphericalDelta.phi*this.dampingFactor):(this._spherical.theta+=this._sphericalDelta.theta,this._spherical.phi+=this._sphericalDelta.phi);let n=this.minAzimuthAngle,r=this.maxAzimuthAngle;isFinite(n)&&isFinite(r)&&(n<-Math.PI?n+=P:n>Math.PI&&(n-=P),r<-Math.PI?r+=P:r>Math.PI&&(r-=P),n<=r?this._spherical.theta=Math.max(n,Math.min(r,this._spherical.theta)):this._spherical.theta=this._spherical.theta>(n+r)/2?Math.max(n,this._spherical.theta):Math.min(r,this._spherical.theta)),this._spherical.phi=Math.max(this.minPolarAngle,Math.min(this.maxPolarAngle,this._spherical.phi)),this._spherical.makeSafe(),this.enableDamping===!0?this.target.addScaledVector(this._panOffset,this.dampingFactor):this.target.add(this._panOffset),this.target.sub(this.cursor),this.target.clampLength(this.minTargetRadius,this.maxTargetRadius),this.target.add(this.cursor);let i=!1;if(this.zoomToCursor&&this._performCursorZoom||this.object.isOrthographicCamera)this._spherical.radius=this._clampDistance(this._spherical.radius);else{let e=this._spherical.radius;this._spherical.radius=this._clampDistance(this._spherical.radius*this._scale),i=e!=this._spherical.radius}if(N.setFromSpherical(this._spherical),N.applyQuaternion(this._quatInverse),t.copy(this.target).add(N),this.object.lookAt(this.target),this.enableDamping===!0?(this._sphericalDelta.theta*=1-this.dampingFactor,this._sphericalDelta.phi*=1-this.dampingFactor,this._panOffset.multiplyScalar(1-this.dampingFactor)):(this._sphericalDelta.set(0,0,0),this._panOffset.set(0,0,0)),this.zoomToCursor&&this._performCursorZoom){let e=null;if(this.object.isPerspectiveCamera){let t=N.length();e=this._clampDistance(t*this._scale);let n=t-e;this.object.position.addScaledVector(this._dollyDirection,n),this.object.updateMatrixWorld(),i=!!n}else if(this.object.isOrthographicCamera){let t=new f(this._mouse.x,this._mouse.y,0);t.unproject(this.object);let n=this.object.zoom;this.object.zoom=Math.max(this.minZoom,Math.min(this.maxZoom,this.object.zoom/this._scale)),this.object.updateProjectionMatrix(),i=n!==this.object.zoom;let r=new f(this._mouse.x,this._mouse.y,0);r.unproject(this.object),this.object.position.sub(r).add(t),this.object.updateMatrixWorld(),e=N.length()}else console.warn(`WARNING: OrbitControls.js encountered an unknown camera type - zoom to cursor disabled.`),this.zoomToCursor=!1;e!==null&&(this.screenSpacePanning?this.target.set(0,0,-1).transformDirection(this.object.matrix).multiplyScalar(e).add(this.object.position):(A.origin.copy(this.object.position),A.direction.set(0,0,-1).transformDirection(this.object.matrix),Math.abs(this.object.up.dot(A.direction))<M?this.object.lookAt(this.target):(j.setFromNormalAndCoplanarPoint(this.object.up,this.target),A.intersectPlane(j,this.target))))}else if(this.object.isOrthographicCamera){let e=this.object.zoom;this.object.zoom=Math.max(this.minZoom,Math.min(this.maxZoom,this.object.zoom/this._scale)),e!==this.object.zoom&&(this.object.updateProjectionMatrix(),i=!0)}return this._scale=1,this._performCursorZoom=!1,i||this._lastPosition.distanceToSquared(this.object.position)>I||8*(1-this._lastQuaternion.dot(this.object.quaternion))>I||this._lastTargetPosition.distanceToSquared(this.target)>I?(this.dispatchEvent(D),this._lastPosition.copy(this.object.position),this._lastQuaternion.copy(this.object.quaternion),this._lastTargetPosition.copy(this.target),!0):!1}_getAutoRotationAngle(e){return e===null?P/60/60*this.autoRotateSpeed:P/60*this.autoRotateSpeed*e}_getZoomScale(e){let t=Math.abs(e*.01);return .95**(this.zoomSpeed*t)}_rotateLeft(e){this._sphericalDelta.theta-=e}_rotateUp(e){this._sphericalDelta.phi-=e}_panLeft(e,t){N.setFromMatrixColumn(t,0),N.multiplyScalar(-e),this._panOffset.add(N)}_panUp(e,t){this.screenSpacePanning===!0?N.setFromMatrixColumn(t,1):(N.setFromMatrixColumn(t,0),N.crossVectors(this.object.up,N)),N.multiplyScalar(e),this._panOffset.add(N)}_pan(e,t){let n=this.domElement;if(this.object.isPerspectiveCamera){let r=this.object.position;N.copy(r).sub(this.target);let i=N.length();i*=Math.tan(this.object.fov/2*Math.PI/180),this._panLeft(2*e*i/n.clientHeight,this.object.matrix),this._panUp(2*t*i/n.clientHeight,this.object.matrix)}else this.object.isOrthographicCamera?(this._panLeft(e*(this.object.right-this.object.left)/this.object.zoom/n.clientWidth,this.object.matrix),this._panUp(t*(this.object.top-this.object.bottom)/this.object.zoom/n.clientHeight,this.object.matrix)):(console.warn(`WARNING: OrbitControls.js encountered an unknown camera type - pan disabled.`),this.enablePan=!1)}_dollyOut(e){this.object.isPerspectiveCamera||this.object.isOrthographicCamera?this._scale/=e:(console.warn(`WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled.`),this.enableZoom=!1)}_dollyIn(e){this.object.isPerspectiveCamera||this.object.isOrthographicCamera?this._scale*=e:(console.warn(`WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled.`),this.enableZoom=!1)}_updateZoomParameters(e,t){if(!this.zoomToCursor)return;this._performCursorZoom=!0;let n=this.domElement.getBoundingClientRect(),r=e-n.left,i=t-n.top,a=n.width,o=n.height;this._mouse.x=r/a*2-1,this._mouse.y=-(i/o)*2+1,this._dollyDirection.set(this._mouse.x,this._mouse.y,1).unproject(this.object).sub(this.object.position).normalize()}_clampDistance(e){return Math.max(this.minDistance,Math.min(this.maxDistance,e))}_handleMouseDownRotate(e){this._rotateStart.set(e.clientX,e.clientY)}_handleMouseDownDolly(e){this._updateZoomParameters(e.clientX,e.clientX),this._dollyStart.set(e.clientX,e.clientY)}_handleMouseDownPan(e){this._panStart.set(e.clientX,e.clientY)}_handleMouseMoveRotate(e){this._rotateEnd.set(e.clientX,e.clientY),this._rotateDelta.subVectors(this._rotateEnd,this._rotateStart).multiplyScalar(this.rotateSpeed);let t=this.domElement;this._rotateLeft(P*this._rotateDelta.x/t.clientHeight),this._rotateUp(P*this._rotateDelta.y/t.clientHeight),this._rotateStart.copy(this._rotateEnd),this.update()}_handleMouseMoveDolly(e){this._dollyEnd.set(e.clientX,e.clientY),this._dollyDelta.subVectors(this._dollyEnd,this._dollyStart),this._dollyDelta.y>0?this._dollyOut(this._getZoomScale(this._dollyDelta.y)):this._dollyDelta.y<0&&this._dollyIn(this._getZoomScale(this._dollyDelta.y)),this._dollyStart.copy(this._dollyEnd),this.update()}_handleMouseMovePan(e){this._panEnd.set(e.clientX,e.clientY),this._panDelta.subVectors(this._panEnd,this._panStart).multiplyScalar(this.panSpeed),this._pan(this._panDelta.x,this._panDelta.y),this._panStart.copy(this._panEnd),this.update()}_handleMouseWheel(e){this._updateZoomParameters(e.clientX,e.clientY),e.deltaY<0?this._dollyIn(this._getZoomScale(e.deltaY)):e.deltaY>0&&this._dollyOut(this._getZoomScale(e.deltaY)),this.update()}_handleKeyDown(e){let t=!1;switch(e.code){case this.keys.UP:e.ctrlKey||e.metaKey||e.shiftKey?this.enableRotate&&this._rotateUp(P*this.keyRotateSpeed/this.domElement.clientHeight):this.enablePan&&this._pan(0,this.keyPanSpeed),t=!0;break;case this.keys.BOTTOM:e.ctrlKey||e.metaKey||e.shiftKey?this.enableRotate&&this._rotateUp(-P*this.keyRotateSpeed/this.domElement.clientHeight):this.enablePan&&this._pan(0,-this.keyPanSpeed),t=!0;break;case this.keys.LEFT:e.ctrlKey||e.metaKey||e.shiftKey?this.enableRotate&&this._rotateLeft(P*this.keyRotateSpeed/this.domElement.clientHeight):this.enablePan&&this._pan(this.keyPanSpeed,0),t=!0;break;case this.keys.RIGHT:e.ctrlKey||e.metaKey||e.shiftKey?this.enableRotate&&this._rotateLeft(-P*this.keyRotateSpeed/this.domElement.clientHeight):this.enablePan&&this._pan(-this.keyPanSpeed,0),t=!0;break}t&&(e.preventDefault(),this.update())}_handleTouchStartRotate(e){if(this._pointers.length===1)this._rotateStart.set(e.pageX,e.pageY);else{let t=this._getSecondPointerPosition(e),n=.5*(e.pageX+t.x),r=.5*(e.pageY+t.y);this._rotateStart.set(n,r)}}_handleTouchStartPan(e){if(this._pointers.length===1)this._panStart.set(e.pageX,e.pageY);else{let t=this._getSecondPointerPosition(e),n=.5*(e.pageX+t.x),r=.5*(e.pageY+t.y);this._panStart.set(n,r)}}_handleTouchStartDolly(e){let t=this._getSecondPointerPosition(e),n=e.pageX-t.x,r=e.pageY-t.y,i=Math.sqrt(n*n+r*r);this._dollyStart.set(0,i)}_handleTouchStartDollyPan(e){this.enableZoom&&this._handleTouchStartDolly(e),this.enablePan&&this._handleTouchStartPan(e)}_handleTouchStartDollyRotate(e){this.enableZoom&&this._handleTouchStartDolly(e),this.enableRotate&&this._handleTouchStartRotate(e)}_handleTouchMoveRotate(e){if(this._pointers.length==1)this._rotateEnd.set(e.pageX,e.pageY);else{let t=this._getSecondPointerPosition(e),n=.5*(e.pageX+t.x),r=.5*(e.pageY+t.y);this._rotateEnd.set(n,r)}this._rotateDelta.subVectors(this._rotateEnd,this._rotateStart).multiplyScalar(this.rotateSpeed);let t=this.domElement;this._rotateLeft(P*this._rotateDelta.x/t.clientHeight),this._rotateUp(P*this._rotateDelta.y/t.clientHeight),this._rotateStart.copy(this._rotateEnd)}_handleTouchMovePan(e){if(this._pointers.length===1)this._panEnd.set(e.pageX,e.pageY);else{let t=this._getSecondPointerPosition(e),n=.5*(e.pageX+t.x),r=.5*(e.pageY+t.y);this._panEnd.set(n,r)}this._panDelta.subVectors(this._panEnd,this._panStart).multiplyScalar(this.panSpeed),this._pan(this._panDelta.x,this._panDelta.y),this._panStart.copy(this._panEnd)}_handleTouchMoveDolly(e){let t=this._getSecondPointerPosition(e),n=e.pageX-t.x,r=e.pageY-t.y,i=Math.sqrt(n*n+r*r);this._dollyEnd.set(0,i),this._dollyDelta.set(0,(this._dollyEnd.y/this._dollyStart.y)**+this.zoomSpeed),this._dollyOut(this._dollyDelta.y),this._dollyStart.copy(this._dollyEnd);let a=(e.pageX+t.x)*.5,o=(e.pageY+t.y)*.5;this._updateZoomParameters(a,o)}_handleTouchMoveDollyPan(e){this.enableZoom&&this._handleTouchMoveDolly(e),this.enablePan&&this._handleTouchMovePan(e)}_handleTouchMoveDollyRotate(e){this.enableZoom&&this._handleTouchMoveDolly(e),this.enableRotate&&this._handleTouchMoveRotate(e)}_addPointer(e){this._pointers.push(e.pointerId)}_removePointer(e){delete this._pointerPositions[e.pointerId];for(let t=0;t<this._pointers.length;t++)if(this._pointers[t]==e.pointerId){this._pointers.splice(t,1);return}}_isTrackingPointer(e){for(let t=0;t<this._pointers.length;t++)if(this._pointers[t]==e.pointerId)return!0;return!1}_trackPointer(e){let t=this._pointerPositions[e.pointerId];t===void 0&&(t=new E,this._pointerPositions[e.pointerId]=t),t.set(e.pageX,e.pageY)}_getSecondPointerPosition(e){let t=e.pointerId===this._pointers[0]?this._pointers[1]:this._pointers[0];return this._pointerPositions[t]}_customWheelEvent(e){let t=e.deltaMode,n={clientX:e.clientX,clientY:e.clientY,deltaY:e.deltaY};switch(t){case 1:n.deltaY*=16;break;case 2:n.deltaY*=100;break}return e.ctrlKey&&!this._controlActive&&(n.deltaY*=10),n}};function L(e){this.enabled!==!1&&(this._pointers.length===0&&(this.domElement.setPointerCapture(e.pointerId),this.domElement.ownerDocument.addEventListener(`pointermove`,this._onPointerMove),this.domElement.ownerDocument.addEventListener(`pointerup`,this._onPointerUp)),!this._isTrackingPointer(e)&&(this._addPointer(e),e.pointerType===`touch`?this._onTouchStart(e):this._onMouseDown(e),this._cursorStyle===`grab`&&(this.domElement.style.cursor=`grabbing`)))}function R(e){this.enabled!==!1&&(e.pointerType===`touch`?this._onTouchMove(e):this._onMouseMove(e))}function z(e){switch(this._removePointer(e),this._pointers.length){case 0:this.domElement.releasePointerCapture(e.pointerId),this.domElement.ownerDocument.removeEventListener(`pointermove`,this._onPointerMove),this.domElement.ownerDocument.removeEventListener(`pointerup`,this._onPointerUp),this.dispatchEvent(k),this.state=F.NONE,this._cursorStyle===`grab`&&(this.domElement.style.cursor=`grab`);break;case 1:let t=this._pointers[0],n=this._pointerPositions[t];this._onTouchStart({pointerId:t,pageX:n.x,pageY:n.y});break}}function B(e){let t;switch(e.button){case 0:t=this.mouseButtons.LEFT;break;case 1:t=this.mouseButtons.MIDDLE;break;case 2:t=this.mouseButtons.RIGHT;break;default:t=-1}switch(t){case h.DOLLY:if(this.enableZoom===!1)return;this._handleMouseDownDolly(e),this.state=F.DOLLY;break;case h.ROTATE:if(e.ctrlKey||e.metaKey||e.shiftKey){if(this.enablePan===!1)return;this._handleMouseDownPan(e),this.state=F.PAN}else{if(this.enableRotate===!1)return;this._handleMouseDownRotate(e),this.state=F.ROTATE}break;case h.PAN:if(e.ctrlKey||e.metaKey||e.shiftKey){if(this.enableRotate===!1)return;this._handleMouseDownRotate(e),this.state=F.ROTATE}else{if(this.enablePan===!1)return;this._handleMouseDownPan(e),this.state=F.PAN}break;default:this.state=F.NONE}this.state!==F.NONE&&this.dispatchEvent(O)}function V(e){switch(this.state){case F.ROTATE:if(this.enableRotate===!1)return;this._handleMouseMoveRotate(e);break;case F.DOLLY:if(this.enableZoom===!1)return;this._handleMouseMoveDolly(e);break;case F.PAN:if(this.enablePan===!1)return;this._handleMouseMovePan(e);break}}function H(e){this.enabled===!1||this.enableZoom===!1||this.state!==F.NONE||(e.preventDefault(),this.dispatchEvent(O),this._handleMouseWheel(this._customWheelEvent(e)),this.dispatchEvent(k))}function U(e){this.enabled!==!1&&this._handleKeyDown(e)}function W(e){switch(this._trackPointer(e),this._pointers.length){case 1:switch(this.touches.ONE){case m.ROTATE:if(this.enableRotate===!1)return;this._handleTouchStartRotate(e),this.state=F.TOUCH_ROTATE;break;case m.PAN:if(this.enablePan===!1)return;this._handleTouchStartPan(e),this.state=F.TOUCH_PAN;break;default:this.state=F.NONE}break;case 2:switch(this.touches.TWO){case m.DOLLY_PAN:if(this.enableZoom===!1&&this.enablePan===!1)return;this._handleTouchStartDollyPan(e),this.state=F.TOUCH_DOLLY_PAN;break;case m.DOLLY_ROTATE:if(this.enableZoom===!1&&this.enableRotate===!1)return;this._handleTouchStartDollyRotate(e),this.state=F.TOUCH_DOLLY_ROTATE;break;default:this.state=F.NONE}break;default:this.state=F.NONE}this.state!==F.NONE&&this.dispatchEvent(O)}function G(e){switch(this._trackPointer(e),this.state){case F.TOUCH_ROTATE:if(this.enableRotate===!1)return;this._handleTouchMoveRotate(e),this.update();break;case F.TOUCH_PAN:if(this.enablePan===!1)return;this._handleTouchMovePan(e),this.update();break;case F.TOUCH_DOLLY_PAN:if(this.enableZoom===!1&&this.enablePan===!1)return;this._handleTouchMoveDollyPan(e),this.update();break;case F.TOUCH_DOLLY_ROTATE:if(this.enableZoom===!1&&this.enableRotate===!1)return;this._handleTouchMoveDollyRotate(e),this.update();break;default:this.state=F.NONE}}function K(e){this.enabled!==!1&&e.preventDefault()}function q(e){e.key===`Control`&&(this._controlActive=!0,this.domElement.getRootNode().addEventListener(`keyup`,this._interceptControlUp,{passive:!0,capture:!0}))}function J(e){e.key===`Control`&&(this._controlActive=!1,this.domElement.getRootNode().removeEventListener(`keyup`,this._interceptControlUp,{passive:!0,capture:!0}))}var me={class:`model-viewer`},he={class:`model-toolbar`},ge={class:`model-actions`},_e={class:`model-meta`},ve={class:`model-stage`},ye={key:0,class:`model-state`},be={key:1,class:`model-state error`},Y=l(o({__name:`ModelViewer`,props:{data:{},type:{},sourceUrl:{}},setup(o){let l=o,m=r(null),h=r(`loading`),v=r(``),b=r(`正在加载模型`),x=r(!1),w=r(!1),T=r(!0),E=r(!0),D=null,O=null,k=null,A=null,j=null,M=null,N=null,P=null,F=0,I=0,L=null,R=new p,z=new TextDecoder(`utf-8`);class B extends Error{}let V=()=>l.type.toLowerCase(),H=()=>{if(!l.sourceUrl)return``;try{return new URL(`.`,l.sourceUrl).href}catch{let e=l.sourceUrl.split(/[?#]/)[0]||l.sourceUrl,t=e.lastIndexOf(`/`);return t>=0?e.slice(0,t+1):``}},U=e=>e instanceof Error?e.message:typeof e==`string`?e:JSON.stringify(e),W=()=>{let e=m.value;if(!e)return!1;if(D||(D=new de({antialias:!0,alpha:!1,canvas:e,powerPreference:`high-performance`}),D.setPixelRatio(Math.min(window.devicePixelRatio||1,2)),D.outputColorSpace=fe,D.setClearColor(16317180,1)),!O){O=new ie,O.background=new le(16317180);let e=new ne(16777215,14147304,2.4);O.add(e);let t=new C(16777215,2.2);t.position.set(8,10,8),O.add(t);let n=new C(16777215,.9);n.position.set(-7,5,-4),O.add(n),M=new re(10,10,13358561,14870768),O.add(M),N=new oe(3),O.add(N)}return k||(k=new ue(45,1,.01,1e5),k.position.set(5,4,6)),!A&&k&&D&&(A=new pe(k,D.domElement),A.enableDamping=!0,A.dampingFactor=.08,A.screenSpacePanning=!0,A.autoRotateSpeed=1.2),$(),Ue(),!0},G=e=>{(Array.isArray(e)?e:[e]).forEach(e=>e.dispose())},K=e=>{e.traverse(e=>{let t=e,n=e;t.geometry&&t.geometry.dispose(),t.material&&G(t.material),n.material&&G(n.material)})},q=()=>{j&&O&&(O.remove(j),K(j)),j=null,L=null},J=()=>z.decode(l.data),Y=async()=>{let{GLTFLoader:e}=await c(async()=>{let{GLTFLoader:e}=await import(`./GLTFLoader-tdpRj7x3.js`);return{GLTFLoader:e}},__vite__mapDeps([0,1]),import.meta.url),t=new e,n=H(),r=V()===`gltf`?J():l.data;return new Promise((e,i)=>{t.parse(r,n,t=>{t.animations?.length&&(L=new y(t.scene),t.animations.forEach(e=>L?.clipAction(e).play())),e(t.scene)},i)})},xe=async()=>{let{OBJLoader:e}=await c(async()=>{let{OBJLoader:e}=await import(`./OBJLoader-CIcUmaIR.js`);return{OBJLoader:e}},__vite__mapDeps([2,1]),import.meta.url);return new e().parse(J())},Se=async()=>{let{STLLoader:e}=await c(async()=>{let{STLLoader:e}=await import(`./STLLoader--ClWNq9A.js`);return{STLLoader:e}},__vite__mapDeps([3,1]),import.meta.url),t=new e().parse(l.data);return t.computeVertexNormals(),new _(t,X())},Ce=async()=>{let{PLYLoader:e}=await c(async()=>{let{PLYLoader:e}=await import(`./PLYLoader-CpoozyyG.js`);return{PLYLoader:e}},__vite__mapDeps([4,1]),import.meta.url),t=new e().parse(l.data);return t.computeVertexNormals(),new _(t,X())},we=async()=>{let{FBXLoader:e}=await c(async()=>{let{FBXLoader:e}=await import(`./FBXLoader-CDJxWnMq.js`);return{FBXLoader:e}},__vite__mapDeps([5,1,6]),import.meta.url),t=new e().parse(l.data,H());return t.animations?.length&&(L=new y(t),t.animations.forEach(e=>L?.clipAction(e).play())),t},Te=async()=>{let{ColladaLoader:e}=await c(async()=>{let{ColladaLoader:e}=await import(`./ColladaLoader-DLsqbaWZ.js`);return{ColladaLoader:e}},__vite__mapDeps([7,1]),import.meta.url);return new e().parse(J(),H()).scene},Ee=async()=>{let{TDSLoader:e}=await c(async()=>{let{TDSLoader:e}=await import(`./TDSLoader-Dat6-0hj.js`);return{TDSLoader:e}},__vite__mapDeps([8,1]),import.meta.url);return new e().parse(l.data,H())},De=async()=>{let{ThreeMFLoader:e}=await c(async()=>{let{ThreeMFLoader:e}=await import(`./3MFLoader-BLLnIDfF.js`);return{ThreeMFLoader:e}},__vite__mapDeps([9,1,6]),import.meta.url);return new e().parse(l.data)},Oe=async()=>{let{AMFLoader:e}=await c(async()=>{let{AMFLoader:e}=await import(`./AMFLoader-Co6GFjGd.js`);return{AMFLoader:e}},__vite__mapDeps([10,1,6]),import.meta.url);return new e().parse(l.data)},ke=async()=>{let{USDLoader:e}=await c(async()=>{let{USDLoader:e}=await import(`./USDLoader-D5bNRrcv.js`);return{USDLoader:e}},__vite__mapDeps([11,1,6]),import.meta.url);return new e().parse(l.data)},Ae=async()=>{let{KMZLoader:e}=await c(async()=>{let{KMZLoader:e}=await import(`./KMZLoader-Co2u3IuK.js`);return{KMZLoader:e}},__vite__mapDeps([12,1,6,7]),import.meta.url);return new e().parse(l.data).scene},je=e=>{let t=e.toUpperCase();throw e===`ifc`?new B(`IFC 是 BIM 模型格式,浏览器端完整解析通常依赖 web-ifc 这类 WebAssembly BIM 内核。当前 Apache-2.0 前端包不默认打入这类重型运行时,建议在私有服务端转换为 GLB/GLTF 后预览。`):e===`3dm`?new B(`3DM 是 Rhino/OpenNURBS 模型格式,浏览器端解析需要 rhino3dm WebAssembly 运行时。当前前端包未内置该运行时,建议在私有转换链路输出 GLB/GLTF 后预览。`):new B(`${t} 属于 CAD B-Rep / 工程交换格式,浏览器端完整解析通常需要 OpenCascade 等 WebAssembly 几何内核。当前前端包不默认打入这类重型运行时,建议在私有服务端转换为 GLB/GLTF 或轻量网格格式后预览。`)},Me=async()=>{let{PCDLoader:e}=await c(async()=>{let{PCDLoader:e}=await import(`./PCDLoader-Ckik2ZNQ.js`);return{PCDLoader:e}},__vite__mapDeps([13,1]),import.meta.url);return new e().parse(l.data,l.sourceUrl||`model.pcd`)},Ne=async()=>{let{VRMLLoader:e}=await c(async()=>{let{VRMLLoader:e}=await import(`./VRMLLoader-Cc44JIu6.js`);return{VRMLLoader:e}},__vite__mapDeps([14,1]),import.meta.url);return new e().parse(J(),H())},Pe=async()=>{let{XYZLoader:e}=await c(async()=>{let{XYZLoader:e}=await import(`./XYZLoader-D0wrbuYP.js`);return{XYZLoader:e}},__vite__mapDeps([15,1]),import.meta.url),t=new e().parse(J());return t.computeBoundingSphere(),new ce(t,Ie())},Fe=async()=>{let{VTKLoader:e}=await c(async()=>{let{VTKLoader:e}=await import(`./VTKLoader-B7r87HF1.js`);return{VTKLoader:e}},__vite__mapDeps([16,1,6]),import.meta.url),t=new e().parse(l.data);return t.computeVertexNormals(),new _(t,X())},X=()=>new se({color:5214138,metalness:.08,roughness:.78,side:2,wireframe:w.value}),Ie=()=>new ae({color:2062988,size:.035,sizeAttenuation:!0}),Z=e=>{e.traverse(e=>{let t=e;t.isMesh&&!t.material&&(t.material=X()),t.isMesh&&t.material&&(Array.isArray(t.material)?t.material:[t.material]).forEach(e=>{`wireframe`in e&&(e.wireframe=w.value),e.needsUpdate=!0})})},Le=e=>{let t=0,n=0;return e.traverse(e=>{e.isMesh&&(t+=1),e.isPoints&&(n+=1)}),{meshes:t,points:n}},Re=e=>{let{meshes:t,points:n}=Le(e),r=[];t&&r.push(`${t} 个网格`),n&&r.push(`${n} 个点云`),b.value=r.length?r.join(`,`):`模型已加载`},ze=e=>{let t=new S().setFromObject(e);if(t.isEmpty())return{center:new f,size:new f(4,4,4)};let n=t.getCenter(new f),r=t.getSize(new f);return e.position.sub(n),{center:new f,size:r}},Q=()=>{if(!j||!k||!A)return;let e=new S().setFromObject(j),t=e.getSize(new f),n=e.getCenter(new f),r=Math.max(t.x,t.y,t.z,1)/(2*Math.tan(g.degToRad(k.fov/2)))*1.65;k.near=Math.max(r/1e3,.01),k.far=Math.max(r*1e3,1e3),k.position.copy(n).add(new f(r,r*.62,r)),k.updateProjectionMatrix(),A.target.copy(n),A.update()},Be=async e=>{if(!O)return;q(),Z(e);let{size:t}=ze(e);j=e,O.add(e),Q(),Re(e);let n=Math.max(t.x,t.y,t.z,1);M&&M.scale.setScalar(Math.max(n/10,1))},Ve=async()=>{let e=++I;if(h.value=`loading`,v.value=``,b.value=`正在加载模型`,W())try{let n=await He(V());if(e!==I){K(n);return}await t(),await Be(n),h.value=`ready`}catch(t){if(e!==I)return;t instanceof B||console.error(t),h.value=`error`,v.value=U(t)||`${l.type.toUpperCase()} 模型解析失败`}},He=e=>{switch(e){case`glb`:case`gltf`:return Y();case`obj`:return xe();case`stl`:return Se();case`ply`:return Ce();case`fbx`:return we();case`dae`:return Te();case`3ds`:return Ee();case`3mf`:return De();case`amf`:return Oe();case`usd`:case`usda`:case`usdc`:case`usdz`:return ke();case`kmz`:return Ae();case`step`:case`stp`:case`iges`:case`igs`:case`ifc`:case`3dm`:return je(e);case`pcd`:return Me();case`wrl`:case`vrml`:return Ne();case`xyz`:return Pe();case`vtk`:case`vtp`:return Fe();default:throw Error(`暂不支持 .${e} 模型格式`)}},Ue=()=>{let e=m.value;if(!e||!D||!k)return;let t=e.getBoundingClientRect(),n=Math.max(1,Math.floor(t.width)),r=Math.max(1,Math.floor(t.height));D.setSize(n,r,!1),k.aspect=n/r,k.updateProjectionMatrix()},We=e=>{if(!D||!O||!k||!A)return;A.autoRotate=x.value,A.update(),R.update(e);let t=R.getDelta();L?.update(t),D.render(O,k),F=requestAnimationFrame(We)},Ge=()=>{j&&Z(j)},$=()=>{M&&(M.visible=T.value),N&&(N.visible=E.value)},Ke=()=>{w.value=!w.value,Ge()},qe=()=>{T.value=!T.value,$()},Je=()=>{E.value=!E.value,$()};return te(()=>{W()&&(R.connect(document),P=new ResizeObserver(Ue),m.value&&P.observe(m.value),We(),Ve())}),i(()=>{I+=1,cancelAnimationFrame(F),P?.disconnect(),P=null,q(),A?.dispose(),A=null,D?.dispose(),D=null,R.dispose(),R=new p,O=null,k=null,M=null,N=null}),a(()=>[l.data,l.type,l.sourceUrl],()=>{Ve()}),(t,r)=>(s(),d(`div`,me,[u(`div`,he,[u(`div`,ge,[u(`button`,{type:`button`,onClick:Q},`适配`),u(`button`,{type:`button`,class:e({active:x.value}),onClick:r[0]||=e=>x.value=!x.value},`旋转`,2),u(`button`,{type:`button`,class:e({active:w.value}),onClick:Ke},`线框`,2),u(`button`,{type:`button`,class:e({active:T.value}),onClick:qe},`网格`,2),u(`button`,{type:`button`,class:e({active:E.value}),onClick:Je},`坐标`,2)]),u(`div`,_e,[u(`strong`,null,n(o.type.toUpperCase()),1),u(`span`,null,n(b.value),1)])]),u(`div`,ve,[u(`canvas`,{ref_key:`canvas`,ref:m},null,512),h.value===`loading`?(s(),d(`div`,ye,`正在解析 3D 模型...`)):h.value===`error`?(s(),d(`div`,be,[r[1]||=u(`strong`,null,`模型解析失败`,-1),u(`span`,null,n(v.value),1)])):ee(``,!0)])]))}}),[[`__scopeId`,`data-v-9d2e23df`]]);export{Y as default};
@@ -1,4 +1,4 @@
1
- import{Bt as e,C as t,E as n,K as r,V as i,X as a,_t as o,et as s,gt as c,p as l,rt as u,u as d,w as f,wt as p,z as m}from"./three.module-CZIqdNh9.js";var h=/^[og]\s*(.+)?/,g=/^mtllib /,_=/^usemtl /,v=/^usemap /,y=/\s+/,b=new e,x=new e,S=new e,C=new e,w=new e,T=new l;function E(){let e={objects:[],object:{},vertices:[],normals:[],colors:[],uvs:[],materials:{},materialLibraries:[],startObject:function(e,t){if(this.object&&this.object.fromDeclaration===!1){this.object.name=e,this.object.fromDeclaration=t!==!1;return}let n=this.object&&typeof this.object.currentMaterial==`function`?this.object.currentMaterial():void 0;if(this.object&&typeof this.object._finalize==`function`&&this.object._finalize(!0),this.object={name:e||``,fromDeclaration:t!==!1,geometry:{vertices:[],normals:[],colors:[],uvs:[],hasUVIndices:!1},materials:[],smooth:!0,startMaterial:function(e,t){let n=this._finalize(!1);n&&(n.inherited||n.groupCount<=0)&&this.materials.splice(n.index,1);let r={index:this.materials.length,name:e||``,mtllib:Array.isArray(t)&&t.length>0?t[t.length-1]:``,smooth:n===void 0?this.smooth:n.smooth,groupStart:n===void 0?0:n.groupEnd,groupEnd:-1,groupCount:-1,inherited:!1,clone:function(e){let t={index:typeof e==`number`?e:this.index,name:this.name,mtllib:this.mtllib,smooth:this.smooth,groupStart:0,groupEnd:-1,groupCount:-1,inherited:!1};return t.clone=this.clone.bind(t),t}};return this.materials.push(r),r},currentMaterial:function(){if(this.materials.length>0)return this.materials[this.materials.length-1]},_finalize:function(e){let t=this.currentMaterial();if(t&&t.groupEnd===-1&&(t.groupEnd=this.geometry.vertices.length/3,t.groupCount=t.groupEnd-t.groupStart,t.inherited=!1),e&&this.materials.length>1)for(let e=this.materials.length-1;e>=0;e--)this.materials[e].groupCount<=0&&this.materials.splice(e,1);return e&&this.materials.length===0&&this.materials.push({name:``,smooth:this.smooth}),t}},n&&n.name&&typeof n.clone==`function`){let e=n.clone(0);e.inherited=!0,this.object.materials.push(e)}this.objects.push(this.object)},finalize:function(){this.object&&typeof this.object._finalize==`function`&&this.object._finalize(!0)},parseVertexIndex:function(e,t){let n=parseInt(e,10);return(n>=0?n-1:n+t/3)*3},parseNormalIndex:function(e,t){let n=parseInt(e,10);return(n>=0?n-1:n+t/3)*3},parseUVIndex:function(e,t){let n=parseInt(e,10);return(n>=0?n-1:n+t/2)*2},addVertex:function(e,t,n){let r=this.vertices,i=this.object.geometry.vertices;i.push(r[e+0],r[e+1],r[e+2]),i.push(r[t+0],r[t+1],r[t+2]),i.push(r[n+0],r[n+1],r[n+2])},addVertexPoint:function(e){let t=this.vertices;this.object.geometry.vertices.push(t[e+0],t[e+1],t[e+2])},addVertexLine:function(e){let t=this.vertices;this.object.geometry.vertices.push(t[e+0],t[e+1],t[e+2])},addNormal:function(e,t,n){let r=this.normals,i=this.object.geometry.normals;i.push(r[e+0],r[e+1],r[e+2]),i.push(r[t+0],r[t+1],r[t+2]),i.push(r[n+0],r[n+1],r[n+2])},addFaceNormal:function(e,t,n){let r=this.vertices,i=this.object.geometry.normals;b.fromArray(r,e),x.fromArray(r,t),S.fromArray(r,n),w.subVectors(S,x),C.subVectors(b,x),w.cross(C),w.normalize(),i.push(w.x,w.y,w.z),i.push(w.x,w.y,w.z),i.push(w.x,w.y,w.z)},addColor:function(e,t,n){let r=this.colors,i=this.object.geometry.colors;r[e]!==void 0&&i.push(r[e+0],r[e+1],r[e+2]),r[t]!==void 0&&i.push(r[t+0],r[t+1],r[t+2]),r[n]!==void 0&&i.push(r[n+0],r[n+1],r[n+2])},addUV:function(e,t,n){let r=this.uvs,i=this.object.geometry.uvs;i.push(r[e+0],r[e+1]),i.push(r[t+0],r[t+1]),i.push(r[n+0],r[n+1])},addDefaultUV:function(){let e=this.object.geometry.uvs;e.push(0,0),e.push(0,0),e.push(0,0)},addUVLine:function(e){let t=this.uvs;this.object.geometry.uvs.push(t[e+0],t[e+1])},addFace:function(e,t,n,r,i,a,o,s,c){let l=this.vertices.length,u=this.parseVertexIndex(e,l),d=this.parseVertexIndex(t,l),f=this.parseVertexIndex(n,l);if(this.addVertex(u,d,f),this.addColor(u,d,f),o!==void 0&&o!==``){let e=this.normals.length;u=this.parseNormalIndex(o,e),d=this.parseNormalIndex(s,e),f=this.parseNormalIndex(c,e),this.addNormal(u,d,f)}else this.addFaceNormal(u,d,f);if(r!==void 0&&r!==``){let e=this.uvs.length;u=this.parseUVIndex(r,e),d=this.parseUVIndex(i,e),f=this.parseUVIndex(a,e),this.addUV(u,d,f),this.object.geometry.hasUVIndices=!0}else this.addDefaultUV()},addPointGeometry:function(e){this.object.geometry.type=`Points`;let t=this.vertices.length;for(let n=0,r=e.length;n<r;n++){let r=this.parseVertexIndex(e[n],t);this.addVertexPoint(r),this.addColor(r)}},addLineGeometry:function(e,t){this.object.geometry.type=`Line`;let n=this.vertices.length,r=this.uvs.length;for(let t=0,r=e.length;t<r;t++)this.addVertexLine(this.parseVertexIndex(e[t],n));for(let e=0,n=t.length;e<n;e++)this.addUVLine(this.parseUVIndex(t[e],r))}};return e.startObject(``,!1),e}var D=class extends r{constructor(e){super(e),this.materials=null}load(e,n,r,i){let a=this,o=new t(this.manager);o.setPath(this.path),o.setRequestHeader(this.requestHeader),o.setWithCredentials(this.withCredentials),o.load(e,function(t){try{n(a.parse(t))}catch(t){i?i(t):console.error(t),a.manager.itemError(e)}},r,i)}setMaterials(e){return this.materials=e,this}parse(e){let t=new E;e.indexOf(`\r
1
+ import{Bt as e,C as t,E as n,K as r,V as i,X as a,_t as o,et as s,gt as c,p as l,rt as u,u as d,w as f,wt as p,z as m}from"./three.module-DGhmpURB.js";var h=/^[og]\s*(.+)?/,g=/^mtllib /,_=/^usemtl /,v=/^usemap /,y=/\s+/,b=new e,x=new e,S=new e,C=new e,w=new e,T=new l;function E(){let e={objects:[],object:{},vertices:[],normals:[],colors:[],uvs:[],materials:{},materialLibraries:[],startObject:function(e,t){if(this.object&&this.object.fromDeclaration===!1){this.object.name=e,this.object.fromDeclaration=t!==!1;return}let n=this.object&&typeof this.object.currentMaterial==`function`?this.object.currentMaterial():void 0;if(this.object&&typeof this.object._finalize==`function`&&this.object._finalize(!0),this.object={name:e||``,fromDeclaration:t!==!1,geometry:{vertices:[],normals:[],colors:[],uvs:[],hasUVIndices:!1},materials:[],smooth:!0,startMaterial:function(e,t){let n=this._finalize(!1);n&&(n.inherited||n.groupCount<=0)&&this.materials.splice(n.index,1);let r={index:this.materials.length,name:e||``,mtllib:Array.isArray(t)&&t.length>0?t[t.length-1]:``,smooth:n===void 0?this.smooth:n.smooth,groupStart:n===void 0?0:n.groupEnd,groupEnd:-1,groupCount:-1,inherited:!1,clone:function(e){let t={index:typeof e==`number`?e:this.index,name:this.name,mtllib:this.mtllib,smooth:this.smooth,groupStart:0,groupEnd:-1,groupCount:-1,inherited:!1};return t.clone=this.clone.bind(t),t}};return this.materials.push(r),r},currentMaterial:function(){if(this.materials.length>0)return this.materials[this.materials.length-1]},_finalize:function(e){let t=this.currentMaterial();if(t&&t.groupEnd===-1&&(t.groupEnd=this.geometry.vertices.length/3,t.groupCount=t.groupEnd-t.groupStart,t.inherited=!1),e&&this.materials.length>1)for(let e=this.materials.length-1;e>=0;e--)this.materials[e].groupCount<=0&&this.materials.splice(e,1);return e&&this.materials.length===0&&this.materials.push({name:``,smooth:this.smooth}),t}},n&&n.name&&typeof n.clone==`function`){let e=n.clone(0);e.inherited=!0,this.object.materials.push(e)}this.objects.push(this.object)},finalize:function(){this.object&&typeof this.object._finalize==`function`&&this.object._finalize(!0)},parseVertexIndex:function(e,t){let n=parseInt(e,10);return(n>=0?n-1:n+t/3)*3},parseNormalIndex:function(e,t){let n=parseInt(e,10);return(n>=0?n-1:n+t/3)*3},parseUVIndex:function(e,t){let n=parseInt(e,10);return(n>=0?n-1:n+t/2)*2},addVertex:function(e,t,n){let r=this.vertices,i=this.object.geometry.vertices;i.push(r[e+0],r[e+1],r[e+2]),i.push(r[t+0],r[t+1],r[t+2]),i.push(r[n+0],r[n+1],r[n+2])},addVertexPoint:function(e){let t=this.vertices;this.object.geometry.vertices.push(t[e+0],t[e+1],t[e+2])},addVertexLine:function(e){let t=this.vertices;this.object.geometry.vertices.push(t[e+0],t[e+1],t[e+2])},addNormal:function(e,t,n){let r=this.normals,i=this.object.geometry.normals;i.push(r[e+0],r[e+1],r[e+2]),i.push(r[t+0],r[t+1],r[t+2]),i.push(r[n+0],r[n+1],r[n+2])},addFaceNormal:function(e,t,n){let r=this.vertices,i=this.object.geometry.normals;b.fromArray(r,e),x.fromArray(r,t),S.fromArray(r,n),w.subVectors(S,x),C.subVectors(b,x),w.cross(C),w.normalize(),i.push(w.x,w.y,w.z),i.push(w.x,w.y,w.z),i.push(w.x,w.y,w.z)},addColor:function(e,t,n){let r=this.colors,i=this.object.geometry.colors;r[e]!==void 0&&i.push(r[e+0],r[e+1],r[e+2]),r[t]!==void 0&&i.push(r[t+0],r[t+1],r[t+2]),r[n]!==void 0&&i.push(r[n+0],r[n+1],r[n+2])},addUV:function(e,t,n){let r=this.uvs,i=this.object.geometry.uvs;i.push(r[e+0],r[e+1]),i.push(r[t+0],r[t+1]),i.push(r[n+0],r[n+1])},addDefaultUV:function(){let e=this.object.geometry.uvs;e.push(0,0),e.push(0,0),e.push(0,0)},addUVLine:function(e){let t=this.uvs;this.object.geometry.uvs.push(t[e+0],t[e+1])},addFace:function(e,t,n,r,i,a,o,s,c){let l=this.vertices.length,u=this.parseVertexIndex(e,l),d=this.parseVertexIndex(t,l),f=this.parseVertexIndex(n,l);if(this.addVertex(u,d,f),this.addColor(u,d,f),o!==void 0&&o!==``){let e=this.normals.length;u=this.parseNormalIndex(o,e),d=this.parseNormalIndex(s,e),f=this.parseNormalIndex(c,e),this.addNormal(u,d,f)}else this.addFaceNormal(u,d,f);if(r!==void 0&&r!==``){let e=this.uvs.length;u=this.parseUVIndex(r,e),d=this.parseUVIndex(i,e),f=this.parseUVIndex(a,e),this.addUV(u,d,f),this.object.geometry.hasUVIndices=!0}else this.addDefaultUV()},addPointGeometry:function(e){this.object.geometry.type=`Points`;let t=this.vertices.length;for(let n=0,r=e.length;n<r;n++){let r=this.parseVertexIndex(e[n],t);this.addVertexPoint(r),this.addColor(r)}},addLineGeometry:function(e,t){this.object.geometry.type=`Line`;let n=this.vertices.length,r=this.uvs.length;for(let t=0,r=e.length;t<r;t++)this.addVertexLine(this.parseVertexIndex(e[t],n));for(let e=0,n=t.length;e<n;e++)this.addUVLine(this.parseUVIndex(t[e],r))}};return e.startObject(``,!1),e}var D=class extends r{constructor(e){super(e),this.materials=null}load(e,n,r,i){let a=this,o=new t(this.manager);o.setPath(this.path),o.setRequestHeader(this.requestHeader),o.setWithCredentials(this.withCredentials),o.load(e,function(t){try{n(a.parse(t))}catch(t){i?i(t):console.error(t),a.manager.itemError(e)}},r,i)}setMaterials(e){return this.materials=e,this}parse(e){let t=new E;e.indexOf(`\r
2
2
  `)!==-1&&(e=e.replace(/\r\n/g,`
3
3
  `)),e.indexOf(`\\
4
4
  `)!==-1&&(e=e.replace(/\\\n/g,``));let r=e.split(`
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./ofd-BxyAgdTZ.js","./index-Wv8YWT7J.js","./index-Da-_mMtb.css","./jszip.min-2KGdI7OW.js"])))=>i.map(i=>d[i]);
2
+ import{D as e,H as t,L as n,O as r,T as i,b as a,j as o,k as s,t as c,u as l,v as u,x as d}from"./index-Wv8YWT7J.js";var f={key:0,class:`ofd-state`},p={key:1,class:`ofd-state error`},m=l(i({__name:`OfdViewer`,props:{data:{}},setup(i){let l=i,m=n(null),h=n(null),g=n(`loading`),_=n(``),v=!1,y=0,b=null,x=0,S=0,C=null,w=()=>{let e=m.value;if(e)for(;e.firstChild;)e.removeChild(e.firstChild)},T=e=>new Promise((t,n)=>{e.parseOfdDocument({ofd:l.data,success:e=>t(e),fail:e=>n(e)})}),E=async e=>(C||=T(e).then(e=>{let t=e[0];if(!t)throw Error(`OFD 文件中没有可渲染的文档`);return t}),C),D=e=>e instanceof Error?e.message:typeof e==`string`?e:JSON.stringify(e),O=(e,t)=>{let n=document.createDocumentFragment();t.forEach(e=>{e.classList.add(`ofd-page`),n.appendChild(e)}),e.appendChild(n)},k=()=>{let e=h.value?.getBoundingClientRect().width||m.value?.getBoundingClientRect().width||0;return Math.max(Math.floor(e-48),240)},A=async e=>{let t=await c(()=>import(`./ofd-BxyAgdTZ.js`),__vite__mapDeps([0,1,2,3]),import.meta.url),n=await E(t);return v?[]:Promise.resolve(t.renderOfd(e,n))},j=async(t={})=>{let n=m.value;if(!n)return;let r=t.force??!1,i=t.showLoading??!1,a=k();if(!r&&g.value===`ready`&&Math.abs(a-S)<8)return;let o=++y;(i||g.value!==`ready`)&&(g.value=`loading`,w()),_.value=``;try{await e();let t=await A(a);if(v||o!==y)return;w(),O(n,t),S=a,g.value=`ready`}catch(e){if(v||o!==y)return;console.error(e),g.value=`error`,_.value=D(e)||`OFD 文件解析失败`}},M=()=>{!h.value||b||(b=new ResizeObserver(()=>{window.clearTimeout(x),x=window.setTimeout(()=>{v||j({showLoading:!1})},180)}),b.observe(h.value))};return s(()=>{j({force:!0,showLoading:!0}).finally(()=>{M()})}),r(()=>{v=!0,y+=1,window.clearTimeout(x),b?.disconnect(),b=null,w()}),(e,n)=>(o(),d(`div`,{ref_key:`viewer`,ref:h,class:`ofd-viewer`},[g.value===`loading`?(o(),d(`div`,f,`正在解析 OFD...`)):g.value===`error`?(o(),d(`div`,p,t(_.value),1)):a(``,!0),u(`div`,{ref_key:`stage`,ref:m,class:`ofd-stage`},null,512)],512))}}),[[`__scopeId`,`data-v-48238ef6`]]);export{m as default};
@@ -1,3 +1,3 @@
1
- import{C as e,K as t,_t as n,gt as r,j as i,p as a,u as o,w as s,wt as c}from"./three.module-CZIqdNh9.js";var l=class extends t{constructor(e){super(e),this.littleEndian=!0}load(t,n,r,i){let a=this,o=new e(a.manager);o.setPath(a.path),o.setResponseType(`arraybuffer`),o.setRequestHeader(a.requestHeader),o.setWithCredentials(a.withCredentials),o.load(t,function(e){try{n(a.parse(e))}catch(e){i?i(e):console.error(e),a.manager.itemError(t)}},r,i)}_getDataView(e,t,n,r){switch(n){case`F`:return r===8?e.getFloat64(t,this.littleEndian):e.getFloat32(t,this.littleEndian);case`I`:return r===1?e.getInt8(t):r===2?e.getInt16(t,this.littleEndian):e.getInt32(t,this.littleEndian);case`U`:return r===1?e.getUint8(t):r===2?e.getUint16(t,this.littleEndian):e.getUint32(t,this.littleEndian)}}parse(e){function t(e,t){let n=e.length,r=new Uint8Array(t),i=0,a=0,o,s,c;do if(o=e[i++],o<32){if(o++,a+o>t)throw Error(`Output buffer is not large enough`);if(i+o>n)throw Error(`Invalid compressed data`);do r[a++]=e[i++];while(--o)}else{if(s=o>>5,c=a-((o&31)<<8)-1,i>=n||s===7&&(s+=e[i++],i>=n))throw Error(`Invalid compressed data`);if(c-=e[i++],a+s+2>t)throw Error(`Output buffer is not large enough`);if(c<0||c>=a)throw Error(`Invalid compressed data`);do r[a++]=r[c++];while(--s+2)}while(i<n);return r}function l(e){let t={},n=new Uint8Array(e),r=``,i=``,a=0,o=!1,s=n.length;for(;a<s&&o===!1;){let e=String.fromCharCode(n[a++]);e===`
1
+ import{C as e,K as t,_t as n,gt as r,j as i,p as a,u as o,w as s,wt as c}from"./three.module-DGhmpURB.js";var l=class extends t{constructor(e){super(e),this.littleEndian=!0}load(t,n,r,i){let a=this,o=new e(a.manager);o.setPath(a.path),o.setResponseType(`arraybuffer`),o.setRequestHeader(a.requestHeader),o.setWithCredentials(a.withCredentials),o.load(t,function(e){try{n(a.parse(e))}catch(e){i?i(e):console.error(e),a.manager.itemError(t)}},r,i)}_getDataView(e,t,n,r){switch(n){case`F`:return r===8?e.getFloat64(t,this.littleEndian):e.getFloat32(t,this.littleEndian);case`I`:return r===1?e.getInt8(t):r===2?e.getInt16(t,this.littleEndian):e.getInt32(t,this.littleEndian);case`U`:return r===1?e.getUint8(t):r===2?e.getUint16(t,this.littleEndian):e.getUint32(t,this.littleEndian)}}parse(e){function t(e,t){let n=e.length,r=new Uint8Array(t),i=0,a=0,o,s,c;do if(o=e[i++],o<32){if(o++,a+o>t)throw Error(`Output buffer is not large enough`);if(i+o>n)throw Error(`Invalid compressed data`);do r[a++]=e[i++];while(--o)}else{if(s=o>>5,c=a-((o&31)<<8)-1,i>=n||s===7&&(s+=e[i++],i>=n))throw Error(`Invalid compressed data`);if(c-=e[i++],a+s+2>t)throw Error(`Output buffer is not large enough`);if(c<0||c>=a)throw Error(`Invalid compressed data`);do r[a++]=r[c++];while(--s+2)}while(i<n);return r}function l(e){let t={},n=new Uint8Array(e),r=``,i=``,a=0,o=!1,s=n.length;for(;a<s&&o===!1;){let e=String.fromCharCode(n[a++]);e===`
2
2
  `||e===`\r`?(i.trim().toLowerCase().startsWith(`data`)&&(o=!0),i=``):i+=e,r+=e}let c=r.search(/[\r\n]DATA\s(\S*)\s/i),l=/[\r\n]DATA\s(\S*)\s/i.exec(r.slice(c-1));if(t.data=l[1],t.headerLen=l[0].length+c,t.str=r.slice(0,t.headerLen),t.str=t.str.replace(/#.*/gi,``),t.version=/^VERSION (.*)/im.exec(t.str),t.fields=/^FIELDS (.*)/im.exec(t.str),t.size=/^SIZE (.*)/im.exec(t.str),t.type=/^TYPE (.*)/im.exec(t.str),t.count=/^COUNT (.*)/im.exec(t.str),t.width=/^WIDTH (.*)/im.exec(t.str),t.height=/^HEIGHT (.*)/im.exec(t.str),t.viewpoint=/^VIEWPOINT (.*)/im.exec(t.str),t.points=/^POINTS (.*)/im.exec(t.str),t.version!==null&&(t.version=parseFloat(t.version[1])),t.fields=t.fields===null?[]:t.fields[1].split(` `),t.type!==null&&(t.type=t.type[1].split(` `)),t.width!==null&&(t.width=parseInt(t.width[1])),t.height!==null&&(t.height=parseInt(t.height[1])),t.viewpoint!==null&&(t.viewpoint=t.viewpoint[1]),t.points!==null&&(t.points=parseInt(t.points[1],10)),t.points===null&&(t.points=t.width*t.height),t.size!==null&&(t.size=t.size[1].split(` `).map(function(e){return parseInt(e,10)})),t.count!==null)t.count=t.count[1].split(` `).map(function(e){return parseInt(e,10)});else{t.count=[];for(let e=0,n=t.fields.length;e<n;e++)t.count.push(1)}t.offset={};let u=0;for(let e=0,n=t.fields.length;e<n;e++)t.data===`ascii`?t.offset[t.fields[e]]=e:(t.offset[t.fields[e]]=u,u+=t.size[e]*t.count[e]);return t.rowSize=u,t}let u=l(e),d=[],f=[],p=[],m=[],h=[],g=new a;if(u.data===`ascii`){let t=u.offset,n=new TextDecoder().decode(e).slice(u.headerLen).split(`
3
3
  `);for(let e=0,r=n.length;e<r;e++){if(n[e]===``)continue;let r=n[e].split(` `);if(t.x!==void 0&&(d.push(parseFloat(r[t.x])),d.push(parseFloat(r[t.y])),d.push(parseFloat(r[t.z]))),t.rgb!==void 0){let e=u.fields.findIndex(e=>e===`rgb`),n=u.type[e],i=parseFloat(r[t.rgb]),a=i;if(n===`F`){let e=new Float32Array(1);e[0]=i,a=new Int32Array(e.buffer)[0]}let o=(a>>16&255)/255,s=(a>>8&255)/255,l=(a>>0&255)/255;g.setRGB(o,s,l,c),p.push(g.r,g.g,g.b)}t.normal_x!==void 0&&(f.push(parseFloat(r[t.normal_x])),f.push(parseFloat(r[t.normal_y])),f.push(parseFloat(r[t.normal_z]))),t.intensity!==void 0&&m.push(parseFloat(r[t.intensity])),t.label!==void 0&&h.push(parseInt(r[t.label]))}}if(u.data===`binary_compressed`){let n=new Uint32Array(e.slice(u.headerLen,u.headerLen+8)),r=n[0],i=n[1],a=t(new Uint8Array(e,u.headerLen+8,r),i),o=new DataView(a.buffer),s=u.offset;for(let e=0;e<u.points;e++){if(s.x!==void 0){let t=u.fields.indexOf(`x`),n=u.fields.indexOf(`y`),r=u.fields.indexOf(`z`);d.push(this._getDataView(o,u.points*s.x+u.size[t]*e,u.type[t],u.size[t])),d.push(this._getDataView(o,u.points*s.y+u.size[n]*e,u.type[n],u.size[n])),d.push(this._getDataView(o,u.points*s.z+u.size[r]*e,u.type[r],u.size[r]))}if(s.rgb!==void 0){let t=u.fields.indexOf(`rgb`),n=o.getUint8(u.points*s.rgb+u.size[t]*e+2)/255,r=o.getUint8(u.points*s.rgb+u.size[t]*e+1)/255,i=o.getUint8(u.points*s.rgb+u.size[t]*e+0)/255;g.setRGB(n,r,i,c),p.push(g.r,g.g,g.b)}if(s.normal_x!==void 0){let t=u.fields.indexOf(`normal_x`),n=u.fields.indexOf(`normal_y`),r=u.fields.indexOf(`normal_z`);f.push(this._getDataView(o,u.points*s.normal_x+u.size[t]*e,u.type[t],u.size[t])),f.push(this._getDataView(o,u.points*s.normal_y+u.size[n]*e,u.type[n],u.size[n])),f.push(this._getDataView(o,u.points*s.normal_z+u.size[r]*e,u.type[r],u.size[r]))}if(s.intensity!==void 0){let t=u.fields.indexOf(`intensity`);m.push(this._getDataView(o,u.points*s.intensity+u.size[t]*e,u.type[t],u.size[t]))}if(s.label!==void 0){let t=u.fields.indexOf(`label`);h.push(this._getDataView(o,u.points*s.label+u.size[t]*e,u.type[t],u.size[t]))}}}if(u.data===`binary`){let t=new DataView(e,u.headerLen),n=u.offset;for(let e=0,r=0;e<u.points;e++,r+=u.rowSize){if(n.x!==void 0){let e=u.fields.indexOf(`x`),i=u.fields.indexOf(`y`),a=u.fields.indexOf(`z`);d.push(this._getDataView(t,r+n.x,u.type[e],u.size[e])),d.push(this._getDataView(t,r+n.y,u.type[i],u.size[i])),d.push(this._getDataView(t,r+n.z,u.type[a],u.size[a]))}if(n.rgb!==void 0){let e=t.getUint8(r+n.rgb+2)/255,i=t.getUint8(r+n.rgb+1)/255,a=t.getUint8(r+n.rgb+0)/255;g.setRGB(e,i,a,c),p.push(g.r,g.g,g.b)}if(n.normal_x!==void 0){let e=u.fields.indexOf(`normal_x`),i=u.fields.indexOf(`normal_y`),a=u.fields.indexOf(`normal_z`);f.push(this._getDataView(t,r+n.normal_x,u.type[e],u.size[e])),f.push(this._getDataView(t,r+n.normal_y,u.type[i],u.size[i])),f.push(this._getDataView(t,r+n.normal_z,u.type[a],u.size[a]))}if(n.intensity!==void 0){let e=u.fields.indexOf(`intensity`);m.push(this._getDataView(t,r+n.intensity,u.type[e],u.size[e]))}if(n.label!==void 0){let e=u.fields.indexOf(`label`);h.push(this._getDataView(t,r+n.label,u.type[e],u.size[e]))}}}let _=new o;d.length>0&&_.setAttribute(`position`,new s(d,3)),f.length>0&&_.setAttribute(`normal`,new s(f,3)),p.length>0&&_.setAttribute(`color`,new s(p,3)),m.length>0&&_.setAttribute(`intensity`,new s(m,1)),h.length>0&&_.setAttribute(`label`,new i(h,1)),_.computeBoundingSphere();let v=new n({size:.005});return p.length>0&&(v.vertexColors=!0),new r(_,v)}};export{l as PCDLoader};