@mlightcad/data-model 1.11.2 → 1.12.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 (388) hide show
  1. package/README.md +19 -12
  2. package/dist/data-model.cjs +15 -12
  3. package/lib/acis/AcDbAcisDecrypt.d.ts +51 -0
  4. package/lib/acis/AcDbAcisDecrypt.d.ts.map +1 -0
  5. package/lib/acis/AcDbAcisDecrypt.js +98 -0
  6. package/lib/acis/AcDbAcisDecrypt.js.map +1 -0
  7. package/lib/acis/index.d.ts +1 -0
  8. package/lib/acis/index.d.ts.map +1 -1
  9. package/lib/acis/index.js +1 -0
  10. package/lib/acis/index.js.map +1 -1
  11. package/lib/base/AcDbDxfFiler.d.ts +140 -4
  12. package/lib/base/AcDbDxfFiler.d.ts.map +1 -1
  13. package/lib/base/AcDbDxfFiler.js +690 -9
  14. package/lib/base/AcDbDxfFiler.js.map +1 -1
  15. package/lib/base/AcDbDxfGroupCodeTypes.d.ts +12 -0
  16. package/lib/base/AcDbDxfGroupCodeTypes.d.ts.map +1 -0
  17. package/lib/base/AcDbDxfGroupCodeTypes.js +96 -0
  18. package/lib/base/AcDbDxfGroupCodeTypes.js.map +1 -0
  19. package/lib/base/AcDbDxfPair.d.ts +38 -0
  20. package/lib/base/AcDbDxfPair.d.ts.map +1 -0
  21. package/lib/base/AcDbDxfPair.js +2 -0
  22. package/lib/base/AcDbDxfPair.js.map +1 -0
  23. package/lib/base/AcDbDxfPairReader.d.ts +65 -0
  24. package/lib/base/AcDbDxfPairReader.d.ts.map +1 -0
  25. package/lib/base/AcDbDxfPairReader.js +539 -0
  26. package/lib/base/AcDbDxfPairReader.js.map +1 -0
  27. package/lib/base/AcDbDxfStringChunks.d.ts +41 -0
  28. package/lib/base/AcDbDxfStringChunks.d.ts.map +1 -0
  29. package/lib/base/AcDbDxfStringChunks.js +121 -0
  30. package/lib/base/AcDbDxfStringChunks.js.map +1 -0
  31. package/lib/base/AcDbObject.d.ts +40 -0
  32. package/lib/base/AcDbObject.d.ts.map +1 -1
  33. package/lib/base/AcDbObject.js +144 -14
  34. package/lib/base/AcDbObject.js.map +1 -1
  35. package/lib/base/index.d.ts +9 -2
  36. package/lib/base/index.d.ts.map +1 -1
  37. package/lib/base/index.js +4 -1
  38. package/lib/base/index.js.map +1 -1
  39. package/lib/converter/AcDbFontNameCollector.d.ts +4 -0
  40. package/lib/converter/AcDbFontNameCollector.d.ts.map +1 -1
  41. package/lib/converter/AcDbFontNameCollector.js +6 -0
  42. package/lib/converter/AcDbFontNameCollector.js.map +1 -1
  43. package/lib/database/AcDbBlockTableRecord.d.ts +18 -2
  44. package/lib/database/AcDbBlockTableRecord.d.ts.map +1 -1
  45. package/lib/database/AcDbBlockTableRecord.js +67 -2
  46. package/lib/database/AcDbBlockTableRecord.js.map +1 -1
  47. package/lib/database/AcDbDatabase.d.ts +71 -8
  48. package/lib/database/AcDbDatabase.d.ts.map +1 -1
  49. package/lib/database/AcDbDatabase.js +381 -76
  50. package/lib/database/AcDbDatabase.js.map +1 -1
  51. package/lib/database/AcDbDatabaseConverterManager.d.ts +5 -0
  52. package/lib/database/AcDbDatabaseConverterManager.d.ts.map +1 -1
  53. package/lib/database/AcDbDatabaseConverterManager.js +5 -0
  54. package/lib/database/AcDbDatabaseConverterManager.js.map +1 -1
  55. package/lib/database/AcDbDimStyleTableRecord.d.ts +9 -0
  56. package/lib/database/AcDbDimStyleTableRecord.d.ts.map +1 -1
  57. package/lib/database/AcDbDimStyleTableRecord.js +277 -0
  58. package/lib/database/AcDbDimStyleTableRecord.js.map +1 -1
  59. package/lib/database/AcDbDwgVersion.d.ts +37 -0
  60. package/lib/database/AcDbDwgVersion.d.ts.map +1 -1
  61. package/lib/database/AcDbDwgVersion.js +31 -6
  62. package/lib/database/AcDbDwgVersion.js.map +1 -1
  63. package/lib/database/AcDbLayerTableRecord.d.ts +1 -0
  64. package/lib/database/AcDbLayerTableRecord.d.ts.map +1 -1
  65. package/lib/database/AcDbLayerTableRecord.js +52 -1
  66. package/lib/database/AcDbLayerTableRecord.js.map +1 -1
  67. package/lib/database/AcDbLinetypeTableRecord.d.ts +1 -0
  68. package/lib/database/AcDbLinetypeTableRecord.d.ts.map +1 -1
  69. package/lib/database/AcDbLinetypeTableRecord.js +60 -0
  70. package/lib/database/AcDbLinetypeTableRecord.js.map +1 -1
  71. package/lib/database/AcDbRegAppTableRecord.d.ts +1 -0
  72. package/lib/database/AcDbRegAppTableRecord.d.ts.map +1 -1
  73. package/lib/database/AcDbRegAppTableRecord.js +26 -0
  74. package/lib/database/AcDbRegAppTableRecord.js.map +1 -1
  75. package/lib/database/AcDbSystemVariables.d.ts +3 -1
  76. package/lib/database/AcDbSystemVariables.d.ts.map +1 -1
  77. package/lib/database/AcDbSystemVariables.js +2 -0
  78. package/lib/database/AcDbSystemVariables.js.map +1 -1
  79. package/lib/database/AcDbTextStyleTableRecord.d.ts +9 -0
  80. package/lib/database/AcDbTextStyleTableRecord.d.ts.map +1 -1
  81. package/lib/database/AcDbTextStyleTableRecord.js +101 -0
  82. package/lib/database/AcDbTextStyleTableRecord.js.map +1 -1
  83. package/lib/database/AcDbUcsTable.d.ts +15 -0
  84. package/lib/database/AcDbUcsTable.d.ts.map +1 -0
  85. package/lib/database/AcDbUcsTable.js +33 -0
  86. package/lib/database/AcDbUcsTable.js.map +1 -0
  87. package/lib/database/AcDbUcsTableRecord.d.ts +75 -0
  88. package/lib/database/AcDbUcsTableRecord.d.ts.map +1 -0
  89. package/lib/database/AcDbUcsTableRecord.js +240 -0
  90. package/lib/database/AcDbUcsTableRecord.js.map +1 -0
  91. package/lib/database/AcDbViewTableRecord.d.ts +9 -0
  92. package/lib/database/AcDbViewTableRecord.d.ts.map +1 -1
  93. package/lib/database/AcDbViewTableRecord.js +148 -0
  94. package/lib/database/AcDbViewTableRecord.js.map +1 -1
  95. package/lib/database/AcDbViewportTableRecord.d.ts +8 -0
  96. package/lib/database/AcDbViewportTableRecord.d.ts.map +1 -1
  97. package/lib/database/AcDbViewportTableRecord.js +253 -1
  98. package/lib/database/AcDbViewportTableRecord.js.map +1 -1
  99. package/lib/database/index.d.ts +4 -1
  100. package/lib/database/index.d.ts.map +1 -1
  101. package/lib/database/index.js +2 -0
  102. package/lib/database/index.js.map +1 -1
  103. package/lib/dxf/AcDbDxfAcdsDataReader.d.ts +25 -0
  104. package/lib/dxf/AcDbDxfAcdsDataReader.d.ts.map +1 -0
  105. package/lib/dxf/AcDbDxfAcdsDataReader.js +98 -0
  106. package/lib/dxf/AcDbDxfAcdsDataReader.js.map +1 -0
  107. package/lib/dxf/AcDbDxfDimensionAssembler.d.ts +10 -0
  108. package/lib/dxf/AcDbDxfDimensionAssembler.d.ts.map +1 -0
  109. package/lib/dxf/AcDbDxfDimensionAssembler.js +149 -0
  110. package/lib/dxf/AcDbDxfDimensionAssembler.js.map +1 -0
  111. package/lib/dxf/AcDbDxfDocumentReader.d.ts +101 -0
  112. package/lib/dxf/AcDbDxfDocumentReader.d.ts.map +1 -0
  113. package/lib/dxf/AcDbDxfDocumentReader.js +1100 -0
  114. package/lib/dxf/AcDbDxfDocumentReader.js.map +1 -0
  115. package/lib/dxf/AcDbDxfEntityFactory.d.ts +14 -0
  116. package/lib/dxf/AcDbDxfEntityFactory.d.ts.map +1 -0
  117. package/lib/dxf/AcDbDxfEntityFactory.js +147 -0
  118. package/lib/dxf/AcDbDxfEntityFactory.js.map +1 -0
  119. package/lib/dxf/AcDbDxfHeaderReader.d.ts +9 -0
  120. package/lib/dxf/AcDbDxfHeaderReader.d.ts.map +1 -0
  121. package/lib/dxf/AcDbDxfHeaderReader.js +248 -0
  122. package/lib/dxf/AcDbDxfHeaderReader.js.map +1 -0
  123. package/lib/dxf/AcDbDxfObjectsReader.d.ts +38 -0
  124. package/lib/dxf/AcDbDxfObjectsReader.d.ts.map +1 -0
  125. package/lib/dxf/AcDbDxfObjectsReader.js +533 -0
  126. package/lib/dxf/AcDbDxfObjectsReader.js.map +1 -0
  127. package/lib/dxf/AcDbDxfPairArrayReader.d.ts +27 -0
  128. package/lib/dxf/AcDbDxfPairArrayReader.d.ts.map +1 -0
  129. package/lib/dxf/AcDbDxfPairArrayReader.js +69 -0
  130. package/lib/dxf/AcDbDxfPairArrayReader.js.map +1 -0
  131. package/lib/dxf/AcDbDxfPolylineAssembler.d.ts +11 -0
  132. package/lib/dxf/AcDbDxfPolylineAssembler.d.ts.map +1 -0
  133. package/lib/dxf/AcDbDxfPolylineAssembler.js +318 -0
  134. package/lib/dxf/AcDbDxfPolylineAssembler.js.map +1 -0
  135. package/lib/dxf/AcDbDxfVersionCaps.d.ts +8 -0
  136. package/lib/dxf/AcDbDxfVersionCaps.d.ts.map +1 -0
  137. package/lib/dxf/AcDbDxfVersionCaps.js +18 -0
  138. package/lib/dxf/AcDbDxfVersionCaps.js.map +1 -0
  139. package/lib/dxf/AcDbNativeDxfConverter.d.ts +30 -0
  140. package/lib/dxf/AcDbNativeDxfConverter.d.ts.map +1 -0
  141. package/lib/dxf/AcDbNativeDxfConverter.js +266 -0
  142. package/lib/dxf/AcDbNativeDxfConverter.js.map +1 -0
  143. package/lib/dxf/index.d.ts +12 -0
  144. package/lib/dxf/index.d.ts.map +1 -0
  145. package/lib/dxf/index.js +9 -0
  146. package/lib/dxf/index.js.map +1 -0
  147. package/lib/dxf/registerNativeDxfConverter.d.ts +2 -0
  148. package/lib/dxf/registerNativeDxfConverter.d.ts.map +1 -0
  149. package/lib/dxf/registerNativeDxfConverter.js +12 -0
  150. package/lib/dxf/registerNativeDxfConverter.js.map +1 -0
  151. package/lib/entity/AcDb3dSolid.d.ts +43 -0
  152. package/lib/entity/AcDb3dSolid.d.ts.map +1 -1
  153. package/lib/entity/AcDb3dSolid.js +154 -16
  154. package/lib/entity/AcDb3dSolid.js.map +1 -1
  155. package/lib/entity/AcDbArc.d.ts +9 -0
  156. package/lib/entity/AcDbArc.d.ts.map +1 -1
  157. package/lib/entity/AcDbArc.js +107 -3
  158. package/lib/entity/AcDbArc.js.map +1 -1
  159. package/lib/entity/AcDbAttribute.d.ts +1 -0
  160. package/lib/entity/AcDbAttribute.d.ts.map +1 -1
  161. package/lib/entity/AcDbAttribute.js +44 -0
  162. package/lib/entity/AcDbAttribute.js.map +1 -1
  163. package/lib/entity/AcDbAttributeDefinition.d.ts +1 -0
  164. package/lib/entity/AcDbAttributeDefinition.d.ts.map +1 -1
  165. package/lib/entity/AcDbAttributeDefinition.js +47 -0
  166. package/lib/entity/AcDbAttributeDefinition.js.map +1 -1
  167. package/lib/entity/AcDbBlockReference.d.ts +26 -0
  168. package/lib/entity/AcDbBlockReference.d.ts.map +1 -1
  169. package/lib/entity/AcDbBlockReference.js +185 -5
  170. package/lib/entity/AcDbBlockReference.js.map +1 -1
  171. package/lib/entity/AcDbCircle.d.ts +9 -0
  172. package/lib/entity/AcDbCircle.d.ts.map +1 -1
  173. package/lib/entity/AcDbCircle.js +73 -1
  174. package/lib/entity/AcDbCircle.js.map +1 -1
  175. package/lib/entity/AcDbEllipse.d.ts +2 -0
  176. package/lib/entity/AcDbEllipse.d.ts.map +1 -1
  177. package/lib/entity/AcDbEllipse.js +71 -0
  178. package/lib/entity/AcDbEllipse.js.map +1 -1
  179. package/lib/entity/AcDbEntity.d.ts +12 -0
  180. package/lib/entity/AcDbEntity.d.ts.map +1 -1
  181. package/lib/entity/AcDbEntity.js +91 -1
  182. package/lib/entity/AcDbEntity.js.map +1 -1
  183. package/lib/entity/AcDbFace.d.ts +1 -0
  184. package/lib/entity/AcDbFace.d.ts.map +1 -1
  185. package/lib/entity/AcDbFace.js +49 -1
  186. package/lib/entity/AcDbFace.js.map +1 -1
  187. package/lib/entity/AcDbFcf.d.ts +1 -0
  188. package/lib/entity/AcDbFcf.d.ts.map +1 -1
  189. package/lib/entity/AcDbFcf.js +71 -0
  190. package/lib/entity/AcDbFcf.js.map +1 -1
  191. package/lib/entity/AcDbHatch.d.ts +17 -0
  192. package/lib/entity/AcDbHatch.d.ts.map +1 -1
  193. package/lib/entity/AcDbHatch.js +629 -4
  194. package/lib/entity/AcDbHatch.js.map +1 -1
  195. package/lib/entity/AcDbLeader.d.ts +1 -0
  196. package/lib/entity/AcDbLeader.d.ts.map +1 -1
  197. package/lib/entity/AcDbLeader.js +135 -0
  198. package/lib/entity/AcDbLeader.js.map +1 -1
  199. package/lib/entity/AcDbLine.d.ts +16 -1
  200. package/lib/entity/AcDbLine.d.ts.map +1 -1
  201. package/lib/entity/AcDbLine.js +102 -3
  202. package/lib/entity/AcDbLine.js.map +1 -1
  203. package/lib/entity/AcDbMLeader.d.ts +22 -0
  204. package/lib/entity/AcDbMLeader.d.ts.map +1 -1
  205. package/lib/entity/AcDbMLeader.js +871 -11
  206. package/lib/entity/AcDbMLeader.js.map +1 -1
  207. package/lib/entity/AcDbMLine.d.ts +1 -0
  208. package/lib/entity/AcDbMLine.d.ts.map +1 -1
  209. package/lib/entity/AcDbMLine.js +168 -0
  210. package/lib/entity/AcDbMLine.js.map +1 -1
  211. package/lib/entity/AcDbMText.d.ts +46 -1
  212. package/lib/entity/AcDbMText.d.ts.map +1 -1
  213. package/lib/entity/AcDbMText.js +278 -4
  214. package/lib/entity/AcDbMText.js.map +1 -1
  215. package/lib/entity/AcDbOle2Frame.d.ts +1 -0
  216. package/lib/entity/AcDbOle2Frame.d.ts.map +1 -1
  217. package/lib/entity/AcDbOle2Frame.js +83 -1
  218. package/lib/entity/AcDbOle2Frame.js.map +1 -1
  219. package/lib/entity/AcDbOleFrame.d.ts +1 -0
  220. package/lib/entity/AcDbOleFrame.d.ts.map +1 -1
  221. package/lib/entity/AcDbOleFrame.js +44 -1
  222. package/lib/entity/AcDbOleFrame.js.map +1 -1
  223. package/lib/entity/AcDbPoint.d.ts +27 -1
  224. package/lib/entity/AcDbPoint.d.ts.map +1 -1
  225. package/lib/entity/AcDbPoint.js +113 -2
  226. package/lib/entity/AcDbPoint.js.map +1 -1
  227. package/lib/entity/AcDbPolyline.d.ts +22 -1
  228. package/lib/entity/AcDbPolyline.d.ts.map +1 -1
  229. package/lib/entity/AcDbPolyline.js +195 -1
  230. package/lib/entity/AcDbPolyline.js.map +1 -1
  231. package/lib/entity/AcDbProxyEntity.d.ts +4 -2
  232. package/lib/entity/AcDbProxyEntity.d.ts.map +1 -1
  233. package/lib/entity/AcDbProxyEntity.js +55 -3
  234. package/lib/entity/AcDbProxyEntity.js.map +1 -1
  235. package/lib/entity/AcDbRasterImage.d.ts +16 -0
  236. package/lib/entity/AcDbRasterImage.d.ts.map +1 -1
  237. package/lib/entity/AcDbRasterImage.js +156 -0
  238. package/lib/entity/AcDbRasterImage.js.map +1 -1
  239. package/lib/entity/AcDbRay.d.ts +1 -0
  240. package/lib/entity/AcDbRay.d.ts.map +1 -1
  241. package/lib/entity/AcDbRay.js +42 -0
  242. package/lib/entity/AcDbRay.js.map +1 -1
  243. package/lib/entity/AcDbShape.d.ts +1 -0
  244. package/lib/entity/AcDbShape.d.ts.map +1 -1
  245. package/lib/entity/AcDbShape.js +76 -1
  246. package/lib/entity/AcDbShape.js.map +1 -1
  247. package/lib/entity/AcDbSpline.d.ts +23 -1
  248. package/lib/entity/AcDbSpline.d.ts.map +1 -1
  249. package/lib/entity/AcDbSpline.js +226 -1
  250. package/lib/entity/AcDbSpline.js.map +1 -1
  251. package/lib/entity/AcDbTable.d.ts +5 -0
  252. package/lib/entity/AcDbTable.d.ts.map +1 -1
  253. package/lib/entity/AcDbTable.js +265 -1
  254. package/lib/entity/AcDbTable.js.map +1 -1
  255. package/lib/entity/AcDbText.d.ts +25 -1
  256. package/lib/entity/AcDbText.d.ts.map +1 -1
  257. package/lib/entity/AcDbText.js +175 -1
  258. package/lib/entity/AcDbText.js.map +1 -1
  259. package/lib/entity/AcDbTextExtentsHelpers.d.ts +2 -2
  260. package/lib/entity/AcDbTextExtentsHelpers.js +3 -3
  261. package/lib/entity/AcDbTextExtentsHelpers.js.map +1 -1
  262. package/lib/entity/AcDbTrace.d.ts +9 -1
  263. package/lib/entity/AcDbTrace.d.ts.map +1 -1
  264. package/lib/entity/AcDbTrace.js +84 -5
  265. package/lib/entity/AcDbTrace.js.map +1 -1
  266. package/lib/entity/AcDbViewport.d.ts +174 -0
  267. package/lib/entity/AcDbViewport.d.ts.map +1 -1
  268. package/lib/entity/AcDbViewport.js +890 -1
  269. package/lib/entity/AcDbViewport.js.map +1 -1
  270. package/lib/entity/AcDbXline.d.ts +1 -0
  271. package/lib/entity/AcDbXline.d.ts.map +1 -1
  272. package/lib/entity/AcDbXline.js +42 -0
  273. package/lib/entity/AcDbXline.js.map +1 -1
  274. package/lib/entity/dimension/AcDb3PointAngularDimension.d.ts +1 -0
  275. package/lib/entity/dimension/AcDb3PointAngularDimension.d.ts.map +1 -1
  276. package/lib/entity/dimension/AcDb3PointAngularDimension.js +163 -0
  277. package/lib/entity/dimension/AcDb3PointAngularDimension.js.map +1 -1
  278. package/lib/entity/dimension/AcDbAlignedDimension.d.ts +2 -0
  279. package/lib/entity/dimension/AcDbAlignedDimension.d.ts.map +1 -1
  280. package/lib/entity/dimension/AcDbAlignedDimension.js +109 -2
  281. package/lib/entity/dimension/AcDbAlignedDimension.js.map +1 -1
  282. package/lib/entity/dimension/AcDbArcDimension.d.ts +1 -0
  283. package/lib/entity/dimension/AcDbArcDimension.d.ts.map +1 -1
  284. package/lib/entity/dimension/AcDbArcDimension.js +68 -0
  285. package/lib/entity/dimension/AcDbArcDimension.js.map +1 -1
  286. package/lib/entity/dimension/AcDbDiametricDimension.d.ts +1 -0
  287. package/lib/entity/dimension/AcDbDiametricDimension.d.ts.map +1 -1
  288. package/lib/entity/dimension/AcDbDiametricDimension.js +77 -0
  289. package/lib/entity/dimension/AcDbDiametricDimension.js.map +1 -1
  290. package/lib/entity/dimension/AcDbDimension.d.ts +50 -1
  291. package/lib/entity/dimension/AcDbDimension.d.ts.map +1 -1
  292. package/lib/entity/dimension/AcDbDimension.js +176 -5
  293. package/lib/entity/dimension/AcDbDimension.js.map +1 -1
  294. package/lib/entity/dimension/AcDbOrdinateDimension.d.ts +1 -0
  295. package/lib/entity/dimension/AcDbOrdinateDimension.d.ts.map +1 -1
  296. package/lib/entity/dimension/AcDbOrdinateDimension.js +46 -0
  297. package/lib/entity/dimension/AcDbOrdinateDimension.js.map +1 -1
  298. package/lib/entity/dimension/AcDbRadialDimension.d.ts +1 -0
  299. package/lib/entity/dimension/AcDbRadialDimension.d.ts.map +1 -1
  300. package/lib/entity/dimension/AcDbRadialDimension.js +69 -0
  301. package/lib/entity/dimension/AcDbRadialDimension.js.map +1 -1
  302. package/lib/index.d.ts +8 -6
  303. package/lib/index.d.ts.map +1 -1
  304. package/lib/index.js +8 -4
  305. package/lib/index.js.map +1 -1
  306. package/lib/ly/AcLyLayerFilterIO.d.ts.map +1 -1
  307. package/lib/ly/AcLyLayerFilterIO.js +5 -0
  308. package/lib/ly/AcLyLayerFilterIO.js.map +1 -1
  309. package/lib/misc/AcDbMemoryEstimator.d.ts.map +1 -1
  310. package/lib/misc/AcDbMemoryEstimator.js +3 -0
  311. package/lib/misc/AcDbMemoryEstimator.js.map +1 -1
  312. package/lib/misc/AcDbPreviewIcon.d.ts +11 -0
  313. package/lib/misc/AcDbPreviewIcon.d.ts.map +1 -1
  314. package/lib/misc/AcDbPreviewIcon.js +39 -3
  315. package/lib/misc/AcDbPreviewIcon.js.map +1 -1
  316. package/lib/misc/index.d.ts +2 -2
  317. package/lib/misc/index.d.ts.map +1 -1
  318. package/lib/misc/index.js +2 -2
  319. package/lib/misc/index.js.map +1 -1
  320. package/lib/misc/proxyGraphic/AcDbProxyGraphic.d.ts +6 -5
  321. package/lib/misc/proxyGraphic/AcDbProxyGraphic.d.ts.map +1 -1
  322. package/lib/misc/proxyGraphic/AcDbProxyGraphic.js +9 -36
  323. package/lib/misc/proxyGraphic/AcDbProxyGraphic.js.map +1 -1
  324. package/lib/misc/proxyGraphic/AcDbProxyGraphicBinaryStream.d.ts +12 -0
  325. package/lib/misc/proxyGraphic/AcDbProxyGraphicBinaryStream.d.ts.map +1 -1
  326. package/lib/misc/proxyGraphic/AcDbProxyGraphicBinaryStream.js +54 -0
  327. package/lib/misc/proxyGraphic/AcDbProxyGraphicBinaryStream.js.map +1 -1
  328. package/lib/misc/proxyGraphic/index.d.ts +1 -1
  329. package/lib/misc/proxyGraphic/index.d.ts.map +1 -1
  330. package/lib/misc/proxyGraphic/index.js +1 -1
  331. package/lib/misc/proxyGraphic/index.js.map +1 -1
  332. package/lib/object/AcDbDictionary.d.ts +7 -0
  333. package/lib/object/AcDbDictionary.d.ts.map +1 -1
  334. package/lib/object/AcDbDictionary.js +35 -0
  335. package/lib/object/AcDbDictionary.js.map +1 -1
  336. package/lib/object/AcDbFilter.d.ts +95 -0
  337. package/lib/object/AcDbFilter.d.ts.map +1 -1
  338. package/lib/object/AcDbFilter.js +256 -1
  339. package/lib/object/AcDbFilter.js.map +1 -1
  340. package/lib/object/AcDbGroup.d.ts +26 -0
  341. package/lib/object/AcDbGroup.d.ts.map +1 -0
  342. package/lib/object/AcDbGroup.js +171 -0
  343. package/lib/object/AcDbGroup.js.map +1 -0
  344. package/lib/object/AcDbIndex.d.ts +1 -0
  345. package/lib/object/AcDbIndex.d.ts.map +1 -1
  346. package/lib/object/AcDbIndex.js +23 -0
  347. package/lib/object/AcDbIndex.js.map +1 -1
  348. package/lib/object/AcDbLayerFilter.d.ts +1 -0
  349. package/lib/object/AcDbLayerFilter.d.ts.map +1 -1
  350. package/lib/object/AcDbLayerFilter.js +21 -0
  351. package/lib/object/AcDbLayerFilter.js.map +1 -1
  352. package/lib/object/AcDbLayerIndex.d.ts +1 -0
  353. package/lib/object/AcDbLayerIndex.d.ts.map +1 -1
  354. package/lib/object/AcDbLayerIndex.js +38 -0
  355. package/lib/object/AcDbLayerIndex.js.map +1 -1
  356. package/lib/object/AcDbMLeaderStyle.d.ts +1 -0
  357. package/lib/object/AcDbMLeaderStyle.d.ts.map +1 -1
  358. package/lib/object/AcDbMLeaderStyle.js +158 -1
  359. package/lib/object/AcDbMLeaderStyle.js.map +1 -1
  360. package/lib/object/AcDbMlineStyle.d.ts +2 -0
  361. package/lib/object/AcDbMlineStyle.d.ts.map +1 -1
  362. package/lib/object/AcDbMlineStyle.js +88 -0
  363. package/lib/object/AcDbMlineStyle.js.map +1 -1
  364. package/lib/object/AcDbRasterImageDef.d.ts +49 -0
  365. package/lib/object/AcDbRasterImageDef.d.ts.map +1 -1
  366. package/lib/object/AcDbRasterImageDef.js +136 -2
  367. package/lib/object/AcDbRasterImageDef.js.map +1 -1
  368. package/lib/object/AcDbSortentsTable.d.ts +14 -0
  369. package/lib/object/AcDbSortentsTable.d.ts.map +1 -0
  370. package/lib/object/AcDbSortentsTable.js +122 -0
  371. package/lib/object/AcDbSortentsTable.js.map +1 -0
  372. package/lib/object/AcDbXrecord.d.ts +8 -0
  373. package/lib/object/AcDbXrecord.d.ts.map +1 -1
  374. package/lib/object/AcDbXrecord.js +43 -2
  375. package/lib/object/AcDbXrecord.js.map +1 -1
  376. package/lib/object/index.d.ts +2 -0
  377. package/lib/object/index.d.ts.map +1 -1
  378. package/lib/object/index.js +2 -0
  379. package/lib/object/index.js.map +1 -1
  380. package/lib/object/layout/AcDbLayout.d.ts +60 -1
  381. package/lib/object/layout/AcDbLayout.d.ts.map +1 -1
  382. package/lib/object/layout/AcDbLayout.js +237 -1
  383. package/lib/object/layout/AcDbLayout.js.map +1 -1
  384. package/lib/object/layout/AcDbPlotSettings.d.ts +11 -0
  385. package/lib/object/layout/AcDbPlotSettings.d.ts.map +1 -1
  386. package/lib/object/layout/AcDbPlotSettings.js +143 -0
  387. package/lib/object/layout/AcDbPlotSettings.js.map +1 -1
  388. package/package.json +6 -5
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Decrypts obfuscated ACIS SAT text stored in DXF group codes 1 and 3.
3
+ *
4
+ * AutoCAD applies `chr(159 - ord(c))` to every character above ASCII space.
5
+ * See LibreDWG `dec_sat.pl` and the DXF reference for 3DSOLID/REGION/BODY.
6
+ *
7
+ * Ported from `@mlightcad/dxf-json` `parser/acis/decrypt.ts`.
8
+ */
9
+ /**
10
+ * Decrypts an obfuscated SAT fragment from a DXF group 1 or 3 value.
11
+ *
12
+ * @param encrypted - Obfuscated SAT fragment.
13
+ */
14
+ export declare function acdbDecryptAcisData(encrypted: string): string;
15
+ /**
16
+ * Returns true when `data` looks like encrypted ACIS rather than plain SAT/ASM
17
+ * text (which typically starts with a version number or "ACIS"/"ASM").
18
+ *
19
+ * @param data - Raw group 1/3 value before decryption.
20
+ */
21
+ export declare function acdbIsEncryptedAcisData(data: string): boolean;
22
+ /**
23
+ * Decrypts ACIS data when it is still in the DXF obfuscated form; otherwise
24
+ * returns the input unchanged.
25
+ *
26
+ * @param data - Raw or already-decrypted SAT fragment.
27
+ */
28
+ export declare function acdbNormalizeAcisData(data: string): string;
29
+ /**
30
+ * Decrypts each SAT line and joins them with `\n`.
31
+ *
32
+ * @param lines - One logical SAT line per group-code 1 (group 3 fragments are
33
+ * already stitched onto the preceding line).
34
+ */
35
+ export declare function acdbJoinAcisPayloadLines(lines: readonly string[]): string;
36
+ /**
37
+ * Stitches group-code 1/3 SAT fragments: group 1 starts a new SAT line and
38
+ * group 3 continues the previous line (255-character splits).
39
+ *
40
+ * @param lines - Mutable accumulator for logical SAT lines.
41
+ * @param code - DXF group code (1 or 3).
42
+ * @param value - Raw group value to append.
43
+ */
44
+ export declare function acdbAppendAcisPayloadFragment(lines: string[], code: 1 | 3, value: string): void;
45
+ /**
46
+ * Joins encrypted ACSH OBJECT group-1 chunks (no newlines between chunks).
47
+ *
48
+ * @param chunks - Ordered group 1/3 fragments from an ACSH OBJECT entry.
49
+ */
50
+ export declare function acdbJoinAcisObjectChunks(chunks: readonly string[]): string;
51
+ //# sourceMappingURL=AcDbAcisDecrypt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcDbAcisDecrypt.d.ts","sourceRoot":"","sources":["../../src/acis/AcDbAcisDecrypt.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAO7D;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAmB7D;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK1D;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAKzE;AAED;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,MAAM,EAAE,EACf,IAAI,EAAE,CAAC,GAAG,CAAC,EACX,KAAK,EAAE,MAAM,GACZ,IAAI,CAUN;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAK1E"}
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Decrypts obfuscated ACIS SAT text stored in DXF group codes 1 and 3.
3
+ *
4
+ * AutoCAD applies `chr(159 - ord(c))` to every character above ASCII space.
5
+ * See LibreDWG `dec_sat.pl` and the DXF reference for 3DSOLID/REGION/BODY.
6
+ *
7
+ * Ported from `@mlightcad/dxf-json` `parser/acis/decrypt.ts`.
8
+ */
9
+ /**
10
+ * Decrypts an obfuscated SAT fragment from a DXF group 1 or 3 value.
11
+ *
12
+ * @param encrypted - Obfuscated SAT fragment.
13
+ */
14
+ export function acdbDecryptAcisData(encrypted) {
15
+ var decrypted = '';
16
+ for (var i = 0; i < encrypted.length; i++) {
17
+ var code = encrypted.charCodeAt(i);
18
+ decrypted += code <= 32 ? encrypted[i] : String.fromCharCode(159 - code);
19
+ }
20
+ return decrypted;
21
+ }
22
+ /**
23
+ * Returns true when `data` looks like encrypted ACIS rather than plain SAT/ASM
24
+ * text (which typically starts with a version number or "ACIS"/"ASM").
25
+ *
26
+ * @param data - Raw group 1/3 value before decryption.
27
+ */
28
+ export function acdbIsEncryptedAcisData(data) {
29
+ var trimmed = data.trimStart();
30
+ if (!trimmed) {
31
+ return false;
32
+ }
33
+ if (/^\d/.test(trimmed) || /^ACIS/i.test(trimmed) || /^ASM/i.test(trimmed)) {
34
+ return false;
35
+ }
36
+ if (/^(body|point|plane|cone|cylinder|sphere|torus|lump|shell|face|edge|wire|transform)\b/i.test(trimmed)) {
37
+ return false;
38
+ }
39
+ if (/\b(body|point|straight-curve|ellipse-curve)\s+\$/.test(trimmed)) {
40
+ return false;
41
+ }
42
+ return true;
43
+ }
44
+ /**
45
+ * Decrypts ACIS data when it is still in the DXF obfuscated form; otherwise
46
+ * returns the input unchanged.
47
+ *
48
+ * @param data - Raw or already-decrypted SAT fragment.
49
+ */
50
+ export function acdbNormalizeAcisData(data) {
51
+ if (!data || !acdbIsEncryptedAcisData(data)) {
52
+ return data;
53
+ }
54
+ return acdbDecryptAcisData(data);
55
+ }
56
+ /**
57
+ * Decrypts each SAT line and joins them with `\n`.
58
+ *
59
+ * @param lines - One logical SAT line per group-code 1 (group 3 fragments are
60
+ * already stitched onto the preceding line).
61
+ */
62
+ export function acdbJoinAcisPayloadLines(lines) {
63
+ if (lines.length === 0) {
64
+ return '';
65
+ }
66
+ return lines.map(function (line) { return acdbNormalizeAcisData(line); }).join('\n');
67
+ }
68
+ /**
69
+ * Stitches group-code 1/3 SAT fragments: group 1 starts a new SAT line and
70
+ * group 3 continues the previous line (255-character splits).
71
+ *
72
+ * @param lines - Mutable accumulator for logical SAT lines.
73
+ * @param code - DXF group code (1 or 3).
74
+ * @param value - Raw group value to append.
75
+ */
76
+ export function acdbAppendAcisPayloadFragment(lines, code, value) {
77
+ if (code === 1) {
78
+ lines.push(value);
79
+ return;
80
+ }
81
+ if (lines.length === 0) {
82
+ lines.push(value);
83
+ return;
84
+ }
85
+ lines[lines.length - 1] += value;
86
+ }
87
+ /**
88
+ * Joins encrypted ACSH OBJECT group-1 chunks (no newlines between chunks).
89
+ *
90
+ * @param chunks - Ordered group 1/3 fragments from an ACSH OBJECT entry.
91
+ */
92
+ export function acdbJoinAcisObjectChunks(chunks) {
93
+ if (chunks.length === 0) {
94
+ return '';
95
+ }
96
+ return acdbNormalizeAcisData(chunks.join(''));
97
+ }
98
+ //# sourceMappingURL=AcDbAcisDecrypt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcDbAcisDecrypt.js","sourceRoot":"","sources":["../../src/acis/AcDbAcisDecrypt.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,SAAiB;IACnD,IAAI,SAAS,GAAG,EAAE,CAAA;IAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,IAAM,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;QACpC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,GAAG,IAAI,CAAC,CAAA;IAC3E,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAY;IAClD,IAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,CAAA;IAChC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,KAAK,CAAA;IACd,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3E,OAAO,KAAK,CAAA;IACd,CAAC;IACD,IACE,uFAAuF,CAAC,IAAI,CAC1F,OAAO,CACR,EACD,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IACD,IAAI,kDAAkD,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACrE,OAAO,KAAK,CAAA;IACd,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAChD,IAAI,CAAC,IAAI,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5C,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAA;AAClC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAwB;IAC/D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO,KAAK,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,qBAAqB,CAAC,IAAI,CAAC,EAA3B,CAA2B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAClE,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,6BAA6B,CAC3C,KAAe,EACf,IAAW,EACX,KAAa;IAEb,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACjB,OAAM;IACR,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACjB,OAAM;IACR,CAAC;IACD,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,KAAK,CAAA;AAClC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAAyB;IAChE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;AAC/C,CAAC"}
@@ -3,6 +3,7 @@
3
3
  *
