@mlightcad/data-model 1.12.3 → 1.12.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/README.md +4 -9
  2. package/dist/data-model.cjs +13 -13
  3. package/lib/converter/AcDbRegenerator.d.ts +0 -6
  4. package/lib/converter/AcDbRegenerator.d.ts.map +1 -1
  5. package/lib/converter/AcDbRegenerator.js +0 -8
  6. package/lib/converter/AcDbRegenerator.js.map +1 -1
  7. package/lib/converter/index.d.ts +0 -2
  8. package/lib/converter/index.d.ts.map +1 -1
  9. package/lib/converter/index.js +0 -1
  10. package/lib/converter/index.js.map +1 -1
  11. package/lib/database/AcDbBlockTable.d.ts.map +1 -1
  12. package/lib/database/AcDbBlockTable.js +4 -1
  13. package/lib/database/AcDbBlockTable.js.map +1 -1
  14. package/lib/database/AcDbDatabase.d.ts +1 -78
  15. package/lib/database/AcDbDatabase.d.ts.map +1 -1
  16. package/lib/database/AcDbDatabase.js +30 -111
  17. package/lib/database/AcDbDatabase.js.map +1 -1
  18. package/lib/database/AcDbDatabaseConverter.d.ts +32 -16
  19. package/lib/database/AcDbDatabaseConverter.d.ts.map +1 -1
  20. package/lib/database/AcDbDatabaseConverter.js +10 -26
  21. package/lib/database/AcDbDatabaseConverter.js.map +1 -1
  22. package/lib/database/AcDbDatabaseConverterManager.d.ts +2 -2
  23. package/lib/database/AcDbDatabaseConverterManager.js +2 -2
  24. package/lib/database/AcDbSymbolTable.d.ts.map +1 -1
  25. package/lib/database/AcDbSymbolTable.js +3 -1
  26. package/lib/database/AcDbSymbolTable.js.map +1 -1
  27. package/lib/database/AcDbSystemVariables.d.ts +1 -1
  28. package/lib/database/AcDbSystemVariables.js +1 -1
  29. package/lib/database/AcDbTextStyleTable.d.ts +7 -0
  30. package/lib/database/AcDbTextStyleTable.d.ts.map +1 -1
  31. package/lib/database/AcDbTextStyleTable.js +18 -3
  32. package/lib/database/AcDbTextStyleTable.js.map +1 -1
  33. package/lib/database/AcDbViewportTable.d.ts.map +1 -1
  34. package/lib/database/AcDbViewportTable.js +4 -1
  35. package/lib/database/AcDbViewportTable.js.map +1 -1
  36. package/lib/database/index.d.ts +2 -2
  37. package/lib/database/index.d.ts.map +1 -1
  38. package/lib/database/index.js.map +1 -1
  39. package/lib/dxf/AcDbDxfDocumentReader.d.ts +1 -18
  40. package/lib/dxf/AcDbDxfDocumentReader.d.ts.map +1 -1
  41. package/lib/dxf/AcDbDxfDocumentReader.js +13 -102
  42. package/lib/dxf/AcDbDxfDocumentReader.js.map +1 -1
  43. package/lib/dxf/AcDbNativeDxfConverter.d.ts +6 -8
  44. package/lib/dxf/AcDbNativeDxfConverter.d.ts.map +1 -1
  45. package/lib/dxf/AcDbNativeDxfConverter.js +45 -57
  46. package/lib/dxf/AcDbNativeDxfConverter.js.map +1 -1
  47. package/lib/entity/AcDb2dPolyline.d.ts +6 -0
  48. package/lib/entity/AcDb2dPolyline.d.ts.map +1 -1
  49. package/lib/entity/AcDb2dPolyline.js +12 -0
  50. package/lib/entity/AcDb2dPolyline.js.map +1 -1
  51. package/lib/entity/AcDb3dPolyline.d.ts +6 -0
  52. package/lib/entity/AcDb3dPolyline.d.ts.map +1 -1
  53. package/lib/entity/AcDb3dPolyline.js +12 -0
  54. package/lib/entity/AcDb3dPolyline.js.map +1 -1
  55. package/lib/entity/AcDbArc.d.ts +7 -0
  56. package/lib/entity/AcDbArc.d.ts.map +1 -1
  57. package/lib/entity/AcDbArc.js +22 -3
  58. package/lib/entity/AcDbArc.js.map +1 -1
  59. package/lib/entity/AcDbBlockReference.d.ts.map +1 -1
  60. package/lib/entity/AcDbBlockReference.js +5 -1
  61. package/lib/entity/AcDbBlockReference.js.map +1 -1
  62. package/lib/entity/AcDbCircle.d.ts +6 -0
  63. package/lib/entity/AcDbCircle.d.ts.map +1 -1
  64. package/lib/entity/AcDbCircle.js +17 -2
  65. package/lib/entity/AcDbCircle.js.map +1 -1
  66. package/lib/entity/AcDbEllipse.d.ts +6 -0
  67. package/lib/entity/AcDbEllipse.d.ts.map +1 -1
  68. package/lib/entity/AcDbEllipse.js +12 -0
  69. package/lib/entity/AcDbEllipse.js.map +1 -1
  70. package/lib/entity/AcDbEntity.d.ts +13 -1
  71. package/lib/entity/AcDbEntity.d.ts.map +1 -1
  72. package/lib/entity/AcDbEntity.js +18 -0
  73. package/lib/entity/AcDbEntity.js.map +1 -1
  74. package/lib/entity/AcDbFace.d.ts +6 -0
  75. package/lib/entity/AcDbFace.d.ts.map +1 -1
  76. package/lib/entity/AcDbFace.js +12 -0
  77. package/lib/entity/AcDbFace.js.map +1 -1
  78. package/lib/entity/AcDbHatch.d.ts +13 -0
  79. package/lib/entity/AcDbHatch.d.ts.map +1 -1
  80. package/lib/entity/AcDbHatch.js +44 -5
  81. package/lib/entity/AcDbHatch.js.map +1 -1
  82. package/lib/entity/AcDbLeader.d.ts +6 -0
  83. package/lib/entity/AcDbLeader.d.ts.map +1 -1
  84. package/lib/entity/AcDbLeader.js +12 -0
  85. package/lib/entity/AcDbLeader.js.map +1 -1
  86. package/lib/entity/AcDbLine.d.ts +6 -0
  87. package/lib/entity/AcDbLine.d.ts.map +1 -1
  88. package/lib/entity/AcDbLine.js +12 -0
  89. package/lib/entity/AcDbLine.js.map +1 -1
  90. package/lib/entity/AcDbPoint.d.ts +7 -0
  91. package/lib/entity/AcDbPoint.d.ts.map +1 -1
  92. package/lib/entity/AcDbPoint.js +15 -0
  93. package/lib/entity/AcDbPoint.js.map +1 -1
  94. package/lib/entity/AcDbPolyline.d.ts +11 -0
  95. package/lib/entity/AcDbPolyline.d.ts.map +1 -1
  96. package/lib/entity/AcDbPolyline.js +28 -0
  97. package/lib/entity/AcDbPolyline.js.map +1 -1
  98. package/lib/entity/AcDbRay.d.ts +6 -0
  99. package/lib/entity/AcDbRay.d.ts.map +1 -1
  100. package/lib/entity/AcDbRay.js +12 -0
  101. package/lib/entity/AcDbRay.js.map +1 -1
  102. package/lib/entity/AcDbSpline.d.ts +6 -0
  103. package/lib/entity/AcDbSpline.d.ts.map +1 -1
  104. package/lib/entity/AcDbSpline.js +12 -0
  105. package/lib/entity/AcDbSpline.js.map +1 -1
  106. package/lib/entity/AcDbTable.d.ts +9 -0
  107. package/lib/entity/AcDbTable.d.ts.map +1 -1
  108. package/lib/entity/AcDbTable.js +26 -1
  109. package/lib/entity/AcDbTable.js.map +1 -1
  110. package/lib/entity/AcDbTrace.d.ts +6 -0
  111. package/lib/entity/AcDbTrace.d.ts.map +1 -1
  112. package/lib/entity/AcDbTrace.js +12 -0
  113. package/lib/entity/AcDbTrace.js.map +1 -1
  114. package/lib/entity/AcDbXline.d.ts +6 -0
  115. package/lib/entity/AcDbXline.d.ts.map +1 -1
  116. package/lib/entity/AcDbXline.js +12 -0
  117. package/lib/entity/AcDbXline.js.map +1 -1
  118. package/lib/index.d.ts +3 -3
  119. package/lib/index.d.ts.map +1 -1
  120. package/lib/index.js +1 -1
  121. package/lib/index.js.map +1 -1
  122. package/lib/misc/AcDbRenderingCache.d.ts +22 -6
  123. package/lib/misc/AcDbRenderingCache.d.ts.map +1 -1
  124. package/lib/misc/AcDbRenderingCache.js +138 -42
  125. package/lib/misc/AcDbRenderingCache.js.map +1 -1
  126. package/package.json +4 -4
  127. package/lib/converter/AcDbFontNameCollector.d.ts +0 -88
  128. package/lib/converter/AcDbFontNameCollector.d.ts.map +0 -1
  129. package/lib/converter/AcDbFontNameCollector.js +0 -339
  130. package/lib/converter/AcDbFontNameCollector.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"AcDbRenderingCache.d.ts","sourceRoot":"","sources":["../../src/misc/AcDbRenderingCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AcDbRenderingCache.d.ts","sourceRoot":"","sources":["../../src/misc/AcDbRenderingCache.ts"],"names":[],"mappings":"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"}
