@mlightcad/libredwg-converter 3.5.35 → 3.5.36

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.
@@ -1,4 +1,4 @@
1
- import { AcDbFace as j, AcGeVector3d as A, AcDbArc as z, transformOcsPointToWcs as x, AcDbCircle as U, AcDbEllipse as X, AcDbLine as _, AcGePoint3d as S, AcDbSpline as M, AcDbPoint as G, AcDbTrace as Y, AcDbPolyline as Z, AcGePoint2d as m, AcDbPolygonMesh as K, AcDbPolyFaceMesh as q, AcDbPoly2dType as b, AcDb2dPolyline as J, AcDbPoly3dType as I, AcDb3dPolyline as Q, AcDbHatch as $, AcGePolyline2d as ee, AcGeLine2d as te, AcGeCircArc2d as ne, AcGeVector2d as oe, AcGeEllipseArc2d as re, AcGeSpline3d as v, AcGeLoop2d as O, AcDbHatchObjectType as ie, AcDbTable as se, AcDbText as ce, AcDbMText as ae, AcDbLeader as le, AcDbMLine as de, AcDbMLeader as fe, AcDbMLeaderLineType as pe, AcDbMLeaderContentType as T, AcDbAlignedDimension as ue, AcDbRotatedDimension as ge, AcDb3PointAngularDimension as he, AcDbOrdinateDimension as De, AcDbRadialDimension as ye, AcDbDiametricDimension as Ae, AcDbRasterImage as be, AcDbWipeout as Pe, AcDbViewport as Ie, AcDbRay as Te, AcDbXline as Le, AcDbAttributeFlags as P, AcDbAttributeMTextFlag as k, AcDbAttribute as N, AcDbAttributeDefinition as we, AcDbBlockReference as Ce, AcCmColor as B, AcCmTransparency as Ee, AcDbDatabaseConverter as xe, createWorkerApi as Se, AcDbLinetypeTableRecord as Me, AcDbTextStyleTableRecord as me, DEFAULT_TEXT_STYLE as R, AcDbDimStyleTableRecord as ve, AcDbLayerTableRecord as Oe, AcDbViewportTableRecord as ke, VPORT_FALLBACK_CENTER_2D as V, VPORT_FALLBACK_LLC as Ne, VPORT_FALLBACK_URC as Re, VPORT_FALLBACK_VIEW_DIR as Ve, VPORT_FALLBACK_VIEW_TARGET as Fe, AcDbBlockTableRecord as Be, AcDbBatchProcessing as He, ByLayer as We, AcDbLayout as je, AcDbRasterImageDef as ze } from "@mlightcad/data-model";
1
+ import { AcDbFace as j, AcGeVector3d as A, AcDbArc as z, transformOcsPointToWcs as x, AcDbCircle as U, AcDbEllipse as X, AcDbLine as _, AcGePoint3d as M, AcDbSpline as S, AcDbPoint as G, AcDbTrace as Y, AcDbPolyline as Z, AcGePoint2d as m, AcDbPolygonMesh as K, AcDbPolyFaceMesh as q, AcDbPoly2dType as b, AcDb2dPolyline as J, AcDbPoly3dType as I, AcDb3dPolyline as Q, AcDbHatch as $, AcGePolyline2d as ee, AcGeLine2d as te, AcGeCircArc2d as ne, AcGeVector2d as oe, AcGeEllipseArc2d as ie, AcGeSpline3d as v, AcGeLoop2d as O, AcDbHatchObjectType as re, AcDbTable as se, AcDbText as ce, AcDbMText as ae, AcDbLeader as le, AcDbMLine as de, AcDbMLeader as fe, AcDbMLeaderLineType as pe, AcDbMLeaderContentType as T, AcDbAlignedDimension as ue, AcDbRotatedDimension as ge, AcDb3PointAngularDimension as he, AcDbOrdinateDimension as De, AcDbRadialDimension as ye, AcDbDiametricDimension as Ae, AcDbRasterImage as be, AcDbWipeout as Pe, AcDbViewport as Ie, AcDbRay as Te, AcDbXline as Le, AcDbAttributeFlags as P, AcDbAttributeMTextFlag as k, AcDbAttribute as N, AcDbAttributeDefinition as we, AcDbBlockReference as Ee, AcCmColor as B, AcCmTransparency as Ce, AcDbDatabaseConverter as xe, createWorkerApi as Me, AcDbLinetypeTableRecord as Se, AcDbTextStyleTableRecord as me, DEFAULT_TEXT_STYLE as R, AcDbDimStyleTableRecord as ve, AcDbLayerTableRecord as Oe, AcDbViewportTableRecord as ke, VPORT_FALLBACK_CENTER_2D as V, VPORT_FALLBACK_LLC as Ne, VPORT_FALLBACK_URC as Re, VPORT_FALLBACK_VIEW_DIR as Ve, VPORT_FALLBACK_VIEW_TARGET as Fe, AcDbBlockTableRecord as Be, AcDbBatchProcessing as He, ByLayer as We, AcDbLayout as je, AcDbRasterImageDef as ze } from "@mlightcad/data-model";
2
2
  class F {
3
3
  convert(e) {
4
4
  const t = this.createEntity(e);
@@ -44,14 +44,14 @@ class F {
44
44
  convertLine(e) {
45
45
  const t = e.startPoint, o = e.endPoint;
46
46
  return new _(
47
- new S(t.x, t.y, t.z),
48
- new S(o.x, o.y, o.z)
47
+ new M(t.x, t.y, t.z),
48
+ new M(o.x, o.y, o.z)
49
49
  );
50
50
  }
51
51
  convertSpline(e) {
52
52
  try {
53
53
  if (e.numberOfControlPoints > 0 && e.numberOfKnots > 0)
54
- return new M(
54
+ return new S(
55
55
  e.controlPoints,
56
56
  e.knots,
57
57
  e.weights,
@@ -59,7 +59,7 @@ class F {
59
59
  !!(e.flag & 1)
60
60
  );
61
61
  if (e.numberOfFitPoints > 0)
62
- return new M(
62
+ return new S(
63
63
  e.fitPoints,
64
64
  "Uniform",
65
65
  e.degree,
@@ -84,9 +84,9 @@ class F {
84
84
  const t = new Z();
85
85
  t.closed = !!(e.flag & 512);
86
86
  const o = e.constantWidth ?? -1;
87
- return e.vertices.forEach((n, r) => {
87
+ return e.vertices.forEach((n, i) => {
88
88
  t.addVertexAt(
89
- r,
89
+ i,
90
90
  new m(n.x, n.y),
91
91
  n.bulge,
92
92
  n.startWidth ?? o,
@@ -95,12 +95,12 @@ class F {
95
95
  }), t;
96
96
  }
97
97
  convertPolyline2d(e) {
98
- const t = !!(e.flag & 1), o = !!(e.flag & 16), n = !!(e.flag & 64), r = !!(e.flag & 32), i = [], a = [], s = [];
98
+ const t = !!(e.flag & 1), o = !!(e.flag & 16), n = !!(e.flag & 64), i = !!(e.flag & 32), r = [], a = [], s = [];
99
99
  if (e.vertices.map((c) => {
100
100
  if (!(c.flag & 16))
101
101
  if (n && c.flag & 128)
102
102
  if (c.flag & 64)
103
- i.push({
103
+ r.push({
104
104
  x: c.x,
105
105
  y: c.y,
106
106
  z: c.z
@@ -110,22 +110,22 @@ class F {
110
110
  c.polyfaceIndex0 != null && c.polyfaceIndex0 != 0 && d.push(Math.abs(c.polyfaceIndex0) - 1), c.polyfaceIndex1 != null && c.polyfaceIndex1 != 0 && d.push(Math.abs(c.polyfaceIndex1) - 1), c.polyfaceIndex2 != null && c.polyfaceIndex2 != 0 && d.push(Math.abs(c.polyfaceIndex2) - 1), c.polyfaceIndex3 != null && c.polyfaceIndex3 != 0 && d.push(Math.abs(c.polyfaceIndex3) - 1), d.length >= 3 && s.push(d);
111
111
  }
112
112
  else
113
- i.push({
113
+ r.push({
114
114
  x: c.x,
115
115
  y: c.y,
116
116
  z: c.z
117
117
  }), a.push(c.bulge ?? 0);
118
118
  }), o) {
119
119
  const c = e.meshMVertexCount ?? 2, d = e.meshNVertexCount ?? 2;
120
- return new K(c, d, i, t, r);
120
+ return new K(c, d, r, t, i);
121
121
  } else {
122
122
  if (n)
123
- return new q(i, s);
123
+ return new q(r, s);
124
124
  {
125
125
  let c = b.SimplePoly;
126
126
  return e.flag & 2 ? c = b.FitCurvePoly : e.flag & 4 && (e.smoothType == 6 ? c = b.CubicSplinePoly : e.smoothType == 5 && (c = b.QuadSplinePoly)), new J(
127
127
  c,
128
- i,
128
+ r,
129
129
  0,
130
130
  t,
131
131
  e.startWidth,
@@ -137,11 +137,11 @@ class F {
137
137
  }
138
138
  convertPolyline3d(e) {
139
139
  const t = !!(e.flag & 1), o = [];
140
- e.vertices.map((r) => {
141
- r.flag & 16 || o.push({
142
- x: r.x,
143
- y: r.y,
144
- z: r.z
140
+ e.vertices.map((i) => {
141
+ i.flag & 16 || o.push({
142
+ x: i.x,
143
+ y: i.y,
144
+ z: i.z
145
145
  });
146
146
  });
147
147
  let n = I.SimplePoly;
@@ -150,16 +150,16 @@ class F {
150
150
  convertHatch(e) {
151
151
  var n;
152
152
  const t = new $();
153
- if ((n = e.definitionLines) == null || n.forEach((r) => {
153
+ if ((n = e.definitionLines) == null || n.forEach((i) => {
154
154
  t.definitionLines.push({
155
- angle: r.angle,
156
- base: r.base,
157
- offset: r.offset,
158
- dashLengths: r.numberOfDashLengths > 0 ? r.dashLengths : []
155
+ angle: i.angle,
156
+ base: i.base,
157
+ offset: i.offset,
158
+ dashLengths: i.numberOfDashLengths > 0 ? i.dashLengths : []
159
159
  });
160
- }), t.isSolidFill = e.solidFill == 1, t.hatchStyle = e.hatchStyle, t.patternName = e.patternName, t.patternType = e.patternType, t.patternAngle = e.patternAngle == null ? 0 : e.patternAngle, t.patternScale = e.patternScale == null ? 0 : e.patternScale, e.boundaryPaths.forEach((r) => {
161
- if (r.boundaryPathTypeFlag & 2) {
162
- const a = r, s = new ee();
160
+ }), t.isSolidFill = e.solidFill == 1, t.hatchStyle = e.hatchStyle, t.patternName = e.patternName, t.patternType = e.patternType, t.patternAngle = e.patternAngle == null ? 0 : e.patternAngle, t.patternScale = e.patternScale == null ? 0 : e.patternScale, e.boundaryPaths.forEach((i) => {
161
+ if (i.boundaryPathTypeFlag & 2) {
162
+ const a = i, s = new ee();
163
163
  s.closed = a.isClosed, a.vertices.forEach((c, d) => {
164
164
  s.addVertexAt(d, {
165
165
  x: c.x,
@@ -168,7 +168,7 @@ class F {
168
168
  });
169
169
  }), t.add(s);
170
170
  } else {
171
- const a = r, s = [];
171
+ const a = i, s = [];
172
172
  a.edges.forEach((d) => {
173
173
  if (d != null) {
174
174
  if (d.type == 1) {
@@ -194,7 +194,7 @@ class F {
194
194
  let g = l.startAngle, y = l.endAngle;
195
195
  const h = Math.atan2(l.end.y, l.end.x);
196
196
  l.isCCW || (g = Math.PI * 2 - g, y = Math.PI * 2 - y), s.push(
197
- new re(
197
+ new ie(
198
198
  { ...l.center, z: 0 },
199
199
  p,
200
200
  u,
@@ -238,10 +238,10 @@ class F {
238
238
  c.length == 0 && s.length > 0 ? t.add(new O(s)) : c.forEach((d) => t.add(d));
239
239
  }
240
240
  }), e.gradientFlag) {
241
- const r = e;
242
- if (t.hatchObjectType = ie.GradientObject, t.gradientName = r.gradientName, t.gradientAngle = r.gradientRotation ?? 0, t.gradientShift = r.gradientDefinition ?? 0, t.gradientOneColorMode = r.gradientColorFlag == 1, t.shadeTintValue = r.colorTint ?? 0, r.gradientColors) {
243
- const i = r.gradientColors.length;
244
- i > 1 ? (t.gradientStartColor = r.gradientColors[0].rgb, t.gradientEndColor = r.gradientColors[1].rgb) : i > 0 && (t.gradientStartColor = r.gradientColors[0].rgb);
241
+ const i = e;
242
+ if (t.hatchObjectType = re.GradientObject, t.gradientName = i.gradientName, t.gradientAngle = i.gradientRotation ?? 0, t.gradientShift = i.gradientDefinition ?? 0, t.gradientOneColorMode = i.gradientColorFlag == 1, t.shadeTintValue = i.colorTint ?? 0, i.gradientColors) {
243
+ const r = i.gradientColors.length;
244
+ r > 1 ? (t.gradientStartColor = i.gradientColors[0].rgb, t.gradientEndColor = i.gradientColors[1].rgb) : r > 0 && (t.gradientStartColor = i.gradientColors[0].rgb);
245
245
  }
246
246
  }
247
247
  return t;
@@ -300,16 +300,16 @@ class F {
300
300
  ]) ?? pe.StraightLeader;
301
301
  const n = this.readNumber(o, ["contentType"]) ?? (e.textContent ? T.MTextContent : e.blockContent ? T.BlockContent : T.NoneContent);
302
302
  t.contentType = n, t.doglegEnabled = this.readBoolean(o, ["doglegEnabled", "enableDogleg"]) ?? !1, t.doglegLength = this.readNumber(o, ["doglegLength"]) ?? 0, e.landingPoint && (t.landingPoint = e.landingPoint), e.doglegVector && (t.doglegVector = e.doglegVector);
303
- const r = this.readString(o, [
303
+ const i = this.readString(o, [
304
304
  "mleaderStyleId",
305
305
  "mLeaderStyleId",
306
306
  "mleaderStyleHandle",
307
307
  "styleHandle",
308
308
  "styleName"
309
309
  ]);
310
- r && (t.mleaderStyleId = r);
311
- const i = this.readPoint(o, ["normal", "extrusionDirection"]);
312
- i && (t.normal = i);
310
+ i && (t.mleaderStyleId = i);
311
+ const r = this.readPoint(o, ["normal", "extrusionDirection"]);
312
+ r && (t.normal = r);
313
313
  const a = e.textContent, s = this.readString(a ?? {}, ["styleName", "textStyleName"]) ?? this.readString(o, ["textStyleName", "textStyle", "styleName"]);
314
314
  s && (t.textStyleName = s), t.textHeight = this.readNumber(a ?? {}, ["textHeight", "height"]) ?? this.readNumber(o, [
315
315
  "textHeight",
@@ -377,13 +377,13 @@ class F {
377
377
  doglegLength: h.doglegLength ?? e.doglegLength
378
378
  });
379
379
  (L = h.leaderLines) == null || L.forEach((w) => {
380
- var C;
380
+ var E;
381
381
  const W = t.addLeaderLine(
382
382
  D,
383
383
  w.vertices ?? []
384
384
  );
385
- (C = w.breaks) == null || C.forEach((E) => {
386
- t.addBreak(D, W, E.start, E.end);
385
+ (E = w.breaks) == null || E.forEach((C) => {
386
+ t.addBreak(D, W, C.start, C.end);
387
387
  });
388
388
  });
389
389
  }), t.numberOfLeaders === 0 && ((y = this.readLeaderLineArray(o)) == null || y.forEach((h) => {
@@ -481,8 +481,8 @@ class F {
481
481
  convertAttributeCommon(e, t) {
482
482
  const o = e.text;
483
483
  t.textString = o.text, t.styleName = o.styleName, t.height = o.textHeight, t.position.copy(o.startPoint);
484
- const n = e.alignmentPoint ?? o.endPoint, r = !n || n.x === 0 && n.y === 0 && (n.z ?? 0) === 0;
485
- n && !r ? t.alignmentPoint.copy(n) : t.alignmentPoint.copy(o.startPoint), t.rotation = o.rotation, t.oblique = o.obliqueAngle ?? 0, t.thickness = o.thickness, t.horizontalMode = o.halign, t.verticalMode = o.valign, t.widthFactor = o.xScale ?? 1, t.tag = e.tag, t.fieldLength = e.fieldLength, t.isInvisible = (e.flags & P.Invisible) !== 0, t.isConst = (e.flags & P.Const) !== 0, t.isVerifiable = (e.flags & P.Verifiable) !== 0, t.isPreset = (e.flags & P.Preset) !== 0, t.lockPositionInBlock = e.lockPositionFlag, t.isReallyLocked = e.isReallyLocked, t.isMTextAttribute = (e.mtextFlag & k.MultiLine) !== 0, t.isConstMTextAttribute = (e.mtextFlag & k.ConstMultiLine) !== 0;
484
+ const n = e.alignmentPoint ?? o.endPoint, i = !n || n.x === 0 && n.y === 0 && (n.z ?? 0) === 0;
485
+ n && !i ? t.alignmentPoint.copy(n) : t.alignmentPoint.copy(o.startPoint), t.rotation = o.rotation, t.oblique = o.obliqueAngle ?? 0, t.thickness = o.thickness, t.horizontalMode = o.halign, t.verticalMode = o.valign, t.widthFactor = o.xScale ?? 1, t.tag = e.tag, t.fieldLength = e.fieldLength, t.isInvisible = (e.flags & P.Invisible) !== 0, t.isConst = (e.flags & P.Const) !== 0, t.isVerifiable = (e.flags & P.Verifiable) !== 0, t.isPreset = (e.flags & P.Preset) !== 0, t.lockPositionInBlock = e.lockPositionFlag, t.isReallyLocked = e.isReallyLocked, t.isMTextAttribute = (e.mtextFlag & k.MultiLine) !== 0, t.isConstMTextAttribute = (e.mtextFlag & k.ConstMultiLine) !== 0;
486
486
  }
487
487
  convertAttribute(e) {
488
488
  const t = new N();
@@ -493,7 +493,7 @@ class F {
493
493
  return this.convertAttributeCommon(e, t), t.prompt = e.prompt, t;
494
494
  }
495
495
  convertBlockReference(e) {
496
- const t = new Ce(e.name);
496
+ const t = new Ee(e.name);
497
497
  return e.insertionPoint && t.position.copy(e.insertionPoint), t.scaleFactors.x = e.xScale, t.scaleFactors.y = e.yScale, t.scaleFactors.z = e.zScale, t.rotation = e.rotation, t.normal.copy(e.extrusionDirection), e.handle != null && (t.objectId = e.handle), e.attribs && e.attribs.forEach((o) => {
498
498
  const n = this.convert(o);
499
499
  n instanceof N && t.appendAttributes(n);
@@ -508,7 +508,7 @@ class F {
508
508
  e.color != null && o.setRGBValue(e.color), e.colorIndex != null && (e.color == null || e.colorIndex === 7) && (o.colorIndex = e.colorIndex), e.colorName && (o.colorName = e.colorName), t.color = o;
509
509
  }
510
510
  if (e.isVisible != null && (t.visibility = e.isVisible), e.transparency != null) {
511
- const o = new Ee();
511
+ const o = new Ce();
512
512
  o.method = e.transparencyType, (o.isByBlock || o.isByBlock) && (o.alpha = e.transparency), t.transparency = o;
513
513
  }
514
514
  }
@@ -544,12 +544,12 @@ class F {
544
544
  if (Array.isArray(t))
545
545
  return t.map((n) => {
546
546
  if (!n || typeof n != "object") return;
547
- const r = n.vertices;
548
- return Array.isArray(r) ? r.filter((i) => this.isPointLike(i)) : void 0;
547
+ const i = n.vertices;
548
+ return Array.isArray(i) ? i.filter((r) => this.isPointLike(r)) : void 0;
549
549
  }).filter((n) => !!n && n.length > 0);
550
550
  const o = e.vertices;
551
551
  if (Array.isArray(o)) {
552
- const n = o.filter((r) => this.isPointLike(r));
552
+ const n = o.filter((i) => this.isPointLike(i));
553
553
  return n.length > 0 ? [n] : void 0;
554
554
  }
555
555
  }
@@ -565,85 +565,85 @@ class _e extends xe {
565
565
  async parse(e, t) {
566
566
  const o = this.config, n = this.getParserWorkerTimeout(e, t);
567
567
  if (o.useWorker && o.parserWorkerUrl) {
568
- const r = Se({
568
+ const i = Me({
569
569
  workerUrl: o.parserWorkerUrl,
570
570
  timeout: n,
571
571
  maxConcurrentWorkers: 1
572
- }), i = await r.execute(e);
573
- if (r.destroy(), i.success)
574
- return i.data;
572
+ }), r = await i.execute(e);
573
+ if (i.destroy(), r.success)
574
+ return r.data;
575
575
  throw new Error(
576
- `Failed to parse drawing due to error: '${i.error}'`
576
+ `Failed to parse drawing due to error: '${r.error}'`
577
577
  );
578
578
  } else
579
579
  throw new Error("dwg converter can run in web worker only!");
580
580
  }
581
581
  getFonts(e) {
582
582
  const t = /* @__PURE__ */ new Map();
583
- e.tables.BLOCK_RECORD.entries.forEach((i) => {
584
- t.set(i.name, i);
583
+ e.tables.BLOCK_RECORD.entries.forEach((r) => {
584
+ t.set(r.name, r);
585
585
  });
586
- const o = /* @__PURE__ */ new Map(), n = (i) => {
587
- if (i) {
588
- const a = i.lastIndexOf(".");
589
- return a >= 0 ? i.substring(0, a).toLowerCase() : i.toLowerCase();
586
+ const o = /* @__PURE__ */ new Map(), n = (r) => {
587
+ if (r) {
588
+ const a = r.lastIndexOf(".");
589
+ return a >= 0 ? r.substring(0, a).toLowerCase() : r.toLowerCase();
590
590
  }
591
591
  };
592
- e.tables.STYLE.entries.forEach((i) => {
592
+ e.tables.STYLE.entries.forEach((r) => {
593
593
  const a = [];
594
- let s = n(i.font);
595
- s && a.push(s), s = n(i.bigFont), s && a.push(s), o.set(i.name, a);
594
+ let s = n(r.font);
595
+ s && a.push(s), s = n(r.bigFont), s && a.push(s), o.set(r.name, a);
596
596
  });
597
- const r = /* @__PURE__ */ new Set();
598
- return this.getFontsInBlock(e.entities, t, o, r), Array.from(r);
597
+ const i = /* @__PURE__ */ new Set();
598
+ return this.getFontsInBlock(e.entities, t, o, i), Array.from(i);
599
599
  }
600
600
  getFontsInBlock(e, t, o, n) {
601
- const r = /\\f(.*?)\|/g;
602
- e.forEach((i) => {
603
- if (i.type == "MTEXT") {
604
- const a = i;
605
- [...a.text.matchAll(r)].forEach((c) => {
601
+ const i = /\\f(.*?)\|/g;
602
+ e.forEach((r) => {
603
+ if (r.type == "MTEXT") {
604
+ const a = r;
605
+ [...a.text.matchAll(i)].forEach((c) => {
606
606
  n.add(c[1].toLowerCase());
607
607
  });
608
608
  const s = o.get(a.styleName);
609
609
  s == null || s.forEach((c) => n.add(c));
610
- } else if (i.type == "TEXT") {
611
- const a = i, s = o.get(a.styleName);
610
+ } else if (r.type == "TEXT") {
611
+ const a = r, s = o.get(a.styleName);
612
612
  s == null || s.forEach((c) => n.add(c));
613
- } else if (i.type == "MULTILEADER" || i.type == "MLEADER") {
614
- const a = i, s = a.textContent;
615
- [...(typeof (s == null ? void 0 : s.text) == "string" ? s.text : "").matchAll(r)].forEach((f) => {
613
+ } else if (r.type == "MULTILEADER" || r.type == "MLEADER") {
614
+ const a = r, s = a.textContent;
615
+ [...(typeof (s == null ? void 0 : s.text) == "string" ? s.text : "").matchAll(i)].forEach((f) => {
616
616
  n.add(f[1].toLowerCase());
617
617
  });
618
618
  const d = typeof (s == null ? void 0 : s.styleName) == "string" ? s.styleName : typeof a.textStyleName == "string" ? a.textStyleName : typeof a.styleName == "string" ? a.styleName : void 0, l = d ? o.get(d) : void 0;
619
619
  l == null || l.forEach((f) => n.add(f));
620
- } else if (i.type == "INSERT") {
621
- const a = i, s = t.get(a.name);
620
+ } else if (r.type == "INSERT") {
621
+ const a = r, s = t.get(a.name);
622
622
  s && this.getFontsInBlock(s.entities, t, o, n);
623
623
  }
624
624
  });
625
625
  }
626
626
  processLineTypes(e, t) {
627
627
  e.tables.LTYPE.entries.forEach((n) => {
628
- const r = {
628
+ const i = {
629
629
  name: n.name,
630
630
  description: n.description,
631
631
  standardFlag: n.standardFlag,
632
632
  totalPatternLength: n.totalPatternLength,
633
633
  pattern: n.pattern
634
- }, i = new Me(r);
635
- this.processCommonTableEntryAttrs(n, i), i.name = n.name, t.tables.linetypeTable.add(i);
634
+ }, r = new Se(i);
635
+ this.processCommonTableEntryAttrs(n, r), r.name = n.name, t.tables.linetypeTable.add(r);
636
636
  });
637
637
  }
638
638
  processTextStyles(e, t) {
639
639
  e.tables.STYLE.entries.forEach((n) => {
640
- const r = new me(n);
641
- this.processCommonTableEntryAttrs(n, r), t.tables.textStyleTable.add(r);
640
+ const i = new me(n);
641
+ this.processCommonTableEntryAttrs(n, i), t.tables.textStyleTable.add(i);
642
642
  });
643
643
  }
644
644
  processDimStyles(e, t) {
645
645
  e.tables.DIMSTYLE.entries.forEach((n) => {
646
- const r = {
646
+ const i = {
647
647
  name: n.name,
648
648
  ownerId: n.ownerHandle,
649
649
  dimpost: n.DIMPOST || "",
@@ -712,54 +712,54 @@ class _e extends xe {
712
712
  dimblk2: n.DIMBLK2 || "",
713
713
  dimlwd: n.DIMLWD,
714
714
  dimlwe: n.DIMLWE
715
- }, i = new ve(r);
716
- this.processCommonTableEntryAttrs(n, i), t.tables.dimStyleTable.add(i);
715
+ }, r = new ve(i);
716
+ this.processCommonTableEntryAttrs(n, r), t.tables.dimStyleTable.add(r);
717
717
  });
718
718
  }
719
719
  processLayers(e, t) {
720
720
  e.tables.LAYER.entries.forEach((n) => {
721
- const r = new B();
722
- r.colorIndex = n.colorIndex;
723
- const i = new Oe({
721
+ const i = new B();
722
+ i.colorIndex = n.colorIndex;
723
+ const r = new Oe({
724
724
  name: n.name,
725
725
  standardFlags: n.standardFlag,
726
726
  linetype: n.lineType,
727
727
  lineWeight: n.lineweight,
728
728
  isOff: n.off,
729
- color: r,
729
+ color: i,
730
730
  isPlottable: n.plotFlag != 0
731
731
  });
732
- this.processCommonTableEntryAttrs(n, i), t.tables.layerTable.add(i);
732
+ this.processCommonTableEntryAttrs(n, r), t.tables.layerTable.add(r);
733
733
  });
734
734
  }
735
735
  processViewports(e, t) {
736
736
  e.tables.VPORT.entries.forEach((n) => {
737
- const r = new ke();
738
- this.processCommonTableEntryAttrs(n, r), n.circleSides && (r.circleSides = n.circleSides), r.standardFlag = n.standardFlag, r.center.copy(n.center ?? V), r.lowerLeftCorner.copy(n.lowerLeftCorner ?? Ne), r.upperRightCorner.copy(n.upperRightCorner ?? Re), n.snapBasePoint && r.snapBase.copy(n.snapBasePoint), n.snapRotationAngle && (r.snapAngle = n.snapRotationAngle), n.snapSpacing && r.snapIncrements.copy(n.snapSpacing), n.majorGridLines && (r.gridMajor = n.majorGridLines), n.gridSpacing && r.gridIncrements.copy(n.gridSpacing), n.backgroundObjectId && (r.backgroundObjectId = n.backgroundObjectId), r.gsView.center.copy(n.center ?? V), r.gsView.viewDirectionFromTarget.copy(
737
+ const i = new ke();
738
+ this.processCommonTableEntryAttrs(n, i), n.circleSides && (i.circleSides = n.circleSides), i.standardFlag = n.standardFlag, i.center.copy(n.center ?? V), i.lowerLeftCorner.copy(n.lowerLeftCorner ?? Ne), i.upperRightCorner.copy(n.upperRightCorner ?? Re), n.snapBasePoint && i.snapBase.copy(n.snapBasePoint), n.snapRotationAngle && (i.snapAngle = n.snapRotationAngle), n.snapSpacing && i.snapIncrements.copy(n.snapSpacing), n.majorGridLines && (i.gridMajor = n.majorGridLines), n.gridSpacing && i.gridIncrements.copy(n.gridSpacing), n.backgroundObjectId && (i.backgroundObjectId = n.backgroundObjectId), i.gsView.center.copy(n.center ?? V), i.gsView.viewDirectionFromTarget.copy(
739
739
  n.viewDirectionFromTarget ?? Ve
740
- ), r.gsView.viewTarget.copy(
740
+ ), i.gsView.viewTarget.copy(
741
741
  n.viewTarget ?? Fe
742
- ), n.lensLength && (r.gsView.lensLength = n.lensLength), n.frontClippingPlane && (r.gsView.frontClippingPlane = n.frontClippingPlane), n.backClippingPlane && (r.gsView.backClippingPlane = n.backClippingPlane), n.viewHeight && (r.gsView.viewHeight = n.viewHeight), n.viewTwistAngle && (r.gsView.viewTwistAngle = n.viewTwistAngle), n.frozenLayers && (r.gsView.frozenLayers = n.frozenLayers), n.styleSheet && (r.gsView.styleSheet = n.styleSheet), n.renderMode && (r.gsView.renderMode = n.renderMode), n.viewMode && (r.gsView.viewMode = n.viewMode), n.ucsIconSetting && (r.gsView.ucsIconSetting = n.ucsIconSetting), n.ucsOrigin && r.gsView.ucsOrigin.copy(n.ucsOrigin), n.ucsXAxis && r.gsView.ucsXAxis.copy(n.ucsXAxis), n.ucsYAxis && r.gsView.ucsYAxis.copy(n.ucsYAxis), n.orthographicType && (r.gsView.orthographicType = n.orthographicType), n.shadePlotSetting && (r.gsView.shadePlotSetting = n.shadePlotSetting), n.shadePlotObjectId && (r.gsView.shadePlotObjectId = n.shadePlotObjectId), n.visualStyleObjectId && (r.gsView.visualStyleObjectId = n.visualStyleObjectId), n.isDefaultLightingOn && (r.gsView.isDefaultLightingOn = n.isDefaultLightingOn), n.defaultLightingType && (r.gsView.defaultLightingType = n.defaultLightingType), n.brightness && (r.gsView.brightness = n.brightness), n.contrast && (r.gsView.contrast = n.contrast), n.ambientColor && (r.gsView.ambientColor = n.ambientColor), t.tables.viewportTable.add(r);
742
+ ), n.lensLength && (i.gsView.lensLength = n.lensLength), n.frontClippingPlane && (i.gsView.frontClippingPlane = n.frontClippingPlane), n.backClippingPlane && (i.gsView.backClippingPlane = n.backClippingPlane), n.viewHeight && (i.gsView.viewHeight = n.viewHeight), n.viewTwistAngle && (i.gsView.viewTwistAngle = n.viewTwistAngle), n.frozenLayers && (i.gsView.frozenLayers = n.frozenLayers), n.styleSheet && (i.gsView.styleSheet = n.styleSheet), n.renderMode && (i.gsView.renderMode = n.renderMode), n.viewMode && (i.gsView.viewMode = n.viewMode), n.ucsIconSetting && (i.gsView.ucsIconSetting = n.ucsIconSetting), n.ucsOrigin && i.gsView.ucsOrigin.copy(n.ucsOrigin), n.ucsXAxis && i.gsView.ucsXAxis.copy(n.ucsXAxis), n.ucsYAxis && i.gsView.ucsYAxis.copy(n.ucsYAxis), n.orthographicType && (i.gsView.orthographicType = n.orthographicType), n.shadePlotSetting && (i.gsView.shadePlotSetting = n.shadePlotSetting), n.shadePlotObjectId && (i.gsView.shadePlotObjectId = n.shadePlotObjectId), n.visualStyleObjectId && (i.gsView.visualStyleObjectId = n.visualStyleObjectId), n.isDefaultLightingOn && (i.gsView.isDefaultLightingOn = n.isDefaultLightingOn), n.defaultLightingType && (i.gsView.defaultLightingType = n.defaultLightingType), n.brightness && (i.gsView.brightness = n.brightness), n.contrast && (i.gsView.contrast = n.contrast), n.ambientColor && (i.gsView.ambientColor = n.ambientColor), t.tables.viewportTable.add(i);
743
743
  });
744
744
  }
745
745
  processBlockTables(e, t) {
746
746
  e.tables.BLOCK_RECORD.entries.forEach((n) => {
747
- let r = t.tables.blockTable.getAt(n.name);
748
- r || (r = new Be(), r.objectId = n.handle, r.name = n.name, r.ownerId = n.ownerHandle, r.origin.copy(n.basePoint), r.layoutId = n.layout, r.blockInsertUnits = n.insertionUnits, r.explodability = n.explodability, r.blockScaling = n.scalability, n.bmpPreview && (r.bmpPreview = n.bmpPreview), t.tables.blockTable.add(r)), !r.isModelSapce && n.entities && n.entities.length > 0 && this.processEntitiesInBlock(n.entities, r);
747
+ let i = t.tables.blockTable.getAt(n.name);
748
+ i || (i = new Be(), i.objectId = n.handle, i.name = n.name, i.ownerId = n.ownerHandle, i.origin.copy(n.basePoint), i.layoutId = n.layout, i.blockInsertUnits = n.insertionUnits, i.explodability = n.explodability, i.blockScaling = n.scalability, n.bmpPreview && (i.bmpPreview = n.bmpPreview), t.tables.blockTable.add(i)), !i.isModelSapce && n.entities && n.entities.length > 0 && this.processEntitiesInBlock(n.entities, i);
749
749
  });
750
750
  }
751
751
  processBlocks(e, t) {
752
752
  }
753
753
  async processEntitiesInBlock(e, t) {
754
- const o = new F(), n = e.length, r = [];
755
- for (let i = 0; i < n; i++) {
756
- const a = e[i], s = o.convert(a);
757
- s && r.push(s);
754
+ const o = new F(), n = e.length, i = [];
755
+ for (let r = 0; r < n; r++) {
756
+ const a = e[r], s = o.convert(a);
757
+ s && i.push(s);
758
758
  }
759
- t.appendEntity(r);
759
+ t.appendEntity(i);
760
760
  }
761
- async processEntities(e, t, o, n, r) {
762
- const i = new F();
761
+ async processEntities(e, t, o, n, i) {
762
+ const r = new F();
763
763
  let a = [];
764
764
  e.tables.BLOCK_RECORD.entries.forEach((l) => {
765
765
  this.isModelSpace(l.name) && (a = l.entities);
@@ -774,18 +774,18 @@ class _e extends xe {
774
774
  await c.processChunk(async (l, f) => {
775
775
  const p = [];
776
776
  for (let u = l; u < f; u++) {
777
- const g = a[u], y = i.convert(g);
777
+ const g = a[u], y = r.convert(g);
778
778
  y && p.push(y);
779
779
  }
780
- if (d.appendEntity(p), r) {
780
+ if (d.appendEntity(p), i) {
781
781
  let u = n.value + f / s * (100 - n.value);
782
- u > 100 && (u = 100), await r(u, "ENTITY", "IN-PROGRESS");
782
+ u > 100 && (u = 100), await i(u, "ENTITY", "IN-PROGRESS");
783
783
  }
784
784
  });
785
785
  }
786
786
  processHeader(e, t) {
787
787
  const o = e.header;
788
- o.CECOLOR && (o.CECOLOR.index >= 0 && o.CECOLOR.index <= 256 ? t.cecolor.colorIndex = o.CECOLOR.index : t.cecolor.setRGBValue(o.CECOLOR.rgb)), t.angbase = o.ANGBASE ?? 0, t.angdir = o.ANGDIR ?? 0, t.aunits = o.AUNITS ?? 0, o.AUPREC != null && (t.auprec = o.AUPREC), o.LUNITS != null && (t.lunits = o.LUNITS), o.LUPREC != null && (t.luprec = o.LUPREC), t.celtype = o.CELTYPE ?? We, t.celtscale = o.CELTSCALE ?? 1, t.ltscale = o.LTSCALE ?? 1, o.EXTMAX && (t.extmax = o.EXTMAX), o.EXTMIN && (t.extmin = o.EXTMIN), t.insunits = o.INSUNITS ?? 1, t.pdmode = o.PDMODE ?? 0, t.pdsize = o.PDSIZE ?? 0, t.textstyle = o.TEXTSTYLE ?? R;
788
+ o.CECOLOR && (o.CECOLOR.index >= 0 && o.CECOLOR.index <= 256 ? t.cecolor.colorIndex = o.CECOLOR.index : t.cecolor.setRGBValue(o.CECOLOR.rgb)), t.angbase = o.ANGBASE ?? 0, t.angdir = o.ANGDIR ?? 0, t.aunits = o.AUNITS ?? 0, o.AUPREC != null && (t.auprec = o.AUPREC), o.LUNITS != null && (t.lunits = o.LUNITS), o.LUPREC != null && (t.luprec = o.LUPREC), o.UNITMODE != null && (t.unitmode = o.UNITMODE), o.MEASUREMENT != null && (t.measurement = o.MEASUREMENT), t.celtype = o.CELTYPE ?? We, t.celtscale = o.CELTSCALE ?? 1, t.ltscale = o.LTSCALE ?? 1, o.EXTMAX && (t.extmax = o.EXTMAX), o.EXTMIN && (t.extmin = o.EXTMIN), t.insunits = o.INSUNITS ?? 1, t.pdmode = o.PDMODE ?? 0, t.pdsize = o.PDSIZE ?? 0, t.textstyle = o.TEXTSTYLE ?? R;
789
789
  }
790
790
  processCommonTableEntryAttrs(e, t) {
791
791
  t.name = e.name, t.objectId = e.handle, e.ownerHandle != null && (t.ownerId = e.ownerHandle);
@@ -795,24 +795,24 @@ class _e extends xe {
795
795
  }
796
796
  processLayouts(e, t) {
797
797
  const o = t.objects.layout;
798
- e.objects.LAYOUT.forEach((r) => {
799
- const i = new je();
800
- i.layoutName = r.layoutName, i.tabOrder = r.tabOrder;
798
+ e.objects.LAYOUT.forEach((i) => {
799
+ const r = new je();
800
+ r.layoutName = i.layoutName, r.tabOrder = i.tabOrder;
801
801
  const a = t.tables.blockTable.newIterator();
802
- i.objectId = r.handle;
802
+ r.objectId = i.handle;
803
803
  for (const s of a)
804
- if (s.layoutId === i.objectId) {
805
- i.blockTableRecordId = s.objectId;
804
+ if (s.layoutId === r.objectId) {
805
+ r.blockTableRecordId = s.objectId;
806
806
  break;
807
807
  }
808
- i.blockTableRecordId || r.layoutName === "Model" && (i.blockTableRecordId = t.tables.blockTable.modelSpace.objectId), i.limits.min.copy(r.minLimit), i.limits.max.copy(r.maxLimit), i.extents.min.copy(r.minExtent), i.extents.max.copy(r.maxExtent), r.viewportId && i.viewportArray.push(r.viewportId), this.processCommonObjectAttrs(r, i), o.setAt(i.layoutName, i);
808
+ r.blockTableRecordId || i.layoutName === "Model" && (r.blockTableRecordId = t.tables.blockTable.modelSpace.objectId), r.limits.min.copy(i.minLimit), r.limits.max.copy(i.maxLimit), r.extents.min.copy(i.minExtent), r.extents.max.copy(i.maxExtent), i.viewportId && r.viewportArray.push(i.viewportId), this.processCommonObjectAttrs(i, r), o.setAt(r.layoutName, r);
809
809
  });
810
810
  }
811
811
  processImageDefs(e, t) {
812
812
  const o = t.objects.imageDefinition;
813
- e.objects.IMAGEDEF.forEach((r) => {
814
- const i = new ze();
815
- i.sourceFileName = r.fileName, this.processCommonObjectAttrs(r, i), o.setAt(i.objectId, i);
813
+ e.objects.IMAGEDEF.forEach((i) => {
814
+ const r = new ze();
815
+ r.sourceFileName = i.fileName, this.processCommonObjectAttrs(i, r), o.setAt(r.objectId, r);
816
816
  });
817
817
  }
818
818
  processCommonObjectAttrs(e, t) {
@@ -1 +1 @@
1
- (function(b,i){typeof exports=="object"&&typeof module<"u"?i(exports,require("@mlightcad/data-model")):typeof define=="function"&&define.amd?define(["exports","@mlightcad/data-model"],i):(b=typeof globalThis<"u"?globalThis:b||self,i(b["libredwg-converter"]={},b.dataModel))})(this,function(b,i){"use strict";class P{convert(e){const n=this.createEntity(e);return n&&this.processCommonAttrs(e,n),n}createEntity(e){return e.type=="3DFACE"?this.convertFace(e):e.type=="ARC"?this.convertArc(e):e.type=="ATTDEF"?this.convertAttributeDefinition(e):e.type=="ATTRIB"?this.convertAttribute(e):e.type=="CIRCLE"?this.convertCirle(e):e.type=="DIMENSION"?this.convertDimension(e):e.type=="ELLIPSE"?this.convertEllipse(e):e.type=="HATCH"?this.convertHatch(e):e.type=="IMAGE"?this.convertImage(e):e.type=="LEADER"?this.convertLeader(e):e.type=="LINE"?this.convertLine(e):e.type=="LWPOLYLINE"?this.convertLWPolyline(e):e.type=="MLINE"?this.convertMLine(e):e.type=="MTEXT"?this.convertMText(e):e.type=="MULTILEADER"||e.type=="MLEADER"?this.convertMLeader(e):e.type=="POINT"?this.convertPoint(e):e.type=="POLYLINE2D"?this.convertPolyline2d(e):e.type=="POLYLINE3D"?this.convertPolyline3d(e):e.type=="RAY"?this.convertRay(e):e.type=="SPLINE"?this.convertSpline(e):e.type=="ACAD_TABLE"?this.convertTable(e):e.type=="TEXT"?this.convertText(e):e.type=="SOLID"?this.convertSolid(e):e.type=="VIEWPORT"?this.convertViewport(e):e.type=="WIPEOUT"?this.convertWipeout(e):e.type=="XLINE"?this.convertXline(e):e.type=="INSERT"?this.convertBlockReference(e):null}convertFace(e){const n=new i.AcDbFace;return e.corner1&&n.setVertexAt(0,e.corner1),e.corner2&&n.setVertexAt(1,e.corner2),e.corner3&&n.setVertexAt(2,e.corner3),e.corner4&&n.setVertexAt(3,e.corner4),n.setEdgeInvisibilities(e.flag),n}convertArc(e){const n=e.extrusionDirection??i.AcGeVector3d.Z_AXIS;return new i.AcDbArc(i.transformOcsPointToWcs(e.center,n),e.radius,e.startAngle,e.endAngle,n)}convertCirle(e){const n=e.extrusionDirection??i.AcGeVector3d.Z_AXIS;return new i.AcDbCircle(i.transformOcsPointToWcs(e.center,n),e.radius,n)}convertEllipse(e){const n=new i.AcGeVector3d(e.majorAxisEndPoint),o=n.length();return new i.AcDbEllipse(e.center,e.extrusionDirection??i.AcGeVector3d.Z_AXIS,n,o,o*e.axisRatio,e.startAngle,e.endAngle)}convertLine(e){const n=e.startPoint,o=e.endPoint;return new i.AcDbLine(new i.AcGePoint3d(n.x,n.y,n.z),new i.AcGePoint3d(o.x,o.y,o.z))}convertSpline(e){try{if(e.numberOfControlPoints>0&&e.numberOfKnots>0)return new i.AcDbSpline(e.controlPoints,e.knots,e.weights,e.degree,!!(e.flag&1));if(e.numberOfFitPoints>0)return new i.AcDbSpline(e.fitPoints,"Uniform",e.degree,!!(e.flag&1))}catch{}return null}convertPoint(e){const n=new i.AcDbPoint;return n.position=e.position,n}convertSolid(e){const n=new i.AcDbTrace;return n.setPointAt(0,{...e.corner1,z:0}),n.setPointAt(1,{...e.corner2,z:0}),n.setPointAt(2,{...e.corner3,z:0}),n.setPointAt(3,e.corner4?{...e.corner4,z:0}:{...e.corner3,z:0}),n.thickness=e.thickness,n}convertLWPolyline(e){const n=new i.AcDbPolyline;n.closed=!!(e.flag&512);const o=e.constantWidth??-1;return e.vertices.forEach((t,r)=>{n.addVertexAt(r,new i.AcGePoint2d(t.x,t.y),t.bulge,t.startWidth??o,t.endWidth??o)}),n}convertPolyline2d(e){const n=!!(e.flag&1),o=!!(e.flag&16),t=!!(e.flag&64),r=!!(e.flag&32),s=[],a=[],c=[];if(e.vertices.map(l=>{if(!(l.flag&16))if(t&&l.flag&128)if(l.flag&64)s.push({x:l.x,y:l.y,z:l.z}),a.push(l.bulge??0);else{const p=[];l.polyfaceIndex0!=null&&l.polyfaceIndex0!=0&&p.push(Math.abs(l.polyfaceIndex0)-1),l.polyfaceIndex1!=null&&l.polyfaceIndex1!=0&&p.push(Math.abs(l.polyfaceIndex1)-1),l.polyfaceIndex2!=null&&l.polyfaceIndex2!=0&&p.push(Math.abs(l.polyfaceIndex2)-1),l.polyfaceIndex3!=null&&l.polyfaceIndex3!=0&&p.push(Math.abs(l.polyfaceIndex3)-1),p.length>=3&&c.push(p)}else s.push({x:l.x,y:l.y,z:l.z}),a.push(l.bulge??0)}),o){const l=e.meshMVertexCount??2,p=e.meshNVertexCount??2;return new i.AcDbPolygonMesh(l,p,s,n,r)}else{if(t)return new i.AcDbPolyFaceMesh(s,c);{let l=i.AcDbPoly2dType.SimplePoly;return e.flag&2?l=i.AcDbPoly2dType.FitCurvePoly:e.flag&4&&(e.smoothType==6?l=i.AcDbPoly2dType.CubicSplinePoly:e.smoothType==5&&(l=i.AcDbPoly2dType.QuadSplinePoly)),new i.AcDb2dPolyline(l,s,0,n,e.startWidth,e.endWidth,a)}}}convertPolyline3d(e){const n=!!(e.flag&1),o=[];e.vertices.map(r=>{r.flag&16||o.push({x:r.x,y:r.y,z:r.z})});let t=i.AcDbPoly3dType.SimplePoly;return e.flag&4&&(e.smoothType==6?t=i.AcDbPoly3dType.CubicSplinePoly:e.smoothType==5&&(t=i.AcDbPoly3dType.QuadSplinePoly)),new i.AcDb3dPolyline(t,o,n)}convertHatch(e){var t;const n=new i.AcDbHatch;if((t=e.definitionLines)==null||t.forEach(r=>{n.definitionLines.push({angle:r.angle,base:r.base,offset:r.offset,dashLengths:r.numberOfDashLengths>0?r.dashLengths:[]})}),n.isSolidFill=e.solidFill==1,n.hatchStyle=e.hatchStyle,n.patternName=e.patternName,n.patternType=e.patternType,n.patternAngle=e.patternAngle==null?0:e.patternAngle,n.patternScale=e.patternScale==null?0:e.patternScale,e.boundaryPaths.forEach(r=>{if(r.boundaryPathTypeFlag&2){const a=r,c=new i.AcGePolyline2d;c.closed=a.isClosed,a.vertices.forEach((l,p)=>{c.addVertexAt(p,{x:l.x,y:l.y,bulge:l.bulge})}),n.add(c)}else{const a=r,c=[];a.edges.forEach(p=>{if(p!=null){if(p.type==1){const f=p;c.push(new i.AcGeLine2d(f.start,f.end))}else if(p.type==2){const f=p;c.push(new i.AcGeCircArc2d(f.center,f.radius,f.startAngle,f.endAngle,!f.isCCW))}else if(p.type==3){const f=p;new i.AcGeVector2d().subVectors(f.end,f.center);const g=Math.sqrt(Math.pow(f.end.x,2)+Math.pow(f.end.y,2)),d=g*f.lengthOfMinorAxis;let h=f.startAngle,y=f.endAngle;const D=Math.atan2(f.end.y,f.end.x);f.isCCW||(h=Math.PI*2-h,y=Math.PI*2-y),c.push(new i.AcGeEllipseArc2d({...f.center,z:0},g,d,h,y,!f.isCCW,D))}else if(p.type==4){const f=p;if(f.numberOfControlPoints>0&&f.numberOfKnots>0){const u=f.controlPoints.map(h=>({x:h.x,y:h.y,z:0}));let g=!0;const d=f.controlPoints.map(h=>(h.weight==null&&(g=!1),h.weight||1));c.push(new i.AcGeSpline3d(u,f.knots,g?d:void 0))}else if(f.numberOfFitData>0){const u=f.fitDatum.map(g=>({x:g.x,y:g.y,z:0}));c.push(new i.AcGeSpline3d(u,"Uniform"))}}}});const l=i.AcGeLoop2d.buildFromEdges(c);l.length==0&&c.length>0?n.add(new i.AcGeLoop2d(c)):l.forEach(p=>n.add(p))}}),e.gradientFlag){const r=e;if(n.hatchObjectType=i.AcDbHatchObjectType.GradientObject,n.gradientName=r.gradientName,n.gradientAngle=r.gradientRotation??0,n.gradientShift=r.gradientDefinition??0,n.gradientOneColorMode=r.gradientColorFlag==1,n.shadeTintValue=r.colorTint??0,r.gradientColors){const s=r.gradientColors.length;s>1?(n.gradientStartColor=r.gradientColors[0].rgb,n.gradientEndColor=r.gradientColors[1].rgb):s>0&&(n.gradientStartColor=r.gradientColors[0].rgb)}}return n}convertTable(e){const n=new i.AcDbTable(e.name,e.rowCount,e.columnCount);return n.tableStyleId=e.tableStyleId,n.owningBlockRecordId=e.blockRecordHandle,e.directionVector&&(n.horizontalDirection=new i.AcGeVector3d(e.directionVector)),n.attachmentPoint=e.attachmentPoint,n.position.copy(e.startPoint),n.tableValueFlag=e.tableValue,n.tableOverrideFlag=e.overrideFlag,n.borderColorOverrideFlag=e.borderColorOverrideFlag,n.borderLineweightOverrideFlag=e.borderLineWeightOverrideFlag,n.borderVisibilityOverrideFlag=e.borderVisibilityOverrideFlag,e.columnWidthArr.forEach((o,t)=>n.setColumnWidth(t,o)),e.rowHeightArr.forEach((o,t)=>n.setRowHeight(t,o)),e.cells.forEach((o,t)=>{n.setCell(t,o)}),n}convertText(e){const n=new i.AcDbText;n.textString=e.text,n.styleName=e.styleName,n.height=e.textHeight,n.position.copy(e.startPoint);const o=!e.endPoint||e.endPoint.x===0&&e.endPoint.y===0&&(e.endPoint.z??0)===0;return e.endPoint&&!o?n.alignmentPoint.copy(e.endPoint):n.alignmentPoint.copy(e.startPoint),n.rotation=e.rotation,n.oblique=e.obliqueAngle??0,n.thickness=e.thickness,n.horizontalMode=e.halign,n.verticalMode=e.valign,n.widthFactor=e.xScale??1,n}convertMText(e){const n=new i.AcDbMText;return n.contents=e.text,e.styleName!=null&&(n.styleName=e.styleName),n.height=e.textHeight,n.width=e.rectWidth,n.rotation=e.rotation||0,n.location=e.insertionPoint,n.attachmentPoint=e.attachmentPoint,e.direction&&(n.direction=new i.AcGeVector3d(e.direction)),n.drawingDirection=e.drawingDirection,n}convertLeader(e){const n=new i.AcDbLeader;return e.vertices.forEach(o=>{n.appendVertex(o)}),n.hasArrowHead=e.isArrowheadEnabled,n.hasHookLine=e.isHooklineExists,n.isSplined=e.isSpline,n.dimensionStyle=e.styleName,n.annoType=e.leaderCreationFlag,n}convertMLine(e){const n=new i.AcDbMLine;return n.styleName=e.mlineStyle||"STANDARD",n.scale=e.scale,n.flags=e.flags,n.justification=e.justification,n.startPosition=e.startPoint,n.normal=e.extrusionDirection??i.AcGeVector3d.Z_AXIS,n.styleCount=e.numberOfLines??0,n.segments=(e.vertices??[]).map(o=>({position:o.vertex,direction:o.vertexDirection,miterDirection:o.miterDirection,elements:(o.lines??[]).map(t=>({parameterCount:t.numberOfSegmentParams,parameters:t.segmentParams??[],fillCount:t.numberOfAreaFillParams,fillParameters:t.areaFillParams??[]}))})),n}convertMLeader(e){var g,d,h,y;const n=new i.AcDbMLeader,o=e;n.leaderLineType=this.readNumber(o,["multileaderType","leaderLineType","leaderType"])??i.AcDbMLeaderLineType.StraightLeader;const t=this.readNumber(o,["contentType"])??(e.textContent?i.AcDbMLeaderContentType.MTextContent:e.blockContent?i.AcDbMLeaderContentType.BlockContent:i.AcDbMLeaderContentType.NoneContent);n.contentType=t,n.doglegEnabled=this.readBoolean(o,["doglegEnabled","enableDogleg"])??!1,n.doglegLength=this.readNumber(o,["doglegLength"])??0,e.landingPoint&&(n.landingPoint=e.landingPoint),e.doglegVector&&(n.doglegVector=e.doglegVector);const r=this.readString(o,["mleaderStyleId","mLeaderStyleId","mleaderStyleHandle","styleHandle","styleName"]);r&&(n.mleaderStyleId=r);const s=this.readPoint(o,["normal","extrusionDirection"]);s&&(n.normal=s);const a=e.textContent,c=this.readString(a??{},["styleName","textStyleName"])??this.readString(o,["textStyleName","textStyle","styleName"]);c&&(n.textStyleName=c),n.textHeight=this.readNumber(a??{},["textHeight","height"])??this.readNumber(o,["textHeight","mtextHeight","textContentHeight"])??n.textHeight,n.textWidth=this.readNumber(a??{},["textWidth","width"])??this.readNumber(o,["textWidth","mtextWidth","textContentWidth"])??n.textWidth;const l=this.readNumber(a??{},["textRotation","rotation"])??this.readNumber(o,["textRotation","mtextRotation","textContentRotation"]);l!=null&&(n.textRotation=l);const p=this.readPoint(o,["textDirection","mtextDirection","textDirectionVector"]);p&&(n.textDirection=p);const f=this.readNumber(o,["textAttachmentPoint","attachmentPoint"]);f!=null&&(n.textAttachmentPoint=f);const u=this.readNumber(o,["textDrawingDirection","drawingDirection"]);if(u!=null&&(n.textDrawingDirection=u),((g=e.textContent)==null?void 0:g.text)!=null&&e.textContent.anchorPoint)n.mtextContent={text:e.textContent.text,anchorPoint:e.textContent.anchorPoint};else{const D=this.readString(o,["text","contents","mtext"]),A=this.readPoint(o,["textLocation","textPosition","textAnchorPoint"]);D!=null&&A&&(n.mtextContent={text:D,anchorPoint:A})}if((d=e.blockContent)!=null&&d.blockHandle&&e.blockContent.position)n.blockContent={blockHandle:e.blockContent.blockHandle,position:e.blockContent.position};else{const D=this.readString(o,["blockHandle","blockContentHandle","blockId"]),A=this.readPoint(o,["blockPosition","blockContentPosition"]);D&&A&&(n.blockContent={blockHandle:D,position:A})}return(h=e.leaders)==null||h.forEach(D=>{var T;const A=n.addLeader({landingPoint:D.landingPoint??e.landingPoint,doglegVector:D.doglegVector??e.doglegVector,doglegLength:D.doglegLength??e.doglegLength});(T=D.leaderLines)==null||T.forEach(I=>{var L;const S=n.addLeaderLine(A,I.vertices??[]);(L=I.breaks)==null||L.forEach(w=>{n.addBreak(A,S,w.start,w.end)})})}),n.numberOfLeaders===0&&((y=this.readLeaderLineArray(o))==null||y.forEach(D=>{const A=n.addLeader({landingPoint:e.landingPoint,doglegVector:e.doglegVector,doglegLength:e.doglegLength});n.addLeaderLine(A,D)})),n}convertDimension(e){if(e.subclassMarker=="AcDbAlignedDimension"){const n=e,o=new i.AcDbAlignedDimension(n.subDefinitionPoint1,n.subDefinitionPoint2,n.definitionPoint);return n.insertionPoint&&(o.dimBlockPosition={x:n.insertionPoint.x,y:n.insertionPoint.y,z:0}),o.rotation=n.rotationAngle,this.processDimensionCommonAttrs(e,o),o}else if(e.subclassMarker=="AcDbRotatedDimension"){const n=e,o=new i.AcDbRotatedDimension(n.subDefinitionPoint1,n.subDefinitionPoint2,n.definitionPoint);return n.insertionPoint&&(o.dimBlockPosition={x:n.insertionPoint.x,y:n.insertionPoint.y,z:0}),o.rotation=n.rotationAngle,this.processDimensionCommonAttrs(e,o),o}else if(e.subclassMarker=="AcDb3PointAngularDimension"){const n=e,o=new i.AcDb3PointAngularDimension(n.centerPoint,n.subDefinitionPoint1,n.subDefinitionPoint2,n.definitionPoint);return this.processDimensionCommonAttrs(e,o),o}else if(e.subclassMarker=="AcDbOrdinateDimension"){const n=e,o=new i.AcDbOrdinateDimension(n.subDefinitionPoint1,n.subDefinitionPoint2);return this.processDimensionCommonAttrs(e,o),o}else if(e.subclassMarker=="AcDbRadialDimension"){const n=e,o=new i.AcDbRadialDimension(n.definitionPoint,n.centerPoint,n.leaderLength);return this.processDimensionCommonAttrs(e,o),o}else if(e.subclassMarker=="AcDbDiametricDimension"){const n=e,o=new i.AcDbDiametricDimension(n.definitionPoint,n.centerPoint,n.leaderLength);return this.processDimensionCommonAttrs(e,o),o}return null}processImage(e,n){n.position.copy(e.position),n.brightness=e.brightness,n.contrast=e.contrast,n.fade=e.fade,n.imageSize.copy(e.imageSize),n.imageDefId=e.imageDefHandle,n.isClipped=e.clipping>0,n.isShownClipped=(e.flags|4)>0,n.isImageShown=(e.flags|3)>0,n.isImageTransparent=(e.flags|8)>0,e.clippingBoundaryPath.forEach(o=>{n.clipBoundary.push(new i.AcGePoint2d(o))}),n.clipBoundaryType=e.clippingBoundaryType,n.width=Math.sqrt(e.uPixel.x**2+e.uPixel.y**2+e.uPixel.z**2)*e.imageSize.x,n.height=Math.sqrt(e.vPixel.x**2+e.vPixel.y**2+e.vPixel.z**2)*e.imageSize.y,n.rotation=Math.atan2(e.uPixel.y,e.uPixel.x)}convertImage(e){const n=new i.AcDbRasterImage;return this.processImage(e,n),n}convertWipeout(e){const n=new i.AcDbWipeout;return this.processImage(e,n),n}convertViewport(e){const n=new i.AcDbViewport;return n.number=e.viewportId,n.centerPoint.copy(e.viewportCenter),n.height=e.height,n.width=e.width,n.viewCenter.copy(e.displayCenter),n.viewHeight=e.viewHeight,n}convertRay(e){const n=new i.AcDbRay;return n.basePoint.copy(e.firstPoint),n.unitDir.copy(e.unitDirection),n}convertXline(e){const n=new i.AcDbXline;return n.basePoint.copy(e.firstPoint),n.unitDir.copy(e.unitDirection),n}convertAttributeCommon(e,n){const o=e.text;n.textString=o.text,n.styleName=o.styleName,n.height=o.textHeight,n.position.copy(o.startPoint);const t=e.alignmentPoint??o.endPoint,r=!t||t.x===0&&t.y===0&&(t.z??0)===0;t&&!r?n.alignmentPoint.copy(t):n.alignmentPoint.copy(o.startPoint),n.rotation=o.rotation,n.oblique=o.obliqueAngle??0,n.thickness=o.thickness,n.horizontalMode=o.halign,n.verticalMode=o.valign,n.widthFactor=o.xScale??1,n.tag=e.tag,n.fieldLength=e.fieldLength,n.isInvisible=(e.flags&i.AcDbAttributeFlags.Invisible)!==0,n.isConst=(e.flags&i.AcDbAttributeFlags.Const)!==0,n.isVerifiable=(e.flags&i.AcDbAttributeFlags.Verifiable)!==0,n.isPreset=(e.flags&i.AcDbAttributeFlags.Preset)!==0,n.lockPositionInBlock=e.lockPositionFlag,n.isReallyLocked=e.isReallyLocked,n.isMTextAttribute=(e.mtextFlag&i.AcDbAttributeMTextFlag.MultiLine)!==0,n.isConstMTextAttribute=(e.mtextFlag&i.AcDbAttributeMTextFlag.ConstMultiLine)!==0}convertAttribute(e){const n=new i.AcDbAttribute;return this.convertAttributeCommon(e,n),n}convertAttributeDefinition(e){const n=new i.AcDbAttributeDefinition;return this.convertAttributeCommon(e,n),n.prompt=e.prompt,n}convertBlockReference(e){const n=new i.AcDbBlockReference(e.name);return e.insertionPoint&&n.position.copy(e.insertionPoint),n.scaleFactors.x=e.xScale,n.scaleFactors.y=e.yScale,n.scaleFactors.z=e.zScale,n.rotation=e.rotation,n.normal.copy(e.extrusionDirection),e.handle!=null&&(n.objectId=e.handle),e.attribs&&e.attribs.forEach(o=>{const t=this.convert(o);t instanceof i.AcDbAttribute&&n.appendAttributes(t)}),n}processDimensionCommonAttrs(e,n){n.dimBlockId=e.name,n.textPosition.copy(e.textPoint),n.textRotation=e.textRotation||0,e.textLineSpacingFactor&&(n.textLineSpacingFactor=e.textLineSpacingFactor),e.textLineSpacingStyle&&(n.textLineSpacingStyle=e.textLineSpacingStyle),n.dimensionStyleName=e.styleName,n.dimensionText=e.text||"",n.measurement=e.measurement}processCommonAttrs(e,n){if(n.layer=e.layer||"0",n.objectId=e.handle,e.ownerBlockRecordSoftId!=null&&(n.ownerId=e.ownerBlockRecordSoftId),e.lineType!=null&&(n.lineType=e.lineType),e.lineweight!=null&&(n.lineWeight=e.lineweight),e.lineTypeScale!=null&&(n.linetypeScale=e.lineTypeScale),e.color!=null||e.colorIndex!=null||e.colorName){const o=new i.AcCmColor;e.color!=null&&o.setRGBValue(e.color),e.colorIndex!=null&&(e.color==null||e.colorIndex===7)&&(o.colorIndex=e.colorIndex),e.colorName&&(o.colorName=e.colorName),n.color=o}if(e.isVisible!=null&&(n.visibility=e.isVisible),e.transparency!=null){const o=new i.AcCmTransparency;o.method=e.transparencyType,(o.isByBlock||o.isByBlock)&&(o.alpha=e.transparency),n.transparency=o}}readNumber(e,n){for(const o of n){const t=e[o];if(typeof t=="number"&&Number.isFinite(t))return t}}readString(e,n){for(const o of n){const t=e[o];if(typeof t=="string")return t}}readBoolean(e,n){for(const o of n){const t=e[o];if(typeof t=="boolean")return t;if(typeof t=="number")return t!==0}}readPoint(e,n){for(const o of n){const t=e[o];if(this.isPointLike(t))return t;if(Array.isArray(t)&&typeof t[0]=="number"&&typeof t[1]=="number")return{x:t[0],y:t[1],z:t[2]??0}}}readLeaderLineArray(e){const n=e.leaderLines;if(Array.isArray(n))return n.map(t=>{if(!t||typeof t!="object")return;const r=t.vertices;return Array.isArray(r)?r.filter(s=>this.isPointLike(s)):void 0}).filter(t=>!!t&&t.length>0);const o=e.vertices;if(Array.isArray(o)){const t=o.filter(r=>this.isPointLike(r));return t.length>0?[t]:void 0}}isPointLike(e){return!!e&&typeof e=="object"&&typeof e.x=="number"&&typeof e.y=="number"}}const C="*MODEL_SPACE";class E extends i.AcDbDatabaseConverter{constructor(e={}){super(e),e.useWorker=!0,e.parserWorkerUrl||(e.parserWorkerUrl="/assets/libredwg-parser-worker.js")}async parse(e,n){const o=this.config,t=this.getParserWorkerTimeout(e,n);if(o.useWorker&&o.parserWorkerUrl){const r=i.createWorkerApi({workerUrl:o.parserWorkerUrl,timeout:t,maxConcurrentWorkers:1}),s=await r.execute(e);if(r.destroy(),s.success)return s.data;throw new Error(`Failed to parse drawing due to error: '${s.error}'`)}else throw new Error("dwg converter can run in web worker only!")}getFonts(e){const n=new Map;e.tables.BLOCK_RECORD.entries.forEach(s=>{n.set(s.name,s)});const o=new Map,t=s=>{if(s){const a=s.lastIndexOf(".");return a>=0?s.substring(0,a).toLowerCase():s.toLowerCase()}};e.tables.STYLE.entries.forEach(s=>{const a=[];let c=t(s.font);c&&a.push(c),c=t(s.bigFont),c&&a.push(c),o.set(s.name,a)});const r=new Set;return this.getFontsInBlock(e.entities,n,o,r),Array.from(r)}getFontsInBlock(e,n,o,t){const r=/\\f(.*?)\|/g;e.forEach(s=>{if(s.type=="MTEXT"){const a=s;[...a.text.matchAll(r)].forEach(l=>{t.add(l[1].toLowerCase())});const c=o.get(a.styleName);c==null||c.forEach(l=>t.add(l))}else if(s.type=="TEXT"){const a=s,c=o.get(a.styleName);c==null||c.forEach(l=>t.add(l))}else if(s.type=="MULTILEADER"||s.type=="MLEADER"){const a=s,c=a.textContent;[...(typeof(c==null?void 0:c.text)=="string"?c.text:"").matchAll(r)].forEach(u=>{t.add(u[1].toLowerCase())});const p=typeof(c==null?void 0:c.styleName)=="string"?c.styleName:typeof a.textStyleName=="string"?a.textStyleName:typeof a.styleName=="string"?a.styleName:void 0,f=p?o.get(p):void 0;f==null||f.forEach(u=>t.add(u))}else if(s.type=="INSERT"){const a=s,c=n.get(a.name);c&&this.getFontsInBlock(c.entities,n,o,t)}})}processLineTypes(e,n){e.tables.LTYPE.entries.forEach(t=>{const r={name:t.name,description:t.description,standardFlag:t.standardFlag,totalPatternLength:t.totalPatternLength,pattern:t.pattern},s=new i.AcDbLinetypeTableRecord(r);this.processCommonTableEntryAttrs(t,s),s.name=t.name,n.tables.linetypeTable.add(s)})}processTextStyles(e,n){e.tables.STYLE.entries.forEach(t=>{const r=new i.AcDbTextStyleTableRecord(t);this.processCommonTableEntryAttrs(t,r),n.tables.textStyleTable.add(r)})}processDimStyles(e,n){e.tables.DIMSTYLE.entries.forEach(t=>{const r={name:t.name,ownerId:t.ownerHandle,dimpost:t.DIMPOST||"",dimapost:t.DIMAPOST||"",dimscale:t.DIMSCALE,dimasz:t.DIMASZ,dimexo:t.DIMEXO,dimdli:t.DIMDLI,dimexe:t.DIMEXE,dimrnd:t.DIMRND,dimdle:t.DIMDLE,dimtp:t.DIMTP,dimtm:t.DIMTM,dimtxt:t.DIMTXT,dimcen:t.DIMCEN,dimtsz:t.DIMTSZ,dimaltf:t.DIMALTF,dimlfac:t.DIMLFAC,dimtvp:t.DIMTVP,dimtfac:t.DIMTFAC,dimgap:t.DIMGAP,dimaltrnd:t.DIMALTRND,dimtol:t.DIMTOL==null||t.DIMTOL==0?0:1,dimlim:t.DIMLIM==null||t.DIMLIM==0?0:1,dimtih:t.DIMTIH==null||t.DIMTIH==0?0:1,dimtoh:t.DIMTOH==null||t.DIMTOH==0?0:1,dimse1:t.DIMSE1==null||t.DIMSE1==0?0:1,dimse2:t.DIMSE2==null||t.DIMSE2==0?0:1,dimtad:t.DIMTAD,dimzin:t.DIMZIN,dimazin:t.DIMAZIN,dimalt:t.DIMALT,dimaltd:t.DIMALTD,dimtofl:t.DIMTOFL,dimsah:t.DIMSAH,dimtix:t.DIMTIX,dimsoxd:t.DIMSOXD,dimclrd:t.DIMCLRD,dimclre:t.DIMCLRE,dimclrt:t.DIMCLRT,dimadec:t.DIMADEC||0,dimunit:t.DIMUNIT||2,dimdec:t.DIMDEC,dimtdec:t.DIMTDEC,dimaltu:t.DIMALTU,dimalttd:t.DIMALTTD,dimaunit:t.DIMAUNIT,dimfrac:t.DIMFRAC,dimlunit:t.DIMLUNIT,dimdsep:t.DIMDSEP||".",dimtmove:t.DIMTMOVE||0,dimjust:t.DIMJUST,dimsd1:t.DIMSD1,dimsd2:t.DIMSD2,dimtolj:t.DIMTOLJ,dimtzin:t.DIMTZIN,dimaltz:t.DIMALTZ,dimalttz:t.DIMALTTZ,dimfit:t.DIMFIT||0,dimupt:t.DIMUPT,dimatfit:t.DIMATFIT,dimtxsty:i.DEFAULT_TEXT_STYLE,dimldrblk:"",dimblk:t.DIMBLK||"",dimblk1:t.DIMBLK1||"",dimblk2:t.DIMBLK2||"",dimlwd:t.DIMLWD,dimlwe:t.DIMLWE},s=new i.AcDbDimStyleTableRecord(r);this.processCommonTableEntryAttrs(t,s),n.tables.dimStyleTable.add(s)})}processLayers(e,n){e.tables.LAYER.entries.forEach(t=>{const r=new i.AcCmColor;r.colorIndex=t.colorIndex;const s=new i.AcDbLayerTableRecord({name:t.name,standardFlags:t.standardFlag,linetype:t.lineType,lineWeight:t.lineweight,isOff:t.off,color:r,isPlottable:t.plotFlag!=0});this.processCommonTableEntryAttrs(t,s),n.tables.layerTable.add(s)})}processViewports(e,n){e.tables.VPORT.entries.forEach(t=>{const r=new i.AcDbViewportTableRecord;this.processCommonTableEntryAttrs(t,r),t.circleSides&&(r.circleSides=t.circleSides),r.standardFlag=t.standardFlag,r.center.copy(t.center??i.VPORT_FALLBACK_CENTER_2D),r.lowerLeftCorner.copy(t.lowerLeftCorner??i.VPORT_FALLBACK_LLC),r.upperRightCorner.copy(t.upperRightCorner??i.VPORT_FALLBACK_URC),t.snapBasePoint&&r.snapBase.copy(t.snapBasePoint),t.snapRotationAngle&&(r.snapAngle=t.snapRotationAngle),t.snapSpacing&&r.snapIncrements.copy(t.snapSpacing),t.majorGridLines&&(r.gridMajor=t.majorGridLines),t.gridSpacing&&r.gridIncrements.copy(t.gridSpacing),t.backgroundObjectId&&(r.backgroundObjectId=t.backgroundObjectId),r.gsView.center.copy(t.center??i.VPORT_FALLBACK_CENTER_2D),r.gsView.viewDirectionFromTarget.copy(t.viewDirectionFromTarget??i.VPORT_FALLBACK_VIEW_DIR),r.gsView.viewTarget.copy(t.viewTarget??i.VPORT_FALLBACK_VIEW_TARGET),t.lensLength&&(r.gsView.lensLength=t.lensLength),t.frontClippingPlane&&(r.gsView.frontClippingPlane=t.frontClippingPlane),t.backClippingPlane&&(r.gsView.backClippingPlane=t.backClippingPlane),t.viewHeight&&(r.gsView.viewHeight=t.viewHeight),t.viewTwistAngle&&(r.gsView.viewTwistAngle=t.viewTwistAngle),t.frozenLayers&&(r.gsView.frozenLayers=t.frozenLayers),t.styleSheet&&(r.gsView.styleSheet=t.styleSheet),t.renderMode&&(r.gsView.renderMode=t.renderMode),t.viewMode&&(r.gsView.viewMode=t.viewMode),t.ucsIconSetting&&(r.gsView.ucsIconSetting=t.ucsIconSetting),t.ucsOrigin&&r.gsView.ucsOrigin.copy(t.ucsOrigin),t.ucsXAxis&&r.gsView.ucsXAxis.copy(t.ucsXAxis),t.ucsYAxis&&r.gsView.ucsYAxis.copy(t.ucsYAxis),t.orthographicType&&(r.gsView.orthographicType=t.orthographicType),t.shadePlotSetting&&(r.gsView.shadePlotSetting=t.shadePlotSetting),t.shadePlotObjectId&&(r.gsView.shadePlotObjectId=t.shadePlotObjectId),t.visualStyleObjectId&&(r.gsView.visualStyleObjectId=t.visualStyleObjectId),t.isDefaultLightingOn&&(r.gsView.isDefaultLightingOn=t.isDefaultLightingOn),t.defaultLightingType&&(r.gsView.defaultLightingType=t.defaultLightingType),t.brightness&&(r.gsView.brightness=t.brightness),t.contrast&&(r.gsView.contrast=t.contrast),t.ambientColor&&(r.gsView.ambientColor=t.ambientColor),n.tables.viewportTable.add(r)})}processBlockTables(e,n){e.tables.BLOCK_RECORD.entries.forEach(t=>{let r=n.tables.blockTable.getAt(t.name);r||(r=new i.AcDbBlockTableRecord,r.objectId=t.handle,r.name=t.name,r.ownerId=t.ownerHandle,r.origin.copy(t.basePoint),r.layoutId=t.layout,r.blockInsertUnits=t.insertionUnits,r.explodability=t.explodability,r.blockScaling=t.scalability,t.bmpPreview&&(r.bmpPreview=t.bmpPreview),n.tables.blockTable.add(r)),!r.isModelSapce&&t.entities&&t.entities.length>0&&this.processEntitiesInBlock(t.entities,r)})}processBlocks(e,n){}async processEntitiesInBlock(e,n){const o=new P,t=e.length,r=[];for(let s=0;s<t;s++){const a=e[s],c=o.convert(a);c&&r.push(c)}n.appendEntity(r)}async processEntities(e,n,o,t,r){const s=new P;let a=[];e.tables.BLOCK_RECORD.entries.forEach(f=>{this.isModelSpace(f.name)&&(a=f.entities)});const c=a.length,l=new i.AcDbBatchProcessing(c,100-t.value,o);this.config.convertByEntityType&&(a=this.groupAndFlattenByType(a));const p=n.tables.blockTable.modelSpace;await l.processChunk(async(f,u)=>{const g=[];for(let d=f;d<u;d++){const h=a[d],y=s.convert(h);y&&g.push(y)}if(p.appendEntity(g),r){let d=t.value+u/c*(100-t.value);d>100&&(d=100),await r(d,"ENTITY","IN-PROGRESS")}})}processHeader(e,n){const o=e.header;o.CECOLOR&&(o.CECOLOR.index>=0&&o.CECOLOR.index<=256?n.cecolor.colorIndex=o.CECOLOR.index:n.cecolor.setRGBValue(o.CECOLOR.rgb)),n.angbase=o.ANGBASE??0,n.angdir=o.ANGDIR??0,n.aunits=o.AUNITS??0,o.AUPREC!=null&&(n.auprec=o.AUPREC),o.LUNITS!=null&&(n.lunits=o.LUNITS),o.LUPREC!=null&&(n.luprec=o.LUPREC),n.celtype=o.CELTYPE??i.ByLayer,n.celtscale=o.CELTSCALE??1,n.ltscale=o.LTSCALE??1,o.EXTMAX&&(n.extmax=o.EXTMAX),o.EXTMIN&&(n.extmin=o.EXTMIN),n.insunits=o.INSUNITS??1,n.pdmode=o.PDMODE??0,n.pdsize=o.PDSIZE??0,n.textstyle=o.TEXTSTYLE??i.DEFAULT_TEXT_STYLE}processCommonTableEntryAttrs(e,n){n.name=e.name,n.objectId=e.handle,e.ownerHandle!=null&&(n.ownerId=e.ownerHandle)}processObjects(e,n){this.processLayouts(e,n),this.processImageDefs(e,n)}processLayouts(e,n){const o=n.objects.layout;e.objects.LAYOUT.forEach(r=>{const s=new i.AcDbLayout;s.layoutName=r.layoutName,s.tabOrder=r.tabOrder;const a=n.tables.blockTable.newIterator();s.objectId=r.handle;for(const c of a)if(c.layoutId===s.objectId){s.blockTableRecordId=c.objectId;break}s.blockTableRecordId||r.layoutName==="Model"&&(s.blockTableRecordId=n.tables.blockTable.modelSpace.objectId),s.limits.min.copy(r.minLimit),s.limits.max.copy(r.maxLimit),s.extents.min.copy(r.minExtent),s.extents.max.copy(r.maxExtent),r.viewportId&&s.viewportArray.push(r.viewportId),this.processCommonObjectAttrs(r,s),o.setAt(s.layoutName,s)})}processImageDefs(e,n){const o=n.objects.imageDefinition;e.objects.IMAGEDEF.forEach(r=>{const s=new i.AcDbRasterImageDef;s.sourceFileName=r.fileName,this.processCommonObjectAttrs(r,s),o.setAt(s.objectId,s)})}processCommonObjectAttrs(e,n){n.objectId=e.handle,e.ownerHandle!=null&&(n.ownerId=e.ownerHandle)}groupAndFlattenByType(e){const n={},o=[];for(const t of e)n[t.type]||(n[t.type]=[],o.push(t.type)),n[t.type].push(t);return o.flatMap(t=>n[t])}isModelSpace(e){return e&&e.toUpperCase()==C}}b.AcDbLibreDwgConverter=E,Object.defineProperty(b,Symbol.toStringTag,{value:"Module"})});
1
+ (function(b,r){typeof exports=="object"&&typeof module<"u"?r(exports,require("@mlightcad/data-model")):typeof define=="function"&&define.amd?define(["exports","@mlightcad/data-model"],r):(b=typeof globalThis<"u"?globalThis:b||self,r(b["libredwg-converter"]={},b.dataModel))})(this,function(b,r){"use strict";class P{convert(e){const n=this.createEntity(e);return n&&this.processCommonAttrs(e,n),n}createEntity(e){return e.type=="3DFACE"?this.convertFace(e):e.type=="ARC"?this.convertArc(e):e.type=="ATTDEF"?this.convertAttributeDefinition(e):e.type=="ATTRIB"?this.convertAttribute(e):e.type=="CIRCLE"?this.convertCirle(e):e.type=="DIMENSION"?this.convertDimension(e):e.type=="ELLIPSE"?this.convertEllipse(e):e.type=="HATCH"?this.convertHatch(e):e.type=="IMAGE"?this.convertImage(e):e.type=="LEADER"?this.convertLeader(e):e.type=="LINE"?this.convertLine(e):e.type=="LWPOLYLINE"?this.convertLWPolyline(e):e.type=="MLINE"?this.convertMLine(e):e.type=="MTEXT"?this.convertMText(e):e.type=="MULTILEADER"||e.type=="MLEADER"?this.convertMLeader(e):e.type=="POINT"?this.convertPoint(e):e.type=="POLYLINE2D"?this.convertPolyline2d(e):e.type=="POLYLINE3D"?this.convertPolyline3d(e):e.type=="RAY"?this.convertRay(e):e.type=="SPLINE"?this.convertSpline(e):e.type=="ACAD_TABLE"?this.convertTable(e):e.type=="TEXT"?this.convertText(e):e.type=="SOLID"?this.convertSolid(e):e.type=="VIEWPORT"?this.convertViewport(e):e.type=="WIPEOUT"?this.convertWipeout(e):e.type=="XLINE"?this.convertXline(e):e.type=="INSERT"?this.convertBlockReference(e):null}convertFace(e){const n=new r.AcDbFace;return e.corner1&&n.setVertexAt(0,e.corner1),e.corner2&&n.setVertexAt(1,e.corner2),e.corner3&&n.setVertexAt(2,e.corner3),e.corner4&&n.setVertexAt(3,e.corner4),n.setEdgeInvisibilities(e.flag),n}convertArc(e){const n=e.extrusionDirection??r.AcGeVector3d.Z_AXIS;return new r.AcDbArc(r.transformOcsPointToWcs(e.center,n),e.radius,e.startAngle,e.endAngle,n)}convertCirle(e){const n=e.extrusionDirection??r.AcGeVector3d.Z_AXIS;return new r.AcDbCircle(r.transformOcsPointToWcs(e.center,n),e.radius,n)}convertEllipse(e){const n=new r.AcGeVector3d(e.majorAxisEndPoint),o=n.length();return new r.AcDbEllipse(e.center,e.extrusionDirection??r.AcGeVector3d.Z_AXIS,n,o,o*e.axisRatio,e.startAngle,e.endAngle)}convertLine(e){const n=e.startPoint,o=e.endPoint;return new r.AcDbLine(new r.AcGePoint3d(n.x,n.y,n.z),new r.AcGePoint3d(o.x,o.y,o.z))}convertSpline(e){try{if(e.numberOfControlPoints>0&&e.numberOfKnots>0)return new r.AcDbSpline(e.controlPoints,e.knots,e.weights,e.degree,!!(e.flag&1));if(e.numberOfFitPoints>0)return new r.AcDbSpline(e.fitPoints,"Uniform",e.degree,!!(e.flag&1))}catch{}return null}convertPoint(e){const n=new r.AcDbPoint;return n.position=e.position,n}convertSolid(e){const n=new r.AcDbTrace;return n.setPointAt(0,{...e.corner1,z:0}),n.setPointAt(1,{...e.corner2,z:0}),n.setPointAt(2,{...e.corner3,z:0}),n.setPointAt(3,e.corner4?{...e.corner4,z:0}:{...e.corner3,z:0}),n.thickness=e.thickness,n}convertLWPolyline(e){const n=new r.AcDbPolyline;n.closed=!!(e.flag&512);const o=e.constantWidth??-1;return e.vertices.forEach((t,i)=>{n.addVertexAt(i,new r.AcGePoint2d(t.x,t.y),t.bulge,t.startWidth??o,t.endWidth??o)}),n}convertPolyline2d(e){const n=!!(e.flag&1),o=!!(e.flag&16),t=!!(e.flag&64),i=!!(e.flag&32),s=[],a=[],c=[];if(e.vertices.map(l=>{if(!(l.flag&16))if(t&&l.flag&128)if(l.flag&64)s.push({x:l.x,y:l.y,z:l.z}),a.push(l.bulge??0);else{const p=[];l.polyfaceIndex0!=null&&l.polyfaceIndex0!=0&&p.push(Math.abs(l.polyfaceIndex0)-1),l.polyfaceIndex1!=null&&l.polyfaceIndex1!=0&&p.push(Math.abs(l.polyfaceIndex1)-1),l.polyfaceIndex2!=null&&l.polyfaceIndex2!=0&&p.push(Math.abs(l.polyfaceIndex2)-1),l.polyfaceIndex3!=null&&l.polyfaceIndex3!=0&&p.push(Math.abs(l.polyfaceIndex3)-1),p.length>=3&&c.push(p)}else s.push({x:l.x,y:l.y,z:l.z}),a.push(l.bulge??0)}),o){const l=e.meshMVertexCount??2,p=e.meshNVertexCount??2;return new r.AcDbPolygonMesh(l,p,s,n,i)}else{if(t)return new r.AcDbPolyFaceMesh(s,c);{let l=r.AcDbPoly2dType.SimplePoly;return e.flag&2?l=r.AcDbPoly2dType.FitCurvePoly:e.flag&4&&(e.smoothType==6?l=r.AcDbPoly2dType.CubicSplinePoly:e.smoothType==5&&(l=r.AcDbPoly2dType.QuadSplinePoly)),new r.AcDb2dPolyline(l,s,0,n,e.startWidth,e.endWidth,a)}}}convertPolyline3d(e){const n=!!(e.flag&1),o=[];e.vertices.map(i=>{i.flag&16||o.push({x:i.x,y:i.y,z:i.z})});let t=r.AcDbPoly3dType.SimplePoly;return e.flag&4&&(e.smoothType==6?t=r.AcDbPoly3dType.CubicSplinePoly:e.smoothType==5&&(t=r.AcDbPoly3dType.QuadSplinePoly)),new r.AcDb3dPolyline(t,o,n)}convertHatch(e){var t;const n=new r.AcDbHatch;if((t=e.definitionLines)==null||t.forEach(i=>{n.definitionLines.push({angle:i.angle,base:i.base,offset:i.offset,dashLengths:i.numberOfDashLengths>0?i.dashLengths:[]})}),n.isSolidFill=e.solidFill==1,n.hatchStyle=e.hatchStyle,n.patternName=e.patternName,n.patternType=e.patternType,n.patternAngle=e.patternAngle==null?0:e.patternAngle,n.patternScale=e.patternScale==null?0:e.patternScale,e.boundaryPaths.forEach(i=>{if(i.boundaryPathTypeFlag&2){const a=i,c=new r.AcGePolyline2d;c.closed=a.isClosed,a.vertices.forEach((l,p)=>{c.addVertexAt(p,{x:l.x,y:l.y,bulge:l.bulge})}),n.add(c)}else{const a=i,c=[];a.edges.forEach(p=>{if(p!=null){if(p.type==1){const f=p;c.push(new r.AcGeLine2d(f.start,f.end))}else if(p.type==2){const f=p;c.push(new r.AcGeCircArc2d(f.center,f.radius,f.startAngle,f.endAngle,!f.isCCW))}else if(p.type==3){const f=p;new r.AcGeVector2d().subVectors(f.end,f.center);const g=Math.sqrt(Math.pow(f.end.x,2)+Math.pow(f.end.y,2)),d=g*f.lengthOfMinorAxis;let h=f.startAngle,y=f.endAngle;const D=Math.atan2(f.end.y,f.end.x);f.isCCW||(h=Math.PI*2-h,y=Math.PI*2-y),c.push(new r.AcGeEllipseArc2d({...f.center,z:0},g,d,h,y,!f.isCCW,D))}else if(p.type==4){const f=p;if(f.numberOfControlPoints>0&&f.numberOfKnots>0){const u=f.controlPoints.map(h=>({x:h.x,y:h.y,z:0}));let g=!0;const d=f.controlPoints.map(h=>(h.weight==null&&(g=!1),h.weight||1));c.push(new r.AcGeSpline3d(u,f.knots,g?d:void 0))}else if(f.numberOfFitData>0){const u=f.fitDatum.map(g=>({x:g.x,y:g.y,z:0}));c.push(new r.AcGeSpline3d(u,"Uniform"))}}}});const l=r.AcGeLoop2d.buildFromEdges(c);l.length==0&&c.length>0?n.add(new r.AcGeLoop2d(c)):l.forEach(p=>n.add(p))}}),e.gradientFlag){const i=e;if(n.hatchObjectType=r.AcDbHatchObjectType.GradientObject,n.gradientName=i.gradientName,n.gradientAngle=i.gradientRotation??0,n.gradientShift=i.gradientDefinition??0,n.gradientOneColorMode=i.gradientColorFlag==1,n.shadeTintValue=i.colorTint??0,i.gradientColors){const s=i.gradientColors.length;s>1?(n.gradientStartColor=i.gradientColors[0].rgb,n.gradientEndColor=i.gradientColors[1].rgb):s>0&&(n.gradientStartColor=i.gradientColors[0].rgb)}}return n}convertTable(e){const n=new r.AcDbTable(e.name,e.rowCount,e.columnCount);return n.tableStyleId=e.tableStyleId,n.owningBlockRecordId=e.blockRecordHandle,e.directionVector&&(n.horizontalDirection=new r.AcGeVector3d(e.directionVector)),n.attachmentPoint=e.attachmentPoint,n.position.copy(e.startPoint),n.tableValueFlag=e.tableValue,n.tableOverrideFlag=e.overrideFlag,n.borderColorOverrideFlag=e.borderColorOverrideFlag,n.borderLineweightOverrideFlag=e.borderLineWeightOverrideFlag,n.borderVisibilityOverrideFlag=e.borderVisibilityOverrideFlag,e.columnWidthArr.forEach((o,t)=>n.setColumnWidth(t,o)),e.rowHeightArr.forEach((o,t)=>n.setRowHeight(t,o)),e.cells.forEach((o,t)=>{n.setCell(t,o)}),n}convertText(e){const n=new r.AcDbText;n.textString=e.text,n.styleName=e.styleName,n.height=e.textHeight,n.position.copy(e.startPoint);const o=!e.endPoint||e.endPoint.x===0&&e.endPoint.y===0&&(e.endPoint.z??0)===0;return e.endPoint&&!o?n.alignmentPoint.copy(e.endPoint):n.alignmentPoint.copy(e.startPoint),n.rotation=e.rotation,n.oblique=e.obliqueAngle??0,n.thickness=e.thickness,n.horizontalMode=e.halign,n.verticalMode=e.valign,n.widthFactor=e.xScale??1,n}convertMText(e){const n=new r.AcDbMText;return n.contents=e.text,e.styleName!=null&&(n.styleName=e.styleName),n.height=e.textHeight,n.width=e.rectWidth,n.rotation=e.rotation||0,n.location=e.insertionPoint,n.attachmentPoint=e.attachmentPoint,e.direction&&(n.direction=new r.AcGeVector3d(e.direction)),n.drawingDirection=e.drawingDirection,n}convertLeader(e){const n=new r.AcDbLeader;return e.vertices.forEach(o=>{n.appendVertex(o)}),n.hasArrowHead=e.isArrowheadEnabled,n.hasHookLine=e.isHooklineExists,n.isSplined=e.isSpline,n.dimensionStyle=e.styleName,n.annoType=e.leaderCreationFlag,n}convertMLine(e){const n=new r.AcDbMLine;return n.styleName=e.mlineStyle||"STANDARD",n.scale=e.scale,n.flags=e.flags,n.justification=e.justification,n.startPosition=e.startPoint,n.normal=e.extrusionDirection??r.AcGeVector3d.Z_AXIS,n.styleCount=e.numberOfLines??0,n.segments=(e.vertices??[]).map(o=>({position:o.vertex,direction:o.vertexDirection,miterDirection:o.miterDirection,elements:(o.lines??[]).map(t=>({parameterCount:t.numberOfSegmentParams,parameters:t.segmentParams??[],fillCount:t.numberOfAreaFillParams,fillParameters:t.areaFillParams??[]}))})),n}convertMLeader(e){var g,d,h,y;const n=new r.AcDbMLeader,o=e;n.leaderLineType=this.readNumber(o,["multileaderType","leaderLineType","leaderType"])??r.AcDbMLeaderLineType.StraightLeader;const t=this.readNumber(o,["contentType"])??(e.textContent?r.AcDbMLeaderContentType.MTextContent:e.blockContent?r.AcDbMLeaderContentType.BlockContent:r.AcDbMLeaderContentType.NoneContent);n.contentType=t,n.doglegEnabled=this.readBoolean(o,["doglegEnabled","enableDogleg"])??!1,n.doglegLength=this.readNumber(o,["doglegLength"])??0,e.landingPoint&&(n.landingPoint=e.landingPoint),e.doglegVector&&(n.doglegVector=e.doglegVector);const i=this.readString(o,["mleaderStyleId","mLeaderStyleId","mleaderStyleHandle","styleHandle","styleName"]);i&&(n.mleaderStyleId=i);const s=this.readPoint(o,["normal","extrusionDirection"]);s&&(n.normal=s);const a=e.textContent,c=this.readString(a??{},["styleName","textStyleName"])??this.readString(o,["textStyleName","textStyle","styleName"]);c&&(n.textStyleName=c),n.textHeight=this.readNumber(a??{},["textHeight","height"])??this.readNumber(o,["textHeight","mtextHeight","textContentHeight"])??n.textHeight,n.textWidth=this.readNumber(a??{},["textWidth","width"])??this.readNumber(o,["textWidth","mtextWidth","textContentWidth"])??n.textWidth;const l=this.readNumber(a??{},["textRotation","rotation"])??this.readNumber(o,["textRotation","mtextRotation","textContentRotation"]);l!=null&&(n.textRotation=l);const p=this.readPoint(o,["textDirection","mtextDirection","textDirectionVector"]);p&&(n.textDirection=p);const f=this.readNumber(o,["textAttachmentPoint","attachmentPoint"]);f!=null&&(n.textAttachmentPoint=f);const u=this.readNumber(o,["textDrawingDirection","drawingDirection"]);if(u!=null&&(n.textDrawingDirection=u),((g=e.textContent)==null?void 0:g.text)!=null&&e.textContent.anchorPoint)n.mtextContent={text:e.textContent.text,anchorPoint:e.textContent.anchorPoint};else{const D=this.readString(o,["text","contents","mtext"]),A=this.readPoint(o,["textLocation","textPosition","textAnchorPoint"]);D!=null&&A&&(n.mtextContent={text:D,anchorPoint:A})}if((d=e.blockContent)!=null&&d.blockHandle&&e.blockContent.position)n.blockContent={blockHandle:e.blockContent.blockHandle,position:e.blockContent.position};else{const D=this.readString(o,["blockHandle","blockContentHandle","blockId"]),A=this.readPoint(o,["blockPosition","blockContentPosition"]);D&&A&&(n.blockContent={blockHandle:D,position:A})}return(h=e.leaders)==null||h.forEach(D=>{var T;const A=n.addLeader({landingPoint:D.landingPoint??e.landingPoint,doglegVector:D.doglegVector??e.doglegVector,doglegLength:D.doglegLength??e.doglegLength});(T=D.leaderLines)==null||T.forEach(I=>{var L;const S=n.addLeaderLine(A,I.vertices??[]);(L=I.breaks)==null||L.forEach(w=>{n.addBreak(A,S,w.start,w.end)})})}),n.numberOfLeaders===0&&((y=this.readLeaderLineArray(o))==null||y.forEach(D=>{const A=n.addLeader({landingPoint:e.landingPoint,doglegVector:e.doglegVector,doglegLength:e.doglegLength});n.addLeaderLine(A,D)})),n}convertDimension(e){if(e.subclassMarker=="AcDbAlignedDimension"){const n=e,o=new r.AcDbAlignedDimension(n.subDefinitionPoint1,n.subDefinitionPoint2,n.definitionPoint);return n.insertionPoint&&(o.dimBlockPosition={x:n.insertionPoint.x,y:n.insertionPoint.y,z:0}),o.rotation=n.rotationAngle,this.processDimensionCommonAttrs(e,o),o}else if(e.subclassMarker=="AcDbRotatedDimension"){const n=e,o=new r.AcDbRotatedDimension(n.subDefinitionPoint1,n.subDefinitionPoint2,n.definitionPoint);return n.insertionPoint&&(o.dimBlockPosition={x:n.insertionPoint.x,y:n.insertionPoint.y,z:0}),o.rotation=n.rotationAngle,this.processDimensionCommonAttrs(e,o),o}else if(e.subclassMarker=="AcDb3PointAngularDimension"){const n=e,o=new r.AcDb3PointAngularDimension(n.centerPoint,n.subDefinitionPoint1,n.subDefinitionPoint2,n.definitionPoint);return this.processDimensionCommonAttrs(e,o),o}else if(e.subclassMarker=="AcDbOrdinateDimension"){const n=e,o=new r.AcDbOrdinateDimension(n.subDefinitionPoint1,n.subDefinitionPoint2);return this.processDimensionCommonAttrs(e,o),o}else if(e.subclassMarker=="AcDbRadialDimension"){const n=e,o=new r.AcDbRadialDimension(n.definitionPoint,n.centerPoint,n.leaderLength);return this.processDimensionCommonAttrs(e,o),o}else if(e.subclassMarker=="AcDbDiametricDimension"){const n=e,o=new r.AcDbDiametricDimension(n.definitionPoint,n.centerPoint,n.leaderLength);return this.processDimensionCommonAttrs(e,o),o}return null}processImage(e,n){n.position.copy(e.position),n.brightness=e.brightness,n.contrast=e.contrast,n.fade=e.fade,n.imageSize.copy(e.imageSize),n.imageDefId=e.imageDefHandle,n.isClipped=e.clipping>0,n.isShownClipped=(e.flags|4)>0,n.isImageShown=(e.flags|3)>0,n.isImageTransparent=(e.flags|8)>0,e.clippingBoundaryPath.forEach(o=>{n.clipBoundary.push(new r.AcGePoint2d(o))}),n.clipBoundaryType=e.clippingBoundaryType,n.width=Math.sqrt(e.uPixel.x**2+e.uPixel.y**2+e.uPixel.z**2)*e.imageSize.x,n.height=Math.sqrt(e.vPixel.x**2+e.vPixel.y**2+e.vPixel.z**2)*e.imageSize.y,n.rotation=Math.atan2(e.uPixel.y,e.uPixel.x)}convertImage(e){const n=new r.AcDbRasterImage;return this.processImage(e,n),n}convertWipeout(e){const n=new r.AcDbWipeout;return this.processImage(e,n),n}convertViewport(e){const n=new r.AcDbViewport;return n.number=e.viewportId,n.centerPoint.copy(e.viewportCenter),n.height=e.height,n.width=e.width,n.viewCenter.copy(e.displayCenter),n.viewHeight=e.viewHeight,n}convertRay(e){const n=new r.AcDbRay;return n.basePoint.copy(e.firstPoint),n.unitDir.copy(e.unitDirection),n}convertXline(e){const n=new r.AcDbXline;return n.basePoint.copy(e.firstPoint),n.unitDir.copy(e.unitDirection),n}convertAttributeCommon(e,n){const o=e.text;n.textString=o.text,n.styleName=o.styleName,n.height=o.textHeight,n.position.copy(o.startPoint);const t=e.alignmentPoint??o.endPoint,i=!t||t.x===0&&t.y===0&&(t.z??0)===0;t&&!i?n.alignmentPoint.copy(t):n.alignmentPoint.copy(o.startPoint),n.rotation=o.rotation,n.oblique=o.obliqueAngle??0,n.thickness=o.thickness,n.horizontalMode=o.halign,n.verticalMode=o.valign,n.widthFactor=o.xScale??1,n.tag=e.tag,n.fieldLength=e.fieldLength,n.isInvisible=(e.flags&r.AcDbAttributeFlags.Invisible)!==0,n.isConst=(e.flags&r.AcDbAttributeFlags.Const)!==0,n.isVerifiable=(e.flags&r.AcDbAttributeFlags.Verifiable)!==0,n.isPreset=(e.flags&r.AcDbAttributeFlags.Preset)!==0,n.lockPositionInBlock=e.lockPositionFlag,n.isReallyLocked=e.isReallyLocked,n.isMTextAttribute=(e.mtextFlag&r.AcDbAttributeMTextFlag.MultiLine)!==0,n.isConstMTextAttribute=(e.mtextFlag&r.AcDbAttributeMTextFlag.ConstMultiLine)!==0}convertAttribute(e){const n=new r.AcDbAttribute;return this.convertAttributeCommon(e,n),n}convertAttributeDefinition(e){const n=new r.AcDbAttributeDefinition;return this.convertAttributeCommon(e,n),n.prompt=e.prompt,n}convertBlockReference(e){const n=new r.AcDbBlockReference(e.name);return e.insertionPoint&&n.position.copy(e.insertionPoint),n.scaleFactors.x=e.xScale,n.scaleFactors.y=e.yScale,n.scaleFactors.z=e.zScale,n.rotation=e.rotation,n.normal.copy(e.extrusionDirection),e.handle!=null&&(n.objectId=e.handle),e.attribs&&e.attribs.forEach(o=>{const t=this.convert(o);t instanceof r.AcDbAttribute&&n.appendAttributes(t)}),n}processDimensionCommonAttrs(e,n){n.dimBlockId=e.name,n.textPosition.copy(e.textPoint),n.textRotation=e.textRotation||0,e.textLineSpacingFactor&&(n.textLineSpacingFactor=e.textLineSpacingFactor),e.textLineSpacingStyle&&(n.textLineSpacingStyle=e.textLineSpacingStyle),n.dimensionStyleName=e.styleName,n.dimensionText=e.text||"",n.measurement=e.measurement}processCommonAttrs(e,n){if(n.layer=e.layer||"0",n.objectId=e.handle,e.ownerBlockRecordSoftId!=null&&(n.ownerId=e.ownerBlockRecordSoftId),e.lineType!=null&&(n.lineType=e.lineType),e.lineweight!=null&&(n.lineWeight=e.lineweight),e.lineTypeScale!=null&&(n.linetypeScale=e.lineTypeScale),e.color!=null||e.colorIndex!=null||e.colorName){const o=new r.AcCmColor;e.color!=null&&o.setRGBValue(e.color),e.colorIndex!=null&&(e.color==null||e.colorIndex===7)&&(o.colorIndex=e.colorIndex),e.colorName&&(o.colorName=e.colorName),n.color=o}if(e.isVisible!=null&&(n.visibility=e.isVisible),e.transparency!=null){const o=new r.AcCmTransparency;o.method=e.transparencyType,(o.isByBlock||o.isByBlock)&&(o.alpha=e.transparency),n.transparency=o}}readNumber(e,n){for(const o of n){const t=e[o];if(typeof t=="number"&&Number.isFinite(t))return t}}readString(e,n){for(const o of n){const t=e[o];if(typeof t=="string")return t}}readBoolean(e,n){for(const o of n){const t=e[o];if(typeof t=="boolean")return t;if(typeof t=="number")return t!==0}}readPoint(e,n){for(const o of n){const t=e[o];if(this.isPointLike(t))return t;if(Array.isArray(t)&&typeof t[0]=="number"&&typeof t[1]=="number")return{x:t[0],y:t[1],z:t[2]??0}}}readLeaderLineArray(e){const n=e.leaderLines;if(Array.isArray(n))return n.map(t=>{if(!t||typeof t!="object")return;const i=t.vertices;return Array.isArray(i)?i.filter(s=>this.isPointLike(s)):void 0}).filter(t=>!!t&&t.length>0);const o=e.vertices;if(Array.isArray(o)){const t=o.filter(i=>this.isPointLike(i));return t.length>0?[t]:void 0}}isPointLike(e){return!!e&&typeof e=="object"&&typeof e.x=="number"&&typeof e.y=="number"}}const E="*MODEL_SPACE";class C extends r.AcDbDatabaseConverter{constructor(e={}){super(e),e.useWorker=!0,e.parserWorkerUrl||(e.parserWorkerUrl="/assets/libredwg-parser-worker.js")}async parse(e,n){const o=this.config,t=this.getParserWorkerTimeout(e,n);if(o.useWorker&&o.parserWorkerUrl){const i=r.createWorkerApi({workerUrl:o.parserWorkerUrl,timeout:t,maxConcurrentWorkers:1}),s=await i.execute(e);if(i.destroy(),s.success)return s.data;throw new Error(`Failed to parse drawing due to error: '${s.error}'`)}else throw new Error("dwg converter can run in web worker only!")}getFonts(e){const n=new Map;e.tables.BLOCK_RECORD.entries.forEach(s=>{n.set(s.name,s)});const o=new Map,t=s=>{if(s){const a=s.lastIndexOf(".");return a>=0?s.substring(0,a).toLowerCase():s.toLowerCase()}};e.tables.STYLE.entries.forEach(s=>{const a=[];let c=t(s.font);c&&a.push(c),c=t(s.bigFont),c&&a.push(c),o.set(s.name,a)});const i=new Set;return this.getFontsInBlock(e.entities,n,o,i),Array.from(i)}getFontsInBlock(e,n,o,t){const i=/\\f(.*?)\|/g;e.forEach(s=>{if(s.type=="MTEXT"){const a=s;[...a.text.matchAll(i)].forEach(l=>{t.add(l[1].toLowerCase())});const c=o.get(a.styleName);c==null||c.forEach(l=>t.add(l))}else if(s.type=="TEXT"){const a=s,c=o.get(a.styleName);c==null||c.forEach(l=>t.add(l))}else if(s.type=="MULTILEADER"||s.type=="MLEADER"){const a=s,c=a.textContent;[...(typeof(c==null?void 0:c.text)=="string"?c.text:"").matchAll(i)].forEach(u=>{t.add(u[1].toLowerCase())});const p=typeof(c==null?void 0:c.styleName)=="string"?c.styleName:typeof a.textStyleName=="string"?a.textStyleName:typeof a.styleName=="string"?a.styleName:void 0,f=p?o.get(p):void 0;f==null||f.forEach(u=>t.add(u))}else if(s.type=="INSERT"){const a=s,c=n.get(a.name);c&&this.getFontsInBlock(c.entities,n,o,t)}})}processLineTypes(e,n){e.tables.LTYPE.entries.forEach(t=>{const i={name:t.name,description:t.description,standardFlag:t.standardFlag,totalPatternLength:t.totalPatternLength,pattern:t.pattern},s=new r.AcDbLinetypeTableRecord(i);this.processCommonTableEntryAttrs(t,s),s.name=t.name,n.tables.linetypeTable.add(s)})}processTextStyles(e,n){e.tables.STYLE.entries.forEach(t=>{const i=new r.AcDbTextStyleTableRecord(t);this.processCommonTableEntryAttrs(t,i),n.tables.textStyleTable.add(i)})}processDimStyles(e,n){e.tables.DIMSTYLE.entries.forEach(t=>{const i={name:t.name,ownerId:t.ownerHandle,dimpost:t.DIMPOST||"",dimapost:t.DIMAPOST||"",dimscale:t.DIMSCALE,dimasz:t.DIMASZ,dimexo:t.DIMEXO,dimdli:t.DIMDLI,dimexe:t.DIMEXE,dimrnd:t.DIMRND,dimdle:t.DIMDLE,dimtp:t.DIMTP,dimtm:t.DIMTM,dimtxt:t.DIMTXT,dimcen:t.DIMCEN,dimtsz:t.DIMTSZ,dimaltf:t.DIMALTF,dimlfac:t.DIMLFAC,dimtvp:t.DIMTVP,dimtfac:t.DIMTFAC,dimgap:t.DIMGAP,dimaltrnd:t.DIMALTRND,dimtol:t.DIMTOL==null||t.DIMTOL==0?0:1,dimlim:t.DIMLIM==null||t.DIMLIM==0?0:1,dimtih:t.DIMTIH==null||t.DIMTIH==0?0:1,dimtoh:t.DIMTOH==null||t.DIMTOH==0?0:1,dimse1:t.DIMSE1==null||t.DIMSE1==0?0:1,dimse2:t.DIMSE2==null||t.DIMSE2==0?0:1,dimtad:t.DIMTAD,dimzin:t.DIMZIN,dimazin:t.DIMAZIN,dimalt:t.DIMALT,dimaltd:t.DIMALTD,dimtofl:t.DIMTOFL,dimsah:t.DIMSAH,dimtix:t.DIMTIX,dimsoxd:t.DIMSOXD,dimclrd:t.DIMCLRD,dimclre:t.DIMCLRE,dimclrt:t.DIMCLRT,dimadec:t.DIMADEC||0,dimunit:t.DIMUNIT||2,dimdec:t.DIMDEC,dimtdec:t.DIMTDEC,dimaltu:t.DIMALTU,dimalttd:t.DIMALTTD,dimaunit:t.DIMAUNIT,dimfrac:t.DIMFRAC,dimlunit:t.DIMLUNIT,dimdsep:t.DIMDSEP||".",dimtmove:t.DIMTMOVE||0,dimjust:t.DIMJUST,dimsd1:t.DIMSD1,dimsd2:t.DIMSD2,dimtolj:t.DIMTOLJ,dimtzin:t.DIMTZIN,dimaltz:t.DIMALTZ,dimalttz:t.DIMALTTZ,dimfit:t.DIMFIT||0,dimupt:t.DIMUPT,dimatfit:t.DIMATFIT,dimtxsty:r.DEFAULT_TEXT_STYLE,dimldrblk:"",dimblk:t.DIMBLK||"",dimblk1:t.DIMBLK1||"",dimblk2:t.DIMBLK2||"",dimlwd:t.DIMLWD,dimlwe:t.DIMLWE},s=new r.AcDbDimStyleTableRecord(i);this.processCommonTableEntryAttrs(t,s),n.tables.dimStyleTable.add(s)})}processLayers(e,n){e.tables.LAYER.entries.forEach(t=>{const i=new r.AcCmColor;i.colorIndex=t.colorIndex;const s=new r.AcDbLayerTableRecord({name:t.name,standardFlags:t.standardFlag,linetype:t.lineType,lineWeight:t.lineweight,isOff:t.off,color:i,isPlottable:t.plotFlag!=0});this.processCommonTableEntryAttrs(t,s),n.tables.layerTable.add(s)})}processViewports(e,n){e.tables.VPORT.entries.forEach(t=>{const i=new r.AcDbViewportTableRecord;this.processCommonTableEntryAttrs(t,i),t.circleSides&&(i.circleSides=t.circleSides),i.standardFlag=t.standardFlag,i.center.copy(t.center??r.VPORT_FALLBACK_CENTER_2D),i.lowerLeftCorner.copy(t.lowerLeftCorner??r.VPORT_FALLBACK_LLC),i.upperRightCorner.copy(t.upperRightCorner??r.VPORT_FALLBACK_URC),t.snapBasePoint&&i.snapBase.copy(t.snapBasePoint),t.snapRotationAngle&&(i.snapAngle=t.snapRotationAngle),t.snapSpacing&&i.snapIncrements.copy(t.snapSpacing),t.majorGridLines&&(i.gridMajor=t.majorGridLines),t.gridSpacing&&i.gridIncrements.copy(t.gridSpacing),t.backgroundObjectId&&(i.backgroundObjectId=t.backgroundObjectId),i.gsView.center.copy(t.center??r.VPORT_FALLBACK_CENTER_2D),i.gsView.viewDirectionFromTarget.copy(t.viewDirectionFromTarget??r.VPORT_FALLBACK_VIEW_DIR),i.gsView.viewTarget.copy(t.viewTarget??r.VPORT_FALLBACK_VIEW_TARGET),t.lensLength&&(i.gsView.lensLength=t.lensLength),t.frontClippingPlane&&(i.gsView.frontClippingPlane=t.frontClippingPlane),t.backClippingPlane&&(i.gsView.backClippingPlane=t.backClippingPlane),t.viewHeight&&(i.gsView.viewHeight=t.viewHeight),t.viewTwistAngle&&(i.gsView.viewTwistAngle=t.viewTwistAngle),t.frozenLayers&&(i.gsView.frozenLayers=t.frozenLayers),t.styleSheet&&(i.gsView.styleSheet=t.styleSheet),t.renderMode&&(i.gsView.renderMode=t.renderMode),t.viewMode&&(i.gsView.viewMode=t.viewMode),t.ucsIconSetting&&(i.gsView.ucsIconSetting=t.ucsIconSetting),t.ucsOrigin&&i.gsView.ucsOrigin.copy(t.ucsOrigin),t.ucsXAxis&&i.gsView.ucsXAxis.copy(t.ucsXAxis),t.ucsYAxis&&i.gsView.ucsYAxis.copy(t.ucsYAxis),t.orthographicType&&(i.gsView.orthographicType=t.orthographicType),t.shadePlotSetting&&(i.gsView.shadePlotSetting=t.shadePlotSetting),t.shadePlotObjectId&&(i.gsView.shadePlotObjectId=t.shadePlotObjectId),t.visualStyleObjectId&&(i.gsView.visualStyleObjectId=t.visualStyleObjectId),t.isDefaultLightingOn&&(i.gsView.isDefaultLightingOn=t.isDefaultLightingOn),t.defaultLightingType&&(i.gsView.defaultLightingType=t.defaultLightingType),t.brightness&&(i.gsView.brightness=t.brightness),t.contrast&&(i.gsView.contrast=t.contrast),t.ambientColor&&(i.gsView.ambientColor=t.ambientColor),n.tables.viewportTable.add(i)})}processBlockTables(e,n){e.tables.BLOCK_RECORD.entries.forEach(t=>{let i=n.tables.blockTable.getAt(t.name);i||(i=new r.AcDbBlockTableRecord,i.objectId=t.handle,i.name=t.name,i.ownerId=t.ownerHandle,i.origin.copy(t.basePoint),i.layoutId=t.layout,i.blockInsertUnits=t.insertionUnits,i.explodability=t.explodability,i.blockScaling=t.scalability,t.bmpPreview&&(i.bmpPreview=t.bmpPreview),n.tables.blockTable.add(i)),!i.isModelSapce&&t.entities&&t.entities.length>0&&this.processEntitiesInBlock(t.entities,i)})}processBlocks(e,n){}async processEntitiesInBlock(e,n){const o=new P,t=e.length,i=[];for(let s=0;s<t;s++){const a=e[s],c=o.convert(a);c&&i.push(c)}n.appendEntity(i)}async processEntities(e,n,o,t,i){const s=new P;let a=[];e.tables.BLOCK_RECORD.entries.forEach(f=>{this.isModelSpace(f.name)&&(a=f.entities)});const c=a.length,l=new r.AcDbBatchProcessing(c,100-t.value,o);this.config.convertByEntityType&&(a=this.groupAndFlattenByType(a));const p=n.tables.blockTable.modelSpace;await l.processChunk(async(f,u)=>{const g=[];for(let d=f;d<u;d++){const h=a[d],y=s.convert(h);y&&g.push(y)}if(p.appendEntity(g),i){let d=t.value+u/c*(100-t.value);d>100&&(d=100),await i(d,"ENTITY","IN-PROGRESS")}})}processHeader(e,n){const o=e.header;o.CECOLOR&&(o.CECOLOR.index>=0&&o.CECOLOR.index<=256?n.cecolor.colorIndex=o.CECOLOR.index:n.cecolor.setRGBValue(o.CECOLOR.rgb)),n.angbase=o.ANGBASE??0,n.angdir=o.ANGDIR??0,n.aunits=o.AUNITS??0,o.AUPREC!=null&&(n.auprec=o.AUPREC),o.LUNITS!=null&&(n.lunits=o.LUNITS),o.LUPREC!=null&&(n.luprec=o.LUPREC),o.UNITMODE!=null&&(n.unitmode=o.UNITMODE),o.MEASUREMENT!=null&&(n.measurement=o.MEASUREMENT),n.celtype=o.CELTYPE??r.ByLayer,n.celtscale=o.CELTSCALE??1,n.ltscale=o.LTSCALE??1,o.EXTMAX&&(n.extmax=o.EXTMAX),o.EXTMIN&&(n.extmin=o.EXTMIN),n.insunits=o.INSUNITS??1,n.pdmode=o.PDMODE??0,n.pdsize=o.PDSIZE??0,n.textstyle=o.TEXTSTYLE??r.DEFAULT_TEXT_STYLE}processCommonTableEntryAttrs(e,n){n.name=e.name,n.objectId=e.handle,e.ownerHandle!=null&&(n.ownerId=e.ownerHandle)}processObjects(e,n){this.processLayouts(e,n),this.processImageDefs(e,n)}processLayouts(e,n){const o=n.objects.layout;e.objects.LAYOUT.forEach(i=>{const s=new r.AcDbLayout;s.layoutName=i.layoutName,s.tabOrder=i.tabOrder;const a=n.tables.blockTable.newIterator();s.objectId=i.handle;for(const c of a)if(c.layoutId===s.objectId){s.blockTableRecordId=c.objectId;break}s.blockTableRecordId||i.layoutName==="Model"&&(s.blockTableRecordId=n.tables.blockTable.modelSpace.objectId),s.limits.min.copy(i.minLimit),s.limits.max.copy(i.maxLimit),s.extents.min.copy(i.minExtent),s.extents.max.copy(i.maxExtent),i.viewportId&&s.viewportArray.push(i.viewportId),this.processCommonObjectAttrs(i,s),o.setAt(s.layoutName,s)})}processImageDefs(e,n){const o=n.objects.imageDefinition;e.objects.IMAGEDEF.forEach(i=>{const s=new r.AcDbRasterImageDef;s.sourceFileName=i.fileName,this.processCommonObjectAttrs(i,s),o.setAt(s.objectId,s)})}processCommonObjectAttrs(e,n){n.objectId=e.handle,e.ownerHandle!=null&&(n.ownerId=e.ownerHandle)}groupAndFlattenByType(e){const n={},o=[];for(const t of e)n[t.type]||(n[t.type]=[],o.push(t.type)),n[t.type].push(t);return o.flatMap(t=>n[t])}isModelSpace(e){return e&&e.toUpperCase()==E}}b.AcDbLibreDwgConverter=C,Object.defineProperty(b,Symbol.toStringTag,{value:"Module"})});
@@ -806,9 +806,7 @@ const rw = Xw(EI), ew = zw({ __proto__: null, default: rw }, [EI]), jw = ew;
806
806
  jw.setLevel("debug");
807
807
  var xw = ((g) => (g[g.ByLayer = 0] = "ByLayer", g[g.ByBlock = 1] = "ByBlock", g[g.ByAlpha = 2] = "ByAlpha", g[g.ErrorValue = 3] = "ErrorValue", g))(xw || {}), mC = 256;
808
808
  for (; mC--; ) (mC + 256).toString(16).substring(1);
809
- var Ww = ((g) => (g.kForRead = "kForRead", g.kForWrite = "kForWrite", g))(Ww || {}), fw = ((g) => (g.DXF = "dxf", g.DWG = "dwg", g))(fw || {}), pw = ((g) => (g[g.DecimalDegrees = 0] = "DecimalDegrees", g[g.DegreesMinutesSeconds = 1] = "DegreesMinutesSeconds", g[g.Gradians = 2] = "Gradians", g[g.Radians = 3] = "Radians", g[g.SurveyorsUnits = 4] = "SurveyorsUnits", g))(pw || {}), uw = ((g) => (g[g.Scientific = 1] = "Scientific", g[g.Decimal = 2] = "Decimal", g[g.Engineering = 3] = "Engineering", g[g.Architectural = 4] = "Architectural", g[g.Fractional = 5] = "Fractional", g[g.WindowsDesktop = 6] = "WindowsDesktop", g))(uw || {});
810
- new BI();
811
- var mw = ((g) => (g[g.UTF8 = 0] = "UTF8", g[g.US_ASCII = 1] = "US_ASCII", g[g.ISO_8859_1 = 2] = "ISO_8859_1", g[g.ISO_8859_2 = 3] = "ISO_8859_2", g[g.ISO_8859_3 = 4] = "ISO_8859_3", g[g.ISO_8859_4 = 5] = "ISO_8859_4", g[g.ISO_8859_5 = 6] = "ISO_8859_5", g[g.ISO_8859_6 = 7] = "ISO_8859_6", g[g.ISO_8859_7 = 8] = "ISO_8859_7", g[g.ISO_8859_8 = 9] = "ISO_8859_8", g[g.ISO_8859_9 = 10] = "ISO_8859_9", g[g.CP437 = 11] = "CP437", g[g.CP850 = 12] = "CP850", g[g.CP852 = 13] = "CP852", g[g.CP855 = 14] = "CP855", g[g.CP857 = 15] = "CP857", g[g.CP860 = 16] = "CP860", g[g.CP861 = 17] = "CP861", g[g.CP863 = 18] = "CP863", g[g.CP864 = 19] = "CP864", g[g.CP865 = 20] = "CP865", g[g.CP869 = 21] = "CP869", g[g.CP932 = 22] = "CP932", g[g.MACINTOSH = 23] = "MACINTOSH", g[g.BIG5 = 24] = "BIG5", g[g.CP949 = 25] = "CP949", g[g.JOHAB = 26] = "JOHAB", g[g.CP866 = 27] = "CP866", g[g.ANSI_1250 = 28] = "ANSI_1250", g[g.ANSI_1251 = 29] = "ANSI_1251", g[g.ANSI_1252 = 30] = "ANSI_1252", g[g.GB2312 = 31] = "GB2312", g[g.ANSI_1253 = 32] = "ANSI_1253", g[g.ANSI_1254 = 33] = "ANSI_1254", g[g.ANSI_1255 = 34] = "ANSI_1255", g[g.ANSI_1256 = 35] = "ANSI_1256", g[g.ANSI_1257 = 36] = "ANSI_1257", g[g.ANSI_874 = 37] = "ANSI_874", g[g.ANSI_932 = 38] = "ANSI_932", g[g.ANSI_936 = 39] = "ANSI_936", g[g.ANSI_949 = 40] = "ANSI_949", g[g.ANSI_950 = 41] = "ANSI_950", g[g.ANSI_1361 = 42] = "ANSI_1361", g[g.UTF16 = 43] = "UTF16", g[g.ANSI_1258 = 44] = "ANSI_1258", g[g.UNDEFINED = 255] = "UNDEFINED", g))(mw || {});
809
+ var Ww = ((g) => (g.kForRead = "kForRead", g.kForWrite = "kForWrite", g))(Ww || {}), fw = ((g) => (g.DXF = "dxf", g.DWG = "dwg", g))(fw || {}), pw = ((g) => (g[g.DecimalDegrees = 0] = "DecimalDegrees", g[g.DegreesMinutesSeconds = 1] = "DegreesMinutesSeconds", g[g.Gradians = 2] = "Gradians", g[g.Radians = 3] = "Radians", g[g.SurveyorsUnits = 4] = "SurveyorsUnits", g))(pw || {});
812
810
  const SA = [
813
811
  "00",
814
812
  "01",
@@ -1069,7 +1067,7 @@ const SA = [
1069
1067
  ];
1070
1068
  let OC = 1234567;
1071
1069
  const DI = Math.PI / 180, wI = 180 / Math.PI;
1072
- function Ow() {
1070
+ function uw() {
1073
1071
  const g = Math.random() * 4294967295 | 0, A = Math.random() * 4294967295 | 0, B = Math.random() * 4294967295 | 0, Q = Math.random() * 4294967295 | 0;
1074
1072
  return (SA[g & 255] + SA[g >> 8 & 255] + SA[g >> 16 & 255] + SA[g >> 24 & 255] + "-" + SA[A & 255] + SA[A >> 8 & 255] + "-" + SA[A >> 16 & 15 | 64] + SA[A >> 24 & 255] + "-" + SA[B & 63 | 128] + SA[B >> 8 & 255] + "-" + SA[B >> 16 & 255] + SA[B >> 24 & 255] + SA[Q & 255] + SA[Q >> 8 & 255] + SA[Q >> 16 & 255] + SA[Q >> 24 & 255]).toLowerCase();
1075
1073
  }
@@ -1079,100 +1077,100 @@ function NI(g, A, B) {
1079
1077
  function oI(g, A) {
1080
1078
  return (g % A + A) % A;
1081
1079
  }
1082
- function Pw(g, A, B, Q, E) {
1080
+ function mw(g, A, B, Q, E) {
1083
1081
  return Q + (g - A) * (E - Q) / (B - A);
1084
1082
  }
1085
- function vw(g, A, B) {
1083
+ function Ow(g, A, B) {
1086
1084
  return g !== A ? (B - g) / (A - g) : 0;
1087
1085
  }
1088
1086
  function MI(g, A, B) {
1089
1087
  return (1 - B) * g + B * A;
1090
1088
  }
1091
- function nw(g, A, B, Q) {
1089
+ function Pw(g, A, B, Q) {
1092
1090
  return MI(g, A, 1 - Math.exp(-B * Q));
1093
1091
  }
1094
- function _w(g, A = 1) {
1092
+ function vw(g, A = 1) {
1095
1093
  return A - Math.abs(oI(g, A * 2) - A);
1096
1094
  }
1097
- function $w(g, A, B) {
1095
+ function nw(g, A, B) {
1098
1096
  return g <= A ? 0 : g >= B ? 1 : (g = (g - A) / (B - A), g * g * (3 - 2 * g));
1099
1097
  }
1100
- function AN(g, A, B) {
1098
+ function _w(g, A, B) {
1101
1099
  return g <= A ? 0 : g >= B ? 1 : (g = (g - A) / (B - A), g * g * g * (g * (g * 6 - 15) + 10));
1102
1100
  }
1103
- function gN(g, A) {
1101
+ function $w(g, A) {
1104
1102
  return g + Math.floor(Math.random() * (A - g + 1));
1105
1103
  }
1106
- function QN(g, A) {
1104
+ function AN(g, A) {
1107
1105
  return g + Math.random() * (A - g);
1108
1106
  }
1109
- function BN(g) {
1107
+ function gN(g) {
1110
1108
  return g * (0.5 - Math.random());
1111
1109
  }
1112
- function CN(g) {
1110
+ function QN(g) {
1113
1111
  g !== void 0 && (OC = g);
1114
1112
  let A = OC += 1831565813;
1115
1113
  return A = Math.imul(A ^ A >>> 15, A | 1), A ^= A + Math.imul(A ^ A >>> 7, A | 61), ((A ^ A >>> 14) >>> 0) / 4294967296;
1116
1114
  }
1117
- function IN(g) {
1115
+ function BN(g) {
1118
1116
  return g * DI;
1119
1117
  }
1120
- function EN(g) {
1118
+ function CN(g) {
1121
1119
  return g * wI;
1122
1120
  }
1123
- function DN(g) {
1121
+ function IN(g) {
1124
1122
  return (g & g - 1) === 0 && g !== 0;
1125
1123
  }
1126
- function wN(g) {
1124
+ function EN(g) {
1127
1125
  return Math.pow(2, Math.ceil(Math.log(g) / Math.LN2));
1128
1126
  }
1129
- function NN(g) {
1127
+ function DN(g) {
1130
1128
  return Math.pow(2, Math.floor(Math.log(g) / Math.LN2));
1131
1129
  }
1132
1130
  function wB(g) {
1133
1131
  const A = Math.PI * 2;
1134
1132
  return (g % A + A) % A;
1135
1133
  }
1136
- function oN(g, A, B) {
1134
+ function wN(g, A, B) {
1137
1135
  return g > A && g < B || g > B && g < A;
1138
1136
  }
1139
- function MN(g, A, B, Q = !1) {
1137
+ function NN(g, A, B, Q = !1) {
1140
1138
  return g = wB(g), A = wB(A), B = wB(B), Q ? A > B ? g <= A && g >= B : g <= A || g >= B : A < B ? g >= A && g <= B : g >= A || g <= B;
1141
1139
  }
1142
1140
  function GI(g) {
1143
1141
  return g = Math.abs(g), g < 1 ? 0 : Math.ceil(Math.log10(Math.abs(g) + 1));
1144
1142
  }
1145
- function GN(g, A = 1e-7) {
1143
+ function oN(g, A = 1e-7) {
1146
1144
  const B = GI(g);
1147
1145
  return Math.max(Math.pow(10, B) * A, A);
1148
1146
  }
1149
1147
  const PC = {
1150
1148
  DEG2RAD: DI,
1151
1149
  RAD2DEG: wI,
1152
- generateUUID: Ow,
1150
+ generateUUID: uw,
1153
1151
  clamp: NI,
1154
1152
  euclideanModulo: oI,
1155
- mapLinear: Pw,
1156
- inverseLerp: vw,
1153
+ mapLinear: mw,
1154
+ inverseLerp: Ow,
1157
1155
  lerp: MI,
1158
- damp: nw,
1159
- pingpong: _w,
1160
- smoothstep: $w,
1161
- smootherstep: AN,
1162
- randInt: gN,
1163
- randFloat: QN,
1164
- randFloatSpread: BN,
1165
- seededRandom: CN,
1166
- degToRad: IN,
1167
- radToDeg: EN,
1168
- isPowerOfTwo: DN,
1169
- ceilPowerOfTwo: wN,
1170
- floorPowerOfTwo: NN,
1156
+ damp: Pw,
1157
+ pingpong: vw,
1158
+ smoothstep: nw,
1159
+ smootherstep: _w,
1160
+ randInt: $w,
1161
+ randFloat: AN,
1162
+ randFloatSpread: gN,
1163
+ seededRandom: QN,
1164
+ degToRad: BN,
1165
+ radToDeg: CN,
1166
+ isPowerOfTwo: IN,
1167
+ ceilPowerOfTwo: EN,
1168
+ floorPowerOfTwo: DN,
1171
1169
  normalizeAngle: wB,
1172
- isBetween: oN,
1173
- isBetweenAngle: MN,
1170
+ isBetween: wN,
1171
+ isBetweenAngle: NN,
1174
1172
  intPartLength: GI,
1175
- relativeEps: GN
1173
+ relativeEps: oN
1176
1174
  }, MC = class kI {
1177
1175
  constructor(A, B) {
1178
1176
  this.x = 0, this.y = 0;
@@ -1531,7 +1529,7 @@ class HC {
1531
1529
  return A - B < Q;
1532
1530
  }
1533
1531
  }
1534
- const kN = new HC();
1532
+ const MN = new HC();
1535
1533
  class KC {
1536
1534
  constructor(A = 0, B = 0, Q = 0, E = 1) {
1537
1535
  this._x = A, this._y = B, this._z = Q, this._w = E;
@@ -2063,7 +2061,7 @@ const QC = new AA(), vC = new KC(), kC = class iI {
2063
2061
  ), this;
2064
2062
  }
2065
2063
  setFromExtrusionDirection(A) {
2066
- if (kN.equalPoint3d(A, AA.Z_AXIS))
2064
+ if (MN.equalPoint3d(A, AA.Z_AXIS))
2067
2065
  this.identity();
2068
2066
  else {
2069
2067
  const B = new AA(1, 0, 0);
@@ -2118,7 +2116,7 @@ const QC = new AA(), vC = new KC(), kC = class iI {
2118
2116
  return B[0] = Q[0] * E, B[1] = Q[1] * E, B[2] = Q[2] * E, B[3] = 0, B[4] = Q[4] * w, B[5] = Q[5] * w, B[6] = Q[6] * w, B[7] = 0, B[8] = Q[8] * o, B[9] = Q[9] * o, B[10] = Q[10] * o, B[11] = 0, B[12] = 0, B[13] = 0, B[14] = 0, B[15] = 1, this;
2119
2117
  }
2120
2118
  makeRotationFromQuaternion(A) {
2121
- return this.compose(RN, A, YN);
2119
+ return this.compose(GN, A, kN);
2122
2120
  }
2123
2121
  lookAt(A, B, Q) {
2124
2122
  const E = this.elements;
@@ -2238,7 +2236,7 @@ const QC = new AA(), vC = new KC(), kC = class iI {
2238
2236
  };
2239
2237
  kC.IDENTITY = Object.freeze(new kC());
2240
2238
  let HB = kC;
2241
- const ug = new AA(), $A = new HB(), RN = new AA(0, 0, 0), YN = new AA(1, 1, 1), cg = new AA(), fQ = new AA(), lA = new AA();
2239
+ const ug = new AA(), $A = new HB(), GN = new AA(0, 0, 0), kN = new AA(1, 1, 1), cg = new AA(), fQ = new AA(), lA = new AA();
2242
2240
  new AA(), new AA(), new AA(), new AA(), new AA(), new AA(), new AA(), new AA();
2243
2241
  new AA();
2244
2242
  new FB();
@@ -2255,7 +2253,7 @@ let FI = class HI extends FB {
2255
2253
  Q.toArray(B, E * 2);
2256
2254
  }), B;
2257
2255
  }
2258
- }, UN = class KI extends AA {
2256
+ }, RN = class KI extends AA {
2259
2257
  clone() {
2260
2258
  return new KI(this.x, this.y, this.z);
2261
2259
  }
@@ -2271,34 +2269,36 @@ new HB();
2271
2269
  new AA();
2272
2270
  new AA();
2273
2271
  new AA();
2274
- new UN();
2272
+ new RN();
2275
2273
  new AA();
2276
2274
  new AA();
2277
2275
  new AA();
2278
2276
  new AA();
2279
- var iN = ((g) => (g.ClosedFilled = "", g.Dot = "_DOT", g.DotSmall = "_DOTSMALL", g.DotBlank = "_DOTBLANK", g.Origin = "_ORIGIN", g.Origin2 = "_ORIGIN2", g.Open = "_OPEN", g.Open90 = "_OPEN90", g.Open30 = "_OPEN30", g.Closed = "_CLOSED", g.Small = "_SMALL", g.None = "_NONE", g.Oblique = "_OBLIQUE", g.BoxFilled = "_BOXFILLED", g.Box = "_BOXBLANK", g.ClosedBlank = "_CLOSEDBLANK", g.DatumBlank = "_DATUMBLANK", g.DatumFilled = "_DATUMFILLED", g.Integral = "_INTEGRAL", g.ArchTick = "_ARCHTICK", g))(iN || {}), FN = ((g) => (g[g.ByBlock = -2] = "ByBlock", g[g.ByDIPs = -4] = "ByDIPs", g[g.ByLayer = -1] = "ByLayer", g[g.ByLineWeightDefault = -3] = "ByLineWeightDefault", g[g.LineWeight000 = 0] = "LineWeight000", g[g.LineWeight005 = 5] = "LineWeight005", g[g.LineWeight009 = 9] = "LineWeight009", g[g.LineWeight013 = 13] = "LineWeight013", g[g.LineWeight015 = 15] = "LineWeight015", g[g.LineWeight018 = 18] = "LineWeight018", g[g.LineWeight020 = 20] = "LineWeight020", g[g.LineWeight025 = 25] = "LineWeight025", g[g.LineWeight030 = 30] = "LineWeight030", g[g.LineWeight035 = 35] = "LineWeight035", g[g.LineWeight040 = 40] = "LineWeight040", g[g.LineWeight050 = 50] = "LineWeight050", g[g.LineWeight053 = 53] = "LineWeight053", g[g.LineWeight060 = 60] = "LineWeight060", g[g.LineWeight070 = 70] = "LineWeight070", g[g.LineWeight080 = 80] = "LineWeight080", g[g.LineWeight090 = 90] = "LineWeight090", g[g.LineWeight100 = 100] = "LineWeight100", g[g.LineWeight106 = 106] = "LineWeight106", g[g.LineWeight120 = 120] = "LineWeight120", g[g.LineWeight140 = 140] = "LineWeight140", g[g.LineWeight158 = 158] = "LineWeight158", g[g.LineWeight200 = 200] = "LineWeight200", g[g.LineWeight211 = 211] = "LineWeight211", g))(FN || {}), HN = ((g) => (g[g.LEFT_TO_RIGHT = 1] = "LEFT_TO_RIGHT", g[g.RIGHT_TO_LEFT = 2] = "RIGHT_TO_LEFT", g[g.TOP_TO_BOTTOM = 3] = "TOP_TO_BOTTOM", g[g.BOTTOM_TO_TOP = 4] = "BOTTOM_TO_TOP", g[g.BY_STYLE = 5] = "BY_STYLE", g))(HN || {}), KN = ((g) => (g[g.TopLeft = 1] = "TopLeft", g[g.TopCenter = 2] = "TopCenter", g[g.TopRight = 3] = "TopRight", g[g.MiddleLeft = 4] = "MiddleLeft", g[g.MiddleCenter = 5] = "MiddleCenter", g[g.MiddleRight = 6] = "MiddleRight", g[g.BottomLeft = 7] = "BottomLeft", g[g.BottomCenter = 8] = "BottomCenter", g[g.BottomRight = 9] = "BottomRight", g[g.BaselineLeft = 10] = "BaselineLeft", g[g.BaselineCenter = 11] = "BaselineCenter", g[g.BaselineRight = 12] = "BaselineRight", g))(KN || {}), cN = ((g) => (g[g.OPTIMIZED_2D = 0] = "OPTIMIZED_2D", g[g.WIREFRAME = 1] = "WIREFRAME", g[g.HIDDEN_LINE = 2] = "HIDDEN_LINE", g[g.FLAT_SHADED = 3] = "FLAT_SHADED", g[g.GOURAUD_SHADED = 4] = "GOURAUD_SHADED", g[g.FLAT_SHADED_WITH_WIREFRAME = 5] = "FLAT_SHADED_WITH_WIREFRAME", g[g.GOURAUD_SHADED_WITH_WIREFRAME = 6] = "GOURAUD_SHADED_WITH_WIREFRAME", g))(cN || {}), hN = ((g) => (g[g.NON_ORTHOGRAPHIC = 0] = "NON_ORTHOGRAPHIC", g[g.TOP = 1] = "TOP", g[g.BOTTOM = 2] = "BOTTOM", g[g.FRONT = 3] = "FRONT", g[g.BACK = 4] = "BACK", g[g.LEFT = 5] = "LEFT", g[g.RIGHT = 6] = "RIGHT", g))(hN || {}), yN = ((g) => (g[g.ONE_DISTANT_LIGHT = 0] = "ONE_DISTANT_LIGHT", g[g.TWO_DISTANT_LIGHTS = 1] = "TWO_DISTANT_LIGHTS", g))(yN || {}), JN = ((g) => (g[g.SimplePoly = 0] = "SimplePoly", g[g.FitCurvePoly = 1] = "FitCurvePoly", g[g.QuadSplinePoly = 2] = "QuadSplinePoly", g[g.CubicSplinePoly = 3] = "CubicSplinePoly", g))(JN || {}), SN = ((g) => (g[g.Vertex = 0] = "Vertex", g[g.CurveFitVertex = 1] = "CurveFitVertex", g[g.SplineFitVertex = 8] = "SplineFitVertex", g[g.SplineCtlVertex = 9] = "SplineCtlVertex", g))(SN || {}), LN = ((g) => (g[g.SimplePoly = 0] = "SimplePoly", g[g.QuadSplinePoly = 1] = "QuadSplinePoly", g[g.CubicSplinePoly = 2] = "CubicSplinePoly", g))(LN || {}), sN = ((g) => (g[g.SimpleVertex = 0] = "SimpleVertex", g[g.ControlVertex = 1] = "ControlVertex", g[g.FitVertex = 2] = "FitVertex", g))(sN || {}), aN = ((g) => (g[g.LEFT = 0] = "LEFT", g[g.CENTER = 1] = "CENTER", g[g.RIGHT = 2] = "RIGHT", g[g.ALIGNED = 3] = "ALIGNED", g[g.MIDDLE = 4] = "MIDDLE", g[g.FIT = 5] = "FIT", g))(aN || {}), dN = ((g) => (g[g.BASELINE = 0] = "BASELINE", g[g.BOTTOM = 1] = "BOTTOM", g[g.MIDDLE = 2] = "MIDDLE", g[g.TOP = 3] = "TOP", g))(dN || {}), tN = ((g) => (g[g.Invisible = 1] = "Invisible", g[g.Const = 2] = "Const", g[g.Verifiable = 4] = "Verifiable", g[g.Preset = 8] = "Preset", g))(tN || {}), VN = ((g) => (g[g.MultiLine = 2] = "MultiLine", g[g.ConstMultiLine = 4] = "ConstMultiLine", g))(VN || {});
2280
- const qN = {
2277
+ var YN = ((g) => (g[g.Scientific = 1] = "Scientific", g[g.Decimal = 2] = "Decimal", g[g.Engineering = 3] = "Engineering", g[g.Architectural = 4] = "Architectural", g[g.Fractional = 5] = "Fractional", g[g.WindowsDesktop = 6] = "WindowsDesktop", g))(YN || {}), UN = ((g) => (g[g.Undefined = 0] = "Undefined", g[g.Inches = 1] = "Inches", g[g.Feet = 2] = "Feet", g[g.Miles = 3] = "Miles", g[g.Millimeters = 4] = "Millimeters", g[g.Centimeters = 5] = "Centimeters", g[g.Meters = 6] = "Meters", g[g.Kilometers = 7] = "Kilometers", g[g.Microinches = 8] = "Microinches", g[g.Mils = 9] = "Mils", g[g.Yards = 10] = "Yards", g[g.Angstroms = 11] = "Angstroms", g[g.Nanometers = 12] = "Nanometers", g[g.Microns = 13] = "Microns", g[g.Decimeters = 14] = "Decimeters", g[g.Dekameters = 15] = "Dekameters", g[g.Hectometers = 16] = "Hectometers", g[g.Gigameters = 17] = "Gigameters", g[g.Astronomical = 18] = "Astronomical", g[g.LightYears = 19] = "LightYears", g[g.Parsecs = 20] = "Parsecs", g[g.USSurveyFeet = 21] = "USSurveyFeet", g[g.USSurveyInch = 22] = "USSurveyInch", g[g.USSurveyYard = 23] = "USSurveyYard", g[g.USSurveyMile = 24] = "USSurveyMile", g[g.Max = 24] = "Max", g))(UN || {});
2278
+ new BI();
2279
+ var iN = ((g) => (g[g.UTF8 = 0] = "UTF8", g[g.US_ASCII = 1] = "US_ASCII", g[g.ISO_8859_1 = 2] = "ISO_8859_1", g[g.ISO_8859_2 = 3] = "ISO_8859_2", g[g.ISO_8859_3 = 4] = "ISO_8859_3", g[g.ISO_8859_4 = 5] = "ISO_8859_4", g[g.ISO_8859_5 = 6] = "ISO_8859_5", g[g.ISO_8859_6 = 7] = "ISO_8859_6", g[g.ISO_8859_7 = 8] = "ISO_8859_7", g[g.ISO_8859_8 = 9] = "ISO_8859_8", g[g.ISO_8859_9 = 10] = "ISO_8859_9", g[g.CP437 = 11] = "CP437", g[g.CP850 = 12] = "CP850", g[g.CP852 = 13] = "CP852", g[g.CP855 = 14] = "CP855", g[g.CP857 = 15] = "CP857", g[g.CP860 = 16] = "CP860", g[g.CP861 = 17] = "CP861", g[g.CP863 = 18] = "CP863", g[g.CP864 = 19] = "CP864", g[g.CP865 = 20] = "CP865", g[g.CP869 = 21] = "CP869", g[g.CP932 = 22] = "CP932", g[g.MACINTOSH = 23] = "MACINTOSH", g[g.BIG5 = 24] = "BIG5", g[g.CP949 = 25] = "CP949", g[g.JOHAB = 26] = "JOHAB", g[g.CP866 = 27] = "CP866", g[g.ANSI_1250 = 28] = "ANSI_1250", g[g.ANSI_1251 = 29] = "ANSI_1251", g[g.ANSI_1252 = 30] = "ANSI_1252", g[g.GB2312 = 31] = "GB2312", g[g.ANSI_1253 = 32] = "ANSI_1253", g[g.ANSI_1254 = 33] = "ANSI_1254", g[g.ANSI_1255 = 34] = "ANSI_1255", g[g.ANSI_1256 = 35] = "ANSI_1256", g[g.ANSI_1257 = 36] = "ANSI_1257", g[g.ANSI_874 = 37] = "ANSI_874", g[g.ANSI_932 = 38] = "ANSI_932", g[g.ANSI_936 = 39] = "ANSI_936", g[g.ANSI_949 = 40] = "ANSI_949", g[g.ANSI_950 = 41] = "ANSI_950", g[g.ANSI_1361 = 42] = "ANSI_1361", g[g.UTF16 = 43] = "UTF16", g[g.ANSI_1258 = 44] = "ANSI_1258", g[g.UNDEFINED = 255] = "UNDEFINED", g))(iN || {}), FN = ((g) => (g.ClosedFilled = "", g.Dot = "_DOT", g.DotSmall = "_DOTSMALL", g.DotBlank = "_DOTBLANK", g.Origin = "_ORIGIN", g.Origin2 = "_ORIGIN2", g.Open = "_OPEN", g.Open90 = "_OPEN90", g.Open30 = "_OPEN30", g.Closed = "_CLOSED", g.Small = "_SMALL", g.None = "_NONE", g.Oblique = "_OBLIQUE", g.BoxFilled = "_BOXFILLED", g.Box = "_BOXBLANK", g.ClosedBlank = "_CLOSEDBLANK", g.DatumBlank = "_DATUMBLANK", g.DatumFilled = "_DATUMFILLED", g.Integral = "_INTEGRAL", g.ArchTick = "_ARCHTICK", g))(FN || {}), HN = ((g) => (g[g.ByBlock = -2] = "ByBlock", g[g.ByDIPs = -4] = "ByDIPs", g[g.ByLayer = -1] = "ByLayer", g[g.ByLineWeightDefault = -3] = "ByLineWeightDefault", g[g.LineWeight000 = 0] = "LineWeight000", g[g.LineWeight005 = 5] = "LineWeight005", g[g.LineWeight009 = 9] = "LineWeight009", g[g.LineWeight013 = 13] = "LineWeight013", g[g.LineWeight015 = 15] = "LineWeight015", g[g.LineWeight018 = 18] = "LineWeight018", g[g.LineWeight020 = 20] = "LineWeight020", g[g.LineWeight025 = 25] = "LineWeight025", g[g.LineWeight030 = 30] = "LineWeight030", g[g.LineWeight035 = 35] = "LineWeight035", g[g.LineWeight040 = 40] = "LineWeight040", g[g.LineWeight050 = 50] = "LineWeight050", g[g.LineWeight053 = 53] = "LineWeight053", g[g.LineWeight060 = 60] = "LineWeight060", g[g.LineWeight070 = 70] = "LineWeight070", g[g.LineWeight080 = 80] = "LineWeight080", g[g.LineWeight090 = 90] = "LineWeight090", g[g.LineWeight100 = 100] = "LineWeight100", g[g.LineWeight106 = 106] = "LineWeight106", g[g.LineWeight120 = 120] = "LineWeight120", g[g.LineWeight140 = 140] = "LineWeight140", g[g.LineWeight158 = 158] = "LineWeight158", g[g.LineWeight200 = 200] = "LineWeight200", g[g.LineWeight211 = 211] = "LineWeight211", g))(HN || {}), KN = ((g) => (g[g.LEFT_TO_RIGHT = 1] = "LEFT_TO_RIGHT", g[g.RIGHT_TO_LEFT = 2] = "RIGHT_TO_LEFT", g[g.TOP_TO_BOTTOM = 3] = "TOP_TO_BOTTOM", g[g.BOTTOM_TO_TOP = 4] = "BOTTOM_TO_TOP", g[g.BY_STYLE = 5] = "BY_STYLE", g))(KN || {}), cN = ((g) => (g[g.TopLeft = 1] = "TopLeft", g[g.TopCenter = 2] = "TopCenter", g[g.TopRight = 3] = "TopRight", g[g.MiddleLeft = 4] = "MiddleLeft", g[g.MiddleCenter = 5] = "MiddleCenter", g[g.MiddleRight = 6] = "MiddleRight", g[g.BottomLeft = 7] = "BottomLeft", g[g.BottomCenter = 8] = "BottomCenter", g[g.BottomRight = 9] = "BottomRight", g[g.BaselineLeft = 10] = "BaselineLeft", g[g.BaselineCenter = 11] = "BaselineCenter", g[g.BaselineRight = 12] = "BaselineRight", g))(cN || {}), hN = ((g) => (g[g.OPTIMIZED_2D = 0] = "OPTIMIZED_2D", g[g.WIREFRAME = 1] = "WIREFRAME", g[g.HIDDEN_LINE = 2] = "HIDDEN_LINE", g[g.FLAT_SHADED = 3] = "FLAT_SHADED", g[g.GOURAUD_SHADED = 4] = "GOURAUD_SHADED", g[g.FLAT_SHADED_WITH_WIREFRAME = 5] = "FLAT_SHADED_WITH_WIREFRAME", g[g.GOURAUD_SHADED_WITH_WIREFRAME = 6] = "GOURAUD_SHADED_WITH_WIREFRAME", g))(hN || {}), yN = ((g) => (g[g.NON_ORTHOGRAPHIC = 0] = "NON_ORTHOGRAPHIC", g[g.TOP = 1] = "TOP", g[g.BOTTOM = 2] = "BOTTOM", g[g.FRONT = 3] = "FRONT", g[g.BACK = 4] = "BACK", g[g.LEFT = 5] = "LEFT", g[g.RIGHT = 6] = "RIGHT", g))(yN || {}), JN = ((g) => (g[g.ONE_DISTANT_LIGHT = 0] = "ONE_DISTANT_LIGHT", g[g.TWO_DISTANT_LIGHTS = 1] = "TWO_DISTANT_LIGHTS", g))(JN || {}), SN = ((g) => (g[g.SimplePoly = 0] = "SimplePoly", g[g.FitCurvePoly = 1] = "FitCurvePoly", g[g.QuadSplinePoly = 2] = "QuadSplinePoly", g[g.CubicSplinePoly = 3] = "CubicSplinePoly", g))(SN || {}), LN = ((g) => (g[g.Vertex = 0] = "Vertex", g[g.CurveFitVertex = 1] = "CurveFitVertex", g[g.SplineFitVertex = 8] = "SplineFitVertex", g[g.SplineCtlVertex = 9] = "SplineCtlVertex", g))(LN || {}), sN = ((g) => (g[g.SimplePoly = 0] = "SimplePoly", g[g.QuadSplinePoly = 1] = "QuadSplinePoly", g[g.CubicSplinePoly = 2] = "CubicSplinePoly", g))(sN || {}), aN = ((g) => (g[g.SimpleVertex = 0] = "SimpleVertex", g[g.ControlVertex = 1] = "ControlVertex", g[g.FitVertex = 2] = "FitVertex", g))(aN || {}), dN = ((g) => (g[g.LEFT = 0] = "LEFT", g[g.CENTER = 1] = "CENTER", g[g.RIGHT = 2] = "RIGHT", g[g.ALIGNED = 3] = "ALIGNED", g[g.MIDDLE = 4] = "MIDDLE", g[g.FIT = 5] = "FIT", g))(dN || {}), tN = ((g) => (g[g.BASELINE = 0] = "BASELINE", g[g.BOTTOM = 1] = "BOTTOM", g[g.MIDDLE = 2] = "MIDDLE", g[g.TOP = 3] = "TOP", g))(tN || {}), VN = ((g) => (g[g.Invisible = 1] = "Invisible", g[g.Const = 2] = "Const", g[g.Verifiable = 4] = "Verifiable", g[g.Preset = 8] = "Preset", g))(VN || {}), qN = ((g) => (g[g.MultiLine = 2] = "MultiLine", g[g.ConstMultiLine = 4] = "ConstMultiLine", g))(qN || {});
2280
+ const bN = {
2281
2281
  ACADVER: "ACADVER",
2282
2282
  ANGBASE: "ANGBASE",
2283
2283
  ANGDIR: "ANGDIR",
2284
2284
  AUNITS: "AUNITS",
2285
2285
  AUPREC: "AUPREC",
2286
2286
  CECOLOR: "CECOLOR",
2287
- CELTYPE: "CELTYPE",
2288
2287
  CELTSCALE: "CELTSCALE",
2288
+ CELTYPE: "CELTYPE",
2289
2289
  CELWEIGHT: "CELWEIGHT",
2290
2290
  CETRANSPARENCY: "CETRANSPARENCY",
2291
2291
  CLAYER: "CLAYER",
2292
- CMLSTYLE: "CMLSTYLE",
2293
- CMLSCALE: "CMLSCALE",
2294
2292
  CMLEADERSTYLE: "CMLEADERSTYLE",
2293
+ CMLSCALE: "CMLSCALE",
2294
+ CMLSTYLE: "CMLSTYLE",
2295
2295
  COLORTHEME: "COLORTHEME",
2296
2296
  DYNMODE: "DYNMODE",
2297
2297
  DYNPROMPT: "DYNPROMPT",
2298
2298
  EXTMAX: "EXTMAX",
2299
2299
  EXTMIN: "EXTMIN",
2300
- HPASSOC: "HPASSOC",
2301
2300
  HPANG: "HPANG",
2301
+ HPASSOC: "HPASSOC",
2302
2302
  HPBACKGROUNDCOLOR: "HPBACKGROUNDCOLOR",
2303
2303
  HPCOLOR: "HPCOLOR",
2304
2304
  HPDOUBLE: "HPDOUBLE",
@@ -2313,6 +2313,7 @@ const qN = {
2313
2313
  LUNITS: "LUNITS",
2314
2314
  LUPREC: "LUPREC",
2315
2315
  LWDISPLAY: "LWDISPLAY",
2316
+ MEASUREMENT: "MEASUREMENT",
2316
2317
  MEASUREMENTCOLOR: "MEASUREMENTCOLOR",
2317
2318
  OSMODE: "OSMODE",
2318
2319
  PDMODE: "PDMODE",
@@ -2320,19 +2321,20 @@ const qN = {
2320
2321
  PICKBOX: "PICKBOX",
2321
2322
  SHORTCUTMENU: "SHORTCUTMENU",
2322
2323
  TEXTSTYLE: "TEXTSTYLE",
2324
+ UNITMODE: "UNITMODE",
2323
2325
  WHITEBKCOLOR: "WHITEBKCOLOR"
2324
2326
  };
2325
2327
  Object.freeze(
2326
- Object.values(qN)
2328
+ Object.values(bN)
2327
2329
  );
2328
- var bN = ((g) => (g[g.UserDefined = 0] = "UserDefined", g[g.Predefined = 1] = "Predefined", g[g.Custom = 2] = "Custom", g))(bN || {}), TN = ((g) => (g[g.Normal = 0] = "Normal", g[g.Outer = 1] = "Outer", g[g.Ignore = 2] = "Ignore", g))(TN || {}), ZN = ((g) => (g[g.HatchObject = 0] = "HatchObject", g[g.GradientObject = 1] = "GradientObject", g))(ZN || {}), zN = ((g) => (g[g.PreDefinedGradient = 0] = "PreDefinedGradient", g[g.UserDefinedGradient = 1] = "UserDefinedGradient", g))(zN || {}), lN = ((g) => (g[g.MText = 0] = "MText", g[g.Fcf = 1] = "Fcf", g[g.BlockReference = 2] = "BlockReference", g[g.NoAnnotation = 3] = "NoAnnotation", g))(lN || {}), XN = ((g) => (g[g.EndPoint = 1] = "EndPoint", g[g.MidPoint = 2] = "MidPoint", g[g.Center = 3] = "Center", g[g.Node = 4] = "Node", g[g.Quadrant = 5] = "Quadrant", g[g.Insertion = 7] = "Insertion", g[g.Perpendicular = 8] = "Perpendicular", g[g.Tangent = 9] = "Tangent", g[g.Nearest = 10] = "Nearest", g[g.Centroid = 11] = "Centroid", g))(XN || {}), rN = ((g) => (g[g.Top = 0] = "Top", g[g.Zero = 1] = "Zero", g[g.Bottom = 2] = "Bottom", g))(rN || {}), eN = ((g) => (g[g.HasVertex = 1] = "HasVertex", g[g.Closed = 2] = "Closed", g[g.SuppressStartCaps = 4] = "SuppressStartCaps", g[g.SuppressEndCaps = 8] = "SuppressEndCaps", g))(eN || {}), jN = ((g) => (g[g.InvisibleLeader = 0] = "InvisibleLeader", g[g.StraightLeader = 1] = "StraightLeader", g[g.SplineLeader = 2] = "SplineLeader", g))(jN || {}), xN = ((g) => (g[g.NoneContent = 0] = "NoneContent", g[g.BlockContent = 1] = "BlockContent", g[g.MTextContent = 2] = "MTextContent", g[g.ToleranceContent = 3] = "ToleranceContent", g))(xN || {}), WN = ((g) => (g[g.Horizontal = 0] = "Horizontal", g[g.Vertical = 1] = "Vertical", g))(WN || {}), fN = ((g) => (g[g.Unknown = 0] = "Unknown", g[g.Left = 1] = "Left", g[g.Right = 2] = "Right", g[g.Top = 3] = "Top", g[g.Bottom = 4] = "Bottom", g))(fN || {});
2330
+ var TN = ((g) => (g[g.UserDefined = 0] = "UserDefined", g[g.Predefined = 1] = "Predefined", g[g.Custom = 2] = "Custom", g))(TN || {}), ZN = ((g) => (g[g.Normal = 0] = "Normal", g[g.Outer = 1] = "Outer", g[g.Ignore = 2] = "Ignore", g))(ZN || {}), zN = ((g) => (g[g.HatchObject = 0] = "HatchObject", g[g.GradientObject = 1] = "GradientObject", g))(zN || {}), lN = ((g) => (g[g.PreDefinedGradient = 0] = "PreDefinedGradient", g[g.UserDefinedGradient = 1] = "UserDefinedGradient", g))(lN || {}), XN = ((g) => (g[g.MText = 0] = "MText", g[g.Fcf = 1] = "Fcf", g[g.BlockReference = 2] = "BlockReference", g[g.NoAnnotation = 3] = "NoAnnotation", g))(XN || {}), rN = ((g) => (g[g.EndPoint = 1] = "EndPoint", g[g.MidPoint = 2] = "MidPoint", g[g.Center = 3] = "Center", g[g.Node = 4] = "Node", g[g.Quadrant = 5] = "Quadrant", g[g.Insertion = 7] = "Insertion", g[g.Perpendicular = 8] = "Perpendicular", g[g.Tangent = 9] = "Tangent", g[g.Nearest = 10] = "Nearest", g[g.Centroid = 11] = "Centroid", g))(rN || {}), eN = ((g) => (g[g.Top = 0] = "Top", g[g.Zero = 1] = "Zero", g[g.Bottom = 2] = "Bottom", g))(eN || {}), jN = ((g) => (g[g.HasVertex = 1] = "HasVertex", g[g.Closed = 2] = "Closed", g[g.SuppressStartCaps = 4] = "SuppressStartCaps", g[g.SuppressEndCaps = 8] = "SuppressEndCaps", g))(jN || {}), xN = ((g) => (g[g.InvisibleLeader = 0] = "InvisibleLeader", g[g.StraightLeader = 1] = "StraightLeader", g[g.SplineLeader = 2] = "SplineLeader", g))(xN || {}), WN = ((g) => (g[g.NoneContent = 0] = "NoneContent", g[g.BlockContent = 1] = "BlockContent", g[g.MTextContent = 2] = "MTextContent", g[g.ToleranceContent = 3] = "ToleranceContent", g))(WN || {}), fN = ((g) => (g[g.Horizontal = 0] = "Horizontal", g[g.Vertical = 1] = "Vertical", g))(fN || {}), pN = ((g) => (g[g.Unknown = 0] = "Unknown", g[g.Left = 1] = "Left", g[g.Right = 2] = "Right", g[g.Top = 3] = "Top", g[g.Bottom = 4] = "Bottom", g))(pN || {});
2329
2331
  new AA();
2330
2332
  new HB();
2331
2333
  new BI();
2332
- var pN = ((g) => (g[g.Invalid = 0] = "Invalid", g[g.Rect = 1] = "Rect", g[g.Poly = 2] = "Poly", g))(pN || {}), uN = ((g) => (g[g.Show = 1] = "Show", g[g.ShowUnAligned = 2] = "ShowUnAligned", g[g.Clip = 4] = "Clip", g[g.Transparent = 8] = "Transparent", g))(uN || {});
2334
+ var uN = ((g) => (g[g.Invalid = 0] = "Invalid", g[g.Rect = 1] = "Rect", g[g.Poly = 2] = "Poly", g))(uN || {}), mN = ((g) => (g[g.Show = 1] = "Show", g[g.ShowUnAligned = 2] = "ShowUnAligned", g[g.Clip = 4] = "Clip", g[g.Transparent = 8] = "Transparent", g))(mN || {});
2333
2335
  new FI();
2334
2336
  new FI();
2335
- var mN = ((g) => (g[g.AtLeast = 1] = "AtLeast", g[g.Exactly = 2] = "Exactly", g))(mN || {}), ON = ((g) => (g[g.kInches = 0] = "kInches", g[g.kMillimeters = 1] = "kMillimeters", g[g.kPixels = 2] = "kPixels", g))(ON || {}), PN = ((g) => (g[g.k0degrees = 0] = "k0degrees", g[g.k90degrees = 1] = "k90degrees", g[g.k180degrees = 2] = "k180degrees", g[g.k270degrees = 3] = "k270degrees", g))(PN || {}), vN = ((g) => (g[g.kDisplay = 0] = "kDisplay", g[g.kExtents = 1] = "kExtents", g[g.kLimits = 2] = "kLimits", g[g.kView = 3] = "kView", g[g.kWindow = 4] = "kWindow", g[g.kLayout = 5] = "kLayout", g))(vN || {}), nN = ((g) => (g[g.kDraft = 0] = "kDraft", g[g.kPreview = 1] = "kPreview", g[g.kNormal = 2] = "kNormal", g[g.kPresentation = 3] = "kPresentation", g[g.kMaximum = 4] = "kMaximum", g[g.kCustom = 5] = "kCustom", g))(nN || {}), _N = ((g) => (g[g.kAsDisplayed = 0] = "kAsDisplayed", g[g.kWireframe = 1] = "kWireframe", g[g.kHidden = 2] = "kHidden", g[g.kRendered = 3] = "kRendered", g[g.kVisualStyle = 4] = "kVisualStyle", g[g.kRenderPreset = 5] = "kRenderPreset", g))(_N || {}), $N = ((g) => (g[g.kScaleToFit = 0] = "kScaleToFit", g[g.k1_128in_1ft = 1] = "k1_128in_1ft", g[g.k1_64in_1ft = 2] = "k1_64in_1ft", g[g.k1_32in_1ft = 3] = "k1_32in_1ft", g[g.k1_16in_1ft = 4] = "k1_16in_1ft", g[g.k3_32in_1ft = 5] = "k3_32in_1ft", g[g.k1_8in_1ft = 6] = "k1_8in_1ft", g[g.k3_16in_1ft = 7] = "k3_16in_1ft", g[g.k1_4in_1ft = 8] = "k1_4in_1ft", g[g.k3_8in_1ft = 9] = "k3_8in_1ft", g[g.k1_2in_1ft = 10] = "k1_2in_1ft", g[g.k3_4in_1ft = 11] = "k3_4in_1ft", g[g.k1in_1ft = 12] = "k1in_1ft", g[g.k3in_1ft = 13] = "k3in_1ft", g[g.k6in_1ft = 14] = "k6in_1ft", g[g.k1ft_1ft = 15] = "k1ft_1ft", g[g.k1_1 = 16] = "k1_1", g[g.k1_2 = 17] = "k1_2", g[g.k1_4 = 18] = "k1_4", g[g.k1_5 = 19] = "k1_5", g[g.k1_8 = 20] = "k1_8", g[g.k1_10 = 21] = "k1_10", g[g.k1_16 = 22] = "k1_16", g[g.k1_20 = 23] = "k1_20", g[g.k1_30 = 24] = "k1_30", g[g.k1_40 = 25] = "k1_40", g[g.k1_50 = 26] = "k1_50", g[g.k1_100 = 27] = "k1_100", g[g.k2_1 = 28] = "k2_1", g[g.k4_1 = 29] = "k4_1", g[g.k8_1 = 30] = "k8_1", g[g.k10_1 = 31] = "k10_1", g[g.k100_1 = 32] = "k100_1", g[g.k1000_1 = 33] = "k1000_1", g[g.k1and1_2in_1ft = 34] = "k1and1_2in_1ft", g))($N || {}), Ao = ((g) => (g[g.Any = 0] = "Any", g[g.Uniform = 1] = "Uniform", g))(Ao || {}), go = ((g) => (g[g.NotApplicable = 0] = "NotApplicable", g[g.Ignore = 1] = "Ignore", g[g.Replace = 2] = "Replace", g[g.XrefMangleName = 3] = "XrefMangleName", g[g.MangleName = 4] = "MangleName", g))(go || {}), Qo = ((g) => (g.ClosedFilled = "", g.Dot = "_DOT", g.DotSmall = "_DOTSMALL", g.DotBlank = "_DOTBLANK", g.Origin = "_ORIGIN", g.Origin2 = "_ORIGIN2", g.Open = "_OPEN", g.Open90 = "_OPEN90", g.Open30 = "_OPEN30", g.Closed = "_CLOSED", g.Small = "_SMALL", g.None = "_NONE", g.Oblique = "_OBLIQUE", g.BoxFilled = "_BOXFILLED", g.Box = "_BOXBLANK", g.ClosedBlank = "_CLOSEDBLANK", g.DatumBlank = "_DATUMBLANK", g.DatumFilled = "_DATUMFILLED", g.Integral = "_INTEGRAL", g.ArchTick = "_ARCHTICK", g))(Qo || {}), Bo = ((g) => (g[g.Undefined = 0] = "Undefined", g[g.Inches = 1] = "Inches", g[g.Feet = 2] = "Feet", g[g.Miles = 3] = "Miles", g[g.Millimeters = 4] = "Millimeters", g[g.Centimeters = 5] = "Centimeters", g[g.Meters = 6] = "Meters", g[g.Kilometers = 7] = "Kilometers", g[g.Microinches = 8] = "Microinches", g[g.Mils = 9] = "Mils", g[g.Yards = 10] = "Yards", g[g.Angstroms = 11] = "Angstroms", g[g.Nanometers = 12] = "Nanometers", g[g.Microns = 13] = "Microns", g[g.Decimeters = 14] = "Decimeters", g[g.Dekameters = 15] = "Dekameters", g[g.Hectometers = 16] = "Hectometers", g[g.Gigameters = 17] = "Gigameters", g[g.Astronomical = 18] = "Astronomical", g[g.LightYears = 19] = "LightYears", g[g.Parsecs = 20] = "Parsecs", g[g.USSurveyFeet = 21] = "USSurveyFeet", g[g.USSurveyInch = 22] = "USSurveyInch", g[g.USSurveyYard = 23] = "USSurveyYard", g[g.USSurveyMile = 24] = "USSurveyMile", g[g.Max = 24] = "Max", g))(Bo || {}), Co = ((g) => (g[g.Center = 0] = "Center", g[g.Left = 1] = "Left", g[g.Right = 2] = "Right", g[g.OverFirst = 3] = "OverFirst", g[g.OverSecond = 4] = "OverSecond", g))(Co || {}), Io = ((g) => (g[g.Center = 0] = "Center", g[g.Above = 1] = "Above", g[g.Outside = 2] = "Outside", g[g.JIS = 3] = "JIS", g[g.Below = 4] = "Below", g))(Io || {}), Eo = ((g) => (g[g.Feet = 0] = "Feet", g[g.None = 1] = "None", g[g.Inch = 2] = "Inch", g[g.FeetAndInch = 3] = "FeetAndInch", g[g.Leading = 4] = "Leading", g[g.Trailing = 8] = "Trailing", g[g.LeadingAndTrailing = 12] = "LeadingAndTrailing", g))(Eo || {}), Do = ((g) => (g[g.None = 0] = "None", g[g.Leading = 1] = "Leading", g[g.Trailing = 2] = "Trailing", g[g.LeadingAndTrailing = 3] = "LeadingAndTrailing", g))(Do || {}), wo = ((g) => (g[g.Bottom = 0] = "Bottom", g[g.Middle = 1] = "Middle", g[g.Top = 2] = "Top", g))(wo || {}), LA, pQ, kA, FA, uQ, Ag, mg, hg, aA, Mg, gg, rg, Og, Pg, WA, yg, HQ, mQ, vg, ng, OQ, PQ, vQ, XA, Gg, wA, _g, nQ, P, qA, _Q, bA, $Q, Jg, BA, AB, Sg, $g, BC, CC, Bg, gB, AQ, rA, kg, Lg, sg, QB, BB, ag, gQ, QQ, IC, CB, BQ, dg, CQ, sA, Rg, fA, EC, HA, DC, tg, pA, IQ, IB, EQ, uA, Vg, mA, qg, nC, DQ, OA;
2337
+ var ON = ((g) => (g[g.AtLeast = 1] = "AtLeast", g[g.Exactly = 2] = "Exactly", g))(ON || {}), PN = ((g) => (g[g.kInches = 0] = "kInches", g[g.kMillimeters = 1] = "kMillimeters", g[g.kPixels = 2] = "kPixels", g))(PN || {}), vN = ((g) => (g[g.k0degrees = 0] = "k0degrees", g[g.k90degrees = 1] = "k90degrees", g[g.k180degrees = 2] = "k180degrees", g[g.k270degrees = 3] = "k270degrees", g))(vN || {}), nN = ((g) => (g[g.kDisplay = 0] = "kDisplay", g[g.kExtents = 1] = "kExtents", g[g.kLimits = 2] = "kLimits", g[g.kView = 3] = "kView", g[g.kWindow = 4] = "kWindow", g[g.kLayout = 5] = "kLayout", g))(nN || {}), _N = ((g) => (g[g.kDraft = 0] = "kDraft", g[g.kPreview = 1] = "kPreview", g[g.kNormal = 2] = "kNormal", g[g.kPresentation = 3] = "kPresentation", g[g.kMaximum = 4] = "kMaximum", g[g.kCustom = 5] = "kCustom", g))(_N || {}), $N = ((g) => (g[g.kAsDisplayed = 0] = "kAsDisplayed", g[g.kWireframe = 1] = "kWireframe", g[g.kHidden = 2] = "kHidden", g[g.kRendered = 3] = "kRendered", g[g.kVisualStyle = 4] = "kVisualStyle", g[g.kRenderPreset = 5] = "kRenderPreset", g))($N || {}), Ao = ((g) => (g[g.kScaleToFit = 0] = "kScaleToFit", g[g.k1_128in_1ft = 1] = "k1_128in_1ft", g[g.k1_64in_1ft = 2] = "k1_64in_1ft", g[g.k1_32in_1ft = 3] = "k1_32in_1ft", g[g.k1_16in_1ft = 4] = "k1_16in_1ft", g[g.k3_32in_1ft = 5] = "k3_32in_1ft", g[g.k1_8in_1ft = 6] = "k1_8in_1ft", g[g.k3_16in_1ft = 7] = "k3_16in_1ft", g[g.k1_4in_1ft = 8] = "k1_4in_1ft", g[g.k3_8in_1ft = 9] = "k3_8in_1ft", g[g.k1_2in_1ft = 10] = "k1_2in_1ft", g[g.k3_4in_1ft = 11] = "k3_4in_1ft", g[g.k1in_1ft = 12] = "k1in_1ft", g[g.k3in_1ft = 13] = "k3in_1ft", g[g.k6in_1ft = 14] = "k6in_1ft", g[g.k1ft_1ft = 15] = "k1ft_1ft", g[g.k1_1 = 16] = "k1_1", g[g.k1_2 = 17] = "k1_2", g[g.k1_4 = 18] = "k1_4", g[g.k1_5 = 19] = "k1_5", g[g.k1_8 = 20] = "k1_8", g[g.k1_10 = 21] = "k1_10", g[g.k1_16 = 22] = "k1_16", g[g.k1_20 = 23] = "k1_20", g[g.k1_30 = 24] = "k1_30", g[g.k1_40 = 25] = "k1_40", g[g.k1_50 = 26] = "k1_50", g[g.k1_100 = 27] = "k1_100", g[g.k2_1 = 28] = "k2_1", g[g.k4_1 = 29] = "k4_1", g[g.k8_1 = 30] = "k8_1", g[g.k10_1 = 31] = "k10_1", g[g.k100_1 = 32] = "k100_1", g[g.k1000_1 = 33] = "k1000_1", g[g.k1and1_2in_1ft = 34] = "k1and1_2in_1ft", g))(Ao || {}), go = ((g) => (g[g.Any = 0] = "Any", g[g.Uniform = 1] = "Uniform", g))(go || {}), Qo = ((g) => (g[g.NotApplicable = 0] = "NotApplicable", g[g.Ignore = 1] = "Ignore", g[g.Replace = 2] = "Replace", g[g.XrefMangleName = 3] = "XrefMangleName", g[g.MangleName = 4] = "MangleName", g))(Qo || {}), Bo = ((g) => (g.ClosedFilled = "", g.Dot = "_DOT", g.DotSmall = "_DOTSMALL", g.DotBlank = "_DOTBLANK", g.Origin = "_ORIGIN", g.Origin2 = "_ORIGIN2", g.Open = "_OPEN", g.Open90 = "_OPEN90", g.Open30 = "_OPEN30", g.Closed = "_CLOSED", g.Small = "_SMALL", g.None = "_NONE", g.Oblique = "_OBLIQUE", g.BoxFilled = "_BOXFILLED", g.Box = "_BOXBLANK", g.ClosedBlank = "_CLOSEDBLANK", g.DatumBlank = "_DATUMBLANK", g.DatumFilled = "_DATUMFILLED", g.Integral = "_INTEGRAL", g.ArchTick = "_ARCHTICK", g))(Bo || {}), Co = ((g) => (g[g.Center = 0] = "Center", g[g.Left = 1] = "Left", g[g.Right = 2] = "Right", g[g.OverFirst = 3] = "OverFirst", g[g.OverSecond = 4] = "OverSecond", g))(Co || {}), Io = ((g) => (g[g.Center = 0] = "Center", g[g.Above = 1] = "Above", g[g.Outside = 2] = "Outside", g[g.JIS = 3] = "JIS", g[g.Below = 4] = "Below", g))(Io || {}), Eo = ((g) => (g[g.Feet = 0] = "Feet", g[g.None = 1] = "None", g[g.Inch = 2] = "Inch", g[g.FeetAndInch = 3] = "FeetAndInch", g[g.Leading = 4] = "Leading", g[g.Trailing = 8] = "Trailing", g[g.LeadingAndTrailing = 12] = "LeadingAndTrailing", g))(Eo || {}), Do = ((g) => (g[g.None = 0] = "None", g[g.Leading = 1] = "Leading", g[g.Trailing = 2] = "Trailing", g[g.LeadingAndTrailing = 3] = "LeadingAndTrailing", g))(Do || {}), wo = ((g) => (g[g.Bottom = 0] = "Bottom", g[g.Middle = 1] = "Middle", g[g.Top = 2] = "Top", g))(wo || {}), LA, pQ, kA, FA, uQ, Ag, mg, hg, aA, Mg, gg, rg, Og, Pg, WA, yg, HQ, mQ, vg, ng, OQ, PQ, vQ, XA, Gg, wA, _g, nQ, P, qA, _Q, bA, $Q, Jg, BA, AB, Sg, $g, BC, CC, Bg, gB, AQ, rA, kg, Lg, sg, QB, BB, ag, gQ, QQ, IC, CB, BQ, dg, CQ, sA, Rg, fA, EC, HA, DC, tg, pA, IQ, IB, EQ, uA, Vg, mA, qg, nC, DQ, OA;
2336
2338
  (LA = {})[LA.None = 0] = "None", LA[LA.Anonymous = 1] = "Anonymous", LA[LA.NonConstant = 2] = "NonConstant", LA[LA.Xref = 4] = "Xref", LA[LA.XrefOverlay = 8] = "XrefOverlay", LA[LA.ExternallyDependent = 16] = "ExternallyDependent", LA[LA.ResolvedOrDependent = 32] = "ResolvedOrDependent", LA[LA.ReferencedXref = 64] = "ReferencedXref";
2337
2339
  (pQ = {})[pQ.BYBLOCK = 0] = "BYBLOCK", pQ[pQ.BYLAYER = 256] = "BYLAYER";
2338
2340
  (kA = {})[kA.Rotated = 0] = "Rotated", kA[kA.Aligned = 1] = "Aligned", kA[kA.Angular = 2] = "Angular", kA[kA.Diameter = 3] = "Diameter", kA[kA.Radius = 4] = "Radius", kA[kA.Angular3Point = 5] = "Angular3Point", kA[kA.Ordinate = 6] = "Ordinate", kA[kA.ReferenceIsExclusive = 32] = "ReferenceIsExclusive", kA[kA.IsOrdinateXTypeFlag = 64] = "IsOrdinateXTypeFlag", kA[kA.IsCustomTextPositionFlag = 128] = "IsCustomTextPositionFlag";
@@ -1 +1 @@
1
- {"version":3,"file":"AcDbLibreDwgConverter.d.ts","sourceRoot":"","sources":["../src/AcDbLibreDwgConverter.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,8BAA8B,EAC9B,YAAY,EACZ,qBAAqB,EACrB,2BAA2B,EAa3B,qBAAqB,EAiBtB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAIL,WAAW,EAKZ,MAAM,yBAAyB,CAAA;AAMhC;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,qBAAqB,CAAC,WAAW,CAAC;gBAC/D,MAAM,GAAE,2BAAgC;cAQpC,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM;IA6BzD;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,WAAW;IAiCnC;;OAEG;IACH,OAAO,CAAC,eAAe;IAgDvB,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY;IAiB/D,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY;IAShE,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY;IA+E/D,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY;IAmB5D,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY;IA8G/D,SAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY;IA2BjE,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY;YAIhD,sBAAsB;IAkBpC;;;;OAIG;cACa,eAAe,CAC7B,KAAK,EAAE,WAAW,EAClB,EAAE,EAAE,YAAY,EAChB,gBAAgB,EAAE,MAAM,EACxB,eAAe,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EAClC,QAAQ,CAAC,EAAE,8BAA8B;IAgD3C,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY;IA4B5D,OAAO,CAAC,4BAA4B;IAWpC,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY;IAK7D,OAAO,CAAC,cAAc;IAwCtB,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,wBAAwB;IAUhC;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,YAAY;CAGrB"}
1
+ {"version":3,"file":"AcDbLibreDwgConverter.d.ts","sourceRoot":"","sources":["../src/AcDbLibreDwgConverter.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,8BAA8B,EAC9B,YAAY,EACZ,qBAAqB,EACrB,2BAA2B,EAa3B,qBAAqB,EAiBtB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAIL,WAAW,EAKZ,MAAM,yBAAyB,CAAA;AAMhC;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,qBAAqB,CAAC,WAAW,CAAC;gBAC/D,MAAM,GAAE,2BAAgC;cAQpC,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM;IA6BzD;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,WAAW;IAiCnC;;OAEG;IACH,OAAO,CAAC,eAAe;IAgDvB,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY;IAiB/D,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY;IAShE,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY;IA+E/D,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY;IAmB5D,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY;IA8G/D,SAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY;IA2BjE,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY;YAIhD,sBAAsB;IAkBpC;;;;OAIG;cACa,eAAe,CAC7B,KAAK,EAAE,WAAW,EAClB,EAAE,EAAE,YAAY,EAChB,gBAAgB,EAAE,MAAM,EACxB,eAAe,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EAClC,QAAQ,CAAC,EAAE,8BAA8B;IAgD3C,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY;IA8B5D,OAAO,CAAC,4BAA4B;IAWpC,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY;IAK7D,OAAO,CAAC,cAAc;IAwCtB,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,wBAAwB;IAUhC;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,YAAY;CAGrB"}
@@ -580,6 +580,10 @@ var AcDbLibreDwgConverter = /** @class */ (function (_super) {
580
580
  db.lunits = header.LUNITS;
581
581
  if (header.LUPREC != null)
582
582
  db.luprec = header.LUPREC;
583
+ if (header.UNITMODE != null)
584
+ db.unitmode = header.UNITMODE;
585
+ if (header.MEASUREMENT != null)
586
+ db.measurement = header.MEASUREMENT;
583
587
  db.celtype = (_d = header.CELTYPE) !== null && _d !== void 0 ? _d : ByLayer;
584
588
  db.celtscale = (_e = header.CELTSCALE) !== null && _e !== void 0 ? _e : 1;
585
589
  db.ltscale = (_f = header.LTSCALE) !== null && _f !== void 0 ? _f : 1;
@@ -1 +1 @@
1
- {"version":3,"file":"AcDbLibreDwgConverter.js","sourceRoot":"","sources":["../src/AcDbLibreDwgConverter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EACL,SAAS,EACT,mBAAmB,EAEnB,oBAAoB,EAGpB,qBAAqB,EAErB,uBAAuB,EAQvB,oBAAoB,EACpB,UAAU,EACV,uBAAuB,EAGvB,kBAAkB,EAElB,wBAAwB,EACxB,uBAAuB,EAKvB,OAAO,EACP,eAAe,EACf,kBAAkB,EAClB,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,uBAAuB,CAAA;AAY9B,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAE5D,IAAM,WAAW,GAAG,cAAc,CAAA;AAElC;;GAEG;AACH;IAA2C,yCAAkC;IAC3E,+BAAY,MAAwC;QAAxC,uBAAA,EAAA,WAAwC;QAClD,YAAA,MAAK,YAAC,MAAM,CAAC,SAAA;QACb,MAAM,CAAC,SAAS,GAAG,IAAI,CAAA;QACvB,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YAC5B,MAAM,CAAC,eAAe,GAAG,mCAAmC,CAAA;QAC9D,CAAC;;IACH,CAAC;IAEe,qCAAK,GAArB,UAAsB,IAAiB,EAAE,OAAgB;;;;;;wBACjD,eAAe,GAAG,IAAI,CAAC,MAAM,CAAA;wBAC7B,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;6BAE9D,CAAA,eAAe,CAAC,SAAS,IAAI,eAAe,CAAC,eAAe,CAAA,EAA5D,wBAA4D;wBACxD,GAAG,GAAG,eAAe,CAAC;4BAC1B,SAAS,EAAE,eAAe,CAAC,eAAe;4BAC1C,OAAO,EAAE,eAAe;4BACxB,0CAA0C;4BAC1C,oBAAoB,EAAE,CAAC;yBACxB,CAAC,CAAA;wBACa,qBAAM,GAAG,CAAC,OAAO,CAG9B,IAAI,CAAC;4BACP,iBAAiB;0BADV;;wBAHD,MAAM,GAAG,SAGR;wBACP,iBAAiB;wBACjB,GAAG,CAAC,OAAO,EAAE,CAAA;wBACb,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;4BACnB,sBAAO,MAAM,CAAC,IAAK,EAAA;wBACrB,CAAC;6BAAM,CAAC;4BACN,MAAM,IAAI,KAAK,CACb,iDAA0C,MAAM,CAAC,KAAK,MAAG,CAC1D,CAAA;wBACH,CAAC;;4BAED,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;;;;;KAE/D;IAED;;;;OAIG;IACO,wCAAQ,GAAlB,UAAmB,GAAgB;QACjC,0CAA0C;QAC1C,IAAM,QAAQ,GAA0C,IAAI,GAAG,EAAE,CAAA;QACjE,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,UAAA,GAAG;YACzC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QAC7B,CAAC,CAAC,CAAA;QAEF,qFAAqF;QACrF,IAAM,QAAQ,GAAG,IAAI,GAAG,EAAoB,CAAA;QAC5C,IAAM,WAAW,GAAG,UAAC,YAAoB;YACvC,IAAI,YAAY,EAAE,CAAC;gBACjB,IAAM,YAAY,GAAG,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;gBAClD,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;oBACtB,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,WAAW,EAAE,CAAA;gBAC9D,CAAC;qBAAM,CAAC;oBACN,OAAO,YAAY,CAAC,WAAW,EAAE,CAAA;gBACnC,CAAC;YACH,CAAC;QACH,CAAC,CAAA;QACD,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,UAAA,KAAK;YACpC,IAAM,SAAS,GAAa,EAAE,CAAA;YAC9B,IAAI,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YACtC,IAAI,QAAQ;gBAAE,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACtC,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACrC,IAAI,QAAQ;gBAAE,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACtC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;QACrC,CAAC,CAAC,CAAA;QAEF,IAAM,KAAK,GAAgB,IAAI,GAAG,EAAU,CAAA;QAC5C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;QAC7D,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED;;OAEG;IACK,+CAAe,GAAvB,UACE,QAAqB,EACrB,QAA+C,EAC/C,QAA+B,EAC/B,KAAkB;QAJpB,iBA8CC;QAxCC,IAAM,KAAK,GAAG,aAAa,CAAA;QAC3B,QAAQ,CAAC,OAAO,CAAC,UAAA,MAAM;YACrB,IAAI,MAAM,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC;gBAC3B,IAAM,KAAK,GAAG,MAAwB,CACrC;gBAAA,yBAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAE,OAAO,CAAC,UAAA,KAAK;oBAC5C,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;gBACnC,CAAC,CAAC,CAAA;gBACF,IAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;gBAC/C,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CAAC,UAAA,IAAI,IAAI,OAAA,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAf,CAAe,CAAC,CAAA;YAC7C,CAAC;iBAAM,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;gBACjC,IAAM,IAAI,GAAG,MAAuB,CAAA;gBACpC,IAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBAC9C,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CAAC,UAAA,IAAI,IAAI,OAAA,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAf,CAAe,CAAC,CAAA;YAC7C,CAAC;iBAAM,IAAI,MAAM,CAAC,IAAI,IAAI,aAAa,IAAI,MAAM,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC;gBACpE,IAAM,OAAO,GAAG,MAA6C,CAAA;gBAC7D,IAAM,WAAW,GAAG,OAAO,CAAC,WAEf,CAAA;gBACb,IAAM,IAAI,GACR,OAAO,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,CAAA,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAC9D;gBAAA,yBAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAE,OAAO,CAAC,UAAA,KAAK;oBACtC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;gBACnC,CAAC,CAAC,CAAA;gBACF,IAAM,SAAS,GACb,OAAO,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,SAAS,CAAA,KAAK,QAAQ;oBACxC,CAAC,CAAC,WAAW,CAAC,SAAS;oBACvB,CAAC,CAAC,OAAO,OAAO,CAAC,aAAa,KAAK,QAAQ;wBACzC,CAAC,CAAC,OAAO,CAAC,aAAa;wBACvB,CAAC,CAAC,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ;4BACrC,CAAC,CAAC,OAAO,CAAC,SAAS;4BACnB,CAAC,CAAC,SAAS,CAAA;gBACnB,IAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;gBACjE,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CAAC,UAAA,IAAI,IAAI,OAAA,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAf,CAAe,CAAC,CAAA;YAC7C,CAAC;iBAAM,IAAI,MAAM,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;gBACnC,IAAM,MAAM,GAAG,MAAyB,CAAA;gBACxC,IAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;gBACvC,IAAI,KAAK;oBACP,KAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;YACnE,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAES,gDAAgB,GAA1B,UAA2B,KAAkB,EAAE,EAAgB;QAA/D,iBAeC;QAdC,IAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAA;QAC5C,SAAS,CAAC,OAAO,CAAC,UAAA,IAAI;YACpB,IAAM,QAAQ,GAAsB;gBAClC,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;gBAC3C,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAA;YACD,IAAM,MAAM,GAAG,IAAI,uBAAuB,CAAC,QAAQ,CAAC,CAAA;YACpD,KAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YAC/C,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;YACvB,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACrC,CAAC,CAAC,CAAA;IACJ,CAAC;IAES,iDAAiB,GAA3B,UAA4B,KAAkB,EAAE,EAAgB;QAAhE,iBAOC;QANC,IAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAA;QAC7C,UAAU,CAAC,OAAO,CAAC,UAAA,IAAI;YACrB,IAAM,MAAM,GAAG,IAAI,wBAAwB,CAAC,IAAI,CAAC,CAAA;YACjD,KAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YAC/C,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACtC,CAAC,CAAC,CAAA;IACJ,CAAC;IAES,gDAAgB,GAA1B,UAA2B,KAAkB,EAAE,EAAgB;QAA/D,iBA6EC;QA5EC,IAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAA;QAC/C,SAAS,CAAC,OAAO,CAAC,UAAA,IAAI;YACpB,IAAM,KAAK,GAAiC;gBAC1C,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO,EAAE,IAAI,CAAC,WAAW;gBACzB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;gBAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;gBAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvD,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvD,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvD,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvD,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvD,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvD,MAAM,EAAE,IAAI,CAAC,MAA+C;gBAC5D,MAAM,EAAE,IAAI,CAAC,MAAgD;gBAC7D,OAAO,EAAE,IAAI,CAAC,OAAwD;gBACtE,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,CAAC;gBAC1B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,CAAC;gBAC1B,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,GAAG;gBAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC;gBAC5B,OAAO,EAAE,IAAI,CAAC,OAAkD;gBAChE,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,OAAO,EAAE,IAAI,CAAC,OAAyD;gBACvE,OAAO,EAAE,IAAI,CAAC,OAAiD;gBAC/D,OAAO,EAAE,IAAI,CAAC,OAAiD;gBAC/D,QAAQ,EAAE,IAAI,CAAC,QAAkD;gBACjE,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,CAAC;gBACxB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,QAAQ,EAAE,kBAAkB,EAAE,0BAA0B;gBACxD,SAAS,EAAE,EAAE,EAAE,0BAA0B;gBACzC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,0BAA0B;gBACrD,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,0BAA0B;gBACvD,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,0BAA0B;gBACvD,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAA;YACD,IAAM,MAAM,GAAG,IAAI,uBAAuB,CAAC,KAAK,CAAC,CAAA;YACjD,KAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YAC/C,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACrC,CAAC,CAAC,CAAA;IACJ,CAAC;IAES,6CAAa,GAAvB,UAAwB,KAAkB,EAAE,EAAgB;QAA5D,iBAiBC;QAhBC,IAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAA;QACzC,MAAM,CAAC,OAAO,CAAC,UAAA,IAAI;YACjB,IAAM,KAAK,GAAG,IAAI,SAAS,EAAE,CAAA;YAC7B,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;YAClC,IAAM,MAAM,GAAG,IAAI,oBAAoB,CAAC;gBACtC,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,aAAa,EAAE,IAAI,CAAC,YAAY;gBAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,KAAK,EAAE,IAAI,CAAC,GAAG;gBACf,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC;aAChC,CAAC,CAAA;YACF,KAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YAC/C,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAClC,CAAC,CAAC,CAAA;IACJ,CAAC;IAES,gDAAgB,GAA1B,UAA2B,KAAkB,EAAE,EAAgB;QAA/D,iBA4GC;QA3GC,IAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAA;QAC5C,SAAS,CAAC,OAAO,CAAC,UAAA,IAAI;;YACpB,IAAM,MAAM,GAAG,IAAI,uBAAuB,EAAE,CAAA;YAC5C,KAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YAC/C,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;YACvC,CAAC;YACD,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAA;YACvC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAA,IAAI,CAAC,MAAM,mCAAI,wBAAwB,CAAC,CAAA;YAC3D,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,MAAA,IAAI,CAAC,eAAe,mCAAI,kBAAkB,CAAC,CAAA;YACvE,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAA,IAAI,CAAC,gBAAgB,mCAAI,kBAAkB,CAAC,CAAA;YACzE,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YAC1C,CAAC;YACD,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC3B,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAA;YAC3C,CAAC;YACD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAC9C,CAAC;YACD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc,CAAA;YACxC,CAAC;YACD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAC9C,CAAC;YACD,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC5B,MAAM,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAA;YACrD,CAAC;YAED,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAA,IAAI,CAAC,MAAM,mCAAI,wBAAwB,CAAC,CAAA;YAClE,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,IAAI,CACxC,MAAA,IAAI,CAAC,uBAAuB,mCAAI,uBAAuB,CACxD,CAAA;YACD,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAC3B,MAAA,IAAI,CAAC,UAAU,mCAAI,0BAA0B,CAC9C,CAAA;YACD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;YAC5C,CAAC;YACD,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC5B,MAAM,CAAC,MAAM,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAA;YAC5D,CAAC;YACD,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC3B,MAAM,CAAC,MAAM,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAA;YAC1D,CAAC;YACD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;YAC5C,CAAC;YACD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,MAAM,CAAC,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAA;YACpD,CAAC;YACD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACtB,MAAM,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAA;YAChD,CAAC;YACD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;YAC5C,CAAC;YACD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAuC,CAAA;YACzE,CAAC;YACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,MAAM,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;YACxC,CAAC;YACD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,MAAM,CAAC,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAA;YACpD,CAAC;YACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAC9C,CAAC;YACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC5C,CAAC;YACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC5C,CAAC;YACD,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC1B,MAAM,CAAC,MAAM,CAAC,gBAAgB;oBAC5B,IAAI,CAAC,gBAAmD,CAAA;YAC5D,CAAC;YACD,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC1B,MAAM,CAAC,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAA;YACxD,CAAC;YACD,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC3B,MAAM,CAAC,MAAM,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAA;YAC1D,CAAC;YACD,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC7B,MAAM,CAAC,MAAM,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAA;YAC9D,CAAC;YACD,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC7B,MAAM,CAAC,MAAM,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAA;YAC9D,CAAC;YACD,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC7B,MAAM,CAAC,MAAM,CAAC,mBAAmB;oBAC/B,IAAI,CAAC,mBAAyD,CAAA;YAClE,CAAC;YACD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;YAC5C,CAAC;YACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,MAAM,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;YACxC,CAAC;YACD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACtB,MAAM,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAA;YAChD,CAAC;YACD,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACrC,CAAC,CAAC,CAAA;IACJ,CAAC;IAES,kDAAkB,GAA5B,UAA6B,KAAkB,EAAE,EAAgB;QAAjE,iBAyBC;QAxBC,IAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAA;QAC9C,IAAI,CAAC,OAAO,CAAC,UAAA,GAAG;YACd,IAAI,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YAClD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,GAAG,IAAI,oBAAoB,EAAE,CAAA;gBACpC,OAAO,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAA;gBAC7B,OAAO,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;gBACvB,OAAO,CAAC,OAAO,GAAG,GAAG,CAAC,WAAW,CAAA;gBACjC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;gBAClC,OAAO,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAA;gBAC7B,OAAO,CAAC,gBAAgB,GAAG,GAAG,CAAC,cAAc,CAAA;gBAC7C,OAAO,CAAC,aAAa,GAAG,GAAG,CAAC,aAAa,CAAA;gBACzC,OAAO,CAAC,YAAY,GAAG,GAAG,CAAC,WAA+B,CAAA;gBAC1D,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;oBACnB,OAAO,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAA;gBACrC,CAAC;gBACD,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YACnC,CAAC;YAED,yEAAyE;YACzE,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrE,KAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;YACpD,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAES,6CAAa,GAAvB,UAAwB,MAAmB,EAAE,GAAiB;QAC5D,kFAAkF;IACpF,CAAC;IAEa,sDAAsB,GAApC,UACE,QAAqB,EACrB,gBAAsC;;;;gBAEhC,SAAS,GAAG,IAAI,mBAAmB,EAAE,CAAA;gBACrC,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAA;gBAC7B,UAAU,GAAiB,EAAE,CAAA;gBACnC,KAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC/B,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;oBACpB,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;oBAC1C,IAAI,QAAQ,EAAE,CAAC;wBACb,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;oBAC3B,CAAC;gBACH,CAAC;gBACD,0CAA0C;gBAC1C,gBAAgB,CAAC,YAAY,CAAC,UAAU,CAAC,CAAA;;;;KAC1C;IAED;;;;OAIG;IACa,+CAAe,GAA/B,UACE,KAAkB,EAClB,EAAgB,EAChB,gBAAwB,EACxB,eAAkC,EAClC,QAAyC;;;;;;;wBAEnC,SAAS,GAAG,IAAI,mBAAmB,EAAE,CAAA;wBAGvC,QAAQ,GAAgB,EAAE,CAAA;wBAC9B,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,UAAA,GAAG;4BAC3C,IAAI,KAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;gCAAE,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAA;wBAC1D,CAAC,CAAC,CAAA;wBAGI,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAA;wBAC7B,cAAc,GAAG,IAAI,mBAAmB,CAC5C,WAAW,EACX,GAAG,GAAG,eAAe,CAAC,KAAK,EAC3B,gBAAgB,CACjB,CAAA;wBACD,wFAAwF;wBACxF,IAAI,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC;4BACpC,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAA;wBACjD,CAAC;wBAGK,gBAAgB,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAA;wBACxD,qBAAM,cAAc,CAAC,YAAY,CAAC,UAAO,KAAK,EAAE,GAAG;;;;;4CAE3C,UAAU,GAAiB,EAAE,CAAA;4CACnC,KAAS,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;gDAC3B,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;gDACpB,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;gDAC1C,IAAI,QAAQ,EAAE,CAAC;oDACb,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;gDAC3B,CAAC;4CACH,CAAC;4CACD,0CAA0C;4CAC1C,gBAAgB,CAAC,YAAY,CAAC,UAAU,CAAC,CAAA;iDAGrC,QAAQ,EAAR,wBAAQ;4CACN,UAAU,GACZ,eAAe,CAAC,KAAK;gDACrB,CAAC,GAAG,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,GAAG,eAAe,CAAC,KAAK,CAAC,CAAA;4CACrD,IAAI,UAAU,GAAG,GAAG;gDAAE,UAAU,GAAG,GAAG,CAAA;4CACtC,qBAAM,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAA;;4CAAnD,SAAmD,CAAA;;;;;iCAEtD,CAAC,EAAA;;wBArBF,SAqBE,CAAA;;;;;KACH;IAES,6CAAa,GAAvB,UAAwB,KAAkB,EAAE,EAAgB;;QAC1D,IAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;QAC3B,+BAA+B;QAC/B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,GAAG,EAAE,CAAC;gBAC7D,EAAE,CAAC,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAA;YAC9C,CAAC;iBAAM,CAAC;gBACN,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAC5C,CAAC;QACH,CAAC;QACD,EAAE,CAAC,OAAO,GAAG,MAAA,MAAM,CAAC,OAAO,mCAAI,CAAC,CAAA;QAChC,EAAE,CAAC,MAAM,GAAG,MAAA,MAAM,CAAC,MAAM,mCAAI,CAAC,CAAA;QAC9B,EAAE,CAAC,MAAM,GAAG,MAAA,MAAM,CAAC,MAAM,mCAAI,CAAC,CAAA;QAC9B,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI;YAAE,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;QACpD,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI;YAAE,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;QACpD,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI;YAAE,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;QACpD,EAAE,CAAC,OAAO,GAAG,MAAA,MAAM,CAAC,OAAO,mCAAI,OAAO,CAAA;QACtC,EAAE,CAAC,SAAS,GAAG,MAAA,MAAM,CAAC,SAAS,mCAAI,CAAC,CAAA;QACpC,EAAE,CAAC,OAAO,GAAG,MAAA,MAAM,CAAC,OAAO,mCAAI,CAAC,CAAA;QAChC,IAAI,MAAM,CAAC,MAAO;YAAE,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;QAC7C,IAAI,MAAM,CAAC,MAAM;YAAE,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;QAC5C,wDAAwD;QACxD,EAAE,CAAC,QAAQ,GAAG,MAAA,MAAM,CAAC,QAAQ,mCAAI,CAAC,CAAA;QAClC,EAAE,CAAC,MAAM,GAAG,MAAA,MAAM,CAAC,MAAM,mCAAI,CAAC,CAAA;QAC9B,EAAE,CAAC,MAAM,GAAG,MAAA,MAAM,CAAC,MAAM,mCAAI,GAAG,CAAA;QAChC,EAAE,CAAC,SAAS,GAAG,MAAA,MAAM,CAAC,SAAS,mCAAI,kBAAkB,CAAA;IACvD,CAAC;IAEO,4DAA4B,GAApC,UACE,KAA0B,EAC1B,OAA8B;QAE9B,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;QACzB,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAA;QAC/B,IAAI,KAAK,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;YAC9B,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC,WAAW,CAAA;QACrC,CAAC;IACH,CAAC;IAES,8CAAc,GAAxB,UAAyB,KAAkB,EAAE,EAAgB;QAC3D,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAC9B,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IAClC,CAAC;IAEO,8CAAc,GAAtB,UAAuB,KAAkB,EAAE,EAAgB;QAA3D,iBAsCC;QArCC,IAAM,UAAU,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAA;QACpC,IAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAA;QACpC,OAAO,CAAC,OAAO,CAAC,UAAA,MAAM;;YACpB,IAAM,QAAQ,GAAG,IAAI,UAAU,EAAE,CAAA;YACjC,QAAQ,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAA;YACvC,QAAQ,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;YAEnC,mFAAmF;YACnF,kFAAkF;YAClF,IAAM,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,CAAA;YAC/C,QAAQ,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAA;;gBACjC,KAAkB,IAAA,SAAA,SAAA,IAAI,CAAA,0BAAA,4CAAE,CAAC;oBAApB,IAAM,GAAG,iBAAA;oBACZ,oFAAoF;oBACpF,iFAAiF;oBACjF,wDAAwD;oBACxD,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ,EAAE,CAAC;wBACvC,QAAQ,CAAC,kBAAkB,GAAG,GAAG,CAAC,QAAQ,CAAA;wBAC1C,MAAK;oBACP,CAAC;gBACH,CAAC;;;;;;;;;YACD,2EAA2E;YAC3E,mDAAmD;YACnD,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC;gBACjC,IAAI,MAAM,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;oBAClC,QAAQ,CAAC,kBAAkB,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAA;gBACxE,CAAC;YACH,CAAC;YACD,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YACzC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YACzC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;YAC3C,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;YAC3C,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACtB,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;YAChD,CAAC;YACD,KAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;YAC/C,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QACjD,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,gDAAgB,GAAxB,UAAyB,KAAkB,EAAE,EAAgB;QAA7D,iBASC;QARC,IAAM,YAAY,GAAG,EAAE,CAAC,OAAO,CAAC,eAAe,CAAA;QAC/C,IAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAA;QACxC,SAAS,CAAC,OAAO,CAAC,UAAA,QAAQ;YACxB,IAAM,UAAU,GAAG,IAAI,kBAAkB,EAAE,CAAA;YAC3C,UAAU,CAAC,cAAc,GAAG,QAAQ,CAAC,QAAQ,CAAA;YAC7C,KAAI,CAAC,wBAAwB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;YACnD,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;QACrD,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,wDAAwB,GAAhC,UACE,MAAuB,EACvB,QAAoB;QAEpB,QAAQ,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAA;QACjC,IAAI,MAAM,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;YAC/B,QAAQ,CAAC,OAAO,GAAG,MAAM,CAAC,WAAW,CAAA;QACvC,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,qDAAqB,GAA7B,UAA8B,QAAqB;;QACjD,IAAM,MAAM,GAAgC,EAAE,CAAA;QAC9C,IAAM,KAAK,GAAa,EAAE,CAAA;;YAE1B,KAAqB,IAAA,aAAA,SAAA,QAAQ,CAAA,kCAAA,wDAAE,CAAC;gBAA3B,IAAM,MAAM,qBAAA;gBACf,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;oBACzB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;oBACxB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;gBACzB,CAAC;gBACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAClC,CAAC;;;;;;;;;QAED,OAAO,KAAK,CAAC,OAAO,CAAC,UAAA,IAAI,IAAI,OAAA,MAAM,CAAC,IAAI,CAAC,EAAZ,CAAY,CAAC,CAAA;IAC5C,CAAC;IAEO,4CAAY,GAApB,UAAqB,IAAY;QAC/B,OAAO,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,IAAI,WAAW,CAAA;IAClD,CAAC;IACH,4BAAC;AAAD,CAAC,AA5lBD,CAA2C,qBAAqB,GA4lB/D"}
1
+ {"version":3,"file":"AcDbLibreDwgConverter.js","sourceRoot":"","sources":["../src/AcDbLibreDwgConverter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mlightcad/libredwg-converter",
3
- "version": "3.5.35",
3
+ "version": "3.5.36",
4
4
  "type": "module",
5
5
  "repository": {
6
6
  "type": "git",
@@ -39,7 +39,7 @@
39
39
  "vite": "^5.2.10"
40
40
  },
41
41
  "peerDependencies": {
42
- "@mlightcad/data-model": "1.7.35"
42
+ "@mlightcad/data-model": "1.7.36"
43
43
  },
44
44
  "scripts": {
45
45
  "analyze": "pnpm run analyze:lib && pnpm run analyze:worker",