4
4
  * @packageDocumentation
5
5
  */
6
+ export { acdbAppendAcisPayloadFragment, acdbDecryptAcisData, acdbIsEncryptedAcisData, acdbJoinAcisObjectChunks, acdbJoinAcisPayloadLines, acdbNormalizeAcisData } from './AcDbAcisDecrypt';
6
7
  export { acdbParseAcisSab, AcDbAcisSabTag } from './AcDbAcisSab';
7
8
  export type { AcDbAcisSabData, AcDbAcisSabHeader, AcDbAcisSabRecord, AcDbAcisSabToken, AcDbAcisSabTokenValue, AcDbAcisSabVector, } from './AcDbAcisSab';
8
9
  export { acdbBuildAcisModel } from './AcDbAcisEntities';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/acis/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAChE,YAAY,EACV,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACvD,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACrE,OAAO,EACL,mBAAmB,EACnB,8BAA8B,EAC9B,oBAAoB,GACrB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,uBAAuB,EACvB,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,0BAA0B,EAC1B,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,uBAAuB,EACvB,sBAAsB,EACtB,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACpB,2BAA2B,EAC3B,mBAAmB,EACnB,qBAAqB,EACrB,2BAA2B,EAC3B,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,cAAc,GACf,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,qCAAqC,EACrC,gCAAgC,GACjC,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,oCAAoC,EAAE,MAAM,wBAAwB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/acis/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EACL,6BAA6B,EAC7B,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,qBAAqB,EACtB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAChE,YAAY,EACV,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACvD,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACrE,OAAO,EACL,mBAAmB,EACnB,8BAA8B,EAC9B,oBAAoB,GACrB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,uBAAuB,EACvB,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,0BAA0B,EAC1B,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,uBAAuB,EACvB,sBAAsB,EACtB,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACpB,2BAA2B,EAC3B,mBAAmB,EACnB,qBAAqB,EACrB,2BAA2B,EAC3B,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,cAAc,GACf,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,qCAAqC,EACrC,gCAAgC,GACjC,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,oCAAoC,EAAE,MAAM,wBAAwB,CAAA"}
