@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,339 +0,0 @@
1
- var __values = (this && this.__values) || function(o) {
2
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
3
- if (m) return m.call(o);
4
- if (o && typeof o.length === "number") return {
5
- next: function () {
6
- if (o && i >= o.length) o = void 0;
7
- return { value: o && o[i++], done: !o };
8
- }
9
- };
10
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
11
- };
12
- var __read = (this && this.__read) || function (o, n) {
13
- var m = typeof Symbol === "function" && o[Symbol.iterator];
14
- if (!m) return o;
15
- var i = m.call(o), r, ar = [], e;
16
- try {
17
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
18
- }
19
- catch (error) { e = { error: error }; }
20
- finally {
21
- try {
22
- if (r && !r.done && (m = i["return"])) m.call(i);
23
- }
24
- finally { if (e) throw e.error; }
25
- }
26
- return ar;
27
- };
28
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
29
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
30
- if (ar || !(i in from)) {
31
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
32
- ar[i] = from[i];
33
- }
34
- }
35
- return to.concat(ar || Array.prototype.slice.call(from));
36
- };
37
- import { DEFAULT_TEXT_STYLE } from '../misc/AcDbConstants';
38
- /** `\Ffont|b0|i0;...` extended inline font override. */
39
- var MTEXT_INLINE_FONT_PIPE_PATTERN = /\\[fF](.*?)\|/g;
40
- /** `\Ffont;...` short inline font override (e.g. tolerance `{\Fgdt;r}`). */
41
- var MTEXT_INLINE_FONT_SEMICOLON_PATTERN = /\\[fF]([^|;]+);/g;
42
- /**
43
- * Collects normalized font names from parsed drawing data before conversion.
44
- *
45
- * Host converters supply STYLE table entries plus an adapter that describes
46
- * each entity's font usage and nested block structure.
47
- */
48
- var AcDbFontNameCollector = /** @class */ (function () {
49
- function AcDbFontNameCollector(options) {
50
- var _a, _b;
51
- this.styles = options.styles;
52
- this.styleMap = AcDbFontNameCollector.buildStyleFontMap(this.styles);
53
- this.textStyleVar = (_a = options.textStyleVar) !== null && _a !== void 0 ? _a : DEFAULT_TEXT_STYLE;
54
- this.includeAllNamedStyleFonts = (_b = options.includeAllNamedStyleFonts) !== null && _b !== void 0 ? _b : true;
55
- }
56
- /**
57
- * Walks entities and returns all normalized font names referenced by the drawing.
58
- *
59
- * @param entities - Entity array, or a handle→entity map (`Map` values are walked).
60
- */
61
- AcDbFontNameCollector.prototype.collect = function (entities, adapter) {
62
- var e_1, _a, e_2, _b;
63
- var fonts = new Set();
64
- try {
65
- for (var _c = __values(AcDbFontNameCollector.collectShapeDefinitionFonts(this.styles)), _d = _c.next(); !_d.done; _d = _c.next()) {
66
- var fontName = _d.value;
67
- fonts.add(fontName);
68
- }
69
- }
70
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
71
- finally {
72
- try {
73
- if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
74
- }
75
- finally { if (e_1) throw e_1.error; }
76
- }
77
- if (this.includeAllNamedStyleFonts) {
78
- try {
79
- for (var _e = __values(AcDbFontNameCollector.collectNamedStyleTableFonts(this.styles)), _f = _e.next(); !_f.done; _f = _e.next()) {
80
- var fontName = _f.value;
81
- fonts.add(fontName);
82
- }
83
- }
84
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
85
- finally {
86
- try {
87
- if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
88
- }
89
- finally { if (e_2) throw e_2.error; }
90
- }
91
- }
92
- this.collectFromEntities(entities, adapter, fonts);
93
- return Array.from(fonts);
94
- };
95
- /**
96
- * Normalizes a font file name for font loading: strips the extension and lowercases.
97
- */
98
- AcDbFontNameCollector.normalizeFontFileName = function (fontFileName) {
99
- if (!fontFileName) {
100
- return undefined;
101
- }
102
- var lastDotIndex = fontFileName.lastIndexOf('.');
103
- if (lastDotIndex >= 0) {
104
- return fontFileName.substring(0, lastDotIndex).toLowerCase();
105
- }
106
- return fontFileName.toLowerCase();
107
- };
108
- AcDbFontNameCollector.prototype.collectFromEntities = function (entities, adapter, fonts) {
109
- var e_3, _a, e_4, _b;
110
- try {
111
- for (var _c = __values(AcDbFontNameCollector.iterateEntities(entities)), _d = _c.next(); !_d.done; _d = _c.next()) {
112
- var entity = _d.value;
113
- var info = adapter.getEntityFontInfo(entity);
114
- if (!info) {
115
- continue;
116
- }
117
- if (info.formattedText) {
118
- try {
119
- for (var _e = (e_4 = void 0, __values(AcDbFontNameCollector.extractInlineMTextFonts(info.formattedText))), _f = _e.next(); !_f.done; _f = _e.next()) {
120
- var fontName = _f.value;
121
- fonts.add(fontName);
122
- }
123
- }
124
- catch (e_4_1) { e_4 = { error: e_4_1 }; }
125
- finally {
126
- try {
127
- if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
128
- }
129
- finally { if (e_4) throw e_4.error; }
130
- }
131
- }
132
- if (info.resolveStyle) {
133
- this.addResolvedStyleFonts(info.styleName, fonts);
134
- }
135
- if (info.blockName && adapter.getBlockEntities) {
136
- var blockEntities = adapter.getBlockEntities(info.blockName);
137
- if (blockEntities) {
138
- this.collectFromEntities(blockEntities, adapter, fonts);
139
- }
140
- }
141
- }
142
- }
143
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
144
- finally {
145
- try {
146
- if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
147
- }
148
- finally { if (e_3) throw e_3.error; }
149
- }
150
- };
151
- AcDbFontNameCollector.iterateEntities = function (entities) {
152
- return entities instanceof Map
153
- ? entities.values()
154
- : entities[Symbol.iterator]();
155
- };
156
- /**
157
- * Resolves font names for a text entity style using the same fallbacks as
158
- * {@link AcDbTextStyleTable.resolveAt}.
159
- */
160
- AcDbFontNameCollector.prototype.resolveStyleFontNames = function (styleName) {
161
- var e_5, _a, e_6, _b;
162
- var candidates = [];
163
- var addCandidate = function (value) {
164
- var trimmed = value === null || value === void 0 ? void 0 : value.trim();
165
- if (trimmed && !candidates.includes(trimmed)) {
166
- candidates.push(trimmed);
167
- }
168
- };
169
- addCandidate(styleName);
170
- addCandidate(this.textStyleVar);
171
- addCandidate(DEFAULT_TEXT_STYLE);
172
- addCandidate('STANDARD');
173
- try {
174
- for (var candidates_1 = __values(candidates), candidates_1_1 = candidates_1.next(); !candidates_1_1.done; candidates_1_1 = candidates_1.next()) {
175
- var candidate = candidates_1_1.value;
176
- var exact = this.styleMap.get(candidate);
177
- if (exact) {
178
- return exact;
179
- }
180
- var normalizedCandidate = candidate.toUpperCase();
181
- try {
182
- for (var _c = (e_6 = void 0, __values(this.styleMap)), _d = _c.next(); !_d.done; _d = _c.next()) {
183
- var _e = __read(_d.value, 2), key = _e[0], fontNames = _e[1];
184
- if (key.toUpperCase() === normalizedCandidate) {
185
- return fontNames;
186
- }
187
- }
188
- }
189
- catch (e_6_1) { e_6 = { error: e_6_1 }; }
190
- finally {
191
- try {
192
- if (_d && !_d.done && (_b = _c.return)) _b.call(_c);
193
- }
194
- finally { if (e_6) throw e_6.error; }
195
- }
196
- }
197
- }
198
- catch (e_5_1) { e_5 = { error: e_5_1 }; }
199
- finally {
200
- try {
201
- if (candidates_1_1 && !candidates_1_1.done && (_a = candidates_1.return)) _a.call(candidates_1);
202
- }
203
- finally { if (e_5) throw e_5.error; }
204
- }
205
- return this.styleMap.values().next().value;
206
- };
207
- AcDbFontNameCollector.prototype.addResolvedStyleFonts = function (styleName, fonts) {
208
- var fontNames = this.resolveStyleFontNames(styleName);
209
- fontNames === null || fontNames === void 0 ? void 0 : fontNames.forEach(function (name) { return fonts.add(name); });
210
- };
211
- AcDbFontNameCollector.buildStyleFontMap = function (styles) {
212
- var e_7, _a;
213
- var styleMap = new Map();
214
- try {
215
- for (var styles_1 = __values(styles), styles_1_1 = styles_1.next(); !styles_1_1.done; styles_1_1 = styles_1.next()) {
216
- var style = styles_1_1.value;
217
- styleMap.set(style.name, AcDbFontNameCollector.collectStyleEntryFontNames(style));
218
- }
219
- }
220
- catch (e_7_1) { e_7 = { error: e_7_1 }; }
221
- finally {
222
- try {
223
- if (styles_1_1 && !styles_1_1.done && (_a = styles_1.return)) _a.call(styles_1);
224
- }
225
- finally { if (e_7) throw e_7.error; }
226
- }
227
- return styleMap;
228
- };
229
- AcDbFontNameCollector.collectStyleEntryFontNames = function (style) {
230
- var e_8, _a;
231
- var fontNames = [];
232
- try {
233
- for (var _b = __values([style.font, style.bigFont, style.extendedFont]), _c = _b.next(); !_c.done; _c = _b.next()) {
234
- var fileName = _c.value;
235
- var normalized = AcDbFontNameCollector.normalizeFontFileName(fileName);
236
- if (normalized) {
237
- fontNames.push(normalized);
238
- }
239
- }
240
- }
241
- catch (e_8_1) { e_8 = { error: e_8_1 }; }
242
- finally {
243
- try {
244
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
245
- }
246
- finally { if (e_8) throw e_8.error; }
247
- }
248
- return fontNames;
249
- };
250
- /**
251
- * Collects primary, big, and extended fonts from every named STYLE entry.
252
- * Ensures fonts referenced only in the style table (or in blocks not reached
253
- * from model space) are still preloaded when opening a drawing.
254
- */
255
- AcDbFontNameCollector.collectNamedStyleTableFonts = function (styles) {
256
- var e_9, _a;
257
- var fonts = [];
258
- try {
259
- for (var styles_2 = __values(styles), styles_2_1 = styles_2.next(); !styles_2_1.done; styles_2_1 = styles_2.next()) {
260
- var style = styles_2_1.value;
261
- if (style.standardFlag && style.standardFlag & 1) {
262
- continue;
263
- }
264
- fonts.push.apply(fonts, __spreadArray([], __read(AcDbFontNameCollector.collectStyleEntryFontNames(style)), false));
265
- }
266
- }
267
- catch (e_9_1) { e_9 = { error: e_9_1 }; }
268
- finally {
269
- try {
270
- if (styles_2_1 && !styles_2_1.done && (_a = styles_2.return)) _a.call(styles_2);
271
- }
272
- finally { if (e_9) throw e_9.error; }
273
- }
274
- return fonts;
275
- };
276
- AcDbFontNameCollector.collectShapeDefinitionFonts = function (styles) {
277
- var e_10, _a;
278
- var fonts = [];
279
- try {
280
- for (var styles_3 = __values(styles), styles_3_1 = styles_3.next(); !styles_3_1.done; styles_3_1 = styles_3.next()) {
281
- var style = styles_3_1.value;
282
- if (style.standardFlag && style.standardFlag & 1) {
283
- var normalized = AcDbFontNameCollector.normalizeFontFileName(style.font);
284
- if (normalized) {
285
- fonts.push(normalized);
286
- }
287
- }
288
- }
289
- }
290
- catch (e_10_1) { e_10 = { error: e_10_1 }; }
291
- finally {
292
- try {
293
- if (styles_3_1 && !styles_3_1.done && (_a = styles_3.return)) _a.call(styles_3);
294
- }
295
- finally { if (e_10) throw e_10.error; }
296
- }
297
- return fonts;
298
- };
299
- AcDbFontNameCollector.extractInlineMTextFonts = function (text) {
300
- var e_11, _a, e_12, _b;
301
- var fonts = new Set();
302
- try {
303
- for (var _c = __values(text.matchAll(MTEXT_INLINE_FONT_PIPE_PATTERN)), _d = _c.next(); !_d.done; _d = _c.next()) {
304
- var match = _d.value;
305
- fonts.add(match[1].toLowerCase());
306
- }
307
- }
308
- catch (e_11_1) { e_11 = { error: e_11_1 }; }
309
- finally {
310
- try {
311
- if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
312
- }
313
- finally { if (e_11) throw e_11.error; }
314
- }
315
- try {
316
- for (var _e = __values(text.matchAll(MTEXT_INLINE_FONT_SEMICOLON_PATTERN)), _f = _e.next(); !_f.done; _f = _e.next()) {
317
- var match = _f.value;
318
- fonts.add(match[1].toLowerCase());
319
- }
320
- }
321
- catch (e_12_1) { e_12 = { error: e_12_1 }; }
322
- finally {
323
- try {
324
- if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
325
- }
326
- finally { if (e_12) throw e_12.error; }
327
- }
328
- return Array.from(fonts);
329
- };
330
- /**
331
- * Extracts normalized font names from MTEXT inline overrides (`\f…|` / `\F…;`).
332
- */
333
- AcDbFontNameCollector.collectInlineMTextFonts = function (text) {
334
- return AcDbFontNameCollector.extractInlineMTextFonts(text);
335
- };
336
- return AcDbFontNameCollector;
337
- }());
338
- export { AcDbFontNameCollector };
339
- //# sourceMappingURL=AcDbFontNameCollector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AcDbFontNameCollector.js","sourceRoot":"","sources":["../../src/converter/AcDbFontNameCollector.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAE1D,wDAAwD;AACxD,IAAM,8BAA8B,GAAG,gBAAgB,CAAA;AACvD,4EAA4E;AAC5E,IAAM,mCAAmC,GAAG,kBAAkB,CAAA;AAqD9D;;;;;GAKG;AACH;IAME,+BAAY,OAAqC;;QAC/C,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;QAC5B,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACpE,IAAI,CAAC,YAAY,GAAG,MAAA,OAAO,CAAC,YAAY,mCAAI,kBAAkB,CAAA;QAC9D,IAAI,CAAC,yBAAyB,GAAG,MAAA,OAAO,CAAC,yBAAyB,mCAAI,IAAI,CAAA;IAC5E,CAAC;IAED;;;;OAIG;IACH,uCAAO,GAAP,UACE,QAAgD,EAChD,OAA8C;;QAE9C,IAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAA;;YAC/B,KAAuB,IAAA,KAAA,SAAA,qBAAqB,CAAC,2BAA2B,CACtE,IAAI,CAAC,MAAM,CACZ,CAAA,gBAAA,4BAAE,CAAC;gBAFC,IAAM,QAAQ,WAAA;gBAGjB,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YACrB,CAAC;;;;;;;;;QACD,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;;gBACnC,KAAuB,IAAA,KAAA,SAAA,qBAAqB,CAAC,2BAA2B,CACtE,IAAI,CAAC,MAAM,CACZ,CAAA,gBAAA,4BAAE,CAAC;oBAFC,IAAM,QAAQ,WAAA;oBAGjB,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;gBACrB,CAAC;;;;;;;;;QACH,CAAC;QACD,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;QAClD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED;;OAEG;IACI,2CAAqB,GAA5B,UAA6B,YAAqB;QAChD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,IAAM,YAAY,GAAG,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QAClD,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;YACtB,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,WAAW,EAAE,CAAA;QAC9D,CAAC;QACD,OAAO,YAAY,CAAC,WAAW,EAAE,CAAA;IACnC,CAAC;IAEO,mDAAmB,GAA3B,UACE,QAAgD,EAChD,OAA8C,EAC9C,KAAkB;;;YAElB,KAAqB,IAAA,KAAA,SAAA,qBAAqB,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAA,gBAAA,4BAAE,CAAC;gBAAlE,IAAM,MAAM,WAAA;gBACf,IAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAA;gBAC9C,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,SAAQ;gBACV,CAAC;gBAED,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;;wBACvB,KAAuB,IAAA,oBAAA,SAAA,qBAAqB,CAAC,uBAAuB,CAClE,IAAI,CAAC,aAAa,CACnB,CAAA,CAAA,gBAAA,4BAAE,CAAC;4BAFC,IAAM,QAAQ,WAAA;4BAGjB,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;wBACrB,CAAC;;;;;;;;;gBACH,CAAC;gBAED,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;oBACtB,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;gBACnD,CAAC;gBAED,IAAI,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;oBAC/C,IAAM,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;oBAC9D,IAAI,aAAa,EAAE,CAAC;wBAClB,IAAI,CAAC,mBAAmB,CAAC,aAAa,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;oBACzD,CAAC;gBACH,CAAC;YACH,CAAC;;;;;;;;;IACH,CAAC;IAEc,qCAAe,GAA9B,UACE,QAAgD;QAEhD,OAAO,QAAQ,YAAY,GAAG;YAC5B,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE;YACnB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAA;IACjC,CAAC;IAED;;;OAGG;IACK,qDAAqB,GAA7B,UAA8B,SAAkB;;QAC9C,IAAM,UAAU,GAAa,EAAE,CAAA;QAC/B,IAAM,YAAY,GAAG,UAAC,KAAc;YAClC,IAAM,OAAO,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAAE,CAAA;YAC7B,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7C,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAC1B,CAAC;QACH,CAAC,CAAA;QAED,YAAY,CAAC,SAAS,CAAC,CAAA;QACvB,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QAC/B,YAAY,CAAC,kBAAkB,CAAC,CAAA;QAChC,YAAY,CAAC,UAAU,CAAC,CAAA;;YAExB,KAAwB,IAAA,eAAA,SAAA,UAAU,CAAA,sCAAA,8DAAE,CAAC;gBAAhC,IAAM,SAAS,uBAAA;gBAClB,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;gBAC1C,IAAI,KAAK,EAAE,CAAC;oBACV,OAAO,KAAK,CAAA;gBACd,CAAC;gBAED,IAAM,mBAAmB,GAAG,SAAS,CAAC,WAAW,EAAE,CAAA;;oBACnD,KAA+B,IAAA,oBAAA,SAAA,IAAI,CAAC,QAAQ,CAAA,CAAA,gBAAA,4BAAE,CAAC;wBAApC,IAAA,KAAA,mBAAgB,EAAf,GAAG,QAAA,EAAE,SAAS,QAAA;wBACxB,IAAI,GAAG,CAAC,WAAW,EAAE,KAAK,mBAAmB,EAAE,CAAC;4BAC9C,OAAO,SAAS,CAAA;wBAClB,CAAC;oBACH,CAAC;;;;;;;;;YACH,CAAC;;;;;;;;;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAA;IAC5C,CAAC;IAEO,qDAAqB,GAA7B,UACE,SAA6B,EAC7B,KAAkB;QAElB,IAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAA;QACvD,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CAAC,UAAA,IAAI,IAAI,OAAA,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAf,CAAe,CAAC,CAAA;IAC7C,CAAC;IAEc,uCAAiB,GAAhC,UACE,MAAyC;;QAEzC,IAAM,QAAQ,GAAG,IAAI,GAAG,EAAoB,CAAA;;YAC5C,KAAoB,IAAA,WAAA,SAAA,MAAM,CAAA,8BAAA,kDAAE,CAAC;gBAAxB,IAAM,KAAK,mBAAA;gBACd,QAAQ,CAAC,GAAG,CACV,KAAK,CAAC,IAAI,EACV,qBAAqB,CAAC,0BAA0B,CAAC,KAAK,CAAC,CACxD,CAAA;YACH,CAAC;;;;;;;;;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;IAEc,gDAA0B,GAAzC,UACE,KAGC;;QAED,IAAM,SAAS,GAAa,EAAE,CAAA;;YAC9B,KAAuB,IAAA,KAAA,SAAA,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,YAAY,CAAC,CAAA,gBAAA,4BAAE,CAAC;gBAApE,IAAM,QAAQ,WAAA;gBACjB,IAAM,UAAU,GAAG,qBAAqB,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAA;gBACxE,IAAI,UAAU,EAAE,CAAC;oBACf,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;gBAC5B,CAAC;YACH,CAAC;;;;;;;;;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IAED;;;;OAIG;IACY,iDAA2B,GAA1C,UACE,MAAyC;;QAEzC,IAAM,KAAK,GAAa,EAAE,CAAA;;YAC1B,KAAoB,IAAA,WAAA,SAAA,MAAM,CAAA,8BAAA,kDAAE,CAAC;gBAAxB,IAAM,KAAK,mBAAA;gBACd,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;oBACjD,SAAQ;gBACV,CAAC;gBACD,KAAK,CAAC,IAAI,OAAV,KAAK,2BAAS,qBAAqB,CAAC,0BAA0B,CAAC,KAAK,CAAC,WAAC;YACxE,CAAC;;;;;;;;;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAEc,iDAA2B,GAA1C,UACE,MAEC;;QAED,IAAM,KAAK,GAAa,EAAE,CAAA;;YAC1B,KAAoB,IAAA,WAAA,SAAA,MAAM,CAAA,8BAAA,kDAAE,CAAC;gBAAxB,IAAM,KAAK,mBAAA;gBACd,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;oBACjD,IAAM,UAAU,GAAG,qBAAqB,CAAC,qBAAqB,CAC5D,KAAK,CAAC,IAAI,CACX,CAAA;oBACD,IAAI,UAAU,EAAE,CAAC;wBACf,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;oBACxB,CAAC;gBACH,CAAC;YACH,CAAC;;;;;;;;;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAEc,6CAAuB,GAAtC,UAAuC,IAAY;;QACjD,IAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAA;;YAC/B,KAAoB,IAAA,KAAA,SAAA,IAAI,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CAAA,gBAAA,4BAAE,CAAC;gBAA/D,IAAM,KAAK,WAAA;gBACd,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;YACnC,CAAC;;;;;;;;;;YACD,KAAoB,IAAA,KAAA,SAAA,IAAI,CAAC,QAAQ,CAAC,mCAAmC,CAAC,CAAA,gBAAA,4BAAE,CAAC;gBAApE,IAAM,KAAK,WAAA;gBACd,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;YACnC,CAAC;;;;;;;;;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED;;OAEG;IACI,6CAAuB,GAA9B,UAA+B,IAAY;QACzC,OAAO,qBAAqB,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;IAC5D,CAAC;IACH,4BAAC;AAAD,CAAC,AA3ND,IA2NC"}