mixdashboards 1.0.32 → 1.0.39

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 (413) hide show
  1. package/dist/CoordinateSystem-BMkAxlii.js +6 -0
  2. package/dist/CoordinateSystem-DWnjjFwb.cjs +1 -0
  3. package/dist/EChartComponentBase-BQOhWkz2.js +114 -0
  4. package/dist/EChartComponentBase-BaQpBzVC.cjs +1 -0
  5. package/dist/LegendVisualProvider-BDw4_0K3.cjs +1 -0
  6. package/dist/LegendVisualProvider-BP9kA8co.js +44 -0
  7. package/dist/MarkerView-BG_nYESR.cjs +1 -0
  8. package/dist/MarkerView-CtWJi5UZ.js +192 -0
  9. package/dist/RoamController--cgD3aNm.cjs +1 -0
  10. package/dist/RoamController-DmBIwcAZ.js +124 -0
  11. package/dist/UniverSheet-KlvmL1Yw.cjs +1 -0
  12. package/dist/UniverSheet-MSHzUXq0.js +180 -0
  13. package/dist/VisualMapping-D-MA7S0X.js +260 -0
  14. package/dist/VisualMapping-MilpZvD_.cjs +1 -0
  15. package/dist/accelerationChart-B1HPMmd2.js +577 -0
  16. package/dist/accelerationChart-DZj2V2vD.cjs +6 -0
  17. package/dist/actionItem-BYCPoQK7.cjs +1 -0
  18. package/dist/actionItem-Bb2xiYlY.js +686 -0
  19. package/dist/alarmLevelChart-Bb0mAbwQ.cjs +2 -0
  20. package/dist/alarmLevelChart-CCioESvL.js +182 -0
  21. package/dist/alertTable-CQwr8YYt.js +301 -0
  22. package/dist/alertTable-oaX5eJC0.cjs +1 -0
  23. package/dist/annualRainfallChart-C21jEMBe.js +185 -0
  24. package/dist/annualRainfallChart-pO8q6aUJ.cjs +1 -0
  25. package/dist/api-C0GhBpqd.js +125 -0
  26. package/dist/api-P_s372dW.cjs +1 -0
  27. package/dist/aqi-DlY2r7OA.cjs +3 -0
  28. package/dist/aqi-iLwQH4rc.js +145 -0
  29. package/dist/aqiIndass-BaIVBfdC.cjs +3 -0
  30. package/dist/aqiIndass-DBeVSBdy.js +301 -0
  31. package/dist/arrayCard-DNNUEPvW.js +93 -0
  32. package/dist/arrayCard-OlVAAsZq.cjs +1 -0
  33. package/dist/audio-CAP4D-J2.js +301 -0
  34. package/dist/audio-CThzVIDU.cjs +1 -0
  35. package/dist/axisAlignTicks-BqVUa467.js +481 -0
  36. package/dist/axisAlignTicks-CDNWKJRo.cjs +1 -0
  37. package/dist/bar-BjR566__.cjs +2 -0
  38. package/dist/bar-D8C06GO4.js +232 -0
  39. package/dist/bmp-Cjizh2x6.js +226 -0
  40. package/dist/bmp-DsmTzyce.cjs +1 -0
  41. package/dist/box-DqewT3MF.js +352 -0
  42. package/dist/box-qgu_67OD.cjs +1 -0
  43. package/dist/chartConfigPanel-BiQArCoQ.cjs +1 -0
  44. package/dist/chartConfigPanel-DwAUq3pf.js +408 -0
  45. package/dist/circleBar-CO89T7kj.cjs +4 -0
  46. package/dist/circleBar-DGHDWQih.js +196 -0
  47. package/dist/clock-32hGccm4.cjs +1 -0
  48. package/dist/clock-CT8YXEU3.js +274 -0
  49. package/dist/clt-5bP_g1O-.cjs +1 -0
  50. package/dist/clt-FfIEfGtn.js +293 -0
  51. package/dist/cmc-B2nQFZIS.js +269 -0
  52. package/dist/cmc-dbuLkE8o.cjs +1 -0
  53. package/dist/cmp-QQlYcnqo.js +378 -0
  54. package/dist/cmp-l3U9fIrz.cjs +6 -0
  55. package/dist/composite-CbsUYl-u.js +136 -0
  56. package/dist/composite-Cf24lSyN.cjs +1 -0
  57. package/dist/composite-DjhrBgG1.js +323 -0
  58. package/dist/composite-DlY2_x6P.cjs +3 -0
  59. package/dist/config-BLSroAzs.cjs +1 -0
  60. package/dist/config-Cc2W4vke.js +9 -0
  61. package/dist/controlList-BdF8xNAi.js +879 -0
  62. package/dist/controlList-De6PXdOc.cjs +1 -0
  63. package/dist/controlRecordList-CKpAr1ON.js +421 -0
  64. package/dist/controlRecordList-u5a7chIX.cjs +1 -0
  65. package/dist/crd-BVAf41oX.js +113 -0
  66. package/dist/crd-BoaXQhFQ.cjs +1 -0
  67. package/dist/createSeriesData-Cz83cqoZ.cjs +1 -0
  68. package/dist/createSeriesData-E53TTCAt.js +116 -0
  69. package/dist/createSeriesDataSimply-Bsly4zZA.js +14 -0
  70. package/dist/createSeriesDataSimply-CjfZL_jf.cjs +1 -0
  71. package/dist/ctrBtn-C9kQiqY1.cjs +1 -0
  72. package/dist/ctrBtn-ZPRYWE66.js +215 -0
  73. package/dist/ctrSet-C87dxLfQ.js +247 -0
  74. package/dist/ctrSet-CNCrnLSs.cjs +1 -0
  75. package/dist/ctrSwitch-CVEtbdfb.cjs +1 -0
  76. package/dist/ctrSwitch-CkC_Axtp.js +207 -0
  77. package/dist/cursorHelper-DE0KU4_J.js +29 -0
  78. package/dist/cursorHelper-DsTR8jVF.cjs +1 -0
  79. package/dist/customGraphicKeyframeAnimation-BJ_z0kB3.js +330 -0
  80. package/dist/customGraphicKeyframeAnimation-CEIvOjMs.cjs +1 -0
  81. package/dist/dataManagement-CjlNfeYq.js +672 -0
  82. package/dist/dataManagement-n711sd1g.cjs +1 -0
  83. package/dist/dataReport-BsVjW3p7.cjs +4 -0
  84. package/dist/dataReport-ByjswEqq.js +787 -0
  85. package/dist/dataSample-BXwc06Sb.js +114 -0
  86. package/dist/dataSample-D4ycwmll.cjs +1 -0
  87. package/dist/dataTable-DX500R1i.js +217 -0
  88. package/dist/dataTable-K7j4fhnq.cjs +1 -0
  89. package/dist/datetime-DVbJtALf.js +113 -0
  90. package/dist/datetime-DYXWKrXI.cjs +1 -0
  91. package/dist/deepClusterSlipSurface-B7nkEM9A.cjs +1 -0
  92. package/dist/deepClusterSlipSurface-CQUE05cK.js +372 -0
  93. package/dist/deepDataMatrix-DHZA0IAm.cjs +1 -0
  94. package/dist/deepDataMatrix-ai5rB6ET.js +238 -0
  95. package/dist/deepDisplacement3D-BFqKqSYg.cjs +4289 -0
  96. package/dist/deepDisplacement3D-BsUzvbQb.js +26052 -0
  97. package/dist/deepDisplacementChart-2JZNrhrw.cjs +5 -0
  98. package/dist/deepDisplacementChart-BCIuCMdK.js +585 -0
  99. package/dist/deepDisplacementChart-Ba67v6um.cjs +6 -0
  100. package/dist/deepDisplacementChart-igl4rW1K.js +340 -0
  101. package/dist/deepDisplacementView-BedWJsx7.js +231 -0
  102. package/dist/deepDisplacementView-wQxyKzB-.cjs +8 -0
  103. package/dist/deepNodeTemperatureChart-DLeb9jKp.js +347 -0
  104. package/dist/deepNodeTemperatureChart-albL8hKa.cjs +1 -0
  105. package/dist/deepTangentAngleChart-C6xOiITk.js +420 -0
  106. package/dist/deepTangentAngleChart-DukevXaM.cjs +1 -0
  107. package/dist/deepTemperatureField-B-y94GPV.js +398 -0
  108. package/dist/deepTemperatureField-De4xKoHw.cjs +1 -0
  109. package/dist/deepTrendChart-DCkV2HNv.js +345 -0
  110. package/dist/deepTrendChart-MmuYSXtu.cjs +1 -0
  111. package/dist/deviceOnlineStatus-B5cCjhNA.cjs +2 -0
  112. package/dist/deviceOnlineStatus-CFuCTx7_.js +178 -0
  113. package/dist/deviceStatus-B2ibBDSi.js +194 -0
  114. package/dist/deviceStatus-DsEtKiGo.cjs +1 -0
  115. package/dist/displacementDataTable-BDqG1IvI.js +256 -0
  116. package/dist/displacementDataTable-oLnUdafv.cjs +1 -0
  117. package/dist/displacementTrajectoryChart-CBhPwZhe.cjs +22 -0
  118. package/dist/displacementTrajectoryChart-Crf55oKi.js +597 -0
  119. package/dist/displacementTrendChart-10n_lC9j.js +364 -0
  120. package/dist/displacementTrendChart-CWihCuIJ.cjs +5 -0
  121. package/dist/dxf-D8zHpz5g.js +2768 -0
  122. package/dist/dxf-DDh_DcQy.cjs +1 -0
  123. package/dist/dzc-DLCdTCwW.js +144 -0
  124. package/dist/dzc-uNTDJqpi.cjs +2 -0
  125. package/dist/echarts-BB8O2KSA.cjs +21 -0
  126. package/dist/echarts-BVht3HHb.js +13787 -0
  127. package/dist/ele-aqi-icon-BMm9WgFH.cjs +1 -0
  128. package/dist/ele-aqi-icon-DsYfU5th.js +5 -0
  129. package/dist/ele-bar-icon-C-GiCs2a.js +5 -0
  130. package/dist/ele-bar-icon-V94clxg_.cjs +1 -0
  131. package/dist/ele-bmp-icon-BBI0-SX7.cjs +1 -0
  132. package/dist/ele-bmp-icon-Pdolk1J5.js +5 -0
  133. package/dist/ele-circleBar-icon-DNBUxt0A.js +5 -0
  134. package/dist/ele-circleBar-icon-Da0-L9sa.cjs +1 -0
  135. package/dist/ele-clt-icon-BEVOS7Tq.cjs +1 -0
  136. package/dist/ele-clt-icon-DuU4Q401.js +5 -0
  137. package/dist/ele-cmp-icon-CEP91RUe.js +5 -0
  138. package/dist/ele-cmp-icon-yUlU6c_Q.cjs +1 -0
  139. package/dist/ele-crd-icon-BXxB7P3T.js +5 -0
  140. package/dist/ele-crd-icon-BvNgAPKW.cjs +1 -0
  141. package/dist/ele-ctrSet-icon-BtKGrCid.js +5 -0
  142. package/dist/ele-ctrSet-icon-DCsPO0tL.cjs +1 -0
  143. package/dist/ele-dateTime-icon-BEGFlwID.js +5 -0
  144. package/dist/ele-dateTime-icon-BgZ2_KWW.cjs +1 -0
  145. package/dist/ele-dzc-icon-D6eVpaHp.js +5 -0
  146. package/dist/ele-dzc-icon-h5wOUHF0.cjs +1 -0
  147. package/dist/ele-evn-icon-DUQMS-9T.cjs +1 -0
  148. package/dist/ele-evn-icon-MWzAujnD.js +5 -0
  149. package/dist/ele-gag-icon-CB5dJeYF.js +5 -0
  150. package/dist/ele-gag-icon-Ce1hl9NI.cjs +1 -0
  151. package/dist/ele-glbModel-icon-ByACDCrv.cjs +1 -0
  152. package/dist/ele-glbModel-icon-l_SMi3ik.js +5 -0
  153. package/dist/ele-grd-icon-DR52zwGR.js +5 -0
  154. package/dist/ele-grd-icon-ZUb-megQ.cjs +1 -0
  155. package/dist/ele-gridview-icon-D3GcssP6.cjs +1 -0
  156. package/dist/ele-gridview-icon-cSd1oIDi.js +5 -0
  157. package/dist/ele-lin-icon-Dax-ZiWV.js +5 -0
  158. package/dist/ele-lin-icon-Dke_1AmT.cjs +1 -0
  159. package/dist/ele-lst-icon-CKpeRKmk.js +5 -0
  160. package/dist/ele-lst-icon-CrxnHZ-A.cjs +1 -0
  161. package/dist/ele-mxa-icon-CJWttkCK.js +5 -0
  162. package/dist/ele-mxa-icon-fgN0MLnh.cjs +1 -0
  163. package/dist/ele-rtn-icon-BrsJIU8J.cjs +1 -0
  164. package/dist/ele-rtn-icon-CqCKSHIw.js +5 -0
  165. package/dist/ele-textbox-icon-ClGaLi5p.js +5 -0
  166. package/dist/ele-textbox-icon-g_5kV8t6.cjs +1 -0
  167. package/dist/ele-vdo-icon-Bgp9gaT6.cjs +1 -0
  168. package/dist/ele-vdo-icon-DcWebTR5.js +5 -0
  169. package/dist/ele-vlu-icon-Bg6EHZdJ.js +5 -0
  170. package/dist/ele-vlu-icon-Dv-R7Xuc.cjs +1 -0
  171. package/dist/element-resize-detector-Bo5uDQAu.cjs +6 -0
  172. package/dist/element-resize-detector-DJcsrJ8s.js +1547 -0
  173. package/dist/evn-DuL5oVRl.cjs +1 -0
  174. package/dist/evn-YwCALVXj.js +116 -0
  175. package/dist/evolutionChart-4noZSdLX.js +406 -0
  176. package/dist/evolutionChart-AeL67MAt.cjs +1 -0
  177. package/dist/fileViewer-DiH3PM0r.js +415 -0
  178. package/dist/fileViewer-bsrjlJkC.cjs +1 -0
  179. package/dist/filterBar-CWEguwYc.js +394 -0
  180. package/dist/filterBar-Ct1BFhrS.cjs +1 -0
  181. package/dist/fireCombustionCurve-DYPC4zKJ.js +405 -0
  182. package/dist/fireCombustionCurve-DyiQn-WA.cjs +1 -0
  183. package/dist/fireFilterBar-Bdm2ljuO.cjs +1 -0
  184. package/dist/fireFilterBar-DGHPNTwF.js +221 -0
  185. package/dist/gag-HiNaL81R.cjs +1 -0
  186. package/dist/gag-kvkKzJuO.js +125 -0
  187. package/dist/glbModel-CUz6CyVF.js +2724 -0
  188. package/dist/glbModel-DtBI72ap.cjs +5 -0
  189. package/dist/gnssFilterBar-BQgY5x1W.cjs +1 -0
  190. package/dist/gnssFilterBar-TBtirXIB.js +310 -0
  191. package/dist/gnssHistoryTable-D1ZLJOgh.cjs +3 -0
  192. package/dist/gnssHistoryTable-U8O7nyO7.js +398 -0
  193. package/dist/gnssMapView-42zmAd9q.cjs +7 -0
  194. package/dist/gnssMapView-CaBfWeT1.js +699 -0
  195. package/dist/gnssTimeSeriesChart-BrXYvuh6.js +421 -0
  196. package/dist/gnssTimeSeriesChart-CV2w_Aik.cjs +1 -0
  197. package/dist/gnssXYTrajectory-BmzSYjQ_.cjs +5 -0
  198. package/dist/gnssXYTrajectory-D2DoYnze.js +304 -0
  199. package/dist/grd-B0GUjLm9.js +339 -0
  200. package/dist/grd-DW8cSFVR.cjs +1 -0
  201. package/dist/grdIndass-BeBXVsos.cjs +1 -0
  202. package/dist/grdIndass-DduUKZJm.js +216 -0
  203. package/dist/grg-CeX0pirQ.js +194 -0
  204. package/dist/grg-fnpcXtju.cjs +1 -0
  205. package/dist/gridview-BPwWXza9.js +183 -0
  206. package/dist/gridview-DpABhCIw.cjs +1 -0
  207. package/dist/groupCard-De1E15mW.js +132 -0
  208. package/dist/groupCard-WNE6gAAl.cjs +1 -0
  209. package/dist/headerBar-CZ3qcLHo.js +210 -0
  210. package/dist/headerBar-Qi1EXrr6.cjs +1 -0
  211. package/dist/{history-DigzRtjC.js → history-BkZhlpdY.js} +5 -3
  212. package/dist/history-DAmBl4_5.cjs +1 -0
  213. package/dist/index-ButoLLAe.js +8655 -0
  214. package/dist/index-Mh5Dw2sd.cjs +585 -0
  215. package/dist/index-kShjySl9.js +5313 -0
  216. package/dist/index-mAPVa0s4.cjs +11 -0
  217. package/dist/insarDeformChart-BGr2xe7w.cjs +1 -0
  218. package/dist/insarDeformChart-CnuSL1d9.js +216 -0
  219. package/dist/insarImageViewer-DRgGdQmN.cjs +1 -0
  220. package/dist/insarImageViewer-EmVThmVQ.js +268 -0
  221. package/dist/install-8XfFtnlL.js +853 -0
  222. package/dist/install-9_V0b6vf.js +497 -0
  223. package/dist/install-B0x4IqQr.js +1258 -0
  224. package/dist/install-B1IEhhn3.cjs +1 -0
  225. package/dist/install-B2TChEcT.js +895 -0
  226. package/dist/install-B65ZIqAx.cjs +1 -0
  227. package/dist/install-BBrAry2m.js +8 -0
  228. package/dist/install-BRjgycz_.cjs +1 -0
  229. package/dist/install-BUu5ESB7.js +447 -0
  230. package/dist/install-BamnGDPb.cjs +1 -0
  231. package/dist/install-BifpoHNI.js +1817 -0
  232. package/dist/install-BvOpNm0Y.cjs +1 -0
  233. package/dist/install-ByPD0oOh.cjs +1 -0
  234. package/dist/install-BzdOSCzO.js +785 -0
  235. package/dist/install-C8buXQPI.cjs +1 -0
  236. package/dist/install-C9Cdzkc6.js +265 -0
  237. package/dist/install-CBde4hAM.js +112 -0
  238. package/dist/install-CIT6k8Ga.cjs +1 -0
  239. package/dist/install-CYwVETsi.cjs +1 -0
  240. package/dist/install-C_3uGWLu.js +2328 -0
  241. package/dist/install-Ch5d8i37.cjs +1 -0
  242. package/dist/install-CltTFs4e.cjs +3 -0
  243. package/dist/install-Csxa7Kv7.cjs +18 -0
  244. package/dist/install-Cx1i_m0k.js +1168 -0
  245. package/dist/install-D1QM80AD.js +227 -0
  246. package/dist/install-D7znHb-b.js +604 -0
  247. package/dist/install-DHY9y86B.cjs +3 -0
  248. package/dist/install-DIlB2q7w.cjs +1 -0
  249. package/dist/install-DV5cEgNV.cjs +1 -0
  250. package/dist/install-DWm3j_D3.js +38 -0
  251. package/dist/install-FDYiy_gL.js +250 -0
  252. package/dist/install-LtoYukZU.cjs +1 -0
  253. package/dist/install-MS3ZY7fF.js +685 -0
  254. package/dist/install-hfre7yvV.js +727 -0
  255. package/dist/install-kGXY_57n.cjs +1 -0
  256. package/dist/install-nDY6w-GK.cjs +1 -0
  257. package/dist/install-oGjJ0_bF.js +588 -0
  258. package/dist/install-z6wShIZI.cjs +1 -0
  259. package/dist/installCanvasRenderer-CLT2hquJ.js +4260 -0
  260. package/dist/installCanvasRenderer-CyhM1Qpl.cjs +3 -0
  261. package/dist/installMarkArea-Cdg4iciO.js +206 -0
  262. package/dist/installMarkArea-CjyaJPLE.cjs +1 -0
  263. package/dist/installMarkLine-BgE0YACE.js +533 -0
  264. package/dist/installMarkLine-Bv53Iw9G.cjs +1 -0
  265. package/dist/installSimple-BWTCwMdY.js +586 -0
  266. package/dist/installSimple-c87Ufc4_.cjs +1 -0
  267. package/dist/kds-CpIQFgeY.js +1203 -0
  268. package/dist/kds-DTYWOq4K.cjs +3 -0
  269. package/dist/labelHelper-Cd8oB-sZ.js +26 -0
  270. package/dist/labelHelper-npJGYQ1j.cjs +1 -0
  271. package/dist/layerTabs-BATcBkTA.cjs +1 -0
  272. package/dist/layerTabs-uze6K91A.js +139 -0
  273. package/dist/lin-Ba6fHkYf.cjs +2 -0
  274. package/dist/lin-DU_EuPRg.js +239 -0
  275. package/dist/linIndass-XHKElG7L.js +273 -0
  276. package/dist/linIndass-urYe5inp.cjs +2 -0
  277. package/dist/lst-C7aee1cU.js +147 -0
  278. package/dist/lst-CpmoEQDY.cjs +1 -0
  279. package/dist/manualEntry-CJPiO5nh.cjs +1 -0
  280. package/dist/manualEntry-D9m_WPw3.js +662 -0
  281. package/dist/mapBackground-6g_71Fwa.js +6658 -0
  282. package/dist/mapBackground-CF_TqNBy.cjs +17 -0
  283. package/dist/mappingList-CR55Tq4t.cjs +1 -0
  284. package/dist/mappingList-luT5YE0d.js +917 -0
  285. package/dist/markdownViewer-CnguoUr8.js +261 -0
  286. package/dist/markdownViewer-D1hDk2Y7.cjs +3 -0
  287. package/dist/mix-control-modal-BDHAB4Tw.cjs +1 -0
  288. package/dist/mix-control-modal-CHiX3hQs.js +147 -0
  289. package/dist/mixDataPermission-BTA1jNd1.cjs +1 -0
  290. package/dist/mixDataPermission-BaqV0Z6N.js +760 -0
  291. package/dist/mixGrid-3BqQCvg8.cjs +1 -0
  292. package/dist/mixGrid-C0eEvwPy.js +180 -0
  293. package/dist/mixMap-7upgYwWk.js +258 -0
  294. package/dist/mixMap-Bw-We4Cm.cjs +1 -0
  295. package/dist/mixModel-BqE_Kd4c.js +245 -0
  296. package/dist/mixModel-CgV4XptM.cjs +3 -0
  297. package/dist/mixPie-9LfMCTQV.cjs +2 -0
  298. package/dist/mixPie-B-HeglUn.js +168 -0
  299. package/dist/mixdashboards.cjs +1 -1
  300. package/dist/mixdashboards.css +1 -1
  301. package/dist/mixdashboards.js +7 -7
  302. package/dist/mjpegCamera-Cfw3rzT5.js +158 -0
  303. package/dist/mjpegCamera-nxKfhobY.cjs +1 -0
  304. package/dist/monitorAlert-Bg5vzzyG.js +225 -0
  305. package/dist/monitorAlert-Bt0baNh4.cjs +1 -0
  306. package/dist/monitorData-BvAMeOrp.js +319 -0
  307. package/dist/monitorData-CzPVIk_4.cjs +1 -0
  308. package/dist/monitorSpeedChart-0bDuU3Kj.js +603 -0
  309. package/dist/monitorSpeedChart-C52QjA5K.cjs +16 -0
  310. package/dist/mxa-BW80xKCc.js +143 -0
  311. package/dist/mxa-eLAgZPMC.cjs +2 -0
  312. package/dist/no-image-icon-CPA7RKkF.cjs +1 -0
  313. package/dist/no-image-icon-n2ZlEjxS.js +1864 -0
  314. package/dist/objectList-Cf9GMyXN.js +1809 -0
  315. package/dist/objectList-CpqQxG8L.cjs +1 -0
  316. package/dist/params-3W3p8QeC.cjs +1 -0
  317. package/dist/params-DfgBemk0.js +75 -0
  318. package/dist/photo-BODEtaYh.cjs +1 -0
  319. package/dist/photo-BfLkWAo8.js +256 -0
  320. package/dist/pie-BDLg-Rls.js +199 -0
  321. package/dist/pie-DxoBrm0D.cjs +2 -0
  322. package/dist/points-DcRmizmA.cjs +1 -0
  323. package/dist/points-DkG9FRF9.js +277 -0
  324. package/dist/pressBtn-CXG1eSWC.js +242 -0
  325. package/dist/pressBtn-t0g4vk7s.cjs +1 -0
  326. package/dist/progressBar-BXaFKSCq.js +130 -0
  327. package/dist/progressBar-CJEWkZ42.cjs +1 -0
  328. package/dist/progressCircle-DpOI5D5z.js +168 -0
  329. package/dist/progressCircle-uQ7vaMKM.cjs +1 -0
  330. package/dist/qrcode-CX8aymYZ.js +814 -0
  331. package/dist/qrcode-DHCRfp0M.cjs +1 -0
  332. package/dist/raceBar-Cv0-0ogd.cjs +4 -0
  333. package/dist/raceBar-DFaH342G.js +197 -0
  334. package/dist/rad-CFswUTwi.cjs +1 -0
  335. package/dist/rad-NS2G_nMg.js +143 -0
  336. package/dist/rainfallFilterBar-BI45QvJm.cjs +1 -0
  337. package/dist/rainfallFilterBar-D_Ye_NeB.js +221 -0
  338. package/dist/rainfallTimeCurve-BHWqX47Q.js +443 -0
  339. package/dist/rainfallTimeCurve-Ke1JvSWq.cjs +1 -0
  340. package/dist/rangeLin-D6VZ2U3C.cjs +3 -0
  341. package/dist/rangeLin-GMYEgLeP.js +278 -0
  342. package/dist/request-BD0x5Hkt.js +75 -0
  343. package/dist/request-Bn100qAJ.cjs +1 -0
  344. package/dist/retainer1-D2XmjXYH.cjs +1 -0
  345. package/dist/retainer1-h-Whr2c9.js +290 -0
  346. package/dist/retainer2-ByQdiRjq.js +504 -0
  347. package/dist/retainer2-cF-trL2g.cjs +1 -0
  348. package/dist/riskRegionTable-CQxAkG7k.js +170 -0
  349. package/dist/riskRegionTable-cKnxra4_.cjs +1 -0
  350. package/dist/sankey-Bk1IcVJQ.js +171 -0
  351. package/dist/sankey-MRirEgU0.cjs +1 -0
  352. package/dist/sausage-DRCw7Qmr.cjs +1 -0
  353. package/dist/sausage-xU3hOdxD.js +30 -0
  354. package/dist/scd-BDRpzmsa.js +2577 -0
  355. package/dist/scd-J-mN3eI5.cjs +1 -0
  356. package/dist/sectorHelper-BFEnYqut.cjs +1 -0
  357. package/dist/sectorHelper-DIlWFMnU.js +18 -0
  358. package/dist/sideMenu-BgTMtnMq.js +225 -0
  359. package/dist/sideMenu-l8X2E00H.cjs +1 -0
  360. package/dist/slopeStability-BPf7m0fJ.cjs +1 -0
  361. package/dist/slopeStability-C5RqZ1im.js +331 -0
  362. package/dist/speedCurve-C3pK-zZy.js +394 -0
  363. package/dist/speedCurve-CluwNAZl.cjs +1 -0
  364. package/dist/staticLine-C6tGGXcN.cjs +1 -0
  365. package/dist/staticLine-DXWOLj15.js +362 -0
  366. package/dist/store-BJW2NQkK.cjs +5 -0
  367. package/dist/store-DzDtVfSX.js +1673 -0
  368. package/dist/swiper-DGqDoUkX.cjs +1 -0
  369. package/dist/swiper-IMlGje3t.js +128 -0
  370. package/dist/terminalConfigList-D6xDHsnb.cjs +1 -0
  371. package/dist/terminalConfigList-SAyXi-BK.js +1017 -0
  372. package/dist/terminalList-CjSHshiR.js +1211 -0
  373. package/dist/terminalList-ml2C18MY.cjs +1 -0
  374. package/dist/textbox-AQtCe25j.cjs +1 -0
  375. package/dist/textbox-BLV-SY8e.js +172 -0
  376. package/dist/three.module-DNVo041Q.cjs +3824 -0
  377. package/dist/three.module-DcOQNgKS.js +16561 -0
  378. package/dist/timeQueryBar-BeMu_DYr.js +155 -0
  379. package/dist/timeQueryBar-BuKakMy8.cjs +1 -0
  380. package/dist/timeSeries-DP5iZKVM.js +587 -0
  381. package/dist/timeSeries-DfGgFWiF.cjs +4 -0
  382. package/dist/timeSeriesCurve-B0Mw6eNK.cjs +1 -0
  383. package/dist/timeSeriesCurve-BSgtPqYw.js +463 -0
  384. package/dist/titleStyle-BT5GlpAb.js +49 -0
  385. package/dist/titleStyle-NSnz6cUg.cjs +1 -0
  386. package/dist/toggleBtn-Dh64vVWo.cjs +1 -0
  387. package/dist/toggleBtn-O2Y75Uen.js +249 -0
  388. package/dist/trajectoryConfigPanel--C1h3tK6.js +635 -0
  389. package/dist/trajectoryConfigPanel-P_Qa4omj.cjs +1 -0
  390. package/dist/trajectoryScatter-BbpbgNb8.cjs +1 -0
  391. package/dist/trajectoryScatter-VLrmImlq.js +525 -0
  392. package/dist/universalConfigPanel-C0lDSzOB.cjs +1 -0
  393. package/dist/universalConfigPanel-DBg76b4F.js +477 -0
  394. package/dist/universalTable-Bzq9VqzA.cjs +2 -0
  395. package/dist/universalTable-DGK02ywi.js +410 -0
  396. package/dist/universalTransition-Bv7ibBUh.js +988 -0
  397. package/dist/universalTransition-CIN_u2Cu.cjs +1 -0
  398. package/dist/video-CyRoSQf1.cjs +1 -0
  399. package/dist/video-DCzzaEmV.js +310 -0
  400. package/dist/videoMonitor-BjD-ZFS0.cjs +1 -0
  401. package/dist/videoMonitor-ByaQeIWR.js +241 -0
  402. package/dist/vlu-CYZjYHaV.cjs +1 -0
  403. package/dist/vlu-h-9twmCr.js +100 -0
  404. package/dist/vue-i18n-5Nahpzrm.js +2732 -0
  405. package/dist/vue-i18n-BvHMBi_b.cjs +5 -0
  406. package/dist/weather-B7B5E1EJ.cjs +1 -0
  407. package/dist/weather-C_aC0XJ1.js +94 -0
  408. package/dist/windLin-B7V4NUV8.js +1226 -0
  409. package/dist/windLin-DPNzX7JN.cjs +1 -0
  410. package/package.json +17 -10
  411. package/dist/history-fvcbbxGa.cjs +0 -1
  412. package/dist/index-B-aA7889.js +0 -154003
  413. package/dist/index-CdJ-j9Gj.cjs +0 -8893