package/lib/acis/index.js CHANGED
@@ -3,6 +3,7 @@
3
3
  *
4
4
  * @packageDocumentation
5
5
  */
6
+ export { acdbAppendAcisPayloadFragment, acdbDecryptAcisData, acdbIsEncryptedAcisData, acdbJoinAcisObjectChunks, acdbJoinAcisPayloadLines, acdbNormalizeAcisData } from './AcDbAcisDecrypt';
6
7
  export { acdbParseAcisSab, AcDbAcisSabTag } from './AcDbAcisSab';
7
8
  export { acdbBuildAcisModel } from './AcDbAcisEntities';
8
9
  export { acdbDecodeAcisModel, acdbFindAcisSabSignatureOffset, acdbIsAcisSabPayload, } from './AcDbAcisDecode';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/acis/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAShE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAEvD,OAAO,EACL,mBAAmB,EACnB,8BAA8B,EAC9B,oBAAoB,GACrB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,uBAAuB,EACvB,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,oBAAoB,CAAA;AAyB3B,OAAO,EACL,qCAAqC,EACrC,gCAAgC,GACjC,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,oCAAoC,EAAE,MAAM,wBAAwB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/acis/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EACL,6BAA6B,EAC7B,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,qBAAqB,EACtB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAShE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAEvD,OAAO,EACL,mBAAmB,EACnB,8BAA8B,EAC9B,oBAAoB,GACrB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,uBAAuB,EACvB,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,oBAAoB,CAAA;AAyB3B,OAAO,EACL,qCAAqC,EACrC,gCAAgC,GACjC,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,oCAAoC,EAAE,MAAM,wBAAwB,CAAA"}
