dxf-json 0.7.4 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (438) hide show
  1. package/dist/bundle.cjs +2 -2
  2. package/dist/bundle.mjs +2 -2
  3. package/dist/{consts → types/consts}/block.d.ts +1 -0
  4. package/dist/types/consts/block.d.ts.map +1 -0
  5. package/dist/{consts → types/consts}/color.d.ts +1 -0
  6. package/dist/types/consts/color.d.ts.map +1 -0
  7. package/dist/{consts → types/consts}/config.d.ts +1 -0
  8. package/dist/types/consts/config.d.ts.map +1 -0
  9. package/dist/{consts → types/consts}/dimension.d.ts +1 -0
  10. package/dist/types/consts/dimension.d.ts.map +1 -0
  11. package/dist/{consts → types/consts}/hatch.d.ts +1 -0
  12. package/dist/types/consts/hatch.d.ts.map +1 -0
  13. package/dist/{consts → types/consts}/header.d.ts +1 -0
  14. package/dist/types/consts/header.d.ts.map +1 -0
  15. package/dist/{consts → types/consts}/index.d.ts +1 -0
  16. package/dist/types/consts/index.d.ts.map +1 -0
  17. package/dist/{consts → types/consts}/lineweight.d.ts +1 -0
  18. package/dist/types/consts/lineweight.d.ts.map +1 -0
  19. package/dist/{consts → types/consts}/measurement.d.ts +1 -0
  20. package/dist/types/consts/measurement.d.ts.map +1 -0
  21. package/dist/{consts → types/consts}/obscuredLineTypes.d.ts +1 -0
  22. package/dist/types/consts/obscuredLineTypes.d.ts.map +1 -0
  23. package/dist/{consts → types/consts}/scene.d.ts +1 -0
  24. package/dist/types/consts/scene.d.ts.map +1 -0
  25. package/dist/{consts → types/consts}/viewport.d.ts +1 -0
  26. package/dist/types/consts/viewport.d.ts.map +1 -0
  27. package/dist/types/index.d.ts +8 -23
  28. package/dist/types/index.d.ts.map +1 -0
  29. package/dist/{parser → types/parser}/AutoCadColorIndex.d.ts +1 -0
  30. package/dist/types/parser/AutoCadColorIndex.d.ts.map +1 -0
  31. package/dist/{parser → types/parser}/DxfArrayScanner.d.ts +6 -5
  32. package/dist/types/parser/DxfArrayScanner.d.ts.map +1 -0
  33. package/dist/{parser → types/parser}/DxfParser.d.ts +2 -1
  34. package/dist/types/parser/DxfParser.d.ts.map +1 -0
  35. package/dist/{parser → types/parser}/ParseHelpers.d.ts +2 -2
  36. package/dist/types/parser/ParseHelpers.d.ts.map +1 -0
  37. package/dist/{parser → types/parser}/blocks/index.d.ts +2 -2
  38. package/dist/types/parser/blocks/index.d.ts.map +1 -0
  39. package/dist/{parser → types/parser}/blocks/types.d.ts +1 -0
  40. package/dist/types/parser/blocks/types.d.ts.map +1 -0
  41. package/dist/{parser/entities/attribute → types/parser/entities/arc}/index.d.ts +1 -0
  42. package/dist/types/parser/entities/arc/index.d.ts.map +1 -0
  43. package/dist/{parser → types/parser}/entities/arc/parser.d.ts +2 -2
  44. package/dist/types/parser/entities/arc/parser.d.ts.map +1 -0
  45. package/dist/{parser → types/parser}/entities/arc/types.d.ts +1 -0
  46. package/dist/types/parser/entities/arc/types.d.ts.map +1 -0
  47. package/dist/{parser → types/parser}/entities/attdef/consts.d.ts +1 -0
  48. package/dist/types/parser/entities/attdef/consts.d.ts.map +1 -0
  49. package/dist/{parser → types/parser}/entities/attdef/index.d.ts +1 -0
  50. package/dist/types/parser/entities/attdef/index.d.ts.map +1 -0
  51. package/dist/{parser → types/parser}/entities/attdef/parser.d.ts +2 -2
  52. package/dist/types/parser/entities/attdef/parser.d.ts.map +1 -0
  53. package/dist/{parser → types/parser}/entities/attdef/types.d.ts +1 -0
  54. package/dist/types/parser/entities/attdef/types.d.ts.map +1 -0
  55. package/dist/{parser/entities/circle → types/parser/entities/attribute}/index.d.ts +1 -0
  56. package/dist/types/parser/entities/attribute/index.d.ts.map +1 -0
  57. package/dist/{parser → types/parser}/entities/attribute/parser.d.ts +2 -2
  58. package/dist/types/parser/entities/attribute/parser.d.ts.map +1 -0
  59. package/dist/{parser → types/parser}/entities/attribute/types.d.ts +1 -0
  60. package/dist/types/parser/entities/attribute/types.d.ts.map +1 -0
  61. package/dist/{parser/entities/arc → types/parser/entities/body}/index.d.ts +1 -0
  62. package/dist/types/parser/entities/body/index.d.ts.map +1 -0
  63. package/dist/types/parser/entities/body/parser.d.ts +8 -0
  64. package/dist/types/parser/entities/body/parser.d.ts.map +1 -0
  65. package/dist/types/parser/entities/body/types.d.ts +10 -0
  66. package/dist/types/parser/entities/body/types.d.ts.map +1 -0
  67. package/dist/types/parser/entities/circle/index.d.ts +3 -0
  68. package/dist/types/parser/entities/circle/index.d.ts.map +1 -0
  69. package/dist/{parser → types/parser}/entities/circle/parser.d.ts +2 -2
  70. package/dist/types/parser/entities/circle/parser.d.ts.map +1 -0
  71. package/dist/{parser → types/parser}/entities/circle/types.d.ts +1 -0
  72. package/dist/types/parser/entities/circle/types.d.ts.map +1 -0
  73. package/dist/{parser → types/parser}/entities/dimension/common.d.ts +2 -2
  74. package/dist/types/parser/entities/dimension/common.d.ts.map +1 -0
  75. package/dist/types/parser/entities/dimension/index.d.ts +3 -0
  76. package/dist/types/parser/entities/dimension/index.d.ts.map +1 -0
  77. package/dist/{parser → types/parser}/entities/dimension/parser.d.ts +2 -2
  78. package/dist/types/parser/entities/dimension/parser.d.ts.map +1 -0
  79. package/dist/{parser → types/parser}/entities/dimension/types.d.ts +1 -0
  80. package/dist/types/parser/entities/dimension/types.d.ts.map +1 -0
  81. package/dist/types/parser/entities/ellipse/index.d.ts +3 -0
  82. package/dist/types/parser/entities/ellipse/index.d.ts.map +1 -0
  83. package/dist/{parser → types/parser}/entities/ellipse/parser.d.ts +2 -2
  84. package/dist/types/parser/entities/ellipse/parser.d.ts.map +1 -0
  85. package/dist/{parser → types/parser}/entities/ellipse/types.d.ts +1 -0
  86. package/dist/types/parser/entities/ellipse/types.d.ts.map +1 -0
  87. package/dist/{parser → types/parser}/entities/face/consts.d.ts +1 -0
  88. package/dist/types/parser/entities/face/consts.d.ts.map +1 -0
  89. package/dist/{parser → types/parser}/entities/face/index.d.ts +1 -0
  90. package/dist/types/parser/entities/face/index.d.ts.map +1 -0
  91. package/dist/{parser → types/parser}/entities/face/parser.d.ts +2 -2
  92. package/dist/types/parser/entities/face/parser.d.ts.map +1 -0
  93. package/dist/{parser → types/parser}/entities/face/types.d.ts +2 -1
  94. package/dist/types/parser/entities/face/types.d.ts.map +1 -0
  95. package/dist/{parser → types/parser}/entities/hatch/boundaryPathData/edge.d.ts +1 -0
  96. package/dist/types/parser/entities/hatch/boundaryPathData/edge.d.ts.map +1 -0
  97. package/dist/{parser → types/parser}/entities/hatch/boundaryPathData/index.d.ts +2 -2
  98. package/dist/types/parser/entities/hatch/boundaryPathData/index.d.ts.map +1 -0
  99. package/dist/{parser → types/parser}/entities/hatch/boundaryPathData/polyline.d.ts +1 -0
  100. package/dist/types/parser/entities/hatch/boundaryPathData/polyline.d.ts.map +1 -0
  101. package/dist/{parser → types/parser}/entities/hatch/boundaryPathData/shared.d.ts +1 -0
  102. package/dist/types/parser/entities/hatch/boundaryPathData/shared.d.ts.map +1 -0
  103. package/dist/{parser → types/parser}/entities/hatch/index.d.ts +2 -2
  104. package/dist/types/parser/entities/hatch/index.d.ts.map +1 -0
  105. package/dist/types/parser/entities/hatch/patternData.d.ts +3 -0
  106. package/dist/types/parser/entities/hatch/patternData.d.ts.map +1 -0
  107. package/dist/{parser → types/parser}/entities/hatch/types/boundaryPath.d.ts +2 -1
  108. package/dist/types/parser/entities/hatch/types/boundaryPath.d.ts.map +1 -0
  109. package/dist/{parser → types/parser}/entities/hatch/types/definitionLine.d.ts +2 -1
  110. package/dist/types/parser/entities/hatch/types/definitionLine.d.ts.map +1 -0
  111. package/dist/{parser → types/parser}/entities/hatch/types/hatch.d.ts +1 -0
  112. package/dist/types/parser/entities/hatch/types/hatch.d.ts.map +1 -0
  113. package/dist/{parser → types/parser}/entities/hatch/types/index.d.ts +1 -0
  114. package/dist/types/parser/entities/hatch/types/index.d.ts.map +1 -0
  115. package/dist/{parser → types/parser}/entities/image/consts.d.ts +1 -0
  116. package/dist/types/parser/entities/image/consts.d.ts.map +1 -0
  117. package/dist/{parser → types/parser}/entities/image/index.d.ts +1 -0
  118. package/dist/types/parser/entities/image/index.d.ts.map +1 -0
  119. package/dist/{parser → types/parser}/entities/image/parser.d.ts +2 -2
  120. package/dist/types/parser/entities/image/parser.d.ts.map +1 -0
  121. package/dist/{parser → types/parser}/entities/image/types.d.ts +1 -0
  122. package/dist/types/parser/entities/image/types.d.ts.map +1 -0
  123. package/dist/{parser → types/parser}/entities/index.d.ts +9 -2
  124. package/dist/types/parser/entities/index.d.ts.map +1 -0
  125. package/dist/types/parser/entities/insert/index.d.ts +3 -0
  126. package/dist/types/parser/entities/insert/index.d.ts.map +1 -0
  127. package/dist/{parser → types/parser}/entities/insert/parser.d.ts +2 -2
  128. package/dist/types/parser/entities/insert/parser.d.ts.map +1 -0
  129. package/dist/{parser → types/parser}/entities/insert/types.d.ts +1 -0
  130. package/dist/types/parser/entities/insert/types.d.ts.map +1 -0
  131. package/dist/{parser → types/parser}/entities/leader/consts.d.ts +1 -0
  132. package/dist/types/parser/entities/leader/consts.d.ts.map +1 -0
  133. package/dist/{parser → types/parser}/entities/leader/index.d.ts +1 -0
  134. package/dist/types/parser/entities/leader/index.d.ts.map +1 -0
  135. package/dist/{parser → types/parser}/entities/leader/parser.d.ts +2 -2
  136. package/dist/types/parser/entities/leader/parser.d.ts.map +1 -0
  137. package/dist/{parser → types/parser}/entities/leader/types.d.ts +1 -0
  138. package/dist/types/parser/entities/leader/types.d.ts.map +1 -0
  139. package/dist/types/parser/entities/line/index.d.ts +3 -0
  140. package/dist/types/parser/entities/line/index.d.ts.map +1 -0
  141. package/dist/{parser → types/parser}/entities/line/parser.d.ts +2 -2
  142. package/dist/types/parser/entities/line/parser.d.ts.map +1 -0
  143. package/dist/{parser → types/parser}/entities/line/types.d.ts +1 -0
  144. package/dist/types/parser/entities/line/types.d.ts.map +1 -0
  145. package/dist/{parser → types/parser}/entities/lwpolyline/consts.d.ts +1 -0
  146. package/dist/types/parser/entities/lwpolyline/consts.d.ts.map +1 -0
  147. package/dist/types/parser/entities/lwpolyline/index.d.ts +4 -0
  148. package/dist/types/parser/entities/lwpolyline/index.d.ts.map +1 -0
  149. package/dist/{parser → types/parser}/entities/lwpolyline/parser.d.ts +2 -2
  150. package/dist/types/parser/entities/lwpolyline/parser.d.ts.map +1 -0
  151. package/dist/{parser → types/parser}/entities/lwpolyline/types.d.ts +1 -0
  152. package/dist/types/parser/entities/lwpolyline/types.d.ts.map +1 -0
  153. package/dist/types/parser/entities/mesh/index.d.ts +3 -0
  154. package/dist/types/parser/entities/mesh/index.d.ts.map +1 -0
  155. package/dist/types/parser/entities/mesh/parser.d.ts +8 -0
  156. package/dist/types/parser/entities/mesh/parser.d.ts.map +1 -0
  157. package/dist/types/parser/entities/mesh/types.d.ts +23 -0
  158. package/dist/types/parser/entities/mesh/types.d.ts.map +1 -0
  159. package/dist/{parser → types/parser}/entities/mtext/consts.d.ts +1 -0
  160. package/dist/types/parser/entities/mtext/consts.d.ts.map +1 -0
  161. package/dist/types/parser/entities/mtext/index.d.ts +4 -0
  162. package/dist/types/parser/entities/mtext/index.d.ts.map +1 -0
  163. package/dist/{parser → types/parser}/entities/mtext/parser.d.ts +2 -2
  164. package/dist/types/parser/entities/mtext/parser.d.ts.map +1 -0
  165. package/dist/{parser → types/parser}/entities/mtext/types.d.ts +1 -0
  166. package/dist/types/parser/entities/mtext/types.d.ts.map +1 -0
  167. package/dist/{parser → types/parser}/entities/multileader/index.d.ts +1 -0
  168. package/dist/types/parser/entities/multileader/index.d.ts.map +1 -0
  169. package/dist/{parser → types/parser}/entities/multileader/parser.d.ts +2 -2
  170. package/dist/types/parser/entities/multileader/parser.d.ts.map +1 -0
  171. package/dist/{parser → types/parser}/entities/multileader/types.d.ts +2 -1
  172. package/dist/types/parser/entities/multileader/types.d.ts.map +1 -0
  173. package/dist/types/parser/entities/point/index.d.ts +3 -0
  174. package/dist/types/parser/entities/point/index.d.ts.map +1 -0
  175. package/dist/{parser → types/parser}/entities/point/parser.d.ts +2 -2
  176. package/dist/types/parser/entities/point/parser.d.ts.map +1 -0
  177. package/dist/{parser → types/parser}/entities/point/types.d.ts +1 -0
  178. package/dist/types/parser/entities/point/types.d.ts.map +1 -0
  179. package/dist/{parser → types/parser}/entities/polyline/consts.d.ts +1 -0
  180. package/dist/types/parser/entities/polyline/consts.d.ts.map +1 -0
  181. package/dist/types/parser/entities/polyline/index.d.ts +4 -0
  182. package/dist/types/parser/entities/polyline/index.d.ts.map +1 -0
  183. package/dist/{parser → types/parser}/entities/polyline/parser.d.ts +2 -2
  184. package/dist/types/parser/entities/polyline/parser.d.ts.map +1 -0
  185. package/dist/{parser → types/parser}/entities/polyline/types.d.ts +1 -0
  186. package/dist/types/parser/entities/polyline/types.d.ts.map +1 -0
  187. package/dist/types/parser/entities/ray/index.d.ts +3 -0
  188. package/dist/types/parser/entities/ray/index.d.ts.map +1 -0
  189. package/dist/{parser → types/parser}/entities/ray/parser.d.ts +2 -2
  190. package/dist/types/parser/entities/ray/parser.d.ts.map +1 -0
  191. package/dist/{parser → types/parser}/entities/ray/types.d.ts +1 -0
  192. package/dist/types/parser/entities/ray/types.d.ts.map +1 -0
  193. package/dist/types/parser/entities/region/index.d.ts +3 -0
  194. package/dist/types/parser/entities/region/index.d.ts.map +1 -0
  195. package/dist/types/parser/entities/region/parser.d.ts +8 -0
  196. package/dist/types/parser/entities/region/parser.d.ts.map +1 -0
  197. package/dist/types/parser/entities/region/types.d.ts +10 -0
  198. package/dist/types/parser/entities/region/types.d.ts.map +1 -0
  199. package/dist/types/parser/entities/section/index.d.ts +3 -0
  200. package/dist/types/parser/entities/section/index.d.ts.map +1 -0
  201. package/dist/{parser → types/parser}/entities/section/parser.d.ts +2 -2
  202. package/dist/types/parser/entities/section/parser.d.ts.map +1 -0
  203. package/dist/{parser → types/parser}/entities/section/types.d.ts +1 -0
  204. package/dist/types/parser/entities/section/types.d.ts.map +1 -0
  205. package/dist/{parser → types/parser}/entities/shared.d.ts +13 -4
  206. package/dist/types/parser/entities/shared.d.ts.map +1 -0
  207. package/dist/types/parser/entities/solid/index.d.ts +3 -0
  208. package/dist/types/parser/entities/solid/index.d.ts.map +1 -0
  209. package/dist/{parser → types/parser}/entities/solid/parser.d.ts +2 -2
  210. package/dist/types/parser/entities/solid/parser.d.ts.map +1 -0
  211. package/dist/{parser → types/parser}/entities/solid/types.d.ts +1 -0
  212. package/dist/types/parser/entities/solid/types.d.ts.map +1 -0
  213. package/dist/types/parser/entities/solid3d/index.d.ts +3 -0
  214. package/dist/types/parser/entities/solid3d/index.d.ts.map +1 -0
  215. package/dist/types/parser/entities/solid3d/parser.d.ts +8 -0
  216. package/dist/types/parser/entities/solid3d/parser.d.ts.map +1 -0
  217. package/dist/types/parser/entities/solid3d/types.d.ts +12 -0
  218. package/dist/types/parser/entities/solid3d/types.d.ts.map +1 -0
  219. package/dist/{parser → types/parser}/entities/spline/consts.d.ts +1 -0
  220. package/dist/types/parser/entities/spline/consts.d.ts.map +1 -0
  221. package/dist/types/parser/entities/spline/index.d.ts +4 -0
  222. package/dist/types/parser/entities/spline/index.d.ts.map +1 -0
  223. package/dist/{parser → types/parser}/entities/spline/parser.d.ts +2 -2
  224. package/dist/types/parser/entities/spline/parser.d.ts.map +1 -0
  225. package/dist/{parser → types/parser}/entities/spline/types.d.ts +1 -0
  226. package/dist/types/parser/entities/spline/types.d.ts.map +1 -0
  227. package/dist/{parser → types/parser}/entities/text/consts.d.ts +1 -0
  228. package/dist/types/parser/entities/text/consts.d.ts.map +1 -0
  229. package/dist/types/parser/entities/text/index.d.ts +4 -0
  230. package/dist/types/parser/entities/text/index.d.ts.map +1 -0
  231. package/dist/{parser → types/parser}/entities/text/parser.d.ts +2 -2
  232. package/dist/types/parser/entities/text/parser.d.ts.map +1 -0
  233. package/dist/{parser → types/parser}/entities/text/types.d.ts +1 -0
  234. package/dist/types/parser/entities/text/types.d.ts.map +1 -0
  235. package/dist/types/parser/entities/tolerance/index.d.ts +3 -0
  236. package/dist/types/parser/entities/tolerance/index.d.ts.map +1 -0
  237. package/dist/types/parser/entities/tolerance/parser.d.ts +8 -0
  238. package/dist/types/parser/entities/tolerance/parser.d.ts.map +1 -0
  239. package/dist/types/parser/entities/tolerance/types.d.ts +17 -0
  240. package/dist/types/parser/entities/tolerance/types.d.ts.map +1 -0
  241. package/dist/{parser → types/parser}/entities/vertex/consts.d.ts +1 -0
  242. package/dist/types/parser/entities/vertex/consts.d.ts.map +1 -0
  243. package/dist/types/parser/entities/vertex/index.d.ts +4 -0
  244. package/dist/types/parser/entities/vertex/index.d.ts.map +1 -0
  245. package/dist/{parser → types/parser}/entities/vertex/parser.d.ts +2 -2
  246. package/dist/types/parser/entities/vertex/parser.d.ts.map +1 -0
  247. package/dist/{parser → types/parser}/entities/vertex/types.d.ts +1 -0
  248. package/dist/types/parser/entities/vertex/types.d.ts.map +1 -0
  249. package/dist/types/parser/entities/viewport/index.d.ts +3 -0
  250. package/dist/types/parser/entities/viewport/index.d.ts.map +1 -0
  251. package/dist/{parser → types/parser}/entities/viewport/parser.d.ts +1 -0
  252. package/dist/types/parser/entities/viewport/parser.d.ts.map +1 -0
  253. package/dist/{parser → types/parser}/entities/viewport/types.d.ts +4 -3
  254. package/dist/types/parser/entities/viewport/types.d.ts.map +1 -0
  255. package/dist/types/parser/entities/wipeout/consts.d.ts +7 -0
  256. package/dist/types/parser/entities/wipeout/consts.d.ts.map +1 -0
  257. package/dist/types/parser/entities/wipeout/index.d.ts +4 -0
  258. package/dist/types/parser/entities/wipeout/index.d.ts.map +1 -0
  259. package/dist/types/parser/entities/wipeout/parser.d.ts +8 -0
  260. package/dist/types/parser/entities/wipeout/parser.d.ts.map +1 -0
  261. package/dist/types/parser/entities/wipeout/types.d.ts +38 -0
  262. package/dist/types/parser/entities/wipeout/types.d.ts.map +1 -0
  263. package/dist/types/parser/entities/xline/index.d.ts +3 -0
  264. package/dist/types/parser/entities/xline/index.d.ts.map +1 -0
  265. package/dist/types/parser/entities/xline/parser.d.ts +8 -0
  266. package/dist/types/parser/entities/xline/parser.d.ts.map +1 -0
  267. package/dist/types/parser/entities/xline/types.d.ts +9 -0
  268. package/dist/types/parser/entities/xline/types.d.ts.map +1 -0
  269. package/dist/{parser → types/parser}/getAcadColor.d.ts +1 -0
  270. package/dist/types/parser/getAcadColor.d.ts.map +1 -0
  271. package/dist/types/parser/header/index.d.ts +3 -0
  272. package/dist/types/parser/header/index.d.ts.map +1 -0
  273. package/dist/{parser → types/parser}/index.d.ts +1 -0
  274. package/dist/types/parser/index.d.ts.map +1 -0
  275. package/dist/types/parser/objects/consts.d.ts +15 -0
  276. package/dist/types/parser/objects/consts.d.ts.map +1 -0
  277. package/dist/types/parser/objects/dictionary/index.d.ts +3 -0
  278. package/dist/types/parser/objects/dictionary/index.d.ts.map +1 -0
  279. package/dist/types/parser/objects/dictionary/parser.d.ts +3 -0
  280. package/dist/types/parser/objects/dictionary/parser.d.ts.map +1 -0
  281. package/dist/{parser → types/parser}/objects/dictionary/types.d.ts +2 -1
  282. package/dist/types/parser/objects/dictionary/types.d.ts.map +1 -0
  283. package/dist/{parser → types/parser}/objects/index.d.ts +4 -3
  284. package/dist/types/parser/objects/index.d.ts.map +1 -0
  285. package/dist/{parser → types/parser}/objects/layout/consts.d.ts +1 -0
  286. package/dist/types/parser/objects/layout/consts.d.ts.map +1 -0
  287. package/dist/types/parser/objects/layout/index.d.ts +4 -0
  288. package/dist/types/parser/objects/layout/index.d.ts.map +1 -0
  289. package/dist/types/parser/objects/layout/parser.d.ts +3 -0
  290. package/dist/types/parser/objects/layout/parser.d.ts.map +1 -0
  291. package/dist/{parser → types/parser}/objects/layout/types.d.ts +3 -2
  292. package/dist/types/parser/objects/layout/types.d.ts.map +1 -0
  293. package/dist/{parser → types/parser}/objects/plotSettings/consts.d.ts +1 -0
  294. package/dist/types/parser/objects/plotSettings/consts.d.ts.map +1 -0
  295. package/dist/types/parser/objects/plotSettings/index.d.ts +4 -0
  296. package/dist/types/parser/objects/plotSettings/index.d.ts.map +1 -0
  297. package/dist/types/parser/objects/plotSettings/parser.d.ts +3 -0
  298. package/dist/types/parser/objects/plotSettings/parser.d.ts.map +1 -0
  299. package/dist/{parser → types/parser}/objects/plotSettings/types.d.ts +1 -0
  300. package/dist/types/parser/objects/plotSettings/types.d.ts.map +1 -0
  301. package/dist/{parser → types/parser}/objects/shared.d.ts +1 -0
  302. package/dist/types/parser/objects/shared.d.ts.map +1 -0
  303. package/dist/types/parser/objects/spatial_filter/index.d.ts +3 -0
  304. package/dist/types/parser/objects/spatial_filter/index.d.ts.map +1 -0
  305. package/dist/types/parser/objects/spatial_filter/parser.d.ts +3 -0
  306. package/dist/types/parser/objects/spatial_filter/parser.d.ts.map +1 -0
  307. package/dist/types/parser/objects/spatial_filter/types.d.ts +39 -0
  308. package/dist/types/parser/objects/spatial_filter/types.d.ts.map +1 -0
  309. package/dist/{parser → types/parser}/objects/types.d.ts +8 -2
  310. package/dist/types/parser/objects/types.d.ts.map +1 -0
  311. package/dist/types/parser/objects/xrecord/index.d.ts +3 -0
  312. package/dist/types/parser/objects/xrecord/index.d.ts.map +1 -0
  313. package/dist/types/parser/objects/xrecord/parser.d.ts +3 -0
  314. package/dist/types/parser/objects/xrecord/parser.d.ts.map +1 -0
  315. package/dist/types/parser/objects/xrecord/types.d.ts +16 -0
  316. package/dist/types/parser/objects/xrecord/types.d.ts.map +1 -0
  317. package/dist/{parser → types/parser}/shared/extensions/parser.d.ts +2 -1
  318. package/dist/types/parser/shared/extensions/parser.d.ts.map +1 -0
  319. package/dist/{parser → types/parser}/shared/index.d.ts +1 -0
  320. package/dist/types/parser/shared/index.d.ts.map +1 -0
  321. package/dist/{parser → types/parser}/shared/isMatched.d.ts +1 -0
  322. package/dist/types/parser/shared/isMatched.d.ts.map +1 -0
  323. package/dist/{parser → types/parser}/shared/parsePoint.d.ts +2 -1
  324. package/dist/types/parser/shared/parsePoint.d.ts.map +1 -0
  325. package/dist/{parser → types/parser}/shared/parserGenerator.d.ts +21 -2
  326. package/dist/types/parser/shared/parserGenerator.d.ts.map +1 -0
  327. package/dist/{parser → types/parser}/shared/xdata/index.d.ts +1 -0
  328. package/dist/types/parser/shared/xdata/index.d.ts.map +1 -0
  329. package/dist/{parser → types/parser}/shared/xdata/interpreter.d.ts +1 -0
  330. package/dist/types/parser/shared/xdata/interpreter.d.ts.map +1 -0
  331. package/dist/{parser → types/parser}/shared/xdata/parser.d.ts +2 -2
  332. package/dist/types/parser/shared/xdata/parser.d.ts.map +1 -0
  333. package/dist/{parser → types/parser}/shared/xdata/types.d.ts +1 -0
  334. package/dist/types/parser/shared/xdata/types.d.ts.map +1 -0
  335. package/dist/types/parser/tables/blockRecord/index.d.ts +3 -0
  336. package/dist/types/parser/tables/blockRecord/index.d.ts.map +1 -0
  337. package/dist/{parser → types/parser}/tables/blockRecord/parser.d.ts +1 -0
  338. package/dist/types/parser/tables/blockRecord/parser.d.ts.map +1 -0
  339. package/dist/{parser → types/parser}/tables/blockRecord/types.d.ts +1 -0
  340. package/dist/types/parser/tables/blockRecord/types.d.ts.map +1 -0
  341. package/dist/{parser → types/parser}/tables/dimStyle/consts.d.ts +1 -0
  342. package/dist/types/parser/tables/dimStyle/consts.d.ts.map +1 -0
  343. package/dist/types/parser/tables/dimStyle/index.d.ts +4 -0
  344. package/dist/types/parser/tables/dimStyle/index.d.ts.map +1 -0
  345. package/dist/{parser → types/parser}/tables/dimStyle/parser.d.ts +1 -0
  346. package/dist/types/parser/tables/dimStyle/parser.d.ts.map +1 -0
  347. package/dist/{parser → types/parser}/tables/dimStyle/types.d.ts +1 -0
  348. package/dist/types/parser/tables/dimStyle/types.d.ts.map +1 -0
  349. package/dist/{parser → types/parser}/tables/index.d.ts +1 -0
  350. package/dist/types/parser/tables/index.d.ts.map +1 -0
  351. package/dist/types/parser/tables/layer/index.d.ts +3 -0
  352. package/dist/types/parser/tables/layer/index.d.ts.map +1 -0
  353. package/dist/{parser → types/parser}/tables/layer/parser.d.ts +1 -0
  354. package/dist/types/parser/tables/layer/parser.d.ts.map +1 -0
  355. package/dist/{parser → types/parser}/tables/layer/types.d.ts +1 -0
  356. package/dist/types/parser/tables/layer/types.d.ts.map +1 -0
  357. package/dist/{parser → types/parser}/tables/ltype/consts.d.ts +1 -0
  358. package/dist/types/parser/tables/ltype/consts.d.ts.map +1 -0
  359. package/dist/types/parser/tables/ltype/index.d.ts +4 -0
  360. package/dist/types/parser/tables/ltype/index.d.ts.map +1 -0
  361. package/dist/{parser → types/parser}/tables/ltype/parser.d.ts +1 -0
  362. package/dist/types/parser/tables/ltype/parser.d.ts.map +1 -0
  363. package/dist/{parser → types/parser}/tables/ltype/types.d.ts +1 -0
  364. package/dist/types/parser/tables/ltype/types.d.ts.map +1 -0
  365. package/dist/types/parser/tables/parser.d.ts +3 -0
  366. package/dist/types/parser/tables/parser.d.ts.map +1 -0
  367. package/dist/{parser → types/parser}/tables/shared.d.ts +1 -0
  368. package/dist/types/parser/tables/shared.d.ts.map +1 -0
  369. package/dist/types/parser/tables/style/index.d.ts +3 -0
  370. package/dist/types/parser/tables/style/index.d.ts.map +1 -0
  371. package/dist/{parser → types/parser}/tables/style/parser.d.ts +1 -0
  372. package/dist/types/parser/tables/style/parser.d.ts.map +1 -0
  373. package/dist/{parser → types/parser}/tables/style/types.d.ts +1 -0
  374. package/dist/types/parser/tables/style/types.d.ts.map +1 -0
  375. package/dist/{parser → types/parser}/tables/types.d.ts +1 -0
  376. package/dist/types/parser/tables/types.d.ts.map +1 -0
  377. package/dist/types/parser/tables/vport/index.d.ts +3 -0
  378. package/dist/types/parser/tables/vport/index.d.ts.map +1 -0
  379. package/dist/{parser → types/parser}/tables/vport/parser.d.ts +1 -0
  380. package/dist/types/parser/tables/vport/parser.d.ts.map +1 -0
  381. package/dist/{parser → types/parser}/tables/vport/types.d.ts +1 -0
  382. package/dist/types/parser/tables/vport/types.d.ts.map +1 -0
  383. package/dist/{parser → types/parser}/types.d.ts +1 -0
  384. package/dist/types/parser/types.d.ts.map +1 -0
  385. package/dist/{stream-parser → types/stream-parser}/DxfStreamParser.d.ts +2 -1
  386. package/dist/types/stream-parser/DxfStreamParser.d.ts.map +1 -0
  387. package/dist/{stream-parser → types/stream-parser}/index.d.ts +1 -0
  388. package/dist/types/stream-parser/index.d.ts.map +1 -0
  389. package/dist/{stream-parser → types/stream-parser}/streamShared/parseData.d.ts +2 -1
  390. package/dist/types/stream-parser/streamShared/parseData.d.ts.map +1 -0
  391. package/dist/types/{color.d.ts → types/color.d.ts} +1 -0
  392. package/dist/types/types/color.d.ts.map +1 -0
  393. package/dist/types/{dxfHeader.d.ts → types/dxfHeader.d.ts} +1 -0
  394. package/dist/types/types/dxfHeader.d.ts.map +1 -0
  395. package/dist/types/types/index.d.ts +24 -0
  396. package/dist/types/types/index.d.ts.map +1 -0
  397. package/dist/{utils → types/utils}/index.d.ts +2 -1
  398. package/dist/types/utils/index.d.ts.map +1 -0
  399. package/package.json +17 -13
  400. package/dist/index.d.ts +0 -7
  401. package/dist/parser/blocks/blocks.test.d.ts +0 -1
  402. package/dist/parser/entities/dimension/index.d.ts +0 -2
  403. package/dist/parser/entities/ellipse/index.d.ts +0 -2
  404. package/dist/parser/entities/entities.test.d.ts +0 -1
  405. package/dist/parser/entities/face/face.test.d.ts +0 -1
  406. package/dist/parser/entities/hatch/patternData.d.ts +0 -3
  407. package/dist/parser/entities/insert/index.d.ts +0 -2
  408. package/dist/parser/entities/line/index.d.ts +0 -2
  409. package/dist/parser/entities/lwpolyline/index.d.ts +0 -3
  410. package/dist/parser/entities/mtext/index.d.ts +0 -3
  411. package/dist/parser/entities/point/index.d.ts +0 -2
  412. package/dist/parser/entities/polyline/index.d.ts +0 -3
  413. package/dist/parser/entities/ray/index.d.ts +0 -2
  414. package/dist/parser/entities/section/index.d.ts +0 -2
  415. package/dist/parser/entities/solid/index.d.ts +0 -2
  416. package/dist/parser/entities/spline/index.d.ts +0 -3
  417. package/dist/parser/entities/text/index.d.ts +0 -3
  418. package/dist/parser/entities/vertex/index.d.ts +0 -3
  419. package/dist/parser/entities/viewport/index.d.ts +0 -2
  420. package/dist/parser/header/index.d.ts +0 -3
  421. package/dist/parser/objects/dictionary/consts.d.ts +0 -8
  422. package/dist/parser/objects/dictionary/index.d.ts +0 -3
  423. package/dist/parser/objects/dictionary/parser.d.ts +0 -2
  424. package/dist/parser/objects/layout/index.d.ts +0 -3
  425. package/dist/parser/objects/layout/parser.d.ts +0 -2
  426. package/dist/parser/objects/plotSettings/index.d.ts +0 -3
  427. package/dist/parser/objects/plotSettings/parser.d.ts +0 -2
  428. package/dist/parser/objects/treefy.d.ts +0 -2
  429. package/dist/parser/shared/parserGenerator.test.d.ts +0 -1
  430. package/dist/parser/shared/xdata/interpreter.test.d.ts +0 -1
  431. package/dist/parser/shared/xdata/parser.test.d.ts +0 -1
  432. package/dist/parser/tables/blockRecord/index.d.ts +0 -2
  433. package/dist/parser/tables/dimStyle/index.d.ts +0 -3
  434. package/dist/parser/tables/layer/index.d.ts +0 -2
  435. package/dist/parser/tables/ltype/index.d.ts +0 -3
  436. package/dist/parser/tables/parser.d.ts +0 -3
  437. package/dist/parser/tables/style/index.d.ts +0 -2
  438. package/dist/parser/tables/vport/index.d.ts +0 -2
