@mlightcad/cad-simple-viewer 1.5.5 → 1.5.6

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 (275) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +3 -0
  3. package/dist/{index.js → cad-simple-viewer.js} +16583 -14248
  4. package/dist/cad-simple-viewer.umd.cjs +921 -0
  5. package/dist/dxf-parser-worker.js +2002 -0
  6. package/dist/libredwg-parser-worker.js +5388 -5122
  7. package/dist/mtext-renderer-worker.js +3061 -2858
  8. package/lib/app/AcApContext.d.ts.map +1 -1
  9. package/lib/app/AcApContext.js +3 -0
  10. package/lib/app/AcApContext.js.map +1 -1
  11. package/lib/app/AcApDocManager.d.ts +7 -0
  12. package/lib/app/AcApDocManager.d.ts.map +1 -1
  13. package/lib/app/AcApDocManager.js +84 -10
  14. package/lib/app/AcApDocManager.js.map +1 -1
  15. package/lib/app/AcDbOpenDatabaseOptions.d.ts +29 -0
  16. package/lib/app/AcDbOpenDatabaseOptions.d.ts.map +1 -1
  17. package/lib/app/AcDbOpenDatabaseOptions.js +10 -1
  18. package/lib/app/AcDbOpenDatabaseOptions.js.map +1 -1
  19. package/lib/app/index.d.ts +1 -0
  20. package/lib/app/index.d.ts.map +1 -1
  21. package/lib/app/index.js +1 -0
  22. package/lib/app/index.js.map +1 -1
  23. package/lib/command/AcApCacheFontCmd.d.ts +25 -0
  24. package/lib/command/AcApCacheFontCmd.d.ts.map +1 -0
  25. package/lib/command/AcApCacheFontCmd.js +142 -0
  26. package/lib/command/AcApCacheFontCmd.js.map +1 -0
  27. package/lib/command/AcApSysVarCmd.d.ts.map +1 -1
  28. package/lib/command/AcApSysVarCmd.js +5 -11
  29. package/lib/command/AcApSysVarCmd.js.map +1 -1
  30. package/lib/command/convert/AcApPngConvertor.d.ts +1 -1
  31. package/lib/command/convert/AcApPngConvertor.d.ts.map +1 -1
  32. package/lib/command/convert/AcApPngConvertor.js +5 -2
  33. package/lib/command/convert/AcApPngConvertor.js.map +1 -1
  34. package/lib/command/draw/AcApArcCmd.d.ts.map +1 -1
  35. package/lib/command/draw/AcApArcCmd.js +2 -5
  36. package/lib/command/draw/AcApArcCmd.js.map +1 -1
  37. package/lib/command/draw/AcApEllipseCmd.d.ts.map +1 -1
  38. package/lib/command/draw/AcApEllipseCmd.js +2 -5
  39. package/lib/command/draw/AcApEllipseCmd.js.map +1 -1
  40. package/lib/command/draw/AcApHatchCmd.d.ts +1 -1
  41. package/lib/command/draw/AcApMLineCmd.d.ts.map +1 -1
  42. package/lib/command/draw/AcApMLineCmd.js +2 -2
  43. package/lib/command/draw/AcApMLineCmd.js.map +1 -1
  44. package/lib/command/draw/AcApPolygonCmd.d.ts.map +1 -1
  45. package/lib/command/draw/AcApPolygonCmd.js +2 -5
  46. package/lib/command/draw/AcApPolygonCmd.js.map +1 -1
  47. package/lib/command/draw/AcApRectCmd.d.ts +6 -0
  48. package/lib/command/draw/AcApRectCmd.d.ts.map +1 -1
  49. package/lib/command/draw/AcApRectCmd.js +12 -10
  50. package/lib/command/draw/AcApRectCmd.js.map +1 -1
  51. package/lib/command/draw/AcApXLineCmd.d.ts.map +1 -1
  52. package/lib/command/draw/AcApXLineCmd.js +1 -1
  53. package/lib/command/draw/AcApXLineCmd.js.map +1 -1
  54. package/lib/command/index.d.ts +1 -0
  55. package/lib/command/index.d.ts.map +1 -1
  56. package/lib/command/index.js +1 -0
  57. package/lib/command/index.js.map +1 -1
  58. package/lib/command/layer/AcApLayerCmd.d.ts +0 -7
  59. package/lib/command/layer/AcApLayerCmd.d.ts.map +1 -1
  60. package/lib/command/layer/AcApLayerCmd.js +13 -23
  61. package/lib/command/layer/AcApLayerCmd.js.map +1 -1
  62. package/lib/command/layer/AcApLayerCurCmd.d.ts +0 -7
  63. package/lib/command/layer/AcApLayerCurCmd.d.ts.map +1 -1
  64. package/lib/command/layer/AcApLayerCurCmd.js +3 -13
  65. package/lib/command/layer/AcApLayerCurCmd.js.map +1 -1
  66. package/lib/command/layer/AcApLayerDelCmd.d.ts +0 -7
  67. package/lib/command/layer/AcApLayerDelCmd.d.ts.map +1 -1
  68. package/lib/command/layer/AcApLayerDelCmd.js +8 -18
  69. package/lib/command/layer/AcApLayerDelCmd.js.map +1 -1
  70. package/lib/command/layer/AcApLayerFreezeCmd.d.ts +0 -7
  71. package/lib/command/layer/AcApLayerFreezeCmd.d.ts.map +1 -1
  72. package/lib/command/layer/AcApLayerFreezeCmd.js +11 -21
  73. package/lib/command/layer/AcApLayerFreezeCmd.js.map +1 -1
  74. package/lib/command/layer/AcApLayerIsoCmd.d.ts +0 -7
  75. package/lib/command/layer/AcApLayerIsoCmd.d.ts.map +1 -1
  76. package/lib/command/layer/AcApLayerIsoCmd.js +7 -17
  77. package/lib/command/layer/AcApLayerIsoCmd.js.map +1 -1
  78. package/lib/command/layer/AcApLayerLockCmd.d.ts +0 -7
  79. package/lib/command/layer/AcApLayerLockCmd.d.ts.map +1 -1
  80. package/lib/command/layer/AcApLayerLockCmd.js +4 -14
  81. package/lib/command/layer/AcApLayerLockCmd.js.map +1 -1
  82. package/lib/command/layer/AcApLayerOffCmd.d.ts +0 -7
  83. package/lib/command/layer/AcApLayerOffCmd.d.ts.map +1 -1
  84. package/lib/command/layer/AcApLayerOffCmd.js +11 -21
  85. package/lib/command/layer/AcApLayerOffCmd.js.map +1 -1
  86. package/lib/command/layer/AcApLayerOnCmd.d.ts +0 -7
  87. package/lib/command/layer/AcApLayerOnCmd.d.ts.map +1 -1
  88. package/lib/command/layer/AcApLayerOnCmd.js +2 -13
  89. package/lib/command/layer/AcApLayerOnCmd.js.map +1 -1
  90. package/lib/command/layer/AcApLayerPCmd.d.ts +0 -7
  91. package/lib/command/layer/AcApLayerPCmd.d.ts.map +1 -1
  92. package/lib/command/layer/AcApLayerPCmd.js +2 -13
  93. package/lib/command/layer/AcApLayerPCmd.js.map +1 -1
  94. package/lib/command/layer/AcApLayerThawCmd.d.ts +0 -7
  95. package/lib/command/layer/AcApLayerThawCmd.d.ts.map +1 -1
  96. package/lib/command/layer/AcApLayerThawCmd.js +2 -13
  97. package/lib/command/layer/AcApLayerThawCmd.js.map +1 -1
  98. package/lib/command/layer/AcApLayerUnisoCmd.d.ts +0 -7
  99. package/lib/command/layer/AcApLayerUnisoCmd.d.ts.map +1 -1
  100. package/lib/command/layer/AcApLayerUnisoCmd.js +4 -15
  101. package/lib/command/layer/AcApLayerUnisoCmd.js.map +1 -1
  102. package/lib/command/layer/AcApLayerUnlockCmd.d.ts +0 -7
  103. package/lib/command/layer/AcApLayerUnlockCmd.d.ts.map +1 -1
  104. package/lib/command/layer/AcApLayerUnlockCmd.js +4 -14
  105. package/lib/command/layer/AcApLayerUnlockCmd.js.map +1 -1
  106. package/lib/command/modify/AcApHideObjectsCmd.js +1 -1
  107. package/lib/command/modify/AcApHideObjectsCmd.js.map +1 -1
  108. package/lib/command/modify/AcApOffsetCmd.d.ts.map +1 -1
  109. package/lib/command/modify/AcApOffsetCmd.js +9 -4
  110. package/lib/command/modify/AcApOffsetCmd.js.map +1 -1
  111. package/lib/command/modify/AcApRotateCmd.d.ts.map +1 -1
  112. package/lib/command/modify/AcApRotateCmd.js +2 -5
  113. package/lib/command/modify/AcApRotateCmd.js.map +1 -1
  114. package/lib/command/modify/AcApUnisolateObjectsCmd.d.ts.map +1 -1
  115. package/lib/command/modify/AcApUnisolateObjectsCmd.js +3 -3
  116. package/lib/command/modify/AcApUnisolateObjectsCmd.js.map +1 -1
  117. package/lib/editor/command/AcEdCommand.d.ts +16 -0
  118. package/lib/editor/command/AcEdCommand.d.ts.map +1 -1
  119. package/lib/editor/command/AcEdCommand.js +23 -0
  120. package/lib/editor/command/AcEdCommand.js.map +1 -1
  121. package/lib/editor/global/AcEdUiColor.d.ts +13 -13
  122. package/lib/editor/global/AcEdUiColor.d.ts.map +1 -1
  123. package/lib/editor/global/AcEdUiColor.js +21 -20
  124. package/lib/editor/global/AcEdUiColor.js.map +1 -1
  125. package/lib/editor/global/eventBus.d.ts +7 -1
  126. package/lib/editor/global/eventBus.d.ts.map +1 -1
  127. package/lib/editor/global/eventBus.js.map +1 -1
  128. package/lib/editor/grip/AcEdGripEditSession.d.ts +29 -0
  129. package/lib/editor/grip/AcEdGripEditSession.d.ts.map +1 -0
  130. package/lib/editor/grip/AcEdGripEditSession.js +76 -0
  131. package/lib/editor/grip/AcEdGripEditSession.js.map +1 -0
  132. package/lib/editor/grip/AcEdGripHandle.d.ts +20 -0
  133. package/lib/editor/grip/AcEdGripHandle.d.ts.map +1 -0
  134. package/lib/editor/grip/AcEdGripHandle.js +59 -0
  135. package/lib/editor/grip/AcEdGripHandle.js.map +1 -0
  136. package/lib/editor/grip/AcEdGripManager.d.ts +159 -0
  137. package/lib/editor/grip/AcEdGripManager.d.ts.map +1 -0
  138. package/lib/editor/grip/AcEdGripManager.js +336 -0
  139. package/lib/editor/grip/AcEdGripManager.js.map +1 -0
  140. package/lib/editor/grip/AcEdGripPolicy.d.ts +6 -0
  141. package/lib/editor/grip/AcEdGripPolicy.d.ts.map +1 -0
  142. package/lib/editor/grip/AcEdGripPolicy.js +30 -0
  143. package/lib/editor/grip/AcEdGripPolicy.js.map +1 -0
  144. package/lib/editor/grip/AcEdGripPreviewJig.d.ts +21 -0
  145. package/lib/editor/grip/AcEdGripPreviewJig.d.ts.map +1 -0
  146. package/lib/editor/grip/AcEdGripPreviewJig.js +73 -0
  147. package/lib/editor/grip/AcEdGripPreviewJig.js.map +1 -0
  148. package/lib/editor/grip/index.d.ts +5 -0
  149. package/lib/editor/grip/index.d.ts.map +1 -0
  150. package/lib/editor/grip/index.js +5 -0
  151. package/lib/editor/grip/index.js.map +1 -0
  152. package/lib/editor/index.d.ts +1 -0
  153. package/lib/editor/index.d.ts.map +1 -1
  154. package/lib/editor/index.js +1 -0
  155. package/lib/editor/index.js.map +1 -1
  156. package/lib/editor/input/AcEdCursorManager.d.ts.map +1 -1
  157. package/lib/editor/input/AcEdCursorManager.js +2 -2
  158. package/lib/editor/input/AcEdCursorManager.js.map +1 -1
  159. package/lib/editor/input/AcEdOsnapResolver.d.ts +34 -0
  160. package/lib/editor/input/AcEdOsnapResolver.d.ts.map +1 -0
  161. package/lib/editor/input/AcEdOsnapResolver.js +117 -0
  162. package/lib/editor/input/AcEdOsnapResolver.js.map +1 -0
  163. package/lib/editor/input/handler/AcEdAngleHandler.d.ts +2 -1
  164. package/lib/editor/input/handler/AcEdAngleHandler.d.ts.map +1 -1
  165. package/lib/editor/input/handler/AcEdAngleHandler.js +6 -0
  166. package/lib/editor/input/handler/AcEdAngleHandler.js.map +1 -1
  167. package/lib/editor/input/handler/AcEdInputHandler.d.ts +20 -1
  168. package/lib/editor/input/handler/AcEdInputHandler.d.ts.map +1 -1
  169. package/lib/editor/input/handler/AcEdKeywordHandler.d.ts +2 -1
  170. package/lib/editor/input/handler/AcEdKeywordHandler.d.ts.map +1 -1
  171. package/lib/editor/input/handler/AcEdKeywordHandler.js +3 -0
  172. package/lib/editor/input/handler/AcEdKeywordHandler.js.map +1 -1
  173. package/lib/editor/input/handler/AcEdNumericalHandler.d.ts +2 -1
  174. package/lib/editor/input/handler/AcEdNumericalHandler.d.ts.map +1 -1
  175. package/lib/editor/input/handler/AcEdNumericalHandler.js +6 -0
  176. package/lib/editor/input/handler/AcEdNumericalHandler.js.map +1 -1
  177. package/lib/editor/input/handler/AcEdPointHandler.d.ts +17 -1
  178. package/lib/editor/input/handler/AcEdPointHandler.d.ts.map +1 -1
  179. package/lib/editor/input/handler/AcEdPointHandler.js +89 -0
  180. package/lib/editor/input/handler/AcEdPointHandler.js.map +1 -1
  181. package/lib/editor/input/handler/AcEdStringHandler.d.ts +2 -1
  182. package/lib/editor/input/handler/AcEdStringHandler.d.ts.map +1 -1
  183. package/lib/editor/input/handler/AcEdStringHandler.js +3 -0
  184. package/lib/editor/input/handler/AcEdStringHandler.js.map +1 -1
  185. package/lib/editor/input/index.d.ts +1 -0
  186. package/lib/editor/input/index.d.ts.map +1 -1
  187. package/lib/editor/input/index.js +1 -0
  188. package/lib/editor/input/index.js.map +1 -1
  189. package/lib/editor/input/session/AcEdInputSession.d.ts +11 -1
  190. package/lib/editor/input/session/AcEdInputSession.d.ts.map +1 -1
  191. package/lib/editor/input/session/AcEdInputSession.js.map +1 -1
  192. package/lib/editor/input/session/AcEdPromptInputSession.d.ts +51 -0
  193. package/lib/editor/input/session/AcEdPromptInputSession.d.ts.map +1 -0
  194. package/lib/editor/input/session/AcEdPromptInputSession.js +109 -0
  195. package/lib/editor/input/session/AcEdPromptInputSession.js.map +1 -0
  196. package/lib/editor/input/session/index.d.ts +1 -0
  197. package/lib/editor/input/session/index.d.ts.map +1 -1
  198. package/lib/editor/input/session/index.js +1 -0
  199. package/lib/editor/input/session/index.js.map +1 -1
  200. package/lib/editor/input/ui/AcEdCommandLine.d.ts +10 -0
  201. package/lib/editor/input/ui/AcEdCommandLine.d.ts.map +1 -1
  202. package/lib/editor/input/ui/AcEdCommandLine.js +67 -35
  203. package/lib/editor/input/ui/AcEdCommandLine.js.map +1 -1
  204. package/lib/editor/input/ui/AcEdFloatingInput.d.ts +0 -11
  205. package/lib/editor/input/ui/AcEdFloatingInput.d.ts.map +1 -1
  206. package/lib/editor/input/ui/AcEdFloatingInput.js +9 -119
  207. package/lib/editor/input/ui/AcEdFloatingInput.js.map +1 -1
  208. package/lib/editor/input/ui/AcEdInputManager.d.ts +26 -23
  209. package/lib/editor/input/ui/AcEdInputManager.d.ts.map +1 -1
  210. package/lib/editor/input/ui/AcEdInputManager.js +135 -83
  211. package/lib/editor/input/ui/AcEdInputManager.js.map +1 -1
  212. package/lib/editor/input/ui/AcEdMTextEditor.js +2 -2
  213. package/lib/editor/input/ui/AcEdMTextEditor.js.map +1 -1
  214. package/lib/editor/view/AcEdBaseView.d.ts +7 -0
  215. package/lib/editor/view/AcEdBaseView.d.ts.map +1 -1
  216. package/lib/editor/view/AcEdBaseView.js +12 -0
  217. package/lib/editor/view/AcEdBaseView.js.map +1 -1
  218. package/lib/i18n/en/command.d.ts +3 -0
  219. package/lib/i18n/en/command.d.ts.map +1 -1
  220. package/lib/i18n/en/command.js +3 -0
  221. package/lib/i18n/en/command.js.map +1 -1
  222. package/lib/i18n/en/jig.d.ts +26 -0
  223. package/lib/i18n/en/jig.d.ts.map +1 -1
  224. package/lib/i18n/en/jig.js +134 -108
  225. package/lib/i18n/en/jig.js.map +1 -1
  226. package/lib/i18n/en/main.d.ts +3 -0
  227. package/lib/i18n/en/main.d.ts.map +1 -1
  228. package/lib/i18n/en/main.js +4 -1
  229. package/lib/i18n/en/main.js.map +1 -1
  230. package/lib/i18n/zh/command.d.ts +3 -0
  231. package/lib/i18n/zh/command.d.ts.map +1 -1
  232. package/lib/i18n/zh/command.js +3 -0
  233. package/lib/i18n/zh/command.js.map +1 -1
  234. package/lib/i18n/zh/jig.d.ts +26 -0
  235. package/lib/i18n/zh/jig.d.ts.map +1 -1
  236. package/lib/i18n/zh/jig.js +134 -108
  237. package/lib/i18n/zh/jig.js.map +1 -1
  238. package/lib/i18n/zh/main.d.ts +3 -0
  239. package/lib/i18n/zh/main.d.ts.map +1 -1
  240. package/lib/i18n/zh/main.js +4 -1
  241. package/lib/i18n/zh/main.js.map +1 -1
  242. package/lib/plugin/AcApLazyPluginRegistration.d.ts +3 -8
  243. package/lib/plugin/AcApLazyPluginRegistration.d.ts.map +1 -1
  244. package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.d.ts +1 -1
  245. package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.js +2 -2
  246. package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.js.map +1 -1
  247. package/lib/util/AcApFontUtil.d.ts +14 -2
  248. package/lib/util/AcApFontUtil.d.ts.map +1 -1
  249. package/lib/util/AcApFontUtil.js +18 -0
  250. package/lib/util/AcApFontUtil.js.map +1 -1
  251. package/lib/view/AcTrEntityDisplayController.d.ts +46 -0
  252. package/lib/view/AcTrEntityDisplayController.d.ts.map +1 -0
  253. package/lib/view/AcTrEntityDisplayController.js +114 -0
  254. package/lib/view/AcTrEntityDisplayController.js.map +1 -0
  255. package/lib/view/AcTrGroupWcsBboxAssert.d.ts +27 -0
  256. package/lib/view/AcTrGroupWcsBboxAssert.d.ts.map +1 -0
  257. package/lib/view/AcTrGroupWcsBboxAssert.js +65 -0
  258. package/lib/view/AcTrGroupWcsBboxAssert.js.map +1 -0
  259. package/lib/view/AcTrLayer.d.ts +7 -0
  260. package/lib/view/AcTrLayer.d.ts.map +1 -1
  261. package/lib/view/AcTrLayer.js +11 -2
  262. package/lib/view/AcTrLayer.js.map +1 -1
  263. package/lib/view/AcTrLayout.d.ts +1 -1
  264. package/lib/view/AcTrLayout.js +2 -2
  265. package/lib/view/AcTrLayout.js.map +1 -1
  266. package/lib/view/AcTrProgressiveOpenFitController.d.ts +64 -0
  267. package/lib/view/AcTrProgressiveOpenFitController.d.ts.map +1 -0
  268. package/lib/view/AcTrProgressiveOpenFitController.js +209 -0
  269. package/lib/view/AcTrProgressiveOpenFitController.js.map +1 -0
  270. package/lib/view/AcTrView2d.d.ts +95 -1
  271. package/lib/view/AcTrView2d.d.ts.map +1 -1
  272. package/lib/view/AcTrView2d.js +539 -200
  273. package/lib/view/AcTrView2d.js.map +1 -1
  274. package/package.json +13 -11
  275. package/dist/index.umd.cjs +0 -897