@@ -1,41 +1,164 @@
1
1
  import { AcCmColor, AcCmTransparency } from '@mlightcad/common';
2
- import { AcGePoint2dLike, AcGePoint3dLike, AcGeVector3dLike } from '@mlightcad/geometry-engine';
2
+ import { AcGePoint2d, AcGePoint2dLike, AcGePoint3d, AcGePoint3dLike, AcGeVector3d, AcGeVector3dLike } from '@mlightcad/geometry-engine';
3
3
  import type { AcDbDatabase } from '../database/AcDbDatabase';
4
4
  import { AcDbDwgVersion } from '../database/AcDbDwgVersion';
5
+ import type { AcDbDxfPair } from './AcDbDxfPair';
6
+ import { type AcDbDxfPairReader } from './AcDbDxfPairReader';
5
7
  import { AcDbResultBuffer } from './AcDbResultBuffer';
8
+ import type { AcDbTypedValue } from './AcDbTypedValue';
9
+ /** Filer direction, mirroring ObjectARX usage of AcDbDxfFiler for in vs out. */
10
+ export type AcDbDxfFilerMode = 'read' | 'write';
11
+ /** DXF text vs binary output for write-mode filers. */
12
+ export type AcDbDxfOutputFormat = 'ascii' | 'binary';
13
+ /**
14
+ * Lightweight status codes for DXF filing (ObjectARX-inspired).
15
+ */
16
+ export declare enum AcDbDxfFilerStatus {
17
+ Ok = 0,
18
+ EndOfFile = 1,
19
+ EndOfObject = 2,
20
+ InvalidDxfCode = 3,
21
+ BadDxfSequence = 4,
22
+ NotThatKindOfClass = 5,
23
+ WrongMode = 6
24
+ }
6
25
  export interface AcDbDxfFilerOptions {
7
26
  database?: AcDbDatabase;
8
27
  precision?: number;
9
28
  version?: string | number | AcDbDwgVersion;
29
+ /** When set, constructs a read-mode filer over this pair stream. */
30
+ reader?: AcDbDxfPairReader;
31
+ /** Write-mode output format (default ASCII). */
32
+ outputFormat?: AcDbDxfOutputFormat;
10
33
  }
