@mlightcad/data-model 1.3.3 → 1.3.4
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.
- package/dist/data-model.cjs +5 -0
- package/dist/data-model.js +25523 -0
- package/dist/dxf-parser-worker.js +1715 -0
- package/lib/base/AcDbHostApplicationServices.d.ts +96 -0
- package/lib/base/AcDbHostApplicationServices.d.ts.map +1 -0
- package/lib/base/AcDbHostApplicationServices.js +118 -0
- package/lib/base/AcDbHostApplicationServices.js.map +1 -0
- package/lib/base/AcDbObject.d.ts +205 -0
- package/lib/base/AcDbObject.d.ts.map +1 -0
- package/lib/base/AcDbObject.js +236 -0
- package/lib/base/AcDbObject.js.map +1 -0
- package/lib/base/index.d.ts +3 -0
- package/lib/base/index.d.ts.map +1 -0
- package/lib/base/index.js +3 -0
- package/lib/base/index.js.map +1 -0
- package/lib/converter/AcDbBatchProcessing.d.ts +146 -0
- package/lib/converter/AcDbBatchProcessing.d.ts.map +1 -0
- package/lib/converter/AcDbBatchProcessing.js +272 -0
- package/lib/converter/AcDbBatchProcessing.js.map +1 -0
- package/lib/converter/AcDbDxfConverter.d.ts +272 -0
- package/lib/converter/AcDbDxfConverter.d.ts.map +1 -0
- package/lib/converter/AcDbDxfConverter.js +874 -0
- package/lib/converter/AcDbDxfConverter.js.map +1 -0
- package/lib/converter/AcDbDxfParser.d.ts +23 -0
- package/lib/converter/AcDbDxfParser.d.ts.map +1 -0
- package/lib/converter/AcDbDxfParser.js +85 -0
- package/lib/converter/AcDbDxfParser.js.map +1 -0
- package/lib/converter/AcDbEntitiyConverter.d.ts +159 -0
- package/lib/converter/AcDbEntitiyConverter.d.ts.map +1 -0
- package/lib/converter/AcDbEntitiyConverter.js +659 -0
- package/lib/converter/AcDbEntitiyConverter.js.map +1 -0
- package/lib/converter/AcDbObjectConverter.d.ts +61 -0
- package/lib/converter/AcDbObjectConverter.d.ts.map +1 -0
- package/lib/converter/AcDbObjectConverter.js +91 -0
- package/lib/converter/AcDbObjectConverter.js.map +1 -0
- package/lib/converter/AcDbRegenerator.d.ts +101 -0
- package/lib/converter/AcDbRegenerator.d.ts.map +1 -0
- package/lib/converter/AcDbRegenerator.js +334 -0
- package/lib/converter/AcDbRegenerator.js.map +1 -0
- package/lib/converter/index.d.ts +5 -0
- package/lib/converter/index.d.ts.map +1 -0
- package/lib/converter/index.js +5 -0
- package/lib/converter/index.js.map +1 -0
- package/lib/converter/worker/AcDbBaseWorker.d.ts +36 -0
- package/lib/converter/worker/AcDbBaseWorker.d.ts.map +1 -0
- package/lib/converter/worker/AcDbBaseWorker.js +93 -0
- package/lib/converter/worker/AcDbBaseWorker.js.map +1 -0
- package/lib/converter/worker/AcDbDxfParserWorker.d.ts +11 -0
- package/lib/converter/worker/AcDbDxfParserWorker.d.ts.map +1 -0
- package/lib/converter/worker/AcDbDxfParserWorker.js +75 -0
- package/lib/converter/worker/AcDbDxfParserWorker.js.map +1 -0
- package/lib/converter/worker/AcDbWorkerManager.d.ts +107 -0
- package/lib/converter/worker/AcDbWorkerManager.d.ts.map +1 -0
- package/lib/converter/worker/AcDbWorkerManager.js +360 -0
- package/lib/converter/worker/AcDbWorkerManager.js.map +1 -0
- package/lib/converter/worker/index.d.ts +3 -0
- package/lib/converter/worker/index.d.ts.map +1 -0
- package/lib/converter/worker/index.js +3 -0
- package/lib/converter/worker/index.js.map +1 -0
- package/lib/database/AcDbBlockTable.d.ts +56 -0
- package/lib/database/AcDbBlockTable.d.ts.map +1 -0
- package/lib/database/AcDbBlockTable.js +98 -0
- package/lib/database/AcDbBlockTable.js.map +1 -0
- package/lib/database/AcDbBlockTableRecord.d.ts +185 -0
- package/lib/database/AcDbBlockTableRecord.d.ts.map +1 -0
- package/lib/database/AcDbBlockTableRecord.js +261 -0
- package/lib/database/AcDbBlockTableRecord.js.map +1 -0
- package/lib/database/AcDbDatabase.d.ts +563 -0
- package/lib/database/AcDbDatabase.d.ts.map +1 -0
- package/lib/database/AcDbDatabase.js +842 -0
- package/lib/database/AcDbDatabase.js.map +1 -0
- package/lib/database/AcDbDatabaseConverter.d.ts +292 -0
- package/lib/database/AcDbDatabaseConverter.d.ts.map +1 -0
- package/lib/database/AcDbDatabaseConverter.js +448 -0
- package/lib/database/AcDbDatabaseConverter.js.map +1 -0
- package/lib/database/AcDbDatabaseConverterManager.d.ts +141 -0
- package/lib/database/AcDbDatabaseConverterManager.d.ts.map +1 -0
- package/lib/database/AcDbDatabaseConverterManager.js +173 -0
- package/lib/database/AcDbDatabaseConverterManager.js.map +1 -0
- package/lib/database/AcDbDimStyleTable.d.ts +31 -0
- package/lib/database/AcDbDimStyleTable.d.ts.map +1 -0
- package/lib/database/AcDbDimStyleTable.js +49 -0
- package/lib/database/AcDbDimStyleTable.js.map +1 -0
- package/lib/database/AcDbDimStyleTableRecord.d.ts +797 -0
- package/lib/database/AcDbDimStyleTableRecord.d.ts.map +1 -0
- package/lib/database/AcDbDimStyleTableRecord.js +1294 -0
- package/lib/database/AcDbDimStyleTableRecord.js.map +1 -0
- package/lib/database/AcDbDwgVersion.d.ts +32 -0
- package/lib/database/AcDbDwgVersion.d.ts.map +1 -0
- package/lib/database/AcDbDwgVersion.js +126 -0
- package/lib/database/AcDbDwgVersion.js.map +1 -0
- package/lib/database/AcDbLayerTable.d.ts +51 -0
- package/lib/database/AcDbLayerTable.d.ts.map +1 -0
- package/lib/database/AcDbLayerTable.js +92 -0
- package/lib/database/AcDbLayerTable.js.map +1 -0
- package/lib/database/AcDbLayerTableRecord.d.ts +278 -0
- package/lib/database/AcDbLayerTableRecord.d.ts.map +1 -0
- package/lib/database/AcDbLayerTableRecord.js +397 -0
- package/lib/database/AcDbLayerTableRecord.js.map +1 -0
- package/lib/database/AcDbLinetypeTable.d.ts +30 -0
- package/lib/database/AcDbLinetypeTable.d.ts.map +1 -0
- package/lib/database/AcDbLinetypeTable.js +48 -0
- package/lib/database/AcDbLinetypeTable.js.map +1 -0
- package/lib/database/AcDbLinetypeTableRecord.d.ts +79 -0
- package/lib/database/AcDbLinetypeTableRecord.d.ts.map +1 -0
- package/lib/database/AcDbLinetypeTableRecord.js +129 -0
- package/lib/database/AcDbLinetypeTableRecord.js.map +1 -0
- package/lib/database/AcDbSymbolTable.d.ts +199 -0
- package/lib/database/AcDbSymbolTable.d.ts.map +1 -0
- package/lib/database/AcDbSymbolTable.js +264 -0
- package/lib/database/AcDbSymbolTable.js.map +1 -0
- package/lib/database/AcDbSymbolTableRecord.d.ts +61 -0
- package/lib/database/AcDbSymbolTableRecord.d.ts.map +1 -0
- package/lib/database/AcDbSymbolTableRecord.js +82 -0
- package/lib/database/AcDbSymbolTableRecord.js.map +1 -0
- package/lib/database/AcDbTextStyleTable.d.ts +48 -0
- package/lib/database/AcDbTextStyleTable.d.ts.map +1 -0
- package/lib/database/AcDbTextStyleTable.js +112 -0
- package/lib/database/AcDbTextStyleTable.js.map +1 -0
- package/lib/database/AcDbTextStyleTableRecord.d.ts +179 -0
- package/lib/database/AcDbTextStyleTableRecord.d.ts.map +1 -0
- package/lib/database/AcDbTextStyleTableRecord.js +276 -0
- package/lib/database/AcDbTextStyleTableRecord.js.map +1 -0
- package/lib/database/AcDbViewportTable.d.ts +31 -0
- package/lib/database/AcDbViewportTable.d.ts.map +1 -0
- package/lib/database/AcDbViewportTable.js +49 -0
- package/lib/database/AcDbViewportTable.js.map +1 -0
- package/lib/database/AcDbViewportTableRecord.d.ts +154 -0
- package/lib/database/AcDbViewportTableRecord.d.ts.map +1 -0
- package/lib/database/AcDbViewportTableRecord.js +318 -0
- package/lib/database/AcDbViewportTableRecord.js.map +1 -0
- package/lib/database/index.d.ts +19 -0
- package/lib/database/index.d.ts.map +1 -0
- package/lib/database/index.js +19 -0
- package/lib/database/index.js.map +1 -0
- package/lib/entity/AcDbArc.d.ts +254 -0
- package/lib/entity/AcDbArc.d.ts.map +1 -0
- package/lib/entity/AcDbArc.js +340 -0
- package/lib/entity/AcDbArc.js.map +1 -0
- package/lib/entity/AcDbBlockReference.d.ts +190 -0
- package/lib/entity/AcDbBlockReference.d.ts.map +1 -0
- package/lib/entity/AcDbBlockReference.js +302 -0
- package/lib/entity/AcDbBlockReference.js.map +1 -0
- package/lib/entity/AcDbCircle.d.ts +186 -0
- package/lib/entity/AcDbCircle.d.ts.map +1 -0
- package/lib/entity/AcDbCircle.js +249 -0
- package/lib/entity/AcDbCircle.js.map +1 -0
- package/lib/entity/AcDbCurve.d.ts +42 -0
- package/lib/entity/AcDbCurve.d.ts.map +1 -0
- package/lib/entity/AcDbCurve.js +44 -0
- package/lib/entity/AcDbCurve.js.map +1 -0
- package/lib/entity/AcDbEllipse.d.ts +207 -0
- package/lib/entity/AcDbEllipse.d.ts.map +1 -0
- package/lib/entity/AcDbEllipse.js +272 -0
- package/lib/entity/AcDbEllipse.js.map +1 -0
- package/lib/entity/AcDbEntity.d.ts +385 -0
- package/lib/entity/AcDbEntity.d.ts.map +1 -0
- package/lib/entity/AcDbEntity.js +561 -0
- package/lib/entity/AcDbEntity.js.map +1 -0
- package/lib/entity/AcDbFace.d.ts +151 -0
- package/lib/entity/AcDbFace.d.ts.map +1 -0
- package/lib/entity/AcDbFace.js +224 -0
- package/lib/entity/AcDbFace.js.map +1 -0
- package/lib/entity/AcDbHatch.d.ts +174 -0
- package/lib/entity/AcDbHatch.d.ts.map +1 -0
- package/lib/entity/AcDbHatch.js +250 -0
- package/lib/entity/AcDbHatch.js.map +1 -0
- package/lib/entity/AcDbLeader.d.ts +243 -0
- package/lib/entity/AcDbLeader.d.ts.map +1 -0
- package/lib/entity/AcDbLeader.js +358 -0
- package/lib/entity/AcDbLeader.js.map +1 -0
- package/lib/entity/AcDbLine.d.ts +198 -0
- package/lib/entity/AcDbLine.d.ts.map +1 -0
- package/lib/entity/AcDbLine.js +300 -0
- package/lib/entity/AcDbLine.js.map +1 -0
- package/lib/entity/AcDbMText.d.ts +248 -0
- package/lib/entity/AcDbMText.d.ts.map +1 -0
- package/lib/entity/AcDbMText.js +414 -0
- package/lib/entity/AcDbMText.js.map +1 -0
- package/lib/entity/AcDbPoint.d.ts +113 -0
- package/lib/entity/AcDbPoint.d.ts.map +1 -0
- package/lib/entity/AcDbPoint.js +155 -0
- package/lib/entity/AcDbPoint.js.map +1 -0
- package/lib/entity/AcDbPolyline.d.ts +221 -0
- package/lib/entity/AcDbPolyline.d.ts.map +1 -0
- package/lib/entity/AcDbPolyline.js +301 -0
- package/lib/entity/AcDbPolyline.js.map +1 -0
- package/lib/entity/AcDbRasterImage.d.ts +216 -0
- package/lib/entity/AcDbRasterImage.d.ts.map +1 -0
- package/lib/entity/AcDbRasterImage.js +451 -0
- package/lib/entity/AcDbRasterImage.js.map +1 -0
- package/lib/entity/AcDbRay.d.ts +150 -0
- package/lib/entity/AcDbRay.d.ts.map +1 -0
- package/lib/entity/AcDbRay.js +208 -0
- package/lib/entity/AcDbRay.js.map +1 -0
- package/lib/entity/AcDbSpline.d.ts +135 -0
- package/lib/entity/AcDbSpline.d.ts.map +1 -0
- package/lib/entity/AcDbSpline.js +142 -0
- package/lib/entity/AcDbSpline.js.map +1 -0
- package/lib/entity/AcDbTable.d.ts +260 -0
- package/lib/entity/AcDbTable.d.ts.map +1 -0
- package/lib/entity/AcDbTable.js +452 -0
- package/lib/entity/AcDbTable.js.map +1 -0
- package/lib/entity/AcDbText.d.ts +388 -0
- package/lib/entity/AcDbText.d.ts.map +1 -0
- package/lib/entity/AcDbText.js +523 -0
- package/lib/entity/AcDbText.js.map +1 -0
- package/lib/entity/AcDbTrace.d.ts +193 -0
- package/lib/entity/AcDbTrace.d.ts.map +1 -0
- package/lib/entity/AcDbTrace.js +271 -0
- package/lib/entity/AcDbTrace.js.map +1 -0
- package/lib/entity/AcDbViewport.d.ts +173 -0
- package/lib/entity/AcDbViewport.d.ts.map +1 -0
- package/lib/entity/AcDbViewport.js +295 -0
- package/lib/entity/AcDbViewport.js.map +1 -0
- package/lib/entity/AcDbWipeout.d.ts +39 -0
- package/lib/entity/AcDbWipeout.d.ts.map +1 -0
- package/lib/entity/AcDbWipeout.js +70 -0
- package/lib/entity/AcDbWipeout.js.map +1 -0
- package/lib/entity/AcDbXline.d.ts +151 -0
- package/lib/entity/AcDbXline.d.ts.map +1 -0
- package/lib/entity/AcDbXline.js +209 -0
- package/lib/entity/AcDbXline.js.map +1 -0
- package/lib/entity/dimension/AcDb3PointAngularDimension.d.ts +92 -0
- package/lib/entity/dimension/AcDb3PointAngularDimension.d.ts.map +1 -0
- package/lib/entity/dimension/AcDb3PointAngularDimension.js +157 -0
- package/lib/entity/dimension/AcDb3PointAngularDimension.js.map +1 -0
- package/lib/entity/dimension/AcDbAlignedDimension.d.ts +220 -0
- package/lib/entity/dimension/AcDbAlignedDimension.d.ts.map +1 -0
- package/lib/entity/dimension/AcDbAlignedDimension.js +341 -0
- package/lib/entity/dimension/AcDbAlignedDimension.js.map +1 -0
- package/lib/entity/dimension/AcDbArcDimension.d.ts +94 -0
- package/lib/entity/dimension/AcDbArcDimension.d.ts.map +1 -0
- package/lib/entity/dimension/AcDbArcDimension.js +159 -0
- package/lib/entity/dimension/AcDbArcDimension.js.map +1 -0
- package/lib/entity/dimension/AcDbDiametricDimension.d.ts +145 -0
- package/lib/entity/dimension/AcDbDiametricDimension.d.ts.map +1 -0
- package/lib/entity/dimension/AcDbDiametricDimension.js +275 -0
- package/lib/entity/dimension/AcDbDiametricDimension.js.map +1 -0
- package/lib/entity/dimension/AcDbDimension.d.ts +257 -0
- package/lib/entity/dimension/AcDbDimension.d.ts.map +1 -0
- package/lib/entity/dimension/AcDbDimension.js +466 -0
- package/lib/entity/dimension/AcDbDimension.js.map +1 -0
- package/lib/entity/dimension/AcDbOrdinateDimension.d.ts +78 -0
- package/lib/entity/dimension/AcDbOrdinateDimension.d.ts.map +1 -0
- package/lib/entity/dimension/AcDbOrdinateDimension.js +133 -0
- package/lib/entity/dimension/AcDbOrdinateDimension.js.map +1 -0
- package/lib/entity/dimension/AcDbRadialDimension.d.ts +214 -0
- package/lib/entity/dimension/AcDbRadialDimension.d.ts.map +1 -0
- package/lib/entity/dimension/AcDbRadialDimension.js +288 -0
- package/lib/entity/dimension/AcDbRadialDimension.js.map +1 -0
- package/lib/entity/dimension/index.d.ts +8 -0
- package/lib/entity/dimension/index.d.ts.map +1 -0
- package/lib/entity/dimension/index.js +8 -0
- package/lib/entity/dimension/index.js.map +1 -0
- package/lib/entity/index.d.ts +24 -0
- package/lib/entity/index.d.ts.map +1 -0
- package/lib/entity/index.js +24 -0
- package/lib/entity/index.js.map +1 -0
- package/lib/index.d.ts +10 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +10 -0
- package/lib/index.js.map +1 -0
- package/lib/misc/AcDbAngleUnits.d.ts +20 -0
- package/lib/misc/AcDbAngleUnits.d.ts.map +1 -0
- package/lib/misc/AcDbAngleUnits.js +21 -0
- package/lib/misc/AcDbAngleUnits.js.map +1 -0
- package/lib/misc/AcDbCodePage.d.ts +50 -0
- package/lib/misc/AcDbCodePage.d.ts.map +1 -0
- package/lib/misc/AcDbCodePage.js +100 -0
- package/lib/misc/AcDbCodePage.js.map +1 -0
- package/lib/misc/AcDbConstants.d.ts +24 -0
- package/lib/misc/AcDbConstants.d.ts.map +1 -0
- package/lib/misc/AcDbConstants.js +24 -0
- package/lib/misc/AcDbConstants.js.map +1 -0
- package/lib/misc/AcDbDimArrowType.d.ts +89 -0
- package/lib/misc/AcDbDimArrowType.d.ts.map +1 -0
- package/lib/misc/AcDbDimArrowType.js +90 -0
- package/lib/misc/AcDbDimArrowType.js.map +1 -0
- package/lib/misc/AcDbObjectIterator.d.ts +64 -0
- package/lib/misc/AcDbObjectIterator.d.ts.map +1 -0
- package/lib/misc/AcDbObjectIterator.js +84 -0
- package/lib/misc/AcDbObjectIterator.js.map +1 -0
- package/lib/misc/AcDbOsnapMode.d.ts +51 -0
- package/lib/misc/AcDbOsnapMode.d.ts.map +1 -0
- package/lib/misc/AcDbOsnapMode.js +52 -0
- package/lib/misc/AcDbOsnapMode.js.map +1 -0
- package/lib/misc/AcDbRenderingCache.d.ts +141 -0
- package/lib/misc/AcDbRenderingCache.d.ts.map +1 -0
- package/lib/misc/AcDbRenderingCache.js +239 -0
- package/lib/misc/AcDbRenderingCache.js.map +1 -0
- package/lib/misc/AcDbUnitsValue.d.ts +101 -0
- package/lib/misc/AcDbUnitsValue.d.ts.map +1 -0
- package/lib/misc/AcDbUnitsValue.js +121 -0
- package/lib/misc/AcDbUnitsValue.js.map +1 -0
- package/lib/misc/index.d.ts +9 -0
- package/lib/misc/index.d.ts.map +1 -0
- package/lib/misc/index.js +9 -0
- package/lib/misc/index.js.map +1 -0
- package/lib/object/AcDbDictionary.d.ts +178 -0
- package/lib/object/AcDbDictionary.d.ts.map +1 -0
- package/lib/object/AcDbDictionary.js +264 -0
- package/lib/object/AcDbDictionary.js.map +1 -0
- package/lib/object/AcDbRasterImageDef.d.ts +54 -0
- package/lib/object/AcDbRasterImageDef.d.ts.map +1 -0
- package/lib/object/AcDbRasterImageDef.js +82 -0
- package/lib/object/AcDbRasterImageDef.js.map +1 -0
- package/lib/object/index.d.ts +4 -0
- package/lib/object/index.d.ts.map +1 -0
- package/lib/object/index.js +4 -0
- package/lib/object/index.js.map +1 -0
- package/lib/object/layout/AcDbLayout.d.ts +190 -0
- package/lib/object/layout/AcDbLayout.d.ts.map +1 -0
- package/lib/object/layout/AcDbLayout.js +253 -0
- package/lib/object/layout/AcDbLayout.js.map +1 -0
- package/lib/object/layout/AcDbLayoutDictionary.d.ts +47 -0
- package/lib/object/layout/AcDbLayoutDictionary.d.ts.map +1 -0
- package/lib/object/layout/AcDbLayoutDictionary.js +122 -0
- package/lib/object/layout/AcDbLayoutDictionary.js.map +1 -0
- package/lib/object/layout/AcDbLayoutManager.d.ts +188 -0
- package/lib/object/layout/AcDbLayoutManager.d.ts.map +1 -0
- package/lib/object/layout/AcDbLayoutManager.js +245 -0
- package/lib/object/layout/AcDbLayoutManager.js.map +1 -0
- package/lib/object/layout/index.d.ts +4 -0
- package/lib/object/layout/index.d.ts.map +1 -0
- package/lib/object/layout/index.js +4 -0
- package/lib/object/layout/index.js.map +1 -0
- package/package.json +4 -4
|
@@ -0,0 +1,448 @@
|
|
|
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
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
17
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
18
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
19
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
20
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
21
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
22
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
23
|
+
});
|
|
24
|
+
};
|
|
25
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
26
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
27
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
28
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
29
|
+
function step(op) {
|
|
30
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
31
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
32
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
33
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
34
|
+
switch (op[0]) {
|
|
35
|
+
case 0: case 1: t = op; break;
|
|
36
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
37
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
38
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
39
|
+
default:
|
|
40
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
41
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
42
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
43
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
44
|
+
if (t[2]) _.ops.pop();
|
|
45
|
+
_.trys.pop(); continue;
|
|
46
|
+
}
|
|
47
|
+
op = body.call(thisArg, _);
|
|
48
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
49
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
import { AcCmPerformanceCollector, AcCmTask, AcCmTaskScheduler } from '@mlightcad/common';
|
|
53
|
+
import { AcDbRenderingCache } from '../misc';
|
|
54
|
+
var PERFORMANCE_ENTRY_NAME = 'Load Database';
|
|
55
|
+
/**
|
|
56
|
+
* Task class for database conversion operations.
|
|
57
|
+
*
|
|
58
|
+
* This class extends AcCmTask to provide specialized functionality
|
|
59
|
+
* for database conversion tasks, including progress tracking and
|
|
60
|
+
* stage management.
|
|
61
|
+
*
|
|
62
|
+
* @template TIn - The input type for the task
|
|
63
|
+
* @template TOut - The output type for the task
|
|
64
|
+
*/
|
|
65
|
+
var AcDbConversionTask = /** @class */ (function (_super) {
|
|
66
|
+
__extends(AcDbConversionTask, _super);
|
|
67
|
+
function AcDbConversionTask(data, progress) {
|
|
68
|
+
var _this = _super.call(this, data.stage) || this;
|
|
69
|
+
_this.data = data;
|
|
70
|
+
_this.progress = progress;
|
|
71
|
+
return _this;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Executes the task.
|
|
75
|
+
*/
|
|
76
|
+
AcDbConversionTask.prototype.run = function (input) {
|
|
77
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
78
|
+
var entry, t, out;
|
|
79
|
+
return __generator(this, function (_a) {
|
|
80
|
+
switch (_a.label) {
|
|
81
|
+
case 0:
|
|
82
|
+
entry = AcCmPerformanceCollector.getInstance().getEntry(PERFORMANCE_ENTRY_NAME);
|
|
83
|
+
t = Date.now();
|
|
84
|
+
if (!this.progress) return [3 /*break*/, 2];
|
|
85
|
+
return [4 /*yield*/, this.progress(this.data.progress.value, this.data.stage, 'START')];
|
|
86
|
+
case 1:
|
|
87
|
+
_a.sent();
|
|
88
|
+
_a.label = 2;
|
|
89
|
+
case 2: return [4 /*yield*/, this.data.task(input)];
|
|
90
|
+
case 3:
|
|
91
|
+
out = _a.sent();
|
|
92
|
+
if (!this.progress) return [3 /*break*/, 5];
|
|
93
|
+
return [4 /*yield*/, this.progress(this.data.progress.value, this.data.stage, 'END', out ? out.data : null)];
|
|
94
|
+
case 4:
|
|
95
|
+
_a.sent();
|
|
96
|
+
this.data.progress.value += this.data.step;
|
|
97
|
+
if (this.data.progress.value > 100) {
|
|
98
|
+
this.data.progress.value = 100;
|
|
99
|
+
}
|
|
100
|
+
_a.label = 5;
|
|
101
|
+
case 5:
|
|
102
|
+
if (entry) {
|
|
103
|
+
;
|
|
104
|
+
entry.data[this.name] = Date.now() - t;
|
|
105
|
+
}
|
|
106
|
+
return [2 /*return*/, out];
|
|
107
|
+
}
|
|
108
|
+
});
|
|
109
|
+
});
|
|
110
|
+
};
|
|
111
|
+
return AcDbConversionTask;
|
|
112
|
+
}(AcCmTask));
|
|
113
|
+
/**
|
|
114
|
+
* Abstract base class for database converters.
|
|
115
|
+
*
|
|
116
|
+
* This class provides the foundation for converting various file formats
|
|
117
|
+
* (such as DXF, DWG) into AcDbDatabase objects. It handles the conversion
|
|
118
|
+
* process in stages and provides progress tracking capabilities.
|
|
119
|
+
*
|
|
120
|
+
* @template TModel - The type of the parsed model data
|
|
121
|
+
*
|
|
122
|
+
* @example
|
|
123
|
+
* ```typescript
|
|
124
|
+
* class MyConverter extends AcDbDatabaseConverter<MyModel> {
|
|
125
|
+
* protected parse(data: string | ArrayBuffer): MyModel {
|
|
126
|
+
* // Implementation for parsing data
|
|
127
|
+
* }
|
|
128
|
+
*
|
|
129
|
+
* ......
|
|
130
|
+
*
|
|
131
|
+
* protected processEntities(model: MyModel, db: AcDbDatabase) {
|
|
132
|
+
* // Implementation for processing entities
|
|
133
|
+
* }
|
|
134
|
+
* }
|
|
135
|
+
* ```
|
|
136
|
+
*/
|
|
137
|
+
var AcDbDatabaseConverter = /** @class */ (function () {
|
|
138
|
+
/**
|
|
139
|
+
* Creates a new instance of the database converter.
|
|
140
|
+
*
|
|
141
|
+
* @param config - Configuration options for the converter. This includes settings
|
|
142
|
+
* such as worker URL for web workers used in the conversion process.
|
|
143
|
+
* If not provided, an empty configuration object will be used.
|
|
144
|
+
*
|
|
145
|
+
* @example
|
|
146
|
+
* ```typescript
|
|
147
|
+
* // Create converter with default configuration
|
|
148
|
+
* const converter = new AcDbDxfConverter();
|
|
149
|
+
*
|
|
150
|
+
* // Create converter with custom worker URL
|
|
151
|
+
* const converter = new AcDbDxfConverter({
|
|
152
|
+
* parserWorkerUrl: '/assets/dxf-parser-worker.js'
|
|
153
|
+
* });
|
|
154
|
+
* ```
|
|
155
|
+
*/
|
|
156
|
+
function AcDbDatabaseConverter(config) {
|
|
157
|
+
if (config === void 0) { config = {}; }
|
|
158
|
+
this.config = config;
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Reads and converts data into an AcDbDatabase.
|
|
162
|
+
*
|
|
163
|
+
* This method orchestrates the entire conversion process, including
|
|
164
|
+
* parsing, processing various components (fonts, linetypes, styles, etc.),
|
|
165
|
+
* and building the final database.
|
|
166
|
+
*
|
|
167
|
+
* @param data - The input data to convert
|
|
168
|
+
* @param db - The database to populate with converted data
|
|
169
|
+
* @param minimumChunkSize - Minimum chunk size for batch processing
|
|
170
|
+
* @param progress - Optional progress callback
|
|
171
|
+
* @returns Promise that resolves when conversion is complete
|
|
172
|
+
*
|
|
173
|
+
*/
|
|
174
|
+
AcDbDatabaseConverter.prototype.read = function (data, db, minimumChunkSize, progress) {
|
|
175
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
176
|
+
var loadDbTimeEntry, percentage, scheduler, t;
|
|
177
|
+
var _this = this;
|
|
178
|
+
return __generator(this, function (_a) {
|
|
179
|
+
switch (_a.label) {
|
|
180
|
+
case 0:
|
|
181
|
+
loadDbTimeEntry = {
|
|
182
|
+
name: PERFORMANCE_ENTRY_NAME,
|
|
183
|
+
data: { total: 0 },
|
|
184
|
+
format: function () {
|
|
185
|
+
var _this = this;
|
|
186
|
+
var result = '';
|
|
187
|
+
Object.keys(this.data).forEach(function (key) {
|
|
188
|
+
if (key !== 'total') {
|
|
189
|
+
result += "- ".concat(key, ": ").concat(_this.data[key], " ms\n");
|
|
190
|
+
}
|
|
191
|
+
});
|
|
192
|
+
result += "- total: ".concat(this.data.total, " ms");
|
|
193
|
+
return result;
|
|
194
|
+
}
|
|
195
|
+
};
|
|
196
|
+
AcCmPerformanceCollector.getInstance().collect(loadDbTimeEntry);
|
|
197
|
+
this.progress = progress;
|
|
198
|
+
percentage = { value: 0 };
|
|
199
|
+
scheduler = new AcCmTaskScheduler();
|
|
200
|
+
scheduler.setCompleteCallback(function () { return _this.onFinished(); });
|
|
201
|
+
scheduler.setErrorCallback(function (error) { return _this.onError(error); });
|
|
202
|
+
scheduler.addTask(new AcDbConversionTask({
|
|
203
|
+
stage: 'START',
|
|
204
|
+
step: 1,
|
|
205
|
+
progress: percentage,
|
|
206
|
+
task: function (data) { return __awaiter(_this, void 0, void 0, function () {
|
|
207
|
+
return __generator(this, function (_a) {
|
|
208
|
+
return [2 /*return*/, data];
|
|
209
|
+
});
|
|
210
|
+
}); }
|
|
211
|
+
}, progress));
|
|
212
|
+
scheduler.addTask(new AcDbConversionTask({
|
|
213
|
+
stage: 'PARSE',
|
|
214
|
+
step: 5,
|
|
215
|
+
progress: percentage,
|
|
216
|
+
task: function (data) { return __awaiter(_this, void 0, void 0, function () {
|
|
217
|
+
return __generator(this, function (_a) {
|
|
218
|
+
switch (_a.label) {
|
|
219
|
+
case 0: return [4 /*yield*/, this.parse(data)];
|
|
220
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
221
|
+
}
|
|
222
|
+
});
|
|
223
|
+
}); }
|
|
224
|
+
}, progress));
|
|
225
|
+
scheduler.addTask(new AcDbConversionTask({
|
|
226
|
+
stage: 'FONT',
|
|
227
|
+
step: 5,
|
|
228
|
+
progress: percentage,
|
|
229
|
+
task: function (data) { return __awaiter(_this, void 0, void 0, function () {
|
|
230
|
+
var fonts;
|
|
231
|
+
return __generator(this, function (_a) {
|
|
232
|
+
fonts = this.getFonts(data.model);
|
|
233
|
+
return [2 /*return*/, { model: data.model, data: fonts }];
|
|
234
|
+
});
|
|
235
|
+
}); }
|
|
236
|
+
}, progress));
|
|
237
|
+
scheduler.addTask(new AcDbConversionTask({
|
|
238
|
+
stage: 'LTYPE',
|
|
239
|
+
step: 1,
|
|
240
|
+
progress: percentage,
|
|
241
|
+
task: function (data) { return __awaiter(_this, void 0, void 0, function () {
|
|
242
|
+
return __generator(this, function (_a) {
|
|
243
|
+
this.processLineTypes(data.model, db);
|
|
244
|
+
return [2 /*return*/, data];
|
|
245
|
+
});
|
|
246
|
+
}); }
|
|
247
|
+
}, progress));
|
|
248
|
+
scheduler.addTask(new AcDbConversionTask({
|
|
249
|
+
stage: 'STYLE',
|
|
250
|
+
step: 1,
|
|
251
|
+
progress: percentage,
|
|
252
|
+
task: function (data) { return __awaiter(_this, void 0, void 0, function () {
|
|
253
|
+
return __generator(this, function (_a) {
|
|
254
|
+
this.processTextStyles(data.model, db);
|
|
255
|
+
return [2 /*return*/, data];
|
|
256
|
+
});
|
|
257
|
+
}); }
|
|
258
|
+
}, progress));
|
|
259
|
+
scheduler.addTask(new AcDbConversionTask({
|
|
260
|
+
stage: 'DIMSTYLE',
|
|
261
|
+
step: 1,
|
|
262
|
+
progress: percentage,
|
|
263
|
+
task: function (data) { return __awaiter(_this, void 0, void 0, function () {
|
|
264
|
+
return __generator(this, function (_a) {
|
|
265
|
+
this.processDimStyles(data.model, db);
|
|
266
|
+
return [2 /*return*/, data];
|
|
267
|
+
});
|
|
268
|
+
}); }
|
|
269
|
+
}, progress));
|
|
270
|
+
scheduler.addTask(new AcDbConversionTask({
|
|
271
|
+
stage: 'LAYER',
|
|
272
|
+
step: 1,
|
|
273
|
+
progress: percentage,
|
|
274
|
+
task: function (data) { return __awaiter(_this, void 0, void 0, function () {
|
|
275
|
+
return __generator(this, function (_a) {
|
|
276
|
+
this.processLayers(data.model, db);
|
|
277
|
+
// Guarantee layer '0' is created at least
|
|
278
|
+
if (db.tables.layerTable.numEntries === 0) {
|
|
279
|
+
db.createDefaultData({ layer: true });
|
|
280
|
+
}
|
|
281
|
+
return [2 /*return*/, data];
|
|
282
|
+
});
|
|
283
|
+
}); }
|
|
284
|
+
}, progress));
|
|
285
|
+
scheduler.addTask(new AcDbConversionTask({
|
|
286
|
+
stage: 'VPORT',
|
|
287
|
+
step: 1,
|
|
288
|
+
progress: percentage,
|
|
289
|
+
task: function (data) { return __awaiter(_this, void 0, void 0, function () {
|
|
290
|
+
return __generator(this, function (_a) {
|
|
291
|
+
this.processViewports(data.model, db);
|
|
292
|
+
return [2 /*return*/, data];
|
|
293
|
+
});
|
|
294
|
+
}); }
|
|
295
|
+
}, progress));
|
|
296
|
+
scheduler.addTask(new AcDbConversionTask({
|
|
297
|
+
stage: 'HEADER',
|
|
298
|
+
step: 1,
|
|
299
|
+
progress: percentage,
|
|
300
|
+
task: function (data) { return __awaiter(_this, void 0, void 0, function () {
|
|
301
|
+
return __generator(this, function (_a) {
|
|
302
|
+
this.processHeader(data.model, db);
|
|
303
|
+
return [2 /*return*/, data];
|
|
304
|
+
});
|
|
305
|
+
}); }
|
|
306
|
+
}, progress));
|
|
307
|
+
scheduler.addTask(new AcDbConversionTask({
|
|
308
|
+
stage: 'BLOCK_RECORD',
|
|
309
|
+
step: 5,
|
|
310
|
+
progress: percentage,
|
|
311
|
+
task: function (data) { return __awaiter(_this, void 0, void 0, function () {
|
|
312
|
+
return __generator(this, function (_a) {
|
|
313
|
+
this.processBlockTables(data.model, db);
|
|
314
|
+
return [2 /*return*/, data];
|
|
315
|
+
});
|
|
316
|
+
}); }
|
|
317
|
+
}, progress));
|
|
318
|
+
scheduler.addTask(new AcDbConversionTask({
|
|
319
|
+
stage: 'OBJECT',
|
|
320
|
+
step: 5,
|
|
321
|
+
progress: percentage,
|
|
322
|
+
task: function (data) { return __awaiter(_this, void 0, void 0, function () {
|
|
323
|
+
return __generator(this, function (_a) {
|
|
324
|
+
this.processObjects(data.model, db);
|
|
325
|
+
// Guarantee one layout is created for MODEL_SPACE at least
|
|
326
|
+
if (db.dictionaries.layouts.numEntries === 0) {
|
|
327
|
+
db.createDefaultData({ layout: true });
|
|
328
|
+
}
|
|
329
|
+
return [2 /*return*/, data];
|
|
330
|
+
});
|
|
331
|
+
}); }
|
|
332
|
+
}, progress));
|
|
333
|
+
scheduler.addTask(new AcDbConversionTask({
|
|
334
|
+
stage: 'BLOCK',
|
|
335
|
+
step: 5,
|
|
336
|
+
progress: percentage,
|
|
337
|
+
task: function (data) { return __awaiter(_this, void 0, void 0, function () {
|
|
338
|
+
return __generator(this, function (_a) {
|
|
339
|
+
switch (_a.label) {
|
|
340
|
+
case 0: return [4 /*yield*/, this.processBlocks(data.model, db)];
|
|
341
|
+
case 1:
|
|
342
|
+
_a.sent();
|
|
343
|
+
return [2 /*return*/, data];
|
|
344
|
+
}
|
|
345
|
+
});
|
|
346
|
+
}); }
|
|
347
|
+
}, progress));
|
|
348
|
+
scheduler.addTask(new AcDbConversionTask({
|
|
349
|
+
stage: 'ENTITY',
|
|
350
|
+
step: 100,
|
|
351
|
+
progress: percentage,
|
|
352
|
+
task: function (data) { return __awaiter(_this, void 0, void 0, function () {
|
|
353
|
+
return __generator(this, function (_a) {
|
|
354
|
+
switch (_a.label) {
|
|
355
|
+
case 0: return [4 /*yield*/, this.processEntities(data.model, db, minimumChunkSize, percentage, progress)];
|
|
356
|
+
case 1:
|
|
357
|
+
_a.sent();
|
|
358
|
+
return [2 /*return*/, data];
|
|
359
|
+
}
|
|
360
|
+
});
|
|
361
|
+
}); }
|
|
362
|
+
}, progress));
|
|
363
|
+
scheduler.addTask(new AcDbConversionTask({
|
|
364
|
+
stage: 'END',
|
|
365
|
+
step: 0,
|
|
366
|
+
progress: percentage,
|
|
367
|
+
task: function (data) { return __awaiter(_this, void 0, void 0, function () {
|
|
368
|
+
return __generator(this, function (_a) {
|
|
369
|
+
return [2 /*return*/, data];
|
|
370
|
+
});
|
|
371
|
+
}); }
|
|
372
|
+
}, progress));
|
|
373
|
+
t = Date.now();
|
|
374
|
+
return [4 /*yield*/, scheduler.run(data)];
|
|
375
|
+
case 1:
|
|
376
|
+
_a.sent();
|
|
377
|
+
loadDbTimeEntry.data.total = Date.now() - t;
|
|
378
|
+
return [2 /*return*/];
|
|
379
|
+
}
|
|
380
|
+
});
|
|
381
|
+
});
|
|
382
|
+
};
|
|
383
|
+
AcDbDatabaseConverter.prototype.onError = function (error) {
|
|
384
|
+
if (this.progress) {
|
|
385
|
+
var task = error.task;
|
|
386
|
+
this.progress(task.data.progress.value, task.data.stage, 'ERROR', undefined, error);
|
|
387
|
+
}
|
|
388
|
+
console.error("Error occurred in conversion stage '".concat(error.task.name, "': "), error.error);
|
|
389
|
+
// Tasks to convert entities are not critical to the conversion process
|
|
390
|
+
// If failed to convert certain entities, we can still continue to convert
|
|
391
|
+
// the rest of entities.
|
|
392
|
+
if (error.task.name === 'ENTITY') {
|
|
393
|
+
return false;
|
|
394
|
+
}
|
|
395
|
+
this.onFinished();
|
|
396
|
+
return true;
|
|
397
|
+
};
|
|
398
|
+
AcDbDatabaseConverter.prototype.onFinished = function () {
|
|
399
|
+
if (this.progress) {
|
|
400
|
+
this.progress(100, 'END', 'END');
|
|
401
|
+
// Clear cache to reduce memory consumption
|
|
402
|
+
AcDbRenderingCache.instance.clear();
|
|
403
|
+
}
|
|
404
|
+
};
|
|
405
|
+
AcDbDatabaseConverter.prototype.parse = function (_data, _workerUrl) {
|
|
406
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
407
|
+
return __generator(this, function (_a) {
|
|
408
|
+
throw new Error('Not impelemented yet!');
|
|
409
|
+
});
|
|
410
|
+
});
|
|
411
|
+
};
|
|
412
|
+
AcDbDatabaseConverter.prototype.getFonts = function (_model) {
|
|
413
|
+
throw new Error('Not impelemented yet!');
|
|
414
|
+
};
|
|
415
|
+
AcDbDatabaseConverter.prototype.processLineTypes = function (_model, _db) {
|
|
416
|
+
throw new Error('Not impelemented yet!');
|
|
417
|
+
};
|
|
418
|
+
AcDbDatabaseConverter.prototype.processTextStyles = function (_model, _db) {
|
|
419
|
+
throw new Error('Not impelemented yet!');
|
|
420
|
+
};
|
|
421
|
+
AcDbDatabaseConverter.prototype.processDimStyles = function (_model, _db) {
|
|
422
|
+
throw new Error('Not impelemented yet!');
|
|
423
|
+
};
|
|
424
|
+
AcDbDatabaseConverter.prototype.processLayers = function (_model, _db) {
|
|
425
|
+
throw new Error('Not impelemented yet!');
|
|
426
|
+
};
|
|
427
|
+
AcDbDatabaseConverter.prototype.processViewports = function (_model, _db) {
|
|
428
|
+
throw new Error('Not impelemented yet!');
|
|
429
|
+
};
|
|
430
|
+
AcDbDatabaseConverter.prototype.processHeader = function (_model, _db) {
|
|
431
|
+
throw new Error('Not impelemented yet!');
|
|
432
|
+
};
|
|
433
|
+
AcDbDatabaseConverter.prototype.processBlockTables = function (_model, _db) {
|
|
434
|
+
throw new Error('Not impelemented yet!');
|
|
435
|
+
};
|
|
436
|
+
AcDbDatabaseConverter.prototype.processObjects = function (_model, _db) {
|
|
437
|
+
throw new Error('Not impelemented yet!');
|
|
438
|
+
};
|
|
439
|
+
AcDbDatabaseConverter.prototype.processBlocks = function (_model, _db) {
|
|
440
|
+
throw new Error('Not impelemented yet!');
|
|
441
|
+
};
|
|
442
|
+
AcDbDatabaseConverter.prototype.processEntities = function (_model, _db, _minimumChunkSize, _percentage, _progress) {
|
|
443
|
+
throw new Error('Not impelemented yet!');
|
|
444
|
+
};
|
|
445
|
+
return AcDbDatabaseConverter;
|
|
446
|
+
}());
|
|
447
|
+
export { AcDbDatabaseConverter };
|
|
448
|
+
//# sourceMappingURL=AcDbDatabaseConverter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbDatabaseConverter.js","sourceRoot":"","sources":["../../src/database/AcDbDatabaseConverter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { AcCmEventManager } from '@mlightcad/common';
|
|
2
|
+
import { AcDbDatabaseConverter } from './AcDbDatabaseConverter';
|
|
3
|
+
/**
|
|
4
|
+
* Represents the supported drawing file types.
|
|
5
|
+
*/
|
|
6
|
+
export declare enum AcDbFileType {
|
|
7
|
+
/**
|
|
8
|
+
* DXF (Drawing Exchange Format) file
|
|
9
|
+
*/
|
|
10
|
+
DXF = "dxf",
|
|
11
|
+
/**
|
|
12
|
+
* DWG (Drawing) file
|
|
13
|
+
*/
|
|
14
|
+
DWG = "dwg"
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Event arguments for database converter manager events.
|
|
18
|
+
*/
|
|
19
|
+
export interface AcDbDatabaseConverterManagerEventArgs {
|
|
20
|
+
/** The file type associated with the event */
|
|
21
|
+
fileType: AcDbFileType;
|
|
22
|
+
/** The converter associated with the event */
|
|
23
|
+
converter: AcDbDatabaseConverter;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Manager for registering and managing database converters by file type.
|
|
27
|
+
*
|
|
28
|
+
* This class provides a centralized way to register database converters for
|
|
29
|
+
* different file types (DXF, DWG, etc.) and retrieve the appropriate converter
|
|
30
|
+
* for a given file type. It implements the singleton pattern and provides
|
|
31
|
+
* event notifications when converters are registered or unregistered.
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```typescript
|
|
35
|
+
* const manager = AcDbDatabaseConverterManager.instance;
|
|
36
|
+
* const converter = manager.get(AcDbFileType.DXF);
|
|
37
|
+
* if (converter) {
|
|
38
|
+
* await converter.read(dxfData, database, 100);
|
|
39
|
+
* }
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
export declare class AcDbDatabaseConverterManager {
|
|
43
|
+
/** Singleton instance of the manager */
|
|
44
|
+
private static _instance?;
|
|
45
|
+
/** Map of file types to their associated converters */
|
|
46
|
+
private _converters;
|
|
47
|
+
/**
|
|
48
|
+
* Events that can be triggered by the converter manager.
|
|
49
|
+
*
|
|
50
|
+
* These events allow applications to respond to converter registration
|
|
51
|
+
* and unregistration.
|
|
52
|
+
*/
|
|
53
|
+
readonly events: {
|
|
54
|
+
/** Fired when a converter is registered */
|
|
55
|
+
registered: AcCmEventManager<AcDbDatabaseConverterManagerEventArgs>;
|
|
56
|
+
/** Fired when a converter is unregistered */
|
|
57
|
+
unregistered: AcCmEventManager<AcDbDatabaseConverterManagerEventArgs>;
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* Creates a new instance of AcDbDatabaseConverterManager.
|
|
61
|
+
*
|
|
62
|
+
* @returns The singleton instance of AcDbDatabaseConverterManager
|
|
63
|
+
*
|
|
64
|
+
* @example
|
|
65
|
+
* ```typescript
|
|
66
|
+
* const manager = AcDbDatabaseConverterManager.createInstance();
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
69
|
+
static createInstance(): AcDbDatabaseConverterManager | undefined;
|
|
70
|
+
/**
|
|
71
|
+
* Gets the singleton instance of this class.
|
|
72
|
+
*
|
|
73
|
+
* @returns The singleton instance of AcDbDatabaseConverterManager
|
|
74
|
+
*
|
|
75
|
+
* @example
|
|
76
|
+
* ```typescript
|
|
77
|
+
* const manager = AcDbDatabaseConverterManager.instance;
|
|
78
|
+
* ```
|
|
79
|
+
*/
|
|
80
|
+
static get instance(): AcDbDatabaseConverterManager;
|
|
81
|
+
/**
|
|
82
|
+
* Private constructor to enforce singleton pattern.
|
|
83
|
+
*
|
|
84
|
+
* Initializes the manager with a default DXF converter.
|
|
85
|
+
*/
|
|
86
|
+
private constructor();
|
|
87
|
+
/**
|
|
88
|
+
* Gets all registered file types.
|
|
89
|
+
*
|
|
90
|
+
* @returns An iterator of all registered file types
|
|
91
|
+
*
|
|
92
|
+
* @example
|
|
93
|
+
* ```typescript
|
|
94
|
+
* const fileTypes = manager.fileTypes;
|
|
95
|
+
* for (const fileType of fileTypes) {
|
|
96
|
+
* console.log('Supported file type:', fileType);
|
|
97
|
+
* }
|
|
98
|
+
* ```
|
|
99
|
+
*/
|
|
100
|
+
get fileTypes(): IterableIterator<AcDbFileType>;
|
|
101
|
+
/**
|
|
102
|
+
* Registers a database converter for the specified file type.
|
|
103
|
+
*
|
|
104
|
+
* @param fileType - The file type to register the converter for
|
|
105
|
+
* @param converter - The database converter to register
|
|
106
|
+
*
|
|
107
|
+
* @example
|
|
108
|
+
* ```typescript
|
|
109
|
+
* const converter = new MyCustomConverter();
|
|
110
|
+
* manager.register(AcDbFileType.DWG, converter);
|
|
111
|
+
* ```
|
|
112
|
+
*/
|
|
113
|
+
register(fileType: AcDbFileType, converter: AcDbDatabaseConverter): void;
|
|
114
|
+
/**
|
|
115
|
+
* Gets the database converter associated with the specified file type.
|
|
116
|
+
*
|
|
117
|
+
* @param fileType - The file type to get the converter for
|
|
118
|
+
* @returns The database converter associated with the specified file type, or undefined if not found
|
|
119
|
+
*
|
|
120
|
+
* @example
|
|
121
|
+
* ```typescript
|
|
122
|
+
* const converter = manager.get(AcDbFileType.DXF);
|
|
123
|
+
* if (converter) {
|
|
124
|
+
* await converter.read(dxfData, database, 100);
|
|
125
|
+
* }
|
|
126
|
+
* ```
|
|
127
|
+
*/
|
|
128
|
+
get(fileType: AcDbFileType): AcDbDatabaseConverter<unknown> | undefined;
|
|
129
|
+
/**
|
|
130
|
+
* Unregisters the database converter for the specified file type.
|
|
131
|
+
*
|
|
132
|
+
* @param fileType - The file type to unregister the converter for
|
|
133
|
+
*
|
|
134
|
+
* @example
|
|
135
|
+
* ```typescript
|
|
136
|
+
* manager.unregister(AcDbFileType.DWG);
|
|
137
|
+
* ```
|
|
138
|
+
*/
|
|
139
|
+
unregister(fileType: AcDbFileType): void;
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=AcDbDatabaseConverterManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcDbDatabaseConverterManager.d.ts","sourceRoot":"","sources":["../../src/database/AcDbDatabaseConverterManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAGpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAE/D;;GAEG;AACH,oBAAY,YAAY;IACtB;;OAEG;IACH,GAAG,QAAQ;IACX;;OAEG;IACH,GAAG,QAAQ;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,qCAAqC;IACpD,8CAA8C;IAC9C,QAAQ,EAAE,YAAY,CAAA;IACtB,8CAA8C;IAC9C,SAAS,EAAE,qBAAqB,CAAA;CACjC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,4BAA4B;IACvC,wCAAwC;IACxC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAA8B;IACvD,uDAAuD;IACvD,OAAO,CAAC,WAAW,CAA0C;IAE7D;;;;;OAKG;IACH,SAAgB,MAAM;QACpB,2CAA2C;;QAE3C,6CAA6C;;MAE9C;IAED;;;;;;;;;OASG;IACH,MAAM,CAAC,cAAc;IAQrB;;;;;;;;;OASG;IACH,MAAM,KAAK,QAAQ,iCAMlB;IAED;;;;OAIG;IACH,OAAO;IAKP;;;;;;;;;;;;OAYG;IACH,IAAI,SAAS,mCAEZ;IAED;;;;;;;;;;;OAWG;IACI,QAAQ,CAAC,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,qBAAqB;IAQxE;;;;;;;;;;;;;OAaG;IACI,GAAG,CAAC,QAAQ,EAAE,YAAY;IAIjC;;;;;;;;;OASG;IACI,UAAU,CAAC,QAAQ,EAAE,YAAY;CAUzC"}
|