@@ -0,0 +1,2002 @@
1
+ var Ar = [
2
+ { name: "AC1.2", value: 1 },
3
+ { name: "AC1.40", value: 2 },
4
+ { name: "AC1.50", value: 3 },
5
+ { name: "AC2.20", value: 4 },
6
+ { name: "AC2.10", value: 5 },
7
+ { name: "AC2.21", value: 6 },
8
+ { name: "AC2.22", value: 7 },
9
+ { name: "AC1001", value: 8 },
10
+ { name: "AC1002", value: 9 },
11
+ { name: "AC1003", value: 10 },
12
+ { name: "AC1004", value: 11 },
13
+ { name: "AC1005", value: 12 },
14
+ { name: "AC1006", value: 13 },
15
+ { name: "AC1007", value: 14 },
16
+ { name: "AC1008", value: 15 },
17
+ { name: "AC1009", value: 16 },
18
+ { name: "AC1010", value: 17 },
19
+ { name: "AC1011", value: 18 },
20
+ { name: "AC1012", value: 19 },
21
+ { name: "AC1013", value: 20 },
22
+ { name: "AC1014", value: 21 },
23
+ { name: "AC1500", value: 22 },
24
+ { name: "AC1015", value: 23 },
25
+ { name: "AC1800a", value: 24 },
26
+ { name: "AC1018", value: 25 },
27
+ { name: "AC2100a", value: 26 },
28
+ { name: "AC1021", value: 27 },
29
+ { name: "AC2400a", value: 28 },
30
+ { name: "AC1024", value: 29 },
31
+ { name: "AC1027", value: 31 },
32
+ { name: "AC3200a", value: 32 },
33
+ { name: "AC1032", value: 33 }
34
+ ], $a = /* @__PURE__ */ function() {
35
+ function e(n) {
36
+ if (typeof n == "string") {
37
+ var a = Ar.find(function(t) {
38
+ return t.name === n;
39
+ });
40
+ if (!a)
41
+ throw new Error("Unknown DWG version name: ".concat(n));
42
+ this.name = a.name, this.value = a.value;
43
+ return;
44
+ }
45
+ if (typeof n == "number") {
46
+ var a = Ar.find(function(c) {
47
+ return c.value === n;
48
+ });
49
+ if (!a)
50
+ throw new Error("Unknown DWG version value: ".concat(n));
51
+ this.name = a.name, this.value = a.value;
52
+ return;
53
+ }
54
+ throw new Error("Invalid constructor argument for AcDbDwgVersion");
55
+ }
56
+ return e;
57
+ }(), qa = function(e, n, a, t) {
58
+ function c(o) {
59
+ return o instanceof a ? o : new a(function(i) {
60
+ i(o);
61
+ });
62
+ }
63
+ return new (a || (a = Promise))(function(o, i) {
64
+ function m(f) {
65
+ try {
66
+ d(t.next(f));
67
+ } catch (h) {
68
+ i(h);
69
+ }
70
+ }
71
+ function l(f) {
72
+ try {
73
+ d(t.throw(f));
74
+ } catch (h) {
75
+ i(h);
76
+ }
77
+ }
78
+ function d(f) {
79
+ f.done ? o(f.value) : c(f.value).then(m, l);
80
+ }
81
+ d((t = t.apply(e, n || [])).next());
82
+ });
83
+ }, Qa = function(e, n) {
84
+ var a = { label: 0, sent: function() {
85
+ if (o[0] & 1) throw o[1];
86
+ return o[1];
87
+ }, trys: [], ops: [] }, t, c, o, i;
88
+ return i = { next: m(0), throw: m(1), return: m(2) }, typeof Symbol == "function" && (i[Symbol.iterator] = function() {
89
+ return this;
90
+ }), i;
91
+ function m(d) {
92
+ return function(f) {
93
+ return l([d, f]);
94
+ };
95
+ }
96
+ function l(d) {
97
+ if (t) throw new TypeError("Generator is already executing.");
98
+ for (; i && (i = 0, d[0] && (a = 0)), a; ) try {
99
+ if (t = 1, c && (o = d[0] & 2 ? c.return : d[0] ? c.throw || ((o = c.return) && o.call(c), 0) : c.next) && !(o = o.call(c, d[1])).done) return o;
100
+ switch (c = 0, o && (d = [d[0] & 2, o.value]), d[0]) {
101
+ case 0:
102
+ case 1:
103
+ o = d;
104
+ break;
105
+ case 4:
106
+ return a.label++, { value: d[1], done: !1 };
107
+ case 5:
108
+ a.label++, c = d[1], d = [0];
109
+ continue;
110
+ case 7:
111
+ d = a.ops.pop(), a.trys.pop();
112
+ continue;
113
+ default:
114
+ if (o = a.trys, !(o = o.length > 0 && o[o.length - 1]) && (d[0] === 6 || d[0] === 2)) {
115
+ a = 0;
116
+ continue;
117
+ }
118
+ if (d[0] === 3 && (!o || d[1] > o[0] && d[1] < o[3])) {
119
+ a.label = d[1];
120
+ break;
121
+ }
122
+ if (d[0] === 6 && a.label < o[1]) {
123
+ a.label = o[1], o = d;
124
+ break;
125
+ }
126
+ if (o && a.label < o[2]) {
127
+ a.label = o[2], a.ops.push(d);
128
+ break;
129
+ }
130
+ o[2] && a.ops.pop(), a.trys.pop();
131
+ continue;
132
+ }
133
+ d = n.call(e, a);
134
+ } catch (f) {
135
+ d = [6, f], c = 0;
136
+ } finally {
137
+ t = o = 0;
138
+ }
139
+ if (d[0] & 5) throw d[1];
140
+ return { value: d[0] ? d[1] : void 0, done: !0 };
141
+ }
142
+ }, en = function() {
143
+ function e() {
144
+ this.setupMessageHandler();
145
+ }
146
+ return e.prototype.setupMessageHandler = function() {
147
+ var n = this;
148
+ self.onmessage = function(a) {
149
+ return qa(n, void 0, void 0, function() {
150
+ var t, c, o, i, m;
151
+ return Qa(this, function(l) {
152
+ switch (l.label) {
153
+ case 0:
154
+ t = a.data, c = t.id, o = t.input, l.label = 1;
155
+ case 1:
156
+ return l.trys.push([1, 3, , 4]), [4, this.executeTask(o)];
157
+ case 2:
158
+ return i = l.sent(), this.sendResponse(c, !0, i), [3, 4];
159
+ case 3:
160
+ return m = l.sent(), this.sendResponse(c, !1, void 0, m instanceof Error ? m.message : String(m)), [3, 4];
161
+ case 4:
162
+ return [2];
163
+ }
164
+ });
165
+ });
166
+ };
167
+ }, e.prototype.sendResponse = function(n, a, t, c) {
168
+ var o = {
169
+ id: n,
170
+ success: a,
171
+ data: t,
172
+ error: c
173
+ };
174
+ self.postMessage(o);
175
+ }, e;
176
+ }(), xr;
177
+ (function(e) {
178
+ e[e.UTF8 = 0] = "UTF8", e[e.US_ASCII = 1] = "US_ASCII", e[e.ISO_8859_1 = 2] = "ISO_8859_1", e[e.ISO_8859_2 = 3] = "ISO_8859_2", e[e.ISO_8859_3 = 4] = "ISO_8859_3", e[e.ISO_8859_4 = 5] = "ISO_8859_4", e[e.ISO_8859_5 = 6] = "ISO_8859_5", e[e.ISO_8859_6 = 7] = "ISO_8859_6", e[e.ISO_8859_7 = 8] = "ISO_8859_7", e[e.ISO_8859_8 = 9] = "ISO_8859_8", e[e.ISO_8859_9 = 10] = "ISO_8859_9", e[e.CP437 = 11] = "CP437", e[e.CP850 = 12] = "CP850", e[e.CP852 = 13] = "CP852", e[e.CP855 = 14] = "CP855", e[e.CP857 = 15] = "CP857", e[e.CP860 = 16] = "CP860", e[e.CP861 = 17] = "CP861", e[e.CP863 = 18] = "CP863", e[e.CP864 = 19] = "CP864", e[e.CP865 = 20] = "CP865", e[e.CP869 = 21] = "CP869", e[e.CP932 = 22] = "CP932", e[e.MACINTOSH = 23] = "MACINTOSH", e[e.BIG5 = 24] = "BIG5", e[e.CP949 = 25] = "CP949", e[e.JOHAB = 26] = "JOHAB", e[e.CP866 = 27] = "CP866", e[e.ANSI_1250 = 28] = "ANSI_1250", e[e.ANSI_1251 = 29] = "ANSI_1251", e[e.ANSI_1252 = 30] = "ANSI_1252", e[e.GB2312 = 31] = "GB2312", e[e.ANSI_1253 = 32] = "ANSI_1253", e[e.ANSI_1254 = 33] = "ANSI_1254", e[e.ANSI_1255 = 34] = "ANSI_1255", e[e.ANSI_1256 = 35] = "ANSI_1256", e[e.ANSI_1257 = 36] = "ANSI_1257", e[e.ANSI_874 = 37] = "ANSI_874", e[e.ANSI_932 = 38] = "ANSI_932", e[e.ANSI_936 = 39] = "ANSI_936", e[e.ANSI_949 = 40] = "ANSI_949", e[e.ANSI_950 = 41] = "ANSI_950", e[e.ANSI_1361 = 42] = "ANSI_1361", e[e.UTF16 = 43] = "UTF16", e[e.ANSI_1258 = 44] = "ANSI_1258", e[e.UNDEFINED = 255] = "UNDEFINED";
179
+ })(xr || (xr = {}));
180
+ var rn = [
181
+ "utf-8",
182
+ "utf-8",
183
+ "iso-8859-1",
184
+ "iso-8859-2",
185
+ "iso-8859-3",
186
+ "iso-8859-4",
187
+ "iso-8859-5",
188
+ "iso-8859-6",
189
+ "iso-8859-7",
190
+ "iso-8859-8",
191
+ "iso-8859-9",
192
+ "utf-8",
193
+ "utf-8",
194
+ "utf-8",
195
+ "utf-8",
196
+ "utf-8",
197
+ "utf-8",
198
+ "utf-8",
199
+ "utf-8",
200
+ "utf-8",
201
+ "utf-8",
202
+ "utf-8",
203
+ "shift-jis",
204
+ "macintosh",
205
+ "big5",
206
+ "utf-8",
207
+ "utf-8",
208
+ "ibm866",
209
+ "windows-1250",
210
+ "windows-1251",
211
+ "windows-1252",
212
+ "gbk",
213
+ "windows-1253",
214
+ "windows-1254",
215
+ "windows-1255",
216
+ "windows-1256",
217
+ "windows-1257",
218
+ "windows-874",
219
+ "shift-jis",
220
+ "gbk",
221
+ "euc-kr",
222
+ "big5",
223
+ "utf-8",
224
+ "utf-16le",
225
+ "windows-1258"
226
+ ], an = function(e) {
227
+ return rn[e];
228
+ }, A, Me, T, N, Ce, j, fe, K, M, Z, Y, be, Ie, he, R, J, _e, we, Ee, ge, Re, Fe, Pe, F, $, v, xe, Ve, b, C, Be, _, Ue, q, g, He, dr, pr, Ge, Q, ve, ur, mr, X, We, ye, P, ee, re, ae, je, Ye, ne, Te, Se, fr, Xe, Oe, te, Ne, D, oe, V, br, k, Ir, se, B, Ae, ze, De, U, ce, H, ie, hr, ke, G;
229
+ (A = {})[A.None = 0] = "None", A[A.Anonymous = 1] = "Anonymous", A[A.NonConstant = 2] = "NonConstant", A[A.Xref = 4] = "Xref", A[A.XrefOverlay = 8] = "XrefOverlay", A[A.ExternallyDependent = 16] = "ExternallyDependent", A[A.ResolvedOrDependent = 32] = "ResolvedOrDependent", A[A.ReferencedXref = 64] = "ReferencedXref";
230
+ (Me = {})[Me.BYBLOCK = 0] = "BYBLOCK", Me[Me.BYLAYER = 256] = "BYLAYER";
231
+ (T = {})[T.Rotated = 0] = "Rotated", T[T.Aligned = 1] = "Aligned", T[T.Angular = 2] = "Angular", T[T.Diameter = 3] = "Diameter", T[T.Radius = 4] = "Radius", T[T.Angular3Point = 5] = "Angular3Point", T[T.Ordinate = 6] = "Ordinate", T[T.ReferenceIsExclusive = 32] = "ReferenceIsExclusive", T[T.IsOrdinateXTypeFlag = 64] = "IsOrdinateXTypeFlag", T[T.IsCustomTextPositionFlag = 128] = "IsCustomTextPositionFlag";
232
+ (N = {})[N.TopLeft = 1] = "TopLeft", N[N.TopCenter = 2] = "TopCenter", N[N.TopRight = 3] = "TopRight", N[N.MiddleLeft = 4] = "MiddleLeft", N[N.MiddleCenter = 5] = "MiddleCenter", N[N.MiddleRight = 6] = "MiddleRight", N[N.BottomLeft = 7] = "BottomLeft", N[N.BottomCenter = 8] = "BottomCenter", N[N.BottomRight = 9] = "BottomRight";
233
+ (Ce = {})[Ce.AtLeast = 1] = "AtLeast", Ce[Ce.Exact = 2] = "Exact";
234
+ var Dr = ((j = {})[j.Center = 0] = "Center", j[j.Above = 1] = "Above", j[j.Outside = 2] = "Outside", j[j.JIS = 3] = "JIS", j[j.Below = 4] = "Below", j);
235
+ (fe = {})[fe.WithDimension = 0] = "WithDimension", fe[fe.AddLeader = 1] = "AddLeader", fe[fe.Independent = 2] = "Independent";
236
+ (K = {})[K.BothOutside = 0] = "BothOutside", K[K.ArrowFirst = 1] = "ArrowFirst", K[K.TextFirst = 2] = "TextFirst", K[K.Auto = 3] = "Auto";
237
+ var Le = ((M = {})[M.Feet = 0] = "Feet", M[M.None = 1] = "None", M[M.Inch = 2] = "Inch", M[M.FeetAndInch = 3] = "FeetAndInch", M[M.Leading = 4] = "Leading", M[M.Trailing = 8] = "Trailing", M[M.LeadingAndTrailing = 12] = "LeadingAndTrailing", M), nn = ((Z = {})[Z.None = 0] = "None", Z[Z.Leading = 1] = "Leading", Z[Z.Trailing = 2] = "Trailing", Z[Z.LeadingAndTrailing = 3] = "LeadingAndTrailing", Z), tn = ((Y = {})[Y.Center = 0] = "Center", Y[Y.First = 1] = "First", Y[Y.Second = 2] = "Second", Y[Y.OverFirst = 3] = "OverFirst", Y[Y.OverSecond = 4] = "OverSecond", Y), on = ((be = {})[be.Bottom = 0] = "Bottom", be[be.Center = 1] = "Center", be[be.Top = 2] = "Top", be);
238
+ (Ie = {})[Ie.None = 0] = "None", Ie[Ie.UseDrawingBackground = 1] = "UseDrawingBackground", Ie[Ie.Custom = 2] = "Custom";
239
+ (he = {})[he.Horizontal = 0] = "Horizontal", he[he.Diagonal = 1] = "Diagonal", he[he.NotStacked = 2] = "NotStacked";
240
+ (R = {})[R.Scientific = 1] = "Scientific", R[R.Decimal = 2] = "Decimal", R[R.Engineering = 3] = "Engineering", R[R.Architectural = 4] = "Architectural", R[R.Fractional = 5] = "Fractional", R[R.WindowDesktop = 6] = "WindowDesktop";
241
+ (J = {})[J.Decimal = 0] = "Decimal", J[J.DegreesMinutesSecond = 1] = "DegreesMinutesSecond", J[J.Gradian = 2] = "Gradian", J[J.Radian = 3] = "Radian";
242
+ (_e = {})[_e.PatternFill = 0] = "PatternFill", _e[_e.SolidFill = 1] = "SolidFill";
243
+ (we = {})[we.NonAssociative = 0] = "NonAssociative", we[we.Associative = 1] = "Associative";
244
+ (Ee = {})[Ee.Normal = 0] = "Normal", Ee[Ee.Outer = 1] = "Outer", Ee[Ee.Ignore = 2] = "Ignore";
245
+ (ge = {})[ge.UserDefined = 0] = "UserDefined", ge[ge.Predefined = 1] = "Predefined", ge[ge.Custom = 2] = "Custom";
246
+ (Re = {})[Re.NotAnnotated = 0] = "NotAnnotated", Re[Re.Annotated = 1] = "Annotated";
247
+ (Fe = {})[Fe.Solid = 0] = "Solid", Fe[Fe.Gradient = 1] = "Gradient";
248
+ (Pe = {})[Pe.TwoColor = 0] = "TwoColor", Pe[Pe.OneColor = 1] = "OneColor";
249
+ var sn = ((F = {})[F.Default = 0] = "Default", F[F.External = 1] = "External", F[F.Polyline = 2] = "Polyline", F[F.Derived = 4] = "Derived", F[F.Textbox = 8] = "Textbox", F[F.Outermost = 16] = "Outermost", F), $e = (($ = {})[$.Line = 1] = "Line", $[$.Circular = 2] = "Circular", $[$.Elliptic = 3] = "Elliptic", $[$.Spline = 4] = "Spline", $), cn = ((v = {})[v.Off = 0] = "Off", v[v.Solid = 1] = "Solid", v[v.Dashed = 2] = "Dashed", v[v.Dotted = 3] = "Dotted", v[v.ShotDash = 4] = "ShotDash", v[v.MediumDash = 5] = "MediumDash", v[v.LongDash = 6] = "LongDash", v[v.DoubleShortDash = 7] = "DoubleShortDash", v[v.DoubleMediumDash = 8] = "DoubleMediumDash", v[v.DoubleLongDash = 9] = "DoubleLongDash", v[v.DoubleMediumLongDash = 10] = "DoubleMediumLongDash", v[v.SparseDot = 11] = "SparseDot", v);
250
+ cn.Off;
251
+ (xe = {})[xe.Standard = -3] = "Standard", xe[xe.ByLayer = -2] = "ByLayer", xe[xe.ByBlock = -1] = "ByBlock";
252
+ (Ve = {})[Ve.English = 0] = "English", Ve[Ve.Metric = 1] = "Metric";
253
+ (b = {})[b.PERSPECTIVE_MODE = 1] = "PERSPECTIVE_MODE", b[b.FRONT_CLIPPING = 2] = "FRONT_CLIPPING", b[b.BACK_CLIPPING = 4] = "BACK_CLIPPING", b[b.UCS_FOLLOW = 8] = "UCS_FOLLOW", b[b.FRONT_CLIP_NOT_AT_EYE = 16] = "FRONT_CLIP_NOT_AT_EYE", b[b.UCS_ICON_VISIBILITY = 32] = "UCS_ICON_VISIBILITY", b[b.UCS_ICON_AT_ORIGIN = 64] = "UCS_ICON_AT_ORIGIN", b[b.FAST_ZOOM = 128] = "FAST_ZOOM", b[b.SNAP_MODE = 256] = "SNAP_MODE", b[b.GRID_MODE = 512] = "GRID_MODE", b[b.ISOMETRIC_SNAP_STYLE = 1024] = "ISOMETRIC_SNAP_STYLE", b[b.HIDE_PLOT_MODE = 2048] = "HIDE_PLOT_MODE", b[b.K_ISO_PAIR_TOP = 4096] = "K_ISO_PAIR_TOP", b[b.K_ISO_PAIR_RIGHT = 8192] = "K_ISO_PAIR_RIGHT", b[b.VIEWPORT_ZOOM_LOCKING = 16384] = "VIEWPORT_ZOOM_LOCKING", b[b.UNUSED = 32768] = "UNUSED", b[b.NON_RECTANGULAR_CLIPPING = 65536] = "NON_RECTANGULAR_CLIPPING", b[b.VIEWPORT_OFF = 131072] = "VIEWPORT_OFF", b[b.GRID_BEYOND_DRAWING_LIMITS = 262144] = "GRID_BEYOND_DRAWING_LIMITS", b[b.ADAPTIVE_GRID_DISPLAY = 524288] = "ADAPTIVE_GRID_DISPLAY", b[b.SUBDIVISION_BELOW_SPACING = 1048576] = "SUBDIVISION_BELOW_SPACING", b[b.GRID_FOLLOWS_WORKPLANE = 2097152] = "GRID_FOLLOWS_WORKPLANE";
254
+ (C = {})[C.OPTIMIZED_2D = 0] = "OPTIMIZED_2D", C[C.WIREFRAME = 1] = "WIREFRAME", C[C.HIDDEN_LINE = 2] = "HIDDEN_LINE", C[C.FLAT_SHADED = 3] = "FLAT_SHADED", C[C.GOURAUD_SHADED = 4] = "GOURAUD_SHADED", C[C.FLAT_SHADED_WITH_WIREFRAME = 5] = "FLAT_SHADED_WITH_WIREFRAME", C[C.GOURAUD_SHADED_WITH_WIREFRAME = 6] = "GOURAUD_SHADED_WITH_WIREFRAME";
255
+ (Be = {})[Be.UCS_UNCHANGED = 0] = "UCS_UNCHANGED", Be[Be.HAS_OWN_UCS = 1] = "HAS_OWN_UCS";
256
+ (_ = {})[_.NON_ORTHOGRAPHIC = 0] = "NON_ORTHOGRAPHIC", _[_.TOP = 1] = "TOP", _[_.BOTTOM = 2] = "BOTTOM", _[_.FRONT = 3] = "FRONT", _[_.BACK = 4] = "BACK", _[_.LEFT = 5] = "LEFT", _[_.RIGHT = 6] = "RIGHT";
257
+ (Ue = {})[Ue.ONE_DISTANT_LIGHT = 0] = "ONE_DISTANT_LIGHT", Ue[Ue.TWO_DISTANT_LIGHTS = 1] = "TWO_DISTANT_LIGHTS";
258
+ (q = {})[q.ByLayer = 0] = "ByLayer", q[q.ByBlock = 1] = "ByBlock", q[q.ByDictionaryDefault = 2] = "ByDictionaryDefault", q[q.ByObject = 3] = "ByObject";
259
+ (g = {})[g.NotAllowed = 0] = "NotAllowed", g[g.AllowErase = 1] = "AllowErase", g[g.AllowTransform = 2] = "AllowTransform", g[g.AllowChangeColor = 4] = "AllowChangeColor", g[g.AllowChangeLayer = 8] = "AllowChangeLayer", g[g.AllowChangeLinetype = 16] = "AllowChangeLinetype", g[g.AllowChangeLinetypeScale = 32] = "AllowChangeLinetypeScale", g[g.AllowChangeVisibility = 64] = "AllowChangeVisibility", g[g.AllowClone = 128] = "AllowClone", g[g.AllowChangeLineweight = 256] = "AllowChangeLineweight", g[g.AllowChangePlotStyleName = 512] = "AllowChangePlotStyleName", g[g.AllowAllExceptClone = 895] = "AllowAllExceptClone", g[g.AllowAll = 1023] = "AllowAll", g[g.DisableProxyWarning = 1024] = "DisableProxyWarning", g[g.R13FormatProxy = 32768] = "R13FormatProxy";
260
+ function I(e, n, a) {
261
+ return e.code === n && (a == null || e.value === a);
262
+ }
263
+ function ue(e) {
264
+ let n = {};
265
+ e.rewind();
266
+ let a = e.next(), t = a.code;
267
+ if (n.x = a.value, (a = e.next()).code !== t + 10) throw Error("Expected code for point value to be 20 but got " + a.code + ".");
268
+ return n.y = a.value, (a = e.next()).code !== t + 20 ? e.rewind() : n.z = a.value, n;
269
+ }
270
+ let Je = Symbol();
271
+ function u(e, n) {
272
+ return (a, t, c) => {
273
+ let o = function(l, d = !1) {
274
+ return l.reduce((f, h) => {
275
+ h.pushContext && f.push({});
276
+ let y = f[f.length - 1];
277
+ for (let x of typeof h.code == "number" ? [h.code] : h.code) {
278
+ let S = y[x] ?? (y[x] = []);
279
+ h.isMultiple && S.length, S.push(h);
280
+ }
281
+ return f;
282
+ }, [{}]);
283
+ }(e, t.debug), i = !1, m = o.length - 1;
284
+ for (; !I(a, 0, "EOF"); ) {
285
+ let l = function(w, W, me) {
286
+ return w.find((lr, Ja) => {
287
+ var Nr;
288
+ return Ja >= me && ((Nr = lr[W]) == null ? void 0 : Nr.length);
289
+ });
290
+ }(o, a.code, m), d = l == null ? void 0 : l[a.code], f = d == null ? void 0 : d[d.length - 1];
291
+ if (!l || !f) {
292
+ t.rewind();
293
+ break;
294
+ }
295
+ f.isMultiple || l[a.code].pop();
296
+ let { name: h, parser: y, isMultiple: x, isReducible: S } = f, O = y == null ? void 0 : y(a, t, c);
297
+ if (O === Je) {
298
+ t.rewind();
299
+ break;
300
+ }
301
+ if (h) {
302
+ let [w, W] = ln(c, h);
303
+ x && !S ? (Object.prototype.hasOwnProperty.call(w, W) || (w[W] = []), w[W].push(O)) : w[W] = O;
304
+ }
305
+ f.pushContext && (m -= 1), i = !0, a = t.next();
306
+ }
307
+ return n && Object.setPrototypeOf(c, n), i;
308
+ };
309
+ }
310
+ function ln(e, n) {
311
+ let a = n.split(".");
312
+ if (!a.length) throw Error("[parserGenerator::getObjectByPath] Invalid empty path");
313
+ let t = e;
314
+ for (let c = 0; c < a.length - 1; ++c) {
315
+ let o = Er(a[c]), i = Er(a[c + 1]);
316
+ Object.prototype.hasOwnProperty.call(t, o) || (typeof i == "number" ? t[o] = [] : t[o] = {}), t = t[o];
317
+ }
318
+ return [t, Er(a[a.length - 1])];
319
+ }
320
+ function Er(e) {
321
+ let n = Number.parseInt(e);
322
+ return Number.isNaN(n) ? e : n;
323
+ }
324
+ function r({ value: e }) {
325
+ return e;
326
+ }
327
+ function s(e, n) {
328
+ return ue(n);
329
+ }
330
+ function p({ value: e }) {
331
+ return !!e;
332
+ }
333
+ function dn({ value: e }) {
334
+ return e.trim();
335
+ }
336
+ let pn = [{ code: 281, name: "isEntity", parser: p }, { code: 280, name: "wasProxy", parser: p }, { code: 91, name: "instanceCount", parser: r }, { code: 90, name: "proxyFlag", parser: r }, { code: 3, name: "appName", parser: r }, { code: 2, name: "cppClassName", parser: r }, { code: 1, name: "name", parser: r }], un = u(pn), mn = [{ code: 0, name: "classes", isMultiple: !0, parser(e, n) {
337
+ if (e.value !== "CLASS") return Je;
338
+ e = n.next();
339
+ let a = {};
340
+ return un(e, n, a), a;
341
+ } }], fn = u(mn);
342
+ (He = {})[He.RayTrace = 0] = "RayTrace", He[He.ShadowMap = 1] = "ShadowMap";
343
+ function z(e, n, a) {
344
+ for (; I(e, 102); ) {
345
+ var t;
346
+ let c = e.value;
347
+ if (e = n.next(), !c.startsWith("{")) {
348
+ n.debug, function(i, m) {
349
+ for (; !I(i, 102) && !I(i, 0, "EOF"); ) i = m.next();
350
+ }(e, n), e = n.next();
351
+ continue;
352
+ }
353
+ let o = c.slice(1).trim();
354
+ a.extensions ?? (a.extensions = {}), (t = a.extensions)[o] ?? (t[o] = []), function(i, m, l) {
355
+ for (; !I(i, 102, "}") && !I(i, 0, "EOF"); ) l.push(i), i = m.next();
356
+ }(e, n, a.extensions[o]), e = n.next();
357
+ }
358
+ n.rewind();
359
+ }
360
+ let bn = [{ code: 1001, name: "xdata", isMultiple: !0, parser: Tr }], In = /* @__PURE__ */ new Set([1010, 1011, 1012, 1013]);
361
+ function Tr(e, n) {
362
+ var c;
363
+ if (!I(e, 1001)) throw Error("XData must starts with code 1001");
364
+ let a = { appName: e.value, value: [] };
365
+ e = n.next();
366
+ let t = [a.value];
367
+ for (; !I(e, 0, "EOF") && !I(e, 1001) && e.code >= 1e3; ) {
368
+ let o = t[t.length - 1];
369
+ if (e.code === 1002) {
370
+ e.value === "{" ? t.push([]) : (t.pop(), (c = t[t.length - 1]) == null || c.push(o)), e = n.next();
371
+ continue;
372
+ }
373
+ In.has(e.code) ? o.push(ue(n)) : o.push(e.value), e = n.next();
374
+ }
375
+ return n.rewind(), a;
376
+ }
377
+ class er {
378
+ parseEntity(n, a) {
379
+ let t = {}, c = "none", o = !1;
380
+ for (; !I(a, 0, "EOF"); ) {
381
+ switch (a.code) {
382
+ case 100:
383
+ a.value === "AcDbProxyEntity" && (t.subclassMarker = "AcDbProxyEntity", o = !0);
384
+ break;
385
+ case 90:
386
+ t.proxyEntityClassId = a.value, c = "none";
387
+ break;
388
+ case 91:
389
+ t.applicationEntityClassId = a.value, c = "none";
390
+ break;
391
+ case 1:
392
+ o && (t.originalDxfName = String(a.value));
393
+ break;
394
+ case 92:
395
+ case 160:
396
+ t.graphicsDataSize = a.value, c = "graphics";
397
+ break;
398
+ case 93:
399
+ case 161:
400
+ t.entityDataSize = a.value, c = "entity";
401
+ break;
402
+ case 96:
403
+ case 162:
404
+ t.unknownDataSize = a.value, c = "unknown";
405
+ break;
406
+ case 310:
407
+ c === "graphics" ? t.graphicsData = (t.graphicsData ?? "") + a.value : c === "entity" && (t.entityData = (t.entityData ?? "") + a.value);
408
+ break;
409
+ case 311:
410
+ c === "unknown" && (t.unknownData = (t.unknownData ?? "") + a.value);
411
+ break;
412
+ case 330:
413
+ case 340:
414
+ case 350:
415
+ case 360:
416
+ c = "none", o ? (t.linkedObjectIds ?? (t.linkedObjectIds = [])).push(String(a.value)) : a.code === 330 && (t.ownerBlockRecordSoftId = String(a.value));
417
+ break;
418
+ case 94:
419
+ c = "none";
420
+ break;
421
+ case 95:
422
+ t.objectDrawingFormat = a.value;
423
+ break;
424
+ case 70:
425
+ t.originalDataFormat = a.value;
426
+ break;
427
+ case 5:
428
+ t.handle = String(a.value);
429
+ break;
430
+ case 102:
431
+ z(a, n, t);
432
+ break;
433
+ case 67:
434
+ t.isInPaperSpace = !!a.value;
435
+ break;
436
+ case 8:
437
+ t.layer = String(a.value);
438
+ break;
439
+ case 6:
440
+ t.lineType = String(a.value);
441
+ break;
442
+ case 347:
443
+ t.materialObjectHardId = String(a.value);
444
+ break;
445
+ case 62:
446
+ t.colorIndex = a.value;
447
+ break;
448
+ case 370:
449
+ t.lineweight = a.value;
450
+ break;
451
+ case 48:
452
+ t.lineTypeScale = a.value;
453
+ break;
454
+ case 60:
455
+ t.isVisible = !!a.value;
456
+ break;
457
+ case 420:
458
+ t.color = a.value;
459
+ break;
460
+ case 430:
461
+ t.colorName = String(a.value);
462
+ break;
463
+ case 440:
464
+ t.transparency = a.value;
465
+ break;
466
+ case 380:
467
+ t.plotStyleType = a.value;
468
+ break;
469
+ case 390:
470
+ t.plotStyleHardId = String(a.value);
471
+ break;
472
+ case 284:
473
+ t.shadowMode = a.value;
474
+ break;
475
+ case 410:
476
+ t.layoutTabName = String(a.value);
477
+ break;
478
+ case 1001:
479
+ (t.xdata ?? (t.xdata = [])).push(Tr(a, n));
480
+ break;
481
+ default:
482
+ return n.rewind(), t;
483
+ }
484
+ a = n.next();
485
+ }
486
+ return n.rewind(), t;
487
+ }
488
+ }
489
+ (dr = "ForEntityName") in er ? Object.defineProperty(er, dr, { value: "ACAD_PROXY_ENTITY", enumerable: !0, configurable: !0, writable: !0 }) : er[dr] = "ACAD_PROXY_ENTITY";
490
+ (pr = {})[pr.ProxyEntity = 498] = "ProxyEntity";
491
+ (Ge = {})[Ge.Dwg = 0] = "Dwg", Ge[Ge.Dxf = 1] = "Dxf";
492
+ (Q = {})[Q.CAST_AND_RECEIVE = 0] = "CAST_AND_RECEIVE", Q[Q.CAST = 1] = "CAST", Q[Q.RECEIVE = 2] = "RECEIVE", Q[Q.IGNORE = 3] = "IGNORE";
493
+ let E = [...bn, { code: 284, name: "shadowMode", parser: r }, { code: 390, name: "plotStyleHardId", parser: r }, { code: 380, name: "plotStyleType", parser: r }, { code: 440, name: "transparency", parser: r }, { code: 430, name: "colorName", parser: r }, { code: 420, name: "color", parser: r }, { code: 310, name: "proxyEntity", isMultiple: !0, isReducible: !0, parser: (e, n, a) => (a.proxyEntity ?? "") + e.value }, { code: [92, 160], name: "proxyByte", parser: r }, { code: 60, name: "isVisible", parser: p }, { code: 48, name: "lineTypeScale", parser: r }, { code: 370, name: "lineweight", parser: r }, { code: 62, name: "colorIndex", parser: r }, { code: 347, name: "materialObjectHardId", parser: r }, { code: 6, name: "lineType", parser: r }, { code: 8, name: "layer", parser: r }, { code: 410, name: "layoutTabName", parser: r }, { code: 67, name: "isInPaperSpace", parser: p }, { code: 100 }, { code: 330, name: "ownerBlockRecordSoftId", parser: r }, { code: 102, parser: z }, { code: 102, parser: z }, { code: 102, parser: z }, { code: 5, name: "handle", parser: r }];
494
+ function ir(e) {
495
+ return [{ code: 3, name: e, parser: (n, a, t) => (t._code3text = (t._code3text ?? "") + n.value, t._code3text + (t._code1text ?? "")), isMultiple: !0, isReducible: !0 }, { code: 1, name: e, parser: (n, a, t) => (t._code1text = n.value, (t._code3text ?? "") + t._code1text) }];
496
+ }
497
+ function wr(e, n, a) {
498
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
499
+ }
500
+ let hn = { extrusionDirection: { x: 0, y: 0, z: 1 } }, En = [{ code: 210, name: "extrusionDirection", parser: s }, { code: 51, name: "endAngle", parser: r }, { code: 50, name: "startAngle", parser: r }, { code: 100, name: "subclassMarker", parser: r }, { code: 40, name: "radius", parser: r }, { code: 10, name: "center", parser: s }, { code: 39, name: "thickness", parser: r }, { code: 100 }, ...E];
501
+ class Rr {
502
+ parseEntity(n, a) {
503
+ let t = {};
504
+ return this.parser(a, n, t), t;
505
+ }
506
+ constructor() {
507
+ wr(this, "parser", u(En, hn));
508
+ }
509
+ }
510
+ wr(Rr, "ForEntityName", "ARC");
511
+ (ve = {})[ve.BeforeText = 0] = "BeforeText", ve[ve.AboveText = 1] = "AboveText", ve[ve.None = 2] = "None";
512
+ let Sr = [{ name: "DIMPOST", code: 3 }, { name: "DIMAPOST", code: 4, defaultValue: "" }, { name: "DIMBLK_OBSOLETE", code: 5 }, { name: "DIMBLK1_OBSOLETE", code: 6 }, { name: "DIMBLK2_OBSOLETE", code: 7 }, { name: "DIMSCALE", code: 40, defaultValue: 1 }, { name: "DIMASZ", code: 41, defaultValue: 0.25 }, { name: "DIMEXO", code: 42, defaultValue: 0.625, defaultValueImperial: 0.0625 }, { name: "DIMDLI", code: 43, defaultValue: 3.75, defaultValueImperial: 0.38 }, { name: "DIMEXE", code: 44, defaultValue: 2.25, defaultValueImperial: 0.28 }, { name: "DIMRND", code: 45, defaultValue: 0 }, { name: "DIMDLE", code: 46, defaultValue: 0 }, { name: "DIMTP", code: 47, defaultValue: 0 }, { name: "DIMTM", code: 48, defaultValue: 0 }, { name: "DIMFXL", code: 49, defaultValue: 1 }, { name: "DIMJOGANG", code: 50, defaultValue: 45 }, { name: "DIMTFILL", code: 69, defaultValue: 0 }, { name: "DIMTFILLCLR", code: 70, defaultValue: 0 }, { name: "DIMTOL", code: 71, defaultValue: 0, defaultValueImperial: 1 }, { name: "DIMLIM", code: 72, defaultValue: 0 }, { name: "DIMTIH", code: 73, defaultValue: 0, defaultValueImperial: 1 }, { name: "DIMTOH", code: 74, defaultValue: 0, defaultValueImperial: 1 }, { name: "DIMSE1", code: 75, defaultValue: 0 }, { name: "DIMSE2", code: 76, defaultValue: 0 }, { name: "DIMTAD", code: 77, defaultValue: Dr.Above, defaultValueImperial: Dr.Center }, { name: "DIMZIN", code: 78, defaultValue: Le.Trailing, defaultValueImperial: Le.Feet }, { name: "DIMAZIN", code: 79, defaultValue: nn.None }, { name: "DIMARCSYM", code: 90, defaultValue: 0 }, { name: "DIMTXT", code: 140, defaultValue: 2.5, defaultValueImperial: 0.28 }, { name: "DIMCEN", code: 141, defaultValue: 2.5, defaultValueImperial: 0.09 }, { name: "DIMTSZ", code: 142, defaultValue: 0 }, { name: "DIMALTF", code: 143, defaultValue: 25.4 }, { name: "DIMLFAC", code: 144, defaultValue: 1 }, { name: "DIMTVP", code: 145, defaultValue: 0 }, { name: "DIMTFAC", code: 146, defaultValue: 1 }, { name: "DIMGAP", code: 147, defaultValue: 0.625, defaultValueImperial: 0.09 }, { name: "DIMALTRND", code: 148, defaultValue: 0 }, { name: "DIMALT", code: 170, defaultValue: 0 }, { name: "DIMALTD", code: 171, defaultValue: 3, defaultValueImperial: 2 }, { name: "DIMTOFL", code: 172, defaultValue: 1, defaultValueImperial: 0 }, { name: "DIMSAH", code: 173, defaultValue: 0 }, { name: "DIMTIX", code: 174, defaultValue: 0 }, { name: "DIMSOXD", code: 175, defaultValue: 0 }, { name: "DIMCLRD", code: 176, defaultValue: 0 }, { name: "DIMCLRE", code: 177, defaultValue: 0 }, { name: "DIMCLRT", code: 178, defaultValue: 0 }, { name: "DIMADEC", code: 179, defaultValue: 0 }, { name: "DIMUNIT", code: 270 }, { name: "DIMDEC", code: 271, defaultValue: 2, defaultValueImperial: 4 }, { name: "DIMTDEC", code: 272, defaultValue: 2, defaultValueImperial: 4 }, { name: "DIMALTU", code: 273, defaultValue: 2 }, { name: "DIMALTTD", code: 274, defaultValue: 3, defaultValueImperial: 2 }, { name: "DIMAUNIT", code: 275, defaultValue: 0 }, { name: "DIMFRAC", code: 276, defaultValue: 0 }, { name: "DIMLUNIT", code: 277, defaultValue: 2 }, { name: "DIMDSEP", code: 278, defaultValue: 44, defaultValueImperial: 46 }, { name: "DIMTMOVE", code: 279, defaultValue: 0 }, { name: "DIMJUST", code: 280, defaultValue: tn.Center }, { name: "DIMSD1", code: 281, defaultValue: 0 }, { name: "DIMSD2", code: 282, defaultValue: 0 }, { name: "DIMTOLJ", code: 283, defaultValue: on.Center }, { name: "DIMTZIN", code: 284, defaultValue: Le.Trailing, defaultValueImperial: Le.Feet }, { name: "DIMALTZ", code: 285, defaultValue: Le.Trailing }, { name: "DIMALTTZ", code: 286, defaultValue: Le.Trailing }, { name: "DIMFIT", code: 287 }, { name: "DIMUPT", code: 288, defaultValue: 0 }, { name: "DIMATFIT", code: 289, defaultValue: 3 }, { name: "DIMFXLON", code: 290, defaultValue: 0 }, { name: "DIMTXTDIRECTION", code: 294, defaultValue: 0 }, { name: "DIMTXSTY", code: 340, defaultValue: "Standard" }, { name: "DIMLDRBLK", code: 341, defaultValue: "" }, { name: "DIMBLK", code: 342, defaultValue: "" }, { name: "DIMBLK1", code: 343, defaultValue: "" }, { name: "DIMBLK2", code: 344, defaultValue: "" }, { name: "DIMLTYPE", code: 345, defaultValue: "" }, { name: "DIMLTEX1", code: 346, defaultValue: "" }, { name: "DIMLTEX2", code: 347, defaultValue: "" }, { name: "DIMLWD", code: 371, defaultValue: -2 }, { name: "DIMLWE", code: 372, defaultValue: -2 }], Fr = [{ code: 3, name: "styleName", parser: r }, { code: 210, name: "extrusionDirection", parser: s }, { code: 51, name: "ocsRotation", parser: r }, { code: 53, name: "textRotation", parser: r }, { code: 1, name: "text", parser: r }, { code: 42, name: "measurement", parser: r }, { code: 72, name: "textLineSpacingStyle", parser: r }, { code: 71, name: "attachmentPoint", parser: r }, { code: 70, name: "dimensionType", parser: r }, { code: 11, name: "textPoint", parser: s }, { code: 10, name: "definitionPoint", parser: s }, { code: 2, name: "name", parser: r }, { code: 280, name: "version", parser: r }, { code: 100 }], gn = [{ code: 100 }, { code: 52, name: "obliqueAngle", parser: r }, { code: 50, name: "rotationAngle", parser: r }, { code: 14, name: "subDefinitionPoint2", parser: s }, { code: 13, name: "subDefinitionPoint1", parser: s }, { code: 12, name: "insertionPoint", parser: s }, { code: 100, name: "subclassMarker", parser: r }], xn = [{ code: 16, name: "arcPoint", parser: s }, { code: 15, name: "centerPoint", parser: s }, { code: 14, name: "subDefinitionPoint2", parser: s }, { code: 13, name: "subDefinitionPoint1", parser: s }, { code: 100, name: "subclassMarker", parser: r }], vn = [{ code: 14, name: "subDefinitionPoint2", parser: s }, { code: 13, name: "subDefinitionPoint1", parser: s }, { code: 100, name: "subclassMarker", parser: r }], yn = [{ code: 40, name: "leaderLength", parser: r }, { code: 15, name: "subDefinitionPoint", parser: s }, { code: 100, name: "subclassMarker", parser: r }], Tn = [{ code: 100, parser(e, n, a) {
513
+ let t = function(c) {
514
+ switch (c) {
515
+ case "AcDbAlignedDimension":
516
+ return u(gn);
517
+ case "AcDb3PointAngularDimension":
518
+ case "AcDb2LineAngularDimension":
519
+ return u(xn);
520
+ case "AcDbOrdinateDimension":
521
+ return u(vn);
522
+ case "AcDbRadialDimension":
523
+ case "AcDbDiametricDimension":
524
+ return u(yn);
525
+ }
526
+ return null;
527
+ }(e.value);
528
+ if (!t) return Je;
529
+ t(e, n, a);
530
+ }, pushContext: !0 }, ...Sr.map((e) => ({ ...e, parser: r })), ...Fr, ...E];
531
+ class rr {
532
+ parseEntity(n, a) {
533
+ let t = {};
534
+ return u(Tn)(a, n, t), t;
535
+ }
536
+ }
537
+ (ur = "ForEntityName") in rr ? Object.defineProperty(rr, ur, { value: "DIMENSION", enumerable: !0, configurable: !0, writable: !0 }) : rr[ur] = "DIMENSION";
538
+ let Sn = [{ code: 73 }, { code: 17, name: "leaderEnd", parser: s }, { code: 16, name: "leaderStart", parser: s }, { code: 71, name: "hasLeader", parser: p }, { code: 41, name: "endAngle", parser: r }, { code: 40, name: "startAngle", parser: r }, { code: 70, name: "isPartial", parser: p }, { code: 15, name: "centerPoint", parser: s }, { code: 14, name: "xline2Point", parser: s }, { code: 13, name: "xline1Point", parser: s }, { code: 100, name: "subclassMarker", parser: r, pushContext: !0 }, ...Sr.map((e) => ({ ...e, parser: r })), ...Fr, ...E];
539
+ class ar {
540
+ parseEntity(n, a) {
541
+ let t = {};
542
+ return u(Sn)(a, n, t), t;
543
+ }
544
+ }
545
+ (mr = "ForEntityName") in ar ? Object.defineProperty(ar, mr, { value: "ARC_DIMENSION", enumerable: !0, configurable: !0, writable: !0 }) : ar[mr] = "ARC_DIMENSION";
546
+ (X = {})[X.NONE = 0] = "NONE", X[X.INVISIBLE = 1] = "INVISIBLE", X[X.CONSTANT = 2] = "CONSTANT", X[X.VERIFICATION_REQUIRED = 4] = "VERIFICATION_REQUIRED", X[X.PRESET = 8] = "PRESET";
547
+ (We = {})[We.MULTILINE = 2] = "MULTILINE", We[We.CONSTANT_MULTILINE = 4] = "CONSTANT_MULTILINE";
548
+ (ye = {})[ye.NONE = 0] = "NONE", ye[ye.MIRRORED_X = 2] = "MIRRORED_X", ye[ye.MIRRORED_Y = 4] = "MIRRORED_Y";
549
+ var On = ((P = {})[P.LEFT = 0] = "LEFT", P[P.CENTER = 1] = "CENTER", P[P.RIGHT = 2] = "RIGHT", P[P.ALIGNED = 3] = "ALIGNED", P[P.MIDDLE = 4] = "MIDDLE", P[P.FIT = 5] = "FIT", P), Nn = ((ee = {})[ee.BASELINE = 0] = "BASELINE", ee[ee.BOTTOM = 1] = "BOTTOM", ee[ee.MIDDLE = 2] = "MIDDLE", ee[ee.TOP = 3] = "TOP", ee);
550
+ function Pr(e, n, a) {
551
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
552
+ }
553
+ let Vr = { thickness: 0, rotation: 0, xScale: 1, obliqueAngle: 0, styleName: "STANDARD", generationFlag: 0, halign: On.LEFT, valign: Nn.BASELINE, extrusionDirection: { x: 0, y: 0, z: 1 } }, Br = [{ code: 73, name: "valign", parser: r }, { code: 100 }, { code: 210, name: "extrusionDirection", parser: s }, { code: 11, name: "endPoint", parser: s }, { code: 72, name: "valign", parser: r }, { code: 72, name: "halign", parser: r }, { code: 71, name: "generationFlag", parser: r }, { code: 7, name: "styleName", parser: r }, { code: 51, name: "obliqueAngle", parser: r }, { code: 41, name: "xScale", parser: r }, { code: 50, name: "rotation", parser: r }, { code: 1, name: "text", parser: r }, { code: 40, name: "textHeight", parser: r }, { code: 10, name: "startPoint", parser: s }, { code: 39, name: "thickness", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...E];
554
+ class Ur {
555
+ parseEntity(n, a) {
556
+ let t = {};
557
+ return this.parser(a, n, t), t;
558
+ }
559
+ constructor() {
560
+ Pr(this, "parser", u(Br, Vr));
561
+ }
562
+ }
563
+ function Hr(e, n, a) {
564
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
565
+ }
566
+ Pr(Ur, "ForEntityName", "TEXT");
567
+ let An = { ...Vr }, Dn = [{ code: 2 }, { code: 40, name: "annotationScale", parser: r }, { code: 10, name: "alignmentPoint", parser: s }, { code: 340, name: "secondaryAttributesHardIds", isMultiple: !0, parser: r }, { code: 70, name: "numberOfSecondaryAttributes", parser: r }, { code: 70, name: "isReallyLocked", parser: p }, { code: 70, name: "mtextFlag", parser: r }, { code: 280, name: "isDuplicatedRecord", parser: p }, { code: 100 }, { code: 280, name: "isLocked", parser: p }, { code: 74, name: "valign", parser: r }, { code: 73 }, { code: 70, name: "attributeFlag", parser: r }, { code: 2, name: "tag", parser: r }, { code: 3, name: "prompt", parser: r }, { code: 280 }, { code: 100, name: "subclassMarker", parser: r }, ...Br.slice(2)];
568
+ class Gr {
569
+ parseEntity(n, a) {
570
+ let t = {};
571
+ return this.parser(a, n, t), t;
572
+ }
573
+ constructor() {
574
+ Hr(this, "parser", u(Dn, An));
575
+ }
576
+ }
577
+ function kn(e, n) {
578
+ let a = {};
579
+ for (let t of e) {
580
+ let c = n(t);
581
+ c != null && (a[c] ?? (a[c] = []), a[c].push(t));
582
+ }
583
+ return a;
584
+ }
585
+ function* cr(e, n = 1 / 0, a = 1) {
586
+ for (let t = e; t !== n; t += a) yield t;
587
+ }
588
+ function vr(e) {
589
+ return { x: e.x ?? 0, y: e.y ?? 0, z: e.z ?? 0 };
590
+ }
591
+ Hr(Gr, "ForEntityName", "ATTDEF");
592
+ var Ln = [0, 16711680, 16776960, 65280, 65535, 255, 16711935, 16777215, 8421504, 12632256, 16711680, 16744319, 13369344, 13395558, 10027008, 10046540, 8323072, 8339263, 4980736, 4990502, 16727808, 16752511, 13382400, 13401958, 10036736, 10051404, 8331008, 8343359, 4985600, 4992806, 16744192, 16760703, 13395456, 13408614, 10046464, 10056268, 8339200, 8347455, 4990464, 4995366, 16760576, 16768895, 13408512, 13415014, 10056192, 10061132, 8347392, 8351551, 4995328, 4997670, 16776960, 16777087, 13421568, 13421670, 10000384, 10000460, 8355584, 8355647, 5000192, 5000230, 12582656, 14679935, 10079232, 11717734, 7510016, 8755276, 6258432, 7307071, 3755008, 4344870, 8388352, 12582783, 6736896, 10079334, 5019648, 7510092, 4161280, 6258495, 2509824, 3755046, 4194048, 10485631, 3394560, 8375398, 2529280, 6264908, 2064128, 5209919, 1264640, 3099686, 65280, 8388479, 52224, 6736998, 38912, 5019724, 32512, 4161343, 19456, 2509862, 65343, 8388511, 52275, 6737023, 38950, 5019743, 32543, 4161359, 19475, 2509871, 65407, 8388543, 52326, 6737049, 38988, 5019762, 32575, 4161375, 19494, 2509881, 65471, 8388575, 52377, 6737074, 39026, 5019781, 32607, 4161391, 19513, 2509890, 65535, 8388607, 52428, 6737100, 39064, 5019800, 32639, 4161407, 19532, 2509900, 49151, 8380415, 39372, 6730444, 29336, 5014936, 24447, 4157311, 14668, 2507340, 32767, 8372223, 26316, 6724044, 19608, 5010072, 16255, 4153215, 9804, 2505036, 16383, 8364031, 13260, 6717388, 9880, 5005208, 8063, 4149119, 4940, 2502476, 255, 8355839, 204, 6710988, 152, 5000344, 127, 4145023, 76, 2500172, 4129023, 10452991, 3342540, 8349388, 2490520, 6245528, 2031743, 5193599, 1245260, 3089996, 8323327, 12550143, 6684876, 10053324, 4980888, 7490712, 4128895, 6242175, 2490444, 3745356, 12517631, 14647295, 10027212, 11691724, 7471256, 8735896, 6226047, 7290751, 3735628, 4335180, 16711935, 16744447, 13369548, 13395660, 9961624, 9981080, 8323199, 8339327, 4980812, 4990540, 16711871, 16744415, 13369497, 13395634, 9961586, 9981061, 8323167, 8339311, 4980793, 4990530, 16711807, 16744383, 13369446, 13395609, 9961548, 9981042, 8323135, 8339295, 4980774, 4990521, 16711743, 16744351, 13369395, 13395583, 9961510, 9981023, 8323103, 8339279, 4980755, 4990511, 3355443, 5987163, 8684676, 11382189, 14079702, 16777215];
593
+ function Mn(e) {
594
+ return Ln[e];
595
+ }
596
+ function Cn(e) {
597
+ e.rewind();
598
+ let n = e.next();
599
+ if (n.code !== 101) throw Error("Bad call for skipEmbeddedObject()");
600
+ do
601
+ n = e.next();
602
+ while (n.code !== 0);
603
+ e.rewind();
604
+ }
605
+ function _n(e, n, a) {
606
+ if (I(n, 102)) return z(n, a, e), !0;
607
+ switch (n.code) {
608
+ case 0:
609
+ e.type = n.value;
610
+ break;
611
+ case 5:
612
+ e.handle = n.value;
613
+ break;
614
+ case 330:
615
+ e.ownerBlockRecordSoftId = n.value;
616
+ break;
617
+ case 67:
618
+ e.isInPaperSpace = !!n.value;
619
+ break;
620
+ case 8:
621
+ e.layer = n.value;
622
+ break;
623
+ case 6:
624
+ e.lineType = n.value;
625
+ break;
626
+ case 347:
627
+ e.materialObjectHardId = n.value;
628
+ break;
629
+ case 62:
630
+ e.colorIndex = n.value, e.color = Mn(Math.abs(n.value));
631
+ break;
632
+ case 370:
633
+ e.lineweight = n.value;
634
+ break;
635
+ case 48:
636
+ e.lineTypeScale = n.value;
637
+ break;
638
+ case 60:
639
+ e.isVisible = !!n.value;
640
+ break;
641
+ case 92:
642
+ e.proxyByte = n.value;
643
+ break;
644
+ case 310:
645
+ e.proxyEntity = n.value;
646
+ break;
647
+ case 100:
648
+ break;
649
+ case 420:
650
+ e.color = n.value;
651
+ break;
652
+ case 430:
653
+ e.transparency = n.value;
654
+ break;
655
+ case 390:
656
+ e.plotStyleHardId = n.value;
657
+ break;
658
+ case 284:
659
+ e.shadowMode = n.value;
660
+ break;
661
+ case 1001:
662
+ (e.xdata ?? (e.xdata = [])).push(Tr(n, a));
663
+ break;
664
+ default:
665
+ return !1;
666
+ }
667
+ return !0;
668
+ }
669
+ function Wr(e, n, a) {
670
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
671
+ }
672
+ let wn = { textStyle: "STANDARD", extrusionDirection: { x: 0, y: 0, z: 1 }, rotation: 0 }, nr = [{ code: 46, name: "annotationHeight", parser: r }, { code: 101, parser(e, n) {
673
+ Cn(n);
674
+ } }, { code: 50, name: "columnHeight", parser: r }, { code: 49, name: "columnGutter", parser: r }, { code: 48, name: "columnWidth", parser: r }, { code: 79, name: "columnAutoHeight", parser: r }, { code: 78, name: "columnFlowReversed", parser: r }, { code: 76, name: "columnCount", parser: r }, { code: 75, name: "columnType", parser: r }, { code: 441, name: "backgroundFillTransparency", parser: r }, { code: 63, name: "backgroundFillColor", parser: r }, { code: 45, name: "fillBoxScale", parser: r }, { code: [...cr(430, 440)], name: "backgroundColor", parser: r }, { code: [...cr(420, 430)], name: "backgroundColor", parser: r }, { code: 90, name: "backgroundFill", parser: r }, { code: 44, name: "lineSpacing", parser: r }, { code: 73, name: "lineSpacingStyle", parser: r }, { code: 50, name: "rotation", parser: r }, { code: 43 }, { code: 42 }, { code: 11, name: "direction", parser: s }, { code: 210, name: "extrusionDirection", parser: s }, { code: 7, name: "styleName", parser: r }, ...ir("text"), { code: 72, name: "drawingDirection", parser: r }, { code: 71, name: "attachmentPoint", parser: r }, { code: 41, name: "width", parser: r }, { code: 40, name: "height", parser: r }, { code: 10, name: "insertionPoint", parser: s }, { code: 100, name: "subclassMarker", parser: r }, ...E];
675
+ class jr {
676
+ parseEntity(n, a) {
677
+ let t = {};
678
+ return this.parser(a, n, t), t;
679
+ }
680
+ constructor() {
681
+ Wr(this, "parser", u(nr, wn));
682
+ }
683
+ }
684
+ function Yr(e, n, a) {
685
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
686
+ }
687
+ Wr(jr, "ForEntityName", "MTEXT");
688
+ let Rn = { thickness: 0, rotation: 0, scale: 1, obliqueAngle: 0, textStyle: "STANDARD", textGenerationFlag: 0, horizontalJustification: 0, verticalJustification: 0, extrusionDirection: { x: 0, y: 0, z: 1 } }, Fn = [...nr.slice(nr.findIndex(({ name: e }) => e === "columnType"), nr.findIndex(({ name: e }) => e === "subclassMarker") + 1), { code: 100 }, { code: 0, parser(e) {
689
+ if (!I(e, 0, "MTEXT")) return Je;
690
+ } }, { code: 2, name: "definitionTag", parser: r }, { code: 40, name: "annotationScale", parser: r }, { code: 10, name: "alignmentPoint", parser: s }, { code: 340, name: "secondaryAttributesHardId", parser: r }, { code: 70, name: "numberOfSecondaryAttributes", parser: r }, { code: 70, name: "isReallyLocked", parser: p }, { code: 70, name: "mtextFlag", parser: r }, { code: 280, name: "isDuplicatedEntriesKeep", parser: p }, { code: 100 }, { code: 280, name: "lockPositionFlag", parser: p }, { code: 210, name: "extrusionDirection", parser: s }, { code: 11, name: "alignmentPoint", parser: s }, { code: 74, name: "verticalJustification", parser: r }, { code: 72, name: "horizontalJustification", parser: r }, { code: 71, name: "textGenerationFlag", parser: r }, { code: 7, name: "textStyle", parser: r }, { code: 51, name: "obliqueAngle", parser: r }, { code: 41, name: "scale", parser: r }, { code: 50, name: "rotation", parser: r }, { code: 73 }, { code: 70, name: "attributeFlag", parser: r }, { code: 2, name: "tag", parser: r }, { code: 280 }, { code: 100, name: "subclassMarker", parser: r }, { code: 1, name: "text", parser: r }, { code: 40, name: "textHeight", parser: r }, { code: 10, name: "startPoint", parser: s }, { code: 39, name: "thickness", parser: r }, { code: 100 }, ...E];
691
+ class Xr {
692
+ parseEntity(n, a) {
693
+ let t = {};
694
+ return this.parser(a, n, t), t;
695
+ }
696
+ constructor() {
697
+ Yr(this, "parser", u(Fn, Rn));
698
+ }
699
+ }
700
+ function zr(e, n, a) {
701
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
702
+ }
703
+ Yr(Xr, "ForEntityName", "ATTRIB");
704
+ let Pn = [...ir("data"), { code: 70, name: "version", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...E];
705
+ class Kr {
706
+ parseEntity(n, a) {
707
+ let t = {};
708
+ return this.parser(a, n, t), t;
709
+ }
710
+ constructor() {
711
+ zr(this, "parser", u(Pn));
712
+ }
713
+ }
714
+ function Zr(e, n, a) {
715
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
716
+ }
717
+ zr(Kr, "ForEntityName", "BODY");
718
+ let Vn = { thickness: 0, extrusionDirection: { x: 0, y: 0, z: 1 } }, Bn = [{ code: 210, name: "extrusionDirection", parser: s }, { code: 40, name: "radius", parser: r }, { code: 10, name: "center", parser: s }, { code: 39, name: "thickness", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...E];
719
+ class Jr {
720
+ parseEntity(n, a) {
721
+ let t = {};
722
+ return this.parser(a, n, t), t;
723
+ }
724
+ constructor() {
725
+ Zr(this, "parser", u(Bn, Vn));
726
+ }
727
+ }
728
+ function $r(e, n, a) {
729
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
730
+ }
731
+ Zr(Jr, "ForEntityName", "CIRCLE");
732
+ let Un = { extrusionDirection: { x: 0, y: 0, z: 1 } }, Hn = [{ code: 42, name: "endAngle", parser: r }, { code: 41, name: "startAngle", parser: r }, { code: 40, name: "axisRatio", parser: r }, { code: 210, name: "extrusionDirection", parser: s }, { code: 11, name: "majorAxisEndPoint", parser: s }, { code: 10, name: "center", parser: s }, { code: 100, name: "subclassMarker", parser: r }, ...E];
733
+ class qr {
734
+ parseEntity(n, a) {
735
+ let t = {};
736
+ return this.parser(a, n, t), t;
737
+ }
738
+ constructor() {
739
+ $r(this, "parser", u(Hn, Un));
740
+ }
741
+ }
742
+ function Qr(e, n, a) {
743
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
744
+ }
745
+ $r(qr, "ForEntityName", "ELLIPSE");
746
+ let Gn = [{ code: 70, name: "invisibleEdgeFlags", parser: r }, { code: 13, name: "vertices.3", parser: s }, { code: 12, name: "vertices.2", parser: s }, { code: 11, name: "vertices.1", parser: s }, { code: 10, name: "vertices.0", parser: s }, { code: 100, name: "subclassMarker", parser: r }, ...E];
747
+ class ea {
748
+ parseEntity(n, a) {
749
+ let t = {};
750
+ return this.parser(a, n, t), t;
751
+ }
752
+ constructor() {
753
+ Qr(this, "parser", u(Gn));
754
+ }
755
+ }
756
+ Qr(ea, "ForEntityName", "3DFACE");
757
+ (re = {})[re.First = 1] = "First", re[re.Second = 2] = "Second", re[re.Third = 4] = "Third", re[re.Fourth = 8] = "Fourth";
758
+ function Ke(e, n, a) {
759
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
760
+ }
761
+ class kr {
762
+ getReadIndex() {
763
+ return this._pointer;
764
+ }
765
+ getLines() {
766
+ return this._data;
767
+ }
768
+ next() {
769
+ if (!this.hasNext()) return this._eof ? this.debug : this.debug, { code: 0, value: "EOF" };
770
+ let n = this._data[this._pointer++], a = parseInt(n, 10);
771
+ Number.isNaN(a) && Lr(n);
772
+ let t = yr(a, this._data[this._pointer++], this.debug), c = { code: a, value: t };
773
+ return I(c, 0, "EOF") && (this._eof = !0), this.lastReadGroup = c, c;
774
+ }
775
+ peek() {
776
+ if (!this.hasNext()) throw this._eof ? Error("Cannot call 'next' after EOF group has been read") : Error("Unexpected end of input: EOF group not read before end of file. Ended on code " + this._data[this._pointer]);
777
+ let n = this._data[this._pointer], a = parseInt(n, 10);
778
+ Number.isNaN(a) && Lr(n);
779
+ let t = { code: a, value: 0 };
780
+ return t.value = yr(t.code, this._data[this._pointer + 1], this.debug), t;
781
+ }
782
+ rewind(n) {
783
+ n = n || 1, this._pointer = this._pointer - 2 * n;
784
+ }
785
+ hasNext() {
786
+ return !this._eof && !(this._pointer > this._data.length - 2);
787
+ }
788
+ isEOF() {
789
+ return this._eof;
790
+ }
791
+ constructor(n, a = !1) {
792
+ Ke(this, "_data", void 0), Ke(this, "debug", void 0), Ke(this, "_pointer", void 0), Ke(this, "_eof", void 0), Ke(this, "lastReadGroup", void 0), this._data = n, this.debug = a, this.lastReadGroup = { code: 0, value: 0 }, this._pointer = 0, this._eof = !1;
793
+ }
794
+ }
795
+ function yr(e, n, a = !1) {
796
+ var t;
797
+ let c = (t = n).endsWith("\r") ? t.slice(0, -1) : t;
798
+ return e <= 9 ? c : e >= 10 && e <= 59 ? parseFloat(n.trim()) : e >= 60 && e <= 99 ? parseInt(n.trim()) : e >= 100 && e <= 109 ? c : e >= 110 && e <= 149 ? parseFloat(n.trim()) : e >= 160 && e <= 179 ? parseInt(n.trim()) : e >= 210 && e <= 239 ? parseFloat(n.trim()) : e >= 270 && e <= 289 ? parseInt(n.trim()) : e >= 290 && e <= 299 ? function(o) {
799
+ let i = o.trim().toLowerCase();
800
+ if (i === "" || i === "0" || i === "false" || i === "f" || i === "no") return !1;
801
+ if (i === "1" || i === "true" || i === "t" || i === "yes") return !0;
802
+ let m = Number.parseFloat(i);
803
+ if (!Number.isNaN(m)) return m !== 0;
804
+ throw TypeError("String '" + o + "' cannot be cast to Boolean type");
805
+ }(n.trim()) : e >= 300 && e <= 369 ? c : e >= 370 && e <= 389 ? parseInt(n.trim()) : e >= 390 && e <= 399 ? c : e >= 400 && e <= 409 ? parseInt(n.trim()) : e >= 410 && e <= 419 ? c : e >= 420 && e <= 429 ? parseInt(n.trim()) : e >= 430 && e <= 439 ? c : e >= 440 && e <= 459 ? parseInt(n.trim()) : e >= 460 && e <= 469 ? parseFloat(n.trim()) : e >= 470 && e <= 481 || e === 999 || e >= 1e3 && e <= 1009 ? c : e >= 1010 && e <= 1059 ? parseFloat(n.trim()) : e >= 1060 && e <= 1071 ? parseInt(n.trim()) : c;
806
+ }
807
+ function Lr(e) {
808
+ let n = e.length > 120 ? `${e.slice(0, 120)}…` : e;
809
+ throw Error(`Invalid DXF group code line: "${n}". Expected a numeric group code (often caused by binary DXF, UTF-16-encoded DXF, or stray blank lines). Use ASCII/text DXF or remove blank lines between code/value pairs.`);
810
+ }
811
+ let ra = [{ code: 330, name: "sourceBoundaryObjects", parser: r, isMultiple: !0 }, { code: 97, name: "numberOfSourceBoundaryObjects", parser: r }], Wn = [{ code: 11, name: "end", parser: s }, { code: 10, name: "start", parser: s }], jn = [{ code: 73, name: "isCCW", parser: p }, { code: 51, name: "endAngle", parser: r }, { code: 50, name: "startAngle", parser: r }, { code: 40, name: "radius", parser: r }, { code: 10, name: "center", parser: s }], Yn = [{ code: 73, name: "isCCW", parser: p }, { code: 51, name: "endAngle", parser: r }, { code: 50, name: "startAngle", parser: r }, { code: 40, name: "lengthOfMinorAxis", parser: r }, { code: 11, name: "end", parser: s }, { code: 10, name: "center", parser: s }], Xn = [{ code: 13, name: "endTangent", parser: s }, { code: 12, name: "startTangent", parser: s }, { code: 11, name: "fitDatum", isMultiple: !0, parser: s }, { code: 97, name: "numberOfFitData", parser: r }, { code: 10, name: "controlPoints", isMultiple: !0, parser(e, n) {
812
+ let a = { ...ue(n), weight: 1 };
813
+ return (e = n.next()).code === 42 ? a.weight = e.value : n.rewind(), a;
814
+ } }, { code: 40, name: "knots", isMultiple: !0, parser: r }, { code: 96, name: "numberOfControlPoints", parser: r }, { code: 95, name: "numberOfKnots", parser: r }, { code: 74, name: "isPeriodic", parser: p }, { code: 73, name: "splineFlag", parser: r }, { code: 94, name: "degree", parser: r }], zn = { [$e.Line]: Wn, [$e.Circular]: jn, [$e.Elliptic]: Yn, [$e.Spline]: Xn }, Kn = [...ra, { code: 72, name: "edges", parser(e, n) {
815
+ let a = { type: e.value }, t = zn[a.type];
816
+ if (t == null) throw Error(`Unsupported HATCH boundary edge type: ${a.type} (expected 1–4: line, arc, elliptic arc, spline). This often happens when a polyline hatch boundary is parsed as edge segments (e.g. group 92 boundary flag missing the polyline bit). Try re-saving as ASCII DXF or simplifying hatch boundaries in CAD.`);
817
+ return u(t)(e = n.next(), n, a), a;
818
+ }, isMultiple: !0 }, { code: 93, name: "numberOfEdges", parser: r }], Zn = [...ra, { code: 10, name: "vertices", parser(e, n) {
819
+ let a = { ...ue(n), bulge: 0 };
820
+ return (e = n.next()).code === 42 ? a.bulge = e.value : n.rewind(), a;
821
+ }, isMultiple: !0 }, { code: 93, name: "numberOfVertices", parser: r }, { code: 73, name: "isClosed", parser: p }, { code: 72, name: "hasBulge", parser: p }];
822
+ function Jn(e, n) {
823
+ let a = { boundaryPathTypeFlag: e.value }, t = !!(a.boundaryPathTypeFlag & sn.Polyline), c = n.getReadIndex();
824
+ return e = n.next(), !t && function(o, i) {
825
+ let m = Math.min(o.length, i + 120), l = i;
826
+ for (; l < m - 1; ) {
827
+ let d = parseInt(o[l], 10);
828
+ if (Number.isNaN(d)) break;
829
+ if (d === 93) {
830
+ if (l + 3 >= o.length || parseInt(o[l + 2], 10) !== 72) return !1;
831
+ let f = yr(72, o[l + 3]);
832
+ if (f === 0) return !0;
833
+ if (f === 1) {
834
+ if (l + 5 < o.length && parseInt(o[l + 4], 10) === 73) return !0;
835
+ if (l + 8 < o.length && parseInt(o[l + 4], 10) === 10) {
836
+ let h = parseInt(o[l + 8], 10);
837
+ if (h === 10 || h === 42) return !0;
838
+ }
839
+ }
840
+ break;
841
+ }
842
+ if (d === 0) break;
843
+ l += 2;
844
+ }
845
+ return !1;
846
+ }(n.getLines(), c) && (t = !0), t ? u(Zn)(e, n, a) : u(Kn)(e, n, a), a;
847
+ }
848
+ let $n = [{ code: 49, name: "dashLengths", parser: r, isMultiple: !0 }, { code: 79, name: "numberOfDashLengths", parser: r }, { code: 45, name: "offset", parser: Mr }, { code: 43, name: "base", parser: Mr }, { code: 53, name: "angle", parser: r }];
849
+ function Mr(e, n) {
850
+ let a = e.code + 1, t = { x: e.value, y: 1 };
851
+ return (e = n.next()).code === a ? t.y = e.value : n.rewind(), t;
852
+ }
853
+ function qn(e, n) {
854
+ let a = {};
855
+ return u($n)(e, n, a), a;
856
+ }
857
+ function Qn(e, n) {
858
+ let a = [];
859
+ for (; e.code === 463; ) {
860
+ let t = { reservedField: e.value };
861
+ if ((e = n.next()).code === 63 && (t.colorIndex = e.value, e = n.next()), e.code === 421) t.rgb = e.value, a.push(t), e = n.next();
862
+ else {
863
+ n.rewind();
864
+ break;
865
+ }
866
+ }
867
+ return e.code !== 463 && a.length > 0 && n.rewind(), a;
868
+ }
869
+ function aa(e, n, a) {
870
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
871
+ }
872
+ let et = { extrusionDirection: { x: 0, y: 0, z: 1 }, gradientRotation: 0, colorTint: 0 }, rt = [{ code: 470, name: "gradientName", parser: r }, { code: 463, name: "gradientColors", parser: Qn }, { code: 462, name: "colorTint", parser: r }, { code: 461, name: "gradientDefinition", parser: r }, { code: 460, name: "gradientRotation", parser: r }, { code: 453, name: "numberOfColors", parser: r }, { code: 452, name: "gradientColorFlag", parser: r }, { code: 451 }, { code: 450, name: "gradientFlag", parser: r }, { code: 10, name: "seedPoints", parser: s, isMultiple: !0 }, { code: 99 }, { code: 11, name: "offsetVector", parser: s }, { code: 98, name: "numberOfSeedPoints", parser: r }, { code: 47, name: "pixelSize", parser: r }, { code: 53, name: "definitionLines", parser: qn, isMultiple: !0 }, { code: 78, name: "numberOfDefinitionLines", parser: r }, { code: 77, name: "isDouble", parser: p }, { code: 73, name: "isAnnotated", parser: p }, { code: 41, name: "patternScale", parser: r }, { code: 52, name: "patternAngle", parser: r }, { code: 76, name: "patternType", parser: r }, { code: 75, name: "hatchStyle", parser: r }, { code: 92, name: "boundaryPaths", parser: Jn, isMultiple: !0 }, { code: 91, name: "numberOfBoundaryPaths", parser: r }, { code: 71, name: "associativity", parser: r }, { code: 63, name: "patternFillColor", parser: r }, { code: 70, name: "solidFill", parser: r }, { code: 2, name: "patternName", parser: r }, { code: 210, name: "extrusionDirection", parser: s }, { code: 10, name: "elevationPoint", parser: s }, { code: 100, name: "subclassMarker", parser: r, pushContext: !0 }, ...E];
873
+ class na {
874
+ parseEntity(n, a) {
875
+ let t = {};
876
+ return this.parser(a, n, t), t;
877
+ }
878
+ constructor() {
879
+ aa(this, "parser", u(rt, et));
880
+ }
881
+ }
882
+ function ta(e, n, a) {
883
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
884
+ }
885
+ aa(na, "ForEntityName", "HATCH");
886
+ let at = { brightness: 50, contrast: 50, fade: 0, clippingBoundaryPath: [] }, nt = [{ code: 290, name: "clipMode", parser: r }, { code: 14, name: "clippingBoundaryPath", isMultiple: !0, parser: s }, { code: 91, name: "countBoundaryPoints", parser: r }, { code: 71, name: "clippingBoundaryType", parser: r }, { code: 360, name: "imageDefReactorHandle", parser: r }, { code: 283, name: "fade", parser: r }, { code: 282, name: "contrast", parser: r }, { code: 281, name: "brightness", parser: r }, { code: 280, name: "isClipped", parser: p }, { code: 70, name: "flags", parser: r }, { code: 340, name: "imageDefHandle", parser: r }, { code: 13, name: "imageSize", parser: s }, { code: 12, name: "vPixel", parser: s }, { code: 11, name: "uPixel", parser: s }, { code: 10, name: "position", parser: s }, { code: 90, name: "version", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...E];
887
+ class oa {
888
+ parseEntity(n, a) {
889
+ let t = {};
890
+ return this.parser(a, n, t), t;
891
+ }
892
+ constructor() {
893
+ ta(this, "parser", u(nt, at));
894
+ }
895
+ }
896
+ ta(oa, "ForEntityName", "IMAGE");
897
+ (ae = {})[ae.ShowImage = 1] = "ShowImage", ae[ae.ShowImageWhenNotAlignedWithScreen = 2] = "ShowImageWhenNotAlignedWithScreen", ae[ae.UseClippingBoundary = 4] = "UseClippingBoundary", ae[ae.TransparencyIsOn = 8] = "TransparencyIsOn";
898
+ (je = {})[je.Rectangular = 1] = "Rectangular", je[je.Polygonal = 2] = "Polygonal";
899
+ (Ye = {})[Ye.Outside = 0] = "Outside", Ye[Ye.Inside = 1] = "Inside";
900
+ function sa(e, n, a) {
901
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
902
+ }
903
+ let tt = { xScale: 1, yScale: 1, zScale: 1, rotation: 0, columnCount: 0, rowCount: 0, columnSpacing: 0, rowSpacing: 0, extrusionDirection: { x: 0, y: 0, z: 1 } }, ot = [{ code: 210, name: "extrusionDirection", parser: s }, { code: 45, name: "rowSpacing", parser: r }, { code: 44, name: "columnSpacing", parser: r }, { code: 71, name: "rowCount", parser: r }, { code: 70, name: "columnCount", parser: r }, { code: 50, name: "rotation", parser: r }, { code: 43, name: "zScale", parser: r }, { code: 42, name: "yScale", parser: r }, { code: 41, name: "xScale", parser: r }, { code: 10, name: "insertionPoint", parser: s }, { code: 2, name: "name", parser: r }, { code: 66, name: "isVariableAttributes", parser: p }, { code: 100, name: "subclassMarker", parser: r }, ...E];
904
+ class ca {
905
+ parseEntity(n, a) {
906
+ let t = {};
907
+ return this.parser(a, n, t), t;
908
+ }
909
+ constructor() {
910
+ sa(this, "parser", u(ot, tt));
911
+ }
912
+ }
913
+ function ia(e, n, a) {
914
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
915
+ }
916
+ sa(ca, "ForEntityName", "INSERT");
917
+ let st = { isArrowheadEnabled: !0 }, ct = [{ code: 213, name: "offsetFromAnnotation", parser: s }, { code: 212, name: "offsetFromBlock", parser: s }, { code: 211, name: "horizontalDirection", parser: s }, { code: 210, name: "normal", parser: s }, { code: 340, name: "associatedAnnotation", parser: r }, { code: 77, name: "byBlockColor", parser: r }, { code: 10, name: "vertices", parser: s, isMultiple: !0 }, { code: 76, name: "numberOfVertices", parser: r }, { code: 41, name: "textWidth", parser: r }, { code: 40, name: "textHeight", parser: r }, { code: 75, name: "isHooklineExists", parser: p }, { code: 74, name: "isHooklineSameDirection", parser: p }, { code: 73, name: "leaderCreationFlag", parser: r }, { code: 72, name: "isSpline", parser: p }, { code: 71, name: "isArrowheadEnabled", parser: p }, { code: 3, name: "styleName", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...E];
918
+ class la {
919
+ parseEntity(n, a) {
920
+ let t = {};
921
+ return this.parser(a, n, t), t;
922
+ }
923
+ constructor() {
924
+ ia(this, "parser", u(ct, st));
925
+ }
926
+ }
927
+ ia(la, "ForEntityName", "LEADER");
928
+ (ne = {})[ne.TextAnnotation = 0] = "TextAnnotation", ne[ne.ToleranceAnnotation = 1] = "ToleranceAnnotation", ne[ne.BlockReferenceAnnotation = 2] = "BlockReferenceAnnotation", ne[ne.NoAnnotation = 3] = "NoAnnotation";
929
+ function da(e, n, a) {
930
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
931
+ }
932
+ let it = { thickness: 0, extrusionDirection: { x: 0, y: 0, z: 1 } }, lt = [{ code: 210, name: "extrusionDirection", parser: s }, { code: 11, name: "endPoint", parser: s }, { code: 10, name: "startPoint", parser: s }, { code: 39, name: "thickness", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...E];
933
+ class pa {
934
+ parseEntity(n, a) {
935
+ let t = {};
936
+ return this.parser(a, n, t), t;
937
+ }
938
+ constructor() {
939
+ da(this, "parser", u(lt, it));
940
+ }
941
+ }
942
+ function ua(e, n, a) {
943
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
944
+ }
945
+ da(pa, "ForEntityName", "LINE");
946
+ let dt = [{ code: 280, name: "shadowMapSoftness", parser: r }, { code: 91, name: "shadowMapSize", parser: r }, { code: 73, name: "shadowType", parser: r }, { code: 293, name: "isShadowCast", parser: p }, { code: 51, name: "falloffAngle", parser: r }, { code: 50, name: "hotspotAngle", parser: r }, { code: 42, name: "limitEnd", parser: r }, { code: 41, name: "limitStart", parser: r }, { code: 292, name: "isAttenuationLimited", parser: p }, { code: 72, name: "attenuationType", parser: r }, { code: 11, name: "target", parser: s }, { code: 10, name: "position", parser: s }, { code: 40, name: "intensity", parser: r }, { code: 291, name: "isPlotGlyph", parser: p }, { code: 290, name: "isOn", parser: p }, { code: 421, name: "lightColorInstance", parser: r }, { code: 63, name: "lightColorIndex", parser: r }, { code: 70, name: "lightType", parser: r }, { code: 1, name: "name", parser: r }, { code: 90, name: "version", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...E];
947
+ class ma {
948
+ parseEntity(n, a) {
949
+ let t = {};
950
+ return this.parser(a, n, t), t;
951
+ }
952
+ constructor() {
953
+ ua(this, "parser", u(dt));
954
+ }
955
+ }
956
+ ua(ma, "ForEntityName", "LIGHT");
957
+ (Te = {})[Te.Distant = 1] = "Distant", Te[Te.Point = 2] = "Point", Te[Te.Spot = 3] = "Spot";
958
+ (Se = {})[Se.None = 0] = "None", Se[Se.InverseLinear = 1] = "InverseLinear", Se[Se.InverseSquare = 2] = "InverseSquare";
959
+ let pt = { flag: 0, elevation: 0, thickness: 0, extrusionDirection: { x: 0, y: 0, z: 1 }, vertices: [] }, ut = { bulge: 0 }, mt = [{ code: 42, name: "bulge", parser: r }, { code: 41, name: "endWidth", parser: r }, { code: 40, name: "startWidth", parser: r }, { code: 91, name: "id", parser: r }, { code: 20, name: "y", parser: r }, { code: 10, name: "x", parser: r }], ft = [{ code: 210, name: "extrusionDirection", parser: s }, { code: 10, name: "vertices", isMultiple: !0, parser(e, n) {
960
+ let a = {};
961
+ return u(mt, ut)(e, n, a), a;
962
+ } }, { code: 39, name: "thickness", parser: r }, { code: 38, name: "elevation", parser: r }, { code: 43, name: "constantWidth", parser: r }, { code: 70, name: "flag", parser: r }, { code: 90, name: "numberOfVertices", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...E];
963
+ class tr {
964
+ parseEntity(n, a) {
965
+ let t = {};
966
+ return u(ft, pt)(a, n, t), t;
967
+ }
968
+ }
969
+ (fr = "ForEntityName") in tr ? Object.defineProperty(tr, fr, { value: "LWPOLYLINE", enumerable: !0, configurable: !0, writable: !0 }) : tr[fr] = "LWPOLYLINE";
970
+ (Xe = {})[Xe.IS_CLOSED = 1] = "IS_CLOSED", Xe[Xe.PLINE_GEN = 128] = "PLINE_GEN";
971
+ function fa(e, n, a) {
972
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
973
+ }
974
+ let bt = [{ code: 90, name: "overridenSubEntityCount", parser: r }, { code: 140, name: "edgeCreaseWeights", parser: r, isMultiple: !0 }, { code: 95, name: "edgeCreaseCount", parser: r }, { code: 94, parser(e, n, a) {
975
+ a.edgeCount = e.value, a.edgeIndices = [];
976
+ for (let t = 0; t < a.edgeCount; ++t) {
977
+ let c = [];
978
+ e = n.next(), c[0] = e.value, e = n.next(), c[1] = e.value, a.edgeIndices.push(c);
979
+ }
980
+ } }, { code: 93, parser(e, n, a) {
981
+ a.totalFaceIndices = e.value, a.faceIndices = [];
982
+ let t = [];
983
+ for (let o = 0; o < a.totalFaceIndices && !I(e, 0); ++o) e = n.next(), t.push(e.value);
984
+ let c = 0;
985
+ for (; c < t.length; ) {
986
+ let o = t[c++], i = [];
987
+ for (let m = 0; m < o; ++m) i.push(t[c++]);
988
+ a.faceIndices.push(i);
989
+ }
990
+ } }, { code: 10, name: "vertices", parser: s, isMultiple: !0 }, { code: 92, name: "verticesCount", parser: r }, { code: 91, name: "subdivisionLevel", parser: r }, { code: 40, name: "blendCrease", parser: r }, { code: 72, name: "isBlendCreased", parser: p }, { code: 71, name: "version", parser: r }, { code: 100, name: "subclassMarker", parser: dn, pushContext: !0 }, ...E];
991
+ class ba {
992
+ parseEntity(n, a) {
993
+ let t = {};
994
+ return this.parser(a, n, t), t;
995
+ }
996
+ constructor() {
997
+ fa(this, "parser", u(bt));
998
+ }
999
+ }
1000
+ function Ia(e, n, a) {
1001
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1002
+ }
1003
+ fa(ba, "ForEntityName", "MESH");
1004
+ let It = [{ code: 42, name: "fillParameters", parser: r, isMultiple: !0 }, { code: 75, name: "fillCount", parser: r }, { code: 41, name: "parameters", parser: r, isMultiple: !0 }, { code: 74, name: "parameterCount", parser: r }], ht = [{ code: [74, 41, 75, 42], name: "elements", parser(e, n) {
1005
+ let a = u(It), t = {};
1006
+ return a(e, n, t), t;
1007
+ }, isMultiple: !0 }, { code: 13, name: "miterDirection", parser: s }, { code: 12, name: "direction", parser: s }, { code: 11, name: "position", parser: s }], Et = [{ code: [11, 12, 13], name: "segments", parser(e, n) {
1008
+ let a = u(ht), t = {};
1009
+ return a(e, n, t), t;
1010
+ }, isMultiple: !0 }, { code: 210, name: "extrusionDirection", parser: s }, { code: 10, name: "startPosition", parser: s }, { code: 73, name: "styleCount", parser: r }, { code: 72, name: "vertexCount", parser: r }, { code: 71, name: "flags", parser: r }, { code: 70, name: "justification", parser: r }, { code: 40, name: "scale", parser: r }, { code: 340, name: "styleObjectHandle", parser: r }, { code: 2, name: "name", parser: r }, { code: 100, name: "subclassMarker", parser: r, pushContext: !0 }, ...E];
1011
+ class ha {
1012
+ parseEntity(n, a) {
1013
+ let t = {};
1014
+ return this.parser(a, n, t), t;
1015
+ }
1016
+ constructor() {
1017
+ Ia(this, "parser", u(Et));
1018
+ }
1019
+ }
1020
+ Ia(ha, "ForEntityName", "MLINE");
1021
+ (Oe = {})[Oe.Top = 0] = "Top", Oe[Oe.Zero = 1] = "Zero", Oe[Oe.Bottom = 2] = "Bottom";
1022
+ (te = {})[te.HasVertex = 1] = "HasVertex", te[te.Closed = 2] = "Closed", te[te.SuppressStartCaps = 4] = "SuppressStartCaps", te[te.SuppressEndCaps = 8] = "SuppressEndCaps";
1023
+ (Ne = {})[Ne.LEFT_TO_RIGHT = 1] = "LEFT_TO_RIGHT", Ne[Ne.TOP_TO_BOTTOM = 3] = "TOP_TO_BOTTOM", Ne[Ne.BY_STYLE = 5] = "BY_STYLE";
1024
+ function Ea(e, n, a) {
1025
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1026
+ }
1027
+ let gt = {}, xt = [{ code: 300, parser: function(e, n, a) {
1028
+ var o;
1029
+ let t;
1030
+ if (e.value === "CONTEXT_DATA{") for (; n.hasNext(); ) {
1031
+ var c;
1032
+ if ((t = n.next()).code === 301) break;
1033
+ switch (t.code) {
1034
+ case 10:
1035
+ a.contentBasePosition = L(t, n);
1036
+ break;
1037
+ case 11:
1038
+ a.normal = L(t, n);
1039
+ break;
1040
+ case 12:
1041
+ a.textAnchor = L(t, n);
1042
+ break;
1043
+ case 13:
1044
+ a.textDirection = L(t, n);
1045
+ break;
1046
+ case 14:
1047
+ le(a).normal = L(t, n);
1048
+ break;
1049
+ case 15:
1050
+ le(a).position = L(t, n);
1051
+ break;
1052
+ case 16:
1053
+ le(a).scale = L(t, n);
1054
+ break;
1055
+ case 40:
1056
+ a.contentScale = t.value;
1057
+ break;
1058
+ case 41:
1059
+ case 44:
1060
+ a.textHeight = t.value;
1061
+ break;
1062
+ case 42:
1063
+ a.textRotation = t.value;
1064
+ break;
1065
+ case 43:
1066
+ a.textWidth = t.value;
1067
+ break;
1068
+ case 45:
1069
+ a.textLineSpacingFactor = t.value;
1070
+ break;
1071
+ case 46:
1072
+ le(a).rotation = t.value;
1073
+ break;
1074
+ case 47:
1075
+ (c = le(a)).transformationMatrix ?? (c.transformationMatrix = []), (o = le(a).transformationMatrix) == null || o.push(t.value);
1076
+ break;
1077
+ case 90:
1078
+ a.textColor = t.value;
1079
+ break;
1080
+ case 91:
1081
+ a.textBackgroundColor = t.value;
1082
+ break;
1083
+ case 92:
1084
+ a.textBackgroundTransparency = t.value;
1085
+ break;
1086
+ case 93:
1087
+ le(a).color = t.value;
1088
+ break;
1089
+ case 110:
1090
+ a.planeOrigin = L(t, n);
1091
+ break;
1092
+ case 111:
1093
+ a.planeXAxisDirection = L(t, n);
1094
+ break;
1095
+ case 112:
1096
+ a.planeYAxisDirection = L(t, n);
1097
+ break;
1098
+ case 140:
1099
+ a.arrowheadSize = t.value;
1100
+ break;
1101
+ case 141:
1102
+ a.textBackgroundScaleFactor = t.value;
1103
+ break;
1104
+ case 142:
1105
+ a.textColumnWidth = t.value;
1106
+ break;
1107
+ case 143:
1108
+ a.textColumnGutterWidth = t.value;
1109
+ break;
1110
+ case 144:
1111
+ a.textColumnHeight = t.value;
1112
+ break;
1113
+ case 145:
1114
+ a.landingGap = t.value;
1115
+ break;
1116
+ case 170:
1117
+ a.textLineSpacingStyle = t.value;
1118
+ break;
1119
+ case 171:
1120
+ a.textAttachment = t.value;
1121
+ break;
1122
+ case 172:
1123
+ a.textFlowDirection = t.value;
1124
+ break;
1125
+ case 173:
1126
+ a.textColumnType = t.value;
1127
+ break;
1128
+ case 290:
1129
+ a.hasMText = t.value;
1130
+ break;
1131
+ case 291:
1132
+ a.textBackgroundColorOn = t.value;
1133
+ break;
1134
+ case 292:
1135
+ a.textFillOn = t.value;
1136
+ break;
1137
+ case 293:
1138
+ a.textUseAutoHeight = t.value;
1139
+ break;
1140
+ case 294:
1141
+ a.textColumnFlowReversed = t.value;
1142
+ break;
1143
+ case 295:
1144
+ a.textUseWordBreak = t.value;
1145
+ break;
1146
+ case 296:
1147
+ a.hasBlock = t.value;
1148
+ break;
1149
+ case 297:
1150
+ a.planeNormalReversed = t.value;
1151
+ break;
1152
+ case 302:
1153
+ t.value === "LEADER{" && (a.leaderSections ?? (a.leaderSections = []), a.leaderSections.push(function(i, m) {
1154
+ let l, d;
1155
+ if (i.value !== "LEADER{") return { leaderLines: [] };
1156
+ let f = { leaderLines: [] };
1157
+ for (; m.hasNext(); ) {
1158
+ if ((d = m.next()).code === 303) {
1159
+ qe(f, l);
1160
+ break;
1161
+ }
1162
+ switch (d.code) {
1163
+ case 290:
1164
+ f.lastLeaderLinePointSet = d.value;
1165
+ break;
1166
+ case 291:
1167
+ f.doglegVectorSet = d.value;
1168
+ break;
1169
+ case 10:
1170
+ f.lastLeaderLinePoint = L(d, m);
1171
+ break;
1172
+ case 11:
1173
+ f.doglegVector = L(d, m);
1174
+ break;
1175
+ case 12:
1176
+ l ?? (l = {}), l.start = L(d, m);
1177
+ break;
1178
+ case 13:
1179
+ l ?? (l = {}), l.end = L(d, m), qe(f, l), l = void 0;
1180
+ break;
1181
+ case 90:
1182
+ f.leaderBranchIndex = d.value;
1183
+ break;
1184
+ case 40:
1185
+ f.doglegLength = d.value;
1186
+ break;
1187
+ case 304:
1188
+ d.value === "LEADER_LINE{" && f.leaderLines.push(function(h, y) {
1189
+ let x, S;
1190
+ if (h.value !== "LEADER_LINE{") return { vertices: [] };
1191
+ let O = { vertices: [] };
1192
+ for (; y.hasNext(); ) {
1193
+ if ((S = y.next()).code === 305) {
1194
+ qe(O, x);
1195
+ break;
1196
+ }
1197
+ switch (S.code) {
1198
+ case 10:
1199
+ O.vertices.push(L(S, y));
1200
+ break;
1201
+ case 11:
1202
+ x ?? (x = {}), x.start = L(S, y);
1203
+ break;
1204
+ case 12:
1205
+ x ?? (x = {}), x.end = L(S, y), qe(O, x), x = void 0;
1206
+ break;
1207
+ case 90:
1208
+ O.breakPointIndexes ?? (O.breakPointIndexes = []), O.breakPointIndexes.push(S.value), x ?? (x = {}), x.index = S.value;
1209
+ break;
1210
+ case 91:
1211
+ O.leaderLineIndex = S.value;
1212
+ }
1213
+ }
1214
+ return O;
1215
+ }(d, m));
1216
+ }
1217
+ }
1218
+ return f;
1219
+ }(t, n)));
1220
+ break;
1221
+ case 304:
1222
+ t.value !== "LEADER_LINE{" && (a.textContent = t.value, a.contentType ?? (a.contentType = 2));
1223
+ break;
1224
+ case 340:
1225
+ a.textStyleId = t.value;
1226
+ break;
1227
+ case 341:
1228
+ a.blockContentId = t.value, le(a).blockContentId = t.value;
1229
+ }
1230
+ }
1231
+ } }, { code: 270, name: "version", parser: r }, { code: 340, name: "leaderStyleId", parser: r }, { code: 90, name: "propertyOverrideFlag", parser: r }, { code: 170, name: "leaderLineType", parser: r }, { code: 91, name: "leaderLineColor", parser: r }, { code: 341, name: "leaderLineTypeId", parser: r }, { code: 171, name: "leaderLineWeight", parser: r }, { code: 290, name: "landingEnabled", parser: p }, { code: 291, name: "doglegEnabled", parser: p }, { code: [40, 41], name: "doglegLength", parser: r }, { code: 342, name: "arrowheadId", parser: r }, { code: 42, name: "arrowheadSize", parser: r }, { code: 172, name: "contentType", parser: r }, { code: 343, name: "textStyleId", parser: r }, { code: 173, name: "textLeftAttachmentType", parser: r }, { code: 95, name: "textRightAttachmentType", parser: r }, { code: 174, name: "textAngleType", parser: r }, { code: 175, name: "textAlignmentType", parser: r }, { code: 92, name: "textColor", parser: r }, { code: 292, name: "textFrameEnabled", parser: p }, { code: 344, parser: function(e, n, a) {
1232
+ a.blockContentId = e.value, le(a).blockContentId = e.value;
1233
+ } }, { code: 93, name: "blockContentColor", parser: r }, { code: 10, name: "blockContentScale", parser: s }, { code: 43, name: "blockContentRotation", parser: r }, { code: 176, name: "blockContentConnectionType", parser: r }, { code: 293, name: "annotativeScaleEnabled", parser: p }, { code: 94, parser: function(e, n, a) {
1234
+ a.arrowheadOverrides ?? (a.arrowheadOverrides = []), a.arrowheadOverrides.push({ index: e.value });
1235
+ }, isMultiple: !0 }, { code: 345, parser: function(e, n, a) {
1236
+ var t;
1237
+ ((t = a).arrowheadOverrides ?? (t.arrowheadOverrides = []), t.arrowheadOverrides.length || t.arrowheadOverrides.push({}), t.arrowheadOverrides[t.arrowheadOverrides.length - 1]).handle = e.value;
1238
+ }, isMultiple: !0 }, { code: 330, parser: function(e, n, a) {
1239
+ a.blockAttributes ?? (a.blockAttributes = []), a.blockAttributes.push({ id: e.value });
1240
+ }, isMultiple: !0 }, { code: 177, parser: function(e, n, a) {
1241
+ gr(a).index = e.value;
1242
+ }, isMultiple: !0 }, { code: 44, parser: function(e, n, a) {
1243
+ gr(a).width = e.value;
1244
+ }, isMultiple: !0 }, { code: 302, parser: function(e, n, a) {
1245
+ gr(a).text = e.value;
1246
+ }, isMultiple: !0 }, { code: 294, name: "textDirectionNegative", parser: p }, { code: 178, name: "textAlignInIPE", parser: r }, { code: 179, name: "textAttachmentPoint", parser: r }, { code: 271, name: "textAttachmentDirection", parser: r }, { code: 272, name: "bottomTextAttachmentDirection", parser: r }, { code: 273, name: "topTextAttachmentDirection", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...E];
1247
+ function L(e, n) {
1248
+ return vr(s(e, n));
1249
+ }
1250
+ function qe(e, n) {
1251
+ (n != null && n.start || n != null && n.end) && (e.breaks ?? (e.breaks = []), e.breaks.push(n));
1252
+ }
1253
+ function le(e) {
1254
+ return e.blockContent ?? (e.blockContent = {});
1255
+ }
1256
+ function gr(e) {
1257
+ return e.blockAttributes ?? (e.blockAttributes = []), e.blockAttributes.length || e.blockAttributes.push({}), e.blockAttributes[e.blockAttributes.length - 1];
1258
+ }
1259
+ class ga {
1260
+ parseEntity(n, a) {
1261
+ let t = {};
1262
+ return this.parser(a, n, t), t;
1263
+ }
1264
+ constructor() {
1265
+ Ea(this, "parser", u(xt, gt));
1266
+ }
1267
+ }
1268
+ function xa(e, n, a) {
1269
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1270
+ }
1271
+ Ea(ga, "ForEntityName", "MULTILEADER");
1272
+ let vt = { thickness: 0, extrusionDirection: { x: 0, y: 0, z: 1 }, angle: 0 }, yt = [{ code: 50, name: "angle", parser: r }, { code: 210, name: "extrusionDirection", parser: s }, { code: 39, name: "thickness", parser: r }, { code: 10, name: "position", parser: s }, { code: 100, name: "subclassMarker", parser: r }, ...E];
1273
+ class va {
1274
+ parseEntity(n, a) {
1275
+ let t = {};
1276
+ return this.parser(a, n, t), t;
1277
+ }
1278
+ constructor() {
1279
+ xa(this, "parser", u(yt, vt));
1280
+ }
1281
+ }
1282
+ function ya(e, n, a) {
1283
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1284
+ }
1285
+ xa(va, "ForEntityName", "POINT");
1286
+ let Tt = { startWidth: 0, endWidth: 0, bulge: 0 }, St = [{ code: 91, name: "id", parser: r }, { code: [...cr(71, 75)], name: "faces", isMultiple: !0, parser: r }, { code: 50, name: "tangentDirection", parser: r }, { code: 70, name: "flag", parser: r }, { code: 42, name: "bulge", parser: r }, { code: 41, name: "endWidth", parser: r }, { code: 40, name: "startWidth", parser: r }, { code: 30, name: "z", parser: r }, { code: 20, name: "y", parser: r }, { code: 10, name: "x", parser: r }, { code: 100, name: "subclassMarker", parser: r }, { code: 100 }, ...E];
1287
+ class Or {
1288
+ parseEntity(n, a) {
1289
+ let t = {};
1290
+ return this.parser(a, n, t), t;
1291
+ }
1292
+ constructor() {
1293
+ ya(this, "parser", u(St, Tt));
1294
+ }
1295
+ }
1296
+ function Ta(e, n, a) {
1297
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1298
+ }
1299
+ ya(Or, "ForEntityName", "VERTEX");
1300
+ let Ot = { thickness: 0, flag: 0, startWidth: 0, endWidth: 0, meshMVertexCount: 0, meshNVertexCount: 0, surfaceMDensity: 0, surfaceNDensity: 0, smoothType: 0, extrusionDirection: { x: 0, y: 0, z: 1 }, vertices: [] }, Nt = [{ code: 0, name: "vertices", isMultiple: !0, parser: (e, n) => I(e, 0, "VERTEX") ? (e = n.next(), new Or().parseEntity(n, e)) : Je }, { code: 210, name: "extrusionDirection", parser: s }, { code: 75, name: "smoothType", parser: r }, { code: 74, name: "surfaceNDensity", parser: r }, { code: 73, name: "surfaceMDensity", parser: r }, { code: 72, name: "meshNVertexCount", parser: r }, { code: 71, name: "meshMVertexCount", parser: r }, { code: 41, name: "endWidth", parser: r }, { code: 40, name: "startWidth", parser: r }, { code: 70, name: "flag", parser: r }, { code: 39, name: "thickness", parser: r }, { code: 30, name: "elevation", parser: r }, { code: 20 }, { code: 10 }, { code: 66 }, { code: 100, name: "subclassMarker", parser: r }, ...E];
1301
+ class Sa {
1302
+ parseEntity(n, a) {
1303
+ let t = {};
1304
+ return this.parser(a, n, t), t;
1305
+ }
1306
+ constructor() {
1307
+ Ta(this, "parser", u(Nt, Ot));
1308
+ }
1309
+ }
1310
+ Ta(Sa, "ForEntityName", "POLYLINE");
1311
+ (D = {})[D.CLOSED_POLYLINE = 1] = "CLOSED_POLYLINE", D[D.CURVE_FIT = 2] = "CURVE_FIT", D[D.SPLINE_FIT = 4] = "SPLINE_FIT", D[D.POLYLINE_3D = 8] = "POLYLINE_3D", D[D.POLYGON_3D = 16] = "POLYGON_3D", D[D.CLOSED_POLYGON = 32] = "CLOSED_POLYGON", D[D.POLYFACE = 64] = "POLYFACE", D[D.CONTINUOUS = 128] = "CONTINUOUS";
1312
+ (oe = {})[oe.NONE = 0] = "NONE", oe[oe.QUADRATIC = 5] = "QUADRATIC", oe[oe.CUBIC = 6] = "CUBIC", oe[oe.BEZIER = 8] = "BEZIER";
1313
+ function Oa(e, n, a) {
1314
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1315
+ }
1316
+ let At = [{ code: 11, name: "direction", parser: s }, { code: 10, name: "position", parser: s }, { code: 100, name: "subclassMarker", parser: r }, ...E];
1317
+ class Na {
1318
+ parseEntity(n, a) {
1319
+ let t = {};
1320
+ return this.parser(a, n, t), t;
1321
+ }
1322
+ constructor() {
1323
+ Oa(this, "parser", u(At));
1324
+ }
1325
+ }
1326
+ function Aa(e, n, a) {
1327
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1328
+ }
1329
+ Oa(Na, "ForEntityName", "RAY");
1330
+ let Dt = [...ir("data"), { code: 70, name: "version", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...E];
1331
+ class Da {
1332
+ parseEntity(n, a) {
1333
+ let t = {};
1334
+ return this.parser(a, n, t), t;
1335
+ }
1336
+ constructor() {
1337
+ Aa(this, "parser", u(Dt));
1338
+ }
1339
+ }
1340
+ function ka(e, n, a) {
1341
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1342
+ }
1343
+ Aa(Da, "ForEntityName", "REGION");
1344
+ let kt = { vertices: [], backLineVertices: [] }, Lt = [{ code: 360, name: "geometrySettingHardId", parser: r }, { code: 12, name: "backLineVertices", isMultiple: !0, parser: s }, { code: 93, name: "numberOfBackLineVertices", parser: r }, { code: 11, name: "vertices", isMultiple: !0, parser: s }, { code: 92, name: "verticesCount", parser: r }, { code: [63, 411], name: "indicatorColor", parser: r }, { code: 70, name: "indicatorTransparency", parser: r }, { code: 41, name: "bottomHeight", parser: r }, { code: 40, name: "topHeight", parser: r }, { code: 10, name: "verticalDirection", parser: s }, { code: 1, name: "name", parser: r }, { code: 91, name: "flag", parser: r }, { code: 90, name: "state", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...E];
1345
+ class La {
1346
+ parseEntity(n, a) {
1347
+ let t = {};
1348
+ return this.parser(a, n, t), t;
1349
+ }
1350
+ constructor() {
1351
+ ka(this, "parser", u(Lt, kt));
1352
+ }
1353
+ }
1354
+ function Ma(e, n, a) {
1355
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1356
+ }
1357
+ ka(La, "ForEntityName", "SECTION");
1358
+ let Mt = { thickness: 0, rotation: 0, xScale: 1, obliqueAngle: 0, extrusionDirection: { x: 0, y: 0, z: 1 } }, Ct = [{ code: 210, name: "extrusionDirection", parser: s }, { code: 51, name: "obliqueAngle", parser: r }, { code: 41, name: "xScale", parser: r }, { code: 50, name: "rotation", parser: r }, { code: 2, name: "shapeName", parser: r }, { code: 40, name: "size", parser: r }, { code: 10, name: "insertionPoint", parser: s }, { code: 39, name: "thickness", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...E];
1359
+ class Ca {
1360
+ parseEntity(n, a) {
1361
+ let t = {};
1362
+ return this.parser(a, n, t), t;
1363
+ }
1364
+ constructor() {
1365
+ Ma(this, "parser", u(Ct, Mt));
1366
+ }
1367
+ }
1368
+ function _a(e, n, a) {
1369
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1370
+ }
1371
+ Ma(Ca, "ForEntityName", "SHAPE");
1372
+ let _t = { points: [], thickness: 0, extrusionDirection: { x: 0, y: 0, z: 1 } }, wt = [{ code: 210, name: "extrusionDirection", parser: s }, { code: 39, name: "thickness", parser: r }, { code: [...cr(10, 14)], name: "points", isMultiple: !0, parser: s }, { code: 100, name: "subclassMarker", parser: r }, ...E];
1373
+ class wa {
1374
+ parseEntity(n, a) {
1375
+ let t = {};
1376
+ return this.parser(a, n, t), t;
1377
+ }
1378
+ constructor() {
1379
+ _a(this, "parser", u(wt, _t));
1380
+ }
1381
+ }
1382
+ function Ra(e, n, a) {
1383
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1384
+ }
1385
+ _a(wa, "ForEntityName", "SOLID");
1386
+ let Rt = [{ code: 350, name: "historyObjectSoftId", parser: r }, { code: 100, name: "subclassMarker", parser: r }, { code: 2, name: "guid", parser: r }, { code: 290, name: "satCache", parser: r }, ...ir("data"), { code: 70, name: "version", parser: r }, { code: 100 }, ...E];
1387
+ class Fa {
1388
+ parseEntity(n, a) {
1389
+ let t = {};
1390
+ return this.parser(a, n, t), t;
1391
+ }
1392
+ constructor() {
1393
+ Ra(this, "parser", u(Rt));
1394
+ }
1395
+ }
1396
+ function Pa(e, n, a) {
1397
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1398
+ }
1399
+ Ra(Fa, "ForEntityName", "3DSOLID");
1400
+ let Ft = { knotTolerance: 1e-6, controlTolerance: 1e-6, fitTolerance: 1e-9, knotValues: [], controlPoints: [], fitPoints: [] }, Pt = [{ code: 11, name: "fitPoints", isMultiple: !0, parser: s }, { code: 10, name: "controlPoints", isMultiple: !0, parser: s }, { code: 41, name: "weights", isMultiple: !0, parser: r }, { code: 40, name: "knots", isMultiple: !0, parser: r }, { code: 13, name: "endTangent", parser: s }, { code: 12, name: "startTangent", parser: s }, { code: 44, name: "fitTolerance", parser: r }, { code: 43, name: "controlTolerance", parser: r }, { code: 42, name: "knotTolerance", parser: r }, { code: 74, name: "numberOfFitPoints", parser: r }, { code: 73, name: "numberOfControlPoints", parser: r }, { code: 72, name: "numberOfKnots", parser: r }, { code: 71, name: "degree", parser: r }, { code: 70, name: "flag", parser: r }, { code: 210, name: "normal", parser: s }, { code: 100, name: "subclassMarker", parser: r }, ...E];
1401
+ class Va {
1402
+ parseEntity(n, a) {
1403
+ let t = {};
1404
+ return this.parser(a, n, t), t;
1405
+ }
1406
+ constructor() {
1407
+ Pa(this, "parser", u(Pt, Ft));
1408
+ }
1409
+ }
1410
+ Pa(Va, "ForEntityName", "SPLINE");
1411
+ (V = {})[V.NONE = 0] = "NONE", V[V.CLOSED = 1] = "CLOSED", V[V.PERIODIC = 2] = "PERIODIC", V[V.RATIONAL = 4] = "RATIONAL", V[V.PLANAR = 8] = "PLANAR", V[V.LINEAR = 16] = "LINEAR";
1412
+ function Ba(e, n, a) {
1413
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1414
+ }
1415
+ let Vt = [{ code: 280, name: "shadowMapSoftness", parser: r }, { code: 71, name: "shadowMapSize", parser: r }, { code: 70, name: "shadowType", parser: r }, { code: 292, name: "isSummerTime", parser: p }, { code: 92, name: "time", parser: r }, { code: 91, name: "julianDay", parser: r }, { code: 291, name: "hasShadow", parser: p }, { code: 40, name: "intensity", parser: r }, { code: 421, name: "lightColorInstance", parser: r }, { code: 63, name: "lightColorIndex", parser: r }, { code: 290, name: "isOn", parser: p }, { code: 90, name: "version", parser: r }, { code: 100, name: "subclassMarker", parser: r, pushContext: !0 }, ...E.filter((e) => e.code !== 100)];
1416
+ class Ua {
1417
+ parseEntity(n, a) {
1418
+ let t = { layer: "" };
1419
+ return this.parser(a, n, t), t;
1420
+ }
1421
+ constructor() {
1422
+ Ba(this, "parser", u(Vt));
1423
+ }
1424
+ }
1425
+ Ba(Ua, "ForEntityName", "SUN");
1426
+ class or {
1427
+ parseEntity(n, a) {
1428
+ let t = {};
1429
+ for (; !n.isEOF(); ) {
1430
+ if (a.code === 0) {
1431
+ n.rewind();
1432
+ break;
1433
+ }
1434
+ switch (a.code) {
1435
+ case 100:
1436
+ t.subclassMarker = a.value, a = n.next();
1437
+ break;
1438
+ case 2:
1439
+ t.name = a.value, a = n.next();
1440
+ break;
1441
+ case 5:
1442
+ t.handle = a.value, a = n.next();
1443
+ break;
1444
+ case 10:
1445
+ t.startPoint = vr(ue(n)), a = n.lastReadGroup;
1446
+ break;
1447
+ case 11:
1448
+ t.directionVector = vr(ue(n)), a = n.lastReadGroup;
1449
+ break;
1450
+ case 90:
1451
+ t.tableValue = a.value, a = n.next();
1452
+ break;
1453
+ case 91:
1454
+ t.rowCount = a.value, a = n.next();
1455
+ break;
1456
+ case 92:
1457
+ t.columnCount = a.value, a = n.next();
1458
+ break;
1459
+ case 93:
1460
+ t.overrideFlag = a.value, a = n.next();
1461
+ break;
1462
+ case 94:
1463
+ t.borderColorOverrideFlag = a.value, a = n.next();
1464
+ break;
1465
+ case 95:
1466
+ t.borderLineWeightOverrideFlag = a.value, a = n.next();
1467
+ break;
1468
+ case 96:
1469
+ t.borderVisibilityOverrideFlag = a.value, a = n.next();
1470
+ break;
1471
+ case 141:
1472
+ t.rowHeightArr ?? (t.rowHeightArr = []), t.rowHeightArr.push(a.value), a = n.next();
1473
+ break;
1474
+ case 142:
1475
+ t.columnWidthArr ?? (t.columnWidthArr = []), t.columnWidthArr.push(a.value), a = n.next();
1476
+ break;
1477
+ case 280:
1478
+ t.version = a.value, a = n.next();
1479
+ break;
1480
+ case 310:
1481
+ t.bmpPreview ?? (t.bmpPreview = ""), t.bmpPreview += a.value, a = n.next();
1482
+ break;
1483
+ case 330:
1484
+ t.ownerBlockRecordSoftId = a.value, a = n.next();
1485
+ break;
1486
+ case 342:
1487
+ t.tableStyleId = a.value, a = n.next();
1488
+ break;
1489
+ case 343:
1490
+ t.blockRecordHandle = a.value, a = n.next();
1491
+ break;
1492
+ case 170:
1493
+ t.attachmentPoint = a.value, a = n.next();
1494
+ break;
1495
+ case 171:
1496
+ t.cells ?? (t.cells = []), t.cells.push(function(c, o) {
1497
+ let i = !1, m = !1, l = {};
1498
+ for (; !c.isEOF() && o.code !== 0 && !m; ) switch (o.code) {
1499
+ case 171:
1500
+ if (i) {
1501
+ m = !0;
1502
+ continue;
1503
+ }
1504
+ l.cellType = o.value, i = !0, o = c.next();
1505
+ break;
1506
+ case 172:
1507
+ l.flagValue = o.value, o = c.next();
1508
+ break;
1509
+ case 173:
1510
+ l.mergedValue = o.value, o = c.next();
1511
+ break;
1512
+ case 174:
1513
+ l.autoFit = o.value, o = c.next();
1514
+ break;
1515
+ case 175:
1516
+ l.borderWidth = o.value, o = c.next();
1517
+ break;
1518
+ case 176:
1519
+ l.borderHeight = o.value, o = c.next();
1520
+ break;
1521
+ case 91:
1522
+ l.overrideFlag = o.value, o = c.next();
1523
+ break;
1524
+ case 178:
1525
+ l.virtualEdgeFlag = o.value, o = c.next();
1526
+ break;
1527
+ case 145:
1528
+ l.rotation = o.value, o = c.next();
1529
+ break;
1530
+ case 345:
1531
+ l.fieldObjetId = o.value, o = c.next();
1532
+ break;
1533
+ case 340:
1534
+ l.blockTableRecordId = o.value, o = c.next();
1535
+ break;
1536
+ case 146:
1537
+ l.blockScale = o.value, o = c.next();
1538
+ break;
1539
+ case 177:
1540
+ l.blockAttrNum = o.value, o = c.next();
1541
+ break;
1542
+ case 7:
1543
+ l.textStyle = o.value, o = c.next();
1544
+ break;
1545
+ case 140:
1546
+ l.textHeight = o.value, o = c.next();
1547
+ break;
1548
+ case 170:
1549
+ l.attachmentPoint = o.value, o = c.next();
1550
+ break;
1551
+ case 92:
1552
+ l.extendedCellFlags = o.value, o = c.next();
1553
+ break;
1554
+ case 285:
1555
+ l.rightBorderVisibility = !!(o.value ?? !0), o = c.next();
1556
+ break;
1557
+ case 286:
1558
+ l.bottomBorderVisibility = !!(o.value ?? !0), o = c.next();
1559
+ break;
1560
+ case 288:
1561
+ l.leftBorderVisibility = !!(o.value ?? !0), o = c.next();
1562
+ break;
1563
+ case 289:
1564
+ l.topBorderVisibility = !!(o.value ?? !0), o = c.next();
1565
+ break;
1566
+ case 301:
1567
+ (function(d, f, h) {
1568
+ for (; h.code !== 304; ) switch (h.code) {
1569
+ case 301:
1570
+ case 93:
1571
+ case 90:
1572
+ case 94:
1573
+ h = f.next();
1574
+ break;
1575
+ case 1:
1576
+ d.text = h.value, h = f.next();
1577
+ break;
1578
+ case 300:
1579
+ d.attrText = h.value, h = f.next();
1580
+ break;
1581
+ case 302:
1582
+ d.text = h.value ? h.value : d.text, h = f.next();
1583
+ break;
1584
+ default:
1585
+ h = f.next();
1586
+ }
1587
+ })(l, c, o), o = c.next();
1588
+ break;
1589
+ default:
1590
+ return l;
1591
+ }
1592
+ return i = !1, m = !1, l;
1593
+ }(n, a)), a = n.lastReadGroup;
1594
+ break;
1595
+ default:
1596
+ _n(t, a, n), a = n.next();
1597
+ }
1598
+ }
1599
+ return t;
1600
+ }
1601
+ }
1602
+ function Ha(e, n, a) {
1603
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1604
+ }
1605
+ (br = "ForEntityName") in or ? Object.defineProperty(or, br, { value: "ACAD_TABLE", enumerable: !0, configurable: !0, writable: !0 }) : or[br] = "ACAD_TABLE";
1606
+ let Bt = [{ code: 11, name: "xAxisDirection", parser: s }, { code: 210, name: "extrusionDirection", parser: s }, { code: 1, name: "text", parser: r }, { code: 10, name: "position", parser: s }, { code: 3, name: "styleName", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...E];
1607
+ class Ga {
1608
+ parseEntity(n, a) {
1609
+ let t = {};
1610
+ return this.parser(a, n, t), t;
1611
+ }
1612
+ constructor() {
1613
+ Ha(this, "parser", u(Bt));
1614
+ }
1615
+ }
1616
+ Ha(Ga, "ForEntityName", "TOLERANCE");
1617
+ (k = {})[k.CREATED_BY_CURVE_FIT = 1] = "CREATED_BY_CURVE_FIT", k[k.TANGENT_DEFINED = 2] = "TANGENT_DEFINED", k[k.NOT_USED = 4] = "NOT_USED", k[k.CREATED_BY_SPLINE_FIT = 8] = "CREATED_BY_SPLINE_FIT", k[k.SPLINE_CONTROL_POINT = 16] = "SPLINE_CONTROL_POINT", k[k.FOR_POLYLINE = 32] = "FOR_POLYLINE", k[k.FOR_POLYGON = 64] = "FOR_POLYGON", k[k.POLYFACE = 128] = "POLYFACE";
1618
+ let Ut = [{ code: [335, 343, 344, 91], name: "softPointers", isMultiple: !0, parser: r }, { code: 361, name: "sunId", parser: r }, { code: 431, name: "ambientLightColorName", parser: r }, { code: 421, name: "ambientLightColorInstance", parser: r }, { code: 63, name: "ambientLightColorIndex", parser: r }, { code: 142, name: "contrast", parser: r }, { code: 141, name: "brightness", parser: r }, { code: 282, name: "defaultLightingType", parser: r }, { code: 292, name: "isDefaultLighting", parser: p }, { code: 348, name: "visualStyleId", parser: r }, { code: 333, name: "shadePlotId", parser: r }, { code: 332, name: "backgroundId", parser: r }, { code: 61, name: "majorGridFrequency", parser: r }, { code: 170, name: "shadePlotMode", parser: r }, { code: 146, name: "elevation", parser: r }, { code: 79, name: "orthographicType", parser: r }, { code: 346, name: "ucsBaseId", parser: r }, { code: 345, name: "ucsId", parser: r }, { code: 112, name: "ucsYAxis", parser: s }, { code: 111, name: "ucsXAxis", parser: s }, { code: 110, name: "ucsOrigin", parser: s }, { code: 74, name: "iconFlag", parser: r }, { code: 71, name: "ucsPerViewport", parser: r }, { code: 281, name: "renderMode", parser: r }, { code: 1, name: "sheetName", parser: r }, { code: 340, name: "clippingBoundaryId", parser: r }, { code: 90, name: "statusBitFlags", parser: r }, { code: 331, name: "frozenLayerIds", isMultiple: !0, parser: r }, { code: 72, name: "circleZoomPercent", parser: r }, { code: 51, name: "viewTwistAngle", parser: r }, { code: 50, name: "snapAngle", parser: r }, { code: 45, name: "viewHeight", parser: r }, { code: 44, name: "backClipZ", parser: r }, { code: 43, name: "frontClipZ", parser: r }, { code: 42, name: "perspectiveLensLength", parser: r }, { code: 17, name: "targetPoint", parser: s }, { code: 16, name: "viewDirection", parser: s }, { code: 15, name: "gridSpacing", parser: s }, { code: 14, name: "snapSpacing", parser: s }, { code: 13, name: "snapBase", parser: s }, { code: 12, name: "displayCenter", parser: s }, { code: 69, name: "viewportId", parser: r }, { code: 68, name: "status", parser: r }, { code: 41, name: "height", parser: r }, { code: 40, name: "width", parser: r }, { code: 10, name: "viewportCenter", parser: s }, { code: 100, name: "subclassMarker", parser: r, pushContext: !0 }, ...E];
1619
+ class sr {
1620
+ parseEntity(n, a) {
1621
+ let t = {};
1622
+ return u(Ut)(a, n, t), t;
1623
+ }
1624
+ }
1625
+ function Wa(e, n, a) {
1626
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1627
+ }
1628
+ (Ir = "ForEntityName") in sr ? Object.defineProperty(sr, Ir, { value: "VIEWPORT", enumerable: !0, configurable: !0, writable: !0 }) : sr[Ir] = "VIEWPORT";
1629
+ let Ht = { brightness: 50, constrast: 50, fade: 0 }, Gt = [{ code: 14, name: "boundary", isMultiple: !0, parser: s }, { code: 91, name: "numberOfVertices", parser: r }, { code: 71, name: "boundaryType", parser: r }, { code: 360, name: "imageDefReactorHardId", parser: r }, { code: 283, name: "fade", parser: r }, { code: 282, name: "contrast", parser: r }, { code: 281, name: "brightness", parser: r }, { code: 280, name: "isClipping", parser: p }, { code: 70, name: "displayFlag", parser: r }, { code: 340, name: "imageDefHardId", parser: r }, { code: 13, name: "imageSize", parser: s }, { code: 12, name: "vDirection", parser: s }, { code: 11, name: "uDirection", parser: s }, { code: 10, name: "position", parser: s }, { code: 90, name: "classVersion", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...E];
1630
+ class ja {
1631
+ parseEntity(n, a) {
1632
+ let t = {};
1633
+ return this.parser(a, n, t), t;
1634
+ }
1635
+ constructor() {
1636
+ Wa(this, "parser", u(Gt, Ht));
1637
+ }
1638
+ }
1639
+ Wa(ja, "ForEntityName", "WIPEOUT");
1640
+ (se = {})[se.ShowImage = 1] = "ShowImage", se[se.ShowImageWhenNotAligned = 2] = "ShowImageWhenNotAligned", se[se.UseClippingBoundary = 4] = "UseClippingBoundary", se[se.Transparency = 8] = "Transparency";
1641
+ function Ya(e, n, a) {
1642
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1643
+ }
1644
+ let Wt = [{ code: 11, name: "direction", parser: s }, { code: 10, name: "position", parser: s }, { code: 100, name: "subclassMarker", parser: r }, ...E];
1645
+ class Xa {
1646
+ parseEntity(n, a) {
1647
+ let t = {};
1648
+ return this.parser(a, n, t), t;
1649
+ }
1650
+ constructor() {
1651
+ Ya(this, "parser", u(Wt));
1652
+ }
1653
+ }
1654
+ Ya(Xa, "ForEntityName", "XLINE");
1655
+ let jt = 0;
1656
+ function za(e) {
1657
+ if (!e) throw TypeError("entity cannot be undefined or null");
1658
+ e.handle || (e.handle = jt++);
1659
+ }
1660
+ let Yt = Object.fromEntries([er, Rr, ar, Gr, Xr, Kr, Jr, rr, qr, ea, oa, ca, la, pa, ma, tr, ba, ha, jr, ga, va, Sa, Na, Da, La, Ca, wa, Fa, Va, Ua, or, Ur, Ga, na, Or, sr, ja, Xa].map((e) => [e.ForEntityName, new e()]));
1661
+ function Ka(e, n) {
1662
+ let a = [];
1663
+ for (; !I(e, 0, "EOF"); ) {
1664
+ if (e.code === 0) {
1665
+ if (e.value === "ENDBLK" || e.value === "ENDSEC") {
1666
+ n.rewind();
1667
+ break;
1668
+ }
1669
+ let t = Yt[e.value];
1670
+ if (t) {
1671
+ let c = e.value;
1672
+ e = n.next();
1673
+ let o = t.parseEntity(n, e);
1674
+ o.type = c, za(o), a.push(o);
1675
+ } else n.debug;
1676
+ }
1677
+ e = n.next();
1678
+ }
1679
+ return a;
1680
+ }
1681
+ function Xt(e, n) {
1682
+ let a = null, t = {};
1683
+ for (; !I(e, 0, "EOF") && !I(e, 0, "ENDSEC"); ) e.code === 9 ? a = typeof e.value == "string" ? e.value : null : a != null && (e.code === 10 ? t[a] = ue(n) : t[a] = e.value), e = n.next();
1684
+ return t;
1685
+ }
1686
+ let de = [{ code: 100, name: "subclassMarker", parser: r }, { code: 330, name: "ownerObjectId", parser: r }, { code: 102, isMultiple: !0, parser(e, n) {
1687
+ for (; !I(e, 0, "EOF") && !I(e, 102, "}"); ) e = n.next();
1688
+ } }, { code: 5, name: "handle", parser: r }], zt = [{ code: 70, name: "flag", parser: r }, { code: 2, name: "appName", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...de], Kt = u(zt), Zt = u([{ code: 310, name: "bmpPreview", parser: r }, { code: 281, name: "scalability", parser: r }, { code: 280, name: "explodability", parser: r }, { code: 70, name: "insertionUnits", parser: r }, { code: 340, name: "layoutObjects", parser: r }, { code: 2, name: "name", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...de]), Jt = u([...Sr.map((e) => ({ ...e, parser: r })), { code: 70, name: "standardFlag", parser: r }, { code: 2, name: "name", parser: r }, { code: 100, name: "subclassMarker", parser: r }, { code: 105, name: "handle", parser: r }, ...de.filter((e) => e.code !== 5)]), $t = u([{ code: 347, name: "materialObjectId", parser: r }, { code: 390, name: "plotStyleNameObjectId", parser: r }, { code: 370, name: "lineweight", parser: r }, { code: 290, name: "isPlotting", parser: p }, { code: 6, name: "lineType", parser: r }, { code: 62, name: "colorIndex", parser: r }, { code: 70, name: "standardFlag", parser: r }, { code: 2, name: "name", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...de]), qt = u([{ code: 9, name: "text", parser: r }, { code: 45, name: "offsetY", parser: r }, { code: 44, name: "offsetX", parser: r }, { code: 50, name: "rotation", parser: r }, { code: 46, name: "scale", parser: r }, { code: 340, name: "styleObjectId", parser: r }, { code: 75, name: "shapeNumber", parser: r }, { code: 74, name: "elementTypeFlag", parser: r }, { code: 49, name: "elementLength", parser: r }], { elementTypeFlag: 0, elementLength: 0 }), Qt = u([{ code: 49, name: "pattern", parser(e, n) {
1689
+ let a = {};
1690
+ return qt(e, n, a), a;
1691
+ }, isMultiple: !0 }, { code: 40, name: "totalPatternLength", parser: r }, { code: 73, name: "numberOfLineTypes", parser: r }, { code: 72, parser: r }, { code: 3, name: "description", parser: r }, { code: 70, name: "standardFlag", parser: r }, { code: 2, name: "name", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...de]), eo = u([{ code: 1e3, name: "extendedFont", parser: r }, { code: 1001 }, { code: 4, name: "bigFont", parser: r }, { code: 3, name: "font", parser: r }, { code: 42, name: "lastHeight", parser: r }, { code: 71, name: "textGenerationFlag", parser: r }, { code: 50, name: "obliqueAngle", parser: r }, { code: 41, name: "widthFactor", parser: r }, { code: 40, name: "fixedTextHeight", parser: r }, { code: 70, name: "standardFlag", parser: r }, { code: 2, name: "name", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...de]), ro = [{ code: 13, name: "orthographicOrigin", parser: s }, { code: 71, name: "orthographicType", parser: r }, { code: 346, name: "baseUcsHandle", parser: r }, { code: 146, name: "elevation", parser: r }, { code: 79, name: "isOrthographic", parser: p }, { code: 12, name: "yAxis", parser: s }, { code: 11, name: "xAxis", parser: s }, { code: 10, name: "origin", parser: s }, { code: 70, name: "flag", parser: r }, { code: 2, name: "name", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...de], ao = u(ro), no = [{ code: 346, name: "baseUcsId", parser: r }, { code: 345, name: "ucsId", parser: r }, { code: 146, name: "elevation", parser: r }, { code: 79, name: "orthographicType", parser: r }, { code: 112, name: "ucsYAxis", parser: s }, { code: 111, name: "ucsXAxis", parser: s }, { code: 110, name: "ucsOrigin", parser: s }, { code: 361, name: "sunHardId", parser: r }, { code: 348, name: "styleHardId", parser: r }, { code: 334, name: "liveSectionSoftId", parser: r }, { code: 332, name: "backgroundSoftId", parser: r }, { code: 73, name: "isPlottable", parser: p }, { code: 72, name: "isUcsAssociated", parser: p }, { code: 281, name: "renderMode", parser: r }, { code: 71, name: "viewMode", parser: r }, { code: 50, name: "twistAngle", parser: r }, { code: 44, name: "backClippingPlane", parser: r }, { code: 43, name: "frontClippingPlane", parser: r }, { code: 42, name: "lensLength", parser: r }, { code: 12, name: "target", parser: s }, { code: 11, name: "direction", parser: s }, { code: 10, name: "center", parser: s }, { code: 41, name: "width", parser: r }, { code: 40, name: "height", parser: r }, { code: 70, name: "flag", parser: r }, { code: 2, name: "name", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...de], to = u(no), oo = u([{ code: [63, 421, 431], name: "ambientColor", parser: r }, { code: 142, name: "contrast", parser: r }, { code: 141, name: "brightness", parser: r }, { code: 282, name: "defaultLightingType", parser: r }, { code: 292, name: "isDefaultLightingOn", parser: p }, { code: 348, name: "visualStyleObjectId", parser: r }, { code: 333, name: "shadePlotObjectId", parser: r }, { code: 332, name: "backgroundObjectId", parser: r }, { code: 61, name: "majorGridLines", parser: r }, { code: 170, name: "shadePlotSetting", parser: r }, { code: 146, name: "elevation", parser: r }, { code: 79, name: "orthographicType", parser: r }, { code: 112, name: "ucsYAxis", parser: s }, { code: 111, name: "ucsXAxis", parser: s }, { code: 110, name: "ucsOrigin", parser: s }, { code: 74, name: "ucsIconSetting", parser: r }, { code: 71, name: "viewMode", parser: r }, { code: 281, name: "renderMode", parser: r }, { code: 1, name: "styleSheet", parser: r }, { code: [331, 441], name: "frozenLayers", parser: r, isMultiple: !0 }, { code: 72, name: "circleSides", parser: r }, { code: 51, name: "viewTwistAngle", parser: r }, { code: 50, name: "snapRotationAngle", parser: r }, { code: 45, name: "viewHeight", parser: r }, { code: 44, name: "backClippingPlane", parser: r }, { code: 43, name: "frontClippingPlane", parser: r }, { code: 42, name: "lensLength", parser: r }, { code: 41, name: "aspectRatio", parser: r }, { code: 40, name: "viewHeight", parser: r }, { code: 17, name: "viewTarget", parser: s }, { code: 16, name: "viewDirectionFromTarget", parser: s }, { code: 15, name: "gridSpacing", parser: s }, { code: 14, name: "snapSpacing", parser: s }, { code: 13, name: "snapBasePoint", parser: s }, { code: 12, name: "center", parser: s }, { code: 11, name: "upperRightCorner", parser: s }, { code: 10, name: "lowerLeftCorner", parser: s }, { code: 70, name: "standardFlag", parser: r }, { code: 2, name: "name", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...de]), so = { APPID: Kt, BLOCK_RECORD: Zt, DIMSTYLE: Jt, LAYER: $t, LTYPE: Qt, STYLE: eo, UCS: ao, VIEW: to, VPORT: oo }, co = u([{ code: 70, name: "maxNumberOfEntries", parser: r }, { code: 100, name: "subclassMarker", parser: r }, { code: 330, name: "ownerObjectId", parser: r }, { code: 102, parser: z }, { code: 102, parser: z }, { code: 102, parser: z }, { code: 360, isMultiple: !0 }, { code: 5, name: "handle", parser: r }, { code: 2, name: "name", parser: r }]);
1692
+ function io(e, n) {
1693
+ var t;
1694
+ let a = {};
1695
+ for (; !I(e, 0, "EOF") && !I(e, 0, "ENDSEC"); ) {
1696
+ if (I(e, 0, "TABLE")) {
1697
+ e = n.next();
1698
+ let c = { entries: [] };
1699
+ co(e, n, c), a[c.name] = c;
1700
+ }
1701
+ if (I(e, 0) && !I(e, 0, "ENDTAB")) {
1702
+ let c = e.value;
1703
+ e = n.next();
1704
+ let o = so[c];
1705
+ if (!o) {
1706
+ n.debug, e = n.next();
1707
+ continue;
1708
+ }
1709
+ let i = {};
1710
+ o(e, n, i), c === "VPORT" && (i.lowerLeftCorner == null && (i.lowerLeftCorner = { x: 0, y: 0 }), i.upperRightCorner == null && (i.upperRightCorner = { x: 1, y: 1 }), i.center == null && (i.center = { x: 0, y: 0 }), i.snapBasePoint == null && (i.snapBasePoint = { x: 0, y: 0 }), i.snapSpacing == null && (i.snapSpacing = { x: 0, y: 0 }), i.gridSpacing == null && (i.gridSpacing = { x: 0, y: 0 }), i.viewDirectionFromTarget == null && (i.viewDirectionFromTarget = { x: 0, y: 0, z: 1 }), i.viewTarget == null && (i.viewTarget = { x: 0, y: 0, z: 0 })), (t = a[c]) == null || t.entries.push(i);
1711
+ }
1712
+ e = n.next();
1713
+ }
1714
+ return a;
1715
+ }
1716
+ function lo(e, n) {
1717
+ let a = {};
1718
+ for (; !I(e, 0, "EOF") && !I(e, 0, "ENDSEC"); ) {
1719
+ if (I(e, 0, "BLOCK")) {
1720
+ let t = po(e = n.next(), n);
1721
+ za(t), t.name && (a[t.name] = t);
1722
+ }
1723
+ e = n.next();
1724
+ }
1725
+ return a;
1726
+ }
1727
+ function po(e, n) {
1728
+ let a = {};
1729
+ for (; !I(e, 0, "EOF"); ) {
1730
+ if (I(e, 0, "ENDBLK")) {
1731
+ for (e = n.next(); !I(e, 0, "EOF"); ) {
1732
+ if (I(e, 100, "AcDbBlockEnd")) return a;
1733
+ e = n.next();
1734
+ }
1735
+ break;
1736
+ }
1737
+ switch (e.code) {
1738
+ case 1:
1739
+ a.xrefPath = e.value;
1740
+ break;
1741
+ case 2:
1742
+ a.name = e.value;
1743
+ break;
1744
+ case 3:
1745
+ a.name2 = e.value;
1746
+ break;
1747
+ case 5:
1748
+ a.handle = e.value;
1749
+ break;
1750
+ case 8:
1751
+ a.layer = e.value;
1752
+ break;
1753
+ case 10:
1754
+ a.position = ue(n);
1755
+ break;
1756
+ case 67:
1757
+ a.paperSpace = !!e.value && e.value == 1;
1758
+ break;
1759
+ case 70:
1760
+ e.value !== 0 && (a.type = e.value);
1761
+ break;
1762
+ case 100:
1763
+ break;
1764
+ case 330:
1765
+ a.ownerHandle = e.value;
1766
+ break;
1767
+ case 0:
1768
+ a.entities = Ka(e, n);
1769
+ }
1770
+ e = n.next();
1771
+ }
1772
+ return a;
1773
+ }
1774
+ let pe = [{ code: 330, name: "ownerObjectId", parser: r }, { code: 102, parser: z }, { code: 102, parser: z }, { code: 102, parser: z }, { code: 5, name: "handle", parser: r }], Za = [{ code: 333, name: "shadePlotId", parser: r }, { code: 149, name: "imageOriginY", parser: r }, { code: 148, name: "imageOriginX", parser: r }, { code: 147, name: "scaleFactor", parser: r }, { code: 78, name: "shadePlotCustomDPI", parser: r }, { code: 77, name: "shadePlotResolution", parser: r }, { code: 76, name: "shadePlotMode", parser: r }, { code: 75, name: "standardScaleType", parser: r }, { code: 7, name: "currentStyleSheet", parser: r }, { code: 74, name: "plotType", parser: r }, { code: 73, name: "plotRotation", parser: r }, { code: 72, name: "plotPaperUnit", parser: r }, { code: 70, name: "layoutFlag", parser: r }, { code: 143, name: "printScaleDenominator", parser: r }, { code: 142, name: "printScaleNumerator", parser: r }, { code: 141, name: "windowAreaYMax", parser: r }, { code: 140, name: "windowAreaXMax", parser: r }, { code: 49, name: "windowAreaYMin", parser: r }, { code: 48, name: "windowAreaXMin", parser: r }, { code: 47, name: "plotOriginY", parser: r }, { code: 46, name: "plotOriginX", parser: r }, { code: 45, name: "paperHeight", parser: r }, { code: 44, name: "paperWidth", parser: r }, { code: 43, name: "marginTop", parser: r }, { code: 42, name: "marginRight", parser: r }, { code: 41, name: "marginBottom", parser: r }, { code: 40, name: "marginLeft", parser: r }, { code: 6, name: "plotViewName", parser: r }, { code: 4, name: "paperSize", parser: r }, { code: 2, name: "configName", parser: r }, { code: 1, name: "pageSetupName", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...pe], uo = [{ code: 346, name: "orthographicUcsId", parser: r }, { code: 345, name: "namedUcsId", parser: r }, { code: 331, name: "viewportId", parser: r }, { code: 330, name: "paperSpaceTableId", parser: r }, { code: 76, name: "orthographicType", parser: r }, { code: 17, name: "ucsYAxis", parser: s }, { code: 16, name: "ucsXAxis", parser: s }, { code: 13, name: "ucsOrigin", parser: s }, { code: 146, name: "elevation", parser: r }, { code: 15, name: "maxExtent", parser: s }, { code: 14, name: "minExtent", parser: s }, { code: 12, name: "insertionPoint", parser: s }, { code: 11, name: "maxLimit", parser: s }, { code: 10, name: "minLimit", parser: s }, { code: 71, name: "tabOrder", parser: r }, { code: 70, name: "controlFlag", parser: r }, { code: 1, name: "layoutName", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...Za], mo = [{ code: 3, name: "entries", parser: (e, n) => {
1775
+ let a = { name: e.value };
1776
+ return (e = n.next()).code === 350 ? a.objectSoftId = e.value : e.code === 360 ? a.objectHardId = e.value : n.rewind(), a;
1777
+ }, isMultiple: !0 }, { code: 281, name: "recordCloneFlag", parser: r }, { code: 280, name: "isHardOwned", parser: p }, { code: 100, name: "subclassMarker", parser: r }, ...pe], fo = [{ code: 40, name: "wcsToOCSTransform", parser: Cr }, { code: 40, name: "ocsToWCSTransform", parser: Cr }, { code: 41, name: "backClippingDistance", parser: r }, { code: 73, name: "isBackClipping", parser: p, pushContext: !0 }, { code: 40, name: "frontClippingDistance", parser: r }, { code: 72, name: "isFrontClipping", parser: p, pushContext: !0 }, { code: 71, name: "isClipBoundaryDisplayed", parser: p }, { code: 11, name: "position", parser: s }, { code: 210, name: "normal", parser: s }, { code: 10, name: "boundaryVertices", parser: s, isMultiple: !0 }, { code: 70, name: "boundaryCount", parser: r }, { code: 100, name: "subclassMarker", parser: r }, { code: 100 }, ...pe];
1778
+ function Cr(e, n) {
1779
+ let a = [];
1780
+ for (let t = 0; t < 3 && I(e, 40); ++t) {
1781
+ let c = [];
1782
+ for (let o = 0; o < 4 && I(e, 40); ++o) c.push(e.value), e = n.next();
1783
+ a.push(c);
1784
+ }
1785
+ return n.rewind(), a;
1786
+ }
1787
+ let bo = [{ code: 330, name: "imageDefReactorIdSoft", isMultiple: !0, parser: r }, { code: 90, name: "version", parser: r }, { code: 1, name: "fileName", parser: r }, { code: 10, name: "size", parser: s }, { code: 11, name: "sizeOfOnePixel", parser: s }, { code: 280, name: "isLoaded", parser: r }, { code: 281, name: "resolutionUnits", parser: r }, { code: 100, name: "subclassMarker", parser: r }], Io = [{ code: 179, name: "unknown1", parser: r }, { code: 170, name: "contentType", parser: r }, { code: 171, name: "drawMLeaderOrderType", parser: r }, { code: 172, name: "drawLeaderOrderType", parser: r }, { code: 90, name: "maxLeaderSegmentPoints", parser: r }, { code: 40, name: "firstSegmentAngleConstraint", parser: r }, { code: 41, name: "secondSegmentAngleConstraint", parser: r }, { code: 173, name: "leaderLineType", parser: r }, { code: 91, name: "leaderLineColor", parser: r }, { code: 340, name: "leaderLineTypeId", parser: r }, { code: 92, name: "leaderLineWeight", parser: r }, { code: 290, name: "landingEnabled", parser: p }, { code: 42, name: "landingGap", parser: r }, { code: 291, name: "doglegEnabled", parser: p }, { code: 43, name: "doglegLength", parser: r }, { code: 3, name: "description", parser: r }, { code: 341, name: "arrowheadId", parser: r }, { code: 44, name: "arrowheadSize", parser: r }, { code: 300, name: "defaultMTextContents", parser: r }, { code: 342, name: "textStyleId", parser: r }, { code: 174, name: "textLeftAttachmentType", parser: r }, { code: 175, name: "textAngleType", parser: r }, { code: 176, name: "textAlignmentType", parser: r }, { code: 178, name: "textRightAttachmentType", parser: r }, { code: 93, name: "textColor", parser: r }, { code: 45, name: "textHeight", parser: r }, { code: 292, name: "textFrameEnabled", parser: p }, { code: 297, name: "textAlignAlwaysLeft", parser: p }, { code: 46, name: "alignSpace", parser: r }, { code: 343, name: "blockContentId", parser: r }, { code: 94, name: "blockContentColor", parser: r }, { code: 47, name: "blockContentScale.x", parser: r }, { code: 49, name: "blockContentScale.y", parser: r }, { code: 140, name: "blockContentScale.z", parser: r }, { code: 293, name: "blockContentScaleEnabled", parser: p }, { code: 141, name: "blockContentRotation", parser: r }, { code: 294, name: "blockContentRotationEnabled", parser: p }, { code: 177, name: "blockContentConnectionType", parser: r }, { code: 142, name: "scale", parser: r }, { code: 295, name: "overwritePropertyValue", parser: p }, { code: 296, name: "annotative", parser: p }, { code: 143, name: "breakGapSize", parser: r }, { code: 271, name: "textAttachmentDirection", parser: r }, { code: 272, name: "bottomTextAttachmentDirection", parser: r }, { code: 273, name: "topTextAttachmentDirection", parser: r }, { code: 298, name: "unknown2", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...pe];
1788
+ function Qe(e, n, a) {
1789
+ e.elements || (e.elements = []);
1790
+ let t = e.elements.find((c) => c[n] === void 0);
1791
+ if (t) {
1792
+ t[n] = a;
1793
+ return;
1794
+ }
1795
+ e.elements.push({ [n]: a });
1796
+ }
1797
+ let ho = [{ code: 6, parser: function({ value: e }, n, a) {
1798
+ Qe(a, "lineType", e);
1799
+ }, isMultiple: !0 }, { code: 62, parser: function({ value: e }, n, a) {
1800
+ var t;
1801
+ if (a.fillColorIndex === void 0 && !((t = a.elements) != null && t.length)) {
1802
+ a.fillColorIndex = e;
1803
+ return;
1804
+ }
1805
+ Qe(a, "colorIndex", e);
1806
+ }, isMultiple: !0 }, { code: 420, parser: function({ value: e }, n, a) {
1807
+ var t;
1808
+ if (a.fillColor === void 0 && !((t = a.elements) != null && t.length)) {
1809
+ a.fillColor = e;
1810
+ return;
1811
+ }
1812
+ Qe(a, "color", e);
1813
+ }, isMultiple: !0 }, { code: 49, parser: function({ value: e }, n, a) {
1814
+ Qe(a, "offset", e);
1815
+ }, isMultiple: !0 }, { code: 71, name: "elementCount", parser: r }, { code: 52, name: "endAngle", parser: r }, { code: 51, name: "startAngle", parser: r }, { code: 3, name: "description", parser: r }, { code: 70, name: "flags", parser: r }, { code: 2, name: "styleName", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...pe], Eo = [{ code: 340, name: "entityIds", parser: r, isMultiple: !0 }, { code: 71, name: "isSelectable", parser: p }, { code: 70, name: "isUnnamed", parser: p }, { code: 300, name: "description", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...pe], go = [{ code: 8, name: "layerNames", parser: r, isMultiple: !0 }, { code: 100, name: "subclassMarker", parser: r }, { code: 100, name: "filterSubclassMarker", parser: r }, ...pe], xo = [{ code: 90, name: "idBufferEntryCounts", parser: r, isMultiple: !0 }, { code: 360, name: "idBufferIds", parser: r, isMultiple: !0 }, { code: 8, name: "layerNames", parser: r, isMultiple: !0 }, { code: 100, name: "subclassMarker", parser: r }, { code: 40, name: "timeStamp", parser: r }, { code: 100, name: "indexSubclassMarker", parser: r }, ...pe], vo = [{ code: 75, name: "hasLastPointRef", parser: p }, { code: 1, name: "pointRefs", parser: function(e, n) {
1816
+ let a = { className: e.value };
1817
+ for (; ; ) switch ((e = n.next()).code) {
1818
+ case 72:
1819
+ a.objectOsnapType = e.value;
1820
+ continue;
1821
+ case 331:
1822
+ a.mainObjectId = e.value;
1823
+ continue;
1824
+ case 73:
1825
+ a.mainObjectSubentityType = e.value;
1826
+ continue;
1827
+ case 91:
1828
+ a.mainObjectGsMarker = e.value;
1829
+ continue;
1830
+ case 301:
1831
+ a.mainObjectXrefHandle = e.value;
1832
+ continue;
1833
+ case 40:
1834
+ a.nearOsnapGeometryParameter = e.value;
1835
+ continue;
1836
+ case 10:
1837
+ {
1838
+ let t = s(e, n);
1839
+ a.osnapPoint = "z" in t ? t : { ...t, z: 0 };
1840
+ }
1841
+ continue;
1842
+ case 332:
1843
+ a.intersectionObjectId = e.value;
1844
+ continue;
1845
+ case 74:
1846
+ a.intersectionObjectSubentityType = e.value;
1847
+ continue;
1848
+ case 92:
1849
+ a.intersectionObjectGsMarker = e.value;
1850
+ continue;
1851
+ case 302:
1852
+ a.intersectionObjectXrefHandle = e.value;
1853
+ continue;
1854
+ default:
1855
+ return n.rewind(), a;
1856
+ }
1857
+ }, isMultiple: !0 }, { code: 71, name: "rotatedDimensionType", parser: r }, { code: 70, name: "transSpaceFlag", parser: p }, { code: 90, name: "associativityFlag", parser: r }, { code: 330, name: "dimensionObjectId", parser: r }, { code: 100, name: "subclassMarker", parser: r }, ...pe], yo = { LAYOUT: uo, PLOTSETTINGS: Za, DICTIONARY: mo, SPATIAL_FILTER: fo, IMAGEDEF: bo, MLEADERSTYLE: Io, MLINESTYLE: ho, GROUP: Eo, LAYER_FILTER: go, LAYER_INDEX: xo, DIMASSOC: vo };
1858
+ function To(e, n) {
1859
+ let a = [];
1860
+ for (; e.code !== 0 || !["EOF", "ENDSEC"].includes(e.value); ) {
1861
+ let t = e.value, c = yo[t];
1862
+ if (e.code === 0 && (c != null && c.length)) {
1863
+ let o = u(c), i = { name: t };
1864
+ o(e = n.next(), n, i) ? (a.push(i), e = n.peek()) : e = n.next();
1865
+ } else e = n.next();
1866
+ }
1867
+ return { byName: kn(a, ({ name: t }) => t) };
1868
+ }
1869
+ function _r(e) {
1870
+ if ((e.charCodeAt(0) === 65279 ? e.slice(1) : e).startsWith("AutoCAD Binary DXF")) throw Error("Binary DXF is not supported. Re-save the drawing as ASCII (text) DXF from your CAD application.");
1871
+ }
1872
+ function Ze(e, n, a) {
1873
+ return n in e ? Object.defineProperty(e, n, { value: a, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = a, e;
1874
+ }
1875
+ class So {
1876
+ constructor() {
1877
+ Ze(this, "encoding", "utf-8"), Ze(this, "encodingFailureFatal", !1), Ze(this, "thumbnailImageFormat", "base64");
1878
+ }
1879
+ }
1880
+ class Oo extends EventTarget {
1881
+ parseSync(n, a = !1) {
1882
+ _r(n);
1883
+ let t = new kr(n.split(/\r\n|\r|\n/g), a);
1884
+ if (!t.hasNext()) throw Error("Empty file");
1885
+ return this.parseAll(t);
1886
+ }
1887
+ parseStream(n) {
1888
+ let a = "", t = this;
1889
+ return new Promise((c, o) => {
1890
+ n.on("data", (i) => {
1891
+ a += i;
1892
+ }), n.on("end", () => {
1893
+ try {
1894
+ _r(a);
1895
+ let i = a.split(/\r\n|\r|\n/g), m = new kr(i);
1896
+ if (!m.hasNext()) throw Error("Empty file");
1897
+ c(t.parseAll(m));
1898
+ } catch (i) {
1899
+ o(i);
1900
+ }
1901
+ }), n.on("error", (i) => {
1902
+ o(i);
1903
+ });
1904
+ });
1905
+ }
1906
+ async parseFromUrl(n, a) {
1907
+ let t = await fetch(n, a);
1908
+ if (!t.body) return null;
1909
+ let c = t.body.getReader(), o = "";
1910
+ for (; ; ) {
1911
+ let { done: i, value: m } = await c.read();
1912
+ if (i) {
1913
+ o += this._decoder.decode(new ArrayBuffer(0), { stream: !1 });
1914
+ break;
1915
+ }
1916
+ o += this._decoder.decode(m, { stream: !0 });
1917
+ }
1918
+ return this.parseSync(o);
1919
+ }
1920
+ parseAll(n) {
1921
+ let a = { header: {}, blocks: {}, entities: [], tables: {}, objects: { byName: {}, byTree: void 0 } }, t = n.next();
1922
+ for (; !I(t, 0, "EOF"); ) I(t, 0, "SECTION") && (I(t = n.next(), 2, "HEADER") ? a.header = Xt(t = n.next(), n) : I(t, 2, "CLASSES") ? fn(t = n.next(), n, a) : I(t, 2, "BLOCKS") ? a.blocks = lo(t = n.next(), n) : I(t, 2, "ENTITIES") ? a.entities = Ka(t = n.next(), n) : I(t, 2, "TABLES") ? a.tables = io(t = n.next(), n) : I(t, 2, "OBJECTS") ? a.objects = To(t = n.next(), n) : I(t, 2, "THUMBNAILIMAGE") && (a.thumbnailImage = function(c, o, i = "base64") {
1923
+ let m, l = "", d = 0;
1924
+ for (; !I(c, 0, "EOF") && !I(c, 0, "ENDSEC"); ) c.code === 90 ? d = c.value : c.code === 310 && (l += c.value), c = o.next();
1925
+ if (i === "hex") m = l;
1926
+ else {
1927
+ let f = function(h) {
1928
+ let y = h.length / 2, x = new Uint8Array(y);
1929
+ for (let S = 0; S < y; S++) x[S] = parseInt(h.substr(2 * S, 2), 16);
1930
+ return x;
1931
+ }(l);
1932
+ m = i === "buffer" ? f : function(h) {
1933
+ let y = "";
1934
+ for (let x = 0; x < h.length; x++) y += String.fromCharCode(h[x]);
1935
+ return btoa(y);
1936
+ }(f);
1937
+ }
1938
+ return { size: d, data: m };
1939
+ }(t = n.next(), n, this._options.thumbnailImageFormat))), t = n.next();
1940
+ return a;
1941
+ }
1942
+ constructor(n = {}) {
1943
+ super(), Ze(this, "_decoder", void 0), Ze(this, "_options", void 0);
1944
+ let a = new So();
1945
+ this._options = Object.assign(a, n), this._decoder = new TextDecoder(this._options.encoding, { fatal: this._options.encodingFailureFatal });
1946
+ }
1947
+ }
1948
+ (B = {})[B.NOT_APPLICABLE = 0] = "NOT_APPLICABLE", B[B.KEEP_EXISTING = 1] = "KEEP_EXISTING", B[B.USE_CLONE = 2] = "USE_CLONE", B[B.XREF_VALUE_NAME = 3] = "XREF_VALUE_NAME", B[B.VALUE_NAME = 4] = "VALUE_NAME", B[B.UNMANGLE_NAME = 5] = "UNMANGLE_NAME";
1949
+ (Ae = {})[Ae.NOUNIT = 0] = "NOUNIT", Ae[Ae.CENTIMETERS = 2] = "CENTIMETERS", Ae[Ae.INCH = 5] = "INCH";
1950
+ (ze = {})[ze.PSLTSCALE = 1] = "PSLTSCALE", ze[ze.LIMCHECK = 2] = "LIMCHECK";
1951
+ (De = {})[De.INCHES = 0] = "INCHES", De[De.MILLIMETERS = 1] = "MILLIMETERS", De[De.PIXELS = 2] = "PIXELS";
1952
+ (U = {})[U.LAST_SCREEN_DISPLAY = 0] = "LAST_SCREEN_DISPLAY", U[U.DRAWING_EXTENTS = 1] = "DRAWING_EXTENTS", U[U.DRAWING_LIMITS = 2] = "DRAWING_LIMITS", U[U.VIEW_SPECIFIED = 3] = "VIEW_SPECIFIED", U[U.WINDOW_SPECIFIED = 4] = "WINDOW_SPECIFIED", U[U.LAYOUT_INFORMATION = 5] = "LAYOUT_INFORMATION";
1953
+ (ce = {})[ce.AS_DISPLAYED = 0] = "AS_DISPLAYED", ce[ce.WIREFRAME = 1] = "WIREFRAME", ce[ce.HIDDEN = 2] = "HIDDEN", ce[ce.RENDERED = 3] = "RENDERED";
1954
+ (H = {})[H.DRAFT = 0] = "DRAFT", H[H.PREVIEW = 1] = "PREVIEW", H[H.NORMAL = 2] = "NORMAL", H[H.PRESENTATION = 3] = "PRESENTATION", H[H.MAXIMUM = 4] = "MAXIMUM", H[H.CUSTOM = 5] = "CUSTOM";
1955
+ (ie = {})[ie.NONE = 0] = "NONE", ie[ie.AbsoluteRotation = 1] = "AbsoluteRotation", ie[ie.TextEmbedded = 2] = "TextEmbedded", ie[ie.ShapeEmbedded = 4] = "ShapeEmbedded";
1956
+ (hr = {})[hr.PaperSpace = 1] = "PaperSpace";
1957
+ (ke = {})[ke.XrefDependent = 16] = "XrefDependent", ke[ke.XrefResolved = 32] = "XrefResolved", ke[ke.Referenced = 64] = "Referenced";
1958
+ (G = {})[G.Off = 0] = "Off", G[G.Perspective = 1] = "Perspective", G[G.ClipFront = 2] = "ClipFront", G[G.ClipBack = 4] = "ClipBack", G[G.UcsFollow = 8] = "UcsFollow", G[G.ClipFrontByFrontZ = 16] = "ClipFrontByFrontZ";
1959
+ class No {
1960
+ parse(n) {
1961
+ const a = new Oo(), t = this.getDxfInfoFromBuffer(n);
1962
+ let c = "";
1963
+ return t.version && t.version.value <= 23 && t.encoding ? c = new TextDecoder(t.encoding).decode(n) : c = new TextDecoder().decode(n), a.parseSync(c);
1964
+ }
1965
+ getDxfInfoFromBuffer(n) {
1966
+ var d, f, h;
1967
+ const t = new TextDecoder("utf-8");
1968
+ let c = 0, o = "", i = null, m = null, l = !1;
1969
+ for (; c < n.byteLength; ) {
1970
+ const y = Math.min(c + 65536, n.byteLength), x = n.slice(c, y);
1971
+ c = y;
1972
+ const O = (o + t.decode(x, { stream: !0 })).split(/\r?\n/);
1973
+ o = O.pop() ?? "";
1974
+ for (let w = 0; w < O.length; w++) {
1975
+ const W = O[w].trim();
1976
+ if (W === "SECTION" && ((d = O[w + 2]) == null ? void 0 : d.trim()) === "HEADER")
1977
+ l = !0;
1978
+ else if (W === "ENDSEC" && l)
1979
+ return { version: i, encoding: m };
1980
+ if (l && W === "$ACADVER") {
1981
+ const me = (f = O[w + 2]) == null ? void 0 : f.trim();
1982
+ me && (i = new $a(me));
1983
+ } else if (l && W === "$DWGCODEPAGE") {
1984
+ const me = (h = O[w + 2]) == null ? void 0 : h.trim();
1985
+ if (me) {
1986
+ const lr = xr[me];
1987
+ m = an(lr);
1988
+ }
1989
+ }
1990
+ if (i && m)
1991
+ return { version: i, encoding: m };
1992
+ }
1993
+ }
1994
+ return { version: i, encoding: m };
1995
+ }
1996
+ }
1997
+ class Ao extends en {
1998
+ async executeTask(n) {
1999
+ return new No().parse(n);
2000
+ }
2001
+ }
2002
+ new Ao();