11
34
  /**
12
- * ASCII DXF writer that loosely mirrors the ObjectARX AcDbDxfFiler API.
35
+ * DXF filer that mirrors the ObjectARX {@link AcDbDxfFiler} API.
13
36
  *
14
- * This implementation focuses on export scenarios in the web data model and
15
- * writes classic group-code based DXF text.
37
+ * - **Write mode** (default): accumulates classic group-code ASCII DXF text,
38
+ * or binary DXF bytes when `outputFormat` is `'binary'`.
39
+ * - **Read mode**: pulls typed pairs from an {@link AcDbDxfPairReader} with
40
+ * `readItem` / `pushBackItem` / `atEndOfObject` / `atSubclassData`.
16
41
  */
17
42
  export declare class AcDbDxfFiler {
18
43
  private _database?;
19
44
  private _precision;
20
45
  private _version?;
46
+ private readonly _mode;
47
+ private readonly _outputFormat;
21
48
  private readonly _lines;
49
+ private readonly _binaryChunks;
50
+ private _binaryLength;
22
51
  private readonly _handleMap;
23
52
  private _nextHandle;
53
+ private _reader?;
54
+ /**
55
+ * Pushback stack for read mode (ObjectARX `pushBackItem`).
56
+ * LIFO: nested pushBacks are supported so a second push does not clobber
57
+ * the first.
58
+ */
59
+ private _pushed;
60
+ private _status;
61
+ private _errorMessage;
62
+ private _lastRead;
24
63
  constructor(options?: AcDbDxfFilerOptions);
64
+ /** Create a read-mode filer from an existing pair reader. */
65
+ static forReading(reader: AcDbDxfPairReader, options?: Omit<AcDbDxfFilerOptions, 'reader'>): AcDbDxfFiler;
66
+ /** Create a read-mode filer from DXF bytes (ASCII or binary). */
67
+ static fromBuffer(data: ArrayBuffer | Uint8Array, options?: Omit<AcDbDxfFilerOptions, 'reader'>): AcDbDxfFiler;
68
+ /** Create a read-mode filer from an already-decoded ASCII DXF string. */
69
+ static fromString(text: string, options?: Omit<AcDbDxfFilerOptions, 'reader'>): AcDbDxfFiler;
70
+ get mode(): AcDbDxfFilerMode;
25
71
  get database(): AcDbDatabase | undefined;
26
72
  set database(value: AcDbDatabase | undefined);
27
73
  get precision(): number;
28
74
  setPrecision(value: number): this;
29
75
  get version(): AcDbDwgVersion | undefined;
30
76
  get nextHandle(): number;
77
+ get filerStatus(): AcDbDxfFilerStatus;
78
+ get errorMessage(): string;
31
79
  setVersion(value: string | number | AcDbDwgVersion): this;
80
+ setError(status: AcDbDxfFilerStatus, message?: string): this;
81
+ resetStatus(): this;
32
82
  toString(): string;
83
+ /** Finalize binary DXF bytes (includes magic prefix). */
84
+ toBinary(): Uint8Array;
33
85
  registerHandle(key: string): string;
34
86
  resolveHandle(key?: string): string | undefined;
87
+ /** True if no more pairs are available. */
88
+ get atEof(): boolean;
89
+ /**
90
+ * Current read position in the underlying pair stream.
91
+ * Useful for byte-based parse progress while streaming a DXF.
92
+ */
93
+ position(): {
94
+ line?: number;
95
+ byteOffset: number;
96
+ };
97
+ /**
98
+ * True if the next pair starts a new object (group code 0) or EOF.
99
+ * Does not consume the pair.
100
+ */
101
+ get atEndOfObject(): boolean;
102
+ /** True if the next pair is XDATA start (1001) or similar extended data. */
103
+ get atExtendedData(): boolean;
104
+ /**
105
+ * Advance past subclass marker (100, name) if present.
106
+ * Returns true when positioned at the named subclass data.
107
+ */
108
+ atSubclassData(name: string): boolean;
109
+ /** Peek the next pair without consuming it. */
110
+ peekItem(): AcDbTypedValue | undefined;
111
+ /**
112
+ * Read one DXF item into a typed value (ObjectARX `readItem`).
113
+ * Returns undefined at EOF and sets {@link filerStatus} to EndOfFile.
114
+ */
115
+ readItem(): AcDbTypedValue | undefined;
116
+ /**
117
+ * Push the last-read (or provided) pair back so the next read returns it.
118
+ * Multiple pushbacks form a LIFO stack (nested readers can push without
119
+ * overwriting a prior push).
120
+ */
121
+ pushBackItem(item?: AcDbTypedValue | AcDbDxfPair): void;
122
+ /** Skip pairs until the next object boundary (code 0) without consuming it. */
123
+ skipToEndOfObject(): void;
124
+ readString(expectedCode?: number): string | undefined;
125
+ readInt16(expectedCode?: number): number | undefined;
126
+ readInt32(expectedCode?: number): number | undefined;
127
+ readInt64(expectedCode?: number): number | bigint | undefined;
128
+ readDouble(expectedCode?: number): number | undefined;
129
+ readBoolean(expectedCode?: number): boolean | undefined;
130
+ readHandle(expectedCode?: number): string | undefined;
131
+ readObjectId(expectedCode?: number): string | undefined;
132
+ /**
133
+ * Read a 2D point starting at `code` (x), then `code+10` (y).
134
+ * Tolerates missing Y (defaults to 0) when the next code is not code+10.
135
+ */
136
+ readPoint2d(code: number): AcGePoint2d | undefined;
137
+ /**
138
+ * Read a 3D point starting at `code` (x), then `code+10` / `code+20`.
139
+ * Missing Y/Z default to 0 when those group codes are absent.
140
+ */
141
+ readPoint3d(code: number): AcGePoint3d | undefined;
142
+ readVector3d(code: number): AcGeVector3d | undefined;
143
+ /**
144
+ * Apply color group codes (62 ACI / 420 true color) onto `color` when the
145
+ * current pair matches. Returns true if a color code was consumed.
146
+ */
147
+ readCmColorInto(color: AcCmColor, aciCode?: number, trueColorCode?: number): boolean;
35
148
  writeGroup(code: number, value: unknown): this;
36
149
  writeStart(value: string): this;
150
+ /**
151
+ * DXF dialect capabilities for the target write version.
152
+ * When version is unset (ad-hoc writers / unit tests), treat as latest.
153
+ */
154
+ get capabilities(): import("../database/AcDbDwgVersion").AcDbDxfVersionCapabilities;
37
155
  writeSubclassMarker(value: string): this;
38
156
  writeString(code: number, value?: string): this;
157
+ /**
158
+ * Write MTEXT (or embedded-MTEXT) contents using AutoCAD's group 3 / group 1
159
+ * 250-character chunking rules.
160
+ */
161
+ writeMTextContents(text: string): this;
39
162
  writeInt8(code: number, value?: number): this;
40
163
  writeInt16(code: number, value?: number): this;
41
164
  writeInt32(code: number, value?: number): this;
@@ -48,6 +171,8 @@ export declare class AcDbDxfFiler {
48
171
  writeAngle(code: number, radians?: number): this;
49
172
  writeHandle(code: number, key?: string): this;
50
173
  writeObjectId(code: number, objectId?: string): this;
174
+ /** Lineweight (group 370). Omitted for DXF targets before AutoCAD 2000. */
175
+ writeLineWeight(code: number, value?: number): this;
51
176
  writePoint2d(code: number, point?: AcGePoint2dLike): this;
52
177
  writePoint3d(code: number, point?: AcGePoint3dLike): this;
53
178
  writeVector3d(code: number, vector?: AcGeVector3dLike): this;
@@ -58,6 +183,17 @@ export declare class AcDbDxfFiler {
58
183
  endSection(): this;
59
184
  startTable(name: string): this;
60
185
  endTable(): this;
186
+ private assertWriteMode;
187
+ private appendBinary;
188
+ private writeBinaryCode;
189
+ private writeBinaryGroup;
190
+ private assertReadMode;
191
+ private peekPair;
192
+ private readPair;
193
+ private pushBackPair;
194
+ private readNumber;
195
+ private pairToTypedValue;
196
+ private typedValueToPair;
61
197
  private formatValue;
62
198
  /** Removes characters that must not appear on a single DXF value line. */
63
199
  private sanitizeStringForDxfLine;
@@ -1 +1 @@
1
- {"version":3,"file":"AcDbDxfFiler.d.ts","sourceRoot":"","sources":["../../src/base/AcDbDxfFiler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AcDbDxfFiler.d.ts","sourceRoot":"","sources":["../../src/base/AcDbDxfFiler.ts"],"names":[],"mappings":"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"}