@ifc-lite/mcp 0.12.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/backend-query.d.ts.map +1 -1
- package/dist/backend-query.js +12 -34
- package/dist/backend-query.js.map +1 -1
- package/dist/browser.d.ts +1 -0
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +6 -0
- package/dist/browser.js.map +1 -1
- package/dist/headless-backend.d.ts +13 -1
- package/dist/headless-backend.d.ts.map +1 -1
- package/dist/headless-backend.js +43 -18
- package/dist/headless-backend.js.map +1 -1
- package/dist/material-naming.d.ts +45 -0
- package/dist/material-naming.d.ts.map +1 -0
- package/dist/material-naming.js +59 -0
- package/dist/material-naming.js.map +1 -0
- package/dist/property-filter-match.d.ts +12 -0
- package/dist/property-filter-match.d.ts.map +1 -0
- package/dist/property-filter-match.js +17 -0
- package/dist/property-filter-match.js.map +1 -0
- package/dist/resources/providers.d.ts.map +1 -1
- package/dist/resources/providers.js +2 -1
- package/dist/resources/providers.js.map +1 -1
- package/dist/tools/bcf.d.ts.map +1 -1
- package/dist/tools/bcf.js +10 -1
- package/dist/tools/bcf.js.map +1 -1
- package/dist/tools/diff-classification-label.d.ts +12 -0
- package/dist/tools/diff-classification-label.d.ts.map +1 -0
- package/dist/tools/diff-classification-label.js +20 -0
- package/dist/tools/diff-classification-label.js.map +1 -0
- package/dist/tools/diff-fingerprints.d.ts +15 -19
- package/dist/tools/diff-fingerprints.d.ts.map +1 -1
- package/dist/tools/diff-fingerprints.js +32 -40
- package/dist/tools/diff-fingerprints.js.map +1 -1
- package/dist/tools/diff.d.ts.map +1 -1
- package/dist/tools/diff.js +2 -1
- package/dist/tools/diff.js.map +1 -1
- package/dist/tools/layer-ops.d.ts +1 -0
- package/dist/tools/layer-ops.d.ts.map +1 -1
- package/dist/tools/layer-ops.js +28 -0
- package/dist/tools/layer-ops.js.map +1 -1
- package/dist/tools/material-summary.d.ts +22 -0
- package/dist/tools/material-summary.d.ts.map +1 -0
- package/dist/tools/material-summary.js +49 -0
- package/dist/tools/material-summary.js.map +1 -0
- package/dist/tools/mutate.d.ts.map +1 -1
- package/dist/tools/mutate.js +50 -8
- package/dist/tools/mutate.js.map +1 -1
- package/dist/tools/query.js +32 -33
- package/dist/tools/query.js.map +1 -1
- package/dist/tools/viewer-assembly-expansion.d.ts +49 -0
- package/dist/tools/viewer-assembly-expansion.d.ts.map +1 -0
- package/dist/tools/viewer-assembly-expansion.js +66 -0
- package/dist/tools/viewer-assembly-expansion.js.map +1 -0
- package/dist/tools/viewer.d.ts.map +1 -1
- package/dist/tools/viewer.js +36 -38
- package/dist/tools/viewer.js.map +1 -1
- package/package.json +20 -20
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Human-readable "Materials:"/"Material:" line for `viewer_get_selection`'s
|
|
3
|
+
* text summary. Split out of `viewer.ts` (which sits at its module-size
|
|
4
|
+
* budget) rather than grown in place.
|
|
5
|
+
*/
|
|
6
|
+
import type { MaterialData } from '@ifc-lite/sdk';
|
|
7
|
+
/**
|
|
8
|
+
* Format a `MaterialData` value as a single summary line, or undefined
|
|
9
|
+
* when there is nothing to show. Every multi-material shape
|
|
10
|
+
* `extractMaterialsOnDemand` can produce is listed by its member names
|
|
11
|
+
* (`.layers[]`, `.profiles[]`, `.constituents[]`, `.materials[]`) before
|
|
12
|
+
* falling back to a single name — an `IfcMaterialProfileSet` or
|
|
13
|
+
* `IfcMaterialConstituentSet` with no set-level `Name` used to fall
|
|
14
|
+
* through to that single-name check alone, which found nothing and
|
|
15
|
+
* dropped the whole line instead of naming the assigned material.
|
|
16
|
+
*
|
|
17
|
+
* The single-name fallback still runs when the member arrays name nothing,
|
|
18
|
+
* so a NAMED set whose members are all unnamed keeps printing its own
|
|
19
|
+
* `Name` rather than a row of `?` placeholders.
|
|
20
|
+
*/
|
|
21
|
+
export declare function formatMaterialsBlock(mat: MaterialData | null | undefined): string | undefined;
|
|
22
|
+
//# sourceMappingURL=material-summary.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"material-summary.d.ts","sourceRoot":"","sources":["../../src/tools/material-summary.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAsBlD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAU7F"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
2
|
+
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
3
|
+
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
|
4
|
+
import { materialFallbackName } from '../material-naming.js';
|
|
5
|
+
/**
|
|
6
|
+
* Member list for one multi-material array, or undefined when the array is
|
|
7
|
+
* absent, empty, or names nothing.
|
|
8
|
+
*
|
|
9
|
+
* The last case matters: `IfcMaterialProfile.Material` and
|
|
10
|
+
* `IfcMaterialConstituent.Material` can be absent or fail to resolve, in
|
|
11
|
+
* which case `material-resolver.ts` leaves both `materialName` and `name`
|
|
12
|
+
* undefined on every member. A line of placeholders ("?, ?") names nothing,
|
|
13
|
+
* so it is worth less than the set-level `Name` the caller falls back to —
|
|
14
|
+
* report nothing here and let that fallback run.
|
|
15
|
+
*/
|
|
16
|
+
function memberLine(members) {
|
|
17
|
+
if (!Array.isArray(members) || members.length === 0)
|
|
18
|
+
return undefined;
|
|
19
|
+
if (!members.some((m) => m.materialName ?? m.name))
|
|
20
|
+
return undefined;
|
|
21
|
+
return ` Materials: ${members.map((m) => m.materialName ?? m.name ?? '?').join(', ')}`;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Format a `MaterialData` value as a single summary line, or undefined
|
|
25
|
+
* when there is nothing to show. Every multi-material shape
|
|
26
|
+
* `extractMaterialsOnDemand` can produce is listed by its member names
|
|
27
|
+
* (`.layers[]`, `.profiles[]`, `.constituents[]`, `.materials[]`) before
|
|
28
|
+
* falling back to a single name — an `IfcMaterialProfileSet` or
|
|
29
|
+
* `IfcMaterialConstituentSet` with no set-level `Name` used to fall
|
|
30
|
+
* through to that single-name check alone, which found nothing and
|
|
31
|
+
* dropped the whole line instead of naming the assigned material.
|
|
32
|
+
*
|
|
33
|
+
* The single-name fallback still runs when the member arrays name nothing,
|
|
34
|
+
* so a NAMED set whose members are all unnamed keeps printing its own
|
|
35
|
+
* `Name` rather than a row of `?` placeholders.
|
|
36
|
+
*/
|
|
37
|
+
export function formatMaterialsBlock(mat) {
|
|
38
|
+
if (!mat)
|
|
39
|
+
return undefined;
|
|
40
|
+
const line = memberLine(mat.layers) ??
|
|
41
|
+
memberLine(mat.profiles) ??
|
|
42
|
+
memberLine(mat.constituents) ??
|
|
43
|
+
memberLine(mat.materials);
|
|
44
|
+
if (line)
|
|
45
|
+
return line;
|
|
46
|
+
const name = materialFallbackName(mat);
|
|
47
|
+
return name ? ` Material: ${name}` : undefined;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=material-summary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"material-summary.js","sourceRoot":"","sources":["../../src/tools/material-summary.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAS/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D;;;;;;;;;;GAUG;AACH,SAAS,UAAU,CACjB,OAA4E;IAE5E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACtE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IACrE,OAAO,gBAAgB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAC1F,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAoC;IACvE,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,MAAM,IAAI,GACR,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;QACtB,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;QACxB,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC;QAC5B,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC5B,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IACtB,MAAM,IAAI,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;IACvC,OAAO,IAAI,CAAC,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mutate.d.ts","sourceRoot":"","sources":["../../src/tools/mutate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mutate.d.ts","sourceRoot":"","sources":["../../src/tools/mutate.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAwbvC,eAAO,MAAM,aAAa,EAAE,IAAI,EAU/B,CAAC"}
|
package/dist/tools/mutate.js
CHANGED
|
@@ -11,13 +11,19 @@
|
|
|
11
11
|
* - entity_set_property / entity_delete_property — Pset edits
|
|
12
12
|
* - entity_set_attribute — direct IFC attributes
|
|
13
13
|
* - entity_create / entity_delete — STEP-level entity ops
|
|
14
|
-
* - mutation_batch — apply N ops
|
|
14
|
+
* - mutation_batch — apply N ops in order
|
|
15
15
|
* - mutation_undo — pop last N entries
|
|
16
16
|
* - mutation_diff — pending changes summary
|
|
17
17
|
*
|
|
18
18
|
* The actual save lives in `tools/export.ts::export_ifc` (and the
|
|
19
19
|
* convenience `model_save` alias) so the user can preview a diff before
|
|
20
20
|
* writing the .ifc file.
|
|
21
|
+
*
|
|
22
|
+
* `mutation_batch` is NOT atomic and does not claim to be: it runs the
|
|
23
|
+
* operations in order and records each one's outcome in `results[]`. A failing
|
|
24
|
+
* operation is reported there and the ones before it stay queued; nothing is
|
|
25
|
+
* rolled back. Callers that need all-or-nothing have to check `results[]` and
|
|
26
|
+
* undo themselves.
|
|
21
27
|
*/
|
|
22
28
|
import { writeFile } from 'node:fs/promises';
|
|
23
29
|
import { findByGlobalId, okResult, resolveModel } from './util.js';
|
|
@@ -42,6 +48,31 @@ function resolveExpressId(m, input) {
|
|
|
42
48
|
}
|
|
43
49
|
throw new ToolExecutionError({ code: ToolErrorCode.INVALID_INPUT, message: 'Provide global_id or express_id.' });
|
|
44
50
|
}
|
|
51
|
+
/**
|
|
52
|
+
* The same id, checked against the model before anything is written to it.
|
|
53
|
+
*
|
|
54
|
+
* The write tools below do not go through `bim.mutate.*`: they reach
|
|
55
|
+
* `backend.getMutationView()` directly, so the guard that refuses a phantom
|
|
56
|
+
* write on the SDK path did not cover them. `entity_set_property` with an
|
|
57
|
+
* express id nothing holds created the overlay entry, answered "Queued", and
|
|
58
|
+
* was then dropped by the exporter (which only visits entities the effective
|
|
59
|
+
* model holds) with no diagnostic anywhere in the round trip (#3764).
|
|
60
|
+
*
|
|
61
|
+
* `entity_create` is the one write tool not routed through this: it has no id
|
|
62
|
+
* to check yet.
|
|
63
|
+
*/
|
|
64
|
+
function resolveWritableExpressId(m, input) {
|
|
65
|
+
const expressId = resolveExpressId(m, input);
|
|
66
|
+
const reason = m.backend.checkEntityRef({ modelId: m.id, expressId });
|
|
67
|
+
if (reason !== null) {
|
|
68
|
+
throw new ToolExecutionError({
|
|
69
|
+
code: ToolErrorCode.ENTITY_NOT_FOUND,
|
|
70
|
+
message: `Cannot write to #${expressId} in model '${m.id}': ${reason}`,
|
|
71
|
+
details: { expressId, modelId: m.id },
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
return expressId;
|
|
75
|
+
}
|
|
45
76
|
/** Shared with `bim.mutate.setProperty`, so the two paths cannot classify differently. */
|
|
46
77
|
const detectValueType = propertyValueTypeOf;
|
|
47
78
|
function applySetProperty(ctx, args) {
|
|
@@ -75,7 +106,7 @@ const entitySetProperty = {
|
|
|
75
106
|
handler(input, ctx) {
|
|
76
107
|
const m = resolveModel(ctx, input.model_id);
|
|
77
108
|
const backend = getBackend(m);
|
|
78
|
-
const expressId =
|
|
109
|
+
const expressId = resolveWritableExpressId(m, input);
|
|
79
110
|
const mutation = applySetProperty({ m, backend }, {
|
|
80
111
|
expressId,
|
|
81
112
|
pset: input.pset,
|
|
@@ -106,11 +137,15 @@ const entityDeleteProperty = {
|
|
|
106
137
|
handler(input, ctx) {
|
|
107
138
|
const m = resolveModel(ctx, input.model_id);
|
|
108
139
|
const backend = getBackend(m);
|
|
140
|
+
// Check BEFORE materialising the editor: `ensureEditor` creates the
|
|
141
|
+
// overlay, so checking second left an empty one behind on a refusal and
|
|
142
|
+
// `mutation_diff` then said "0 pending mutation(s)" where an untouched
|
|
143
|
+
// session says "No pending mutations."
|
|
144
|
+
const expressId = resolveWritableExpressId(m, input);
|
|
109
145
|
backend.ensureEditor();
|
|
110
146
|
const view = backend.getMutationView();
|
|
111
147
|
if (!view)
|
|
112
148
|
throw new Error('Mutation view not available');
|
|
113
|
-
const expressId = resolveExpressId(m, input);
|
|
114
149
|
const result = view.deleteProperty(expressId, input.pset, input.name);
|
|
115
150
|
return okResult(result ? 'Property delete queued.' : 'Property was not present; no-op.', { changed: !!result, expressId, pset: input.pset, name: input.name });
|
|
116
151
|
},
|
|
@@ -134,11 +169,13 @@ const entitySetAttribute = {
|
|
|
134
169
|
handler(input, ctx) {
|
|
135
170
|
const m = resolveModel(ctx, input.model_id);
|
|
136
171
|
const backend = getBackend(m);
|
|
172
|
+
// Checked before `ensureEditor` for the same reason as above: a refused
|
|
173
|
+
// write must leave the session as it found it.
|
|
174
|
+
const expressId = resolveWritableExpressId(m, input);
|
|
137
175
|
backend.ensureEditor();
|
|
138
176
|
const view = backend.getMutationView();
|
|
139
177
|
if (!view)
|
|
140
178
|
throw new Error('Mutation view not available');
|
|
141
|
-
const expressId = resolveExpressId(m, input);
|
|
142
179
|
const attribute = input.attribute;
|
|
143
180
|
// Capture the value as it stood right before this write so the mutation
|
|
144
181
|
// record's `oldValue` is the true prior value — `mutation_undo` (and any
|
|
@@ -195,15 +232,20 @@ const entityDelete = {
|
|
|
195
232
|
handler(input, ctx) {
|
|
196
233
|
const m = resolveModel(ctx, input.model_id);
|
|
197
234
|
const backend = getBackend(m);
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
235
|
+
// Checked like the write tools, and for the same reason: a delete of an id
|
|
236
|
+
// the model does not hold used to answer `okResult` with `deleted: false`,
|
|
237
|
+
// which `mutation_batch` counts as a succeeded step. "Batch 1/1 succeeded"
|
|
238
|
+
// for an operation that did nothing is the phantom write from the other
|
|
239
|
+
// end. `deleted: false` still stands for the one case that is genuinely a
|
|
240
|
+
// no-op rather than a mistake: an id this session already removed.
|
|
241
|
+
const expressId = resolveWritableExpressId(m, input);
|
|
242
|
+
const removed = backend.ensureEditor().removeEntity(expressId);
|
|
201
243
|
return okResult(removed ? 'Entity deleted.' : 'Entity not found / already gone.', { expressId, deleted: removed });
|
|
202
244
|
},
|
|
203
245
|
};
|
|
204
246
|
const mutationBatch = {
|
|
205
247
|
name: 'mutation_batch',
|
|
206
|
-
description: 'Apply N mutation operations
|
|
248
|
+
description: 'Apply N mutation operations in order. Each item names a sub-tool and its arguments. Returns per-step results in order. Not atomic: a failing operation is reported in results[] and does not roll back the ones before it.',
|
|
207
249
|
scope: 'mutate',
|
|
208
250
|
inputSchema: {
|
|
209
251
|
type: 'object',
|
package/dist/tools/mutate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mutate.js","sourceRoot":"","sources":["../../src/tools/mutate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mutate.js","sourceRoot":"","sources":["../../src/tools/mutate.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAI7C,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAOpD,SAAS,UAAU,CAAC,CAAkC;IACpD,OAAO,CAAC,CAAC,OAAO,CAAC;AACnB,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAkC,EAAE,KAA8B;IAC1F,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC,UAAU,CAAC;IAClE,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC;QAC5B,4EAA4E;QAC5E,8CAA8C;QAC9C,MAAM,KAAK,GAAG,cAAc,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACrC,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC;QACjC,MAAM,IAAI,kBAAkB,CAAC,EAAE,IAAI,EAAE,aAAa,CAAC,gBAAgB,EAAE,OAAO,EAAE,uBAAuB,GAAG,EAAE,EAAE,CAAC,CAAC;IAChH,CAAC;IACD,MAAM,IAAI,kBAAkB,CAAC,EAAE,IAAI,EAAE,aAAa,CAAC,aAAa,EAAE,OAAO,EAAE,kCAAkC,EAAE,CAAC,CAAC;AACnH,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,wBAAwB,CAAC,CAAkC,EAAE,KAA8B;IAClG,MAAM,SAAS,GAAG,gBAAgB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;IACtE,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,MAAM,IAAI,kBAAkB,CAAC;YAC3B,IAAI,EAAE,aAAa,CAAC,gBAAgB;YACpC,OAAO,EAAE,oBAAoB,SAAS,cAAc,CAAC,CAAC,EAAE,MAAM,MAAM,EAAE;YACtE,OAAO,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;SACtC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,0FAA0F;AAC1F,MAAM,eAAe,GAAG,mBAAmB,CAAC;AAE5C,SAAS,gBAAgB,CAAC,GAAoB,EAAE,IAAuE;IACrH,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;IAC1C,yEAAyE;IACzE,qEAAqE;IACrE,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;IAC3C,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IAC1D,KAAK,MAAM,CAAC;IACZ,MAAM,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9C,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAkC,EAAE,SAAS,CAAC,CAAC;AACpH,CAAC;AAED,MAAM,iBAAiB,GAAS;IAC9B,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EAAE,4FAA4F;IACzG,KAAK,EAAE,QAAQ;IACf,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC7B,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YAC/B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4CAA4C,EAAE;YACnF,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gCAAgC,EAAE;YACvE,KAAK,EAAE,EAAE,WAAW,EAAE,kCAAkC,EAAE;SAC3D;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;QAC1B,oBAAoB,EAAE,KAAK;KAC5B;IACD,OAAO,CAAC,KAAK,EAAE,GAAG;QAChB,MAAM,CAAC,GAAG,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,QAA8B,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,SAAS,GAAG,wBAAwB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACrD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE;YAChD,SAAS;YACT,IAAI,EAAE,KAAK,CAAC,IAAc;YAC1B,IAAI,EAAE,KAAK,CAAC,IAAc;YAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,WAAY,KAAK,CAAC,IAAe,IAAK,KAAK,CAAC,IAAe,QAAQ,SAAS,GAAG,EAAE;YAC/F,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,UAAU,EAAG,QAAqC,CAAC,EAAE,EAAE;SACzJ,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,MAAM,oBAAoB,GAAS;IACjC,IAAI,EAAE,wBAAwB;IAC9B,WAAW,EAAE,mEAAmE;IAChF,KAAK,EAAE,QAAQ;IACf,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC7B,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YAC/B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACxB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SACzB;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;QAC1B,oBAAoB,EAAE,KAAK;KAC5B;IACD,OAAO,CAAC,KAAK,EAAE,GAAG;QAChB,MAAM,CAAC,GAAG,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,QAA8B,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC9B,oEAAoE;QACpE,wEAAwE;QACxE,uEAAuE;QACvE,uCAAuC;QACvC,MAAM,SAAS,GAAG,wBAAwB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACrD,OAAO,CAAC,YAAY,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;QACvC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,IAAc,EAAE,KAAK,CAAC,IAAc,CAAC,CAAC;QAC1F,OAAO,QAAQ,CACb,MAAM,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,kCAAkC,EACvE,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CACrE,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,kBAAkB,GAAS;IAC/B,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EAAE,qEAAqE;IAClF,KAAK,EAAE,QAAQ;IACf,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC7B,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YAC/B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE;YACjF,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC1B;QACD,QAAQ,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC;QAChC,oBAAoB,EAAE,KAAK;KAC5B;IACD,OAAO,CAAC,KAAK,EAAE,GAAG;QAChB,MAAM,CAAC,GAAG,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,QAA8B,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC9B,wEAAwE;QACxE,+CAA+C;QAC/C,MAAM,SAAS,GAAG,wBAAwB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACrD,OAAO,CAAC,YAAY,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;QACvC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC1D,MAAM,SAAS,GAAG,KAAK,CAAC,SAAmB,CAAC;QAC5C,wEAAwE;QACxE,yEAAyE;QACzE,qEAAqE;QACrE,mEAAmE;QACnE,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;QAChG,MAAM,QAAQ,GAAG,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI;YAC1F,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;YACtB,CAAC,CAAC,SAAS,CAAC;QACd,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,KAAe,EAAE,QAAQ,CAAC,CAAC;QACzE,OAAO,QAAQ,CAAC,OAAO,KAAK,CAAC,SAAS,QAAQ,SAAS,GAAG,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAC7H,CAAC;CACF,CAAC;AAEF,MAAM,YAAY,GAAS;IACzB,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,oFAAoF;IACjG,KAAK,EAAE,QAAQ;IACf,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gCAAgC,EAAE;YACvE,UAAU,EAAE;gBACV,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,iFAAiF;gBAC9F,KAAK,EAAE,EAAE;aACV;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,CAAC;QAClB,oBAAoB,EAAE,KAAK;KAC5B;IACD,OAAO,CAAC,KAAK,EAAE,GAAG;QAChB,MAAM,CAAC,GAAG,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,QAA8B,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;QACtC,MAAM,KAAK,GAAI,KAAK,CAAC,UAAoC,IAAI,EAAE,CAAC;QAChE,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAc,EAAE,KAA+C,CAAC,CAAC;QACpG,OAAO,QAAQ,CAAC,WAAW,KAAK,CAAC,IAAI,QAAQ,GAAG,CAAC,SAAS,GAAG,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACjH,CAAC;CACF,CAAC;AAEF,MAAM,YAAY,GAAS;IACzB,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,oHAAoH;IACjI,KAAK,EAAE,QAAQ;IACf,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC7B,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;SAChC;QACD,oBAAoB,EAAE,KAAK;KAC5B;IACD,OAAO,CAAC,KAAK,EAAE,GAAG;QAChB,MAAM,CAAC,GAAG,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,QAA8B,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC9B,2EAA2E;QAC3E,2EAA2E;QAC3E,2EAA2E;QAC3E,wEAAwE;QACxE,0EAA0E;QAC1E,mEAAmE;QACnE,MAAM,SAAS,GAAG,wBAAwB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACrD,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC/D,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kCAAkC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IACrH,CAAC;CACF,CAAC;AAEF,MAAM,aAAa,GAAS;IAC1B,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,4NAA4N;IACzO,KAAK,EAAE,QAAQ;IACf,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5B,UAAU,EAAE;gBACV,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,qBAAqB,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,eAAe,EAAE,eAAe,CAAC,EAAE;wBAC3I,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;qBACzB;oBACD,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;iBAC3B;aACF;SACF;QACD,QAAQ,EAAE,CAAC,YAAY,CAAC;QACxB,oBAAoB,EAAE,KAAK;KAC5B;IACD,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG;QACtB,MAAM,GAAG,GAAG,KAAK,CAAC,UAAoE,CAAC;QACvF,MAAM,QAAQ,GAAyB;YACrC,mBAAmB,EAAE,iBAAiB;YACtC,sBAAsB,EAAE,oBAAoB;YAC5C,oBAAoB,EAAE,kBAAkB;YACxC,aAAa,EAAE,YAAY;YAC3B,aAAa,EAAE,YAAY;SAC5B,CAAC;QACF,MAAM,OAAO,GAA2E,EAAE,CAAC;QAC3F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YAClB,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;gBAC/B,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACjF,SAAS;gBACX,CAAC;gBACD,uEAAuE;gBACvE,yEAAyE;gBACzE,MAAM,OAAO,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,QAA8B,EAAE,CAAC;gBAC/E,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;gBAC5D,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,IAAI,CAAC;wBACX,IAAI,EAAE,EAAE,CAAC,IAAI;wBACb,EAAE,EAAE,KAAK;wBACT,KAAK,EAAE,kBAAkB,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;qBAC9F,CAAC,CAAC;oBACH,SAAS;gBACX,CAAC;gBACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAgC,EAAE,GAAG,CAAC,CAAC;gBACjF,IAAI,GAAG,CAAC,OAAO;oBAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAG,GAAG,CAAC,iBAAiB,EAAE,OAAkB,IAAI,QAAQ,EAAE,CAAC,CAAC;;oBACtH,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAChF,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACtG,CAAC;YACD,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QACvF,CAAC;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC;QACnD,OAAO,QAAQ,CAAC,SAAS,OAAO,IAAI,OAAO,CAAC,MAAM,aAAa,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAChF,CAAC;CACF,CAAC;AAEF,MAAM,YAAY,GAAS;IACzB,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,yDAAyD;IACtE,KAAK,EAAE,MAAM;IACb,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,oBAAoB,EAAE,KAAK,EAAE;IAC1G,OAAO,CAAC,KAAK,EAAE,GAAG;QAChB,MAAM,CAAC,GAAG,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,QAA8B,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;QACvC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,QAAQ,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;QACxE,CAAC;QACD,qEAAqE;QACrE,qEAAqE;QACrE,kEAAkE;QAClE,MAAM,OAAO,GAAI,IAAoD,CAAC,eAAe,IAAI,EAAE,CAAC;QAC5F,OAAO,QAAQ,CAAC,GAAG,OAAO,CAAC,MAAM,uBAAuB,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3G,CAAC;CACF,CAAC;AAIF;;;;;;;;;;GAUG;AACH,SAAS,cAAc,CAAC,IAAkB,EAAE,QAAkB;IAC5D,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtB,KAAK,iBAAiB;YACpB,IAAI,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBAC3C,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACrF,CAAC;YACD,OAAO;QACT,KAAK,iBAAiB,CAAC;QACvB,KAAK,iBAAiB;YACpB,IAAI,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC9E,IAAI,CAAC,WAAW,CACd,QAAQ,CAAC,QAAQ,EACjB,QAAQ,CAAC,QAAQ,EACjB,QAAQ,CAAC,QAAQ,EACjB,QAAQ,CAAC,QAAQ,EACjB,QAAQ,CAAC,SAAS,EAClB,SAAS,EACT,IAAI,CACL,CAAC;YACJ,CAAC;YACD,OAAO;QACT,KAAK,kBAAkB;YACrB,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;gBAC3B,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;oBAClE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;gBAC3G,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;gBAC1E,CAAC;YACH,CAAC;YACD,OAAO;QACT,KAAK,eAAe;YAClB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACrC,OAAO;QACT,KAAK,eAAe;YAClB,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC7C,OAAO;QACT;YACE,uEAAuE;YACvE,oEAAoE;YACpE,+DAA+D;YAC/D,MAAM,IAAI,kBAAkB,CAAC;gBAC3B,IAAI,EAAE,aAAa,CAAC,aAAa;gBACjC,OAAO,EAAE,mBAAmB,QAAQ,CAAC,IAAI,8CAA8C;aACxF,CAAC,CAAC;IACP,CAAC;AACH,CAAC;AAED,MAAM,YAAY,GAAS;IACzB,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,8IAA8I;IAC3J,KAAK,EAAE,QAAQ;IACf,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5B,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;SAC/C;QACD,oBAAoB,EAAE,KAAK;KAC5B;IACD,OAAO,CAAC,KAAK,EAAE,GAAG;QAChB,MAAM,CAAC,GAAG,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,QAA8B,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;QACvC,IAAI,CAAC,IAAI;YAAE,OAAO,QAAQ,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9D,MAAM,CAAC,GAAI,KAAK,CAAC,CAAwB,IAAI,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAI,IAAoD,CAAC,eAAe,IAAI,EAAE,CAAC;QAC5F,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;QACtD,yEAAyE;QACzE,6DAA6D;QAC7D,yCAAyC;QACzC,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/C,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC;QAChD,OAAO,QAAQ,CAAC,UAAU,MAAM,eAAe,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/D,CAAC;CACF,CAAC;AAEF,MAAM,SAAS,GAAS;IACtB,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,kGAAkG;IAC/G,KAAK,EAAE,QAAQ;IACf,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE;YAC/D,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE;SAC/D;QACD,QAAQ,EAAE,CAAC,WAAW,CAAC;QACvB,oBAAoB,EAAE,KAAK;KAC5B;IACD,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG;QACtB,MAAM,CAAC,GAAG,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,QAA8B,CAAC,CAAC;QAClE,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;QACtE,MAAM,MAAM,GAAI,KAAK,CAAC,MAA6B,IAAI,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC;QAC7E,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,MAAsC,EAAE,CAAC,CAAC;QACzF,MAAM,IAAI,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvF,MAAM,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACzC,OAAO,QAAQ,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,aAAa,QAAQ,GAAG,EAAE;YAC7E,QAAQ;YACR,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,MAAM;SACP,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAW;IACnC,iBAAiB;IACjB,oBAAoB;IACpB,kBAAkB;IAClB,YAAY;IACZ,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,YAAY;IACZ,SAAS;CACV,CAAC"}
|
package/dist/tools/query.js
CHANGED
|
@@ -11,9 +11,8 @@
|
|
|
11
11
|
*/
|
|
12
12
|
import { extractGeoreferencingOnDemand, extractLengthUnitScale } from '@ifc-lite/parser';
|
|
13
13
|
import { findByGlobalId, okResult, paginate, resolveGlobalIds, resolveModel } from './util.js';
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import { expandTypes } from '../backend-query.js';
|
|
14
|
+
import { materialFallbackName } from '../material-naming.js';
|
|
15
|
+
import { pendingMutationsField, pendingOverlay } from '../overlay.js';
|
|
17
16
|
import { buildSpatialTree } from '../spatial-tree.js';
|
|
18
17
|
import { ToolErrorCode, ToolExecutionError } from '../errors.js';
|
|
19
18
|
const COMPARISON_OPS = ['=', '!=', '>', '<', '>=', '<=', 'contains', 'exists'];
|
|
@@ -152,7 +151,7 @@ function shapeEntities(entities, fields) {
|
|
|
152
151
|
}
|
|
153
152
|
const countEntities = {
|
|
154
153
|
name: 'count_entities',
|
|
155
|
-
description: 'Count entities, optionally grouped by a key (type, storey, material). Returns aggregates rather than the full set.',
|
|
154
|
+
description: 'Count BIM entities (the same set `query_entities` returns), optionally grouped by a key (type, storey, material). Returns aggregates rather than the full set. For raw STEP record counts use `model_info`.',
|
|
156
155
|
scope: 'read',
|
|
157
156
|
inputSchema: {
|
|
158
157
|
type: 'object',
|
|
@@ -167,34 +166,36 @@ const countEntities = {
|
|
|
167
166
|
const m = resolveModel(ctx, input.model_id);
|
|
168
167
|
const groupBy = input.group_by;
|
|
169
168
|
const typeFilter = input.type;
|
|
170
|
-
// The type-keyed passes read `entityIndex.byType` directly rather than going
|
|
171
|
-
// through `bim.query()`, so they need the fold applied here (#2004).
|
|
172
169
|
const overlay = pendingOverlay(m);
|
|
170
|
+
// One universe of "entity" for every grouping key (#3765): the BIM products
|
|
171
|
+
// `bim.query()` yields, which is what `query_entities`, `get_entity` and the
|
|
172
|
+
// CLI's `query --count` / `query --group-by type` all mean by "entity".
|
|
173
|
+
// `group_by: 'type'` and the ungrouped total used to fold
|
|
174
|
+
// `store.entityIndex.byType` instead — every raw STEP record,
|
|
175
|
+
// IfcCartesianPoint and IfcPropertySingleValue included — so the same tool
|
|
176
|
+
// answered 44,249 by type and 128 by storey on AC20-FZK-Haus. The raw-STEP
|
|
177
|
+
// count is still right for the file-stats tools (`model_info`,
|
|
178
|
+
// `model_audit`, CLI `info`), which keep `foldedTypeCounts`.
|
|
179
|
+
const entities = typeFilter
|
|
180
|
+
? m.bim.query().byType(typeFilter).toArray()
|
|
181
|
+
: m.bim.query().toArray();
|
|
173
182
|
if (!groupBy) {
|
|
174
|
-
const total =
|
|
175
|
-
? m.bim.query().byType(typeFilter).toArray().length
|
|
176
|
-
: [...foldedTypeCounts(m.store, overlay).values()].reduce((sum, count) => sum + count, 0);
|
|
183
|
+
const total = entities.length;
|
|
177
184
|
return okResult(`${total.toLocaleString()} entities${typeFilter ? ` of type ${typeFilter}` : ''}.`, { total, ...pendingMutationsField(overlay) });
|
|
178
185
|
}
|
|
179
186
|
const groups = new Map();
|
|
180
187
|
if (groupBy === 'type') {
|
|
181
|
-
// `
|
|
182
|
-
//
|
|
183
|
-
//
|
|
184
|
-
//
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
if (wanted && !wanted.has(type))
|
|
189
|
-
continue;
|
|
190
|
-
// PascalCase, as `model_diff`'s type table reports it. Two tools naming
|
|
191
|
-
// the same class two ways is the defect, whichever spelling is right.
|
|
192
|
-
groups.set(IFC_ENTITY_NAMES[type] ?? type, count);
|
|
188
|
+
// `byType` already expanded subtypes above, so asking for IfcWall still
|
|
189
|
+
// counts every IFCWALLSTANDARDCASE. Keys come off `EntityData.type`, the
|
|
190
|
+
// same field `query_entities` reports and the CLI's `--group-by type`
|
|
191
|
+
// groups on.
|
|
192
|
+
for (const e of entities) {
|
|
193
|
+
const key = e.type || '(unknown)';
|
|
194
|
+
groups.set(key, (groups.get(key) ?? 0) + 1);
|
|
193
195
|
}
|
|
194
196
|
}
|
|
195
197
|
else if (groupBy === 'storey') {
|
|
196
|
-
const
|
|
197
|
-
for (const e of targets) {
|
|
198
|
+
for (const e of entities) {
|
|
198
199
|
// `m.bim.storey`, for the reason `in_storey` uses it: the raw EntityNode
|
|
199
200
|
// walk reads the parsed graph and would file every entity this session
|
|
200
201
|
// created under '(none)' even when it also queued the relationship that
|
|
@@ -205,16 +206,13 @@ const countEntities = {
|
|
|
205
206
|
}
|
|
206
207
|
}
|
|
207
208
|
else if (groupBy === 'material') {
|
|
208
|
-
const
|
|
209
|
-
for (const e of targets) {
|
|
209
|
+
for (const e of entities) {
|
|
210
210
|
const mat = m.bim.materials(e.ref);
|
|
211
|
-
const key = mat
|
|
211
|
+
const key = materialFallbackName(mat) ?? '(no material)';
|
|
212
212
|
groups.set(key, (groups.get(key) ?? 0) + 1);
|
|
213
213
|
}
|
|
214
214
|
}
|
|
215
|
-
const sorted = Array.from(groups.entries())
|
|
216
|
-
.sort((a, b) => b[1] - a[1])
|
|
217
|
-
.map(([key, count]) => ({ key, count }));
|
|
215
|
+
const sorted = Array.from(groups.entries()).sort((a, b) => b[1] - a[1]).map(([key, count]) => ({ key, count }));
|
|
218
216
|
return okResult(`Counted ${sorted.length} groups by ${groupBy}.`, {
|
|
219
217
|
groupBy,
|
|
220
218
|
groups: sorted,
|
|
@@ -370,8 +368,7 @@ const getEntitiesBulk = {
|
|
|
370
368
|
});
|
|
371
369
|
}
|
|
372
370
|
const entities = {};
|
|
373
|
-
// Every live entity this call saw per GlobalId, so a key
|
|
374
|
-
// than one can be reported instead of quietly resolved.
|
|
371
|
+
// Every live entity this call saw per GlobalId, so a key naming more than one is reported, not silently resolved.
|
|
375
372
|
const byGlobalId = new Map([...carriers].map(([globalId, list]) => [globalId, [...list]]));
|
|
376
373
|
for (const id of ids) {
|
|
377
374
|
const ref = { modelId: m.id, expressId: id };
|
|
@@ -391,7 +388,9 @@ const getEntitiesBulk = {
|
|
|
391
388
|
// First write wins, and the first write is the resolved one.
|
|
392
389
|
if (Object.prototype.hasOwnProperty.call(entities, data.globalId))
|
|
393
390
|
continue;
|
|
394
|
-
const e = { ...data };
|
|
391
|
+
const e = { ...data }; // identity only; attributes need their own call, like get_entity
|
|
392
|
+
if (include.has('attributes'))
|
|
393
|
+
e.attributes = m.bim.attributes(ref);
|
|
395
394
|
if (include.has('properties'))
|
|
396
395
|
e.properties = m.bim.properties(ref);
|
|
397
396
|
if (include.has('quantities'))
|
|
@@ -543,7 +542,7 @@ const materialsList = {
|
|
|
543
542
|
const mat = m.bim.materials(e.ref);
|
|
544
543
|
if (!mat)
|
|
545
544
|
continue;
|
|
546
|
-
const key = mat
|
|
545
|
+
const key = materialFallbackName(mat) ?? '(unnamed)';
|
|
547
546
|
counts.set(key, (counts.get(key) ?? 0) + 1);
|
|
548
547
|
}
|
|
549
548
|
const list = Array.from(counts.entries()).sort((a, b) => b[1] - a[1]).map(([name, count]) => ({ name, count }));
|
package/dist/tools/query.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/tools/query.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/tools/query.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Expands an `IfcRelAggregates` container ref (an `IfcElementAssembly`, an
|
|
3
|
+
* `IfcStair`/`IfcRoof` used as a container, a wall with
|
|
4
|
+
* `IfcBuildingElementPart`s, …) into itself plus every decomposition
|
|
5
|
+
* descendant, so the id set reaching the viewer includes the parts that
|
|
6
|
+
* actually carry the rendered mesh. Split out of `viewer.ts` so that file
|
|
7
|
+
* stays under its module-size budget.
|
|
8
|
+
*
|
|
9
|
+
* `packages/viewer`'s renderer (`viewer-html.ts`) keys `colorizeEntities` /
|
|
10
|
+
* `isolateEntities` / `hideEntities` / `showEntities` off `entityMap`, which
|
|
11
|
+
* is populated only from rendered mesh batches — a container id is never a
|
|
12
|
+
* key in it. `isolateEntities` in particular dims every id NOT in the
|
|
13
|
+
* requested set, so an unexpanded, geometry-less container id there dims the
|
|
14
|
+
* whole model (issue #3338); `hide`/`show`/`colorize` on an unexpanded
|
|
15
|
+
* container id are quieter, silent no-ops for the same reason.
|
|
16
|
+
*
|
|
17
|
+
* Unlike `apps/viewer`'s `expandToGeometryBearingIds`, this does not filter
|
|
18
|
+
* descendants by whether they actually rendered — packages/mcp runs
|
|
19
|
+
* server-side and has no view into which ids the browser's WASM mesher
|
|
20
|
+
* produced meshes for, only the parser's per-type `hasGeometry` flag, which
|
|
21
|
+
* is a coarse "this type is normally a product" bit (`IfcElementAssembly`
|
|
22
|
+
* itself reads `hasGeometry === true` there, via the `IfcElement` supertype
|
|
23
|
+
* catch-all, even with zero representation of its own — verified against a
|
|
24
|
+
* parsed fixture, not assumed). Passing the full descendant closure through
|
|
25
|
+
* unfiltered is safe: an id the renderer never keyed is simply absent from
|
|
26
|
+
* `entityMap`, so `isolateEntities`'s per-key loop never visits it and
|
|
27
|
+
* `hide`/`show`/`colorize` set a `colorOverrides` entry nothing ever reads.
|
|
28
|
+
* A ref that decomposes nothing passes through unchanged (a plain
|
|
29
|
+
* `IfcWall` global_id is a no-op here); an explicit ref for both a
|
|
30
|
+
* container and one of its own descendants collapses to one entry via the
|
|
31
|
+
* express-id dedup below rather than double-expanding.
|
|
32
|
+
*
|
|
33
|
+
* Called from exactly one place, `viewer.ts`'s `resolveTargetRefs` (#3338):
|
|
34
|
+
* every viewer tool that takes a selector gets the expansion by construction
|
|
35
|
+
* rather than by remembering to ask for it. A tool that genuinely needs the
|
|
36
|
+
* unexpanded refs has to say so by assembling them itself -- it must not be
|
|
37
|
+
* possible to lose the guarantee for every other tool by editing one line.
|
|
38
|
+
*/
|
|
39
|
+
import { collectAggregatedDescendants } from '@ifc-lite/data';
|
|
40
|
+
import type { EntityRef } from '@ifc-lite/sdk';
|
|
41
|
+
/** The narrow slice of `LoadedModel` this helper needs. */
|
|
42
|
+
export interface AssemblyExpansionModel {
|
|
43
|
+
id: string;
|
|
44
|
+
store: {
|
|
45
|
+
relationships: Parameters<typeof collectAggregatedDescendants>[0];
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
export declare function expandAssemblyRefs(m: AssemblyExpansionModel, refs: EntityRef[]): EntityRef[];
|
|
49
|
+
//# sourceMappingURL=viewer-assembly-expansion.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewer-assembly-expansion.d.ts","sourceRoot":"","sources":["../../src/tools/viewer-assembly-expansion.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,EAAE,4BAA4B,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,2DAA2D;AAC3D,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE;QAAE,aAAa,EAAE,UAAU,CAAC,OAAO,4BAA4B,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,CAAC;CAC9E;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE,CAqB5F"}
|