@mlightcad/data-model 1.3.3 → 1.3.5

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 (344) hide show
  1. package/dist/data-model.cjs +5 -0
  2. package/dist/data-model.js +25995 -0
  3. package/dist/dxf-parser-worker.js +1715 -0
  4. package/lib/base/AcDbHostApplicationServices.d.ts +96 -0
  5. package/lib/base/AcDbHostApplicationServices.d.ts.map +1 -0
  6. package/lib/base/AcDbHostApplicationServices.js +118 -0
  7. package/lib/base/AcDbHostApplicationServices.js.map +1 -0
  8. package/lib/base/AcDbObject.d.ts +205 -0
  9. package/lib/base/AcDbObject.d.ts.map +1 -0
  10. package/lib/base/AcDbObject.js +236 -0
  11. package/lib/base/AcDbObject.js.map +1 -0
  12. package/lib/base/index.d.ts +3 -0
  13. package/lib/base/index.d.ts.map +1 -0
  14. package/lib/base/index.js +3 -0
  15. package/lib/base/index.js.map +1 -0
  16. package/lib/converter/AcDbBatchProcessing.d.ts +146 -0
  17. package/lib/converter/AcDbBatchProcessing.d.ts.map +1 -0
  18. package/lib/converter/AcDbBatchProcessing.js +272 -0
  19. package/lib/converter/AcDbBatchProcessing.js.map +1 -0
  20. package/lib/converter/AcDbDxfConverter.d.ts +272 -0
  21. package/lib/converter/AcDbDxfConverter.d.ts.map +1 -0
  22. package/lib/converter/AcDbDxfConverter.js +883 -0
  23. package/lib/converter/AcDbDxfConverter.js.map +1 -0
  24. package/lib/converter/AcDbDxfParser.d.ts +23 -0
  25. package/lib/converter/AcDbDxfParser.d.ts.map +1 -0
  26. package/lib/converter/AcDbDxfParser.js +85 -0
  27. package/lib/converter/AcDbDxfParser.js.map +1 -0
  28. package/lib/converter/AcDbEntitiyConverter.d.ts +160 -0
  29. package/lib/converter/AcDbEntitiyConverter.d.ts.map +1 -0
  30. package/lib/converter/AcDbEntitiyConverter.js +708 -0
  31. package/lib/converter/AcDbEntitiyConverter.js.map +1 -0
  32. package/lib/converter/AcDbObjectConverter.d.ts +61 -0
  33. package/lib/converter/AcDbObjectConverter.d.ts.map +1 -0
  34. package/lib/converter/AcDbObjectConverter.js +91 -0
  35. package/lib/converter/AcDbObjectConverter.js.map +1 -0
  36. package/lib/converter/AcDbRegenerator.d.ts +101 -0
  37. package/lib/converter/AcDbRegenerator.d.ts.map +1 -0
  38. package/lib/converter/AcDbRegenerator.js +334 -0
  39. package/lib/converter/AcDbRegenerator.js.map +1 -0
  40. package/lib/converter/index.d.ts +5 -0
  41. package/lib/converter/index.d.ts.map +1 -0
  42. package/lib/converter/index.js +5 -0
  43. package/lib/converter/index.js.map +1 -0
  44. package/lib/converter/worker/AcDbBaseWorker.d.ts +36 -0
  45. package/lib/converter/worker/AcDbBaseWorker.d.ts.map +1 -0
  46. package/lib/converter/worker/AcDbBaseWorker.js +93 -0
  47. package/lib/converter/worker/AcDbBaseWorker.js.map +1 -0
  48. package/lib/converter/worker/AcDbDxfParserWorker.d.ts +11 -0
  49. package/lib/converter/worker/AcDbDxfParserWorker.d.ts.map +1 -0
  50. package/lib/converter/worker/AcDbDxfParserWorker.js +75 -0
  51. package/lib/converter/worker/AcDbDxfParserWorker.js.map +1 -0
  52. package/lib/converter/worker/AcDbWorkerManager.d.ts +107 -0
  53. package/lib/converter/worker/AcDbWorkerManager.d.ts.map +1 -0
  54. package/lib/converter/worker/AcDbWorkerManager.js +360 -0
  55. package/lib/converter/worker/AcDbWorkerManager.js.map +1 -0
  56. package/lib/converter/worker/index.d.ts +3 -0
  57. package/lib/converter/worker/index.d.ts.map +1 -0
  58. package/lib/converter/worker/index.js +3 -0
  59. package/lib/converter/worker/index.js.map +1 -0
  60. package/lib/database/AcDbBlockTable.d.ts +56 -0
  61. package/lib/database/AcDbBlockTable.d.ts.map +1 -0
  62. package/lib/database/AcDbBlockTable.js +98 -0
  63. package/lib/database/AcDbBlockTable.js.map +1 -0
  64. package/lib/database/AcDbBlockTableRecord.d.ts +185 -0
  65. package/lib/database/AcDbBlockTableRecord.d.ts.map +1 -0
  66. package/lib/database/AcDbBlockTableRecord.js +261 -0
  67. package/lib/database/AcDbBlockTableRecord.js.map +1 -0
  68. package/lib/database/AcDbDatabase.d.ts +563 -0
  69. package/lib/database/AcDbDatabase.d.ts.map +1 -0
  70. package/lib/database/AcDbDatabase.js +842 -0
  71. package/lib/database/AcDbDatabase.js.map +1 -0
  72. package/lib/database/AcDbDatabaseConverter.d.ts +292 -0
  73. package/lib/database/AcDbDatabaseConverter.d.ts.map +1 -0
  74. package/lib/database/AcDbDatabaseConverter.js +448 -0
  75. package/lib/database/AcDbDatabaseConverter.js.map +1 -0
  76. package/lib/database/AcDbDatabaseConverterManager.d.ts +141 -0
  77. package/lib/database/AcDbDatabaseConverterManager.d.ts.map +1 -0
  78. package/lib/database/AcDbDatabaseConverterManager.js +173 -0
  79. package/lib/database/AcDbDatabaseConverterManager.js.map +1 -0
  80. package/lib/database/AcDbDimStyleTable.d.ts +31 -0
  81. package/lib/database/AcDbDimStyleTable.d.ts.map +1 -0
  82. package/lib/database/AcDbDimStyleTable.js +49 -0
  83. package/lib/database/AcDbDimStyleTable.js.map +1 -0
  84. package/lib/database/AcDbDimStyleTableRecord.d.ts +797 -0
  85. package/lib/database/AcDbDimStyleTableRecord.d.ts.map +1 -0
  86. package/lib/database/AcDbDimStyleTableRecord.js +1294 -0
  87. package/lib/database/AcDbDimStyleTableRecord.js.map +1 -0
  88. package/lib/database/AcDbDwgVersion.d.ts +32 -0
  89. package/lib/database/AcDbDwgVersion.d.ts.map +1 -0
  90. package/lib/database/AcDbDwgVersion.js +126 -0
  91. package/lib/database/AcDbDwgVersion.js.map +1 -0
  92. package/lib/database/AcDbLayerTable.d.ts +51 -0
  93. package/lib/database/AcDbLayerTable.d.ts.map +1 -0
  94. package/lib/database/AcDbLayerTable.js +92 -0
  95. package/lib/database/AcDbLayerTable.js.map +1 -0
  96. package/lib/database/AcDbLayerTableRecord.d.ts +278 -0
  97. package/lib/database/AcDbLayerTableRecord.d.ts.map +1 -0
  98. package/lib/database/AcDbLayerTableRecord.js +397 -0
  99. package/lib/database/AcDbLayerTableRecord.js.map +1 -0
  100. package/lib/database/AcDbLinetypeTable.d.ts +30 -0
  101. package/lib/database/AcDbLinetypeTable.d.ts.map +1 -0
  102. package/lib/database/AcDbLinetypeTable.js +48 -0
  103. package/lib/database/AcDbLinetypeTable.js.map +1 -0
  104. package/lib/database/AcDbLinetypeTableRecord.d.ts +79 -0
  105. package/lib/database/AcDbLinetypeTableRecord.d.ts.map +1 -0
  106. package/lib/database/AcDbLinetypeTableRecord.js +129 -0
  107. package/lib/database/AcDbLinetypeTableRecord.js.map +1 -0
  108. package/lib/database/AcDbSymbolTable.d.ts +199 -0
  109. package/lib/database/AcDbSymbolTable.d.ts.map +1 -0
  110. package/lib/database/AcDbSymbolTable.js +264 -0
  111. package/lib/database/AcDbSymbolTable.js.map +1 -0
  112. package/lib/database/AcDbSymbolTableRecord.d.ts +61 -0
  113. package/lib/database/AcDbSymbolTableRecord.d.ts.map +1 -0
  114. package/lib/database/AcDbSymbolTableRecord.js +82 -0
  115. package/lib/database/AcDbSymbolTableRecord.js.map +1 -0
  116. package/lib/database/AcDbTextStyleTable.d.ts +48 -0
  117. package/lib/database/AcDbTextStyleTable.d.ts.map +1 -0
  118. package/lib/database/AcDbTextStyleTable.js +112 -0
  119. package/lib/database/AcDbTextStyleTable.js.map +1 -0
  120. package/lib/database/AcDbTextStyleTableRecord.d.ts +179 -0
  121. package/lib/database/AcDbTextStyleTableRecord.d.ts.map +1 -0
  122. package/lib/database/AcDbTextStyleTableRecord.js +276 -0
  123. package/lib/database/AcDbTextStyleTableRecord.js.map +1 -0
  124. package/lib/database/AcDbViewportTable.d.ts +31 -0
  125. package/lib/database/AcDbViewportTable.d.ts.map +1 -0
  126. package/lib/database/AcDbViewportTable.js +49 -0
  127. package/lib/database/AcDbViewportTable.js.map +1 -0
  128. package/lib/database/AcDbViewportTableRecord.d.ts +154 -0
  129. package/lib/database/AcDbViewportTableRecord.d.ts.map +1 -0
  130. package/lib/database/AcDbViewportTableRecord.js +318 -0
  131. package/lib/database/AcDbViewportTableRecord.js.map +1 -0
  132. package/lib/database/index.d.ts +19 -0
  133. package/lib/database/index.d.ts.map +1 -0
  134. package/lib/database/index.js +19 -0
  135. package/lib/database/index.js.map +1 -0
  136. package/lib/entity/AcDb2dPolyline.d.ts +146 -0
  137. package/lib/entity/AcDb2dPolyline.d.ts.map +1 -0
  138. package/lib/entity/AcDb2dPolyline.js +220 -0
  139. package/lib/entity/AcDb2dPolyline.js.map +1 -0
  140. package/lib/entity/AcDb2dVertex.d.ts +143 -0
  141. package/lib/entity/AcDb2dVertex.d.ts.map +1 -0
  142. package/lib/entity/AcDb2dVertex.js +210 -0
  143. package/lib/entity/AcDb2dVertex.js.map +1 -0
  144. package/lib/entity/AcDb3dPolyline.d.ts +102 -0
  145. package/lib/entity/AcDb3dPolyline.d.ts.map +1 -0
  146. package/lib/entity/AcDb3dPolyline.js +158 -0
  147. package/lib/entity/AcDb3dPolyline.js.map +1 -0
  148. package/lib/entity/AcDb3dVertex.d.ts +83 -0
  149. package/lib/entity/AcDb3dVertex.d.ts.map +1 -0
  150. package/lib/entity/AcDb3dVertex.js +133 -0
  151. package/lib/entity/AcDb3dVertex.js.map +1 -0
  152. package/lib/entity/AcDbArc.d.ts +254 -0
  153. package/lib/entity/AcDbArc.d.ts.map +1 -0
  154. package/lib/entity/AcDbArc.js +340 -0
  155. package/lib/entity/AcDbArc.js.map +1 -0
  156. package/lib/entity/AcDbBlockReference.d.ts +190 -0
  157. package/lib/entity/AcDbBlockReference.d.ts.map +1 -0
  158. package/lib/entity/AcDbBlockReference.js +302 -0
  159. package/lib/entity/AcDbBlockReference.js.map +1 -0
  160. package/lib/entity/AcDbCircle.d.ts +186 -0
  161. package/lib/entity/AcDbCircle.d.ts.map +1 -0
  162. package/lib/entity/AcDbCircle.js +249 -0
  163. package/lib/entity/AcDbCircle.js.map +1 -0
  164. package/lib/entity/AcDbCurve.d.ts +42 -0
  165. package/lib/entity/AcDbCurve.d.ts.map +1 -0
  166. package/lib/entity/AcDbCurve.js +44 -0
  167. package/lib/entity/AcDbCurve.js.map +1 -0
  168. package/lib/entity/AcDbEllipse.d.ts +207 -0
  169. package/lib/entity/AcDbEllipse.d.ts.map +1 -0
  170. package/lib/entity/AcDbEllipse.js +272 -0
  171. package/lib/entity/AcDbEllipse.js.map +1 -0
  172. package/lib/entity/AcDbEntity.d.ts +385 -0
  173. package/lib/entity/AcDbEntity.d.ts.map +1 -0
  174. package/lib/entity/AcDbEntity.js +561 -0
  175. package/lib/entity/AcDbEntity.js.map +1 -0
  176. package/lib/entity/AcDbFace.d.ts +151 -0
  177. package/lib/entity/AcDbFace.d.ts.map +1 -0
  178. package/lib/entity/AcDbFace.js +224 -0
  179. package/lib/entity/AcDbFace.js.map +1 -0
  180. package/lib/entity/AcDbHatch.d.ts +174 -0
  181. package/lib/entity/AcDbHatch.d.ts.map +1 -0
  182. package/lib/entity/AcDbHatch.js +250 -0
  183. package/lib/entity/AcDbHatch.js.map +1 -0
  184. package/lib/entity/AcDbLeader.d.ts +243 -0
  185. package/lib/entity/AcDbLeader.d.ts.map +1 -0
  186. package/lib/entity/AcDbLeader.js +358 -0
  187. package/lib/entity/AcDbLeader.js.map +1 -0
  188. package/lib/entity/AcDbLine.d.ts +198 -0
  189. package/lib/entity/AcDbLine.d.ts.map +1 -0
  190. package/lib/entity/AcDbLine.js +300 -0
  191. package/lib/entity/AcDbLine.js.map +1 -0
  192. package/lib/entity/AcDbMText.d.ts +248 -0
  193. package/lib/entity/AcDbMText.d.ts.map +1 -0
  194. package/lib/entity/AcDbMText.js +414 -0
  195. package/lib/entity/AcDbMText.js.map +1 -0
  196. package/lib/entity/AcDbPoint.d.ts +113 -0
  197. package/lib/entity/AcDbPoint.d.ts.map +1 -0
  198. package/lib/entity/AcDbPoint.js +155 -0
  199. package/lib/entity/AcDbPoint.js.map +1 -0
  200. package/lib/entity/AcDbPolyline.d.ts +221 -0
  201. package/lib/entity/AcDbPolyline.d.ts.map +1 -0
  202. package/lib/entity/AcDbPolyline.js +301 -0
  203. package/lib/entity/AcDbPolyline.js.map +1 -0
  204. package/lib/entity/AcDbRasterImage.d.ts +216 -0
  205. package/lib/entity/AcDbRasterImage.d.ts.map +1 -0
  206. package/lib/entity/AcDbRasterImage.js +451 -0
  207. package/lib/entity/AcDbRasterImage.js.map +1 -0
  208. package/lib/entity/AcDbRay.d.ts +150 -0
  209. package/lib/entity/AcDbRay.d.ts.map +1 -0
  210. package/lib/entity/AcDbRay.js +208 -0
  211. package/lib/entity/AcDbRay.js.map +1 -0
  212. package/lib/entity/AcDbSpline.d.ts +135 -0
  213. package/lib/entity/AcDbSpline.d.ts.map +1 -0
  214. package/lib/entity/AcDbSpline.js +142 -0
  215. package/lib/entity/AcDbSpline.js.map +1 -0
  216. package/lib/entity/AcDbTable.d.ts +260 -0
  217. package/lib/entity/AcDbTable.d.ts.map +1 -0
  218. package/lib/entity/AcDbTable.js +452 -0
  219. package/lib/entity/AcDbTable.js.map +1 -0
  220. package/lib/entity/AcDbText.d.ts +388 -0
  221. package/lib/entity/AcDbText.d.ts.map +1 -0
  222. package/lib/entity/AcDbText.js +523 -0
  223. package/lib/entity/AcDbText.js.map +1 -0
  224. package/lib/entity/AcDbTrace.d.ts +193 -0
  225. package/lib/entity/AcDbTrace.d.ts.map +1 -0
  226. package/lib/entity/AcDbTrace.js +271 -0
  227. package/lib/entity/AcDbTrace.js.map +1 -0
  228. package/lib/entity/AcDbViewport.d.ts +173 -0
  229. package/lib/entity/AcDbViewport.d.ts.map +1 -0
  230. package/lib/entity/AcDbViewport.js +295 -0
  231. package/lib/entity/AcDbViewport.js.map +1 -0
  232. package/lib/entity/AcDbWipeout.d.ts +39 -0
  233. package/lib/entity/AcDbWipeout.d.ts.map +1 -0
  234. package/lib/entity/AcDbWipeout.js +70 -0
  235. package/lib/entity/AcDbWipeout.js.map +1 -0
  236. package/lib/entity/AcDbXline.d.ts +151 -0
  237. package/lib/entity/AcDbXline.d.ts.map +1 -0
  238. package/lib/entity/AcDbXline.js +209 -0
  239. package/lib/entity/AcDbXline.js.map +1 -0
  240. package/lib/entity/dimension/AcDb3PointAngularDimension.d.ts +92 -0
  241. package/lib/entity/dimension/AcDb3PointAngularDimension.d.ts.map +1 -0
  242. package/lib/entity/dimension/AcDb3PointAngularDimension.js +157 -0
  243. package/lib/entity/dimension/AcDb3PointAngularDimension.js.map +1 -0
  244. package/lib/entity/dimension/AcDbAlignedDimension.d.ts +220 -0
  245. package/lib/entity/dimension/AcDbAlignedDimension.d.ts.map +1 -0
  246. package/lib/entity/dimension/AcDbAlignedDimension.js +341 -0
  247. package/lib/entity/dimension/AcDbAlignedDimension.js.map +1 -0
  248. package/lib/entity/dimension/AcDbArcDimension.d.ts +94 -0
  249. package/lib/entity/dimension/AcDbArcDimension.d.ts.map +1 -0
  250. package/lib/entity/dimension/AcDbArcDimension.js +159 -0
  251. package/lib/entity/dimension/AcDbArcDimension.js.map +1 -0
  252. package/lib/entity/dimension/AcDbDiametricDimension.d.ts +145 -0
  253. package/lib/entity/dimension/AcDbDiametricDimension.d.ts.map +1 -0
  254. package/lib/entity/dimension/AcDbDiametricDimension.js +275 -0
  255. package/lib/entity/dimension/AcDbDiametricDimension.js.map +1 -0
  256. package/lib/entity/dimension/AcDbDimension.d.ts +257 -0
  257. package/lib/entity/dimension/AcDbDimension.d.ts.map +1 -0
  258. package/lib/entity/dimension/AcDbDimension.js +466 -0
  259. package/lib/entity/dimension/AcDbDimension.js.map +1 -0
  260. package/lib/entity/dimension/AcDbOrdinateDimension.d.ts +78 -0
  261. package/lib/entity/dimension/AcDbOrdinateDimension.d.ts.map +1 -0
  262. package/lib/entity/dimension/AcDbOrdinateDimension.js +133 -0
  263. package/lib/entity/dimension/AcDbOrdinateDimension.js.map +1 -0
  264. package/lib/entity/dimension/AcDbRadialDimension.d.ts +214 -0
  265. package/lib/entity/dimension/AcDbRadialDimension.d.ts.map +1 -0
  266. package/lib/entity/dimension/AcDbRadialDimension.js +288 -0
  267. package/lib/entity/dimension/AcDbRadialDimension.js.map +1 -0
  268. package/lib/entity/dimension/index.d.ts +8 -0
  269. package/lib/entity/dimension/index.d.ts.map +1 -0
  270. package/lib/entity/dimension/index.js +8 -0
  271. package/lib/entity/dimension/index.js.map +1 -0
  272. package/lib/entity/index.d.ts +28 -0
  273. package/lib/entity/index.d.ts.map +1 -0
  274. package/lib/entity/index.js +28 -0
  275. package/lib/entity/index.js.map +1 -0
  276. package/lib/index.d.ts +10 -0
  277. package/lib/index.d.ts.map +1 -0
  278. package/lib/index.js +10 -0
  279. package/lib/index.js.map +1 -0
  280. package/lib/misc/AcDbAngleUnits.d.ts +20 -0
  281. package/lib/misc/AcDbAngleUnits.d.ts.map +1 -0
  282. package/lib/misc/AcDbAngleUnits.js +21 -0
  283. package/lib/misc/AcDbAngleUnits.js.map +1 -0
  284. package/lib/misc/AcDbCodePage.d.ts +50 -0
  285. package/lib/misc/AcDbCodePage.d.ts.map +1 -0
  286. package/lib/misc/AcDbCodePage.js +100 -0
  287. package/lib/misc/AcDbCodePage.js.map +1 -0
  288. package/lib/misc/AcDbConstants.d.ts +24 -0
  289. package/lib/misc/AcDbConstants.d.ts.map +1 -0
  290. package/lib/misc/AcDbConstants.js +24 -0
  291. package/lib/misc/AcDbConstants.js.map +1 -0
  292. package/lib/misc/AcDbDimArrowType.d.ts +89 -0
  293. package/lib/misc/AcDbDimArrowType.d.ts.map +1 -0
  294. package/lib/misc/AcDbDimArrowType.js +90 -0
  295. package/lib/misc/AcDbDimArrowType.js.map +1 -0
  296. package/lib/misc/AcDbObjectIterator.d.ts +64 -0
  297. package/lib/misc/AcDbObjectIterator.d.ts.map +1 -0
  298. package/lib/misc/AcDbObjectIterator.js +84 -0
  299. package/lib/misc/AcDbObjectIterator.js.map +1 -0
  300. package/lib/misc/AcDbOsnapMode.d.ts +51 -0
  301. package/lib/misc/AcDbOsnapMode.d.ts.map +1 -0
  302. package/lib/misc/AcDbOsnapMode.js +52 -0
  303. package/lib/misc/AcDbOsnapMode.js.map +1 -0
  304. package/lib/misc/AcDbRenderingCache.d.ts +141 -0
  305. package/lib/misc/AcDbRenderingCache.d.ts.map +1 -0
  306. package/lib/misc/AcDbRenderingCache.js +239 -0
  307. package/lib/misc/AcDbRenderingCache.js.map +1 -0
  308. package/lib/misc/AcDbUnitsValue.d.ts +101 -0
  309. package/lib/misc/AcDbUnitsValue.d.ts.map +1 -0
  310. package/lib/misc/AcDbUnitsValue.js +121 -0
  311. package/lib/misc/AcDbUnitsValue.js.map +1 -0
  312. package/lib/misc/index.d.ts +9 -0
  313. package/lib/misc/index.d.ts.map +1 -0
  314. package/lib/misc/index.js +9 -0
  315. package/lib/misc/index.js.map +1 -0
  316. package/lib/object/AcDbDictionary.d.ts +178 -0
  317. package/lib/object/AcDbDictionary.d.ts.map +1 -0
  318. package/lib/object/AcDbDictionary.js +264 -0
  319. package/lib/object/AcDbDictionary.js.map +1 -0
  320. package/lib/object/AcDbRasterImageDef.d.ts +54 -0
  321. package/lib/object/AcDbRasterImageDef.d.ts.map +1 -0
  322. package/lib/object/AcDbRasterImageDef.js +82 -0
  323. package/lib/object/AcDbRasterImageDef.js.map +1 -0
  324. package/lib/object/index.d.ts +4 -0
  325. package/lib/object/index.d.ts.map +1 -0
  326. package/lib/object/index.js +4 -0
  327. package/lib/object/index.js.map +1 -0
  328. package/lib/object/layout/AcDbLayout.d.ts +190 -0
  329. package/lib/object/layout/AcDbLayout.d.ts.map +1 -0
  330. package/lib/object/layout/AcDbLayout.js +253 -0
  331. package/lib/object/layout/AcDbLayout.js.map +1 -0
  332. package/lib/object/layout/AcDbLayoutDictionary.d.ts +47 -0
  333. package/lib/object/layout/AcDbLayoutDictionary.d.ts.map +1 -0
  334. package/lib/object/layout/AcDbLayoutDictionary.js +122 -0
  335. package/lib/object/layout/AcDbLayoutDictionary.js.map +1 -0
  336. package/lib/object/layout/AcDbLayoutManager.d.ts +188 -0
  337. package/lib/object/layout/AcDbLayoutManager.d.ts.map +1 -0
  338. package/lib/object/layout/AcDbLayoutManager.js +245 -0
  339. package/lib/object/layout/AcDbLayoutManager.js.map +1 -0
  340. package/lib/object/layout/index.d.ts +4 -0
  341. package/lib/object/layout/index.d.ts.map +1 -0
  342. package/lib/object/layout/index.js +4 -0
  343. package/lib/object/layout/index.js.map +1 -0
  344. package/package.json +4 -4