package/dist/bundle.mjs CHANGED
@@ -1,3 +1,3 @@
1
- (Y=ef||(ef={}))[Y.None=0]="None",Y[Y.Anonymous=1]="Anonymous",Y[Y.NonConstant=2]="NonConstant",Y[Y.Xref=4]="Xref",Y[Y.XrefOverlay=8]="XrefOverlay",Y[Y.ExternallyDependent=16]="ExternallyDependent",Y[Y.ResolvedOrDependent=32]="ResolvedOrDependent",Y[Y.ReferencedXref=64]="ReferencedXref",(j=eb||(eb={}))[j.BYBLOCK=0]="BYBLOCK",j[j.BYLAYER=256]="BYLAYER";let e=-1,a=4,r=Math.PI/24;(X=eT||(eT={}))[X.Rotated=0]="Rotated",X[X.Aligned=1]="Aligned",X[X.Angular=2]="Angular",X[X.Diameter=3]="Diameter",X[X.Radius=4]="Radius",X[X.Angular3Point=5]="Angular3Point",X[X.Ordinate=6]="Ordinate",X[X.ReferenceIsExclusive=32]="ReferenceIsExclusive",X[X.IsOrdinateXTypeFlag=64]="IsOrdinateXTypeFlag",X[X.IsCustomTextPositionFlag=128]="IsCustomTextPositionFlag",(z=eD||(eD={}))[z.TopLeft=1]="TopLeft",z[z.TopCenter=2]="TopCenter",z[z.TopRight=3]="TopRight",z[z.MiddleLeft=4]="MiddleLeft",z[z.MiddleCenter=5]="MiddleCenter",z[z.MiddleRight=6]="MiddleRight",z[z.BottomLeft=7]="BottomLeft",z[z.BottomCenter=8]="BottomCenter",z[z.BottomRight=9]="BottomRight",(K=eO||(eO={}))[K.AtLeast=1]="AtLeast",K[K.Exact=2]="Exact",(Z=eg||(eg={}))[Z.Center=0]="Center",Z[Z.Above=1]="Above",Z[Z.Outside=2]="Outside",Z[Z.JIS=3]="JIS",Z[Z.Below=4]="Below",(J=ey||(ey={}))[J.Feet=0]="Feet",J[J.None=1]="None",J[J.Inch=2]="Inch",J[J.FeetAndInch=3]="FeetAndInch",J[J.Leading=4]="Leading",J[J.Trailing=8]="Trailing",J[J.LeadingAndTrailing=12]="LeadingAndTrailing",($=eS||(eS={}))[$.None=0]="None",$[$.Leading=1]="Leading",$[$.Trailing=2]="Trailing",$[$.LeadingAndTrailing=3]="LeadingAndTrailing",(q=eN||(eN={}))[q.Center=0]="Center",q[q.Left=1]="Left",q[q.Right=2]="Right",q[q.OverFirst=3]="OverFirst",q[q.OverSecond=4]="OverSecond",(Q=e_||(e_={}))[Q.Bottom=0]="Bottom",Q[Q.Center=1]="Center",Q[Q.Top=2]="Top",(ee=eL||(eL={}))[ee.PatternFill=0]="PatternFill",ee[ee.SolidFill=1]="SolidFill",(ea=eA||(eA={}))[ea.NonAssociative=0]="NonAssociative",ea[ea.Associative=1]="Associative",(er=eP||(eP={}))[er.Normal=0]="Normal",er[er.Outer=1]="Outer",er[er.Ignore=2]="Ignore",(et=eC||(eC={}))[et.UserDefined=0]="UserDefined",et[et.Predefined=1]="Predefined",et[et.Custom=2]="Custom",(en=ev||(ev={}))[en.NotAnnotated=0]="NotAnnotated",en[en.Annotated=1]="Annotated",(eo=eM||(eM={}))[eo.Solid=0]="Solid",eo[eo.Gradient=1]="Gradient",(es=ex||(ex={}))[es.TwoColor=0]="TwoColor",es[es.OneColor=1]="OneColor",(ei=eR||(eR={}))[ei.Default=0]="Default",ei[ei.External=1]="External",ei[ei.Polyline=2]="Polyline",ei[ei.Derived=4]="Derived",ei[ei.Textbox=8]="Textbox",ei[ei.Outermost=16]="Outermost",(ec=ek||(ek={}))[ec.Line=1]="Line",ec[ec.Circular=2]="Circular",ec[ec.Elliptic=3]="Elliptic",ec[ec.Spline=4]="Spline",(el=eF||(eF={}))[el.Off=0]="Off",el[el.Solid=1]="Solid",el[el.Dashed=2]="Dashed",el[el.Dotted=3]="Dotted",el[el.ShotDash=4]="ShotDash",el[el.MediumDash=5]="MediumDash",el[el.LongDash=6]="LongDash",el[el.DoubleShortDash=7]="DoubleShortDash",el[el.DoubleMediumDash=8]="DoubleMediumDash",el[el.DoubleLongDash=9]="DoubleLongDash",el[el.DoubleMediumLongDash=10]="DoubleMediumLongDash",el[el.SparseDot=11]="SparseDot";let t={DRAGVS:"NULL",INTERFERECOLOR:1,INTERFEREOBJVS:"Conceptual",INTERFEREVPVS:"3d Wireframe",OBSLTYPE:eF.Off,SHADEDIF:70};(ed=ew||(ew={}))[ed.Standard=-3]="Standard",ed[ed.ByLayer=-2]="ByLayer",ed[ed.ByBlock=-1]="ByBlock",(eu=eV||(eV={}))[eu.English=0]="English",eu[eu.Metric=1]="Metric";let n=65536;function o(e,a,r){return e.code===a&&(null==r||e.value===r)}function s(e){let a={};e.rewind();let r=e.next(),t=r.code;if(a.x=r.value,(r=e.next()).code!==t+10)throw Error("Expected code for point value to be 20 but got "+r.code+".");return(a.y=r.value,(r=e.next()).code!==t+20)?e.rewind():a.z=r.value,a}(ep=eB||(eB={}))[ep.PERSPECTIVE_MODE=1]="PERSPECTIVE_MODE",ep[ep.FRONT_CLIPPING=2]="FRONT_CLIPPING",ep[ep.BACK_CLIPPING=4]="BACK_CLIPPING",ep[ep.UCS_FOLLOW=8]="UCS_FOLLOW",ep[ep.FRONT_CLIP_NOT_AT_EYE=16]="FRONT_CLIP_NOT_AT_EYE",ep[ep.UCS_ICON_VISIBILITY=32]="UCS_ICON_VISIBILITY",ep[ep.UCS_ICON_AT_ORIGIN=64]="UCS_ICON_AT_ORIGIN",ep[ep.FAST_ZOOM=128]="FAST_ZOOM",ep[ep.SNAP_MODE=256]="SNAP_MODE",ep[ep.GRID_MODE=512]="GRID_MODE",ep[ep.ISOMETRIC_SNAP_STYLE=1024]="ISOMETRIC_SNAP_STYLE",ep[ep.HIDE_PLOT_MODE=2048]="HIDE_PLOT_MODE",ep[ep.K_ISO_PAIR_TOP=4096]="K_ISO_PAIR_TOP",ep[ep.K_ISO_PAIR_RIGHT=8192]="K_ISO_PAIR_RIGHT",ep[ep.VIEWPORT_ZOOM_LOCKING=16384]="VIEWPORT_ZOOM_LOCKING",ep[ep.UNUSED=32768]="UNUSED",ep[ep.NON_RECTANGULAR_CLIPPING=65536]="NON_RECTANGULAR_CLIPPING",ep[ep.VIEWPORT_OFF=131072]="VIEWPORT_OFF",ep[ep.GRID_BEYOND_DRAWING_LIMITS=262144]="GRID_BEYOND_DRAWING_LIMITS",ep[ep.ADAPTIVE_GRID_DISPLAY=524288]="ADAPTIVE_GRID_DISPLAY",ep[ep.SUBDIVISION_BELOW_SPACING=1048576]="SUBDIVISION_BELOW_SPACING",ep[ep.GRID_FOLLOWS_WORKPLANE=2097152]="GRID_FOLLOWS_WORKPLANE",(em=eH||(eH={}))[em.OPTIMIZED_2D=0]="OPTIMIZED_2D",em[em.WIREFRAME=1]="WIREFRAME",em[em.HIDDEN_LINE=2]="HIDDEN_LINE",em[em.FLAT_SHADED=3]="FLAT_SHADED",em[em.GOURAUD_SHADED=4]="GOURAUD_SHADED",em[em.FLAT_SHADED_WITH_WIREFRAME=5]="FLAT_SHADED_WITH_WIREFRAME",em[em.GOURAUD_SHADED_WITH_WIREFRAME=6]="GOURAUD_SHADED_WITH_WIREFRAME",(eE=eG||(eG={}))[eE.UCS_UNCHANGED=0]="UCS_UNCHANGED",eE[eE.HAS_OWN_UCS=1]="HAS_OWN_UCS",(eh=eU||(eU={}))[eh.NON_ORTHOGRAPHIC=0]="NON_ORTHOGRAPHIC",eh[eh.TOP=1]="TOP",eh[eh.BOTTOM=2]="BOTTOM",eh[eh.FRONT=3]="FRONT",eh[eh.BACK=4]="BACK",eh[eh.LEFT=5]="LEFT",eh[eh.RIGHT=6]="RIGHT",(eI=eW||(eW={}))[eI.ONE_DISTANT_LIGHT=0]="ONE_DISTANT_LIGHT",eI[eI.TWO_DISTANT_LIGHTS=1]="TWO_DISTANT_LIGHTS";let i=Symbol();function c(e,a){return(r,t,n)=>{let s=e.reduce((e,a)=>{a.pushContext&&e.push({});let r=e[e.length-1];for(let e of"number"==typeof a.code?[a.code]:a.code){let t=r[e]??(r[e]=[]);a.isMultiple&&t.length,t.push(a)}return e},[{}]),c=!1,d=s.length-1;for(;!o(r,0,"EOF");){let e=function(e,a,r){return e.find((e,t)=>t>=r&&e[a]?.length)}(s,r.code,d),a=e?.[r.code].at(-1);if(!e||!a){t.rewind();break}a.isMultiple||e[r.code].pop();let{name:o,parser:u,isMultiple:p,isReducible:m}=a,E=u?.(r,t,n);if(E===i){t.rewind();break}if(o){let[e,a]=function(e,a){let r=a.split(".");if(!r.length)throw Error("[parserGenerator::getObjectByPath] Invalid empty path");let t=e;for(let e=0;e<r.length-1;++e){let a=l(r[e]),n=l(r[e+1]);Object.prototype.hasOwnProperty.call(t,a)||("number"==typeof n?t[a]=[]:t[a]={}),t=t[a]}return[t,l(r.at(-1))]}(n,o);p&&!m?(Object.prototype.hasOwnProperty.call(e,a)||(e[a]=[]),e[a].push(E)):e[a]=E}a.pushContext&&(d-=1),c=!0,r=t.next()}return a&&Object.setPrototypeOf(n,a),c}}function l(e){let a=Number.parseInt(e);return Number.isNaN(a)?e:a}function d({value:e}){return e}function u(e,a){return s(a)}function p({value:e}){return!!e}function m(e,a,r){for(;o(e,102);){var t;let n=e.value;if(e=a.next(),!n.startsWith("{")){console.warn(`Invalid application group, expected to start with "{" but received: ${n}`),function(e,a){for(;!o(e,102)&&!o(e,0,"EOF");)e=a.next()}(e,a),e=a.next();continue}let s=n.slice(1).trim();r.extensions??(r.extensions={}),(t=r.extensions)[s]??(t[s]=[]),function(e,a,r){for(;!o(e,102,"}")&&!o(e,0,"EOF");)r.push(e),e=a.next()}(e,a,r.extensions[s]),e=a.next()}}var E,h,I,f,b,T,D,O,g,y,S,N,_,L,A,P,C,v,M,x,R,k,F,w,V,B,H,G,U,W,Y,j,X,z,K,Z,J,$,q,Q,ee,ea,er,et,en,eo,es,ei,ec,el,ed,eu,ep,em,eE,eh,eI,ef,eb,eT,eD,eO,eg,ey,eS,eN,e_,eL,eA,eP,eC,ev,eM,ex,eR,ek,eF,ew,eV,eB,eH,eG,eU,eW,eY,ej,eX,ez,eK,eZ,eJ,e$,eq,eQ,e0,e1,e4,e2,e3,e7,e5,e6,e9,e8,ae,aa,ar,at,an=[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];function ao(e){return an[e]}let as=[{code:1001,name:"xdata",parser:ai}];function ai(e,a){if(!o(e,1001))throw Error("XData must starts with code 1001");let r={appName:e.value,value:[]};e=a.next();let t=[r.value];for(;!o(e,0,"EOF")&&e.code>=1e3;){let r=t.at(-1);switch(e.code){case 1002:"{"===e.value?t.push([]):(t.pop(),t.at(-1)?.push(r));break;case 1e3:case 1004:case 1040:case 1070:case 1071:r.push({type:ac(e.code),value:e.value});break;case 1003:r.push({name:"layer",type:ac(e.code),value:e.value});break;case 1005:r.push({name:"handle",type:ac(e.code),value:e.value});break;case 1010:r.push({type:ac(e.code),value:s(a)});break;case 1011:r.push({name:"worldSpacePosition",type:ac(e.code),value:s(a)});break;case 1012:r.push({name:"worldSpaceDisplacement",type:ac(e.code),value:s(a)});break;case 1013:r.push({name:"worldSpaceDirection",type:ac(e.code),value:s(a)});break;case 1041:r.push({name:"distance",type:ac(e.code),value:e.value});break;case 1042:r.push({name:"scale",type:ac(e.code),value:e.value})}e=a.next()}return a.rewind(),r}function ac(e){switch(e){case 1e3:case 1003:case 1005:return"string";case 1004:return"hex";case 1040:case 1041:case 1042:return"real";case 1070:return"integer";case 1071:return"long";case 1010:case 1011:case 1012:case 1013:return"point";default:return""}}function al(e){return a=>{let r={};for(let t=0;t<a.length;t+=2){let n=e.find(({code:e})=>e===a[t].value);n&&(r[n.name]=a[t+1]?.value)}return r}}function ad({appName:e="ACAD",catcher:a,escaper:r}){return function*(t){if(t?.appName!==e)return;let n=!1,o=-1;for(let[e,s]of t.value.entries())if(n){if(yield s,r?.(s,e-o))return}else a(s)&&(n=!0,o=e)}}(E=eY||(eY={}))[E.CAST_AND_RECEIVE=0]="CAST_AND_RECEIVE",E[E.CAST=1]="CAST",E[E.RECEIVE=2]="RECEIVE",E[E.IGNORE=3]="IGNORE";let au=[...as,{code:284,name:"shadowMode",parser:d},{code:390,name:"plotStyleHardId",parser:d},{code:440,name:"transparency",parser:d},{code:430,name:"colorName",parser:d},{code:420,name:"color",parser:d},{code:310,name:"proxyEntity",parser:d},{code:92,name:"proxyByte",parser:d},{code:60,name:"isVisible",parser:p},{code:48,name:"lineTypeScale",parser:d},{code:370,name:"lineweight",parser:d},{code:62,name:"colorIndex",parser(e,a,r){let t=e.value;return r.color=ao(Math.abs(t)),t}},{code:347,name:"materialObjectHardId",parser:d},{code:6,name:"lineType",parser:d},{code:8,name:"layer",parser:d},{code:410,name:"layoutTabName",parser:d},{code:67,name:"isInPaperSpace",parser:p},{code:100},{code:330,name:"ownerBlockRecordSoftId",parser:d},{code:102,parser:m},{code:102,parser:m},{code:102,parser:m},{code:5,name:"handle",parser:d}];function ap(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}let am={extrusionDirection:{x:0,y:0,z:1}},aE=[{code:210,name:"extrusionDirection",parser:u},{code:51,name:"endAngle",parser:d},{code:50,name:"startAngle",parser:d},{code:100,name:"subclassMarker",parser:d},{code:40,name:"radius",parser:d},{code:10,name:"center",parser:u},{code:39,name:"thickness",parser:d},{code:100},...au];class ah{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){ap(this,"parser",c(aE,am))}}function aI(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}ap(ah,"ForEntityName","ARC"),(h=ej||(ej={}))[h.NONE=0]="NONE",h[h.INVISIBLE=1]="INVISIBLE",h[h.CONSTANT=2]="CONSTANT",h[h.VERIFICATION_REQUIRED=4]="VERIFICATION_REQUIRED",h[h.PRESET=8]="PRESET",(I=eX||(eX={}))[I.MULTILINE=2]="MULTILINE",I[I.CONSTANT_MULTILINE=4]="CONSTANT_MULTILINE",(f=ez||(ez={}))[f.NONE=0]="NONE",f[f.MIRRORED_X=2]="MIRRORED_X",f[f.MIRRORED_Y=4]="MIRRORED_Y",(b=eK||(eK={}))[b.LEFT=0]="LEFT",b[b.CENTER=1]="CENTER",b[b.RIGHT=2]="RIGHT",b[b.ALIGNED=3]="ALIGNED",b[b.MIDDLE=4]="MIDDLE",b[b.FIT=5]="FIT",(T=eZ||(eZ={}))[T.BASELINE=0]="BASELINE",T[T.BOTTOM=1]="BOTTOM",T[T.MIDDLE=2]="MIDDLE",T[T.TOP=3]="TOP";let af={thickness:0,rotation:0,xScale:1,obliqueAngle:0,styleName:"STANDARD",generationFlag:0,halign:eK.LEFT,valign:eZ.BASELINE,extrusionDirection:{x:0,y:0,z:1}},ab=[{code:73,name:"valign",parser:d},{code:100},{code:210,name:"extrusionDirection",parser:u},{code:11,name:"endPoint",parser:u},{code:72,name:"valign",parser:d},{code:72,name:"halign",parser:d},{code:71,name:"generationFlag",parser:d},{code:7,name:"styleName",parser:d},{code:51,name:"obliqueAngle",parser:d},{code:41,name:"xScale",parser:d},{code:50,name:"rotation",parser:d},{code:1,name:"text",parser:d},{code:40,name:"textHeight",parser:d},{code:10,name:"startPoint",parser:u},{code:39,name:"thickness",parser:d},{code:100,name:"subclassMarker",parser:d},...au];class aT{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){aI(this,"parser",c(ab,af))}}function aD(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}aI(aT,"ForEntityName","TEXT");let aO={...af},ag=[{code:2},{code:40,name:"annotationScale",parser:d},{code:10,name:"alignmentPoint",parser:u},{code:340,name:"secondaryAttributesHardIds",isMultiple:!0,parser:d},{code:70,name:"numberOfSecondaryAttributes",parser:d},{code:70,name:"isReallyLocked",parser:p},{code:70,name:"mtextFlag",parser:d},{code:280,name:"isDuplicatedRecord",parser:p},{code:100},{code:280,name:"isLocked",parser:p},{code:74,name:"valign",parser:d},{code:73},{code:70,name:"attributeFlag",parser:d},{code:2,name:"tag",parser:d},{code:3,name:"prompt",parser:d},{code:280},{code:100,name:"subclassMarker",parser:d},...ab.slice(2)];class ay{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){aD(this,"parser",c(ag,aO))}}aD(ay,"ForEntityName","ATTDEF");let aS=0;function aN(e){if(!e)throw TypeError("entity cannot be undefined or null");e.handle||(e.handle=aS++)}function a_(e,a){let r={};for(let t of e){let e=a(t);null!=e&&(r[e]??(r[e]=[]),r[e].push(t))}return r}function*aL(e,a=1/0,r=1){for(let t=e;t!==a;t+=r)yield t}function aA(e){return{x:e.x??0,y:e.y??0,z:e.z??0}}function aP(e,a,r){if(o(a,102))return m(a,r,e),!0;switch(a.code){case 0:e.type=a.value;break;case 5:e.handle=a.value;break;case 330:e.ownerBlockRecordSoftId=a.value;break;case 67:e.isInPaperSpace=!!a.value;break;case 8:e.layer=a.value;break;case 6:e.lineType=a.value;break;case 347:e.materialObjectHardId=a.value;break;case 62:e.colorIndex=a.value,e.color=ao(Math.abs(a.value));break;case 370:e.lineweight=a.value;break;case 48:e.lineTypeScale=a.value;break;case 60:e.isVisible=!!a.value;break;case 92:e.proxyByte=a.value;break;case 310:e.proxyEntity=a.value;break;case 100:break;case 420:e.color=a.value;break;case 430:e.transparency=a.value;break;case 390:e.plotStyleHardId=a.value;break;case 284:e.shadowMode=a.value;break;case 1001:e.xdata=ai(a,r);break;default:return!1}return!0}function aC(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}(D=eJ||(eJ={}))[D.LEFT_TO_RIGHT=1]="LEFT_TO_RIGHT",D[D.TOP_TO_BOTTOM=3]="TOP_TO_BOTTOM",D[D.BY_STYLE=5]="BY_STYLE";let av={textStyle:"STANDARD",extrusionDirection:{x:0,y:0,z:1},rotation:0},aM=[{code:46,name:"annotationHeight",parser:d},{code:101,parser(e,a){!function(e){e.rewind();let a=e.next();if(101!==a.code)throw Error("Bad call for skipEmbeddedObject()");do a=e.next();while(0!==a.code);e.rewind()}(a)}},{code:50,name:"columnHeight",parser:d},{code:49,name:"columnGutter",parser:d},{code:48,name:"columnWidth",parser:d},{code:79,name:"columnAutoHeight",parser:d},{code:78,name:"columnFlowReversed",parser:d},{code:76,name:"columnCount",parser:d},{code:75,name:"columnType",parser:d},{code:441,name:"backgroundFillTransparency",parser:d},{code:63,name:"backgroundFillColor",parser:d},{code:45,name:"fillBoxScale",parser:d},{code:[...aL(430,440)],name:"backgroundColor",parser:d},{code:[...aL(420,430)],name:"backgroundColor",parser:d},{code:90,name:"backgroundFill",parser:d},{code:44,name:"lineSpacing",parser:d},{code:73,name:"lineSpacingStyle",parser:d},{code:50,name:"rotation",parser:d},{code:43},{code:42},{code:11,name:"direction",parser:u},{code:210,name:"extrusionDirection",parser:u},{code:7,name:"styleName",parser:d},{code:3,name:"text",parser:(e,a,r)=>(r._code3text=(r._code3text??"")+e.value,r._code3text+(r._code1text??"")),isMultiple:!0,isReducible:!0},{code:1,name:"text",parser:(e,a,r)=>(r._code1text=e.value,(r._code3text??"")+r._code1text)},{code:72,name:"drawingDirection",parser:d},{code:71,name:"attachmentPoint",parser:d},{code:41,name:"width",parser:d},{code:40,name:"height",parser:d},{code:10,name:"insertionPoint",parser:u},{code:100,name:"subclassMarker",parser:d},...au];class ax{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){aC(this,"parser",c(aM,av))}}function aR(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}aC(ax,"ForEntityName","MTEXT");let ak={thickness:0,rotation:0,scale:1,obliqueAngle:0,textStyle:"STANDARD",textGenerationFlag:0,horizontalJustification:0,verticalJustification:0,extrusionDirection:{x:0,y:0,z:1}},aF=[...aM.slice(aM.findIndex(({name:e})=>"columnType"===e),aM.findIndex(({name:e})=>"subclassMarker"===e)+1),{code:100},{code:0,parser(e){if(!o(e,0,"MTEXT"))return i}},{code:2,name:"definitionTag",parser:d},{code:40,name:"annotationScale",parser:d},{code:10,name:"alignmentPoint",parser:u},{code:340,name:"secondaryAttributesHardId",parser:d},{code:70,name:"numberOfSecondaryAttributes",parser:d},{code:70,name:"isReallyLocked",parser:p},{code:70,name:"mtextFlag",parser:d},{code:280,name:"isDuplicatedEntriesKeep",parser:p},{code:100},{code:280,name:"lockPositionFlag",parser:p},{code:210,name:"extrusionDirection",parser:u},{code:11,name:"alignmentPoint",parser:u},{code:74,name:"verticalJustification",parser:d},{code:72,name:"horizontalJustification",parser:d},{code:71,name:"textGenerationFlag",parser:d},{code:7,name:"textStyle",parser:d},{code:51,name:"obliqueAngle",parser:d},{code:41,name:"scale",parser:d},{code:50,name:"rotation",parser:d},{code:73},{code:70,name:"attributeFlag",parser:d},{code:2,name:"tag",parser:d},{code:280},{code:100,name:"subclassMarker",parser:d},{code:1,name:"text",parser:d},{code:40,name:"textHeight",parser:d},{code:10,name:"startPoint",parser:u},{code:39,name:"thickness",parser:d},{code:100},...au];class aw{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){aR(this,"parser",c(aF,ak))}}function aV(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}aR(aw,"ForEntityName","ATTRIB");let aB={thickness:0,extrusionDirection:{x:0,y:0,z:1}},aH=[{code:210,name:"extrusionDirection",parser:u},{code:40,name:"radius",parser:d},{code:10,name:"center",parser:u},{code:39,name:"thickness",parser:d},{code:100,name:"subclassMarker",parser:d},...au];class aG{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){aV(this,"parser",c(aH,aB))}}aV(aG,"ForEntityName","CIRCLE");class aU{parseEntity(e,a){let r={};for(;!o(a,0,"EOF");){if(0===a.code){e.rewind();break}!function(e,a,r){switch(a.code){case 100:e.subclassMarker=a.value;break;case 280:e.version=a.value;break;case 2:e.name=a.value;break;case 10:e.definitionPoint=s(r);break;case 11:e.textPoint=s(r);break;case 12:e.insertionPoint=s(r);break;case 13:e.subDefinitionPoint1=s(r);break;case 14:e.subDefinitionPoint2=s(r);break;case 15:e.centerPoint=s(r);break;case 16:e.arcPoint=s(r);break;case 70:e.dimensionType=a.value;break;case 71:e.attachmentPoint=a.value;break;case 72:e.textLineSpacingStyle=a.value;break;case 40:e.leaderLength=a.value;break;case 41:e.textLineSpacingFactor=a.value;break;case 42:e.measurement=a.value;break;case 1:e.text=a.value;break;case 50:e.rotationAngle=a.value;break;case 52:e.obliqueAngle=a.value;break;case 53:e.textRotation=a.value;break;case 51:e.ocsRotation=a.value;break;case 210:e.extrusionDirection=s(r);break;case 3:e.styleName=a.value;break;default:aP(e,a,r)}}(r,a,e),a=e.next()}return r}}function aW(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}g="DIMENSION",(O="ForEntityName")in aU?Object.defineProperty(aU,O,{value:g,enumerable:!0,configurable:!0,writable:!0}):aU[O]=g;let aY={extrusionDirection:{x:0,y:0,z:1}},aj=[{code:42,name:"endAngle",parser:d},{code:41,name:"startAngle",parser:d},{code:40,name:"axisRatio",parser:d},{code:210,name:"extrusionDirection",parser:u},{code:11,name:"majorAxisEndPoint",parser:u},{code:10,name:"center",parser:u},{code:100,name:"subclassMarker",parser:d},...au];class aX{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){aW(this,"parser",c(aj,aY))}}function az(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}aW(aX,"ForEntityName","ELLIPSE"),(y=e$||(e$={}))[y.First=1]="First",y[y.Second=2]="Second",y[y.Third=4]="Third",y[y.Fourth=8]="Fourth";let aK=[{code:13,name:"vertices.3",parser:u},{code:12,name:"vertices.2",parser:u},{code:11,name:"vertices.1",parser:u},{code:10,name:"vertices.0",parser:u},{code:100,name:"subclassMarker",parser:d},...au];class aZ{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){az(this,"parser",c(aK))}}az(aZ,"ForEntityName","3DFACE");let aJ=[{code:330,name:"sourceBoundaryObjects",parser:d,isMultiple:!0},{code:97,name:"numberOfSourceBoundaryObjects",parser:d}],a$=[{code:11,name:"end",parser:u},{code:10,name:"start",parser:u}],aq=[{code:73,name:"isCCW",parser:p},{code:51,name:"endAngle",parser:d},{code:50,name:"startAngle",parser:d},{code:40,name:"radius",parser:d},{code:10,name:"center",parser:u}],aQ=[{code:73,name:"isCCW",parser:p},{code:51,name:"endAngle",parser:d},{code:50,name:"startAngle",parser:d},{code:40,name:"lengthOfMinorAxis",parser:d},{code:11,name:"end",parser:u},{code:10,name:"center",parser:u}],a0=[{code:13,name:"endTangent",parser:u},{code:12,name:"startTangent",parser:u},{code:11,name:"fitDatum",isMultiple:!0,parser:u},{code:97,name:"numberOfFitData",parser:d},{code:10,name:"controlPoints",isMultiple:!0,parser(e,a){let r={...s(a),weight:1};return 42===(e=a.next()).code?r.weight=e.value:a.rewind(),r}},{code:40,name:"knots",isMultiple:!0,parser:d},{code:96,name:"numberOfControlPoints",parser:d},{code:95,name:"numberOfKnots",parser:d},{code:74,name:"isPeriodic",parser:p},{code:73,name:"splineFlag",parser:d},{code:94,name:"degree",parser:d}],a1={[ek.Line]:a$,[ek.Circular]:aq,[ek.Elliptic]:aQ,[ek.Spline]:a0},a4=[...aJ,{code:72,name:"edges",parser(e,a){let r={type:e.value},t=c(a1[r.type]);if(!t)throw Error(`Invalid edge type ${r.type}`);return t(e=a.next(),a,r),r},isMultiple:!0},{code:93,name:"numberOfEdges",parser:d}],a2=[...aJ,{code:10,name:"vertices",parser(e,a){let r={...s(a),bulge:0};return 42===(e=a.next()).code?r.bulge=e.value:a.rewind(),r},isMultiple:!0},{code:93,name:"numberOfVertices",parser:d},{code:73,name:"isClosed",parser:p},{code:72,name:"hasBulge",parser:p}],a3=[{code:49,name:"dashLengths",parser:d,isMultiple:!0},{code:79,name:"numberOfDashLengths",parser:d},{code:45,name:"offset",parser:a7},{code:43,name:"base",parser:a7},{code:53,name:"angle",parser:d}];function a7(e,a){let r=e.code+1,t={x:e.value,y:1};return(e=a.next()).code===r?t.y=e.value:a.rewind(),t}function a5(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}let a6={extrusionDirection:{x:0,y:0,z:1},gradientRotation:0,colorTint:0},a9=[{code:470},{code:463},{code:462,name:"colorTint",parser:d},{code:461,name:"gradientDefinition",parser:d},{code:460,name:"gradientRotation",parser:d},{code:453,name:"numberOfColors",parser:d},{code:452,name:"gradientColorFlag",parser:d},{code:451},{code:450,name:"gradientFlag",parser:d},{code:10,name:"seedPoints",parser:u,isMultiple:!0},{code:99},{code:11,name:"offsetVector",parser:u},{code:98,name:"numberOfSeedPoints",parser:d},{code:47,name:"pixelSize",parser:d},{code:53,name:"definitionLines",parser:function(e,a){let r={};return c(a3)(e,a,r),r},isMultiple:!0},{code:78,name:"numberOfDefinitionLines",parser:d},{code:77,name:"isDouble",parser:p},{code:73,name:"isAnnotated",parser:p},{code:41,name:"patternScale",parser:d},{code:52,name:"patternAngle",parser:d},{code:76,name:"patternType",parser:d},{code:75,name:"hatchStyle",parser:d},{code:92,name:"boundaryPaths",parser:function(e,a){let r={boundaryPathTypeFlag:e.value},t=r.boundaryPathTypeFlag&eR.Polyline;return(e=a.next(),t)?c(a2)(e,a,r):c(a4)(e,a,r),r},isMultiple:!0},{code:91,name:"numberOfBoundaryPaths",parser:d},{code:71,name:"associativity",parser:d},{code:63,name:"patternFillColor",parser:d},{code:70,name:"solidFill",parser:d},{code:2,name:"patternName",parser:d},{code:210,name:"extrusionDirection",parser:u},{code:10,name:"elevationPoint",parser:u},{code:100,name:"subclassMarker",parser:d,pushContext:!0},...au];class a8{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){a5(this,"parser",c(a9,a6))}}function re(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}a5(a8,"ForEntityName","HATCH"),(S=eq||(eq={}))[S.ShowImage=1]="ShowImage",S[S.ShowImageWhenNotAlignedWithScreen=2]="ShowImageWhenNotAlignedWithScreen",S[S.UseClippingBoundary=4]="UseClippingBoundary",S[S.TransparencyIsOn=8]="TransparencyIsOn",(N=eQ||(eQ={}))[N.Rectangular=1]="Rectangular",N[N.Polygonal=2]="Polygonal",(_=e0||(e0={}))[_.Outside=0]="Outside",_[_.Inside=1]="Inside";let ra={brightness:50,contrast:50,fade:0,clippingBoundaryPath:[]},rr=[{code:290,name:"clipMode",parser:d},{code:14,name:"clippingBoundaryPath",isMultiple:!0,parser:u},{code:91,name:"countBoundaryPoints",parser:d},{code:71,name:"clippingBoundaryType",parser:d},{code:360,name:"imageDefReactorHandle",parser:d},{code:283,name:"fade",parser:d},{code:282,name:"contrast",parser:d},{code:281,name:"brightness",parser:d},{code:280,name:"isClipped",parser:p},{code:70,name:"flags",parser:d},{code:340,name:"imageDefHandle",parser:d},{code:13,name:"imageSize",parser:u},{code:12,name:"vPixel",parser:u},{code:11,name:"uPixel",parser:u},{code:10,name:"position",parser:u},{code:90,name:"version",parser:d},{code:100,name:"subclassMarker",parser:d},...au];class rt{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){re(this,"parser",c(rr,ra))}}function rn(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}re(rt,"ForEntityName","IMAGE");let ro={xScale:1,yScale:1,zScale:1,rotation:0,columnCount:0,rowCount:0,columnSpacing:0,rowSpacing:0,extrusionDirection:{x:0,y:0,z:1}},rs=[{code:210,name:"extrusionDirection",parser:u},{code:45,name:"rowSpacing",parser:d},{code:44,name:"columnSpacing",parser:d},{code:71,name:"rowCount",parser:d},{code:70,name:"columnCount",parser:d},{code:50,name:"rotation",parser:d},{code:43,name:"zScale",parser:d},{code:42,name:"yScale",parser:d},{code:41,name:"xScale",parser:d},{code:10,name:"insertionPoint",parser:u},{code:2,name:"name",parser:d},{code:66,name:"isVariableAttributes",parser:p},{code:100,name:"subclassMarker",parser:d},...au];class ri{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rn(this,"parser",c(rs,ro))}}function rc(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rn(ri,"ForEntityName","INSERT");let rl={isArrowheadEnabled:!0},rd=[{code:213,name:"offsetFromAnnotation",parser:u},{code:212,name:"offsetFromBlock",parser:u},{code:211,name:"horizontalDirection",parser:u},{code:210,name:"normal",parser:u},{code:340,name:"associatedAnnotation",parser:d},{code:77,name:"byBlockColor",parser:d},{code:10,name:"vertices",parser:u,isMultiple:!0},{code:76,name:"numberOfVertices",parser:d},{code:41,name:"textWidth",parser:d},{code:40,name:"textHeight",parser:d},{code:75,name:"isHooklineExists",parser:p},{code:74,name:"isHooklineSameDirection",parser:p},{code:73,name:"leaderCreationFlag",parser:d},{code:72,name:"isSpline",parser:p},{code:71,name:"isArrowheadEnabled",parser:p},{code:3,name:"styleName",parser:d},{code:100,name:"subclassMarker",parser:d},...au];class ru{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rc(this,"parser",c(rd,rl))}}function rp(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rc(ru,"ForEntityName","LEADER"),(L=e1||(e1={}))[L.TextAnnotation=0]="TextAnnotation",L[L.ToleranceAnnotation=1]="ToleranceAnnotation",L[L.BlockReferenceAnnotation=2]="BlockReferenceAnnotation",L[L.NoAnnotation=3]="NoAnnotation";let rm={thickness:0,extrusionDirection:{x:0,y:0,z:1}},rE=[{code:210,name:"extrusionDirection",parser:u},{code:11,name:"endPoint",parser:u},{code:10,name:"startPoint",parser:u},{code:39,name:"thickness",parser:d},{code:100,name:"subclassMarker",parser:d},...au];class rh{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rp(this,"parser",c(rE,rm))}}rp(rh,"ForEntityName","LINE"),(A=e4||(e4={}))[A.IS_CLOSED=1]="IS_CLOSED",A[A.PLINE_GEN=128]="PLINE_GEN";let rI={flag:0,elevation:0,thickness:0,extrusionDirection:{x:0,y:0,z:1},vertices:[]},rf={bulge:0},rb=[{code:42,name:"bulge",parser:d},{code:41,name:"endWidth",parser:d},{code:40,name:"startWidth",parser:d},{code:91,name:"id",parser:d},{code:20,name:"y",parser:d},{code:10,name:"x",parser:d}],rT=[{code:210,name:"extrusionDirection",parser:u},{code:10,name:"vertices",isMultiple:!0,parser(e,a){let r={};return c(rb,rf)(e,a,r),r}},{code:39,name:"thickness",parser:d},{code:38,name:"elevation",parser:d},{code:43,name:"constantWidth",parser:d},{code:70,name:"flag",parser:d},{code:90,name:"numberOfVertices",parser:d},{code:100,name:"subclassMarker",parser:d},...au];class rD{parseEntity(e,a){let r={};return c(rT,rI)(a,e,r),r}}function rO(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}C="LWPOLYLINE",(P="ForEntityName")in rD?Object.defineProperty(rD,P,{value:C,enumerable:!0,configurable:!0,writable:!0}):rD[P]=C;let rg={thickness:0,extrusionDirection:{x:0,y:0,z:1},angle:0},ry=[{code:50,name:"angle",parser:d},{code:210,name:"extrusionDirection",parser:u},{code:39,name:"thickness",parser:d},{code:10,name:"position",parser:u},{code:100,name:"subclassMarker",parser:d},...au];class rS{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rO(this,"parser",c(ry,rg))}}function rN(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rO(rS,"ForEntityName","POINT"),(v=e2||(e2={}))[v.CLOSED_POLYLINE=1]="CLOSED_POLYLINE",v[v.CURVE_FIT=2]="CURVE_FIT",v[v.SPLINE_FIT=4]="SPLINE_FIT",v[v.POLYLINE_3D=8]="POLYLINE_3D",v[v.POLYGON_3D=16]="POLYGON_3D",v[v.CLOSED_POLYGON=32]="CLOSED_POLYGON",v[v.POLYFACE=64]="POLYFACE",v[v.CONTINUOUS=128]="CONTINUOUS",(M=e3||(e3={}))[M.NONE=0]="NONE",M[M.QUADRATIC=5]="QUADRATIC",M[M.CUBIC=6]="CUBIC",M[M.BEZIER=8]="BEZIER",(x=e7||(e7={}))[x.CREATED_BY_CURVE_FIT=1]="CREATED_BY_CURVE_FIT",x[x.TANGENT_DEFINED=2]="TANGENT_DEFINED",x[x.NOT_USED=4]="NOT_USED",x[x.CREATED_BY_SPLINE_FIT=8]="CREATED_BY_SPLINE_FIT",x[x.SPLINE_CONTROL_POINT=16]="SPLINE_CONTROL_POINT",x[x.FOR_POLYLINE=32]="FOR_POLYLINE",x[x.FOR_POLYGON=64]="FOR_POLYGON",x[x.POLYFACE=128]="POLYFACE";let r_={startWidth:0,endWidth:0,bulge:0},rL=[{code:91,name:"id",parser:d},{code:[...aL(71,75)],name:"faces",isMultiple:!0,parser:d},{code:50,name:"tangentDirection",parser:d},{code:70,name:"flag",parser:d},{code:42,name:"bulge",parser:d},{code:41,name:"endWidth",parser:d},{code:40,name:"startWidth",parser:d},{code:30,name:"z",parser:d},{code:20,name:"y",parser:d},{code:10,name:"x",parser:d},{code:100,name:"subclassMarker",parser:d},{code:100},...au];class rA{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rN(this,"parser",c(rL,r_))}}function rP(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rN(rA,"ForEntityName","VERTEX");let rC={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:[]},rv=[{code:0,name:"vertices",isMultiple:!0,parser:(e,a)=>o(e,0,"VERTEX")?(e=a.next(),new rA().parseEntity(a,e)):i},{code:210,name:"extrusionDirection",parser:u},{code:75,name:"smoothType",parser:d},{code:74,name:"surfaceNDensity",parser:d},{code:73,name:"surfaceMDensity",parser:d},{code:72,name:"meshNVertexCount",parser:d},{code:71,name:"meshMVertexCount",parser:d},{code:41,name:"endWidth",parser:d},{code:40,name:"startWidth",parser:d},{code:70,name:"flag",parser:d},{code:39,name:"thickness",parser:d},{code:30,name:"elevation",parser:d},{code:20},{code:10},{code:66},{code:100,name:"subclassMarker",parser:d},...au];class rM{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rP(this,"parser",c(rv,rC))}}function rx(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rP(rM,"ForEntityName","POLYLINE");let rR=[{code:11,name:"direction",parser:u},{code:10,name:"position",parser:u},{code:100,name:"subclassMarker",parser:d},...au];class rk{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rx(this,"parser",c(rR))}}function rF(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rx(rk,"ForEntityName","RAY");let rw={vertices:[],backLineVertices:[]},rV=[{code:360,name:"geometrySettingHardId",parser:d},{code:12,name:"backLineVertices",isMultiple:!0,parser:u},{code:93,name:"numberOfBackLineVertices",parser:d},{code:11,name:"vertices",isMultiple:!0,parser:u},{code:92,name:"verticesCount",parser:d},{code:[63,411],name:"indicatorColor",parser:d},{code:70,name:"indicatorTransparency",parser:d},{code:41,name:"bottomHeight",parser:d},{code:40,name:"topHeight",parser:d},{code:10,name:"verticalDirection",parser:u},{code:1,name:"name",parser:d},{code:91,name:"flag",parser:d},{code:90,name:"state",parser:d},{code:100,name:"subclassMarker",parser:d},...au];class rB{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rF(this,"parser",c(rV,rw))}}function rH(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rF(rB,"ForEntityName","SECTION");let rG={points:[],thickness:0,extrusionDirection:{x:0,y:0,z:1}},rU=[{code:210,name:"extrusionDirection",parser:u},{code:39,name:"thickness",parser:d},{code:[...aL(10,14)],name:"points",isMultiple:!0,parser:u},{code:100,name:"subclassMarker",parser:d},...au];class rW{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rH(this,"parser",c(rU,rG))}}function rY(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rH(rW,"ForEntityName","SOLID"),(R=e5||(e5={}))[R.NONE=0]="NONE",R[R.CLOSED=1]="CLOSED",R[R.PERIODIC=2]="PERIODIC",R[R.RATIONAL=4]="RATIONAL",R[R.PLANAR=8]="PLANAR",R[R.LINEAR=16]="LINEAR";let rj={knotTolerance:1e-6,controlTolerance:1e-6,fitTolerance:1e-9,knotValues:[],controlPoints:[],fitPoints:[]},rX=[{code:11,name:"fitPoints",isMultiple:!0,parser:u},{code:10,name:"controlPoints",isMultiple:!0,parser:u},{code:41,name:"weights",isMultiple:!0,parser:d},{code:40,name:"knots",isMultiple:!0,parser:d},{code:13,name:"endTangent",parser:u},{code:12,name:"startTangent",parser:u},{code:44,name:"fitTolerance",parser:d},{code:43,name:"controlTolerance",parser:d},{code:42,name:"knotTolerance",parser:d},{code:74,name:"numberOfFitPoints",parser:d},{code:73,name:"numberOfControlPoints",parser:d},{code:72,name:"numberOfKnots",parser:d},{code:71,name:"degree",parser:d},{code:70,name:"flag",parser:d},{code:210,name:"normal",parser:u},{code:100,name:"subclassMarker",parser:d},...au];class rz{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rY(this,"parser",c(rX,rj))}}rY(rz,"ForEntityName","SPLINE");class rK{parseEntity(e,a){let r={};for(;"EOF"!==a;){if(0===a.code){e.rewind();break}!function(e,a,r){if("EOF"===r)return!1;switch(r.code){case 0:return!1;case 100:e.subclassMarker=r.value;break;case 10:e.viewportCenter=aA(s(a));break;case 40:e.width=r.value;break;case 41:e.height=r.value;break;case 68:e.status=r.value;break;case 69:e.viewportId=r.value;break;case 12:e.displayCenter=s(a);break;case 13:e.snapBase=s(a);break;case 14:e.snapSpacing=s(a);break;case 15:e.gridSpacing=s(a);break;case 16:e.viewDirection=aA(s(a));break;case 17:e.targetPoint=aA(s(a));break;case 42:e.perspectiveLensLength=r.value;break;case 43:e.frontClipZ=r.value;break;case 44:e.backClipZ=r.value;break;case 45:e.viewHeight=r.value;break;case 50:e.snapAngle=r.value;break;case 51:e.viewTwistAngle=r.value;break;case 72:e.circleZoomPercent=r.value;break;case 331:e.frozenLayerIds??(e.frozenLayerIds=[]),e.frozenLayerIds.push(r.value);break;case 90:e.statusBitFlags=r.value;break;case 340:e.clippingBoundaryId=r.value;break;case 1:e.sheetName=r.value;break;case 281:e.renderMode=r.value;break;case 71:e.ucsPerViewport=r.value;break;case 110:e.ucsOrigin=aA(s(a));break;case 111:e.ucsXAxis=aA(s(a));break;case 112:e.ucsYAxis=aA(s(a));break;case 345:e.ucsId=r.value;break;case 346:e.ucsBaseId=r.value;break;case 79:e.orthographicType=r.value;break;case 146:e.elevation=r.value;break;case 170:e.shadePlotMode=r.value;break;case 61:e.majorGridFrequency=r.value;break;case 332:e.backgroundId=r.value;break;case 333:e.shadePlotId=r.value;break;case 348:e.visualStyleId=r.value;break;case 292:e.isDefaultLighting=!!r.value;break;case 282:e.defaultLightingType=r.value;break;case 141:e.brightness=r.value;break;case 142:e.contrast=r.value;break;case 63:case 421:case 431:e.ambientLightColor=r.value;break;case 361:e.sunId=r.value;break;case 335:case 343:case 344:case 91:e.softPointer=r.value}return!0}(r,e,a)&&aP(r,a,e),a=e.next()}return r}}function rZ(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}F="VIEWPORT",(k="ForEntityName")in rK?Object.defineProperty(rK,k,{value:F,enumerable:!0,configurable:!0,writable:!0}):rK[k]=F;let rJ={},r$=[{code:170,name:"multileaderType",parser:d},{code:291,name:"doglegEnabled",parser:p},{code:40,name:"doglegLength",parser:d},{code:172,name:"contentType",parser:d},{code:3,name:"textContent",parser:d},{code:12,name:"textAnchor",parser:u},{code:344,name:"blockHandle",parser:d},{code:15,name:"blockPosition",parser:u},{code:302,name:"leaderSections",parser:function(e,a,r){let t;let n={leaderLines:[]};for(;a.hasNext()&&303!==(t=a.next()).code;){switch(t.code){case 10:n.landingPoint=(t.value,s(a));break;case 11:n.doglegVector=(t.value,s(a));break;case 40:n.doglegLength=t.value;break;case 304:n.leaderLines.push(function(e,a,r){let t;let n={vertices:[]};for(;a.hasNext()&&305!==(t=a.next()).code;)10===t.code&&n.vertices.push((t.value,s(a)));return n}(0,a))}}return n},isMultiple:!0},...au];class rq{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rZ(this,"parser",c(r$,rJ))}}rZ(rq,"ForEntityName","MULTILEADER");let rQ=Object.fromEntries([ah,ay,aw,aG,aU,aX,aZ,rt,ri,ru,rh,rD,ax,rq,rS,rM,rk,rB,rW,rz,aT,a8,rA,rK].map(e=>[e.ForEntityName,new e]));function r0(e,a){let r=[];for(;!o(e,0,"EOF");){if(0===e.code){if("ENDBLK"===e.value||"ENDSEC"===e.value){a.rewind();break}let t=rQ[e.value];if(t){let n=e.value;e=a.next();let o=t.parseEntity(a,e);o.type=n,aN(o),r.push(o)}else console.warn(`Unsupported ENTITY type: ${e.value}`)}e=a.next()}return r}function r1(e,a){let r={};for(;!o(e,0,"EOF")&&!o(e,0,"ENDSEC");){if(o(e,0,"BLOCK")){let t=r4(e=a.next(),a);aN(t),t.name&&(r[t.name]=t)}e=a.next()}return r}function r4(e,a){let r={};for(;!o(e,0,"EOF");){if(o(e,0,"ENDBLK")){for(e=a.next();!o(e,0,"EOF");){if(o(e,100,"AcDbBlockEnd"))return r;e=a.next()}break}switch(e.code){case 1:r.xrefPath=e.value;break;case 2:r.name=e.value;break;case 3:r.name2=e.value;break;case 5:r.handle=e.value;break;case 8:r.layer=e.value;break;case 10:r.position=s(a);break;case 67:r.paperSpace=!!e.value&&1==e.value;break;case 70:0!==e.value&&(r.type=e.value);break;case 100:break;case 330:r.ownerHandle=e.value;break;case 0:r.entities=r0(e,a)}e=a.next()}return r}function r2(e,a){let r=null,t={};for(;!o(e,0,"EOF")&&!o(e,0,"ENDSEC");)9===e.code?r=e.value:10===e.code?t[r]=s(a):t[r]=e.value,e=a.next();return t}(w=e6||(e6={}))[w.NOT_APPLICABLE=0]="NOT_APPLICABLE",w[w.KEEP_EXISTING=1]="KEEP_EXISTING",w[w.USE_CLONE=2]="USE_CLONE",w[w.XREF_VALUE_NAME=3]="XREF_VALUE_NAME",w[w.VALUE_NAME=4]="VALUE_NAME",w[w.UNMANGLE_NAME=5]="UNMANGLE_NAME";let r3=[{code:3,name:"entries",parser:(e,a)=>{let r={name:e.value};return 350===(e=a.next()).code?r.objectId=e.value:a.rewind(),r},isMultiple:!0},{code:281,name:"recordCloneFlag",parser:d},{code:280,name:"isHardOwned",parser:p},{code:100,name:"subclassMarker",parser:d}];(V=e9||(e9={}))[V.PSLTSCALE=1]="PSLTSCALE",V[V.LIMCHECK=2]="LIMCHECK",(B=e8||(e8={}))[B.INCHES=0]="INCHES",B[B.MILLIMETERS=1]="MILLIMETERS",B[B.PIXELS=2]="PIXELS",(H=ae||(ae={}))[H.LAST_SCREEN_DISPLAY=0]="LAST_SCREEN_DISPLAY",H[H.DRAWING_EXTENTS=1]="DRAWING_EXTENTS",H[H.DRAWING_LIMITS=2]="DRAWING_LIMITS",H[H.VIEW_SPECIFIED=3]="VIEW_SPECIFIED",H[H.WINDOW_SPECIFIED=4]="WINDOW_SPECIFIED",H[H.LAYOUT_INFORMATION=5]="LAYOUT_INFORMATION",(G=aa||(aa={}))[G.AS_DISPLAYED=0]="AS_DISPLAYED",G[G.WIREFRAME=1]="WIREFRAME",G[G.HIDDEN=2]="HIDDEN",G[G.RENDERED=3]="RENDERED",(U=ar||(ar={}))[U.DRAFT=0]="DRAFT",U[U.PREVIEW=1]="PREVIEW",U[U.NORMAL=2]="NORMAL",U[U.PRESENTATION=3]="PRESENTATION",U[U.MAXIMUM=4]="MAXIMUM",U[U.CUSTOM=5]="CUSTOM";let r7=[{code:333,name:"shadePlotId",parser:d},{code:149,name:"imageOriginY",parser:d},{code:148,name:"imageOriginX",parser:d},{code:147,name:"scaleFactor",parser:d},{code:78,name:"shadePlotCustomDPI",parser:d},{code:77,name:"shadePlotResolution",parser:d},{code:76,name:"shadePlotMode",parser:d},{code:75,name:"standardScaleType",parser:d},{code:7,name:"currentStyleSheet",parser:d},{code:74,name:"plotType",parser:d},{code:73,name:"plotRotation",parser:d},{code:72,name:"paperUnit",parser:d},{code:70,name:"layoutFlag",parser:d},{code:143,name:"printScaleDenominator",parser:d},{code:142,name:"printScaleNominator",parser:d},{code:141,name:"windowAreaYMax",parser:d},{code:140,name:"windowAreaYMin",parser:d},{code:49,name:"windowAreaXMax",parser:d},{code:48,name:"windowAreaXMin",parser:d},{code:47,name:"plotOriginY",parser:d},{code:46,name:"plotOriginX",parser:d},{code:45,name:"paperHeight",parser:d},{code:44,name:"paperWidth",parser:d},{code:43,name:"marginTop",parser:d},{code:42,name:"marginRight",parser:d},{code:41,name:"marginBottom",parser:d},{code:40,name:"marginLeft",parser:d},{code:6,name:"plotViewName",parser:d},{code:4,name:"paperSize",parser:d},{code:2,name:"configName",parser:d},{code:1,name:"pageSetupName",parser:d},{code:100,name:"subclassMarker",parser:d}],r5=[{code:333,name:"shadePlotId",parser:d},{code:346,name:"orthographicUcsId",parser:d},{code:345,name:"namedUcsId",parser:d},{code:331,name:"viewportId",parser:d},{code:330,name:"paperSpaceTableId",parser:d},{code:76,name:"orthographicType",parser:d},{code:17,name:"ucsYAxis",parser:u},{code:16,name:"ucsXAxis",parser:u},{code:13,name:"ucsOrigin",parser:u},{code:146,name:"elevation",parser:d},{code:15,name:"maxExtent",parser:u},{code:14,name:"minExtent",parser:u},{code:12,name:"insertionBase",parser:u},{code:11,name:"maxLimit",parser:u},{code:10,name:"minLimit",parser:u},{code:71,name:"tabOrder",parser:d},{code:70,name:"controlFlag",parser:d},{code:1,name:"layoutName",parser:d},{code:100,name:"subclassMarker",parser:d},...r7],r6=[{code:330,name:"ownerObjectId",parser:d},{code:102},{code:360,name:"ownerDictionaryIdHard",parser:d},{code:102},{code:102},{code:330,name:"ownerDictionaryIdSoft",parser:d},{code:102},{code:102},{code:102},{code:5,name:"handle",parser:d}];function r9(e){return"AcDbDictionary"===e.subclassMarker}let r8={LAYOUT:r5,PLOTSETTINGS:r7,DICTIONARY:r3};function te(e,a){let r=[];for(;0!==e.code||!["EOF","ENDSEC"].includes(e.value);){let t=e.value,n=r8[t];if(0===e.code&&n?.length){let o=c([...r6,...n]),s={name:t};o(e=a.next(),a,s)?(r.push(s),e=a.peek()):e=a.next()}else e=a.next()}return{byName:a_(r,({name:e})=>e),byTree:function(e){let a=Object.fromEntries(e.map(e=>[e.handle,e]));for(let r of e)(!r9(r)||"0"!==r.ownerDictionaryIdSoft)&&(r.ownerDictionaryIdSoft&&(r.ownerDictionarySoft=a[r.ownerDictionaryIdSoft]),r.ownerDictionaryIdHard&&(r.ownerDictionaryHard=a[r.ownerDictionaryIdHard]),r.ownerObjectId&&(r.ownerObject=a[r.ownerObjectId])),function(e,a){r9(e)&&e.entries&&(e.entries=Object.fromEntries(e.entries.map(({name:e,objectId:r})=>[e,a[r]])))}(r,a);return e[0]}(r)}}let ta=[{code:100,name:"subclassMarker",parser:d},{code:330,name:"ownerObjectId",parser:d},{code:102,parser(e,a){for(;!o(e,0,"EOF")&&!o(e,102,"}");)e=a.next()}},{code:5,name:"handle",parser:d}],tr=c([{code:310,name:"bmpPreview",parser:d},{code:281,name:"scalability",parser:d},{code:280,name:"explodability",parser:d},{code:70,name:"insertionUnits",parser:d},{code:340,name:"layoutObjects",parser:d},{code:2,name:"name",parser:d},{code:100,name:"subclassMarker",parser:d},...ta]),tt=[{name:"DIMPOST",code:3},{name:"DIMAPOST",code:4},{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:.25},{name:"DIMEXO",code:42,defaultValue:.625,defaultValueImperial:.0625},{name:"DIMDLI",code:43,defaultValue:3.75,defaultValueImperial:.38},{name:"DIMEXE",code:44,defaultValue:2.25,defaultValueImperial:.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:"DIMTXT",code:140,defaultValue:2.5,defaultValueImperial:.28},{name:"DIMCEN",code:141,defaultValue:2.5,defaultValueImperial:.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:.625,defaultValueImperial:.09},{name:"DIMALTRND",code:148,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:eg.Above,defaultValueImperial:eg.Center},{name:"DIMZIN",code:78,defaultValue:ey.Trailing,defaultValueImperial:ey.Feet},{name:"DIMAZIN",code:79,defaultValue:eS.None},{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},{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:2,defaultValueImperial:4},{name:"DIMAUNIT",code:275,defaultValue:0},{name:"DIMFRAC",code:276,defaultValue:0},{name:"DIMLUNIT",code:277,defaultValue:2},{name:"DIMDSEP",code:278,defaultValue:",",defaultValueImperial:"."},{name:"DIMJUST",code:280,defaultValue:eN.Center},{name:"DIMSD1",code:281,defaultValue:0},{name:"DIMSD2",code:282,defaultValue:0},{name:"DIMTOLJ",code:283,defaultValue:e_.Center},{name:"DIMTZIN",code:284,defaultValue:ey.Trailing,defaultValueImperial:ey.Feet},{name:"DIMALTZ",code:285,defaultValue:ey.Trailing},{name:"DIMALTTZ",code:286,defaultValue:ey.Trailing},{name:"DIMFIT",code:287},{name:"DIMUPT",code:288,defaultValue:0},{name:"DIMATFIT",code:289,defaultValue:3},{name:"DIMTXSTY",code:340},{name:"DIMLDRBLK",code:341},{name:"DIMBLK",code:342},{name:"DIMBLK1",code:343},{name:"DIMBLK2",code:344},{name:"DIMLWD",code:371,defaultValue:-2},{name:"DIMLWD",code:372,defaultValue:-2}],tn=c([...tt.map(e=>({...e,parser:d})),{code:70,name:"standardFlag",parser:d},{code:2,name:"name",parser:d},{code:100,name:"subclassMarker",parser:d},{code:105,name:"handle",parser:d},...ta.filter(e=>5!==e.code)]),to=c([{code:347,name:"materialObjectId",parser:d},{code:390,name:"plotStyleNameObjectId",parser:d},{code:370,name:"lineweight",parser:d},{code:290,name:"isPlotting",parser:p},{code:6,name:"lineType",parser:d},{code:62,name:"colorIndex",parser:d},{code:70,name:"standardFlag",parser:d},{code:2,name:"name",parser:d},{code:100,name:"subclassMarker",parser:d},...ta]);(W=at||(at={}))[W.NONE=0]="NONE",W[W.AbsoluteRotation=1]="AbsoluteRotation",W[W.TextEmbedded=2]="TextEmbedded",W[W.ShapeEmbedded=4]="ShapeEmbedded";let ts=c([{code:9,name:"text",parser:d},{code:45,name:"offsetY",parser:d},{code:44,name:"offsetX",parser:d},{code:50,name:"rotation",parser:d},{code:46,name:"scale",parser:d},{code:340,name:"styleObjectId",parser:d},{code:75,name:"shapeNumber",parser:d},{code:74,name:"elementTypeFlag",parser:d},{code:49,name:"elementLength",parser:d}],{elementTypeFlag:0,elementLength:0}),ti=c([{code:49,name:"pattern",parser(e,a){let r={};return ts(e,a,r),r},isMultiple:!0},{code:40,name:"totalPatternLength",parser:d},{code:73,name:"numberOfLineTypes",parser:d},{code:72,parser:d},{code:3,name:"description",parser:d},{code:70,name:"standardFlag",parser:d},{code:2,name:"name",parser:d},{code:100,name:"subclassMarker",parser:d},...ta]),tc=c([{code:1e3,name:"extendedFont",parser:d},{code:1001},{code:4,name:"bigFont",parser:d},{code:3,name:"font",parser:d},{code:42,name:"lastHeight",parser:d},{code:71,name:"textGenerationFlag",parser:d},{code:50,name:"obliqueAngle",parser:d},{code:41,name:"widthFactor",parser:d},{code:40,name:"fixedTextHeight",parser:d},{code:70,name:"standardFlag",parser:d},{code:2,name:"name",parser:d},{code:100,name:"subclassMarker",parser:d},...ta]),tl=c([{code:[63,421,431],name:"ambientColor",parser:d},{code:142,name:"contrast",parser:d},{code:141,name:"brightness",parser:d},{code:282,name:"defaultLightingType",parser:d},{code:292,name:"isDefaultLightingOn",parser:p},{code:348,name:"visualStyleObjectId",parser:d},{code:333,name:"shadePlotObjectId",parser:d},{code:332,name:"backgroundObjectId",parser:d},{code:61,name:"majorGridLines",parser:d},{code:170,name:"shadePlotSetting",parser:d},{code:146,name:"elevation",parser:d},{code:79,name:"orthographicType",parser:d},{code:112,name:"ucsYAxis",parser:u},{code:111,name:"ucsXAxis",parser:u},{code:110,name:"ucsOrigin",parser:u},{code:74,name:"ucsIconSetting",parser:d},{code:71,name:"viewMode",parser:d},{code:281,name:"renderMode",parser:d},{code:1,name:"styleSheet",parser:d},{code:[331,441],name:"frozenLayers",parser:d,isMultiple:!0},{code:72,name:"circleSides",parser:d},{code:51,name:"viewTwistAngle",parser:d},{code:50,name:"snapRotationAngle",parser:d},{code:45,name:"viewHeight",parser:d},{code:44,name:"backClippingPlane",parser:d},{code:43,name:"frontClippingPlane",parser:d},{code:42,name:"lensLength",parser:d},{code:17,name:"viewTarget",parser:u},{code:16,name:"viewDirectionFromTarget",parser:u},{code:15,name:"gridSpacing",parser:u},{code:14,name:"snapSpacing",parser:u},{code:13,name:"snapBasePoint",parser:u},{code:12,name:"center",parser:u},{code:11,name:"upperRightCorner",parser:u},{code:10,name:"lowerLeftCorner",parser:u},{code:70,name:"standardFlag",parser:d},{code:2,name:"name",parser:d},{code:100,name:"subclassMarker",parser:d},...ta]),td={BLOCK_RECORD:tr,DIMSTYLE:tn,LAYER:to,LTYPE:ti,STYLE:tc,VPORT:tl},tu=c([{code:70,name:"maxNumberOfEntries",parser:d},{code:100,name:"subclassMarker",parser:d},{code:330,name:"ownerObjectId",parser:d},{code:102},{code:360,isMultiple:!0},{code:102},{code:5,name:"handle",parser:d},{code:2,name:"name",parser:d}]);function tp(e,a){let r={};for(;!o(e,0,"EOF")&&!o(e,0,"ENDSEC");){if(o(e,0,"TABLE")){e=a.next();let t={entries:[]};tu(e,a,t),r[t.name]=t}if(o(e,0)&&!o(e,0,"ENDTAB")){let t=e.value;e=a.next();let n=td[t];if(!n){a.debug&&console.warn(`parseTable: Invalid table name '${t}'`),e=a.next();continue}let o={};n(e,a,o),r[t]?.entries.push(o)}e=a.next()}return r}function tm(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}class tE{next(){if(!this.hasNext())return this._eof?this.debug&&console.warn("Cannot call 'next' after EOF group has been read"):this.debug&&console.warn("Unexpected end of input: EOF group not read before end of file. Ended on code "+this._data[this._pointer]),{code:0,value:"EOF"};let e=parseInt(this._data[this._pointer++],10),a=th(e,this._data[this._pointer++]),r={code:e,value:a};return o(r,0,"EOF")&&(this._eof=!0),this.lastReadGroup=r,r}peek(){if(!this.hasNext()){if(this._eof)throw Error("Cannot call 'next' after EOF group has been read");throw Error("Unexpected end of input: EOF group not read before end of file. Ended on code "+this._data[this._pointer])}let e={code:parseInt(this._data[this._pointer]),value:0};return e.value=th(e.code,this._data[this._pointer+1]),e}rewind(e){e=e||1,this._pointer=this._pointer-2*e}hasNext(){return!this._eof&&!(this._pointer>this._data.length-2)}isEOF(){return this._eof}constructor(e,a){tm(this,"_pointer",void 0),tm(this,"_data",void 0),tm(this,"_eof",void 0),tm(this,"debug",!0),tm(this,"lastReadGroup",{code:0,value:0}),this._pointer=0,this._data=e,this._eof=!1,this.debug=a??!0}}function th(e,a){return e<=9?a:e>=10&&e<=59?parseFloat(a.trim()):e>=60&&e<=99?parseInt(a.trim()):e>=100&&e<=109?a:e>=110&&e<=149?parseFloat(a.trim()):e>=160&&e<=179?parseInt(a.trim()):e>=210&&e<=239?parseFloat(a.trim()):e>=270&&e<=289?parseInt(a.trim()):e>=290&&e<=299?function(e){if("0"===e)return!1;if("1"===e)return!0;throw TypeError("String '"+e+"' cannot be cast to Boolean type")}(a.trim()):e>=300&&e<=369?a:e>=370&&e<=389?parseInt(a.trim()):e>=390&&e<=399?a:e>=400&&e<=409?parseInt(a.trim()):e>=410&&e<=419?a:e>=420&&e<=429?parseInt(a.trim()):e>=430&&e<=439?a:e>=440&&e<=459?parseInt(a.trim()):e>=460&&e<=469?parseFloat(a.trim()):e>=470&&e<=481||999===e||e>=1e3&&e<=1009?a:e>=1010&&e<=1059?parseFloat(a.trim()):e>=1060&&e<=1071?parseInt(a.trim()):(console.log("WARNING: Group code does not have a defined type: %j",{code:e,value:a}),a)}function tI(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}class tf{parseStart(e){this.startCode=e.code}setPoint(e){if(this.code=e.code,this.value=e.value,this.startCode===this.code&&(this.x=this.value),this.startCode===this.code+10)this.y=this.value;else{let e={x:this.x??0,y:this.y??0,z:this.z??0};return this.reset(),e}if(this.startCode===this.code+20)this.z=this.value;else{let e={x:this.x??0,y:this.y??0,z:this.z??0};return this.reset(),e}}reset(){this.x=void 0,this.y=void 0,this.z=void 0}constructor(){tI(this,"point",{}),tI(this,"startCode",0),tI(this,"code",0),tI(this,"value",0),tI(this,"x",void 0),tI(this,"y",void 0),tI(this,"z",void 0)}}function tb(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}class tT{constructor(){tb(this,"encoding","utf-8"),tb(this,"encodingFailureFatal",!1)}}class tD extends Error{constructor(e,a,r){let t=`[Line ${a}]: ${e}`;r?.cause&&(t+=`
1
+ (q=eN||(eN={}))[q.None=0]="None",q[q.Anonymous=1]="Anonymous",q[q.NonConstant=2]="NonConstant",q[q.Xref=4]="Xref",q[q.XrefOverlay=8]="XrefOverlay",q[q.ExternallyDependent=16]="ExternallyDependent",q[q.ResolvedOrDependent=32]="ResolvedOrDependent",q[q.ReferencedXref=64]="ReferencedXref",(Q=eL||(eL={}))[Q.BYBLOCK=0]="BYBLOCK",Q[Q.BYLAYER=256]="BYLAYER";let e=-1,a=4,r=Math.PI/24;(ee=e_||(e_={}))[ee.Rotated=0]="Rotated",ee[ee.Aligned=1]="Aligned",ee[ee.Angular=2]="Angular",ee[ee.Diameter=3]="Diameter",ee[ee.Radius=4]="Radius",ee[ee.Angular3Point=5]="Angular3Point",ee[ee.Ordinate=6]="Ordinate",ee[ee.ReferenceIsExclusive=32]="ReferenceIsExclusive",ee[ee.IsOrdinateXTypeFlag=64]="IsOrdinateXTypeFlag",ee[ee.IsCustomTextPositionFlag=128]="IsCustomTextPositionFlag",(ea=eP||(eP={}))[ea.TopLeft=1]="TopLeft",ea[ea.TopCenter=2]="TopCenter",ea[ea.TopRight=3]="TopRight",ea[ea.MiddleLeft=4]="MiddleLeft",ea[ea.MiddleCenter=5]="MiddleCenter",ea[ea.MiddleRight=6]="MiddleRight",ea[ea.BottomLeft=7]="BottomLeft",ea[ea.BottomCenter=8]="BottomCenter",ea[ea.BottomRight=9]="BottomRight",(er=eA||(eA={}))[er.AtLeast=1]="AtLeast",er[er.Exact=2]="Exact",(et=eC||(eC={}))[et.Center=0]="Center",et[et.Above=1]="Above",et[et.Outside=2]="Outside",et[et.JIS=3]="JIS",et[et.Below=4]="Below",(en=ev||(ev={}))[en.Feet=0]="Feet",en[en.None=1]="None",en[en.Inch=2]="Inch",en[en.FeetAndInch=3]="FeetAndInch",en[en.Leading=4]="Leading",en[en.Trailing=8]="Trailing",en[en.LeadingAndTrailing=12]="LeadingAndTrailing",(eo=eM||(eM={}))[eo.None=0]="None",eo[eo.Leading=1]="Leading",eo[eo.Trailing=2]="Trailing",eo[eo.LeadingAndTrailing=3]="LeadingAndTrailing",(es=ex||(ex={}))[es.Center=0]="Center",es[es.Left=1]="Left",es[es.Right=2]="Right",es[es.OverFirst=3]="OverFirst",es[es.OverSecond=4]="OverSecond",(ei=eF||(eF={}))[ei.Bottom=0]="Bottom",ei[ei.Center=1]="Center",ei[ei.Top=2]="Top",(ec=ek||(ek={}))[ec.PatternFill=0]="PatternFill",ec[ec.SolidFill=1]="SolidFill",(el=eR||(eR={}))[el.NonAssociative=0]="NonAssociative",el[el.Associative=1]="Associative",(ed=ew||(ew={}))[ed.Normal=0]="Normal",ed[ed.Outer=1]="Outer",ed[ed.Ignore=2]="Ignore",(eu=eV||(eV={}))[eu.UserDefined=0]="UserDefined",eu[eu.Predefined=1]="Predefined",eu[eu.Custom=2]="Custom",(ep=eB||(eB={}))[ep.NotAnnotated=0]="NotAnnotated",ep[ep.Annotated=1]="Annotated",(em=eH||(eH={}))[em.Solid=0]="Solid",em[em.Gradient=1]="Gradient",(eE=eG||(eG={}))[eE.TwoColor=0]="TwoColor",eE[eE.OneColor=1]="OneColor",(eh=eU||(eU={}))[eh.Default=0]="Default",eh[eh.External=1]="External",eh[eh.Polyline=2]="Polyline",eh[eh.Derived=4]="Derived",eh[eh.Textbox=8]="Textbox",eh[eh.Outermost=16]="Outermost",(eI=eW||(eW={}))[eI.Line=1]="Line",eI[eI.Circular=2]="Circular",eI[eI.Elliptic=3]="Elliptic",eI[eI.Spline=4]="Spline",(eb=eY||(eY={}))[eb.Off=0]="Off",eb[eb.Solid=1]="Solid",eb[eb.Dashed=2]="Dashed",eb[eb.Dotted=3]="Dotted",eb[eb.ShotDash=4]="ShotDash",eb[eb.MediumDash=5]="MediumDash",eb[eb.LongDash=6]="LongDash",eb[eb.DoubleShortDash=7]="DoubleShortDash",eb[eb.DoubleMediumDash=8]="DoubleMediumDash",eb[eb.DoubleLongDash=9]="DoubleLongDash",eb[eb.DoubleMediumLongDash=10]="DoubleMediumLongDash",eb[eb.SparseDot=11]="SparseDot";let t={DRAGVS:"NULL",INTERFERECOLOR:1,INTERFEREOBJVS:"Conceptual",INTERFEREVPVS:"3d Wireframe",OBSLTYPE:eY.Off,SHADEDIF:70};(ef=ej||(ej={}))[ef.Standard=-3]="Standard",ef[ef.ByLayer=-2]="ByLayer",ef[ef.ByBlock=-1]="ByBlock",(eg=eX||(eX={}))[eg.English=0]="English",eg[eg.Metric=1]="Metric";let n=65536;function o(e,a,r){return e.code===a&&(null==r||e.value===r)}function s(e){let a={};e.rewind();let r=e.next(),t=r.code;if(a.x=r.value,(r=e.next()).code!==t+10)throw Error("Expected code for point value to be 20 but got "+r.code+".");return(a.y=r.value,(r=e.next()).code!==t+20)?e.rewind():a.z=r.value,a}(eT=ez||(ez={}))[eT.PERSPECTIVE_MODE=1]="PERSPECTIVE_MODE",eT[eT.FRONT_CLIPPING=2]="FRONT_CLIPPING",eT[eT.BACK_CLIPPING=4]="BACK_CLIPPING",eT[eT.UCS_FOLLOW=8]="UCS_FOLLOW",eT[eT.FRONT_CLIP_NOT_AT_EYE=16]="FRONT_CLIP_NOT_AT_EYE",eT[eT.UCS_ICON_VISIBILITY=32]="UCS_ICON_VISIBILITY",eT[eT.UCS_ICON_AT_ORIGIN=64]="UCS_ICON_AT_ORIGIN",eT[eT.FAST_ZOOM=128]="FAST_ZOOM",eT[eT.SNAP_MODE=256]="SNAP_MODE",eT[eT.GRID_MODE=512]="GRID_MODE",eT[eT.ISOMETRIC_SNAP_STYLE=1024]="ISOMETRIC_SNAP_STYLE",eT[eT.HIDE_PLOT_MODE=2048]="HIDE_PLOT_MODE",eT[eT.K_ISO_PAIR_TOP=4096]="K_ISO_PAIR_TOP",eT[eT.K_ISO_PAIR_RIGHT=8192]="K_ISO_PAIR_RIGHT",eT[eT.VIEWPORT_ZOOM_LOCKING=16384]="VIEWPORT_ZOOM_LOCKING",eT[eT.UNUSED=32768]="UNUSED",eT[eT.NON_RECTANGULAR_CLIPPING=65536]="NON_RECTANGULAR_CLIPPING",eT[eT.VIEWPORT_OFF=131072]="VIEWPORT_OFF",eT[eT.GRID_BEYOND_DRAWING_LIMITS=262144]="GRID_BEYOND_DRAWING_LIMITS",eT[eT.ADAPTIVE_GRID_DISPLAY=524288]="ADAPTIVE_GRID_DISPLAY",eT[eT.SUBDIVISION_BELOW_SPACING=1048576]="SUBDIVISION_BELOW_SPACING",eT[eT.GRID_FOLLOWS_WORKPLANE=2097152]="GRID_FOLLOWS_WORKPLANE",(eD=eK||(eK={}))[eD.OPTIMIZED_2D=0]="OPTIMIZED_2D",eD[eD.WIREFRAME=1]="WIREFRAME",eD[eD.HIDDEN_LINE=2]="HIDDEN_LINE",eD[eD.FLAT_SHADED=3]="FLAT_SHADED",eD[eD.GOURAUD_SHADED=4]="GOURAUD_SHADED",eD[eD.FLAT_SHADED_WITH_WIREFRAME=5]="FLAT_SHADED_WITH_WIREFRAME",eD[eD.GOURAUD_SHADED_WITH_WIREFRAME=6]="GOURAUD_SHADED_WITH_WIREFRAME",(eO=eZ||(eZ={}))[eO.UCS_UNCHANGED=0]="UCS_UNCHANGED",eO[eO.HAS_OWN_UCS=1]="HAS_OWN_UCS",(ey=eJ||(eJ={}))[ey.NON_ORTHOGRAPHIC=0]="NON_ORTHOGRAPHIC",ey[ey.TOP=1]="TOP",ey[ey.BOTTOM=2]="BOTTOM",ey[ey.FRONT=3]="FRONT",ey[ey.BACK=4]="BACK",ey[ey.LEFT=5]="LEFT",ey[ey.RIGHT=6]="RIGHT",(eS=e$||(e$={}))[eS.ONE_DISTANT_LIGHT=0]="ONE_DISTANT_LIGHT",eS[eS.TWO_DISTANT_LIGHTS=1]="TWO_DISTANT_LIGHTS";let i=Symbol();function c(e,a){return(r,t,n)=>{let s=function(e,a=!1){return e.reduce((e,r)=>{r.pushContext&&e.push({});let t=e[e.length-1];for(let e of"number"==typeof r.code?[r.code]:r.code){let n=t[e]??(t[e]=[]);r.isMultiple&&n.length&&a&&console.warn(`Snippet ${n[n.length-1].name} for code(${e}) is shadowed by ${r.name}`),n.push(r)}return e},[{}])}(e,t.debug),c=!1,d=s.length-1;for(;!o(r,0,"EOF");){let e=function(e,a,r){return e.find((e,t)=>t>=r&&e[a]?.length)}(s,r.code,d),a=e?.[r.code],o=a?.[a.length-1];if(!e||!o){t.rewind();break}o.isMultiple||e[r.code].pop();let{name:u,parser:p,isMultiple:m,isReducible:E}=o,h=p?.(r,t,n);if(h===i){t.rewind();break}if(u){let[e,a]=function(e,a){let r=a.split(".");if(!r.length)throw Error("[parserGenerator::getObjectByPath] Invalid empty path");let t=e;for(let e=0;e<r.length-1;++e){let a=l(r[e]),n=l(r[e+1]);Object.prototype.hasOwnProperty.call(t,a)||("number"==typeof n?t[a]=[]:t[a]={}),t=t[a]}return[t,l(r[r.length-1])]}(n,u);m&&!E?(Object.prototype.hasOwnProperty.call(e,a)||(e[a]=[]),e[a].push(h)):e[a]=h}o.pushContext&&(d-=1),c=!0,r=t.next()}return a&&Object.setPrototypeOf(n,a),c}}function l(e){let a=Number.parseInt(e);return Number.isNaN(a)?e:a}function d({value:e}){return e}function u(e,a){return s(a)}function p({value:e}){return!!e}let m=[{code:1001,name:"xdata",parser:E}];function E(e,a){if(!o(e,1001))throw Error("XData must starts with code 1001");let r={appName:e.value,value:[]};e=a.next();let t=[r.value];for(;!o(e,0,"EOF")&&e.code>=1e3;){let r=t[t.length-1];switch(e.code){case 1002:"{"===e.value?t.push([]):(t.pop(),t[t.length-1]?.push(r));break;case 1e3:case 1004:case 1040:case 1070:case 1071:r.push({type:h(e.code),value:e.value});break;case 1003:r.push({name:"layer",type:h(e.code),value:e.value});break;case 1005:r.push({name:"handle",type:h(e.code),value:e.value});break;case 1010:r.push({type:h(e.code),value:s(a)});break;case 1011:r.push({name:"worldSpacePosition",type:h(e.code),value:s(a)});break;case 1012:r.push({name:"worldSpaceDisplacement",type:h(e.code),value:s(a)});break;case 1013:r.push({name:"worldSpaceDirection",type:h(e.code),value:s(a)});break;case 1041:r.push({name:"distance",type:h(e.code),value:e.value});break;case 1042:r.push({name:"scale",type:h(e.code),value:e.value})}e=a.next()}return a.rewind(),r}function h(e){switch(e){case 1e3:case 1003:case 1005:return"string";case 1004:return"hex";case 1040:case 1041:case 1042:return"real";case 1070:return"integer";case 1071:return"long";case 1010:case 1011:case 1012:case 1013:return"point";default:return""}}function I(e){return a=>{let r={};for(let t=0;t<a.length;t+=2){let n=e.find(({code:e})=>e===a[t].value);n&&(r[n.name]=a[t+1]?.value)}return r}}function b({appName:e="ACAD",catcher:a,escaper:r}){return function*(t){if(t?.appName!==e)return;let n=!1,o=-1;for(let[e,s]of t.value.entries())if(n){if(yield s,r?.(s,e-o))return}else a(s)&&(n=!0,o=e)}}function f(e,a,r){for(;o(e,102);){var t;let n=e.value;if(e=a.next(),!n.startsWith("{")){a.debug&&console.warn(`Invalid application group, expected to start with "{" but received: ${n}`),function(e,a){for(;!o(e,102)&&!o(e,0,"EOF");)e=a.next()}(e,a),e=a.next();continue}let s=n.slice(1).trim();r.extensions??(r.extensions={}),(t=r.extensions)[s]??(t[s]=[]),function(e,a,r){for(;!o(e,102,"}")&&!o(e,0,"EOF");)r.push(e),e=a.next()}(e,a,r.extensions[s]),e=a.next()}a.rewind()}let g=0;function T(e){if(!e)throw TypeError("entity cannot be undefined or null");e.handle||(e.handle=g++)}var D,O,y,S,N,L,_,P,A,C,v,M,x,F,k,R,w,V,B,H,G,U,W,Y,j,X,z,K,Z,J,$,q,Q,ee,ea,er,et,en,eo,es,ei,ec,el,ed,eu,ep,em,eE,eh,eI,eb,ef,eg,eT,eD,eO,ey,eS,eN,eL,e_,eP,eA,eC,ev,eM,ex,eF,ek,eR,ew,eV,eB,eH,eG,eU,eW,eY,ej,eX,ez,eK,eZ,eJ,e$,eq,eQ,e0,e1,e4,e2,e3,e7,e5,e6,e9,e8,ae,aa,ar,at,an,ao,as,ai,ac,al,ad,au,ap,am=[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];function aE(e){return am[e]}(D=eq||(eq={}))[D.CAST_AND_RECEIVE=0]="CAST_AND_RECEIVE",D[D.CAST=1]="CAST",D[D.RECEIVE=2]="RECEIVE",D[D.IGNORE=3]="IGNORE";let ah=[...m,{code:284,name:"shadowMode",parser:d},{code:390,name:"plotStyleHardId",parser:d},{code:440,name:"transparency",parser:d},{code:430,name:"colorName",parser:d},{code:420,name:"color",parser:d},{code:310,name:"proxyEntity",parser:d},{code:92,name:"proxyByte",parser:d},{code:60,name:"isVisible",parser:p},{code:48,name:"lineTypeScale",parser:d},{code:370,name:"lineweight",parser:d},{code:62,name:"colorIndex",parser(e,a,r){let t=e.value;return r.color=aE(Math.abs(t)),t}},{code:347,name:"materialObjectHardId",parser:d},{code:6,name:"lineType",parser:d},{code:8,name:"layer",parser:d},{code:410,name:"layoutTabName",parser:d},{code:67,name:"isInPaperSpace",parser:p},{code:100},{code:330,name:"ownerBlockRecordSoftId",parser:d},{code:102,parser:f},{code:102,parser:f},{code:102,parser:f},{code:5,name:"handle",parser:d}];function aI(e){return[{code:3,name:e,parser:(e,a,r)=>(r._code3text=(r._code3text??"")+e.value,r._code3text+(r._code1text??"")),isMultiple:!0,isReducible:!0},{code:1,name:e,parser:(e,a,r)=>(r._code1text=e.value,(r._code3text??"")+r._code1text)}]}function ab(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}let af={extrusionDirection:{x:0,y:0,z:1}},ag=[{code:210,name:"extrusionDirection",parser:u},{code:51,name:"endAngle",parser:d},{code:50,name:"startAngle",parser:d},{code:100,name:"subclassMarker",parser:d},{code:40,name:"radius",parser:d},{code:10,name:"center",parser:u},{code:39,name:"thickness",parser:d},{code:100},...ah];class aT{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){ab(this,"parser",c(ag,af))}}function aD(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}ab(aT,"ForEntityName","ARC"),(O=eQ||(eQ={}))[O.NONE=0]="NONE",O[O.INVISIBLE=1]="INVISIBLE",O[O.CONSTANT=2]="CONSTANT",O[O.VERIFICATION_REQUIRED=4]="VERIFICATION_REQUIRED",O[O.PRESET=8]="PRESET",(y=e0||(e0={}))[y.MULTILINE=2]="MULTILINE",y[y.CONSTANT_MULTILINE=4]="CONSTANT_MULTILINE",(S=e1||(e1={}))[S.NONE=0]="NONE",S[S.MIRRORED_X=2]="MIRRORED_X",S[S.MIRRORED_Y=4]="MIRRORED_Y",(N=e4||(e4={}))[N.LEFT=0]="LEFT",N[N.CENTER=1]="CENTER",N[N.RIGHT=2]="RIGHT",N[N.ALIGNED=3]="ALIGNED",N[N.MIDDLE=4]="MIDDLE",N[N.FIT=5]="FIT",(L=e2||(e2={}))[L.BASELINE=0]="BASELINE",L[L.BOTTOM=1]="BOTTOM",L[L.MIDDLE=2]="MIDDLE",L[L.TOP=3]="TOP";let aO={thickness:0,rotation:0,xScale:1,obliqueAngle:0,styleName:"STANDARD",generationFlag:0,halign:e4.LEFT,valign:e2.BASELINE,extrusionDirection:{x:0,y:0,z:1}},ay=[{code:73,name:"valign",parser:d},{code:100},{code:210,name:"extrusionDirection",parser:u},{code:11,name:"endPoint",parser:u},{code:72,name:"valign",parser:d},{code:72,name:"halign",parser:d},{code:71,name:"generationFlag",parser:d},{code:7,name:"styleName",parser:d},{code:51,name:"obliqueAngle",parser:d},{code:41,name:"xScale",parser:d},{code:50,name:"rotation",parser:d},{code:1,name:"text",parser:d},{code:40,name:"textHeight",parser:d},{code:10,name:"startPoint",parser:u},{code:39,name:"thickness",parser:d},{code:100,name:"subclassMarker",parser:d},...ah];class aS{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){aD(this,"parser",c(ay,aO))}}function aN(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}aD(aS,"ForEntityName","TEXT");let aL={...aO},a_=[{code:2},{code:40,name:"annotationScale",parser:d},{code:10,name:"alignmentPoint",parser:u},{code:340,name:"secondaryAttributesHardIds",isMultiple:!0,parser:d},{code:70,name:"numberOfSecondaryAttributes",parser:d},{code:70,name:"isReallyLocked",parser:p},{code:70,name:"mtextFlag",parser:d},{code:280,name:"isDuplicatedRecord",parser:p},{code:100},{code:280,name:"isLocked",parser:p},{code:74,name:"valign",parser:d},{code:73},{code:70,name:"attributeFlag",parser:d},{code:2,name:"tag",parser:d},{code:3,name:"prompt",parser:d},{code:280},{code:100,name:"subclassMarker",parser:d},...ay.slice(2)];class aP{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){aN(this,"parser",c(a_,aL))}}function aA(e,a){let r={};for(let t of e){let e=a(t);null!=e&&(r[e]??(r[e]=[]),r[e].push(t))}return r}function*aC(e,a=1/0,r=1){for(let t=e;t!==a;t+=r)yield t}function av(e){return{x:e.x??0,y:e.y??0,z:e.z??0}}function aM(e,a,r){if(o(a,102))return f(a,r,e),!0;switch(a.code){case 0:e.type=a.value;break;case 5:e.handle=a.value;break;case 330:e.ownerBlockRecordSoftId=a.value;break;case 67:e.isInPaperSpace=!!a.value;break;case 8:e.layer=a.value;break;case 6:e.lineType=a.value;break;case 347:e.materialObjectHardId=a.value;break;case 62:e.colorIndex=a.value,e.color=aE(Math.abs(a.value));break;case 370:e.lineweight=a.value;break;case 48:e.lineTypeScale=a.value;break;case 60:e.isVisible=!!a.value;break;case 92:e.proxyByte=a.value;break;case 310:e.proxyEntity=a.value;break;case 100:break;case 420:e.color=a.value;break;case 430:e.transparency=a.value;break;case 390:e.plotStyleHardId=a.value;break;case 284:e.shadowMode=a.value;break;case 1001:e.xdata=E(a,r);break;default:return!1}return!0}function ax(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}aN(aP,"ForEntityName","ATTDEF"),(_=e3||(e3={}))[_.LEFT_TO_RIGHT=1]="LEFT_TO_RIGHT",_[_.TOP_TO_BOTTOM=3]="TOP_TO_BOTTOM",_[_.BY_STYLE=5]="BY_STYLE";let aF={textStyle:"STANDARD",extrusionDirection:{x:0,y:0,z:1},rotation:0},ak=[{code:46,name:"annotationHeight",parser:d},{code:101,parser(e,a){!function(e){e.rewind();let a=e.next();if(101!==a.code)throw Error("Bad call for skipEmbeddedObject()");do a=e.next();while(0!==a.code);e.rewind()}(a)}},{code:50,name:"columnHeight",parser:d},{code:49,name:"columnGutter",parser:d},{code:48,name:"columnWidth",parser:d},{code:79,name:"columnAutoHeight",parser:d},{code:78,name:"columnFlowReversed",parser:d},{code:76,name:"columnCount",parser:d},{code:75,name:"columnType",parser:d},{code:441,name:"backgroundFillTransparency",parser:d},{code:63,name:"backgroundFillColor",parser:d},{code:45,name:"fillBoxScale",parser:d},{code:[...aC(430,440)],name:"backgroundColor",parser:d},{code:[...aC(420,430)],name:"backgroundColor",parser:d},{code:90,name:"backgroundFill",parser:d},{code:44,name:"lineSpacing",parser:d},{code:73,name:"lineSpacingStyle",parser:d},{code:50,name:"rotation",parser:d},{code:43},{code:42},{code:11,name:"direction",parser:u},{code:210,name:"extrusionDirection",parser:u},{code:7,name:"styleName",parser:d},...aI("text"),{code:72,name:"drawingDirection",parser:d},{code:71,name:"attachmentPoint",parser:d},{code:41,name:"width",parser:d},{code:40,name:"height",parser:d},{code:10,name:"insertionPoint",parser:u},{code:100,name:"subclassMarker",parser:d},...ah];class aR{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){ax(this,"parser",c(ak,aF))}}function aw(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}ax(aR,"ForEntityName","MTEXT");let aV={thickness:0,rotation:0,scale:1,obliqueAngle:0,textStyle:"STANDARD",textGenerationFlag:0,horizontalJustification:0,verticalJustification:0,extrusionDirection:{x:0,y:0,z:1}},aB=[...ak.slice(ak.findIndex(({name:e})=>"columnType"===e),ak.findIndex(({name:e})=>"subclassMarker"===e)+1),{code:100},{code:0,parser(e){if(!o(e,0,"MTEXT"))return i}},{code:2,name:"definitionTag",parser:d},{code:40,name:"annotationScale",parser:d},{code:10,name:"alignmentPoint",parser:u},{code:340,name:"secondaryAttributesHardId",parser:d},{code:70,name:"numberOfSecondaryAttributes",parser:d},{code:70,name:"isReallyLocked",parser:p},{code:70,name:"mtextFlag",parser:d},{code:280,name:"isDuplicatedEntriesKeep",parser:p},{code:100},{code:280,name:"lockPositionFlag",parser:p},{code:210,name:"extrusionDirection",parser:u},{code:11,name:"alignmentPoint",parser:u},{code:74,name:"verticalJustification",parser:d},{code:72,name:"horizontalJustification",parser:d},{code:71,name:"textGenerationFlag",parser:d},{code:7,name:"textStyle",parser:d},{code:51,name:"obliqueAngle",parser:d},{code:41,name:"scale",parser:d},{code:50,name:"rotation",parser:d},{code:73},{code:70,name:"attributeFlag",parser:d},{code:2,name:"tag",parser:d},{code:280},{code:100,name:"subclassMarker",parser:d},{code:1,name:"text",parser:d},{code:40,name:"textHeight",parser:d},{code:10,name:"startPoint",parser:u},{code:39,name:"thickness",parser:d},{code:100},...ah];class aH{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){aw(this,"parser",c(aB,aV))}}function aG(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}aw(aH,"ForEntityName","ATTRIB");let aU=[...aI("data"),{code:70,name:"version",parser:d},{code:100,name:"subclassMarker",parser:d},...ah];class aW{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){aG(this,"parser",c(aU))}}function aY(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}aG(aW,"ForEntityName","BODY");let aj={thickness:0,extrusionDirection:{x:0,y:0,z:1}},aX=[{code:210,name:"extrusionDirection",parser:u},{code:40,name:"radius",parser:d},{code:10,name:"center",parser:u},{code:39,name:"thickness",parser:d},{code:100,name:"subclassMarker",parser:d},...ah];class az{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){aY(this,"parser",c(aX,aj))}}aY(az,"ForEntityName","CIRCLE");class aK{parseEntity(e,a){let r={};for(;!o(a,0,"EOF");){if(0===a.code){e.rewind();break}!function(e,a,r){switch(a.code){case 100:e.subclassMarker=a.value;break;case 280:e.version=a.value;break;case 2:e.name=a.value;break;case 10:e.definitionPoint=s(r);break;case 11:e.textPoint=s(r);break;case 12:e.insertionPoint=s(r);break;case 13:e.subDefinitionPoint1=s(r);break;case 14:e.subDefinitionPoint2=s(r);break;case 15:e.centerPoint=s(r);break;case 16:e.arcPoint=s(r);break;case 70:e.dimensionType=a.value;break;case 71:e.attachmentPoint=a.value;break;case 72:e.textLineSpacingStyle=a.value;break;case 40:e.leaderLength=a.value;break;case 41:e.textLineSpacingFactor=a.value;break;case 42:e.measurement=a.value;break;case 1:e.text=a.value;break;case 50:e.rotationAngle=a.value;break;case 52:e.obliqueAngle=a.value;break;case 53:e.textRotation=a.value;break;case 51:e.ocsRotation=a.value;break;case 210:e.extrusionDirection=s(r);break;case 3:e.styleName=a.value;break;default:aM(e,a,r)}}(r,a,e),a=e.next()}return r}}function aZ(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}A="DIMENSION",(P="ForEntityName")in aK?Object.defineProperty(aK,P,{value:A,enumerable:!0,configurable:!0,writable:!0}):aK[P]=A;let aJ={extrusionDirection:{x:0,y:0,z:1}},a$=[{code:42,name:"endAngle",parser:d},{code:41,name:"startAngle",parser:d},{code:40,name:"axisRatio",parser:d},{code:210,name:"extrusionDirection",parser:u},{code:11,name:"majorAxisEndPoint",parser:u},{code:10,name:"center",parser:u},{code:100,name:"subclassMarker",parser:d},...ah];class aq{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){aZ(this,"parser",c(a$,aJ))}}function aQ(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}aZ(aq,"ForEntityName","ELLIPSE"),(C=e7||(e7={}))[C.First=1]="First",C[C.Second=2]="Second",C[C.Third=4]="Third",C[C.Fourth=8]="Fourth";let a0=[{code:13,name:"vertices.3",parser:u},{code:12,name:"vertices.2",parser:u},{code:11,name:"vertices.1",parser:u},{code:10,name:"vertices.0",parser:u},{code:100,name:"subclassMarker",parser:d},...ah];class a1{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){aQ(this,"parser",c(a0))}}aQ(a1,"ForEntityName","3DFACE");let a4=[{code:330,name:"sourceBoundaryObjects",parser:d,isMultiple:!0},{code:97,name:"numberOfSourceBoundaryObjects",parser:d}],a2=[{code:11,name:"end",parser:u},{code:10,name:"start",parser:u}],a3=[{code:73,name:"isCCW",parser:p},{code:51,name:"endAngle",parser:d},{code:50,name:"startAngle",parser:d},{code:40,name:"radius",parser:d},{code:10,name:"center",parser:u}],a7=[{code:73,name:"isCCW",parser:p},{code:51,name:"endAngle",parser:d},{code:50,name:"startAngle",parser:d},{code:40,name:"lengthOfMinorAxis",parser:d},{code:11,name:"end",parser:u},{code:10,name:"center",parser:u}],a5=[{code:13,name:"endTangent",parser:u},{code:12,name:"startTangent",parser:u},{code:11,name:"fitDatum",isMultiple:!0,parser:u},{code:97,name:"numberOfFitData",parser:d},{code:10,name:"controlPoints",isMultiple:!0,parser(e,a){let r={...s(a),weight:1};return 42===(e=a.next()).code?r.weight=e.value:a.rewind(),r}},{code:40,name:"knots",isMultiple:!0,parser:d},{code:96,name:"numberOfControlPoints",parser:d},{code:95,name:"numberOfKnots",parser:d},{code:74,name:"isPeriodic",parser:p},{code:73,name:"splineFlag",parser:d},{code:94,name:"degree",parser:d}],a6={[eW.Line]:a2,[eW.Circular]:a3,[eW.Elliptic]:a7,[eW.Spline]:a5},a9=[...a4,{code:72,name:"edges",parser(e,a){let r={type:e.value},t=c(a6[r.type]);if(!t)throw Error(`Invalid edge type ${r.type}`);return t(e=a.next(),a,r),r},isMultiple:!0},{code:93,name:"numberOfEdges",parser:d}],a8=[...a4,{code:10,name:"vertices",parser(e,a){let r={...s(a),bulge:0};return 42===(e=a.next()).code?r.bulge=e.value:a.rewind(),r},isMultiple:!0},{code:93,name:"numberOfVertices",parser:d},{code:73,name:"isClosed",parser:p},{code:72,name:"hasBulge",parser:p}],re=[{code:49,name:"dashLengths",parser:d,isMultiple:!0},{code:79,name:"numberOfDashLengths",parser:d},{code:45,name:"offset",parser:ra},{code:43,name:"base",parser:ra},{code:53,name:"angle",parser:d}];function ra(e,a){let r=e.code+1,t={x:e.value,y:1};return(e=a.next()).code===r?t.y=e.value:a.rewind(),t}function rr(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}let rt={extrusionDirection:{x:0,y:0,z:1},gradientRotation:0,colorTint:0},rn=[{code:470},{code:463},{code:462,name:"colorTint",parser:d},{code:461,name:"gradientDefinition",parser:d},{code:460,name:"gradientRotation",parser:d},{code:453,name:"numberOfColors",parser:d},{code:452,name:"gradientColorFlag",parser:d},{code:451},{code:450,name:"gradientFlag",parser:d},{code:10,name:"seedPoints",parser:u,isMultiple:!0},{code:99},{code:11,name:"offsetVector",parser:u},{code:98,name:"numberOfSeedPoints",parser:d},{code:47,name:"pixelSize",parser:d},{code:53,name:"definitionLines",parser:function(e,a){let r={};return c(re)(e,a,r),r},isMultiple:!0},{code:78,name:"numberOfDefinitionLines",parser:d},{code:77,name:"isDouble",parser:p},{code:73,name:"isAnnotated",parser:p},{code:41,name:"patternScale",parser:d},{code:52,name:"patternAngle",parser:d},{code:76,name:"patternType",parser:d},{code:75,name:"hatchStyle",parser:d},{code:92,name:"boundaryPaths",parser:function(e,a){let r={boundaryPathTypeFlag:e.value},t=r.boundaryPathTypeFlag&eU.Polyline;return(e=a.next(),t)?c(a8)(e,a,r):c(a9)(e,a,r),r},isMultiple:!0},{code:91,name:"numberOfBoundaryPaths",parser:d},{code:71,name:"associativity",parser:d},{code:63,name:"patternFillColor",parser:d},{code:70,name:"solidFill",parser:d},{code:2,name:"patternName",parser:d},{code:210,name:"extrusionDirection",parser:u},{code:10,name:"elevationPoint",parser:u},{code:100,name:"subclassMarker",parser:d,pushContext:!0},...ah];class ro{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rr(this,"parser",c(rn,rt))}}function rs(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rr(ro,"ForEntityName","HATCH"),(v=e5||(e5={}))[v.ShowImage=1]="ShowImage",v[v.ShowImageWhenNotAlignedWithScreen=2]="ShowImageWhenNotAlignedWithScreen",v[v.UseClippingBoundary=4]="UseClippingBoundary",v[v.TransparencyIsOn=8]="TransparencyIsOn",(M=e6||(e6={}))[M.Rectangular=1]="Rectangular",M[M.Polygonal=2]="Polygonal",(x=e9||(e9={}))[x.Outside=0]="Outside",x[x.Inside=1]="Inside";let ri={brightness:50,contrast:50,fade:0,clippingBoundaryPath:[]},rc=[{code:290,name:"clipMode",parser:d},{code:14,name:"clippingBoundaryPath",isMultiple:!0,parser:u},{code:91,name:"countBoundaryPoints",parser:d},{code:71,name:"clippingBoundaryType",parser:d},{code:360,name:"imageDefReactorHandle",parser:d},{code:283,name:"fade",parser:d},{code:282,name:"contrast",parser:d},{code:281,name:"brightness",parser:d},{code:280,name:"isClipped",parser:p},{code:70,name:"flags",parser:d},{code:340,name:"imageDefHandle",parser:d},{code:13,name:"imageSize",parser:u},{code:12,name:"vPixel",parser:u},{code:11,name:"uPixel",parser:u},{code:10,name:"position",parser:u},{code:90,name:"version",parser:d},{code:100,name:"subclassMarker",parser:d},...ah];class rl{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rs(this,"parser",c(rc,ri))}}function rd(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rs(rl,"ForEntityName","IMAGE");let ru={xScale:1,yScale:1,zScale:1,rotation:0,columnCount:0,rowCount:0,columnSpacing:0,rowSpacing:0,extrusionDirection:{x:0,y:0,z:1}},rp=[{code:210,name:"extrusionDirection",parser:u},{code:45,name:"rowSpacing",parser:d},{code:44,name:"columnSpacing",parser:d},{code:71,name:"rowCount",parser:d},{code:70,name:"columnCount",parser:d},{code:50,name:"rotation",parser:d},{code:43,name:"zScale",parser:d},{code:42,name:"yScale",parser:d},{code:41,name:"xScale",parser:d},{code:10,name:"insertionPoint",parser:u},{code:2,name:"name",parser:d},{code:66,name:"isVariableAttributes",parser:p},{code:100,name:"subclassMarker",parser:d},...ah];class rm{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rd(this,"parser",c(rp,ru))}}function rE(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rd(rm,"ForEntityName","INSERT");let rh={isArrowheadEnabled:!0},rI=[{code:213,name:"offsetFromAnnotation",parser:u},{code:212,name:"offsetFromBlock",parser:u},{code:211,name:"horizontalDirection",parser:u},{code:210,name:"normal",parser:u},{code:340,name:"associatedAnnotation",parser:d},{code:77,name:"byBlockColor",parser:d},{code:10,name:"vertices",parser:u,isMultiple:!0},{code:76,name:"numberOfVertices",parser:d},{code:41,name:"textWidth",parser:d},{code:40,name:"textHeight",parser:d},{code:75,name:"isHooklineExists",parser:p},{code:74,name:"isHooklineSameDirection",parser:p},{code:73,name:"leaderCreationFlag",parser:d},{code:72,name:"isSpline",parser:p},{code:71,name:"isArrowheadEnabled",parser:p},{code:3,name:"styleName",parser:d},{code:100,name:"subclassMarker",parser:d},...ah];class rb{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rE(this,"parser",c(rI,rh))}}function rf(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rE(rb,"ForEntityName","LEADER"),(F=e8||(e8={}))[F.TextAnnotation=0]="TextAnnotation",F[F.ToleranceAnnotation=1]="ToleranceAnnotation",F[F.BlockReferenceAnnotation=2]="BlockReferenceAnnotation",F[F.NoAnnotation=3]="NoAnnotation";let rg={thickness:0,extrusionDirection:{x:0,y:0,z:1}},rT=[{code:210,name:"extrusionDirection",parser:u},{code:11,name:"endPoint",parser:u},{code:10,name:"startPoint",parser:u},{code:39,name:"thickness",parser:d},{code:100,name:"subclassMarker",parser:d},...ah];class rD{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rf(this,"parser",c(rT,rg))}}rf(rD,"ForEntityName","LINE"),(k=ae||(ae={}))[k.IS_CLOSED=1]="IS_CLOSED",k[k.PLINE_GEN=128]="PLINE_GEN";let rO={flag:0,elevation:0,thickness:0,extrusionDirection:{x:0,y:0,z:1},vertices:[]},ry={bulge:0},rS=[{code:42,name:"bulge",parser:d},{code:41,name:"endWidth",parser:d},{code:40,name:"startWidth",parser:d},{code:91,name:"id",parser:d},{code:20,name:"y",parser:d},{code:10,name:"x",parser:d}],rN=[{code:210,name:"extrusionDirection",parser:u},{code:10,name:"vertices",isMultiple:!0,parser(e,a){let r={};return c(rS,ry)(e,a,r),r}},{code:39,name:"thickness",parser:d},{code:38,name:"elevation",parser:d},{code:43,name:"constantWidth",parser:d},{code:70,name:"flag",parser:d},{code:90,name:"numberOfVertices",parser:d},{code:100,name:"subclassMarker",parser:d},...ah];class rL{parseEntity(e,a){let r={};return c(rN,rO)(a,e,r),r}}function r_(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}w="LWPOLYLINE",(R="ForEntityName")in rL?Object.defineProperty(rL,R,{value:w,enumerable:!0,configurable:!0,writable:!0}):rL[R]=w;let rP=[{code:90,name:"overridenSubEntityCount",parser:d},{code:140,name:"edgeCreaseWeights",parser:d,isMultiple:!0},{code:95,name:"edgeCreaseCount",parser:d},{code:94,parser(e,a,r){r.edgeCount=e.value,r.edgeIndices=[];for(let t=0;t<r.edgeCount;++t){let t=[];e=a.next(),t[0]=e.value,e=a.next(),t[1]=e.value,r.edgeIndices.push(t)}}},{code:93,parser(e,a,r){r.totalFaceIndices=e.value,r.faceIndices=[];let t=[];for(let n=0;n<r.totalFaceIndices&&!o(e,0);++n)e=a.next(),t.push(e.value);let n=0;for(;n<t.length;){let e=t[n++],a=[];for(let r=0;r<e;++r)a.push(t[n++]);r.faceIndices.push(a)}}},{code:10,name:"vertices",parser:u,isMultiple:!0},{code:92,name:"verticesCount",parser:d},{code:91,name:"subdivisionLevel",parser:d},{code:40,name:"blendCrease",parser:d},{code:72,name:"isBlendCreased",parser:p},{code:71,name:"version",parser:d},{code:100,name:"subclassMarker",parser:function({value:e}){return e.trim()},pushContext:!0},...ah];class rA{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){r_(this,"parser",c(rP))}}function rC(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}r_(rA,"ForEntityName","MESH");let rv={thickness:0,extrusionDirection:{x:0,y:0,z:1},angle:0},rM=[{code:50,name:"angle",parser:d},{code:210,name:"extrusionDirection",parser:u},{code:39,name:"thickness",parser:d},{code:10,name:"position",parser:u},{code:100,name:"subclassMarker",parser:d},...ah];class rx{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rC(this,"parser",c(rM,rv))}}function rF(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rC(rx,"ForEntityName","POINT"),(V=aa||(aa={}))[V.CLOSED_POLYLINE=1]="CLOSED_POLYLINE",V[V.CURVE_FIT=2]="CURVE_FIT",V[V.SPLINE_FIT=4]="SPLINE_FIT",V[V.POLYLINE_3D=8]="POLYLINE_3D",V[V.POLYGON_3D=16]="POLYGON_3D",V[V.CLOSED_POLYGON=32]="CLOSED_POLYGON",V[V.POLYFACE=64]="POLYFACE",V[V.CONTINUOUS=128]="CONTINUOUS",(B=ar||(ar={}))[B.NONE=0]="NONE",B[B.QUADRATIC=5]="QUADRATIC",B[B.CUBIC=6]="CUBIC",B[B.BEZIER=8]="BEZIER",(H=at||(at={}))[H.CREATED_BY_CURVE_FIT=1]="CREATED_BY_CURVE_FIT",H[H.TANGENT_DEFINED=2]="TANGENT_DEFINED",H[H.NOT_USED=4]="NOT_USED",H[H.CREATED_BY_SPLINE_FIT=8]="CREATED_BY_SPLINE_FIT",H[H.SPLINE_CONTROL_POINT=16]="SPLINE_CONTROL_POINT",H[H.FOR_POLYLINE=32]="FOR_POLYLINE",H[H.FOR_POLYGON=64]="FOR_POLYGON",H[H.POLYFACE=128]="POLYFACE";let rk={startWidth:0,endWidth:0,bulge:0},rR=[{code:91,name:"id",parser:d},{code:[...aC(71,75)],name:"faces",isMultiple:!0,parser:d},{code:50,name:"tangentDirection",parser:d},{code:70,name:"flag",parser:d},{code:42,name:"bulge",parser:d},{code:41,name:"endWidth",parser:d},{code:40,name:"startWidth",parser:d},{code:30,name:"z",parser:d},{code:20,name:"y",parser:d},{code:10,name:"x",parser:d},{code:100,name:"subclassMarker",parser:d},{code:100},...ah];class rw{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rF(this,"parser",c(rR,rk))}}function rV(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rF(rw,"ForEntityName","VERTEX");let rB={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:[]},rH=[{code:0,name:"vertices",isMultiple:!0,parser:(e,a)=>o(e,0,"VERTEX")?(e=a.next(),new rw().parseEntity(a,e)):i},{code:210,name:"extrusionDirection",parser:u},{code:75,name:"smoothType",parser:d},{code:74,name:"surfaceNDensity",parser:d},{code:73,name:"surfaceMDensity",parser:d},{code:72,name:"meshNVertexCount",parser:d},{code:71,name:"meshMVertexCount",parser:d},{code:41,name:"endWidth",parser:d},{code:40,name:"startWidth",parser:d},{code:70,name:"flag",parser:d},{code:39,name:"thickness",parser:d},{code:30,name:"elevation",parser:d},{code:20},{code:10},{code:66},{code:100,name:"subclassMarker",parser:d},...ah];class rG{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rV(this,"parser",c(rH,rB))}}function rU(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rV(rG,"ForEntityName","POLYLINE");let rW=[{code:11,name:"direction",parser:u},{code:10,name:"position",parser:u},{code:100,name:"subclassMarker",parser:d},...ah];class rY{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rU(this,"parser",c(rW))}}function rj(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rU(rY,"ForEntityName","RAY");let rX=[...aI("data"),{code:70,name:"version",parser:d},{code:100,name:"subclassMarker",parser:d},...ah];class rz{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rj(this,"parser",c(rX))}}function rK(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rj(rz,"ForEntityName","REGION");let rZ={vertices:[],backLineVertices:[]},rJ=[{code:360,name:"geometrySettingHardId",parser:d},{code:12,name:"backLineVertices",isMultiple:!0,parser:u},{code:93,name:"numberOfBackLineVertices",parser:d},{code:11,name:"vertices",isMultiple:!0,parser:u},{code:92,name:"verticesCount",parser:d},{code:[63,411],name:"indicatorColor",parser:d},{code:70,name:"indicatorTransparency",parser:d},{code:41,name:"bottomHeight",parser:d},{code:40,name:"topHeight",parser:d},{code:10,name:"verticalDirection",parser:u},{code:1,name:"name",parser:d},{code:91,name:"flag",parser:d},{code:90,name:"state",parser:d},{code:100,name:"subclassMarker",parser:d},...ah];class r${parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rK(this,"parser",c(rJ,rZ))}}function rq(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rK(r$,"ForEntityName","SECTION");let rQ={points:[],thickness:0,extrusionDirection:{x:0,y:0,z:1}},r0=[{code:210,name:"extrusionDirection",parser:u},{code:39,name:"thickness",parser:d},{code:[...aC(10,14)],name:"points",isMultiple:!0,parser:u},{code:100,name:"subclassMarker",parser:d},...ah];class r1{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){rq(this,"parser",c(r0,rQ))}}function r4(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}rq(r1,"ForEntityName","SOLID");let r2=[{code:350,name:"historyObjectSoftId",parser:d},{code:100,name:"subclassMarker",parser:d},...aI("data"),{code:70,name:"version",parser:d},{code:100},...ah];class r3{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){r4(this,"parser",c(r2))}}function r7(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}r4(r3,"ForEntityName","3DSOLID"),(G=an||(an={}))[G.NONE=0]="NONE",G[G.CLOSED=1]="CLOSED",G[G.PERIODIC=2]="PERIODIC",G[G.RATIONAL=4]="RATIONAL",G[G.PLANAR=8]="PLANAR",G[G.LINEAR=16]="LINEAR";let r5={knotTolerance:1e-6,controlTolerance:1e-6,fitTolerance:1e-9,knotValues:[],controlPoints:[],fitPoints:[]},r6=[{code:11,name:"fitPoints",isMultiple:!0,parser:u},{code:10,name:"controlPoints",isMultiple:!0,parser:u},{code:41,name:"weights",isMultiple:!0,parser:d},{code:40,name:"knots",isMultiple:!0,parser:d},{code:13,name:"endTangent",parser:u},{code:12,name:"startTangent",parser:u},{code:44,name:"fitTolerance",parser:d},{code:43,name:"controlTolerance",parser:d},{code:42,name:"knotTolerance",parser:d},{code:74,name:"numberOfFitPoints",parser:d},{code:73,name:"numberOfControlPoints",parser:d},{code:72,name:"numberOfKnots",parser:d},{code:71,name:"degree",parser:d},{code:70,name:"flag",parser:d},{code:210,name:"normal",parser:u},{code:100,name:"subclassMarker",parser:d},...ah];class r9{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){r7(this,"parser",c(r6,r5))}}function r8(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}r7(r9,"ForEntityName","SPLINE");let te=[{code:11,name:"xAxisDirection",parser:u},{code:210,name:"extrusionDirection",parser:u},{code:1,name:"text",parser:d},{code:10,name:"position",parser:u},{code:3,name:"styleName",parser:d},{code:100,name:"subclassMarker",parser:d},...ah];class ta{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){r8(this,"parser",c(te))}}r8(ta,"ForEntityName","TOLERANCE");class tr{parseEntity(e,a){let r={};for(;"EOF"!==a;){if(0===a.code){e.rewind();break}!function(e,a,r){if("EOF"===r)return!1;switch(r.code){case 0:return!1;case 100:e.subclassMarker=r.value;break;case 10:e.viewportCenter=av(s(a));break;case 40:e.width=r.value;break;case 41:e.height=r.value;break;case 68:e.status=r.value;break;case 69:e.viewportId=r.value;break;case 12:e.displayCenter=s(a);break;case 13:e.snapBase=s(a);break;case 14:e.snapSpacing=s(a);break;case 15:e.gridSpacing=s(a);break;case 16:e.viewDirection=av(s(a));break;case 17:e.targetPoint=av(s(a));break;case 42:e.perspectiveLensLength=r.value;break;case 43:e.frontClipZ=r.value;break;case 44:e.backClipZ=r.value;break;case 45:e.viewHeight=r.value;break;case 50:e.snapAngle=r.value;break;case 51:e.viewTwistAngle=r.value;break;case 72:e.circleZoomPercent=r.value;break;case 331:e.frozenLayerIds??(e.frozenLayerIds=[]),e.frozenLayerIds.push(r.value);break;case 90:e.statusBitFlags=r.value;break;case 340:e.clippingBoundaryId=r.value;break;case 1:e.sheetName=r.value;break;case 281:e.renderMode=r.value;break;case 71:e.ucsPerViewport=r.value;break;case 110:e.ucsOrigin=av(s(a));break;case 111:e.ucsXAxis=av(s(a));break;case 112:e.ucsYAxis=av(s(a));break;case 345:e.ucsId=r.value;break;case 346:e.ucsBaseId=r.value;break;case 79:e.orthographicType=r.value;break;case 146:e.elevation=r.value;break;case 170:e.shadePlotMode=r.value;break;case 61:e.majorGridFrequency=r.value;break;case 332:e.backgroundId=r.value;break;case 333:e.shadePlotId=r.value;break;case 348:e.visualStyleId=r.value;break;case 292:e.isDefaultLighting=!!r.value;break;case 282:e.defaultLightingType=r.value;break;case 141:e.brightness=r.value;break;case 142:e.contrast=r.value;break;case 63:case 421:case 431:e.ambientLightColor=r.value;break;case 361:e.sunId=r.value;break;case 335:case 343:case 344:case 91:e.softPointer=r.value}return!0}(r,e,a)&&aM(r,a,e),a=e.next()}return r}}function tt(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}W="VIEWPORT",(U="ForEntityName")in tr?Object.defineProperty(tr,U,{value:W,enumerable:!0,configurable:!0,writable:!0}):tr[U]=W,(Y=ao||(ao={}))[Y.ShowImage=1]="ShowImage",Y[Y.ShowImageWhenNotAligned=2]="ShowImageWhenNotAligned",Y[Y.UseClippingBoundary=4]="UseClippingBoundary",Y[Y.Transparency=8]="Transparency";let tn={brightness:50,constrast:50,fade:0},to=[{code:14,name:"boundary",isMultiple:!0,parser:u},{code:91,name:"numberOfVertices",parser:d},{code:71,name:"boundaryType",parser:d},{code:360,name:"imageDefReactorHardId",parser:d},{code:283,name:"fade",parser:d},{code:282,name:"contrast",parser:d},{code:281,name:"brightness",parser:d},{code:280,name:"isClipping",parser:p},{code:70,name:"displayFlag",parser:d},{code:340,name:"imageDefHardId",parser:d},{code:13,name:"imageSize",parser:u},{code:12,name:"vDirection",parser:u},{code:11,name:"uDirection",parser:u},{code:10,name:"position",parser:u},{code:90,name:"classVersion",parser:d},{code:100,name:"subclassMarker",parser:d},...ah];class ts{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){tt(this,"parser",c(to,tn))}}function ti(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}tt(ts,"ForEntityName","WIPEOUT");let tc=[{code:11,name:"direction",parser:u},{code:10,name:"position",parser:u},{code:100,name:"subclassMarker",parser:d},...ah];class tl{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){ti(this,"parser",c(tc))}}function td(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}ti(tl,"ForEntityName","XLINE");let tu={},tp=[{code:170,name:"multileaderType",parser:d},{code:291,name:"doglegEnabled",parser:p},{code:40,name:"doglegLength",parser:d},{code:172,name:"contentType",parser:d},{code:3,name:"textContent",parser:d},{code:12,name:"textAnchor",parser:u},{code:344,name:"blockHandle",parser:d},{code:15,name:"blockPosition",parser:u},{code:302,name:"leaderSections",parser:function(e,a,r){let t;let n={leaderLines:[]};for(;a.hasNext()&&303!==(t=a.next()).code;){switch(t.code){case 10:n.landingPoint=(t.value,s(a));break;case 11:n.doglegVector=(t.value,s(a));break;case 40:n.doglegLength=t.value;break;case 304:n.leaderLines.push(function(e,a,r){let t;let n={vertices:[]};for(;a.hasNext()&&305!==(t=a.next()).code;)10===t.code&&n.vertices.push((t.value,s(a)));return n}(0,a))}}return n},isMultiple:!0},...ah];class tm{parseEntity(e,a){let r={};return this.parser(a,e,r),r}constructor(){td(this,"parser",c(tp,tu))}}td(tm,"ForEntityName","MULTILEADER");let tE=Object.fromEntries([aT,aP,aH,aW,az,aK,aq,a1,rl,rm,rb,rD,rL,rA,aR,tm,rx,rG,rY,rz,r$,r1,r3,r9,aS,ta,ro,rw,tr,ts,tl].map(e=>[e.ForEntityName,new e]));function th(e,a){let r=[];for(;!o(e,0,"EOF");){if(0===e.code){if("ENDBLK"===e.value||"ENDSEC"===e.value){a.rewind();break}let t=tE[e.value];if(t){let n=e.value;e=a.next();let o=t.parseEntity(a,e);o.type=n,T(o),r.push(o)}else a.debug&&console.warn(`Unsupported ENTITY type: ${e.value}`)}e=a.next()}return r}function tI(e,a){let r={};for(;!o(e,0,"EOF")&&!o(e,0,"ENDSEC");){if(o(e,0,"BLOCK")){let t=tb(e=a.next(),a);T(t),t.name&&(r[t.name]=t)}e=a.next()}return r}function tb(e,a){let r={};for(;!o(e,0,"EOF");){if(o(e,0,"ENDBLK")){for(e=a.next();!o(e,0,"EOF");){if(o(e,100,"AcDbBlockEnd"))return r;e=a.next()}break}switch(e.code){case 1:r.xrefPath=e.value;break;case 2:r.name=e.value;break;case 3:r.name2=e.value;break;case 5:r.handle=e.value;break;case 8:r.layer=e.value;break;case 10:r.position=s(a);break;case 67:r.paperSpace=!!e.value&&1==e.value;break;case 70:0!==e.value&&(r.type=e.value);break;case 100:break;case 330:r.ownerHandle=e.value;break;case 0:r.entities=th(e,a)}e=a.next()}return r}function tf(e,a){let r=null,t={};for(;!o(e,0,"EOF")&&!o(e,0,"ENDSEC");)9===e.code?r=e.value:10===e.code?t[r]=s(a):t[r]=e.value,e=a.next();return t}(j=as||(as={}))[j.NOT_APPLICABLE=0]="NOT_APPLICABLE",j[j.KEEP_EXISTING=1]="KEEP_EXISTING",j[j.USE_CLONE=2]="USE_CLONE",j[j.XREF_VALUE_NAME=3]="XREF_VALUE_NAME",j[j.VALUE_NAME=4]="VALUE_NAME",j[j.UNMANGLE_NAME=5]="UNMANGLE_NAME";let tg=[{code:3,name:"entries",parser:(e,a)=>{let r={name:e.value};return 350===(e=a.next()).code?r.objectId=e.value:a.rewind(),r},isMultiple:!0},{code:281,name:"recordCloneFlag",parser:d},{code:280,name:"isHardOwned",parser:p},{code:100,name:"subclassMarker",parser:d}];(X=ai||(ai={}))[X.PSLTSCALE=1]="PSLTSCALE",X[X.LIMCHECK=2]="LIMCHECK",(z=ac||(ac={}))[z.INCHES=0]="INCHES",z[z.MILLIMETERS=1]="MILLIMETERS",z[z.PIXELS=2]="PIXELS",(K=al||(al={}))[K.LAST_SCREEN_DISPLAY=0]="LAST_SCREEN_DISPLAY",K[K.DRAWING_EXTENTS=1]="DRAWING_EXTENTS",K[K.DRAWING_LIMITS=2]="DRAWING_LIMITS",K[K.VIEW_SPECIFIED=3]="VIEW_SPECIFIED",K[K.WINDOW_SPECIFIED=4]="WINDOW_SPECIFIED",K[K.LAYOUT_INFORMATION=5]="LAYOUT_INFORMATION",(Z=ad||(ad={}))[Z.AS_DISPLAYED=0]="AS_DISPLAYED",Z[Z.WIREFRAME=1]="WIREFRAME",Z[Z.HIDDEN=2]="HIDDEN",Z[Z.RENDERED=3]="RENDERED",(J=au||(au={}))[J.DRAFT=0]="DRAFT",J[J.PREVIEW=1]="PREVIEW",J[J.NORMAL=2]="NORMAL",J[J.PRESENTATION=3]="PRESENTATION",J[J.MAXIMUM=4]="MAXIMUM",J[J.CUSTOM=5]="CUSTOM";let tT=[{code:333,name:"shadePlotId",parser:d},{code:149,name:"imageOriginY",parser:d},{code:148,name:"imageOriginX",parser:d},{code:147,name:"scaleFactor",parser:d},{code:78,name:"shadePlotCustomDPI",parser:d},{code:77,name:"shadePlotResolution",parser:d},{code:76,name:"shadePlotMode",parser:d},{code:75,name:"standardScaleType",parser:d},{code:7,name:"currentStyleSheet",parser:d},{code:74,name:"plotType",parser:d},{code:73,name:"plotRotation",parser:d},{code:72,name:"paperUnit",parser:d},{code:70,name:"layoutFlag",parser:d},{code:143,name:"printScaleDenominator",parser:d},{code:142,name:"printScaleNominator",parser:d},{code:141,name:"windowAreaYMax",parser:d},{code:140,name:"windowAreaYMin",parser:d},{code:49,name:"windowAreaXMax",parser:d},{code:48,name:"windowAreaXMin",parser:d},{code:47,name:"plotOriginY",parser:d},{code:46,name:"plotOriginX",parser:d},{code:45,name:"paperHeight",parser:d},{code:44,name:"paperWidth",parser:d},{code:43,name:"marginTop",parser:d},{code:42,name:"marginRight",parser:d},{code:41,name:"marginBottom",parser:d},{code:40,name:"marginLeft",parser:d},{code:6,name:"plotViewName",parser:d},{code:4,name:"paperSize",parser:d},{code:2,name:"configName",parser:d},{code:1,name:"pageSetupName",parser:d},{code:100,name:"subclassMarker",parser:d}],tD=[{code:333,name:"shadePlotId",parser:d},{code:346,name:"orthographicUcsId",parser:d},{code:345,name:"namedUcsId",parser:d},{code:331,name:"viewportId",parser:d},{code:330,name:"paperSpaceTableId",parser:d},{code:76,name:"orthographicType",parser:d},{code:17,name:"ucsYAxis",parser:u},{code:16,name:"ucsXAxis",parser:u},{code:13,name:"ucsOrigin",parser:u},{code:146,name:"elevation",parser:d},{code:15,name:"maxExtent",parser:u},{code:14,name:"minExtent",parser:u},{code:12,name:"insertionBase",parser:u},{code:11,name:"maxLimit",parser:u},{code:10,name:"minLimit",parser:u},{code:71,name:"tabOrder",parser:d},{code:70,name:"controlFlag",parser:d},{code:1,name:"layoutName",parser:d},{code:100,name:"subclassMarker",parser:d},...tT],tO=[{code:40,name:"wcsToOCSTransform",parser:ty},{code:40,name:"ocsToWCSTransform",parser:ty},{code:41,name:"backClippingDistance",parser:d},{code:73,name:"isBackClipping",parser:p,pushContext:!0},{code:40,name:"frontClippingDistance",parser:d},{code:72,name:"isFrontClipping",parser:p,pushContext:!0},{code:71,name:"isClipBoundaryDisplayed",parser:p},{code:11,name:"position",parser:u},{code:210,name:"normal",parser:u},{code:10,name:"boundaryVertices",parser:u,isMultiple:!0},{code:70,name:"boundaryCount",parser:d},{code:100,name:"subclassMarker",parser:d},{code:100},{code:5,name:"handle",parser:d}];function ty(e,a){let r=[];for(let t=0;t<3&&o(e,40);++t){let t=[];for(let r=0;r<4&&o(e,40);++r)t.push(e.value),e=a.next();r.push(t)}return a.rewind(),r}let tS=[{code:330,name:"ownerObjectId",parser:d},{code:102,parser:f},{code:102,parser:f},{code:102,parser:f},{code:5,name:"handle",parser:d}],tN={LAYOUT:tD,PLOTSETTINGS:tT,DICTIONARY:tg,SPATIAL_FILTER:tO};function tL(e,a){let r=[];for(;0!==e.code||!["EOF","ENDSEC"].includes(e.value);){let t=e.value,n=tN[t];if(0===e.code&&n?.length){let o=c([...tS,...n]),s={name:t};o(e=a.next(),a,s)?(r.push(s),e=a.peek()):e=a.next()}else e=a.next()}return{byName:aA(r,({name:e})=>e)}}let t_=[{code:100,name:"subclassMarker",parser:d},{code:330,name:"ownerObjectId",parser:d},{code:102,parser(e,a){for(;!o(e,0,"EOF")&&!o(e,102,"}");)e=a.next()}},{code:5,name:"handle",parser:d}],tP=c([{code:310,name:"bmpPreview",parser:d},{code:281,name:"scalability",parser:d},{code:280,name:"explodability",parser:d},{code:70,name:"insertionUnits",parser:d},{code:340,name:"layoutObjects",parser:d},{code:2,name:"name",parser:d},{code:100,name:"subclassMarker",parser:d},...t_]),tA=[{name:"DIMPOST",code:3},{name:"DIMAPOST",code:4},{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:.25},{name:"DIMEXO",code:42,defaultValue:.625,defaultValueImperial:.0625},{name:"DIMDLI",code:43,defaultValue:3.75,defaultValueImperial:.38},{name:"DIMEXE",code:44,defaultValue:2.25,defaultValueImperial:.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:"DIMTXT",code:140,defaultValue:2.5,defaultValueImperial:.28},{name:"DIMCEN",code:141,defaultValue:2.5,defaultValueImperial:.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:.625,defaultValueImperial:.09},{name:"DIMALTRND",code:148,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:eC.Above,defaultValueImperial:eC.Center},{name:"DIMZIN",code:78,defaultValue:ev.Trailing,defaultValueImperial:ev.Feet},{name:"DIMAZIN",code:79,defaultValue:eM.None},{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},{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:2,defaultValueImperial:4},{name:"DIMAUNIT",code:275,defaultValue:0},{name:"DIMFRAC",code:276,defaultValue:0},{name:"DIMLUNIT",code:277,defaultValue:2},{name:"DIMDSEP",code:278,defaultValue:",",defaultValueImperial:"."},{name:"DIMJUST",code:280,defaultValue:ex.Center},{name:"DIMSD1",code:281,defaultValue:0},{name:"DIMSD2",code:282,defaultValue:0},{name:"DIMTOLJ",code:283,defaultValue:eF.Center},{name:"DIMTZIN",code:284,defaultValue:ev.Trailing,defaultValueImperial:ev.Feet},{name:"DIMALTZ",code:285,defaultValue:ev.Trailing},{name:"DIMALTTZ",code:286,defaultValue:ev.Trailing},{name:"DIMFIT",code:287},{name:"DIMUPT",code:288,defaultValue:0},{name:"DIMATFIT",code:289,defaultValue:3},{name:"DIMTXSTY",code:340},{name:"DIMLDRBLK",code:341},{name:"DIMBLK",code:342},{name:"DIMBLK1",code:343},{name:"DIMBLK2",code:344},{name:"DIMLWD",code:371,defaultValue:-2},{name:"DIMLWD",code:372,defaultValue:-2}],tC=c([...tA.map(e=>({...e,parser:d})),{code:70,name:"standardFlag",parser:d},{code:2,name:"name",parser:d},{code:100,name:"subclassMarker",parser:d},{code:105,name:"handle",parser:d},...t_.filter(e=>5!==e.code)]),tv=c([{code:347,name:"materialObjectId",parser:d},{code:390,name:"plotStyleNameObjectId",parser:d},{code:370,name:"lineweight",parser:d},{code:290,name:"isPlotting",parser:p},{code:6,name:"lineType",parser:d},{code:62,name:"colorIndex",parser:d},{code:70,name:"standardFlag",parser:d},{code:2,name:"name",parser:d},{code:100,name:"subclassMarker",parser:d},...t_]);($=ap||(ap={}))[$.NONE=0]="NONE",$[$.AbsoluteRotation=1]="AbsoluteRotation",$[$.TextEmbedded=2]="TextEmbedded",$[$.ShapeEmbedded=4]="ShapeEmbedded";let tM=c([{code:9,name:"text",parser:d},{code:45,name:"offsetY",parser:d},{code:44,name:"offsetX",parser:d},{code:50,name:"rotation",parser:d},{code:46,name:"scale",parser:d},{code:340,name:"styleObjectId",parser:d},{code:75,name:"shapeNumber",parser:d},{code:74,name:"elementTypeFlag",parser:d},{code:49,name:"elementLength",parser:d}],{elementTypeFlag:0,elementLength:0}),tx=c([{code:49,name:"pattern",parser(e,a){let r={};return tM(e,a,r),r},isMultiple:!0},{code:40,name:"totalPatternLength",parser:d},{code:73,name:"numberOfLineTypes",parser:d},{code:72,parser:d},{code:3,name:"description",parser:d},{code:70,name:"standardFlag",parser:d},{code:2,name:"name",parser:d},{code:100,name:"subclassMarker",parser:d},...t_]),tF=c([{code:1e3,name:"extendedFont",parser:d},{code:1001},{code:4,name:"bigFont",parser:d},{code:3,name:"font",parser:d},{code:42,name:"lastHeight",parser:d},{code:71,name:"textGenerationFlag",parser:d},{code:50,name:"obliqueAngle",parser:d},{code:41,name:"widthFactor",parser:d},{code:40,name:"fixedTextHeight",parser:d},{code:70,name:"standardFlag",parser:d},{code:2,name:"name",parser:d},{code:100,name:"subclassMarker",parser:d},...t_]),tk=c([{code:[63,421,431],name:"ambientColor",parser:d},{code:142,name:"contrast",parser:d},{code:141,name:"brightness",parser:d},{code:282,name:"defaultLightingType",parser:d},{code:292,name:"isDefaultLightingOn",parser:p},{code:348,name:"visualStyleObjectId",parser:d},{code:333,name:"shadePlotObjectId",parser:d},{code:332,name:"backgroundObjectId",parser:d},{code:61,name:"majorGridLines",parser:d},{code:170,name:"shadePlotSetting",parser:d},{code:146,name:"elevation",parser:d},{code:79,name:"orthographicType",parser:d},{code:112,name:"ucsYAxis",parser:u},{code:111,name:"ucsXAxis",parser:u},{code:110,name:"ucsOrigin",parser:u},{code:74,name:"ucsIconSetting",parser:d},{code:71,name:"viewMode",parser:d},{code:281,name:"renderMode",parser:d},{code:1,name:"styleSheet",parser:d},{code:[331,441],name:"frozenLayers",parser:d,isMultiple:!0},{code:72,name:"circleSides",parser:d},{code:51,name:"viewTwistAngle",parser:d},{code:50,name:"snapRotationAngle",parser:d},{code:45,name:"viewHeight",parser:d},{code:44,name:"backClippingPlane",parser:d},{code:43,name:"frontClippingPlane",parser:d},{code:42,name:"lensLength",parser:d},{code:17,name:"viewTarget",parser:u},{code:16,name:"viewDirectionFromTarget",parser:u},{code:15,name:"gridSpacing",parser:u},{code:14,name:"snapSpacing",parser:u},{code:13,name:"snapBasePoint",parser:u},{code:12,name:"center",parser:u},{code:11,name:"upperRightCorner",parser:u},{code:10,name:"lowerLeftCorner",parser:u},{code:70,name:"standardFlag",parser:d},{code:2,name:"name",parser:d},{code:100,name:"subclassMarker",parser:d},...t_]),tR={BLOCK_RECORD:tP,DIMSTYLE:tC,LAYER:tv,LTYPE:tx,STYLE:tF,VPORT:tk},tw=c([{code:70,name:"maxNumberOfEntries",parser:d},{code:100,name:"subclassMarker",parser:d},{code:330,name:"ownerObjectId",parser:d},{code:102},{code:360,isMultiple:!0},{code:102},{code:5,name:"handle",parser:d},{code:2,name:"name",parser:d}]);function tV(e,a){let r={};for(;!o(e,0,"EOF")&&!o(e,0,"ENDSEC");){if(o(e,0,"TABLE")){e=a.next();let t={entries:[]};tw(e,a,t),r[t.name]=t}if(o(e,0)&&!o(e,0,"ENDTAB")){let t=e.value;e=a.next();let n=tR[t];if(!n){a.debug&&console.warn(`parseTable: Invalid table name '${t}'`),e=a.next();continue}let o={};n(e,a,o),r[t]?.entries.push(o)}e=a.next()}return r}function tB(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}class tH{next(){if(!this.hasNext())return this._eof?this.debug&&console.warn("Cannot call 'next' after EOF group has been read"):this.debug&&console.warn("Unexpected end of input: EOF group not read before end of file. Ended on code "+this._data[this._pointer]),{code:0,value:"EOF"};let e=parseInt(this._data[this._pointer++],10),a=tG(e,this._data[this._pointer++],this.debug),r={code:e,value:a};return o(r,0,"EOF")&&(this._eof=!0),this.lastReadGroup=r,r}peek(){if(!this.hasNext()){if(this._eof)throw Error("Cannot call 'next' after EOF group has been read");throw Error("Unexpected end of input: EOF group not read before end of file. Ended on code "+this._data[this._pointer])}let e={code:parseInt(this._data[this._pointer]),value:0};return e.value=tG(e.code,this._data[this._pointer+1],this.debug),e}rewind(e){e=e||1,this._pointer=this._pointer-2*e}hasNext(){return!this._eof&&!(this._pointer>this._data.length-2)}isEOF(){return this._eof}constructor(e,a=!1){tB(this,"_data",void 0),tB(this,"debug",void 0),tB(this,"_pointer",void 0),tB(this,"_eof",void 0),tB(this,"lastReadGroup",void 0),this._data=e,this.debug=a,this.lastReadGroup={code:0,value:0},this._pointer=0,this._eof=!1}}function tG(e,a,r=!1){return e<=9?a:e>=10&&e<=59?parseFloat(a.trim()):e>=60&&e<=99?parseInt(a.trim()):e>=100&&e<=109?a:e>=110&&e<=149?parseFloat(a.trim()):e>=160&&e<=179?parseInt(a.trim()):e>=210&&e<=239?parseFloat(a.trim()):e>=270&&e<=289?parseInt(a.trim()):e>=290&&e<=299?function(e){if("0"===e)return!1;if("1"===e)return!0;throw TypeError("String '"+e+"' cannot be cast to Boolean type")}(a.trim()):e>=300&&e<=369?a:e>=370&&e<=389?parseInt(a.trim()):e>=390&&e<=399?a:e>=400&&e<=409?parseInt(a.trim()):e>=410&&e<=419?a:e>=420&&e<=429?parseInt(a.trim()):e>=430&&e<=439?a:e>=440&&e<=459?parseInt(a.trim()):e>=460&&e<=469?parseFloat(a.trim()):e>=470&&e<=481||999===e||e>=1e3&&e<=1009?a:e>=1010&&e<=1059?parseFloat(a.trim()):e>=1060&&e<=1071?parseInt(a.trim()):(r&&console.warn("WARNING: Group code does not have a defined type: %j",{code:e,value:a}),a)}function tU(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}class tW{parseStart(e){this.startCode=e.code}setPoint(e){if(this.code=e.code,this.value=e.value,this.startCode===this.code&&(this.x=this.value),this.startCode===this.code+10)this.y=this.value;else{let e={x:this.x??0,y:this.y??0,z:this.z??0};return this.reset(),e}if(this.startCode===this.code+20)this.z=this.value;else{let e={x:this.x??0,y:this.y??0,z:this.z??0};return this.reset(),e}}reset(){this.x=void 0,this.y=void 0,this.z=void 0}constructor(){tU(this,"point",{}),tU(this,"startCode",0),tU(this,"code",0),tU(this,"value",0),tU(this,"x",void 0),tU(this,"y",void 0),tU(this,"z",void 0)}}function tY(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}class tj{constructor(){tY(this,"encoding","utf-8"),tY(this,"encodingFailureFatal",!1)}}class tX extends Error{constructor(e,a,r){let t=`[Line ${a}]: ${e}`;r?.cause&&(t+=`
2
2
  Caused by ${r.cause.toString()}
3
- ${r.cause.stack}`),super(t),tb(this,"line",void 0),this.line=a}}class tO extends EventTarget{Feed(e,a=!1){let r=this._decoder.decode(e??void 0,{stream:!a});this.FeedString(r,a)}FeedString(e,a=!1){if(this._finalChunkSeen)throw Error("Data fed after final chunk processed");a&&(this._finalChunkSeen=!0),this._curChunk+=e,this._ProcessCurChunk(),a&&this._Finalize()}_Finalize(){}async FeedFile(e,a){let r=e.byteLength;for(let t=0;t<r;t+=65536){a?.throwIfAborted();let n=Math.min(r-t,65536),o=await e.slice(t,t+n);this.Feed(o,t+n>=r)}}_ProcessCurChunk(){for(let e of this._ConsumeCurChunkLines())if(this._ProcessLine(e),this._curLineNum++,!this._eof&&"HEADER"===this._curSection){let e=this._curValue.value;9===this._curValue.code?this._currVarName=e:10===this._curValue.code?this._pointParser.parseStart(this._curValue):this._pointParser.startCode===this._curValue.code||this._pointParser.startCode+10===this._curValue.code||this._pointParser.startCode+20===this._curValue.code?e=this._pointParser.setPoint(this._curValue):this._currVarName&&(this.dxf.header[this._currVarName]=e)}}*_ConsumeCurChunkLines(){let e=0,a=this._curChunk.length;for(;e<a;){let r=this._curChunk.indexOf("\r",e),t=0;if(r>=0?(t=r+1)<a&&"\n"==this._curChunk.charAt(t)&&t++:(r=this._curChunk.indexOf("\n",e))>=0&&(t=r+1),r<0)break;yield this._curChunk.substring(e,r),e=t}0!=e&&(this._curChunk=this._curChunk.substring(e))}_ProcessLine(e){if(null===this._curGroupCode){let a=e.trim();this._curGroupCode=parseInt(a),isNaN(this._curGroupCode)&&this._Error("Bad group code: "+a);return}let a=new tg(this._curGroupCode,e);if(!o(a,0,"EOF")){switch(a.value){case"SECTION":this._curSection="SECTION";break;case"HEADER":this._curSection="HEADER";break;case"BLOCKS":this._curSection="BLOCKS";break;case"ENTITIES":this._curSection="ENTITIES";break;case"TABLES":this._curSection="TABLES";break;case"OBJECTS":this._curSection="OBJECTS"}this._eof=!1}o(a,0,"EOF")&&(this._eof=!0),this._curValue=a,this._curGroupCode=null}_Error(e,a=null){let r;throw a&&(r={cause:a}),new tD(e,this._curLineNum,r)}constructor(e=new tT){super(),tb(this,"dxf",{header:{},blocks:{},entities:[],tables:{},objects:{byName:{},byTree:void 0}}),tb(this,"_decoder",void 0),tb(this,"_pointParser",void 0),tb(this,"_finalChunkSeen",!1),tb(this,"_curChunk",""),tb(this,"_curGroupCode",null),tb(this,"_curLineNum",1),tb(this,"_eof",!1),tb(this,"_curValue",{code:0,value:0}),tb(this,"_curSection",""),tb(this,"_currVarName",""),this._decoder=new TextDecoder(e.encoding,{fatal:e.encodingFailureFatal}),this._pointParser=new tf}}class tg{constructor(e,a){tb(this,"code",void 0),tb(this,"value",void 0),this.code=e,this.value=th(e,a)}}function ty(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}class tS{constructor(){ty(this,"encoding","utf-8"),ty(this,"encodingFailureFatal",!1)}}class tN extends EventTarget{parseSync(e){let a=new tE(e.split(/\r\n|\r|\n/g));if(!a.hasNext())throw Error("Empty file");return this.parseAll(a)}parseStream(e){let a="",r=this;return new Promise((t,n)=>{e.on("data",e=>{a+=e}),e.on("end",()=>{try{let e=a.split(/\r\n|\r|\n/g),n=new tE(e);if(!n.hasNext())throw Error("Empty file");t(r.parseAll(n))}catch(e){n(e)}}),e.on("error",e=>{n(e)})})}async parseFromUrl(e,a){let r=await fetch(e,a);if(!r.body)return null;let t=r.body.getReader(),n="";for(;;){let{done:e,value:a}=await t.read();if(e){n+=this._decoder.decode(new ArrayBuffer(0),{stream:!1});break}n+=this._decoder.decode(a,{stream:!0})}return this.parseSync(n)}parseAll(e){let a={header:{},blocks:{},entities:[],tables:{},objects:{byName:{},byTree:void 0}},r=e.next();for(;!o(r,0,"EOF");)o(r,0,"SECTION")&&(o(r=e.next(),2,"HEADER")?(r=e.next(),a.header=r2(r,e)):o(r,2,"BLOCKS")?(r=e.next(),a.blocks=r1(r,e)):o(r,2,"ENTITIES")?(r=e.next(),a.entities=r0(r,e)):o(r,2,"TABLES")?(r=e.next(),a.tables=tp(r,e)):o(r,2,"OBJECTS")&&(r=e.next(),a.objects=te(r,e))),r=e.next();return a}constructor(e=new tS){super(),ty(this,"_decoder",void 0),this._decoder=new TextDecoder(e.encoding,{fatal:e.encodingFailureFatal})}}export{ah as ArcEntityParser,ay as AttDefEntityParser,eX as AttDefMTextFlag,eD as AttachmentPoint,aw as AttributeEntityParser,ej as AttributeFlag,ef as BlockTypeFlag,ek as BoundaryPathEdgeType,eR as BoundaryPathTypeFlag,aG as CircleEntityParser,eb as ColorCode,au as CommonEntitySnippets,t as DefaultDxfHeaderVariables,eW as DefaultLightingType,af as DefaultTextEntity,r3 as DictionarySnippets,tt as DimStyleVariablesSchema,aU as DimensionParser,eN as DimensionTextHorizontal,eO as DimensionTextLineSpacing,eg as DimensionTextVertical,e_ as DimensionToleranceTextVertical,eT as DimensionType,ey as DimensionZeroSuppression,eS as DimensionZeroSuppressionAngular,tD as DxfParsingError,tO as DxfStreamParser,tT as DxfStreamParserOptions,aX as EllipseEntityParser,e$ as FaceEdgeInvisibility,aZ as FaceEntityParser,eA as HatchAssociativity,ev as HatchBoundaryAnnotation,a8 as HatchEntityParser,ex as HatchGradientColorFlag,eM as HatchGradientFlag,eC as HatchPatternType,eL as HatchSolidFill,eP as HatchStyle,n as INDEXED_CHUNK_SIZE,e0 as ImageClipMode,eQ as ImageClippingBoundaryType,rt as ImageEntityParser,eq as ImageFlags,ri as InsertEntityParser,e4 as LWPolylineFlag,rD as LWPolylineParser,e9 as LayoutControlFlag,r5 as LayoutSnippets,e1 as LeaderCreationFlag,ru as LeaderEntityParser,rh as LineEntityParser,at as LineTypeElementType,eJ as MTextDrawingDirection,ax as MTextEntityParser,aM as MTextEntityParserSnippets,eV as Measurement,eF as ObscuredLineTypes,eU as OrthographicType,e8 as PlotPaperUnit,r7 as PlotSettingsSnippets,ae as PlotType,rS as PointEntityParser,e2 as PolylineFlag,rM as PolylineParser,rk as RayParser,e6 as RecordCloneFlag,eH as RenderMode,ew as ReservedLineweight,a as SPLINE_SUBDIVISION,rB as SectionEntityParser,aa as ShadePlotMode,ar as ShadePlotResolution,eY as ShadowMode,e3 as SmoothType,rW as SolidEntityParser,rz as SplineEntityParser,e5 as SplineFlag,r as TESSELLATION_ANGLE,aT as TextEntityParser,ab as TextEntityParserSnippets,ez as TextGenerationFlag,eK as TextHorizontalAlign,eZ as TextVerticalAlign,eG as UCSPerViewport,e as UndeterminedBlockColor,e7 as VertexFlag,rA as VertexParser,rK as ViewportParser,eB as ViewportStatusFlag,as as XDataParserSnippets,a_ as classify,ad as createXDataCatcher,al as createXDataControlInterpreter,tN as default,aN as ensureHandle,aA as ensurePoint3D,aL as generateIntegers,ao as getAcadColor,o as isMatched,r4 as parseBlock,tr as parseBlockRecordTable,r1 as parseBlocks,tn as parseDimStyle,r0 as parseEntities,m as parseExtensions,r2 as parseHeader,ti as parseLTypeTable,to as parseLayerTable,te as parseObjects,tc as parseStyleTable,tp as parseTables,tl as parseVPortTable,ai as parseXData};
3
+ ${r.cause.stack}`),super(t),tY(this,"line",void 0),this.line=a}}class tz extends EventTarget{Feed(e,a=!1){let r=this._decoder.decode(e??void 0,{stream:!a});this.FeedString(r,a)}FeedString(e,a=!1){if(this._finalChunkSeen)throw Error("Data fed after final chunk processed");a&&(this._finalChunkSeen=!0),this._curChunk+=e,this._ProcessCurChunk(),a&&this._Finalize()}_Finalize(){}async FeedFile(e,a){let r=e.byteLength;for(let t=0;t<r;t+=65536){a?.throwIfAborted();let n=Math.min(r-t,65536),o=await e.slice(t,t+n);this.Feed(o,t+n>=r)}}_ProcessCurChunk(){for(let e of this._ConsumeCurChunkLines())if(this._ProcessLine(e),this._curLineNum++,!this._eof&&"HEADER"===this._curSection){let e=this._curValue.value;9===this._curValue.code?this._currVarName=e:10===this._curValue.code?this._pointParser.parseStart(this._curValue):this._pointParser.startCode===this._curValue.code||this._pointParser.startCode+10===this._curValue.code||this._pointParser.startCode+20===this._curValue.code?e=this._pointParser.setPoint(this._curValue):this._currVarName&&(this.dxf.header[this._currVarName]=e)}}*_ConsumeCurChunkLines(){let e=0,a=this._curChunk.length;for(;e<a;){let r=this._curChunk.indexOf("\r",e),t=0;if(r>=0?(t=r+1)<a&&"\n"==this._curChunk.charAt(t)&&t++:(r=this._curChunk.indexOf("\n",e))>=0&&(t=r+1),r<0)break;yield this._curChunk.substring(e,r),e=t}0!=e&&(this._curChunk=this._curChunk.substring(e))}_ProcessLine(e){if(null===this._curGroupCode){let a=e.trim();this._curGroupCode=parseInt(a),isNaN(this._curGroupCode)&&this._Error("Bad group code: "+a);return}let a=new tK(this._curGroupCode,e);if(!o(a,0,"EOF")){switch(a.value){case"SECTION":this._curSection="SECTION";break;case"HEADER":this._curSection="HEADER";break;case"BLOCKS":this._curSection="BLOCKS";break;case"ENTITIES":this._curSection="ENTITIES";break;case"TABLES":this._curSection="TABLES";break;case"OBJECTS":this._curSection="OBJECTS"}this._eof=!1}o(a,0,"EOF")&&(this._eof=!0),this._curValue=a,this._curGroupCode=null}_Error(e,a=null){let r;throw a&&(r={cause:a}),new tX(e,this._curLineNum,r)}constructor(e=new tj){super(),tY(this,"dxf",{header:{},blocks:{},entities:[],tables:{},objects:{byName:{},byTree:void 0}}),tY(this,"_decoder",void 0),tY(this,"_pointParser",void 0),tY(this,"_finalChunkSeen",!1),tY(this,"_curChunk",""),tY(this,"_curGroupCode",null),tY(this,"_curLineNum",1),tY(this,"_eof",!1),tY(this,"_curValue",{code:0,value:0}),tY(this,"_curSection",""),tY(this,"_currVarName",""),this._decoder=new TextDecoder(e.encoding,{fatal:e.encodingFailureFatal}),this._pointParser=new tW}}class tK{constructor(e,a){tY(this,"code",void 0),tY(this,"value",void 0),this.code=e,this.value=tG(e,a)}}function tZ(e,a,r){return a in e?Object.defineProperty(e,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[a]=r,e}class tJ{constructor(){tZ(this,"encoding","utf-8"),tZ(this,"encodingFailureFatal",!1)}}class t$ extends EventTarget{parseSync(e,a=!1){let r=new tH(e.split(/\r\n|\r|\n/g),a);if(!r.hasNext())throw Error("Empty file");return this.parseAll(r)}parseStream(e){let a="",r=this;return new Promise((t,n)=>{e.on("data",e=>{a+=e}),e.on("end",()=>{try{let e=a.split(/\r\n|\r|\n/g),n=new tH(e);if(!n.hasNext())throw Error("Empty file");t(r.parseAll(n))}catch(e){n(e)}}),e.on("error",e=>{n(e)})})}async parseFromUrl(e,a){let r=await fetch(e,a);if(!r.body)return null;let t=r.body.getReader(),n="";for(;;){let{done:e,value:a}=await t.read();if(e){n+=this._decoder.decode(new ArrayBuffer(0),{stream:!1});break}n+=this._decoder.decode(a,{stream:!0})}return this.parseSync(n)}parseAll(e){let a={header:{},blocks:{},entities:[],tables:{},objects:{byName:{},byTree:void 0}},r=e.next();for(;!o(r,0,"EOF");)o(r,0,"SECTION")&&(o(r=e.next(),2,"HEADER")?(r=e.next(),a.header=tf(r,e)):o(r,2,"BLOCKS")?(r=e.next(),a.blocks=tI(r,e)):o(r,2,"ENTITIES")?(r=e.next(),a.entities=th(r,e)):o(r,2,"TABLES")?(r=e.next(),a.tables=tV(r,e)):o(r,2,"OBJECTS")&&(r=e.next(),a.objects=tL(r,e))),r=e.next();return a}constructor(e=new tJ){super(),tZ(this,"_decoder",void 0),this._decoder=new TextDecoder(e.encoding,{fatal:e.encodingFailureFatal})}}export{aT as ArcEntityParser,aP as AttDefEntityParser,e0 as AttDefMTextFlag,eP as AttachmentPoint,aH as AttributeEntityParser,eQ as AttributeFlag,eN as BlockTypeFlag,aW as BodyEntityParser,eW as BoundaryPathEdgeType,eU as BoundaryPathTypeFlag,az as CircleEntityParser,eL as ColorCode,ah as CommonEntitySnippets,t as DefaultDxfHeaderVariables,e$ as DefaultLightingType,aO as DefaultTextEntity,tg as DictionarySnippets,tA as DimStyleVariablesSchema,aK as DimensionParser,ex as DimensionTextHorizontal,eA as DimensionTextLineSpacing,eC as DimensionTextVertical,eF as DimensionToleranceTextVertical,e_ as DimensionType,ev as DimensionZeroSuppression,eM as DimensionZeroSuppressionAngular,tX as DxfParsingError,tz as DxfStreamParser,tj as DxfStreamParserOptions,aq as EllipseEntityParser,e7 as FaceEdgeInvisibility,a1 as FaceEntityParser,eR as HatchAssociativity,eB as HatchBoundaryAnnotation,ro as HatchEntityParser,eG as HatchGradientColorFlag,eH as HatchGradientFlag,eV as HatchPatternType,ek as HatchSolidFill,ew as HatchStyle,n as INDEXED_CHUNK_SIZE,e9 as ImageClipMode,e6 as ImageClippingBoundaryType,ao as ImageDisplayFlag,rl as ImageEntityParser,e5 as ImageFlags,rm as InsertEntityParser,ae as LWPolylineFlag,rL as LWPolylineParser,ai as LayoutControlFlag,tD as LayoutSnippets,e8 as LeaderCreationFlag,rb as LeaderEntityParser,rD as LineEntityParser,ap as LineTypeElementType,e3 as MTextDrawingDirection,aR as MTextEntityParser,ak as MTextEntityParserSnippets,eX as Measurement,rA as MeshEntityParser,eY as ObscuredLineTypes,eJ as OrthographicType,ac as PlotPaperUnit,tT as PlotSettingsSnippets,al as PlotType,rx as PointEntityParser,aa as PolylineFlag,rG as PolylineParser,rY as RayParser,as as RecordCloneFlag,rz as RegionEntityParser,eK as RenderMode,ej as ReservedLineweight,a as SPLINE_SUBDIVISION,r$ as SectionEntityParser,ad as ShadePlotMode,au as ShadePlotResolution,eq as ShadowMode,ar as SmoothType,r3 as Solid3DEntityParser,r1 as SolidEntityParser,tO as SpatialFilterSnippets,r9 as SplineEntityParser,an as SplineFlag,r as TESSELLATION_ANGLE,aS as TextEntityParser,ay as TextEntityParserSnippets,e1 as TextGenerationFlag,e4 as TextHorizontalAlign,e2 as TextVerticalAlign,ta as ToleranceEntityParser,eZ as UCSPerViewport,e as UndeterminedBlockColor,at as VertexFlag,rw as VertexParser,tr as ViewportParser,ez as ViewportStatusFlag,ts as WipeoutEntityParser,m as XDataParserSnippets,tl as XLineEntityParser,aA as classify,aI as createLongStringSnippet,b as createXDataCatcher,I as createXDataControlInterpreter,t$ as default,T as ensureHandle,av as ensurePoint3D,aC as generateIntegers,aE as getAcadColor,o as isMatched,tb as parseBlock,tP as parseBlockRecordTable,tI as parseBlocks,tC as parseDimStyle,th as parseEntities,f as parseExtensions,tf as parseHeader,tx as parseLTypeTable,tv as parseLayerTable,tL as parseObjects,tF as parseStyleTable,tV as parseTables,tk as parseVPortTable,E as parseXData};
@@ -8,3 +8,4 @@ export declare enum BlockTypeFlag {
8
8
  ResolvedOrDependent = 32,
9
9
  ReferencedXref = 64
10
10
  }
11
+ //# sourceMappingURL=block.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../../src/consts/block.ts"],"names":[],"mappings":"AAAA,oBAAY,aAAa;IACrB,IAAI,IAAI;IAIR,SAAS,IAAI;IAIb,WAAW,IAAI;IAGf,IAAI,IAAI;IACR,WAAW,IAAI;IACf,mBAAmB,KAAK;IAGxB,mBAAmB,KAAK;IAGxB,cAAc,KAAK;CACtB"}
@@ -3,3 +3,4 @@ export declare enum ColorCode {
3
3
  BYLAYER = 256
4
4
  }
5
5
  export declare const UndeterminedBlockColor = -1;
6
+ //# sourceMappingURL=color.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../../src/consts/color.ts"],"names":[],"mappings":"AAAA,oBAAY,SAAS;IACjB,OAAO,IAAI;IACX,OAAO,MAAM;CAChB;AAED,eAAO,MAAM,sBAAsB,KAAK,CAAC"}
@@ -1,2 +1,3 @@
1
1
  export declare const SPLINE_SUBDIVISION = 4;
2
2
  export declare const TESSELLATION_ANGLE: number;
3
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/consts/config.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,kBAAkB,QAAe,CAAC"}
@@ -59,3 +59,4 @@ export declare enum DimensionToleranceTextVertical {
59
59
  Center = 1,
60
60
  Top = 2
61
61
  }
62
+ //# sourceMappingURL=dimension.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dimension.d.ts","sourceRoot":"","sources":["../../../src/consts/dimension.ts"],"names":[],"mappings":"AACA,oBAAY,aAAa;IACrB,OAAO,IAAI;IACX,OAAO,IAAI;IACX,OAAO,IAAI;IACX,QAAQ,IAAI;IACZ,MAAM,IAAI;IACV,aAAa,IAAI;IACjB,QAAQ,IAAI;IACZ,oBAAoB,KAAK;IACzB,mBAAmB,KAAK;IACxB,wBAAwB,MAAM;CACjC;AAED,oBAAY,eAAe;IACvB,OAAO,IAAI;IACX,SAAS,IAAI;IACb,QAAQ,IAAI;IACZ,UAAU,IAAI;IACd,YAAY,IAAI;IAChB,WAAW,IAAI;IACf,UAAU,IAAI;IACd,YAAY,IAAI;IAChB,WAAW,IAAI;CAClB;AAED,oBAAY,wBAAwB;IAChC,OAAO,IAAI;IACX,KAAK,IAAI;CACZ;AAED,oBAAY,qBAAqB;IAC7B,MAAM,IAAI;IACV,KAAK,IAAI;IACT,OAAO,IAAI;IACX,GAAG,IAAI;IACP,KAAK,IAAI;CACZ;AAED,oBAAY,wBAAwB;IAChC,IAAI,IAAI;IACR,IAAI,IAAI;IACR,IAAI,IAAI;IACR,WAAW,IAAI;IACf,OAAO,IAAI;IACX,QAAQ,IAAI;IACZ,kBAAkB,KAAK;CAC1B;AAED,oBAAY,+BAA+B;IACvC,IAAI,IAAI;IACR,OAAO,IAAI;IACX,QAAQ,IAAI;IACZ,kBAAkB,IAAI;CACzB;AAED,oBAAY,uBAAuB;IAC/B,MAAM,IAAI;IACV,IAAI,IAAI;IACR,KAAK,IAAI;IACT,SAAS,IAAI;IACb,UAAU,IAAI;CACjB;AAED,oBAAY,8BAA8B;IACtC,MAAM,IAAI;IACV,MAAM,IAAI;IACV,GAAG,IAAI;CACV"}
@@ -42,3 +42,4 @@ export declare enum BoundaryPathEdgeType {
42
42
  Elliptic = 3,
43
43
  Spline = 4
44
44
  }
45
+ //# sourceMappingURL=hatch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hatch.d.ts","sourceRoot":"","sources":["../../../src/consts/hatch.ts"],"names":[],"mappings":"AAAA,oBAAY,cAAc;IACtB,WAAW,IAAI;IACf,SAAS,IAAI;CAChB;AAED,oBAAY,kBAAkB;IAC1B,cAAc,IAAI,CAAE,8BAA8B;IAClD,WAAW,IAAI;CAClB;AAED,oBAAY,UAAU;IAClB,MAAM,IAAI,CAAE,kBAAkB;IAC9B,KAAK,IAAI,CAAE,iBAAiB;IAC5B,MAAM,IAAI;CACb;AAED,oBAAY,gBAAgB;IACxB,WAAW,IAAI;IACf,UAAU,IAAI;IACd,MAAM,IAAI;CACb;AAED,oBAAY,uBAAuB;IAC/B,YAAY,IAAI;IAChB,SAAS,IAAI;CAChB;AAED,oBAAY,iBAAiB;IACzB,KAAK,IAAI;IACT,QAAQ,IAAI;CACf;AAED,oBAAY,sBAAsB;IAC9B,QAAQ,IAAI;IACZ,QAAQ,IAAI;CACf;AAED,oBAAY,oBAAoB;IAC5B,OAAO,IAAI;IACX,QAAQ,IAAI;IACZ,QAAQ,IAAI;IACZ,OAAO,IAAI;IACX,OAAO,IAAI;IACX,SAAS,KAAK;CACjB;AAED,oBAAY,oBAAoB;IAC5B,IAAI,IAAI;IACR,QAAQ,IAAI;IACZ,QAAQ,IAAI;IACZ,MAAM,IAAI;CACb"}
@@ -7,3 +7,4 @@ export declare const DefaultDxfHeaderVariables: {
7
7
  OBSLTYPE: ObscuredLineTypes;
8
8
  SHADEDIF: number;
9
9
  };
10
+ //# sourceMappingURL=header.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../src/consts/header.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,eAAO,MAAM,yBAAyB;;;;;;;CAOrC,CAAC"}
@@ -9,3 +9,4 @@ export * from "./measurement";
9
9
  export * from "./obscuredLineTypes";
10
10
  export * from "./scene";
11
11
  export * from "./viewport";
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/consts/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC"}
@@ -3,3 +3,4 @@ export declare enum ReservedLineweight {
3
3
  ByLayer = -2,
4
4
  ByBlock = -1
5
5
  }
6
+ //# sourceMappingURL=lineweight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lineweight.d.ts","sourceRoot":"","sources":["../../../src/consts/lineweight.ts"],"names":[],"mappings":"AAAA,oBAAY,kBAAkB;IAC1B,QAAQ,KAAK;IACb,OAAO,KAAK;IACZ,OAAO,KAAK;CACf"}
@@ -2,3 +2,4 @@ export declare enum Measurement {
2
2
  English = 0,
3
3
  Metric = 1
4
4
  }
5
+ //# sourceMappingURL=measurement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"measurement.d.ts","sourceRoot":"","sources":["../../../src/consts/measurement.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW;IACnB,OAAO,IAAI;IACX,MAAM,IAAI;CACb"}
@@ -19,3 +19,4 @@ export declare enum ObscuredLineTypes {
19
19
  DoubleMediumLongDash = 10,
20
20
  SparseDot = 11
21
21
  }
22
+ //# sourceMappingURL=obscuredLineTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"obscuredLineTypes.d.ts","sourceRoot":"","sources":["../../../src/consts/obscuredLineTypes.ts"],"names":[],"mappings":"AAAA;;;;;;KAMK;AACL,oBAAY,iBAAiB;IACzB,GAAG,IAAI;IACP,KAAK,IAAI;IACT,MAAM,IAAI;IACV,MAAM,IAAI;IACV,QAAQ,IAAI;IACZ,UAAU,IAAI;IACd,QAAQ,IAAI;IACZ,eAAe,IAAI;IACnB,gBAAgB,IAAI;IACpB,cAAc,IAAI;IAClB,oBAAoB,KAAK;IACzB,SAAS,KAAK;CACjB"}
@@ -1,2 +1,3 @@
1
1
  /** Use 16-bit indices for indexed geometry. */
2
2
  export declare const INDEXED_CHUNK_SIZE = 65536;
3
+ //# sourceMappingURL=scene.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scene.d.ts","sourceRoot":"","sources":["../../../src/consts/scene.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,eAAO,MAAM,kBAAkB,QAAU,CAAC"}
@@ -48,3 +48,4 @@ export declare enum DefaultLightingType {
48
48
  ONE_DISTANT_LIGHT = 0,
49
49
  TWO_DISTANT_LIGHTS = 1
50
50
  }
51
+ //# sourceMappingURL=viewport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewport.d.ts","sourceRoot":"","sources":["../../../src/consts/viewport.ts"],"names":[],"mappings":"AAAA,oBAAY,kBAAkB;IAC1B,gBAAgB,IAAM;IACtB,cAAc,IAAM;IACpB,aAAa,IAAM;IACnB,UAAU,IAAM;IAChB,qBAAqB,KAAO;IAC5B,mBAAmB,KAAO;IAC1B,kBAAkB,KAAO;IACzB,SAAS,MAAO;IAChB,SAAS,MAAQ;IACjB,SAAS,MAAQ;IACjB,oBAAoB,OAAQ;IAC5B,cAAc,OAAQ;IACtB,cAAc,OAAS;IACvB,gBAAgB,OAAS;IACzB,qBAAqB,QAAS;IAC9B,MAAM,QAAS;IACf,wBAAwB,QAAU;IAClC,YAAY,SAAU;IACtB,0BAA0B,SAAU;IACpC,qBAAqB,SAAU;IAC/B,yBAAyB,UAAW;IACpC,sBAAsB,UAAW;CACpC;AAED,oBAAY,UAAU;IAClB,YAAY,IAAI,CAAE,aAAa;IAC/B,SAAS,IAAI;IACb,WAAW,IAAI;IACf,WAAW,IAAI;IACf,cAAc,IAAI;IAClB,0BAA0B,IAAI;IAC9B,6BAA6B,IAAI;CACpC;AAGD,oBAAY,cAAc;IACtB,aAAa,IAAI;IACjB,WAAW,IAAI;CAClB;AAED,oBAAY,gBAAgB;IACxB,gBAAgB,IAAI;IACpB,GAAG,IAAI;IACP,MAAM,IAAI;IACV,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;IACR,KAAK,IAAI;CACZ;AAED,oBAAY,mBAAmB;IAC3B,iBAAiB,IAAI;IACrB,kBAAkB,IAAI;CACzB"}
@@ -1,23 +1,8 @@
1
- export type * from './color';
2
- export type * from './dxfHeader';
3
- export interface Point2D {
4
- x: number;
5
- y: number;
6
- }
7
- export interface Point3D {
8
- x: number;
9
- y: number;
10
- z: number;
11
- }
12
- export interface Bound {
13
- minX: number;
14
- minY: number;
15
- maxX: number;
16
- maxY: number;
17
- }
18
- export type MakeOptional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
19
- export type Indexed<T, P extends string> = {
20
- [key in P]: T;
21
- } & {
22
- index: number;
23
- };
1
+ export * from "./consts";
2
+ export * from "./parser";
3
+ export * from "./stream-parser";
4
+ export type * from "./types";
5
+ export * from "./utils";
6
+ import { DxfParser } from "./parser/DxfParser";
7
+ export default DxfParser;
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,mBAAmB,SAAS,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,eAAe,SAAS,CAAC"}
@@ -6,3 +6,4 @@
6
6
  */
7
7
  declare const _default: number[];
8
8
  export default _default;
9
+ //# sourceMappingURL=AutoCadColorIndex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AutoCadColorIndex.d.ts","sourceRoot":"","sources":["../../../src/parser/AutoCadColorIndex.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;AAEH,wBAiQE"}
@@ -13,13 +13,13 @@ export interface ScannerGroup {
13
13
  * @param data - an array where each element represents a line in the dxf file
14
14
  * @constructor
15
15
  */
16
- export default class DxfArrayScanner {
16
+ export declare class DxfArrayScanner {
17
+ _data: string[];
18
+ debug: boolean;
17
19
  private _pointer;
18
- private _data;
19
20
  private _eof;
20
- debug: boolean;
21
21
  lastReadGroup: ScannerGroup;
22
- constructor(data: string[], debug?: boolean);
22
+ constructor(_data: string[], debug?: boolean);
23
23
  next(): {
24
24
  code: number;
25
25
  value: string | number | boolean;
@@ -45,4 +45,5 @@ export default class DxfArrayScanner {
45
45
  * @param value
46
46
  * @returns {*}
47
47
  */
48
- export declare function parseGroupValue(code: number, value: string): string | number | boolean;
48
+ export declare function parseGroupValue(code: number, value: string, isDebugMode?: boolean): string | number | boolean;
49
+ //# sourceMappingURL=DxfArrayScanner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DxfArrayScanner.d.ts","sourceRoot":"","sources":["../../../src/parser/DxfArrayScanner.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,GAAG,CAAC;CACX;AAED;;;;;;;;;;GAUG;AACH,qBAAa,eAAe;IAMR,KAAK,EAAE,MAAM,EAAE;IAAS,KAAK;IALhD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,IAAI,CAAU;IAEtB,aAAa,EAAE,YAAY,CAAyB;gBAEjC,KAAK,EAAE,MAAM,EAAE,EAAS,KAAK,UAAQ;IAKxD,IAAI;;;;IAgCJ,IAAI;IA0BJ,MAAM,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS;IAK1C;;;OAGG;IACH,OAAO;IASP;;;OAGG;IACH,KAAK;CAGL;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,UAAQ,6BAgC/E"}
@@ -14,8 +14,9 @@ export declare class DxfParserOptions {
14
14
  export declare class DxfParser extends EventTarget {
15
15
  private readonly _decoder;
16
16
  constructor(options?: DxfParserOptions);
17
- parseSync(dxfString: string): ParsedDxf;
17
+ parseSync(dxfString: string, isDebugMode?: boolean): ParsedDxf;
18
18
  parseStream(stream: Readable): Promise<ParsedDxf>;
19
19
  parseFromUrl(url: string, init?: RequestInit | undefined): Promise<ParsedDxf | null>;
20
20
  private parseAll;
21
21
  }
22
+ //# sourceMappingURL=DxfParser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DxfParser.d.ts","sourceRoot":"","sources":["../../../src/parser/DxfParser.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEhD,kDAAkD;AAClD,qBAAa,gBAAgB;IAC3B;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAW;IAC3B;;OAEG;IACH,oBAAoB,EAAE,OAAO,CAAS;CACvC;AAED,qBAAa,SAAU,SAAQ,WAAW;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAc;gBAE3B,OAAO,GAAE,gBAAyC;IAM9D,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,UAAQ,GAAG,SAAS;IAS5D,WAAW,CAAC,MAAM,EAAE,QAAQ;IAyBtB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,SAAS;IAmB9D,OAAO,CAAC,QAAQ;CAuCjB"}
@@ -1,5 +1,4 @@
1
- import type DxfArrayScanner from './DxfArrayScanner';
2
- import type { ScannerGroup } from './DxfArrayScanner';
1
+ import type { DxfArrayScanner, ScannerGroup } from './DxfArrayScanner';
3
2
  import type { CommonDxfEntity } from './entities/shared';
4
3
  /** Some entities may contain embedded object which is started by group 101. All the rest data until
5
4
  * end of entity should not be interpreted as entity attributes. There is no documentation for this
@@ -14,3 +13,4 @@ export declare function skipEmbeddedObject(scanner: DxfArrayScanner): void;
14
13
  * @param {*} curr - the current group being parsed
15
14
  */
16
15
  export declare function checkCommonEntityProperties(entity: CommonDxfEntity, curr: ScannerGroup, scanner: DxfArrayScanner): boolean;
16
+ //# sourceMappingURL=ParseHelpers.d.ts.map