@@ -0,0 +1,2768 @@
1
+ var je = Object.defineProperty, qe = Object.defineProperties;
2
+ var Ke = Object.getOwnPropertyDescriptors;
3
+ var De = Object.getOwnPropertySymbols;
4
+ var Je = Object.prototype.hasOwnProperty, Qe = Object.prototype.propertyIsEnumerable;
5
+ var Ae = (s, a, e) => a in s ? je(s, a, { enumerable: !0, configurable: !0, writable: !0, value: e }) : s[a] = e, me = (s, a) => {
6
+ for (var e in a || (a = {}))
7
+ Je.call(a, e) && Ae(s, e, a[e]);
8
+ if (De)
9
+ for (var e of De(a))
10
+ Qe.call(a, e) && Ae(s, e, a[e]);
11
+ return s;
12
+ }, ye = (s, a) => qe(s, Ke(a));
13
+ var Ee = (s, a, e) => new Promise((t, x) => {
14
+ var l = (f) => {
15
+ try {
16
+ n(e.next(f));
17
+ } catch (E) {
18
+ x(E);
19
+ }
20
+ }, p = (f) => {
21
+ try {
22
+ n(e.throw(f));
23
+ } catch (E) {
24
+ x(E);
25
+ }
26
+ }, n = (f) => f.done ? t(f.value) : Promise.resolve(f.value).then(l, p);
27
+ n((e = e.apply(s, a)).next());
28
+ });
29
+ import { defineComponent as ue, openBlock as I, createElementBlock as M, renderSlot as le, computed as se, createElementVNode as g, normalizeClass as ne, createTextVNode as et, toDisplayString as Z, createCommentVNode as X, ref as K, watch as ce, onMounted as $e, onBeforeUnmount as Be, unref as ae, normalizeStyle as Ue, Fragment as tt, renderList as at, createVNode as nt } from "vue";
30
+ import { _ as de, b as ot, f as st, g as lt } from "./index-kShjySl9.js";
31
+ import { S as it, C as _e, O as rt, W as ct, G as q, L as ut, V as H, B as j, a as fe, b as J, E as be, c as Te, d as dt, P as ft, e as vt, f as pt, M as Se, D as Ve, g as Ie, h as ht, i as bt, j as gt } from "./three.module-DcOQNgKS.js";
32
+ import { B as wt } from "./element-resize-detector-DJcsrJ8s.js";
33
+ import { a as xt } from "./api-C0GhBpqd.js";
34
+ import { F as kt } from "./config-Cc2W4vke.js";
35
+ import { ElMessage as ve } from "element-plus";
36
+ import { u as mt } from "./store-DzDtVfSX.js";
37
+ const yt = /* @__PURE__ */ ue({
38
+ __name: "Button",
39
+ emits: ["click"],
40
+ setup(s, { emit: a }) {
41
+ const e = a, t = (x) => {
42
+ e("click", x);
43
+ };
44
+ return (x, l) => (I(), M("button", {
45
+ class: "my-button",
46
+ onClick: t
47
+ }, [
48
+ le(x.$slots, "default", {}, void 0, !0)
49
+ ]));
50
+ }
51
+ }), Me = /* @__PURE__ */ de(yt, [["__scopeId", "data-v-01de59b5"]]);
52
+ Me.install = (s) => {
53
+ s.component("MyButton", Me);
54
+ };
55
+ const Et = { class: "my-input-wrapper" }, _t = ["type", "placeholder", "disabled", "value"], Lt = /* @__PURE__ */ ue({
56
+ __name: "Input",
57
+ props: {
58
+ modelValue: {},
59
+ type: { default: "text" },
60
+ placeholder: {},
61
+ disabled: { type: Boolean, default: !1 },
62
+ size: { default: "default" }
63
+ },
64
+ emits: ["update:modelValue", "focus", "blur"],
65
+ setup(s, { emit: a }) {
66
+ const e = s, t = a, x = se(() => [
67
+ {
68
+ [`my-input--${e.size}`]: e.size !== "default",
69
+ "is-disabled": e.disabled
70
+ }
71
+ ]), l = (f) => {
72
+ const E = f.target;
73
+ t("update:modelValue", E.value);
74
+ }, p = (f) => {
75
+ t("focus", f);
76
+ }, n = (f) => {
77
+ t("blur", f);
78
+ };
79
+ return (f, E) => (I(), M("div", Et, [
80
+ g("input", {
81
+ class: ne(["my-input", x.value]),
82
+ type: s.type,
83
+ placeholder: s.placeholder,
84
+ disabled: s.disabled,
85
+ value: s.modelValue,
86
+ onInput: l,
87
+ onFocus: p,
88
+ onBlur: n
89
+ }, null, 42, _t)
90
+ ]));
91
+ }
92
+ }), Oe = /* @__PURE__ */ de(Lt, [["__scopeId", "data-v-658697aa"]]);
93
+ Oe.install = (s) => {
94
+ s.component("MyInput", Oe);
95
+ };
96
+ const Ct = {
97
+ key: 0,
98
+ class: "my-card__header"
99
+ }, Pt = { class: "my-card__body" }, Ft = {
100
+ key: 1,
101
+ class: "my-card__footer"
102
+ }, Dt = /* @__PURE__ */ ue({
103
+ __name: "Card",
104
+ props: {
105
+ header: {},
106
+ shadow: { default: "always" }
107
+ },
108
+ setup(s) {
109
+ const a = s, e = se(() => [
110
+ `my-card--shadow-${a.shadow}`
111
+ ]);
112
+ return (t, x) => (I(), M("div", {
113
+ class: ne(["my-card", e.value])
114
+ }, [
115
+ t.$slots.header || s.header ? (I(), M("div", Ct, [
116
+ le(t.$slots, "header", {}, () => [
117
+ et(Z(s.header), 1)
118
+ ], !0)
119
+ ])) : X("", !0),
120
+ g("div", Pt, [
121
+ le(t.$slots, "default", {}, void 0, !0)
122
+ ]),
123
+ t.$slots.footer ? (I(), M("div", Ft, [
124
+ le(t.$slots, "footer", {}, void 0, !0)
125
+ ])) : X("", !0)
126
+ ], 2));
127
+ }
128
+ }), Ne = /* @__PURE__ */ de(Dt, [["__scopeId", "data-v-33b37710"]]);
129
+ Ne.install = (s) => {
130
+ s.component("MyCard", Ne);
131
+ };
132
+ class At {
133
+ constructor(a) {
134
+ this._pointer = 0, this._eof = !1, this._data = a;
135
+ }
136
+ /**
137
+ * Gets the next group (code, value) from the array. A group is two consecutive elements
138
+ * in the array. The first is the code, the second is the value.
139
+ * @returns {{code: Number}|*}
140
+ */
141
+ next() {
142
+ if (!this.hasNext())
143
+ throw this._eof ? new Error("Cannot call 'next' after EOF group has been read") : new Error("Unexpected end of input: EOF group not read before end of file. Ended on code " + this._data[this._pointer]);
144
+ const a = {
145
+ code: parseInt(this._data[this._pointer])
146
+ };
147
+ return this._pointer++, a.value = He(a.code, this._data[this._pointer].trim()), this._pointer++, a.code === 0 && a.value === "EOF" && (this._eof = !0), this.lastReadGroup = a, a;
148
+ }
149
+ peek() {
150
+ if (!this.hasNext())
151
+ throw this._eof ? new Error("Cannot call 'next' after EOF group has been read") : new Error("Unexpected end of input: EOF group not read before end of file. Ended on code " + this._data[this._pointer]);
152
+ const a = {
153
+ code: parseInt(this._data[this._pointer])
154
+ };
155
+ return a.value = He(a.code, this._data[this._pointer + 1].trim()), a;
156
+ }
157
+ rewind(a = 1) {
158
+ this._pointer = this._pointer - a * 2;
159
+ }
160
+ /**
161
+ * Returns true if there is another code/value pair (2 elements in the array).
162
+ * @returns {boolean}
163
+ */
164
+ hasNext() {
165
+ return !(this._eof || this._pointer > this._data.length - 2);
166
+ }
167
+ /**
168
+ * Returns true if the scanner is at the end of the array
169
+ * @returns {boolean}
170
+ */
171
+ isEOF() {
172
+ return this._eof;
173
+ }
174
+ }
175
+ function He(s, a) {
176
+ return s <= 9 ? a : s >= 10 && s <= 59 ? parseFloat(a) : s >= 60 && s <= 99 ? parseInt(a) : s >= 100 && s <= 109 ? a : s >= 110 && s <= 149 ? parseFloat(a) : s >= 160 && s <= 179 ? parseInt(a) : s >= 210 && s <= 239 ? parseFloat(a) : s >= 270 && s <= 289 ? parseInt(a) : s >= 290 && s <= 299 ? Tt(a) : s >= 300 && s <= 369 ? a : s >= 370 && s <= 389 ? parseInt(a) : s >= 390 && s <= 399 ? a : s >= 400 && s <= 409 ? parseInt(a) : s >= 410 && s <= 419 ? a : s >= 420 && s <= 429 ? parseInt(a) : s >= 430 && s <= 439 ? a : s >= 440 && s <= 459 ? parseInt(a) : s >= 460 && s <= 469 ? parseFloat(a) : s >= 470 && s <= 481 || s === 999 || s >= 1e3 && s <= 1009 ? a : s >= 1010 && s <= 1059 ? parseFloat(a) : s >= 1060 && s <= 1071 ? parseInt(a) : (console.log("WARNING: Group code does not have a defined type: %j", { code: s, value: a }), a);
177
+ }
178
+ function Tt(s) {
179
+ if (s === "0")
180
+ return !1;
181
+ if (s === "1")
182
+ return !0;
183
+ throw TypeError("String '" + s + "' cannot be cast to Boolean type");
184
+ }
185
+ const We = [
186
+ 0,
187
+ 16711680,
188
+ 16776960,
189
+ 65280,
190
+ 65535,
191
+ 255,
192
+ 16711935,
193
+ 16777215,
194
+ 8421504,
195
+ 12632256,
196
+ 16711680,
197
+ 16744319,
198
+ 13369344,
199
+ 13395558,
200
+ 10027008,
201
+ 10046540,
202
+ 8323072,
203
+ 8339263,
204
+ 4980736,
205
+ 4990502,
206
+ 16727808,
207
+ 16752511,
208
+ 13382400,
209
+ 13401958,
210
+ 10036736,
211
+ 10051404,
212
+ 8331008,
213
+ 8343359,
214
+ 4985600,
215
+ 4992806,
216
+ 16744192,
217
+ 16760703,
218
+ 13395456,
219
+ 13408614,
220
+ 10046464,
221
+ 10056268,
222
+ 8339200,
223
+ 8347455,
224
+ 4990464,
225
+ 4995366,
226
+ 16760576,
227
+ 16768895,
228
+ 13408512,
229
+ 13415014,
230
+ 10056192,
231
+ 10061132,
232
+ 8347392,
233
+ 8351551,
234
+ 4995328,
235
+ 4997670,
236
+ 16776960,
237
+ 16777087,
238
+ 13421568,
239
+ 13421670,
240
+ 10000384,
241
+ 10000460,
242
+ 8355584,
243
+ 8355647,
244
+ 5000192,
245
+ 5000230,
246
+ 12582656,
247
+ 14679935,
248
+ 10079232,
249
+ 11717734,
250
+ 7510016,
251
+ 8755276,
252
+ 6258432,
253
+ 7307071,
254
+ 3755008,
255
+ 4344870,
256
+ 8388352,
257
+ 12582783,
258
+ 6736896,
259
+ 10079334,
260
+ 5019648,
261
+ 7510092,
262
+ 4161280,
263
+ 6258495,
264
+ 2509824,
265
+ 3755046,
266
+ 4194048,
267
+ 10485631,
268
+ 3394560,
269
+ 8375398,
270
+ 2529280,
271
+ 6264908,
272
+ 2064128,
273
+ 5209919,
274
+ 1264640,
275
+ 3099686,
276
+ 65280,
277
+ 8388479,
278
+ 52224,
279
+ 6736998,
280
+ 38912,
281
+ 5019724,
282
+ 32512,
283
+ 4161343,
284
+ 19456,
285
+ 2509862,
286
+ 65343,
287
+ 8388511,
288
+ 52275,
289
+ 6737023,
290
+ 38950,
291
+ 5019743,
292
+ 32543,
293
+ 4161359,
294
+ 19475,
295
+ 2509871,
296
+ 65407,
297
+ 8388543,
298
+ 52326,
299
+ 6737049,
300
+ 38988,
301
+ 5019762,
302
+ 32575,
303
+ 4161375,
304
+ 19494,
305
+ 2509881,
306
+ 65471,
307
+ 8388575,
308
+ 52377,
309
+ 6737074,
310
+ 39026,
311
+ 5019781,
312
+ 32607,
313
+ 4161391,
314
+ 19513,
315
+ 2509890,
316
+ 65535,
317
+ 8388607,
318
+ 52428,
319
+ 6737100,
320
+ 39064,
321
+ 5019800,
322
+ 32639,
323
+ 4161407,
324
+ 19532,
325
+ 2509900,
326
+ 49151,
327
+ 8380415,
328
+ 39372,
329
+ 6730444,
330
+ 29336,
331
+ 5014936,
332
+ 24447,
333
+ 4157311,
334
+ 14668,
335
+ 2507340,
336
+ 32767,
337
+ 8372223,
338
+ 26316,
339
+ 6724044,
340
+ 19608,
341
+ 5010072,
342
+ 16255,
343
+ 4153215,
344
+ 9804,
345
+ 2505036,
346
+ 16383,
347
+ 8364031,
348
+ 13260,
349
+ 6717388,
350
+ 9880,
351
+ 5005208,
352
+ 8063,
353
+ 4149119,
354
+ 4940,
355
+ 2502476,
356
+ 255,
357
+ 8355839,
358
+ 204,
359
+ 6710988,
360
+ 152,
361
+ 5000344,
362
+ 127,
363
+ 4145023,
364
+ 76,
365
+ 2500172,
366
+ 4129023,
367
+ 10452991,
368
+ 3342540,
369
+ 8349388,
370
+ 2490520,
371
+ 6245528,
372
+ 2031743,
373
+ 5193599,
374
+ 1245260,
375
+ 3089996,
376
+ 8323327,
377
+ 12550143,
378
+ 6684876,
379
+ 10053324,
380
+ 4980888,
381
+ 7490712,
382
+ 4128895,
383
+ 6242175,
384
+ 2490444,
385
+ 3745356,
386
+ 12517631,
387
+ 14647295,
388
+ 10027212,
389
+ 11691724,
390
+ 7471256,
391
+ 8735896,
392
+ 6226047,
393
+ 7290751,
394
+ 3735628,
395
+ 4335180,
396
+ 16711935,
397
+ 16744447,
398
+ 13369548,
399
+ 13395660,
400
+ 9961624,
401
+ 9981080,
402
+ 8323199,
403
+ 8339327,
404
+ 4980812,
405
+ 4990540,
406
+ 16711871,
407
+ 16744415,
408
+ 13369497,
409
+ 13395634,
410
+ 9961586,
411
+ 9981061,
412
+ 8323167,
413
+ 8339311,
414
+ 4980793,
415
+ 4990530,
416
+ 16711807,
417
+ 16744383,
418
+ 13369446,
419
+ 13395609,
420
+ 9961548,
421
+ 9981042,
422
+ 8323135,
423
+ 8339295,
424
+ 4980774,
425
+ 4990521,
426
+ 16711743,
427
+ 16744351,
428
+ 13369395,
429
+ 13395583,
430
+ 9961510,
431
+ 9981023,
432
+ 8323103,
433
+ 8339279,
434
+ 4980755,
435
+ 4990511,
436
+ 3355443,
437
+ 5987163,
438
+ 8684676,
439
+ 11382189,
440
+ 14079702,
441
+ 16777215
442
+ ];
443
+ function St(s) {
444
+ return We[s];
445
+ }
446
+ function F(s) {
447
+ const a = {};
448
+ s.rewind();
449
+ let e = s.next(), t = e.code;
450
+ if (a.x = e.value, t += 10, e = s.next(), e.code != t)
451
+ throw new Error("Expected code for point value to be " + t + " but got " + e.code + ".");
452
+ return a.y = e.value, t += 10, e = s.next(), e.code != t ? (s.rewind(), a) : (a.z = e.value, a);
453
+ }
454
+ function G(s, a, e) {
455
+ switch (a.code) {
456
+ case 0:
457
+ s.type = a.value;
458
+ break;
459
+ case 5:
460
+ s.handle = a.value;
461
+ break;
462
+ case 6:
463
+ s.lineType = a.value;
464
+ break;
465
+ case 8:
466
+ s.layer = a.value;
467
+ break;
468
+ case 48:
469
+ s.lineTypeScale = a.value;
470
+ break;
471
+ case 60:
472
+ s.visible = a.value === 0;
473
+ break;
474
+ case 62:
475
+ s.colorIndex = a.value, s.color = St(Math.abs(a.value));
476
+ break;
477
+ case 67:
478
+ s.inPaperSpace = a.value !== 0;
479
+ break;
480
+ case 100:
481
+ break;
482
+ case 101:
483
+ for (; a.code != 0; )
484
+ a = e.next();
485
+ e.rewind();
486
+ break;
487
+ case 330:
488
+ s.ownerHandle = a.value;
489
+ break;
490
+ case 347:
491
+ s.materialObjectHandle = a.value;
492
+ break;
493
+ case 370:
494
+ s.lineweight = a.value;
495
+ break;
496
+ case 420:
497
+ s.color = a.value;
498
+ break;
499
+ case 1e3:
500
+ s.extendedData = s.extendedData || {}, s.extendedData.customStrings = s.extendedData.customStrings || [], s.extendedData.customStrings.push(a.value);
501
+ break;
502
+ case 1001:
503
+ s.extendedData = s.extendedData || {}, s.extendedData.applicationName = a.value;
504
+ break;
505
+ default:
506
+ return !1;
507
+ }
508
+ return !0;
509
+ }
510
+ class Vt {
511
+ constructor() {
512
+ this.ForEntityName = "3DFACE";
513
+ }
514
+ parseEntity(a, e) {
515
+ const t = { type: e.value, vertices: [] };
516
+ for (e = a.next(); !a.isEOF() && e.code !== 0; ) {
517
+ switch (e.code) {
518
+ case 70:
519
+ t.shape = (e.value & 1) === 1, t.hasContinuousLinetypePattern = (e.value & 128) === 128;
520
+ break;
521
+ case 10:
522
+ t.vertices = It(a, e), e = a.lastReadGroup;
523
+ break;
524
+ default:
525
+ G(t, e, a);
526
+ break;
527
+ }
528
+ e = a.next();
529
+ }
530
+ return t;
531
+ }
532
+ }
533
+ function It(s, a) {
534
+ var e = [], t = !1, x = !1, l = 4;
535
+ for (let n = 0; n <= l; n++) {
536
+ for (var p = {}; !s.isEOF() && !(a.code === 0 || x); ) {
537
+ switch (a.code) {
538
+ case 10:
539
+ // X0
540
+ case 11:
541
+ // X1
542
+ case 12:
543
+ // X2
544
+ case 13:
545
+ if (t) {
546
+ x = !0;
547
+ continue;
548
+ }
549
+ p.x = a.value, t = !0;
550
+ break;
551
+ case 20:
552
+ // Y
553
+ case 21:
554
+ case 22:
555
+ case 23:
556
+ p.y = a.value;
557
+ break;
558
+ case 30:
559
+ // Z
560
+ case 31:
561
+ case 32:
562
+ case 33:
563
+ p.z = a.value;
564
+ break;
565
+ default:
566
+ return e;
567
+ }
568
+ a = s.next();
569
+ }
570
+ e.push(p), t = !1, x = !1;
571
+ }
572
+ return s.rewind(), e;
573
+ }
574
+ class Mt {
575
+ constructor() {
576
+ this.ForEntityName = "ARC";
577
+ }
578
+ parseEntity(a, e) {
579
+ const t = { type: e.value };
580
+ for (e = a.next(); !a.isEOF() && e.code !== 0; ) {
581
+ switch (e.code) {
582
+ case 10:
583
+ t.center = F(a);
584
+ break;
585
+ case 40:
586
+ t.radius = e.value;
587
+ break;
588
+ case 50:
589
+ t.startAngle = Math.PI / 180 * e.value;
590
+ break;
591
+ case 51:
592
+ t.endAngle = Math.PI / 180 * e.value, t.angleLength = t.endAngle - t.startAngle;
593
+ break;
594
+ case 210:
595
+ t.extrusionDirectionX = e.value;
596
+ break;
597
+ case 220:
598
+ t.extrusionDirectionY = e.value;
599
+ break;
600
+ case 230:
601
+ t.extrusionDirectionZ = e.value;
602
+ break;
603
+ default:
604
+ G(t, e, a);
605
+ break;
606
+ }
607
+ e = a.next();
608
+ }
609
+ return t;
610
+ }
611
+ }
612
+ class Ot {
613
+ constructor() {
614
+ this.ForEntityName = "ATTDEF";
615
+ }
616
+ parseEntity(a, e) {
617
+ var t = {
618
+ type: e.value,
619
+ scale: 1,
620
+ textStyle: "STANDARD"
621
+ };
622
+ for (e = a.next(); !a.isEOF() && e.code !== 0; ) {
623
+ switch (e.code) {
624
+ case 1:
625
+ t.text = e.value;
626
+ break;
627
+ case 2:
628
+ t.tag = e.value;
629
+ break;
630
+ case 3:
631
+ t.prompt = e.value;
632
+ break;
633
+ case 7:
634
+ t.textStyle = e.value;
635
+ break;
636
+ case 10:
637
+ t.startPoint = F(a);
638
+ break;
639
+ case 11:
640
+ t.endPoint = F(a);
641
+ break;
642
+ case 39:
643
+ t.thickness = e.value;
644
+ break;
645
+ case 40:
646
+ t.textHeight = e.value;
647
+ break;
648
+ case 41:
649
+ t.scale = e.value;
650
+ break;
651
+ case 50:
652
+ t.rotation = e.value;
653
+ break;
654
+ case 51:
655
+ t.obliqueAngle = e.value;
656
+ break;
657
+ case 70:
658
+ t.invisible = !!(e.value & 1), t.constant = !!(e.value & 2), t.verificationRequired = !!(e.value & 4), t.preset = !!(e.value & 8);
659
+ break;
660
+ case 71:
661
+ t.backwards = !!(e.value & 2), t.mirrored = !!(e.value & 4);
662
+ break;
663
+ case 72:
664
+ t.horizontalJustification = e.value;
665
+ break;
666
+ case 73:
667
+ t.fieldLength = e.value;
668
+ break;
669
+ case 74:
670
+ t.verticalJustification = e.value;
671
+ break;
672
+ case 100:
673
+ break;
674
+ case 210:
675
+ t.extrusionDirectionX = e.value;
676
+ break;
677
+ case 220:
678
+ t.extrusionDirectionY = e.value;
679
+ break;
680
+ case 230:
681
+ t.extrusionDirectionZ = e.value;
682
+ break;
683
+ default:
684
+ G(t, e, a);
685
+ break;
686
+ }
687
+ e = a.next();
688
+ }
689
+ return t;
690
+ }
691
+ }
692
+ class Nt {
693
+ constructor() {
694
+ this.ForEntityName = "CIRCLE";
695
+ }
696
+ parseEntity(a, e) {
697
+ const t = { type: e.value };
698
+ for (e = a.next(); !a.isEOF() && e.code !== 0; ) {
699
+ switch (e.code) {
700
+ case 10:
701
+ t.center = F(a);
702
+ break;
703
+ case 40:
704
+ t.radius = e.value;
705
+ break;
706
+ case 50:
707
+ t.startAngle = Math.PI / 180 * e.value;
708
+ break;
709
+ case 51:
710
+ const x = Math.PI / 180 * e.value;
711
+ x < t.startAngle ? t.angleLength = x + 2 * Math.PI - t.startAngle : t.angleLength = x - t.startAngle, t.endAngle = x;
712
+ break;
713
+ default:
714
+ G(t, e, a);
715
+ break;
716
+ }
717
+ e = a.next();
718
+ }
719
+ return t;
720
+ }
721
+ }
722
+ class Ht {
723
+ constructor() {
724
+ this.ForEntityName = "DIMENSION";
725
+ }
726
+ parseEntity(a, e) {
727
+ const t = { type: e.value };
728
+ for (e = a.next(); !a.isEOF() && e.code !== 0; ) {
729
+ switch (e.code) {
730
+ case 2:
731
+ t.block = e.value;
732
+ break;
733
+ case 10:
734
+ t.anchorPoint = F(a);
735
+ break;
736
+ case 11:
737
+ t.middleOfText = F(a);
738
+ break;
739
+ case 12:
740
+ t.insertionPoint = F(a);
741
+ break;
742
+ case 13:
743
+ t.linearOrAngularPoint1 = F(a);
744
+ break;
745
+ case 14:
746
+ t.linearOrAngularPoint2 = F(a);
747
+ break;
748
+ case 15:
749
+ t.diameterOrRadiusPoint = F(a);
750
+ break;
751
+ case 16:
752
+ t.arcPoint = F(a);
753
+ break;
754
+ case 70:
755
+ t.dimensionType = e.value;
756
+ break;
757
+ case 71:
758
+ t.attachmentPoint = e.value;
759
+ break;
760
+ case 42:
761
+ t.actualMeasurement = e.value;
762
+ break;
763
+ case 1:
764
+ t.text = e.value;
765
+ break;
766
+ case 50:
767
+ t.angle = e.value;
768
+ break;
769
+ default:
770
+ G(t, e, a);
771
+ break;
772
+ }
773
+ e = a.next();
774
+ }
775
+ return t;
776
+ }
777
+ }
778
+ class Rt {
779
+ constructor() {
780
+ this.ForEntityName = "ELLIPSE";
781
+ }
782
+ parseEntity(a, e) {
783
+ const t = { type: e.value };
784
+ for (e = a.next(); !a.isEOF() && e.code !== 0; ) {
785
+ switch (e.code) {
786
+ case 10:
787
+ t.center = F(a);
788
+ break;
789
+ case 11:
790
+ t.majorAxisEndPoint = F(a);
791
+ break;
792
+ case 40:
793
+ t.axisRatio = e.value;
794
+ break;
795
+ case 41:
796
+ t.startAngle = e.value;
797
+ break;
798
+ case 42:
799
+ t.endAngle = e.value;
800
+ break;
801
+ case 2:
802
+ t.name = e.value;
803
+ break;
804
+ default:
805
+ G(t, e, a);
806
+ break;
807
+ }
808
+ e = a.next();
809
+ }
810
+ return t;
811
+ }
812
+ }
813
+ class zt {
814
+ constructor() {
815
+ this.ForEntityName = "INSERT";
816
+ }
817
+ parseEntity(a, e) {
818
+ const t = { type: e.value };
819
+ for (e = a.next(); !a.isEOF() && e.code !== 0; ) {
820
+ switch (e.code) {
821
+ case 2:
822
+ t.name = e.value;
823
+ break;
824
+ case 41:
825
+ t.xScale = e.value;
826
+ break;
827
+ case 42:
828
+ t.yScale = e.value;
829
+ break;
830
+ case 43:
831
+ t.zScale = e.value;
832
+ break;
833
+ case 10:
834
+ t.position = F(a);
835
+ break;
836
+ case 50:
837
+ t.rotation = e.value;
838
+ break;
839
+ case 70:
840
+ t.columnCount = e.value;
841
+ break;
842
+ case 71:
843
+ t.rowCount = e.value;
844
+ break;
845
+ case 44:
846
+ t.columnSpacing = e.value;
847
+ break;
848
+ case 45:
849
+ t.rowSpacing = e.value;
850
+ break;
851
+ case 210:
852
+ t.extrusionDirection = F(a);
853
+ break;
854
+ default:
855
+ G(t, e, a);
856
+ break;
857
+ }
858
+ e = a.next();
859
+ }
860
+ return t;
861
+ }
862
+ }
863
+ class $t {
864
+ constructor() {
865
+ this.ForEntityName = "LINE";
866
+ }
867
+ parseEntity(a, e) {
868
+ const t = { type: e.value, vertices: [] };
869
+ for (e = a.next(); !a.isEOF() && e.code !== 0; ) {
870
+ switch (e.code) {
871
+ case 10:
872
+ t.vertices.unshift(F(a));
873
+ break;
874
+ case 11:
875
+ t.vertices.push(F(a));
876
+ break;
877
+ case 210:
878
+ t.extrusionDirection = F(a);
879
+ break;
880
+ case 100:
881
+ break;
882
+ default:
883
+ G(t, e, a);
884
+ break;
885
+ }
886
+ e = a.next();
887
+ }
888
+ return t;
889
+ }
890
+ }
891
+ class Bt {
892
+ constructor() {
893
+ this.ForEntityName = "LWPOLYLINE";
894
+ }
895
+ parseEntity(a, e) {
896
+ const t = { type: e.value, vertices: [] };
897
+ let x = 0;
898
+ for (e = a.next(); !a.isEOF() && e.code !== 0; ) {
899
+ switch (e.code) {
900
+ case 38:
901
+ t.elevation = e.value;
902
+ break;
903
+ case 39:
904
+ t.depth = e.value;
905
+ break;
906
+ case 70:
907
+ t.shape = (e.value & 1) === 1, t.hasContinuousLinetypePattern = (e.value & 128) === 128;
908
+ break;
909
+ case 90:
910
+ x = e.value;
911
+ break;
912
+ case 10:
913
+ t.vertices = Ut(x, a);
914
+ break;
915
+ case 43:
916
+ e.value !== 0 && (t.width = e.value);
917
+ break;
918
+ case 210:
919
+ t.extrusionDirectionX = e.value;
920
+ break;
921
+ case 220:
922
+ t.extrusionDirectionY = e.value;
923
+ break;
924
+ case 230:
925
+ t.extrusionDirectionZ = e.value;
926
+ break;
927
+ default:
928
+ G(t, e, a);
929
+ break;
930
+ }
931
+ e = a.next();
932
+ }
933
+ return t;
934
+ }
935
+ }
936
+ function Ut(s, a) {
937
+ if (!s || s <= 0)
938
+ throw Error("n must be greater than 0 verticies");
939
+ const e = [];
940
+ let t = !1, x = !1, l = a.lastReadGroup;
941
+ for (let p = 0; p < s; p++) {
942
+ const n = {};
943
+ for (; !a.isEOF() && !(l.code === 0 || x); ) {
944
+ switch (l.code) {
945
+ case 10:
946
+ if (t) {
947
+ x = !0;
948
+ continue;
949
+ }
950
+ n.x = l.value, t = !0;
951
+ break;
952
+ case 20:
953
+ n.y = l.value;
954
+ break;
955
+ case 30:
956
+ n.z = l.value;
957
+ break;
958
+ case 40:
959
+ n.startWidth = l.value;
960
+ break;
961
+ case 41:
962
+ n.endWidth = l.value;
963
+ break;
964
+ case 42:
965
+ l.value != 0 && (n.bulge = l.value);
966
+ break;
967
+ default:
968
+ return a.rewind(), t && e.push(n), a.rewind(), e;
969
+ }
970
+ l = a.next();
971
+ }
972
+ e.push(n), t = !1, x = !1;
973
+ }
974
+ return a.rewind(), e;
975
+ }
976
+ class Wt {
977
+ constructor() {
978
+ this.ForEntityName = "MTEXT";
979
+ }
980
+ parseEntity(a, e) {
981
+ const t = { type: e.value };
982
+ for (e = a.next(); !a.isEOF() && e.code !== 0; ) {
983
+ switch (e.code) {
984
+ case 3:
985
+ t.text ? t.text += e.value : t.text = e.value;
986
+ break;
987
+ case 1:
988
+ t.text ? t.text += e.value : t.text = e.value;
989
+ break;
990
+ case 10:
991
+ t.position = F(a);
992
+ break;
993
+ case 11:
994
+ t.directionVector = F(a);
995
+ break;
996
+ case 40:
997
+ t.height = e.value;
998
+ break;
999
+ case 41:
1000
+ t.width = e.value;
1001
+ break;
1002
+ case 50:
1003
+ t.rotation = e.value;
1004
+ break;
1005
+ case 71:
1006
+ t.attachmentPoint = e.value;
1007
+ break;
1008
+ case 72:
1009
+ t.drawingDirection = e.value;
1010
+ break;
1011
+ default:
1012
+ G(t, e, a);
1013
+ break;
1014
+ }
1015
+ e = a.next();
1016
+ }
1017
+ return t;
1018
+ }
1019
+ }
1020
+ class Xt {
1021
+ constructor() {
1022
+ this.ForEntityName = "POINT";
1023
+ }
1024
+ parseEntity(a, e) {
1025
+ const x = { type: e.value };
1026
+ for (e = a.next(); !a.isEOF() && e.code !== 0; ) {
1027
+ switch (e.code) {
1028
+ case 10:
1029
+ x.position = F(a);
1030
+ break;
1031
+ case 39:
1032
+ x.thickness = e.value;
1033
+ break;
1034
+ case 210:
1035
+ x.extrusionDirection = F(a);
1036
+ break;
1037
+ case 100:
1038
+ break;
1039
+ default:
1040
+ G(x, e, a);
1041
+ break;
1042
+ }
1043
+ e = a.next();
1044
+ }
1045
+ return x;
1046
+ }
1047
+ }
1048
+ class Gt {
1049
+ constructor() {
1050
+ this.ForEntityName = "VERTEX";
1051
+ }
1052
+ parseEntity(a, e) {
1053
+ var t = { type: e.value };
1054
+ for (e = a.next(); !a.isEOF() && e.code !== 0; ) {
1055
+ switch (e.code) {
1056
+ case 10:
1057
+ t.x = e.value;
1058
+ break;
1059
+ case 20:
1060
+ t.y = e.value;
1061
+ break;
1062
+ case 30:
1063
+ t.z = e.value;
1064
+ break;
1065
+ case 40:
1066
+ break;
1067
+ case 41:
1068
+ break;
1069
+ case 42:
1070
+ e.value != 0 && (t.bulge = e.value);
1071
+ break;
1072
+ case 70:
1073
+ t.curveFittingVertex = (e.value & 1) !== 0, t.curveFitTangent = (e.value & 2) !== 0, t.splineVertex = (e.value & 8) !== 0, t.splineControlPoint = (e.value & 16) !== 0, t.threeDPolylineVertex = (e.value & 32) !== 0, t.threeDPolylineMesh = (e.value & 64) !== 0, t.polyfaceMeshVertex = (e.value & 128) !== 0;
1074
+ break;
1075
+ case 50:
1076
+ break;
1077
+ case 71:
1078
+ t.faceA = e.value;
1079
+ break;
1080
+ case 72:
1081
+ t.faceB = e.value;
1082
+ break;
1083
+ case 73:
1084
+ t.faceC = e.value;
1085
+ break;
1086
+ case 74:
1087
+ t.faceD = e.value;
1088
+ break;
1089
+ default:
1090
+ G(t, e, a);
1091
+ break;
1092
+ }
1093
+ e = a.next();
1094
+ }
1095
+ return t;
1096
+ }
1097
+ }
1098
+ class Yt {
1099
+ constructor() {
1100
+ this.ForEntityName = "POLYLINE";
1101
+ }
1102
+ parseEntity(a, e) {
1103
+ var t = { type: e.value, vertices: [] };
1104
+ for (e = a.next(); !a.isEOF() && e.code !== 0; ) {
1105
+ switch (e.code) {
1106
+ case 10:
1107
+ break;
1108
+ case 20:
1109
+ break;
1110
+ case 30:
1111
+ break;
1112
+ case 39:
1113
+ t.thickness = e.value;
1114
+ break;
1115
+ case 40:
1116
+ break;
1117
+ case 41:
1118
+ break;
1119
+ case 70:
1120
+ t.shape = (e.value & 1) !== 0, t.includesCurveFitVertices = (e.value & 2) !== 0, t.includesSplineFitVertices = (e.value & 4) !== 0, t.is3dPolyline = (e.value & 8) !== 0, t.is3dPolygonMesh = (e.value & 16) !== 0, t.is3dPolygonMeshClosed = (e.value & 32) !== 0, t.isPolyfaceMesh = (e.value & 64) !== 0, t.hasContinuousLinetypePattern = (e.value & 128) !== 0;
1121
+ break;
1122
+ case 71:
1123
+ break;
1124
+ case 72:
1125
+ break;
1126
+ case 73:
1127
+ break;
1128
+ case 74:
1129
+ break;
1130
+ case 75:
1131
+ break;
1132
+ case 210:
1133
+ t.extrusionDirection = F(a);
1134
+ break;
1135
+ default:
1136
+ G(t, e, a);
1137
+ break;
1138
+ }
1139
+ e = a.next();
1140
+ }
1141
+ return t.vertices = Zt(a, e), t;
1142
+ }
1143
+ }
1144
+ function Zt(s, a) {
1145
+ const e = new Gt(), t = [];
1146
+ for (; !s.isEOF(); )
1147
+ if (a.code === 0) {
1148
+ if (a.value === "VERTEX")
1149
+ t.push(e.parseEntity(s, a)), a = s.lastReadGroup;
1150
+ else if (a.value === "SEQEND") {
1151
+ jt(s, a);
1152
+ break;
1153
+ }
1154
+ }
1155
+ return t;
1156
+ }
1157
+ function jt(s, a) {
1158
+ const e = { type: a.value };
1159
+ for (a = s.next(); !s.isEOF() && a.code != 0; )
1160
+ G(e, a, s), a = s.next();
1161
+ return e;
1162
+ }
1163
+ class qt {
1164
+ constructor() {
1165
+ this.ForEntityName = "SOLID";
1166
+ }
1167
+ parseEntity(a, e) {
1168
+ const t = { type: e.value, points: [] };
1169
+ for (e = a.next(); !a.isEOF() && e.code !== 0; ) {
1170
+ switch (e.code) {
1171
+ case 10:
1172
+ t.points[0] = F(a);
1173
+ break;
1174
+ case 11:
1175
+ t.points[1] = F(a);
1176
+ break;
1177
+ case 12:
1178
+ t.points[2] = F(a);
1179
+ break;
1180
+ case 13:
1181
+ t.points[3] = F(a);
1182
+ break;
1183
+ case 210:
1184
+ t.extrusionDirection = F(a);
1185
+ break;
1186
+ default:
1187
+ G(t, e, a);
1188
+ break;
1189
+ }
1190
+ e = a.next();
1191
+ }
1192
+ return t;
1193
+ }
1194
+ }
1195
+ class Kt {
1196
+ constructor() {
1197
+ this.ForEntityName = "SPLINE";
1198
+ }
1199
+ parseEntity(a, e) {
1200
+ const t = { type: e.value };
1201
+ for (e = a.next(); !a.isEOF() && e.code !== 0; ) {
1202
+ switch (e.code) {
1203
+ case 10:
1204
+ t.controlPoints || (t.controlPoints = []), t.controlPoints.push(F(a));
1205
+ break;
1206
+ case 11:
1207
+ t.fitPoints || (t.fitPoints = []), t.fitPoints.push(F(a));
1208
+ break;
1209
+ case 12:
1210
+ t.startTangent = F(a);
1211
+ break;
1212
+ case 13:
1213
+ t.endTangent = F(a);
1214
+ break;
1215
+ case 40:
1216
+ t.knotValues || (t.knotValues = []), t.knotValues.push(e.value);
1217
+ break;
1218
+ case 70:
1219
+ (e.value & 1) != 0 && (t.closed = !0), (e.value & 2) != 0 && (t.periodic = !0), (e.value & 4) != 0 && (t.rational = !0), (e.value & 8) != 0 && (t.planar = !0), (e.value & 16) != 0 && (t.planar = !0, t.linear = !0);
1220
+ break;
1221
+ case 71:
1222
+ t.degreeOfSplineCurve = e.value;
1223
+ break;
1224
+ case 72:
1225
+ t.numberOfKnots = e.value;
1226
+ break;
1227
+ case 73:
1228
+ t.numberOfControlPoints = e.value;
1229
+ break;
1230
+ case 74:
1231
+ t.numberOfFitPoints = e.value;
1232
+ break;
1233
+ case 210:
1234
+ t.normalVector = F(a);
1235
+ break;
1236
+ default:
1237
+ G(t, e, a);
1238
+ break;
1239
+ }
1240
+ e = a.next();
1241
+ }
1242
+ return t;
1243
+ }
1244
+ }
1245
+ class Jt {
1246
+ constructor() {
1247
+ this.ForEntityName = "TEXT";
1248
+ }
1249
+ parseEntity(a, e) {
1250
+ const t = { type: e.value };
1251
+ for (e = a.next(); !a.isEOF() && e.code !== 0; ) {
1252
+ switch (e.code) {
1253
+ case 10:
1254
+ t.startPoint = F(a);
1255
+ break;
1256
+ case 11:
1257
+ t.endPoint = F(a);
1258
+ break;
1259
+ case 40:
1260
+ t.textHeight = e.value;
1261
+ break;
1262
+ case 41:
1263
+ t.xScale = e.value;
1264
+ break;
1265
+ case 50:
1266
+ t.rotation = e.value;
1267
+ break;
1268
+ case 1:
1269
+ t.text = e.value;
1270
+ break;
1271
+ // NOTE: 72 and 73 are meaningless without 11 (second alignment point)
1272
+ case 72:
1273
+ t.halign = e.value;
1274
+ break;
1275
+ case 73:
1276
+ t.valign = e.value;
1277
+ break;
1278
+ default:
1279
+ G(t, e, a);
1280
+ break;
1281
+ }
1282
+ e = a.next();
1283
+ }
1284
+ return t;
1285
+ }
1286
+ }
1287
+ var ge = { exports: {} }, Qt = ge.exports, Re;
1288
+ function ea() {
1289
+ return Re || (Re = 1, (function(s) {
1290
+ (function(a, e) {
1291
+ s.exports ? s.exports = e() : a.log = e();
1292
+ })(Qt, function() {
1293
+ var a = function() {
1294
+ }, e = "undefined", t = typeof window !== e && typeof window.navigator !== e && /Trident\/|MSIE /.test(window.navigator.userAgent), x = [
1295
+ "trace",
1296
+ "debug",
1297
+ "info",
1298
+ "warn",
1299
+ "error"
1300
+ ], l = {}, p = null;
1301
+ function n(A, R) {
1302
+ var k = A[R];
1303
+ if (typeof k.bind == "function")
1304
+ return k.bind(A);
1305
+ try {
1306
+ return Function.prototype.bind.call(k, A);
1307
+ } catch (Y) {
1308
+ return function() {
1309
+ return Function.prototype.apply.apply(k, [A, arguments]);
1310
+ };
1311
+ }
1312
+ }
1313
+ function f() {
1314
+ console.log && (console.log.apply ? console.log.apply(console, arguments) : Function.prototype.apply.apply(console.log, [console, arguments])), console.trace && console.trace();
1315
+ }
1316
+ function E(A) {
1317
+ return A === "debug" && (A = "log"), typeof console === e ? !1 : A === "trace" && t ? f : console[A] !== void 0 ? n(console, A) : console.log !== void 0 ? n(console, "log") : a;
1318
+ }
1319
+ function y() {
1320
+ for (var A = this.getLevel(), R = 0; R < x.length; R++) {
1321
+ var k = x[R];
1322
+ this[k] = R < A ? a : this.methodFactory(k, A, this.name);
1323
+ }
1324
+ if (this.log = this.debug, typeof console === e && A < this.levels.SILENT)
1325
+ return "No console available for logging";
1326
+ }
1327
+ function w(A) {
1328
+ return function() {
1329
+ typeof console !== e && (y.call(this), this[A].apply(this, arguments));
1330
+ };
1331
+ }
1332
+ function O(A, R, k) {
1333
+ return E(A) || w.apply(this, arguments);
1334
+ }
1335
+ function z(A, R) {
1336
+ var k = this, Y, b, _, T = "loglevel";
1337
+ typeof A == "string" ? T += ":" + A : typeof A == "symbol" && (T = void 0);
1338
+ function v(D) {
1339
+ var C = (x[D] || "silent").toUpperCase();
1340
+ if (!(typeof window === e || !T)) {
1341
+ try {
1342
+ window.localStorage[T] = C;
1343
+ return;
1344
+ } catch (Q) {
1345
+ }
1346
+ try {
1347
+ window.document.cookie = encodeURIComponent(T) + "=" + C + ";";
1348
+ } catch (Q) {
1349
+ }
1350
+ }
1351
+ }
1352
+ function c() {
1353
+ var D;
1354
+ if (!(typeof window === e || !T)) {
1355
+ try {
1356
+ D = window.localStorage[T];
1357
+ } catch (pe) {
1358
+ }
1359
+ if (typeof D === e)
1360
+ try {
1361
+ var C = window.document.cookie, Q = encodeURIComponent(T), re = C.indexOf(Q + "=");
1362
+ re !== -1 && (D = /^([^;]+)/.exec(
1363
+ C.slice(re + Q.length + 1)
1364
+ )[1]);
1365
+ } catch (pe) {
1366
+ }
1367
+ return k.levels[D] === void 0 && (D = void 0), D;
1368
+ }
1369
+ }
1370
+ function L() {
1371
+ if (!(typeof window === e || !T)) {
1372
+ try {
1373
+ window.localStorage.removeItem(T);
1374
+ } catch (D) {
1375
+ }
1376
+ try {
1377
+ window.document.cookie = encodeURIComponent(T) + "=; expires=Thu, 01 Jan 1970 00:00:00 UTC";
1378
+ } catch (D) {
1379
+ }
1380
+ }
1381
+ }
1382
+ function B(D) {
1383
+ var C = D;
1384
+ if (typeof C == "string" && k.levels[C.toUpperCase()] !== void 0 && (C = k.levels[C.toUpperCase()]), typeof C == "number" && C >= 0 && C <= k.levels.SILENT)
1385
+ return C;
1386
+ throw new TypeError("log.setLevel() called with invalid level: " + D);
1387
+ }
1388
+ k.name = A, k.levels = {
1389
+ TRACE: 0,
1390
+ DEBUG: 1,
1391
+ INFO: 2,
1392
+ WARN: 3,
1393
+ ERROR: 4,
1394
+ SILENT: 5
1395
+ }, k.methodFactory = R || O, k.getLevel = function() {
1396
+ return _ != null ? _ : b != null ? b : Y;
1397
+ }, k.setLevel = function(D, C) {
1398
+ return _ = B(D), C !== !1 && v(_), y.call(k);
1399
+ }, k.setDefaultLevel = function(D) {
1400
+ b = B(D), c() || k.setLevel(D, !1);
1401
+ }, k.resetLevel = function() {
1402
+ _ = null, L(), y.call(k);
1403
+ }, k.enableAll = function(D) {
1404
+ k.setLevel(k.levels.TRACE, D);
1405
+ }, k.disableAll = function(D) {
1406
+ k.setLevel(k.levels.SILENT, D);
1407
+ }, k.rebuild = function() {
1408
+ if (p !== k && (Y = B(p.getLevel())), y.call(k), p === k)
1409
+ for (var D in l)
1410
+ l[D].rebuild();
1411
+ }, Y = B(
1412
+ p ? p.getLevel() : "WARN"
1413
+ );
1414
+ var U = c();
1415
+ U != null && (_ = B(U)), y.call(k);
1416
+ }
1417
+ p = new z(), p.getLogger = function(R) {
1418
+ if (typeof R != "symbol" && typeof R != "string" || R === "")
1419
+ throw new TypeError("You must supply a name when creating a logger.");
1420
+ var k = l[R];
1421
+ return k || (k = l[R] = new z(
1422
+ R,
1423
+ p.methodFactory
1424
+ )), k;
1425
+ };
1426
+ var $ = typeof window !== e ? window.log : void 0;
1427
+ return p.noConflict = function() {
1428
+ return typeof window !== e && window.log === p && (window.log = $), p;
1429
+ }, p.getLoggers = function() {
1430
+ return l;
1431
+ }, p.default = p, p;
1432
+ });
1433
+ })(ge)), ge.exports;
1434
+ }
1435
+ var ta = ea();
1436
+ const P = /* @__PURE__ */ ot(ta);
1437
+ P.setLevel("error");
1438
+ function aa(s) {
1439
+ s.registerEntityHandler(Vt), s.registerEntityHandler(Mt), s.registerEntityHandler(Ot), s.registerEntityHandler(Nt), s.registerEntityHandler(Ht), s.registerEntityHandler(Rt), s.registerEntityHandler(zt), s.registerEntityHandler($t), s.registerEntityHandler(Bt), s.registerEntityHandler(Wt), s.registerEntityHandler(Xt), s.registerEntityHandler(Yt), s.registerEntityHandler(qt), s.registerEntityHandler(Kt), s.registerEntityHandler(Jt);
1440
+ }
1441
+ class na {
1442
+ constructor() {
1443
+ this._entityHandlers = {}, aa(this);
1444
+ }
1445
+ parse(a) {
1446
+ return typeof a == "string" ? this._parse(a) : (console.error("Cannot read dxf source of type `" + typeof a), null);
1447
+ }
1448
+ registerEntityHandler(a) {
1449
+ const e = new a();
1450
+ this._entityHandlers[e.ForEntityName] = e;
1451
+ }
1452
+ parseSync(a) {
1453
+ return this.parse(a);
1454
+ }
1455
+ parseStream(a) {
1456
+ let e = "";
1457
+ const t = this;
1458
+ return new Promise((x, l) => {
1459
+ a.on("data", (p) => {
1460
+ e += p;
1461
+ }), a.on("end", () => {
1462
+ try {
1463
+ x(t._parse(e));
1464
+ } catch (p) {
1465
+ l(p);
1466
+ }
1467
+ }), a.on("error", (p) => {
1468
+ l(p);
1469
+ });
1470
+ });
1471
+ }
1472
+ _parse(a) {
1473
+ const e = {};
1474
+ let t = 0;
1475
+ const x = a.split(/\r\n|\r|\n/g), l = new At(x);
1476
+ if (!l.hasNext())
1477
+ throw Error("Empty file");
1478
+ const p = this;
1479
+ let n;
1480
+ function f() {
1481
+ for (n = l.next(); !l.isEOF(); )
1482
+ if (n.code === 0 && n.value === "SECTION") {
1483
+ if (n = l.next(), n.code !== 2) {
1484
+ console.error("Unexpected code %s after 0:SECTION", Xe(n)), n = l.next();
1485
+ continue;
1486
+ }
1487
+ n.value === "HEADER" ? (P.debug("> HEADER"), e.header = E(), P.debug("<")) : n.value === "BLOCKS" ? (P.debug("> BLOCKS"), e.blocks = y(), P.debug("<")) : n.value === "ENTITIES" ? (P.debug("> ENTITIES"), e.entities = b(!1), P.debug("<")) : n.value === "TABLES" ? (P.debug("> TABLES"), e.tables = O(), P.debug("<")) : n.value === "EOF" ? P.debug("EOF") : P.warn("Skipping section '%s'", n.value);
1488
+ } else
1489
+ n = l.next();
1490
+ }
1491
+ function E() {
1492
+ let v = null, c = null;
1493
+ const L = {};
1494
+ for (n = l.next(); ; ) {
1495
+ if (te(n, 0, "ENDSEC")) {
1496
+ v && (L[v] = c);
1497
+ break;
1498
+ } else n.code === 9 ? (v && (L[v] = c), v = n.value) : n.code === 10 ? c = { x: n.value } : n.code === 20 ? c.y = n.value : n.code === 30 ? c.z = n.value : c = n.value;
1499
+ n = l.next();
1500
+ }
1501
+ return n = l.next(), L;
1502
+ }
1503
+ function y() {
1504
+ const v = {};
1505
+ for (n = l.next(); n.value !== "EOF" && !te(n, 0, "ENDSEC"); )
1506
+ if (te(n, 0, "BLOCK")) {
1507
+ P.debug("block {");
1508
+ const c = w();
1509
+ P.debug("}"), T(c), c.name ? v[c.name] = c : P.error('block with handle "' + c.handle + '" is missing a name.');
1510
+ } else
1511
+ ie(n), n = l.next();
1512
+ return v;
1513
+ }
1514
+ function w() {
1515
+ const v = {};
1516
+ for (n = l.next(); n.value !== "EOF"; ) {
1517
+ switch (n.code) {
1518
+ case 1:
1519
+ v.xrefPath = n.value, n = l.next();
1520
+ break;
1521
+ case 2:
1522
+ v.name = n.value, n = l.next();
1523
+ break;
1524
+ case 3:
1525
+ v.name2 = n.value, n = l.next();
1526
+ break;
1527
+ case 5:
1528
+ v.handle = n.value, n = l.next();
1529
+ break;
1530
+ case 8:
1531
+ v.layer = n.value, n = l.next();
1532
+ break;
1533
+ case 10:
1534
+ v.position = _(n), n = l.next();
1535
+ break;
1536
+ case 67:
1537
+ v.paperSpace = !!(n.value && n.value == 1), n = l.next();
1538
+ break;
1539
+ case 70:
1540
+ n.value != 0 && (v.type = n.value), n = l.next();
1541
+ break;
1542
+ case 100:
1543
+ n = l.next();
1544
+ break;
1545
+ case 330:
1546
+ v.ownerHandle = n.value, n = l.next();
1547
+ break;
1548
+ case 0:
1549
+ if (n.value == "ENDBLK")
1550
+ break;
1551
+ v.entities = b(!0);
1552
+ break;
1553
+ default:
1554
+ ie(n), n = l.next();
1555
+ }
1556
+ if (te(n, 0, "ENDBLK")) {
1557
+ n = l.next();
1558
+ break;
1559
+ }
1560
+ }
1561
+ return v;
1562
+ }
1563
+ function O() {
1564
+ const v = {};
1565
+ for (n = l.next(); n.value !== "EOF" && !te(n, 0, "ENDSEC"); )
1566
+ te(n, 0, "TABLE") ? (n = l.next(), Y[n.value] ? (P.debug(n.value + " Table {"), v[Y[n.value].tableName] = $(n), P.debug("}")) : P.debug("Unhandled Table " + n.value)) : n = l.next();
1567
+ return n = l.next(), v;
1568
+ }
1569
+ const z = "ENDTAB";
1570
+ function $(v) {
1571
+ const c = Y[v.value], L = {};
1572
+ let B = 0;
1573
+ for (n = l.next(); !te(n, 0, z); )
1574
+ switch (n.code) {
1575
+ case 5:
1576
+ L.handle = n.value, n = l.next();
1577
+ break;
1578
+ case 330:
1579
+ L.ownerHandle = n.value, n = l.next();
1580
+ break;
1581
+ case 100:
1582
+ n.value === "AcDbSymbolTable" || ie(n), n = l.next();
1583
+ break;
1584
+ case 70:
1585
+ B = n.value, n = l.next();
1586
+ break;
1587
+ case 0:
1588
+ n.value === c.dxfSymbolName ? L[c.tableRecordsProperty] = c.parseTableRecords() : (ie(n), n = l.next());
1589
+ break;
1590
+ default:
1591
+ ie(n), n = l.next();
1592
+ }
1593
+ const U = L[c.tableRecordsProperty];
1594
+ if (U) {
1595
+ let D = (() => {
1596
+ if (U.constructor === Array)
1597
+ return U.length;
1598
+ if (typeof U == "object")
1599
+ return Object.keys(U).length;
1600
+ })();
1601
+ B !== D && P.warn("Parsed " + D + " " + c.dxfSymbolName + "'s but expected " + B);
1602
+ }
1603
+ return n = l.next(), L;
1604
+ }
1605
+ function A() {
1606
+ const v = [];
1607
+ let c = {};
1608
+ for (P.debug("ViewPort {"), n = l.next(); !te(n, 0, z); )
1609
+ switch (n.code) {
1610
+ case 2:
1611
+ c.name = n.value, n = l.next();
1612
+ break;
1613
+ case 10:
1614
+ c.lowerLeftCorner = _(n), n = l.next();
1615
+ break;
1616
+ case 11:
1617
+ c.upperRightCorner = _(n), n = l.next();
1618
+ break;
1619
+ case 12:
1620
+ c.center = _(n), n = l.next();
1621
+ break;
1622
+ case 13:
1623
+ c.snapBasePoint = _(n), n = l.next();
1624
+ break;
1625
+ case 14:
1626
+ c.snapSpacing = _(n), n = l.next();
1627
+ break;
1628
+ case 15:
1629
+ c.gridSpacing = _(n), n = l.next();
1630
+ break;
1631
+ case 16:
1632
+ c.viewDirectionFromTarget = _(n), n = l.next();
1633
+ break;
1634
+ case 17:
1635
+ c.viewTarget = _(n), n = l.next();
1636
+ break;
1637
+ case 42:
1638
+ c.lensLength = n.value, n = l.next();
1639
+ break;
1640
+ case 43:
1641
+ c.frontClippingPlane = n.value, n = l.next();
1642
+ break;
1643
+ case 44:
1644
+ c.backClippingPlane = n.value, n = l.next();
1645
+ break;
1646
+ case 45:
1647
+ c.viewHeight = n.value, n = l.next();
1648
+ break;
1649
+ case 50:
1650
+ c.snapRotationAngle = n.value, n = l.next();
1651
+ break;
1652
+ case 51:
1653
+ c.viewTwistAngle = n.value, n = l.next();
1654
+ break;
1655
+ case 79:
1656
+ c.orthographicType = n.value, n = l.next();
1657
+ break;
1658
+ case 110:
1659
+ c.ucsOrigin = _(n), n = l.next();
1660
+ break;
1661
+ case 111:
1662
+ c.ucsXAxis = _(n), n = l.next();
1663
+ break;
1664
+ case 112:
1665
+ c.ucsYAxis = _(n), n = l.next();
1666
+ break;
1667
+ case 110:
1668
+ c.ucsOrigin = _(n), n = l.next();
1669
+ break;
1670
+ case 281:
1671
+ c.renderMode = n.value, n = l.next();
1672
+ break;
1673
+ case 281:
1674
+ c.defaultLightingType = n.value, n = l.next();
1675
+ break;
1676
+ case 292:
1677
+ c.defaultLightingOn = n.value, n = l.next();
1678
+ break;
1679
+ case 330:
1680
+ c.ownerHandle = n.value, n = l.next();
1681
+ break;
1682
+ case 63:
1683
+ // These are all ambient color. Perhaps should be a gradient when multiple are set.
1684
+ case 421:
1685
+ case 431:
1686
+ c.ambientColor = n.value, n = l.next();
1687
+ break;
1688
+ case 0:
1689
+ n.value === "VPORT" && (P.debug("}"), v.push(c), P.debug("ViewPort {"), c = {}, n = l.next());
1690
+ break;
1691
+ default:
1692
+ ie(n), n = l.next();
1693
+ break;
1694
+ }
1695
+ return P.debug("}"), v.push(c), v;
1696
+ }
1697
+ function R() {
1698
+ const v = {};
1699
+ let c = {}, L = 0, B;
1700
+ for (P.debug("LType {"), n = l.next(); !te(n, 0, "ENDTAB"); )
1701
+ switch (n.code) {
1702
+ case 2:
1703
+ c.name = n.value, B = n.value, n = l.next();
1704
+ break;
1705
+ case 3:
1706
+ c.description = n.value, n = l.next();
1707
+ break;
1708
+ case 73:
1709
+ L = n.value, L > 0 && (c.pattern = []), n = l.next();
1710
+ break;
1711
+ case 40:
1712
+ c.patternLength = n.value, n = l.next();
1713
+ break;
1714
+ case 49:
1715
+ c.pattern.push(n.value), n = l.next();
1716
+ break;
1717
+ case 0:
1718
+ P.debug("}"), L > 0 && L !== c.pattern.length && P.warn("lengths do not match on LTYPE pattern"), v[B] = c, c = {}, P.debug("LType {"), n = l.next();
1719
+ break;
1720
+ default:
1721
+ n = l.next();
1722
+ }
1723
+ return P.debug("}"), v[B] = c, v;
1724
+ }
1725
+ function k() {
1726
+ const v = {};
1727
+ let c = {}, L;
1728
+ for (P.debug("Layer {"), n = l.next(); !te(n, 0, "ENDTAB"); )
1729
+ switch (n.code) {
1730
+ case 2:
1731
+ c.name = n.value, L = n.value, n = l.next();
1732
+ break;
1733
+ case 62:
1734
+ c.visible = n.value >= 0, c.colorIndex = Math.abs(n.value), c.color = oa(c.colorIndex), n = l.next();
1735
+ break;
1736
+ case 70:
1737
+ c.frozen = (n.value & 1) != 0 || (n.value & 2) != 0, n = l.next();
1738
+ break;
1739
+ case 0:
1740
+ n.value === "LAYER" && (P.debug("}"), v[L] = c, P.debug("Layer {"), c = {}, L = void 0, n = l.next());
1741
+ break;
1742
+ default:
1743
+ ie(n), n = l.next();
1744
+ break;
1745
+ }
1746
+ return P.debug("}"), v[L] = c, v;
1747
+ }
1748
+ const Y = {
1749
+ VPORT: {
1750
+ tableRecordsProperty: "viewPorts",
1751
+ tableName: "viewPort",
1752
+ dxfSymbolName: "VPORT",
1753
+ parseTableRecords: A
1754
+ },
1755
+ LTYPE: {
1756
+ tableRecordsProperty: "lineTypes",
1757
+ tableName: "lineType",
1758
+ dxfSymbolName: "LTYPE",
1759
+ parseTableRecords: R
1760
+ },
1761
+ LAYER: {
1762
+ tableRecordsProperty: "layers",
1763
+ tableName: "layer",
1764
+ dxfSymbolName: "LAYER",
1765
+ parseTableRecords: k
1766
+ }
1767
+ };
1768
+ function b(v) {
1769
+ const c = [], L = v ? "ENDBLK" : "ENDSEC";
1770
+ for (v || (n = l.next()); ; )
1771
+ if (n.code === 0) {
1772
+ if (n.value === L)
1773
+ break;
1774
+ const B = p._entityHandlers[n.value];
1775
+ if (B != null) {
1776
+ P.debug(n.value + " {");
1777
+ const U = B.parseEntity(l, n);
1778
+ n = l.lastReadGroup, P.debug("}"), T(U), c.push(U);
1779
+ } else {
1780
+ P.warn("Unhandled entity " + n.value), n = l.next();
1781
+ continue;
1782
+ }
1783
+ } else
1784
+ n = l.next();
1785
+ return L == "ENDSEC" && (n = l.next()), c;
1786
+ }
1787
+ function _(v) {
1788
+ const c = {};
1789
+ let L = v.code;
1790
+ if (c.x = v.value, L += 10, v = l.next(), v.code != L)
1791
+ throw new Error("Expected code for point value to be " + L + " but got " + v.code + ".");
1792
+ return c.y = v.value, L += 10, v = l.next(), v.code != L ? (l.rewind(), c) : (c.z = v.value, c);
1793
+ }
1794
+ function T(v) {
1795
+ if (!v)
1796
+ throw new TypeError("entity cannot be undefined or null");
1797
+ v.handle || (v.handle = t++);
1798
+ }
1799
+ return f(), e;
1800
+ }
1801
+ }
1802
+ function te(s, a, e) {
1803
+ return s.code === a && s.value === e;
1804
+ }
1805
+ function ie(s) {
1806
+ P.debug("unhandled group " + Xe(s));
1807
+ }
1808
+ function Xe(s) {
1809
+ return s.code + ":" + s.value;
1810
+ }
1811
+ function oa(s) {
1812
+ return We[s];
1813
+ }
1814
+ const sa = {
1815
+ key: 0,
1816
+ class: "my-dxf-viewer__toolbar"
1817
+ }, la = {
1818
+ key: 0,
1819
+ class: "my-dxf-viewer__loading"
1820
+ }, ia = {
1821
+ key: 1,
1822
+ class: "my-dxf-viewer__error"
1823
+ }, ra = {
1824
+ key: 2,
1825
+ class: "my-dxf-viewer__empty"
1826
+ }, ca = {
1827
+ key: 1,
1828
+ class: "my-dxf-viewer__info"
1829
+ }, ua = { class: "my-dxf-viewer__info-item" }, da = { class: "my-dxf-viewer__info-item" }, fa = { class: "my-dxf-viewer__info-item" }, va = /* @__PURE__ */ ue({
1830
+ __name: "DxfViewer",
1831
+ props: {
1832
+ dxfUrl: {},
1833
+ dxfData: {},
1834
+ width: { default: "100%" },
1835
+ height: { default: "500px" },
1836
+ backgroundColor: { default: "#ffffff" },
1837
+ lineColor: { default: "#000000" },
1838
+ lineWidth: { default: 1 },
1839
+ showToolbar: { type: Boolean, default: !0 },
1840
+ showInfo: { type: Boolean, default: !0 },
1841
+ showGrid: { type: Boolean, default: !1 },
1842
+ emptyText: { default: "请加载 DXF 文件" }
1843
+ },
1844
+ emits: ["load", "error"],
1845
+ setup(s, { expose: a, emit: e }) {
1846
+ const t = s, x = e, l = K(null), p = K(null), n = K(!1), f = K(""), E = K(null);
1847
+ let y = null, w = null, O = null, z = null, $ = null;
1848
+ const A = K(1), R = K({ x: 0, y: 0 }), k = K(!1), Y = K({ x: 0, y: 0 });
1849
+ let b = null;
1850
+ const _ = se(() => ({
1851
+ "my-dxf-viewer--loading": n.value,
1852
+ "my-dxf-viewer--error": !!f.value
1853
+ })), T = se(() => {
1854
+ var o, r, m;
1855
+ return (m = (r = (o = E.value) == null ? void 0 : o.tables) == null ? void 0 : r.layer) != null && m.layers ? Object.keys(E.value.tables.layer.layers).length : 0;
1856
+ }), v = se(() => {
1857
+ var o;
1858
+ return (o = E.value) != null && o.entities ? E.value.entities.length : 0;
1859
+ }), c = se(() => {
1860
+ var S;
1861
+ if (!((S = E.value) != null && S.header)) return "-";
1862
+ const o = E.value.header.$EXTMIN, r = E.value.header.$EXTMAX;
1863
+ if (!o || !r) return "-";
1864
+ const m = (r.x - o.x).toFixed(2), N = (r.y - o.y).toFixed(2);
1865
+ return `${m} × ${N}`;
1866
+ }), L = () => {
1867
+ if (!p.value) return;
1868
+ const o = p.value, r = o.clientWidth, m = o.clientHeight;
1869
+ y = new it(), y.background = new _e(t.backgroundColor);
1870
+ const N = r / m, S = 1e3;
1871
+ w = new rt(
1872
+ -S * N,
1873
+ S * N,
1874
+ S,
1875
+ -S,
1876
+ 0.1,
1877
+ 1e4
1878
+ ), w.position.z = 100, w.lookAt(0, 0, 0), O = new ct({ antialias: !0 }), O.setSize(r, m), O.setPixelRatio(window.devicePixelRatio), o.appendChild(O.domElement), z = new q(), y.add(z), pe();
1879
+ }, B = (o, r) => {
1880
+ if (!y) return;
1881
+ $ && (y.remove($), $ = null);
1882
+ const m = o || 2e4, N = 50;
1883
+ $ = new gt(m, N, 4079170, 2763306), $.rotation.x = Math.PI / 2, r && $.position.set(r.x, r.y, -0.1), $.visible = t.showGrid, y.add($);
1884
+ }, U = (o) => Ee(null, null, function* () {
1885
+ if (o) {
1886
+ n.value = !0, f.value = "", E.value = null;
1887
+ try {
1888
+ const r = yield fetch(o);
1889
+ if (!r.ok)
1890
+ throw new Error(`HTTP ${r.status}: ${r.statusText}`);
1891
+ const m = yield r.text(), S = new na().parseSync(m);
1892
+ if (!S)
1893
+ throw new Error("DXF 解析返回空数据");
1894
+ E.value = S, x("load", S), S.entities && S.entities.length > 0 ? D(S) : (console.warn("DXF 文件中没有实体数据"), f.value = "DXF 文件中没有可显示的图形");
1895
+ } catch (r) {
1896
+ console.error("DXF 加载/解析错误:", r), f.value = r.message || "加载 DXF 文件失败", x("error", f.value);
1897
+ } finally {
1898
+ n.value = !1;
1899
+ }
1900
+ }
1901
+ }), D = (o) => {
1902
+ if (!y || !z) return;
1903
+ for (; z.children.length > 0; )
1904
+ z.remove(z.children[0]);
1905
+ const r = new _e(t.lineColor), m = /* @__PURE__ */ new Set();
1906
+ o.entities && o.entities.forEach((N) => {
1907
+ m.add(N.type);
1908
+ const S = Q(N, r);
1909
+ S && z.add(S);
1910
+ }), re();
1911
+ }, C = (o, r, m) => {
1912
+ const N = new H().subVectors(r, o), S = N.length(), u = t.lineWidth, i = new bt(S, u), d = new Se({
1913
+ color: m,
1914
+ side: Ve
1915
+ }), h = new Ie(i, d), V = new H().addVectors(o, r).multiplyScalar(0.5);
1916
+ h.position.copy(V);
1917
+ const W = Math.atan2(N.y, N.x);
1918
+ return h.rotation.z = W, h;
1919
+ }, Q = (o, r) => {
1920
+ var N, S;
1921
+ const m = new ut({
1922
+ color: r
1923
+ });
1924
+ try {
1925
+ if (o.type === "LINE") {
1926
+ const u = new H(o.vertices[0].x, o.vertices[0].y, o.vertices[0].z || 0), i = new H(o.vertices[1].x, o.vertices[1].y, o.vertices[1].z || 0);
1927
+ if (t.lineWidth > 1)
1928
+ return C(u, i, r);
1929
+ {
1930
+ const d = new j(), h = new Float32Array([u.x, u.y, u.z, i.x, i.y, i.z]);
1931
+ return d.setAttribute("position", new fe(h, 3)), new J(d, m);
1932
+ }
1933
+ } else if (o.type === "LWPOLYLINE") {
1934
+ const u = [];
1935
+ if (o.vertices.forEach((i) => {
1936
+ u.push(new H(i.x, i.y, 0));
1937
+ }), o.shape && u.length > 0 && u.push(u[0].clone()), t.lineWidth > 1 && u.length > 1) {
1938
+ const i = new q();
1939
+ for (let d = 0; d < u.length - 1; d++) {
1940
+ const h = C(u[d], u[d + 1], r);
1941
+ i.add(h);
1942
+ }
1943
+ return i;
1944
+ } else {
1945
+ const i = new j().setFromPoints(u);
1946
+ return new J(i, m);
1947
+ }
1948
+ } else if (o.type === "POLYLINE") {
1949
+ const u = [];
1950
+ if (o.vertices.forEach((i) => {
1951
+ u.push(new H(i.x, i.y, i.z || 0));
1952
+ }), t.lineWidth > 1 && u.length > 1) {
1953
+ const i = new q();
1954
+ for (let d = 0; d < u.length - 1; d++) {
1955
+ const h = C(u[d], u[d + 1], r);
1956
+ i.add(h);
1957
+ }
1958
+ return i;
1959
+ } else {
1960
+ const i = new j().setFromPoints(u);
1961
+ return new J(i, m);
1962
+ }
1963
+ } else if (o.type === "CIRCLE") {
1964
+ const u = o.radius, h = new be(
1965
+ o.center.x,
1966
+ o.center.y,
1967
+ u,
1968
+ u,
1969
+ 0,
1970
+ 2 * Math.PI,
1971
+ !1,
1972
+ 0
1973
+ ).getPoints(64);
1974
+ if (t.lineWidth > 1) {
1975
+ const V = new q();
1976
+ for (let W = 0; W < h.length; W++) {
1977
+ const ee = h[W], oe = h[(W + 1) % h.length], Ze = C(
1978
+ new H(ee.x, ee.y, 0),
1979
+ new H(oe.x, oe.y, 0),
1980
+ r
1981
+ );
1982
+ V.add(Ze);
1983
+ }
1984
+ return V;
1985
+ } else {
1986
+ const V = new j().setFromPoints(h);
1987
+ return new Te(V, m);
1988
+ }
1989
+ } else if (o.type === "ARC") {
1990
+ const i = new be(
1991
+ o.center.x,
1992
+ o.center.y,
1993
+ o.radius,
1994
+ o.radius,
1995
+ o.startAngle,
1996
+ o.endAngle,
1997
+ !1,
1998
+ 0
1999
+ ).getPoints(50);
2000
+ if (t.lineWidth > 1) {
2001
+ const d = new q();
2002
+ for (let h = 0; h < i.length - 1; h++) {
2003
+ const V = i[h], W = i[h + 1], ee = C(
2004
+ new H(V.x, V.y, 0),
2005
+ new H(W.x, W.y, 0),
2006
+ r
2007
+ );
2008
+ d.add(ee);
2009
+ }
2010
+ return d;
2011
+ } else {
2012
+ const d = new j().setFromPoints(i);
2013
+ return new J(d, m);
2014
+ }
2015
+ } else if (o.type === "SPLINE") {
2016
+ if (o.controlPoints && o.controlPoints.length > 0) {
2017
+ const u = [];
2018
+ o.controlPoints.forEach((h) => {
2019
+ u.push(new H(h.x, h.y, h.z || 0));
2020
+ });
2021
+ const d = new dt(u).getPoints(50);
2022
+ if (t.lineWidth > 1) {
2023
+ const h = new q();
2024
+ for (let V = 0; V < d.length - 1; V++) {
2025
+ const W = C(d[V], d[V + 1], r);
2026
+ h.add(W);
2027
+ }
2028
+ return h;
2029
+ } else {
2030
+ const h = new j().setFromPoints(d);
2031
+ return new J(h, m);
2032
+ }
2033
+ }
2034
+ } else if (o.type === "ELLIPSE") {
2035
+ const i = new be(
2036
+ o.center.x,
2037
+ o.center.y,
2038
+ o.majorAxisEndPoint.x,
2039
+ o.majorAxisEndPoint.y,
2040
+ o.startAngle || 0,
2041
+ o.endAngle || Math.PI * 2,
2042
+ !1,
2043
+ 0
2044
+ ).getPoints(64);
2045
+ if (t.lineWidth > 1) {
2046
+ const d = new q();
2047
+ for (let h = 0; h < i.length - 1; h++) {
2048
+ const V = i[h], W = i[h + 1], ee = C(
2049
+ new H(V.x, V.y, 0),
2050
+ new H(W.x, W.y, 0),
2051
+ r
2052
+ );
2053
+ d.add(ee);
2054
+ }
2055
+ return d;
2056
+ } else {
2057
+ const d = new j().setFromPoints(i);
2058
+ return new J(d, m);
2059
+ }
2060
+ } else if (o.type === "POINT") {
2061
+ const u = new j(), i = new Float32Array([
2062
+ o.position.x,
2063
+ o.position.y,
2064
+ o.position.z || 0
2065
+ ]);
2066
+ u.setAttribute("position", new fe(i, 3));
2067
+ const d = new ft({
2068
+ color: r,
2069
+ size: Math.max(t.lineWidth * 2, 3)
2070
+ });
2071
+ return new vt(u, d);
2072
+ } else if (o.type === "TEXT" || o.type === "MTEXT") {
2073
+ const u = o.text || o.string || "";
2074
+ if (!o.startPoint && !o.position) return null;
2075
+ const i = o.startPoint || o.position, d = o.textHeight || o.height || 10, h = new pt(d * 0.3, 8);
2076
+ h.translate(i.x, i.y, i.z || 0);
2077
+ const V = new Se({
2078
+ color: r,
2079
+ side: Ve
2080
+ });
2081
+ return new Ie(h, V);
2082
+ } else if (o.type === "INSERT") {
2083
+ const u = o.name, i = (S = (N = E.value) == null ? void 0 : N.blocks) == null ? void 0 : S[u];
2084
+ if (!i || !i.entities || i.entities.length === 0)
2085
+ return null;
2086
+ const d = new q(), h = o.position || { x: 0, y: 0, z: 0 }, V = o.xScale !== void 0 ? {
2087
+ x: o.xScale || 1,
2088
+ y: o.yScale || 1,
2089
+ z: o.zScale || 1
2090
+ } : { x: 1, y: 1, z: 1 }, W = o.rotation || 0;
2091
+ return i.entities.forEach((ee) => {
2092
+ const oe = Q(ee, r);
2093
+ oe && (oe.position.set(h.x, h.y, h.z || 0), oe.scale.set(V.x, V.y, V.z), W && (oe.rotation.z = W * Math.PI / 180), d.add(oe));
2094
+ }), d.children.length > 0 ? d : null;
2095
+ } else if (o.type === "DIMENSION") {
2096
+ const u = new q();
2097
+ if (o.definingPoint && o.anchorPoint) {
2098
+ const i = new H(o.definingPoint.x, o.definingPoint.y, 0), d = new H(o.anchorPoint.x, o.anchorPoint.y, 0);
2099
+ if (t.lineWidth > 1)
2100
+ u.add(C(i, d, r));
2101
+ else {
2102
+ const h = new j(), V = new Float32Array([i.x, i.y, i.z, d.x, d.y, d.z]);
2103
+ h.setAttribute("position", new fe(V, 3)), u.add(new J(h, m));
2104
+ }
2105
+ }
2106
+ return u.children.length > 0 ? u : null;
2107
+ } else if (o.type === "HATCH") {
2108
+ if (o.boundaries && o.boundaries.length > 0) {
2109
+ const u = new q();
2110
+ return o.boundaries.forEach((i) => {
2111
+ i.edges && i.edges.forEach((d) => {
2112
+ const h = Q(d, r);
2113
+ h && u.add(h);
2114
+ });
2115
+ }), u.children.length > 0 ? u : null;
2116
+ }
2117
+ return null;
2118
+ } else if (o.type === "3DFACE" || o.type === "SOLID") {
2119
+ if (o.vertices && o.vertices.length >= 3) {
2120
+ const u = [];
2121
+ if (o.vertices.forEach((i) => {
2122
+ u.push(new H(i.x, i.y, i.z || 0));
2123
+ }), u.push(u[0].clone()), t.lineWidth > 1 && u.length > 1) {
2124
+ const i = new q();
2125
+ for (let d = 0; d < u.length - 1; d++) {
2126
+ const h = C(u[d], u[d + 1], r);
2127
+ i.add(h);
2128
+ }
2129
+ return i;
2130
+ } else {
2131
+ const i = new j().setFromPoints(u);
2132
+ return new J(i, m);
2133
+ }
2134
+ }
2135
+ } else {
2136
+ if (o.type === "VERTEX" || o.type === "SEQEND")
2137
+ return null;
2138
+ if (o.type === "ATTRIB" || o.type === "ATTDEF")
2139
+ return null;
2140
+ if (o.type === "LEADER" || o.type === "MLEADER") {
2141
+ if (o.vertices && o.vertices.length > 1) {
2142
+ const u = [];
2143
+ if (o.vertices.forEach((i) => {
2144
+ u.push(new H(i.x, i.y, i.z || 0));
2145
+ }), t.lineWidth > 1) {
2146
+ const i = new q();
2147
+ for (let d = 0; d < u.length - 1; d++)
2148
+ i.add(C(u[d], u[d + 1], r));
2149
+ return i;
2150
+ } else {
2151
+ const i = new j().setFromPoints(u);
2152
+ return new J(i, m);
2153
+ }
2154
+ }
2155
+ return null;
2156
+ } else if (o.type === "RAY" || o.type === "XLINE") {
2157
+ if (o.startPoint && o.unitDirectionVector) {
2158
+ const u = new H(
2159
+ o.startPoint.x,
2160
+ o.startPoint.y,
2161
+ o.startPoint.z || 0
2162
+ ), i = new H(
2163
+ o.unitDirectionVector.x,
2164
+ o.unitDirectionVector.y,
2165
+ o.unitDirectionVector.z || 0
2166
+ ), d = u.clone().add(i.multiplyScalar(1e5));
2167
+ if (t.lineWidth > 1)
2168
+ return C(u, d, r);
2169
+ {
2170
+ const h = new j(), V = new Float32Array([u.x, u.y, u.z, d.x, d.y, d.z]);
2171
+ return h.setAttribute("position", new fe(V, 3)), new J(h, m);
2172
+ }
2173
+ }
2174
+ return null;
2175
+ } else {
2176
+ if (o.type === "REGION")
2177
+ return null;
2178
+ if (o.type === "BODY" || o.type === "3DSOLID")
2179
+ return null;
2180
+ if (o.type === "SURFACE" || o.type === "PLANESURFACE")
2181
+ return null;
2182
+ if (o.type === "VIEWPORT")
2183
+ return null;
2184
+ if (o.type === "IMAGE")
2185
+ return null;
2186
+ if (o.type === "WIPEOUT")
2187
+ return null;
2188
+ if (o.vertices && Array.isArray(o.vertices) && o.vertices.length > 0) {
2189
+ const u = [];
2190
+ if (o.vertices.forEach((i) => {
2191
+ i && typeof i == "object" && i.x !== void 0 && i.y !== void 0 && u.push(new H(i.x, i.y, i.z || 0));
2192
+ }), u.length > 1)
2193
+ if (t.lineWidth > 1) {
2194
+ const i = new q();
2195
+ for (let d = 0; d < u.length - 1; d++) {
2196
+ const h = C(u[d], u[d + 1], r);
2197
+ i.add(h);
2198
+ }
2199
+ return i;
2200
+ } else {
2201
+ const i = new j().setFromPoints(u);
2202
+ return new J(i, m);
2203
+ }
2204
+ }
2205
+ if (o.startPoint && o.endPoint) {
2206
+ const u = new H(
2207
+ o.startPoint.x,
2208
+ o.startPoint.y,
2209
+ o.startPoint.z || 0
2210
+ ), i = new H(
2211
+ o.endPoint.x,
2212
+ o.endPoint.y,
2213
+ o.endPoint.z || 0
2214
+ );
2215
+ if (t.lineWidth > 1)
2216
+ return C(u, i, r);
2217
+ {
2218
+ const d = new j(), h = new Float32Array([u.x, u.y, u.z, i.x, i.y, i.z]);
2219
+ return d.setAttribute("position", new fe(h, 3)), new J(d, m);
2220
+ }
2221
+ }
2222
+ if (o.center && o.radius) {
2223
+ const i = new be(
2224
+ o.center.x,
2225
+ o.center.y,
2226
+ o.radius,
2227
+ o.radius,
2228
+ 0,
2229
+ 2 * Math.PI,
2230
+ !1,
2231
+ 0
2232
+ ).getPoints(64);
2233
+ if (t.lineWidth > 1) {
2234
+ const d = new q();
2235
+ for (let h = 0; h < i.length; h++) {
2236
+ const V = i[h], W = i[(h + 1) % i.length], ee = C(
2237
+ new H(V.x, V.y, 0),
2238
+ new H(W.x, W.y, 0),
2239
+ r
2240
+ );
2241
+ d.add(ee);
2242
+ }
2243
+ return d;
2244
+ } else {
2245
+ const d = new j().setFromPoints(i);
2246
+ return new Te(d, m);
2247
+ }
2248
+ }
2249
+ console.warn(`无法渲染实体类型 ${o.type},缺少必要的几何信息`);
2250
+ }
2251
+ }
2252
+ } catch (u) {
2253
+ console.warn(`创建实体失败 (${o.type}):`, u, o);
2254
+ }
2255
+ return null;
2256
+ }, re = () => {
2257
+ if (!w || !z || !O) return;
2258
+ const o = new ht().setFromObject(z);
2259
+ if (o.isEmpty()) {
2260
+ console.warn("没有实体,无法适应视图");
2261
+ return;
2262
+ }
2263
+ const r = o.getSize(new H()), m = o.getCenter(new H()), N = Math.max(r.x, r.y), S = O.domElement.clientWidth / O.domElement.clientHeight, u = N * 0.6;
2264
+ w.left = -u * S, w.right = u * S, w.top = u, w.bottom = -u, w.position.set(m.x, m.y, 100), w.lookAt(m.x, m.y, 0), w.updateProjectionMatrix();
2265
+ const i = Math.max(N * 1.5, 1e3);
2266
+ B(i, m), A.value = 1, R.value = { x: 0, y: 0 };
2267
+ }, pe = () => {
2268
+ !O || !y || !w || (requestAnimationFrame(pe), O.render(y, w));
2269
+ }, we = () => {
2270
+ if (!w) return;
2271
+ const o = 0.8;
2272
+ w.left *= o, w.right *= o, w.top *= o, w.bottom *= o, w.updateProjectionMatrix(), A.value /= o;
2273
+ }, xe = () => {
2274
+ if (!w) return;
2275
+ const o = 1.25;
2276
+ w.left *= o, w.right *= o, w.top *= o, w.bottom *= o, w.updateProjectionMatrix(), A.value /= o;
2277
+ }, Le = () => {
2278
+ re();
2279
+ }, Ge = () => {
2280
+ $ && ($.visible = !$.visible);
2281
+ }, Ce = (o) => {
2282
+ k.value = !0, Y.value = { x: o.clientX, y: o.clientY };
2283
+ }, Pe = (o) => {
2284
+ if (!k.value || !w || !O) return;
2285
+ const r = o.clientX - Y.value.x, m = o.clientY - Y.value.y, N = -r / O.domElement.clientWidth * (w.right - w.left), S = m / O.domElement.clientHeight * (w.top - w.bottom);
2286
+ w.position.x += N, w.position.y += S, w.updateProjectionMatrix(), Y.value = { x: o.clientX, y: o.clientY };
2287
+ }, he = () => {
2288
+ k.value = !1;
2289
+ }, Fe = (o) => {
2290
+ o.preventDefault(), o.deltaY < 0 ? we() : xe();
2291
+ }, ke = () => {
2292
+ if (!p.value || !w || !O) return;
2293
+ const o = p.value.clientWidth, r = p.value.clientHeight;
2294
+ if (o <= 0 || r <= 0) return;
2295
+ const m = o / r, N = (w.top - w.bottom) / 2, S = N * m;
2296
+ w.left = -S, w.right = S, w.top = N, w.bottom = -N, w.updateProjectionMatrix(), O.setSize(o, r), O.setPixelRatio(window.devicePixelRatio);
2297
+ }, Ye = () => {
2298
+ if (O && (O.dispose(), p.value && O.domElement && p.value.removeChild(O.domElement)), z) {
2299
+ const o = (r) => {
2300
+ r.geometry && r.geometry.dispose(), r.material && (Array.isArray(r.material) ? r.material.forEach((m) => m.dispose()) : r.material.dispose()), r.children && r.children.forEach((m) => o(m));
2301
+ };
2302
+ z.children.forEach((r) => {
2303
+ o(r);
2304
+ });
2305
+ }
2306
+ y = null, w = null, O = null, z = null, $ = null;
2307
+ };
2308
+ return ce(() => t.dxfUrl, (o) => {
2309
+ o && U(o);
2310
+ }, { immediate: !0 }), ce(() => t.dxfData, (o) => {
2311
+ o && (E.value = o, D(o));
2312
+ }, { immediate: !0 }), ce(() => t.backgroundColor, (o) => {
2313
+ y && (y.background = new _e(o));
2314
+ }), ce(() => t.lineColor, () => {
2315
+ E.value && D(E.value);
2316
+ }), ce(() => t.lineWidth, () => {
2317
+ E.value && D(E.value);
2318
+ }), ce(() => t.showGrid, (o) => {
2319
+ $ && ($.visible = o);
2320
+ }), $e(() => {
2321
+ if (L(), window.addEventListener("resize", ke), p.value && (b = new ResizeObserver((o) => {
2322
+ for (const r of o)
2323
+ r.target === p.value && ke();
2324
+ }), b.observe(p.value)), p.value) {
2325
+ const o = p.value;
2326
+ o.addEventListener("mousedown", Ce), o.addEventListener("mousemove", Pe), o.addEventListener("mouseup", he), o.addEventListener("mouseleave", he), o.addEventListener("wheel", Fe, { passive: !1 });
2327
+ }
2328
+ }), Be(() => {
2329
+ if (Ye(), window.removeEventListener("resize", ke), b && p.value && (b.unobserve(p.value), b.disconnect(), b = null), p.value) {
2330
+ const o = p.value;
2331
+ o.removeEventListener("mousedown", Ce), o.removeEventListener("mousemove", Pe), o.removeEventListener("mouseup", he), o.removeEventListener("mouseleave", he), o.removeEventListener("wheel", Fe);
2332
+ }
2333
+ }), a({
2334
+ loadDxf: U,
2335
+ zoomIn: we,
2336
+ zoomOut: xe,
2337
+ resetView: Le,
2338
+ fitToView: re
2339
+ }), (o, r) => {
2340
+ var m;
2341
+ return I(), M("div", {
2342
+ class: ne(["my-dxf-viewer", _.value])
2343
+ }, [
2344
+ s.showToolbar ? (I(), M("div", sa, [
2345
+ g("button", {
2346
+ class: "my-dxf-viewer__btn",
2347
+ onClick: we,
2348
+ title: "放大"
2349
+ }, [...r[0] || (r[0] = [
2350
+ g("svg", {
2351
+ viewBox: "0 0 24 24",
2352
+ width: "18",
2353
+ height: "18",
2354
+ fill: "currentColor"
2355
+ }, [
2356
+ g("path", { d: "M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z" })
2357
+ ], -1)
2358
+ ])]),
2359
+ g("button", {
2360
+ class: "my-dxf-viewer__btn",
2361
+ onClick: xe,
2362
+ title: "缩小"
2363
+ }, [...r[1] || (r[1] = [
2364
+ g("svg", {
2365
+ viewBox: "0 0 24 24",
2366
+ width: "18",
2367
+ height: "18",
2368
+ fill: "currentColor"
2369
+ }, [
2370
+ g("path", { d: "M19,13H5V11H19V13Z" })
2371
+ ], -1)
2372
+ ])]),
2373
+ g("button", {
2374
+ class: "my-dxf-viewer__btn",
2375
+ onClick: Le,
2376
+ title: "适应窗口"
2377
+ }, [...r[2] || (r[2] = [
2378
+ g("svg", {
2379
+ viewBox: "0 0 24 24",
2380
+ width: "18",
2381
+ height: "18",
2382
+ fill: "currentColor"
2383
+ }, [
2384
+ g("path", { d: "M9,3V4H4V9H3V4A1,1 0 0,1 4,3H9M4,20H9V21H4A1,1 0 0,1 3,20V15H4V20M20,20V15H21V20A1,1 0 0,1 20,21H15V20H20M20,9H21V4A1,1 0 0,1 20,3H15V4H20V9Z" })
2385
+ ], -1)
2386
+ ])]),
2387
+ g("button", {
2388
+ class: ne(["my-dxf-viewer__btn", { active: t.showGrid && ((m = ae($)) == null ? void 0 : m.visible) }]),
2389
+ onClick: Ge,
2390
+ title: "显示/隐藏网格"
2391
+ }, [...r[3] || (r[3] = [
2392
+ g("svg", {
2393
+ viewBox: "0 0 24 24",
2394
+ width: "18",
2395
+ height: "18",
2396
+ fill: "currentColor"
2397
+ }, [
2398
+ g("path", { d: "M10,4V8H14V4H10M16,4V8H20V4H16M16,10V14H20V10H16M16,16V20H20V16H16M14,20V16H10V20H14M8,20V16H4V20H8M8,14V10H4V14H8M8,8V4H4V8H8M10,14H14V10H10V14M4,2H20A2,2 0 0,1 22,4V20A2,2 0 0,1 20,22H4C2.92,22 2,21.1 2,20V4A2,2 0 0,1 4,2Z" })
2399
+ ], -1)
2400
+ ])], 2)
2401
+ ])) : X("", !0),
2402
+ g("div", {
2403
+ class: "my-dxf-viewer__canvas-wrapper",
2404
+ ref_key: "containerRef",
2405
+ ref: l
2406
+ }, [
2407
+ g("div", {
2408
+ ref_key: "canvasContainerRef",
2409
+ ref: p,
2410
+ class: "my-dxf-viewer__three-container"
2411
+ }, null, 512),
2412
+ n.value ? (I(), M("div", la, [...r[4] || (r[4] = [
2413
+ g("div", { class: "my-dxf-viewer__spinner" }, null, -1),
2414
+ g("p", null, "解析 DXF 文件中...", -1)
2415
+ ])])) : X("", !0),
2416
+ f.value ? (I(), M("div", ia, [
2417
+ r[5] || (r[5] = g("svg", {
2418
+ viewBox: "0 0 24 24",
2419
+ width: "48",
2420
+ height: "48",
2421
+ fill: "currentColor"
2422
+ }, [
2423
+ g("path", { d: "M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z" })
2424
+ ], -1)),
2425
+ g("p", null, Z(f.value), 1)
2426
+ ])) : X("", !0),
2427
+ !s.dxfUrl && !f.value && !n.value ? (I(), M("div", ra, [
2428
+ r[6] || (r[6] = g("svg", {
2429
+ viewBox: "0 0 24 24",
2430
+ width: "64",
2431
+ height: "64",
2432
+ fill: "currentColor"
2433
+ }, [
2434
+ g("path", { d: "M13,9H18.5L13,3.5V9M6,2H14L20,8V20A2,2 0 0,1 18,22H6C4.89,22 4,21.1 4,20V4C4,2.89 4.89,2 6,2M15,18V16H6V18H15M18,14V12H6V14H18Z" })
2435
+ ], -1)),
2436
+ g("p", null, Z(s.emptyText), 1)
2437
+ ])) : X("", !0)
2438
+ ], 512),
2439
+ s.showInfo && E.value ? (I(), M("div", ca, [
2440
+ g("div", ua, [
2441
+ r[7] || (r[7] = g("span", null, "图层:", -1)),
2442
+ g("span", null, Z(T.value), 1)
2443
+ ]),
2444
+ g("div", da, [
2445
+ r[8] || (r[8] = g("span", null, "实体:", -1)),
2446
+ g("span", null, Z(v.value), 1)
2447
+ ]),
2448
+ g("div", fa, [
2449
+ r[9] || (r[9] = g("span", null, "边界:", -1)),
2450
+ g("span", null, Z(c.value), 1)
2451
+ ])
2452
+ ])) : X("", !0)
2453
+ ], 2);
2454
+ };
2455
+ }
2456
+ }), pa = /* @__PURE__ */ de(va, [["__scopeId", "data-v-37660f6e"]]), ha = {
2457
+ key: 0,
2458
+ class: "data-panel__header"
2459
+ }, ba = { class: "data-panel__title" }, ga = {
2460
+ key: 0,
2461
+ class: "data-panel__icon"
2462
+ }, wa = { class: "icon-placeholder" }, xa = { class: "data-panel__content" }, ka = { class: "data-panel__label" }, ma = { class: "data-panel__value-wrapper" }, ya = { class: "data-panel__value" }, Ea = {
2463
+ key: 0,
2464
+ class: "data-panel__unit"
2465
+ }, _a = {
2466
+ key: 0,
2467
+ class: "data-panel__status"
2468
+ }, La = { class: "status-text" }, Ca = {
2469
+ key: 1,
2470
+ class: "data-panel__description"
2471
+ }, Pa = { key: 0 }, Fa = { key: 1 }, Da = { key: 2 }, Aa = {
2472
+ key: 1,
2473
+ class: "data-panel__footer"
2474
+ }, Ta = {
2475
+ name: "MyDataPanel"
2476
+ }, Sa = /* @__PURE__ */ ue(ye(me({}, Ta), {
2477
+ props: {
2478
+ title: {},
2479
+ dataItems: {},
2480
+ columns: { default: 3 },
2481
+ showIcon: { type: Boolean, default: !0 },
2482
+ theme: { default: "light" },
2483
+ size: { default: "medium" },
2484
+ compact: { type: Boolean, default: !1 }
2485
+ },
2486
+ setup(s) {
2487
+ const a = s, e = se(() => [
2488
+ `data-panel--${a.theme}`,
2489
+ `data-panel--${a.size}`,
2490
+ a.compact && "data-panel--compact"
2491
+ ]), t = se(() => ({
2492
+ gridTemplateColumns: `repeat(${a.columns}, 1fr)`
2493
+ })), x = (f) => {
2494
+ if (f.customStatus)
2495
+ return f.customStatus;
2496
+ const E = Number(f.value);
2497
+ return isNaN(E) ? "normal" : f.min !== void 0 && E < f.min || f.max !== void 0 && E > f.max ? "danger" : f.warnMin !== void 0 && E < f.warnMin || f.warnMax !== void 0 && E > f.warnMax ? "warning" : "normal";
2498
+ }, l = (f) => {
2499
+ const E = x(f);
2500
+ return {
2501
+ normal: "正常",
2502
+ warning: "警告",
2503
+ danger: "异常"
2504
+ }[E];
2505
+ }, p = (f) => typeof f == "string" ? f : f.toFixed(2), n = (f) => [`data-panel__item--${x(f)}`];
2506
+ return (f, E) => (I(), M("div", {
2507
+ class: ne(["data-panel", e.value])
2508
+ }, [
2509
+ s.title || f.$slots.title ? (I(), M("div", ha, [
2510
+ le(f.$slots, "title", {}, () => [
2511
+ g("h3", ba, Z(s.title), 1)
2512
+ ], !0)
2513
+ ])) : X("", !0),
2514
+ g("div", {
2515
+ class: "data-panel__grid",
2516
+ style: Ue(t.value)
2517
+ }, [
2518
+ (I(!0), M(tt, null, at(s.dataItems, (y, w) => (I(), M("div", {
2519
+ key: w,
2520
+ class: ne(["data-panel__item", n(y)])
2521
+ }, [
2522
+ y.icon || s.showIcon ? (I(), M("div", ga, [
2523
+ le(f.$slots, "icon", { item: y }, () => [
2524
+ g("span", wa, Z(y.icon || "📊"), 1)
2525
+ ], !0)
2526
+ ])) : X("", !0),
2527
+ g("div", xa, [
2528
+ g("div", ka, Z(y.label), 1),
2529
+ g("div", ma, [
2530
+ g("span", ya, Z(p(y.value)), 1),
2531
+ y.unit ? (I(), M("span", Ea, Z(y.unit), 1)) : X("", !0)
2532
+ ]),
2533
+ y.showStatus !== !1 ? (I(), M("div", _a, [
2534
+ g("span", {
2535
+ class: ne(["status-dot", `status-dot--${x(y)}`])
2536
+ }, null, 2),
2537
+ g("span", La, Z(l(y)), 1)
2538
+ ])) : X("", !0),
2539
+ y.description ? (I(), M("div", Ca, Z(y.description), 1)) : X("", !0)
2540
+ ]),
2541
+ y.trend ? (I(), M("div", {
2542
+ key: 1,
2543
+ class: ne(["data-panel__trend", `trend--${y.trend}`])
2544
+ }, [
2545
+ y.trend === "up" ? (I(), M("span", Pa, "↑")) : X("", !0),
2546
+ y.trend === "down" ? (I(), M("span", Fa, "↓")) : X("", !0),
2547
+ y.trend === "stable" ? (I(), M("span", Da, "→")) : X("", !0)
2548
+ ], 2)) : X("", !0)
2549
+ ], 2))), 128))
2550
+ ], 4),
2551
+ f.$slots.footer ? (I(), M("div", Aa, [
2552
+ le(f.$slots, "footer", {}, void 0, !0)
2553
+ ])) : X("", !0)
2554
+ ], 2));
2555
+ }
2556
+ })), ze = /* @__PURE__ */ de(Sa, [["__scopeId", "data-v-14261ac2"]]);
2557
+ ze.install = (s) => {
2558
+ s.component("MyDataPanel", ze);
2559
+ };
2560
+ const Va = "data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='17px'%20height='17px'%20viewBox='0%200%2017%2017'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3eDXF查看器%3c/title%3e%3cg%20id='页面-2'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3cg%20id='轮廓化'%20fill='%23333333'%20fill-rule='nonzero'%3e%3cpath%20d='M3.5,2.15%20L13.5,2.15%20C14.3284271,2.15%2015,2.82157288%2015,3.65%20L15,13.65%20C15,14.4784271%2014.3284271,15.15%2013.5,15.15%20L3.5,15.15%20C2.67157288,15.15%202,14.4784271%202,13.65%20L2,3.65%20C2,2.82157288%202.67157288,2.15%203.5,2.15%20Z%20M13.5,3.4%20L3.5,3.4%20C3.36192881,3.4%203.25,3.51192881%203.25,3.65%20L3.25,13.65%20C3.25,13.7880712%203.36192881,13.9%203.5,13.9%20L13.5,13.9%20C13.6380712,13.9%2013.75,13.7880712%2013.75,13.65%20L13.75,3.65%20C13.75,3.51192881%2013.6380712,3.4%2013.5,3.4%20Z%20M8.5,5.15%20C10.1568542,5.15%2011.5,6.49314575%2011.5,8.15%20C11.5,9.80685425%2010.1568542,11.15%208.5,11.15%20C6.84314575,11.15%205.5,9.80685425%205.5,8.15%20C5.5,6.49314575%206.84314575,5.15%208.5,5.15%20Z%20M8.5,6.4%20C7.53350169,6.4%206.75,7.18350169%206.75,8.15%20C6.75,9.11649831%207.53350169,9.9%208.5,9.9%20C9.46649831,9.9%2010.25,9.11649831%2010.25,8.15%20C10.25,7.18350169%209.46649831,6.4%208.5,6.4%20Z%20M8.5,7.025%20C8.84517797,7.025%209.125,7.30482203%209.125,7.65%20L9.125,8.65%20C9.125,8.99517797%208.84517797,9.275%208.5,9.275%20C8.15482203,9.275%207.875,8.99517797%207.875,8.65%20L7.875,7.65%20C7.875,7.30482203%208.15482203,7.025%208.5,7.025%20Z'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", Ia = "data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='17px'%20height='17px'%20viewBox='0%200%2017%2017'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3eDXF查看器-激活%3c/title%3e%3cg%20id='页面-2'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3cg%20id='轮廓化'%20fill='%234A90E2'%20fill-rule='nonzero'%3e%3cpath%20d='M3.5,2.15%20L13.5,2.15%20C14.3284271,2.15%2015,2.82157288%2015,3.65%20L15,13.65%20C15,14.4784271%2014.3284271,15.15%2013.5,15.15%20L3.5,15.15%20C2.67157288,15.15%202,14.4784271%202,13.65%20L2,3.65%20C2,2.82157288%202.67157288,2.15%203.5,2.15%20Z%20M13.5,3.4%20L3.5,3.4%20C3.36192881,3.4%203.25,3.51192881%203.25,3.65%20L3.25,13.65%20C3.25,13.7880712%203.36192881,13.9%203.5,13.9%20L13.5,13.9%20C13.6380712,13.9%2013.75,13.7880712%2013.75,13.65%20L13.75,3.65%20C13.75,3.51192881%2013.6380712,3.4%2013.5,3.4%20Z%20M8.5,5.15%20C10.1568542,5.15%2011.5,6.49314575%2011.5,8.15%20C11.5,9.80685425%2010.1568542,11.15%208.5,11.15%20C6.84314575,11.15%205.5,9.80685425%205.5,8.15%20C5.5,6.49314575%206.84314575,5.15%208.5,5.15%20Z%20M8.5,6.4%20C7.53350169,6.4%206.75,7.18350169%206.75,8.15%20C6.75,9.11649831%207.53350169,9.9%208.5,9.9%20C9.46649831,9.9%2010.25,9.11649831%2010.25,8.15%20C10.25,7.18350169%209.46649831,6.4%208.5,6.4%20Z%20M8.5,7.025%20C8.84517797,7.025%209.125,7.30482203%209.125,7.65%20L9.125,8.65%20C9.125,8.99517797%208.84517797,9.275%208.5,9.275%20C8.15482203,9.275%207.875,8.99517797%207.875,8.65%20L7.875,7.65%20C7.875,7.30482203%208.15482203,7.025%208.5,7.025%20Z'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", Ma = { class: "mix-body" }, Oa = { class: "upload-content" }, Na = {
2561
+ viewBox: "0 0 24 24",
2562
+ width: "48",
2563
+ height: "48",
2564
+ fill: "currentColor",
2565
+ style: { opacity: "0.5" }
2566
+ }, Ha = { class: "upload-text" }, Ra = {
2567
+ key: 0,
2568
+ class: "upload-hint"
2569
+ }, za = {
2570
+ key: 1,
2571
+ class: "viewer-container"
2572
+ }, $a = {
2573
+ key: 0,
2574
+ class: "file-info"
2575
+ }, Ba = { class: "file-name" }, Ua = {
2576
+ DEFAULT_ICON: Va,
2577
+ ACTIVE_ICON: Ia,
2578
+ NAME_CN: "DXF查看器",
2579
+ NAME_EN: "DXF Viewer",
2580
+ ORDER: 3
2581
+ }, Wa = {
2582
+ backgroundColor: "#ffffff",
2583
+ lineColor: "#000000",
2584
+ lineWidth: 1,
2585
+ showToolbar: !0,
2586
+ showInfo: !0,
2587
+ showGrid: !1,
2588
+ fileUrl: {
2589
+ value: "",
2590
+ type: "string",
2591
+ label: "component.options.fileUrl",
2592
+ placeholder: "请上传素材"
2593
+ },
2594
+ fileName: {
2595
+ value: "",
2596
+ type: "string",
2597
+ label: "component.options.fileName",
2598
+ placeholder: "请上传素材"
2599
+ }
2600
+ }, Xa = [], Ga = [], Ya = [], Za = null, ja = { DEFAULT: Ua, OPTIONS: Wa, DATA: Xa, PARAMS: Ga, SOURCE: Ya, COMMON: Za }, qa = /* @__PURE__ */ ue(ye(me({}, ja), {
2601
+ __name: "dxf",
2602
+ props: {
2603
+ conf: { type: Object, default: () => ({}) },
2604
+ uid: { type: String, default: "" },
2605
+ mode: { type: String, default: "edit" },
2606
+ theme: { type: String, default: "light" }
2607
+ },
2608
+ setup(s) {
2609
+ const a = mt(), e = s;
2610
+ class t extends wt {
2611
+ extractStyles() {
2612
+ const _ = this.getOptionValue("backgroundColor", "#ffffff");
2613
+ return {
2614
+ backgroundColor: _,
2615
+ lineColor: this.getOptionValue("lineColor", "#000000"),
2616
+ lineWidth: this.getOptionValue("lineWidth", 1),
2617
+ showToolbar: this.getOptionValue("showToolbar", !0),
2618
+ showInfo: this.getOptionValue("showInfo", !0),
2619
+ showGrid: this.getOptionValue("showGrid", !1),
2620
+ bgColor: _,
2621
+ titleColor: "#111",
2622
+ textColor: "#111",
2623
+ radiusSize: this.getOptionValue("radiusSize", 0)
2624
+ };
2625
+ }
2626
+ init() {
2627
+ this.Style.value = this.extractStyles(), this.applyTheme(), this.Style.value.backgroundColor = this.Style.value.bgColor, w();
2628
+ }
2629
+ }
2630
+ const x = new t(e, "dxf");
2631
+ x.setupLifecycle();
2632
+ const l = x.getStyle(), p = K(null), n = K(null), f = K(""), E = K(""), y = K(!1), w = () => {
2633
+ var _, T, v;
2634
+ const { conf: b } = e;
2635
+ (T = (_ = b == null ? void 0 : b.options) == null ? void 0 : _.fileUrl) != null && T.value && (f.value = b.options.fileUrl.value, E.value = ((v = b.options.fileName) == null ? void 0 : v.value) || "");
2636
+ }, O = () => {
2637
+ var b;
2638
+ (b = p.value) == null || b.click();
2639
+ }, z = (b) => Ee(null, null, function* () {
2640
+ var c, L, B;
2641
+ const _ = b.target, T = (c = _ == null ? void 0 : _.files) == null ? void 0 : c[0];
2642
+ if (!T) return;
2643
+ if (!T.name.toLowerCase().endsWith(".dxf")) {
2644
+ ve.warning("请选择 DXF 文件");
2645
+ return;
2646
+ }
2647
+ f.value && f.value.startsWith("blob:") && URL.revokeObjectURL(f.value);
2648
+ const v = URL.createObjectURL(T);
2649
+ f.value = v, E.value = T.name;
2650
+ try {
2651
+ y.value = !0;
2652
+ const U = yield st(T), D = lt(T.name), C = yield xt.post("upload", {
2653
+ dashboard_uid: a.pageData.id,
2654
+ file_data: U,
2655
+ file_type: D,
2656
+ user_id: ((L = a.session.userInfo) == null ? void 0 : L.id) || ""
2657
+ }, !0);
2658
+ if (C.code === 200 && ((B = C.result) != null && B.relative_path)) {
2659
+ const Q = kt + C.result.relative_path;
2660
+ URL.revokeObjectURL(v), f.value = Q, e.conf && e.conf.options && (e.conf.options.fileUrl || (e.conf.options.fileUrl = { value: "", type: "string", label: "" }), e.conf.options.fileName || (e.conf.options.fileName = { value: "", type: "string", label: "" }), e.conf.options.fileUrl.value = Q, e.conf.options.fileName.value = C.result.file_name || T.name), ve.success("DXF文件上传成功");
2661
+ } else
2662
+ throw new Error(C.msg || "上传失败");
2663
+ } catch (U) {
2664
+ console.error("DXF文件上传失败:", U), ve.error("DXF文件上传失败: " + ((U == null ? void 0 : U.message) || "未知错误"));
2665
+ } finally {
2666
+ y.value = !1, p.value && (p.value.value = "");
2667
+ }
2668
+ }), $ = () => {
2669
+ f.value && URL.revokeObjectURL(f.value), f.value = "", E.value = "", setTimeout(() => {
2670
+ O();
2671
+ }, 100);
2672
+ }, A = (b) => {
2673
+ console.log("DXF 文件加载成功:", b);
2674
+ }, R = (b) => {
2675
+ console.error("DXF 文件加载失败:", b), ve.error("DXF 文件加载失败: " + ((b == null ? void 0 : b.message) || "未知错误"));
2676
+ }, k = (b) => {
2677
+ b.preventDefault(), b.stopPropagation();
2678
+ }, Y = (b) => {
2679
+ var v;
2680
+ b.preventDefault(), b.stopPropagation();
2681
+ const T = (v = b.dataTransfer) == null ? void 0 : v.files;
2682
+ if (T && T.length > 0) {
2683
+ const c = T[0];
2684
+ if (c.name.toLowerCase().endsWith(".dxf")) {
2685
+ if (p.value) {
2686
+ const L = new DataTransfer();
2687
+ L.items.add(c), p.value.files = L.files, z({ target: p.value });
2688
+ }
2689
+ } else
2690
+ ve.warning("请选择 DXF 文件");
2691
+ }
2692
+ };
2693
+ return $e(() => {
2694
+ if (e.mode !== "preview") {
2695
+ const b = document.querySelector(".upload-area");
2696
+ b && (b.addEventListener("dragover", k), b.addEventListener("drop", Y));
2697
+ }
2698
+ }), Be(() => {
2699
+ f.value && URL.revokeObjectURL(f.value);
2700
+ const b = document.querySelector(".upload-area");
2701
+ b && (b.removeEventListener("dragover", k), b.removeEventListener("drop", Y));
2702
+ }), (b, _) => (I(), M("div", {
2703
+ class: "mix-component",
2704
+ style: Ue({ borderRadius: `${ae(l).radiusSize}px` })
2705
+ }, [
2706
+ g("div", Ma, [
2707
+ f.value ? (I(), M("div", za, [
2708
+ e.mode !== "preview" ? (I(), M("div", $a, [
2709
+ g("span", Ba, Z(E.value), 1),
2710
+ g("button", {
2711
+ class: "change-file-btn",
2712
+ onClick: $,
2713
+ title: "更换文件"
2714
+ }, [..._[2] || (_[2] = [
2715
+ g("svg", {
2716
+ viewBox: "0 0 24 24",
2717
+ width: "16",
2718
+ height: "16",
2719
+ fill: "currentColor"
2720
+ }, [
2721
+ g("path", { d: "M12,6V9L16,5L12,1V4A8,8 0 0,0 4,12C4,13.57 4.46,15.03 5.24,16.26L6.7,14.8C6.25,13.97 6,13 6,12A6,6 0 0,1 12,6M18.76,7.74L17.3,9.2C17.74,10.04 18,11 18,12A6,6 0 0,1 12,18V15L8,19L12,23V20A8,8 0 0,0 20,12C20,10.43 19.54,8.97 18.76,7.74Z" })
2722
+ ], -1)
2723
+ ])])
2724
+ ])) : X("", !0),
2725
+ nt(ae(pa), {
2726
+ ref_key: "viewerRef",
2727
+ ref: n,
2728
+ "dxf-url": f.value,
2729
+ width: "100%",
2730
+ height: "100%",
2731
+ "background-color": ae(l).backgroundColor,
2732
+ "line-color": ae(l).lineColor,
2733
+ "line-width": ae(l).lineWidth,
2734
+ "show-toolbar": ae(l).showToolbar,
2735
+ "show-info": ae(l).showInfo,
2736
+ "show-grid": ae(l).showGrid,
2737
+ onLoad: A,
2738
+ onError: R
2739
+ }, null, 8, ["dxf-url", "background-color", "line-color", "line-width", "show-toolbar", "show-info", "show-grid"])
2740
+ ])) : (I(), M("div", {
2741
+ key: 0,
2742
+ class: ne(["upload-area", { "preview-mode": e.mode === "preview" }]),
2743
+ onClick: _[0] || (_[0] = (T) => e.mode !== "preview" && O())
2744
+ }, [
2745
+ g("input", {
2746
+ ref_key: "fileInputRef",
2747
+ ref: p,
2748
+ type: "file",
2749
+ accept: ".dxf",
2750
+ onChange: z,
2751
+ style: { display: "none" }
2752
+ }, null, 544),
2753
+ g("div", Oa, [
2754
+ (I(), M("svg", Na, [..._[1] || (_[1] = [
2755
+ g("path", { d: "M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z" }, null, -1)
2756
+ ])])),
2757
+ g("p", Ha, Z(e.mode === "preview" ? b.$t("component.dxf.noFile") : b.$t("component.dxf.uploadText")), 1),
2758
+ e.mode !== "preview" ? (I(), M("p", Ra, Z(b.$t("component.dxf.uploadHint")), 1)) : X("", !0)
2759
+ ])
2760
+ ], 2))
2761
+ ]),
2762
+ le(b.$slots, "default", {}, void 0, !0)
2763
+ ], 4));
2764
+ }
2765
+ })), ln = /* @__PURE__ */ de(qa, [["__scopeId", "data-v-b94225c8"]]);
2766
+ export {
2767
+ ln as default
2768
+ };