@@ -0,0 +1,185 @@
1
+ import { AcGePoint3d } from '@mlightcad/geometry-engine';
2
+ import { AcDbObjectId } from '../base/AcDbObject';
3
+ import { AcDbEntity } from '../entity/AcDbEntity';
4
+ import { AcDbObjectIterator } from '../misc/AcDbObjectIterator';
5
+ import { AcDbSymbolTableRecord } from './AcDbSymbolTableRecord';
6
+ /**
7
+ * Block table record that serves as a container for entities within drawing databases.
8
+ *
9
+ * Block table records (BTRs) are used to organize and group entities together.
10
+ * There are two special BTRs that are always present in every database:
11
+ * - *MODEL_SPACE: Contains entities in model space
12
+ * - *PAPER_SPACE: Contains entities in paper space
13
+ *
14
+ * Each block table record has an origin point and can contain multiple entities.
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * const blockRecord = new AcDbBlockTableRecord();
19
+ * blockRecord.name = 'MyBlock';
20
+ * blockRecord.origin = new AcGePoint3d(0, 0, 0);
21
+ * blockRecord.appendEntity(new AcDbLine());
22
+ * ```
23
+ */
24
+ export declare class AcDbBlockTableRecord extends AcDbSymbolTableRecord {
25
+ /** Name constant for model space block table record */
26
+ static MODEL_SPACE_NAME: string;
27
+ /** Name prefix for paper space block table records */
28
+ static PAPER_SPACE_NAME_PREFIX: string;
29
+ /** The base point of the block in WCS coordinates */
30
+ private _origin;
31
+ /** The object id of the associated AcDbLayout object in the Layouts dictionary.*/
32
+ private _layoutId;
33
+ /** Map of entities indexed by their object IDs */
34
+ private _entities;
35
+ /**
36
+ * Returns true if the specified name is the name of the model space block table record.
37
+ *
38
+ * Model space is the primary drawing area where most entities are created.
39
+ *
40
+ * @param name - The name of one block table record.
41
+ * @returns True if the specified name is the name of the model space block table record.
42
+ *
43
+ * @example
44
+ * ```typescript
45
+ * if (AcDbBlockTableRecord.isModelSapceName('*Model_Space')) {
46
+ * console.log('This is the name of the model space block table record.');
47
+ * }
48
+ * ```
49
+ */
50
+ static isModelSapceName(name: string): boolean;
51
+ /**
52
+ * Returns true if the specified name is the name of a paper space block table record.
53
+ *
54
+ * Paper space is used for creating layouts for printing and plotting.
55
+ *
56
+ * @param name - The name of one block table record.
57
+ * @returns True if the specified name is the name of a paper space block table record.
58
+ *
59
+ * @example
60
+ * ```typescript
61
+ * if (AcDbBlockTableRecord.isPaperSapceName('*Paper_Space1')) {
62
+ * console.log('This is the name of the paper space block table record.');
63
+ * }
64
+ * ```
65
+ */
66
+ static isPaperSapceName(name: string): boolean;
67
+ /**
68
+ * Creates a new AcDbBlockTableRecord instance.
69
+ *
70
+ * @example
71
+ * ```typescript
72
+ * const blockRecord = new AcDbBlockTableRecord();
73
+ * ```
74
+ */
75
+ constructor();
76
+ /**
77
+ * Returns true if this is a model space block table record.
78
+ *
79
+ * Model space is the primary drawing area where most entities are created.
80
+ *
81
+ * @returns True if this is a model space block table record
82
+ *
83
+ * @example
84
+ * ```typescript
85
+ * if (blockRecord.isModelSapce) {
86
+ * console.log('This is model space');
87
+ * }
88
+ * ```
89
+ */
90
+ get isModelSapce(): boolean;
91
+ /**
92
+ * Returns true if this is a paper space block table record.
93
+ *
94
+ * Paper space is used for creating layouts for printing and plotting.
95
+ *
96
+ * @returns True if this is a paper space block table record
97
+ *
98
+ * @example
99
+ * ```typescript
100
+ * if (blockRecord.isPaperSapce) {
101
+ * console.log('This is paper space');
102
+ * }
103
+ * ```
104
+ */
105
+ get isPaperSapce(): boolean;
106
+ /**
107
+ * Gets or sets the base point of the block in WCS coordinates.
108
+ *
109
+ * This point is the origin of the MCS (Model Coordinate System), which is the
110
+ * local WCS for the entities within the block table record.
111
+ *
112
+ * @returns The origin point of the block
113
+ *
114
+ * @example
115
+ * ```typescript
116
+ * const origin = blockRecord.origin;
117
+ * blockRecord.origin = new AcGePoint3d(10, 20, 0);
118
+ * ```
119
+ */
120
+ get origin(): AcGePoint3d;
121
+ set origin(value: AcGePoint3d);
122
+ /**
123
+ * Gets or sets the object ID of the associated AcDbLayout object in the Layouts dictionary.
124
+ *
125
+ * This property links the block table record to its corresponding layout object,
126
+ * which defines the viewport configuration and display settings for the block.
127
+ * For model space blocks, this is typically empty, while paper space blocks
128
+ * have a corresponding layout ID.
129
+ *
130
+ * @returns The object ID of the associated layout
131
+ *
132
+ * @example
133
+ * ```typescript
134
+ * const layoutId = blockRecord.layoutId;
135
+ * blockRecord.layoutId = 'some-layout-object-id';
136
+ * ```
137
+ */
138
+ get layoutId(): AcDbObjectId;
139
+ set layoutId(value: AcDbObjectId);
140
+ /**
141
+ * Appends the specified entity or entities to this block table record.
142
+ *
143
+ * This method adds an entity to the block and sets up the necessary
144
+ * relationships between the entity and the block table record.
145
+ *
146
+ * @param entity - The entity or entities to append to this block table record
147
+ *
148
+ * @example
149
+ * ```typescript
150
+ * const line = new AcDbLine();
151
+ * blockRecord.appendEntity(line);
152
+ * ```
153
+ */
154
+ appendEntity(entity: AcDbEntity | AcDbEntity[]): void;
155
+ /**
156
+ * Creates an iterator object that can be used to iterate over the entities in the block table record.
157
+ *
158
+ * @returns An iterator object that can be used to iterate over the entities
159
+ *
160
+ * @example
161
+ * ```typescript
162
+ * const iterator = blockRecord.newIterator();
163
+ * for (const entity of iterator) {
164
+ * console.log('Entity:', entity.type);
165
+ * }
166
+ * ```
167
+ */
168
+ newIterator(): AcDbObjectIterator<AcDbEntity>;
169
+ /**
170
+ * Searches for an entity in this block table record with the specified ID.
171
+ *
172
+ * @param id - The entity ID to search for
173
+ * @returns The entity with the specified ID, or undefined if not found
174
+ *
175
+ * @example
176
+ * ```typescript
177
+ * const entity = blockRecord.getIdAt('some-entity-id');
178
+ * if (entity) {
179
+ * console.log('Found entity:', entity.type);
180
+ * }
181
+ * ```
182
+ */
183
+ getIdAt(id: string): AcDbEntity | undefined;
184
+ }
185
+ //# sourceMappingURL=AcDbBlockTableRecord.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcDbBlockTableRecord.d.ts","sourceRoot":"","sources":["../../src/database/AcDbBlockTableRecord.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAExD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAE/D;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,oBAAqB,SAAQ,qBAAqB;IAC7D,uDAAuD;IACvD,MAAM,CAAC,gBAAgB,SAAiB;IACxC,sDAAsD;IACtD,MAAM,CAAC,uBAAuB,SAAiB;IAE/C,qDAAqD;IACrD,OAAO,CAAC,OAAO,CAAa;IAC5B,kFAAkF;IAClF,OAAO,CAAC,SAAS,CAAc;IAC/B,kDAAkD;IAClD,OAAO,CAAC,SAAS,CAA+B;IAEhD;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM;IAMpC;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM;IAMpC;;;;;;;OAOG;;IAQH;;;;;;;;;;;;;OAaG;IACH,IAAI,YAAY,YAEf;IAED;;;;;;;;;;;;;OAaG;IACH,IAAI,YAAY,YAEf;IAED;;;;;;;;;;;;;OAaG;IACH,IAAI,MAAM,IAGQ,WAAW,CAD5B;IACD,IAAI,MAAM,CAAC,KAAK,EAAE,WAAW,EAE5B;IAED;;;;;;;;;;;;;;;OAeG;IACH,IAAI,QAAQ,IAGQ,YAAY,CAD/B;IACD,IAAI,QAAQ,CAAC,KAAK,EAAE,YAAY,EAE/B;IAED;;;;;;;;;;;;;OAaG;IACH,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,EAAE;IAwB9C;;;;;;;;;;;;OAYG;IACH,WAAW,IAAI,kBAAkB,CAAC,UAAU,CAAC;IAI7C;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM;CAGnB"}
@@ -0,0 +1,261 @@
1
+ var __extends = (this && this.__extends) || (function () {
2
+ var extendStatics = function (d, b) {
3
+ extendStatics = Object.setPrototypeOf ||
4
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
6
+ return extendStatics(d, b);
7
+ };
8
+ return function (d, b) {
9
+ if (typeof b !== "function" && b !== null)
10
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
11
+ extendStatics(d, b);
12
+ function __() { this.constructor = d; }
13
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
14
+ };
15
+ })();
16
+ import { AcGePoint3d } from '@mlightcad/geometry-engine';
17
+ import { AcDbObjectIterator } from '../misc/AcDbObjectIterator';
18
+ import { AcDbSymbolTableRecord } from './AcDbSymbolTableRecord';
19
+ /**
20
+ * Block table record that serves as a container for entities within drawing databases.
21
+ *
22
+ * Block table records (BTRs) are used to organize and group entities together.
23
+ * There are two special BTRs that are always present in every database:
24
+ * - *MODEL_SPACE: Contains entities in model space
25
+ * - *PAPER_SPACE: Contains entities in paper space
26
+ *
27
+ * Each block table record has an origin point and can contain multiple entities.
28
+ *
29
+ * @example
30
+ * ```typescript
31
+ * const blockRecord = new AcDbBlockTableRecord();
32
+ * blockRecord.name = 'MyBlock';
33
+ * blockRecord.origin = new AcGePoint3d(0, 0, 0);
34
+ * blockRecord.appendEntity(new AcDbLine());
35
+ * ```
36
+ */
37
+ var AcDbBlockTableRecord = /** @class */ (function (_super) {
38
+ __extends(AcDbBlockTableRecord, _super);
39
+ /**
40
+ * Creates a new AcDbBlockTableRecord instance.
41
+ *
42
+ * @example
43
+ * ```typescript
44
+ * const blockRecord = new AcDbBlockTableRecord();
45
+ * ```
46
+ */
47
+ function AcDbBlockTableRecord() {
48
+ var _this = _super.call(this) || this;
49
+ _this._origin = new AcGePoint3d();
50
+ _this._layoutId = '';
51
+ _this._entities = new Map();
52
+ return _this;
53
+ }
54
+ /**
55
+ * Returns true if the specified name is the name of the model space block table record.
56
+ *
57
+ * Model space is the primary drawing area where most entities are created.
58
+ *
59
+ * @param name - The name of one block table record.
60
+ * @returns True if the specified name is the name of the model space block table record.
61
+ *
62
+ * @example
63
+ * ```typescript
64
+ * if (AcDbBlockTableRecord.isModelSapceName('*Model_Space')) {
65
+ * console.log('This is the name of the model space block table record.');
66
+ * }
67
+ * ```
68
+ */
69
+ AcDbBlockTableRecord.isModelSapceName = function (name) {
70
+ return (name.toLowerCase() == AcDbBlockTableRecord.MODEL_SPACE_NAME.toLowerCase());
71
+ };
72
+ /**
73
+ * Returns true if the specified name is the name of a paper space block table record.
74
+ *
75
+ * Paper space is used for creating layouts for printing and plotting.
76
+ *
77
+ * @param name - The name of one block table record.
78
+ * @returns True if the specified name is the name of a paper space block table record.
79
+ *
80
+ * @example
81
+ * ```typescript
82
+ * if (AcDbBlockTableRecord.isPaperSapceName('*Paper_Space1')) {
83
+ * console.log('This is the name of the paper space block table record.');
84
+ * }
85
+ * ```
86
+ */
87
+ AcDbBlockTableRecord.isPaperSapceName = function (name) {
88
+ return name
89
+ .toLowerCase()
90
+ .startsWith(AcDbBlockTableRecord.PAPER_SPACE_NAME_PREFIX.toLowerCase());
91
+ };
92
+ Object.defineProperty(AcDbBlockTableRecord.prototype, "isModelSapce", {
93
+ /**
94
+ * Returns true if this is a model space block table record.
95
+ *
96
+ * Model space is the primary drawing area where most entities are created.
97
+ *
98
+ * @returns True if this is a model space block table record
99
+ *
100
+ * @example
101
+ * ```typescript
102
+ * if (blockRecord.isModelSapce) {
103
+ * console.log('This is model space');
104
+ * }
105
+ * ```
106
+ */
107
+ get: function () {
108
+ return AcDbBlockTableRecord.isModelSapceName(this.name);
109
+ },
110
+ enumerable: false,
111
+ configurable: true
112
+ });
113
+ Object.defineProperty(AcDbBlockTableRecord.prototype, "isPaperSapce", {
114
+ /**
115
+ * Returns true if this is a paper space block table record.
116
+ *
117
+ * Paper space is used for creating layouts for printing and plotting.
118
+ *
119
+ * @returns True if this is a paper space block table record
120
+ *
121
+ * @example
122
+ * ```typescript
123
+ * if (blockRecord.isPaperSapce) {
124
+ * console.log('This is paper space');
125
+ * }
126
+ * ```
127
+ */
128
+ get: function () {
129
+ return AcDbBlockTableRecord.isPaperSapceName(this.name);
130
+ },
131
+ enumerable: false,
132
+ configurable: true
133
+ });
134
+ Object.defineProperty(AcDbBlockTableRecord.prototype, "origin", {
135
+ /**
136
+ * Gets or sets the base point of the block in WCS coordinates.
137
+ *
138
+ * This point is the origin of the MCS (Model Coordinate System), which is the
139
+ * local WCS for the entities within the block table record.
140
+ *
141
+ * @returns The origin point of the block
142
+ *
143
+ * @example
144
+ * ```typescript
145
+ * const origin = blockRecord.origin;
146
+ * blockRecord.origin = new AcGePoint3d(10, 20, 0);
147
+ * ```
148
+ */
149
+ get: function () {
150
+ return this._origin;
151
+ },
152
+ set: function (value) {
153
+ this._origin.copy(value);
154
+ },
155
+ enumerable: false,
156
+ configurable: true
157
+ });
158
+ Object.defineProperty(AcDbBlockTableRecord.prototype, "layoutId", {
159
+ /**
160
+ * Gets or sets the object ID of the associated AcDbLayout object in the Layouts dictionary.
161
+ *
162
+ * This property links the block table record to its corresponding layout object,
163
+ * which defines the viewport configuration and display settings for the block.
164
+ * For model space blocks, this is typically empty, while paper space blocks
165
+ * have a corresponding layout ID.
166
+ *
167
+ * @returns The object ID of the associated layout
168
+ *
169
+ * @example
170
+ * ```typescript
171
+ * const layoutId = blockRecord.layoutId;
172
+ * blockRecord.layoutId = 'some-layout-object-id';
173
+ * ```
174
+ */
175
+ get: function () {
176
+ return this._layoutId;
177
+ },
178
+ set: function (value) {
179
+ this._layoutId = value;
180
+ },
181
+ enumerable: false,
182
+ configurable: true
183
+ });
184
+ /**
185
+ * Appends the specified entity or entities to this block table record.
186
+ *
187
+ * This method adds an entity to the block and sets up the necessary
188
+ * relationships between the entity and the block table record.
189
+ *
190
+ * @param entity - The entity or entities to append to this block table record
191
+ *
192
+ * @example
193
+ * ```typescript
194
+ * const line = new AcDbLine();
195
+ * blockRecord.appendEntity(line);
196
+ * ```
197
+ */
198
+ AcDbBlockTableRecord.prototype.appendEntity = function (entity) {
199
+ if (Array.isArray(entity)) {
200
+ for (var i = 0; i < entity.length; ++i) {
201
+ var item = entity[i];
202
+ item.database = this.database;
203
+ item.ownerId = this.objectId;
204
+ this._entities.set(item.objectId, item);
205
+ }
206
+ }
207
+ else {
208
+ entity.database = this.database;
209
+ entity.ownerId = this.objectId;
210
+ this._entities.set(entity.objectId, entity);
211
+ }
212
+ // When creating one block, it will also go to this function. But we don't want `entityAppended` event
213
+ // tiggered in this case. So check whether the block name is name of the model space.
214
+ if (this.isModelSapce || this.isPaperSapce) {
215
+ this.database.events.entityAppended.dispatch({
216
+ database: this.database,
217
+ entity: entity
218
+ });
219
+ }
220
+ };
221
+ /**
222
+ * Creates an iterator object that can be used to iterate over the entities in the block table record.
223
+ *
224
+ * @returns An iterator object that can be used to iterate over the entities
225
+ *
226
+ * @example
227
+ * ```typescript
228
+ * const iterator = blockRecord.newIterator();
229
+ * for (const entity of iterator) {
230
+ * console.log('Entity:', entity.type);
231
+ * }
232
+ * ```
233
+ */
234
+ AcDbBlockTableRecord.prototype.newIterator = function () {
235
+ return new AcDbObjectIterator(this._entities);
236
+ };
237
+ /**
238
+ * Searches for an entity in this block table record with the specified ID.
239
+ *
240
+ * @param id - The entity ID to search for
241
+ * @returns The entity with the specified ID, or undefined if not found
242
+ *
243
+ * @example
244
+ * ```typescript
245
+ * const entity = blockRecord.getIdAt('some-entity-id');
246
+ * if (entity) {
247
+ * console.log('Found entity:', entity.type);
248
+ * }
249
+ * ```
250
+ */
251
+ AcDbBlockTableRecord.prototype.getIdAt = function (id) {
252
+ return this._entities.get(id);
253
+ };
254
+ /** Name constant for model space block table record */
255
+ AcDbBlockTableRecord.MODEL_SPACE_NAME = '*MODEL_SPACE';
256
+ /** Name prefix for paper space block table records */
257
+ AcDbBlockTableRecord.PAPER_SPACE_NAME_PREFIX = '*PAPER_SPACE';
258
+ return AcDbBlockTableRecord;
259
+ }(AcDbSymbolTableRecord));
260
+ export { AcDbBlockTableRecord };
261
+ //# sourceMappingURL=AcDbBlockTableRecord.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcDbBlockTableRecord.js","sourceRoot":"","sources":["../../src/database/AcDbBlockTableRecord.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAIxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAE/D;;;;;;;;;;;;;;;;;GAiBG;AACH;IAA0C,wCAAqB;IAuD7D;;;;;;;OAOG;IACH;QACE,YAAA,MAAK,WAAE,SAAA;QACP,KAAI,CAAC,OAAO,GAAG,IAAI,WAAW,EAAE,CAAA;QAChC,KAAI,CAAC,SAAS,GAAG,EAAE,CAAA;QACnB,KAAI,CAAC,SAAS,GAAG,IAAI,GAAG,EAAsB,CAAA;;IAChD,CAAC;IAvDD;;;;;;;;;;;;;;OAcG;IACI,qCAAgB,GAAvB,UAAwB,IAAY;QAClC,OAAO,CACL,IAAI,CAAC,WAAW,EAAE,IAAI,oBAAoB,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAC1E,CAAA;IACH,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACI,qCAAgB,GAAvB,UAAwB,IAAY;QAClC,OAAO,IAAI;aACR,WAAW,EAAE;aACb,UAAU,CAAC,oBAAoB,CAAC,uBAAuB,CAAC,WAAW,EAAE,CAAC,CAAA;IAC3E,CAAC;IA+BD,sBAAI,8CAAY;QAdhB;;;;;;;;;;;;;WAaG;aACH;YACE,OAAO,oBAAoB,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACzD,CAAC;;;OAAA;IAgBD,sBAAI,8CAAY;QAdhB;;;;;;;;;;;;;WAaG;aACH;YACE,OAAO,oBAAoB,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACzD,CAAC;;;OAAA;IAgBD,sBAAI,wCAAM;QAdV;;;;;;;;;;;;;WAaG;aACH;YACE,OAAO,IAAI,CAAC,OAAO,CAAA;QACrB,CAAC;aACD,UAAW,KAAkB;YAC3B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC1B,CAAC;;;OAHA;IAqBD,sBAAI,0CAAQ;QAhBZ;;;;;;;;;;;;;;;WAeG;aACH;YACE,OAAO,IAAI,CAAC,SAAS,CAAA;QACvB,CAAC;aACD,UAAa,KAAmB;YAC9B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;QACxB,CAAC;;;OAHA;IAKD;;;;;;;;;;;;;OAaG;IACH,2CAAY,GAAZ,UAAa,MAAiC;QAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;gBACvC,IAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;gBACtB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;gBAC7B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAA;gBAC5B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;YACzC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;YAC/B,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAA;YAC9B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;QAC7C,CAAC;QAED,sGAAsG;QACtG,qFAAqF;QACrF,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YAC3C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC;gBAC3C,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,MAAM,EAAE,MAAM;aACf,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,0CAAW,GAAX;QACE,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC/C,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,sCAAO,GAAP,UAAQ,EAAU;QAChB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAC/B,CAAC;IA5ND,uDAAuD;IAChD,qCAAgB,GAAG,cAAc,CAAA;IACxC,sDAAsD;IAC/C,4CAAuB,GAAG,cAAc,CAAA;IA0NjD,2BAAC;CAAA,AA9ND,CAA0C,qBAAqB,GA8N9D;SA9NY,oBAAoB"}