@@ -88,8 +88,10 @@ var emptyProfileStats = function () { return ({
88
88
  * Blocks that contain ByBlock entities still key by block name and color because
89
89
  * different INSERT colors produce different materials.
90
90
  *
91
- * Templates are compacted (same-material leaves merged) before caching so each
92
- * INSERT clones O(material) geometries instead of O(entity) geometries.
91
+ * Templates may be compacted (same-material leaves merged) before or on first
92
+ * reuse so each INSERT clones O(material) geometries instead of O(entity)
93
+ * geometries. Mid-size templates defer compaction until the first cache hit so
94
+ * one-shot blocks skip merge work; tiny templates never compact.
93
95
  *
94
96
  * @internal
95
97
  *
@@ -195,12 +197,15 @@ var AcDbRenderingCache = /** @class */ (function () {
195
197
  /**
196
198
  * Stores rendering results of a block in the cache.
197
199
  *
198
- * Deep-clones `group` so later mutations of the live instance cannot corrupt
199
- * the cached template.
200
+ * Stores `group` by reference as an immutable template. Callers must not
201
+ * mutate the stored object after this call; {@link get} / miss-path draws
202
+ * return {@link AcGiEntity.fastDeepClone} instances for scene use. Compacted
203
+ * templates share geometry buffers across clones (see three-renderer
204
+ * `AcTrGroup.fastDeepClone`).
200
205
  *
201
206
  * @param key - The key for the rendering results
202
207
  * @param group - The rendering results to store
203
- * @returns The stored rendering results (deep cloned)
208
+ * @returns The stored rendering results (same reference as `group`)
204
209
  *
205
210
  * @example
206
211
  * ```typescript
@@ -208,18 +213,8 @@ var AcDbRenderingCache = /** @class */ (function () {
208
213
  * ```
209
214
  */
210
215
  AcDbRenderingCache.prototype.set = function (key, group) {
211
- if (AcDbRenderingCache.profiling) {
212
- var t0 = performance.now();
213
- group = group.fastDeepClone();
214
- var dt = performance.now() - t0;
215
- AcDbRenderingCache._profileStats.setCloneMs += dt;
216
- if (AcDbRenderingCache._drawDepth === 1) {
217
- AcDbRenderingCache._profileStats.topLevel.setCloneMs += dt;
218
- }
219
- }
220
- else {
221
- group = group.fastDeepClone();
222
- }
216
+ // Templates are immutable after insert. Avoid a deep clone here — miss
217
+ // path returns a per-INSERT clone, and compacted clones share buffers.
223
218
  this._blocks.set(key, group);
224
219
  return group;
225
220
  };
@@ -227,7 +222,8 @@ var AcDbRenderingCache = /** @class */ (function () {
227
222
  * Gets rendering results with the specified key.
228
223
  *
229
224
  * Returns a deep clone so callers can transform the instance without
230
- * mutating the cached template.
225
+ * mutating the cached template. Compacted templates share geometry buffers
226
+ * with the clone (Object3D wrappers are still unique per INSERT).
231
227
  *
232
228
  * @param name - The key of the rendering results
233
229
  * @returns The cloned rendering results, or `undefined` if not found
@@ -241,22 +237,33 @@ var AcDbRenderingCache = /** @class */ (function () {
241
237
  * ```
242
238
  */
243
239
  AcDbRenderingCache.prototype.get = function (name) {
244
- var block = this._blocks.get(name);
245
- if (block) {
246
- if (AcDbRenderingCache.profiling) {
247
- var t0 = performance.now();
248
- block = block.fastDeepClone();
249
- var dt = performance.now() - t0;
250
- AcDbRenderingCache._profileStats.cloneMs += dt;
240
+ var template = this._blocks.get(name);
241
+ if (!template) {
242
+ return undefined;
243
+ }
244
+ // Compact mid-size templates on first reuse so one-shot blocks never pay
245
+ // compactForInstancing, while repeated INSERTs still clone O(material) leaves.
246
+ if (AcDbRenderingCache.profiling) {
247
+ var tCompact0 = performance.now();
248
+ var compacted = this.maybeCompactTemplate(template, true);
249
+ if (compacted) {
250
+ var dt_1 = performance.now() - tCompact0;
251
+ AcDbRenderingCache._profileStats.missCompactMs += dt_1;
251
252
  if (AcDbRenderingCache._drawDepth === 1) {
252
- AcDbRenderingCache._profileStats.topLevel.cloneMs += dt;
253
+ AcDbRenderingCache._profileStats.topLevel.missCompactMs += dt_1;
253
254
  }
254
255
  }
255
- else {
256
- block = block.fastDeepClone();
256
+ var t0 = performance.now();
257
+ var block = template.fastDeepClone();
258
+ var dt = performance.now() - t0;
259
+ AcDbRenderingCache._profileStats.cloneMs += dt;
260
+ if (AcDbRenderingCache._drawDepth === 1) {
261
+ AcDbRenderingCache._profileStats.topLevel.cloneMs += dt;
257
262
  }
263
+ return block;
258
264
  }
259
- return block;
265
+ this.maybeCompactTemplate(template, true);
266
+ return template.fastDeepClone();
260
267
  };
261
268
  /**
262
269
  * Checks if rendering results with the specified key exist in the cache.
@@ -495,15 +502,17 @@ var AcDbRenderingCache = /** @class */ (function () {
495
502
  stats.topLevel.missBuildMs += buildMs;
496
503
  }
497
504
  }
498
- // Merge same-material leaves before caching so INSERT clones are cheap.
499
- // Tiny templates gain little from merging and still pay syncDraw +
500
- // classify cost across thousands of one-off anonymous blocks.
505
+ // Adaptive compact for cached templates only:
506
+ // - Tiny: never compact.
507
+ // - Huge: compact eagerly on miss (clone cost dominates).
508
+ // - Mid-size: defer until first cache hit so one-shot blocks skip it.
509
+ // Anonymous *U / cache:false draws are one-shot — never compact.
501
510
  var compactMs = 0;
502
- if ((block_1 === null || block_1 === void 0 ? void 0 : block_1.compactForInstancing) &&
503
- entityChildCount(block_1) >= MIN_CHILDREN_TO_COMPACT) {
511
+ var willCache = !!cache && !!blockName && !blockName.startsWith('*U');
512
+ if (block_1 && willCache) {
504
513
  var tCompact0 = profile ? performance.now() : 0;
505
- block_1.compactForInstancing();
506
- if (profile) {
514
+ var compacted = this.maybeCompactTemplate(block_1, false);
515
+ if (profile && compacted) {
507
516
  compactMs = performance.now() - tCompact0;
508
517
  stats.missCompactMs += compactMs;
509
518
  if (isTop) {
@@ -513,10 +522,22 @@ var AcDbRenderingCache = /** @class */ (function () {
513
522
  }
514
523
  key = this.createCacheKey(blockName, blockColor, sawByBlockColor);
515
524
  var setCloneBefore = profile ? stats.setCloneMs : 0;
516
- if (block_1 && cache) {
517
- // Transient anonymous blocks (*U…) are not reused across INSERTs.
518
- if (blockName && !blockName.startsWith('*U')) {
519
- this.set(key, block_1);
525
+ if (block_1 && willCache) {
526
+ prepareCacheTemplate(block_1);
527
+ // Store the immutable template by reference, then hand the scene a
528
+ // per-INSERT clone so applyMatrix cannot mutate the cache entry.
529
+ this.set(key, block_1);
530
+ if (profile) {
531
+ var tClone0 = performance.now();
532
+ block_1 = block_1.fastDeepClone();
533
+ var dt = performance.now() - tClone0;
534
+ stats.setCloneMs += dt;
535
+ if (isTop) {
536
+ stats.topLevel.setCloneMs += dt;
537
+ }
538
+ }
539
+ else {
540
+ block_1 = block_1.fastDeepClone();
520
541
  }
521
542
  }
522
543
  if (profile) {
@@ -668,6 +689,28 @@ var AcDbRenderingCache = /** @class */ (function () {
668
689
  target.layerName = source.layer;
669
690
  target.visible = source.visibility;
670
691
  };
692
+ /**
693
+ * Optionally runs {@link AcGiEntity.compactForInstancing} using the adaptive
694
+ * thresholds in {@link shouldCompactTemplate}.
695
+ *
696
+ * @param entity - Block template group to consider compacting.
697
+ * @param onCacheHit - When true, mid-size templates become eligible (first
698
+ * reuse). When false, only huge templates compact eagerly on miss.
699
+ * @returns `true` when compaction ran.
700
+ */
701
+ AcDbRenderingCache.prototype.maybeCompactTemplate = function (entity, onCacheHit) {
702
+ if (!entity.compactForInstancing) {
703
+ return false;
704
+ }
705
+ if (isTemplateCompacted(entity)) {
706
+ return false;
707
+ }
708
+ if (!shouldCompactTemplate(entity, onCacheHit)) {
709
+ return false;
710
+ }
711
+ entity.compactForInstancing();
712
+ return true;
713
+ };
671
714
  /**
672
715
  * When true, {@link draw} / {@link get} / {@link set} accumulate
673
716
  * {@link profileStats}. Off by default (zero overhead when false).
@@ -690,9 +733,19 @@ var _tmpExtrusion = /*@__PURE__*/ new AcGeMatrix3d();
690
733
  var _tmpInverse = /*@__PURE__*/ new AcGeMatrix3d();
691
734
  /**
692
735
  * Minimum direct child count before {@link AcGiEntity.compactForInstancing} is
693
- * worth running on a freshly built block template.
736
+ * worth running on a block template.
737
+ *
738
+ * Raised above the historical value of 3 so high-block-count drawings with many
739
+ * tiny symbols skip classify/merge work that never pays back on clone.
740
+ */
741
+ var MIN_CHILDREN_TO_COMPACT = 8;
742
+ /**
743
+ * Direct child count at which compaction runs eagerly on cache miss.
744
+ *
745
+ * Below this (but at/above {@link MIN_CHILDREN_TO_COMPACT}), compaction is
746
+ * deferred until the first cache hit so one-shot blocks skip it entirely.
694
747
  */
695
- var MIN_CHILDREN_TO_COMPACT = 3;
748
+ var EAGER_COMPACT_CHILDREN = 32;
696
749
  /**
697
750
  * Nest-safe ByBlock color save/restore pool for {@link AcDbRenderingCache.draw}.
698
751
  * Avoids allocating a new {@link AcCmColor} per ByBlock entity on cache misses.
@@ -709,6 +762,49 @@ function entityChildCount(entity) {
709
762
  var count = entity.childCount;
710
763
  return typeof count === 'number' ? count : Number.POSITIVE_INFINITY;
711
764
  }
765
+ /**
766
+ * Returns whether `entity` has already been compacted for instancing.
767
+ *
768
+ * Duck-types optional `isCompacted` from three-renderer `AcTrGroup`.
769
+ *
770
+ * @param entity - Cached or freshly built block template.
771
+ * @returns `true` when compaction has already run.
772
+ */
773
+ function isTemplateCompacted(entity) {
774
+ var flag = entity.isCompacted;
775
+ return flag === true;
776
+ }
777
+ /**
778
+ * Decides whether a template should run {@link AcGiEntity.compactForInstancing}.
779
+ *
780
+ * @param entity - Block template to evaluate.
781
+ * @param onCacheHit - When true, mid-size templates are eligible (lazy compact).
782
+ * @returns `true` when compaction should run now.
783
+ */
784
+ function shouldCompactTemplate(entity, onCacheHit) {
785
+ var count = entityChildCount(entity);
786
+ if (count < MIN_CHILDREN_TO_COMPACT) {
787
+ return false;
788
+ }
789
+ if (count >= EAGER_COMPACT_CHILDREN) {
790
+ return true;
791
+ }
792
+ // Mid-size: only on first cache hit so one-shot blocks skip merge work.
793
+ return onCacheHit;
794
+ }
795
+ /**
796
+ * Finalizes deferred geometry and drops detached source shells before caching.
797
+ *
798
+ * Duck-types optional `prepareCacheTemplate` from three-renderer `AcTrGroup`.
799
+ *
800
+ * @param entity - Block template about to be stored in the cache.
801
+ */
802
+ function prepareCacheTemplate(entity) {
803
+ var prepare = entity.prepareCacheTemplate;
804
+ if (typeof prepare === 'function') {
805
+ prepare.call(entity);
806
+ }
807
+ }
712
808
  /**
713
809
  * Copies `color` into a pooled scratch and returns it.
714
810
  *
@@ -1 +1 @@
1
- {"version":3,"file":"AcDbRenderingCache.js","sourceRoot":"","sources":["../../src/misc/AcDbRenderingCache.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EACL,SAAS,EACT,eAAe,EACf,aAAa,EACd,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,YAAY,EAAgB,MAAM,4BAA4B,CAAA;AAGvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAA;AAkEvE;;;;GAIG;AACH,IAAM,aAAa,GAAG,cAAM,OAAA,CAAC;IAC3B,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,CAAC;IACT,KAAK,EAAE,CAAC;IACR,WAAW,EAAE,CAAC;IACd,aAAa,EAAE,CAAC;IAChB,OAAO,EAAE,CAAC;IACV,UAAU,EAAE,CAAC;IACb,OAAO,EAAE,CAAC;CACX,CAAC,EAT0B,CAS1B,CAAA;AAEF;;;;GAIG;AACH,IAAM,iBAAiB,GAAG,cAAsC,OAAA,CAAC;IAC/D,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,CAAC;IACT,KAAK,EAAE,CAAC;IACR,WAAW,EAAE,CAAC;IACd,aAAa,EAAE,CAAC;IAChB,OAAO,EAAE,CAAC;IACV,UAAU,EAAE,CAAC;IACb,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,aAAa,EAAE;IACzB,WAAW,EAAE,EAAE;CAChB,CAAC,EAX8D,CAW9D,CAAA;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH;IAmDE;;;;;;;OAOG;IACH;QACE,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAA;IAC1B,CAAC;IAxCD,sBAAW,kCAAY;QAHvB;;WAEG;aACH;YACE,OAAO,IAAI,CAAC,aAAa,CAAA;QAC3B,CAAC;;;OAAA;IAED;;;OAGG;IACI,+BAAY,GAAnB;QACE,IAAI,CAAC,aAAa,GAAG,iBAAiB,EAAE,CAAA;QACxC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAA;IACrB,CAAC;IAYD,sBAAW,8BAAQ;QAVnB;;;;;;;;;WASG;aACH;YACE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACpB,IAAI,CAAC,SAAS,GAAG,IAAI,kBAAkB,EAAE,CAAA;YAC3C,CAAC;YACD,OAAO,IAAI,CAAC,SAAS,CAAA;QACvB,CAAC;;;OAAA;IAcD;;;;;;;;;;;;;;;;OAgBG;IACH,sCAAS,GAAT,UAAU,IAAY,EAAE,KAAgB;QACtC,IAAI,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAA;QAC/B,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YACjC,QAAQ,GAAG,cAAO,KAAK,CAAC,GAAG,cAAI,KAAK,CAAC,KAAK,cAAI,KAAK,CAAC,IAAI,CAAE,CAAA;QAC5D,CAAC;QACD,OAAO,UAAG,IAAI,cAAI,QAAQ,CAAE,CAAA;IAC9B,CAAC;IAED;;;;;;;;;;OAUG;IACH,2CAAc,GAAd,UAAe,IAAY,EAAE,KAAgB,EAAE,eAAwB;QACrE,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO,IAAI,CAAA;QACb,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IACpC,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,gCAAG,GAAH,UAAI,GAAW,EAAE,KAAiB;QAChC,IAAI,kBAAkB,CAAC,SAAS,EAAE,CAAC;YACjC,IAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;YAC5B,KAAK,GAAG,KAAK,CAAC,aAAa,EAAE,CAAA;YAC7B,IAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,CAAA;YACjC,kBAAkB,CAAC,aAAa,CAAC,UAAU,IAAI,EAAE,CAAA;YACjD,IAAI,kBAAkB,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;gBACxC,kBAAkB,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAA;YAC5D,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,KAAK,CAAC,aAAa,EAAE,CAAA;QAC/B,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QAC5B,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,gCAAG,GAAH,UAAI,IAAY;QACd,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAClC,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,kBAAkB,CAAC,SAAS,EAAE,CAAC;gBACjC,IAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;gBAC5B,KAAK,GAAG,KAAK,CAAC,aAAa,EAAE,CAAA;gBAC7B,IAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,CAAA;gBACjC,kBAAkB,CAAC,aAAa,CAAC,OAAO,IAAI,EAAE,CAAA;gBAC9C,IAAI,kBAAkB,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;oBACxC,kBAAkB,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAA;gBACzD,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,KAAK,GAAG,KAAK,CAAC,aAAa,EAAE,CAAA;YAC/B,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,gCAAG,GAAH,UAAI,IAAY;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC/B,CAAC;IAED;;;;;;;;OAQG;IACH,kCAAK,GAAL;QACE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAA,KAAK;;YACxB,MAAA,KAAK,CAAC,OAAO,qDAAI,CAAA;QACnB,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;IACtB,CAAC;IAED;;;;;;;;;;OAUG;IACG,wCAAW,GAAjB,UACE,QAAsB,EACtB,MAAsC,EACtC,QAIyB;;;;;;;wBAEnB,UAAU,GAA2B,EAAE,CAAA;;4BAC7C,KAAoB,WAAA,SAAA,MAAM,CAAA,gFAAE,CAAC;gCAAlB,KAAK;gCACd,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;oCAC1B,SAAQ;gCACV,CAAC;gCACD,IAAI,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;oCACnC,SAAQ;gCACV,CAAC;gCACD,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;4BACxB,CAAC;;;;;;;;;wBAEK,KAAK,GAAG,UAAU,CAAC,MAAM,CAAA;wBAC3B,KAAK,GAAG,CAAC,CAAA;wBAEP,aAAa,GAAG,IAAI,SAAS,EAAE,CAAC,aAAa,EAAE,CAAA;wBAG/C,SAAS,GAAG,IAAI,eAAe,EAAE,CAAA;;;;wBACnB,eAAA,SAAA,UAAU,CAAA;;;;wBAAnB,KAAK;wBACR,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,aAAa,EAAE,KAAK,CAAC,CAAA;wBACjE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;4BACnB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE,IAAI,CAAC,CAAA;wBACrD,CAAC;wBACD,KAAK,EAAE,CAAA;6BACH,QAAQ,EAAR,wBAAQ;wBACV,qBAAM,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,EAAA;;wBAAxC,SAAwC,CAAA;;4BAE1C,qBAAM,SAAS,CAAC,UAAU,CAAC,aAAa,CAAC,EAAA;;wBAAzC,SAAyC,CAAA;;;;;;;;;;;;;;;;;;;;KAE5C;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,iCAAI,GAAJ,UACE,QAAsB,EACtB,gBAAsC,EACtC,UAAqB,EACrB,UAA6B,EAC7B,KAAqB,EACrB,SAAwB,EACxB,MAAqB;;;QAHrB,2BAAA,EAAA,eAA6B;QAC7B,sBAAA,EAAA,YAAqB;QAIrB,IAAM,OAAO,GAAG,kBAAkB,CAAC,SAAS,CAAA;QAC5C,IAAI,OAAO,EAAE,CAAC;YACZ,kBAAkB,CAAC,UAAU,EAAE,CAAA;QACjC,CAAC;QACD,IAAM,KAAK,GAAG,OAAO,IAAI,kBAAkB,CAAC,UAAU,KAAK,CAAC,CAAA;QAC5D,IAAM,KAAK,GAAG,kBAAkB,CAAC,aAAa,CAAA;QAC9C,IAAM,OAAO,GAAiB,EAAE,CAAA;QAChC,IAAI,CAAC;YACH,IAAI,gBAAgB,IAAI,IAAI,EAAE,CAAC;gBAC7B,IAAM,QAAQ,GAAG,MAAA,UAAU,CAAC,GAAG,mCAAI,CAAC,CAAA;gBACpC,IAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAA;gBACvC,wEAAwE;gBACxE,uEAAuE;gBACvE,qEAAqE;gBACrE,IAAI,GAAG,SAAoB,CAAA;gBAC3B,IAAI,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACrC,GAAG,GAAG,SAAS,CAAA;gBACjB,CAAC;qBAAM,IAAI,SAAS,EAAE,CAAC;oBACrB,IAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;oBACtD,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACvB,GAAG,GAAG,QAAQ,CAAA;oBAChB,CAAC;gBACH,CAAC;gBAED,IAAI,OAA6B,CAAA;gBACjC,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBACtB,IAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;oBAC7C,OAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;oBACrB,IAAI,OAAO,EAAE,CAAC;wBACZ,IAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;wBACpC,KAAK,CAAC,IAAI,EAAE,CAAA;wBACZ,KAAK,CAAC,KAAK,IAAI,EAAE,CAAA;wBACjB,IAAI,KAAK,EAAE,CAAC;4BACV,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAA;4BACrB,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAA;wBAC5B,CAAC;oBACH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;oBAC/C,IAAI,eAAe,GAAG,KAAK,CAAA;oBAC3B,IAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,EAAE,CAAA;;wBAC/C,KAAqB,IAAA,aAAA,SAAA,QAAQ,CAAA,kCAAA,wDAAE,CAAC;4BAA3B,IAAM,MAAM,qBAAA;4BACf,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;gCACvB,SAAQ;4BACV,CAAC;4BACD,qEAAqE;4BACrE,gEAAgE;4BAChE,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;gCAC3B,eAAe,GAAG,IAAI,CAAA;gCACtB,IAAM,UAAU,GAAG,uBAAuB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;gCACxD,IAAI,CAAC;oCACH,IAAI,UAAU,CAAC,YAAY,EAAE,CAAC;wCAC5B,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,CAAA;oCAC9B,CAAC;yCAAM,CAAC;wCACN,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;oCACpC,CAAC;oCACD,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;gCAC3C,CAAC;wCAAS,CAAC;oCACT,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;oCAC7B,sBAAsB,CAAC,UAAU,CAAC,CAAA;gCACpC,CAAC;4BACH,CAAC;iCAAM,CAAC;gCACN,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;4BAC3C,CAAC;wBACH,CAAC;;;;;;;;;oBACD,OAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;oBAC/B,IAAI,OAAO,GAAG,CAAC,CAAA;oBACf,IAAI,OAAO,EAAE,CAAC;wBACZ,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO,CAAA;wBACrC,KAAK,CAAC,WAAW,IAAI,OAAO,CAAA;wBAC5B,IAAI,KAAK,EAAE,CAAC;4BACV,KAAK,CAAC,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAA;wBACvC,CAAC;oBACH,CAAC;oBACD,wEAAwE;oBACxE,mEAAmE;oBACnE,8DAA8D;oBAC9D,IAAI,SAAS,GAAG,CAAC,CAAA;oBACjB,IACE,CAAA,OAAK,aAAL,OAAK,uBAAL,OAAK,CAAE,oBAAoB;wBAC3B,gBAAgB,CAAC,OAAK,CAAC,IAAI,uBAAuB,EAClD,CAAC;wBACD,IAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;wBACjD,OAAK,CAAC,oBAAoB,EAAE,CAAA;wBAC5B,IAAI,OAAO,EAAE,CAAC;4BACZ,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;4BACzC,KAAK,CAAC,aAAa,IAAI,SAAS,CAAA;4BAChC,IAAI,KAAK,EAAE,CAAC;gCACV,KAAK,CAAC,QAAQ,CAAC,aAAa,IAAI,SAAS,CAAA;4BAC3C,CAAC;wBACH,CAAC;oBACH,CAAC;oBACD,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,UAAU,EAAE,eAAe,CAAC,CAAA;oBACjE,IAAM,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;oBACrD,IAAI,OAAK,IAAI,KAAK,EAAE,CAAC;wBACnB,kEAAkE;wBAClE,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;4BAC7C,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAK,CAAC,CAAA;wBACtB,CAAC;oBACH,CAAC;oBACD,IAAI,OAAO,EAAE,CAAC;wBACZ,KAAK,CAAC,MAAM,EAAE,CAAA;wBACd,IAAI,KAAK,EAAE,CAAC;4BACV,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAA;wBACzB,CAAC;wBACD,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;4BACrB,SAAS,EAAE,SAAS,IAAI,WAAW;4BACnC,OAAO,SAAA;4BACP,SAAS,WAAA;4BACT,UAAU,EAAE,KAAK,CAAC,UAAU,GAAG,cAAc;yBAC9C,CAAC,CAAA;oBACJ,CAAC;gBACH,CAAC;gBAED,IAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC/C,IAAI,OAAK,IAAI,SAAS,EAAE,CAAC;oBACvB,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;oBAClC,OAAK,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAA;oBACrC,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;wBAChE,aAAa,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAA;wBAC/C,OAAK,CAAC,WAAW,CAAC,aAAa,CAAC,CAAA;wBAChC,kBAAkB,CAAC,WAAW,CAAC,aAAa,CAAC,CAAA;oBAC/C,CAAC;gBACH,CAAC;gBACD,IAAI,OAAK,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACjD,2EAA2E;oBAC3E,mEAAmE;oBACnE,IAAM,SAAO,GACX,SAAS,IAAI,IAAI;wBACf,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,EAAE;wBAC/C,CAAC,CAAC,SAAS,CAAA;oBACf,UAAU,CAAC,OAAO,CAAC,UAAA,MAAM;wBACvB,IAAI,SAAO,EAAE,CAAC;4BACZ,MAAM,CAAC,WAAW,CAAC,SAAO,CAAC,CAAA;wBAC7B,CAAC;wBACD,OAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;oBACxB,CAAC,CAAC,CAAA;gBACJ,CAAC;gBACD,IAAI,OAAO,EAAE,CAAC;oBACZ,IAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO,CAAA;oBACtC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAA;oBACnB,IAAI,KAAK,EAAE,CAAC;wBACV,KAAK,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAA;oBAC9B,CAAC;gBACH,CAAC;gBACD,OAAO,OAAK,CAAA;YACd,CAAC;iBAAM,CAAC;gBACN,OAAO,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,OAAO,EAAE,CAAC;gBACZ,kBAAkB,CAAC,UAAU,EAAE,CAAA;YACjC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACK,+CAAkB,GAA1B,UAA2B,KAA2B;;QACpD,IAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;QACvB,IACE,oBAAoB,CAAC,gBAAgB,CAAC,IAAI,CAAC;YAC3C,oBAAoB,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAC3C,CAAC;YACD,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;YACrC,OAAO,IAAI,CAAA;QACb,CAAC;;YACD,gDAAgD;YAChD,KAAqB,IAAA,KAAA,SAAA,KAAK,CAAC,WAAW,EAAE,CAAA,gBAAA,4BAAE,CAAC;gBAAtC,IAAM,MAAM,WAAA;gBACf,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;oBACtB,OAAO,KAAK,CAAA;gBACd,CAAC;YACH,CAAC;;;;;;;;;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;;OAKG;IACK,iDAAoB,GAA5B,UAA6B,gBAAsC;;;YACjE,KAAqB,IAAA,KAAA,SAAA,gBAAgB,CAAC,WAAW,EAAE,CAAA,gBAAA,4BAAE,CAAC;gBAAjD,IAAM,MAAM,WAAA;gBACf,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;oBAChD,OAAO,IAAI,CAAA;gBACb,CAAC;YACH,CAAC;;;;;;;;;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAED;;;;;;OAMG;IACK,sCAAS,GAAjB,UACE,MAAkB,EAClB,OAAqB,EACrB,QAAsB;QAEtB,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACvB,OAAM;QACR,CAAC;QACD,IAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QACzC,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;YACrC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACtB,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,6CAAgB,GAAxB,UAAyB,MAAkB,EAAE,MAAkB;QAC7D,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;QACjC,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;QAC/B,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,CAAA;QAC/B,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAA;IACpC,CAAC;IA7gBD;;;OAGG;IACI,4BAAS,GAAG,KAAK,CAAA;IACxB;;OAEG;IACY,gCAAa,GAC1B,iBAAiB,EAAE,CAAA;IACrB,qEAAqE;IACtD,6BAAU,GAAG,CAAC,CAAA;IAmgB/B,yBAAC;CAAA,AAnhBD,IAmhBC;SAnhBY,kBAAkB;AAqhB/B,gGAAgG;AAChG,IAAM,kBAAkB,GAAG,aAAa,CAAC,IAAI,YAAY,EAAE,CAAA;AAC3D,yFAAyF;AACzF,IAAM,aAAa,GAAG,aAAa,CAAC,IAAI,YAAY,EAAE,CAAA;AACtD,6FAA6F;AAC7F,IAAM,WAAW,GAAG,aAAa,CAAC,IAAI,YAAY,EAAE,CAAA;AAEpD;;;GAGG;AACH,IAAM,uBAAuB,GAAG,CAAC,CAAA;AAEjC;;;GAGG;AACH,IAAM,oBAAoB,GAAgB,EAAE,CAAA;AAE5C;;;;;;GAMG;AACH,SAAS,gBAAgB,CAAC,MAAkB;IAC1C,IAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAA;IAC/B,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAA;AACrE,CAAC;AAED;;;;;GAKG;AACH,SAAS,uBAAuB,CAAC,KAAgB;;IAC/C,IAAM,OAAO,GAAG,MAAA,oBAAoB,CAAC,GAAG,EAAE,mCAAI,IAAI,SAAS,EAAE,CAAA;IAC7D,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACnB,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;;GAIG;AACH,SAAS,sBAAsB,CAAC,OAAkB;IAChD,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AACpC,CAAC"}
1
+ {"version":3,"file":"AcDbRenderingCache.js","sourceRoot":"","sources":["../../src/misc/AcDbRenderingCache.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mlightcad/data-model",
3
- "version": "1.12.3",
3
+ "version": "1.12.5",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "repository": {
@@ -36,9 +36,9 @@
36
36
  },
37
37
  "dependencies": {
38
38
  "uid": "^2.0.2",
39
- "@mlightcad/common": "1.12.3",
40
- "@mlightcad/geometry-engine": "3.12.3",
41
- "@mlightcad/graphic-interface": "3.12.3"
39
+ "@mlightcad/geometry-engine": "3.12.5",
40
+ "@mlightcad/common": "1.12.5",
41
+ "@mlightcad/graphic-interface": "3.12.5"
42
42
  },
43
43
  "scripts": {
44
44
  "analyze": "pnpm run analyze:lib",
@@ -1,88 +0,0 @@
1
- /** STYLE table entry protocol used when collecting fonts before conversion. */
2
- export type AcDbFontNameCollectorStyleEntry = {
3
- name: string;
4
- font?: string;
5
- bigFont?: string;
6
- extendedFont?: string;
7
- standardFlag?: number;
8
- };
9
- /**
10
- * Font-related fields extracted from one parsed entity.
11
- *
12
- * The collector resolves {@link styleName} against the STYLE table and parses
13
- * inline font overrides from {@link formattedText}.
14
- */
15
- export type AcDbFontNameCollectorEntityFontInfo = {
16
- styleName?: string;
17
- formattedText?: string;
18
- blockName?: string;
19
- /** When true, resolve fonts via STYLE table fallbacks. */
20
- resolveStyle?: boolean;
21
- };
22
- /**
23
- * Entity collections accepted by {@link AcDbFontNameCollector.collect}.
24
- * Arrays match LibreDwg-style models; maps match handle→entity stores.
25
- */
26
- export type AcDbFontNameCollectorEntities<TEntity> = readonly TEntity[] | Map<number, TEntity>;
27
- /** Callbacks that map a host-specific entity model to collector input. */
28
- export type AcDbFontNameCollectorAdapter<TEntity> = {
29
- getEntityFontInfo(entity: TEntity): AcDbFontNameCollectorEntityFontInfo | null;
30
- getBlockEntities?(blockName: string): AcDbFontNameCollectorEntities<TEntity> | undefined;
31
- };
32
- export type AcDbFontNameCollectorOptions = {
33
- styles: AcDbFontNameCollectorStyleEntry[];
34
- textStyleVar?: string;
35
- /**
36
- * When true (default), preload fonts from every named STYLE entry.
37
- * Set false to only collect shape-definition fonts plus fonts referenced by
38
- * the entity walk (used styles / inline overrides) — better for large DWGs
39
- * whose STYLE table lists many unused fonts.
40
- */
41
- includeAllNamedStyleFonts?: boolean;
42
- };
43
- /**
44
- * Collects normalized font names from parsed drawing data before conversion.
45
- *
46
- * Host converters supply STYLE table entries plus an adapter that describes
47
- * each entity's font usage and nested block structure.
48
- */
49
- export declare class AcDbFontNameCollector {
50
- private readonly styles;
51
- private readonly styleMap;
52
- private readonly textStyleVar;
53
- private readonly includeAllNamedStyleFonts;
54
- constructor(options: AcDbFontNameCollectorOptions);
55
- /**
56
- * Walks entities and returns all normalized font names referenced by the drawing.
57
- *
58
- * @param entities - Entity array, or a handle→entity map (`Map` values are walked).
59
- */
60
- collect<TEntity>(entities: AcDbFontNameCollectorEntities<TEntity>, adapter: AcDbFontNameCollectorAdapter<TEntity>): string[];
61
- /**
62
- * Normalizes a font file name for font loading: strips the extension and lowercases.
63
- */
64
- static normalizeFontFileName(fontFileName?: string): string | undefined;
65
- private collectFromEntities;
66
- private static iterateEntities;
67
- /**
68
- * Resolves font names for a text entity style using the same fallbacks as
69
- * {@link AcDbTextStyleTable.resolveAt}.
70
- */
71
- private resolveStyleFontNames;
72
- private addResolvedStyleFonts;
73
- private static buildStyleFontMap;
74
- private static collectStyleEntryFontNames;
75
- /**
76
- * Collects primary, big, and extended fonts from every named STYLE entry.
77
- * Ensures fonts referenced only in the style table (or in blocks not reached
78
- * from model space) are still preloaded when opening a drawing.
79
- */
80
- private static collectNamedStyleTableFonts;
81
- private static collectShapeDefinitionFonts;
82
- private static extractInlineMTextFonts;
83
- /**
84
- * Extracts normalized font names from MTEXT inline overrides (`\f…|` / `\F…;`).
85
- */
86
- static collectInlineMTextFonts(text: string): string[];
87
- }
88
- //# sourceMappingURL=AcDbFontNameCollector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AcDbFontNameCollector.d.ts","sourceRoot":"","sources":["../../src/converter/AcDbFontNameCollector.ts"],"names":[],"mappings":"AAOA,+EAA+E;AAC/E,MAAM,MAAM,+BAA+B,GAAG;IAC5C,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED;;;;;GAKG;AACH,MAAM,MAAM,mCAAmC,GAAG;IAChD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,0DAA0D;IAC1D,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,6BAA6B,CAAC,OAAO,IAC7C,SAAS,OAAO,EAAE,GAClB,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAExB,0EAA0E;AAC1E,MAAM,MAAM,4BAA4B,CAAC,OAAO,IAAI;IAClD,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,mCAAmC,GAAG,IAAI,CAAA;IAC9E,gBAAgB,CAAC,CACf,SAAS,EAAE,MAAM,GAChB,6BAA6B,CAAC,OAAO,CAAC,GAAG,SAAS,CAAA;CACtD,CAAA;AAED,MAAM,MAAM,4BAA4B,GAAG;IACzC,MAAM,EAAE,+BAA+B,EAAE,CAAA;IACzC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;OAKG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAA;CACpC,CAAA;AAED;;;;;GAKG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmC;IAC1D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAChD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAQ;IACrC,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAS;gBAEvC,OAAO,EAAE,4BAA4B;IAOjD;;;;OAIG;IACH,OAAO,CAAC,OAAO,EACb,QAAQ,EAAE,6BAA6B,CAAC,OAAO,CAAC,EAChD,OAAO,EAAE,4BAA4B,CAAC,OAAO,CAAC,GAC7C,MAAM,EAAE;IAkBX;;OAEG;IACH,MAAM,CAAC,qBAAqB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAWvE,OAAO,CAAC,mBAAmB;IAgC3B,OAAO,CAAC,MAAM,CAAC,eAAe;IAQ9B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IA+B7B,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAahC,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAgBzC;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,2BAA2B;IAa1C,OAAO,CAAC,MAAM,CAAC,2BAA2B;IAmB1C,OAAO,CAAC,MAAM,CAAC,uBAAuB;IAWtC;;OAEG;IACH,MAAM,CAAC,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;CAGvD"}