@ifc-lite/mcp 0.23.0 → 0.25.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/README.md +72 -0
- package/dist/cli.js +2 -1
- package/dist/cli.js.map +1 -1
- package/dist/context.d.ts +2 -0
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +5 -0
- package/dist/context.js.map +1 -1
- package/dist/errors.d.ts +2 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +2 -0
- package/dist/errors.js.map +1 -1
- package/dist/headless-backend-align.d.ts +6 -0
- package/dist/headless-backend-align.d.ts.map +1 -0
- package/dist/headless-backend-align.js +35 -0
- package/dist/headless-backend-align.js.map +1 -0
- package/dist/headless-backend-modelling.d.ts +41 -1
- package/dist/headless-backend-modelling.d.ts.map +1 -1
- package/dist/headless-backend-modelling.js +112 -6
- package/dist/headless-backend-modelling.js.map +1 -1
- package/dist/headless-backend-room.d.ts +8 -0
- package/dist/headless-backend-room.d.ts.map +1 -0
- package/dist/headless-backend-room.js +24 -0
- package/dist/headless-backend-room.js.map +1 -0
- package/dist/headless-backend-store-stubs.d.ts +4 -6
- package/dist/headless-backend-store-stubs.d.ts.map +1 -1
- package/dist/headless-backend-store-stubs.js +1 -12
- package/dist/headless-backend-store-stubs.js.map +1 -1
- package/dist/headless-backend-store.d.ts +3 -1
- package/dist/headless-backend-store.d.ts.map +1 -1
- package/dist/headless-backend-store.js +14 -22
- package/dist/headless-backend-store.js.map +1 -1
- package/dist/headless-backend.d.ts +4 -0
- package/dist/headless-backend.d.ts.map +1 -1
- package/dist/headless-backend.js +7 -1
- package/dist/headless-backend.js.map +1 -1
- package/dist/headless-native-geometry.d.ts +6 -0
- package/dist/headless-native-geometry.d.ts.map +1 -0
- package/dist/headless-native-geometry.js +31 -0
- package/dist/headless-native-geometry.js.map +1 -0
- package/dist/headless-room-geometry.d.ts +9 -0
- package/dist/headless-room-geometry.d.ts.map +1 -0
- package/dist/headless-room-geometry.js +66 -0
- package/dist/headless-room-geometry.js.map +1 -0
- package/dist/protocol/types.d.ts +1 -0
- package/dist/protocol/types.d.ts.map +1 -1
- package/dist/resources/providers.d.ts.map +1 -1
- package/dist/resources/providers.js +10 -1
- package/dist/resources/providers.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +7 -17
- package/dist/server.js.map +1 -1
- package/dist/session-cleanup.d.ts +5 -0
- package/dist/session-cleanup.d.ts.map +1 -0
- package/dist/session-cleanup.js +36 -0
- package/dist/session-cleanup.js.map +1 -0
- package/dist/test/live-tool-session.d.ts +9 -0
- package/dist/test/live-tool-session.d.ts.map +1 -0
- package/dist/test/live-tool-session.js +30 -0
- package/dist/test/live-tool-session.js.map +1 -0
- package/dist/tools/bcf.js +2 -2
- package/dist/tools/bcf.js.map +1 -1
- package/dist/tools/check-rules.d.ts.map +1 -1
- package/dist/tools/check-rules.js +18 -5
- package/dist/tools/check-rules.js.map +1 -1
- package/dist/tools/copy-elements.d.ts +4 -0
- package/dist/tools/copy-elements.d.ts.map +1 -0
- package/dist/tools/copy-elements.js +76 -0
- package/dist/tools/copy-elements.js.map +1 -0
- package/dist/tools/design-place.d.ts +3 -0
- package/dist/tools/design-place.d.ts.map +1 -0
- package/dist/tools/design-place.js +79 -0
- package/dist/tools/design-place.js.map +1 -0
- package/dist/tools/discovery.js +3 -3
- package/dist/tools/discovery.js.map +1 -1
- package/dist/tools/export.js +7 -7
- package/dist/tools/export.js.map +1 -1
- package/dist/tools/flow-ai.d.ts +10 -0
- package/dist/tools/flow-ai.d.ts.map +1 -0
- package/dist/tools/flow-ai.js +24 -0
- package/dist/tools/flow-ai.js.map +1 -0
- package/dist/tools/flow-host.d.ts +2 -2
- package/dist/tools/flow-host.d.ts.map +1 -1
- package/dist/tools/flow-host.js +15 -1
- package/dist/tools/flow-host.js.map +1 -1
- package/dist/tools/flow-review-host.d.ts +28 -0
- package/dist/tools/flow-review-host.d.ts.map +1 -0
- package/dist/tools/flow-review-host.js +142 -0
- package/dist/tools/flow-review-host.js.map +1 -0
- package/dist/tools/flow.d.ts.map +1 -1
- package/dist/tools/flow.js +145 -99
- package/dist/tools/flow.js.map +1 -1
- package/dist/tools/hosted-edit.d.ts +4 -0
- package/dist/tools/hosted-edit.d.ts.map +1 -0
- package/dist/tools/hosted-edit.js +37 -0
- package/dist/tools/hosted-edit.js.map +1 -0
- package/dist/tools/ids-accessor.d.ts +2 -1
- package/dist/tools/ids-accessor.d.ts.map +1 -1
- package/dist/tools/ids-accessor.js.map +1 -1
- package/dist/tools/ids-authoring-model.d.ts +3 -0
- package/dist/tools/ids-authoring-model.d.ts.map +1 -0
- package/dist/tools/ids-authoring-model.js +112 -0
- package/dist/tools/ids-authoring-model.js.map +1 -0
- package/dist/tools/ids-authoring.d.ts +3 -0
- package/dist/tools/ids-authoring.d.ts.map +1 -0
- package/dist/tools/ids-authoring.js +202 -0
- package/dist/tools/ids-authoring.js.map +1 -0
- package/dist/tools/ids-schema.d.ts +3 -0
- package/dist/tools/ids-schema.d.ts.map +1 -0
- package/dist/tools/ids-schema.js +91 -0
- package/dist/tools/ids-schema.js.map +1 -0
- package/dist/tools/index.d.ts +5 -2
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +10 -2
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/layer-store.d.ts +2 -0
- package/dist/tools/layer-store.d.ts.map +1 -1
- package/dist/tools/layer-store.js +4 -0
- package/dist/tools/layer-store.js.map +1 -1
- package/dist/tools/mutate.d.ts.map +1 -1
- package/dist/tools/mutate.js +12 -2
- package/dist/tools/mutate.js.map +1 -1
- package/dist/tools/mutation-undo.d.ts.map +1 -1
- package/dist/tools/mutation-undo.js +3 -0
- package/dist/tools/mutation-undo.js.map +1 -1
- package/dist/tools/physical-edit.d.ts +4 -0
- package/dist/tools/physical-edit.d.ts.map +1 -0
- package/dist/tools/physical-edit.js +77 -0
- package/dist/tools/physical-edit.js.map +1 -0
- package/dist/tools/query-tools.d.ts +3 -0
- package/dist/tools/query-tools.d.ts.map +1 -0
- package/dist/tools/query-tools.js +8 -0
- package/dist/tools/query-tools.js.map +1 -0
- package/dist/tools/query.d.ts +1 -1
- package/dist/tools/query.d.ts.map +1 -1
- package/dist/tools/query.js +4 -4
- package/dist/tools/query.js.map +1 -1
- package/dist/tools/review-captures.d.ts +10 -0
- package/dist/tools/review-captures.d.ts.map +1 -0
- package/dist/tools/review-captures.js +40 -0
- package/dist/tools/review-captures.js.map +1 -0
- package/dist/tools/review-findings.d.ts +4 -0
- package/dist/tools/review-findings.d.ts.map +1 -0
- package/dist/tools/review-findings.js +51 -0
- package/dist/tools/review-findings.js.map +1 -0
- package/dist/tools/room-command.d.ts +6 -0
- package/dist/tools/room-command.d.ts.map +1 -0
- package/dist/tools/room-command.js +75 -0
- package/dist/tools/room-command.js.map +1 -0
- package/dist/tools/util.d.ts +10 -0
- package/dist/tools/util.d.ts.map +1 -1
- package/dist/tools/util.js +13 -1
- package/dist/tools/util.js.map +1 -1
- package/dist/tools/validation.d.ts +9 -0
- package/dist/tools/validation.d.ts.map +1 -1
- package/dist/tools/validation.js +25 -11
- package/dist/tools/validation.js.map +1 -1
- package/dist/transport/http-helpers.d.ts +85 -0
- package/dist/transport/http-helpers.d.ts.map +1 -0
- package/dist/transport/http-helpers.js +149 -0
- package/dist/transport/http-helpers.js.map +1 -0
- package/dist/transport/http.d.ts +14 -1
- package/dist/transport/http.d.ts.map +1 -1
- package/dist/transport/http.js +80 -90
- package/dist/transport/http.js.map +1 -1
- package/dist/validate.d.ts +1 -1
- package/dist/validate.js +3 -0
- package/dist/validate.js.map +1 -1
- package/package.json +22 -19
package/dist/tools/flow.js
CHANGED
|
@@ -26,14 +26,10 @@
|
|
|
26
26
|
* tracked set yet — out of scope here; a future MCP-side sidecar (keyed per
|
|
27
27
|
* session or per model) would close that gap.
|
|
28
28
|
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
* pre-existing MCP limitation, not something this change introduces — a
|
|
34
|
-
* property-writing graph (like the shipped fire-rating-audit example) runs
|
|
35
|
-
* fine; a column-authoring graph will report a failed node until that
|
|
36
|
-
* backend gap is closed separately.
|
|
29
|
+
* Wall/column/slab/beam/stair/railing creation nodes use the shared SDK
|
|
30
|
+
* backend and create-package builders. Each creation is recorded as one
|
|
31
|
+
* compound mutation for public mutation_undo, retaining earlier overlay work.
|
|
32
|
+
* Stair/railing specs use their canonical builders; tracking remains per call.
|
|
37
33
|
*
|
|
38
34
|
* `run_flow` is the OTHER caller (besides `ifc-lite flow run`) allowed to
|
|
39
35
|
* read `process.env` for a flow graph (#5167 phase 3.5), following the same
|
|
@@ -51,7 +47,13 @@
|
|
|
51
47
|
import { readFile } from 'node:fs/promises';
|
|
52
48
|
import { checkAvailability, declaredInputKeys, describeFlowIO, migrateFlowDocument, MemoryTrackingStore, runFlow, unknownInputKeys, validateFlowDocument, validateFlowWiring, } from '@ifc-lite/flow';
|
|
53
49
|
import { parseCapabilities } from '@ifc-lite/extensions';
|
|
54
|
-
import { buildRedactionMap, createStandardRegistry,
|
|
50
|
+
import { buildRedactionMap, createStandardRegistry, interpolateSecrets, redactDeep, resolveSecretValues, validateSecretReferences, } from '@ifc-lite/flow-nodes';
|
|
51
|
+
// AI availability follows explicit host configuration; unconfigured hosts refuse before effects.
|
|
52
|
+
import { mcpFlowFeatures } from './flow-ai.js';
|
|
53
|
+
import { prepareMcpFlowReview, restoredMcpNodes } from './flow-review-host.js';
|
|
54
|
+
import { flowAiConfig } from '@ifc-lite/ai/chat-completions';
|
|
55
|
+
import { aiNodes } from '@ifc-lite/flow-nodes/ai';
|
|
56
|
+
import { reviewCaptures } from './review-captures.js';
|
|
55
57
|
import { createMcpFlowHost } from './flow-host.js';
|
|
56
58
|
import { okResult, paginate, resolveModel } from './util.js';
|
|
57
59
|
import { ToolErrorCode, ToolExecutionError } from '../errors.js';
|
|
@@ -108,7 +110,7 @@ const describeFlow = {
|
|
|
108
110
|
diagnostics: parsed.problems,
|
|
109
111
|
});
|
|
110
112
|
}
|
|
111
|
-
const registry = createStandardRegistry();
|
|
113
|
+
const registry = createStandardRegistry().registerAll(aiNodes);
|
|
112
114
|
const doc = parsed.doc;
|
|
113
115
|
// Registry-aware: `validateFlowDocument` alone cannot see a declared
|
|
114
116
|
// output naming a port no node has (#5167) — it never looks at a
|
|
@@ -116,7 +118,7 @@ const describeFlow = {
|
|
|
116
118
|
// validating clean and producing nothing at run time.
|
|
117
119
|
const diagnostics = validateFlowWiring(doc, registry);
|
|
118
120
|
const io = describeFlowIO(doc, registry);
|
|
119
|
-
const availability = checkAvailability(doc, registry,
|
|
121
|
+
const availability = checkAvailability(doc, registry, mcpFlowFeatures());
|
|
120
122
|
const unavailable = availability.filter((node) => node.status === 'unknown' || node.status === 'unavailable');
|
|
121
123
|
const ok = diagnostics.length === 0 && unavailable.length === 0;
|
|
122
124
|
return okResult(ok
|
|
@@ -171,6 +173,7 @@ const runFlowTool = {
|
|
|
171
173
|
type: 'object',
|
|
172
174
|
properties: {
|
|
173
175
|
...flowInputSchema,
|
|
176
|
+
checkpoint_path: { type: 'string', description: 'New durable review checkpoint destination, required before a review-capable run; subject to allowedPaths.' },
|
|
174
177
|
model_id: { type: 'string', description: 'Loaded model id; required when multiple models are loaded.' },
|
|
175
178
|
inputs: {
|
|
176
179
|
type: 'object',
|
|
@@ -180,100 +183,143 @@ const runFlowTool = {
|
|
|
180
183
|
},
|
|
181
184
|
additionalProperties: false,
|
|
182
185
|
},
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
})
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
});
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
})
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
}
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
});
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
186
|
+
handler: (input, ctx) => executeFlow(input, ctx),
|
|
187
|
+
};
|
|
188
|
+
async function executeFlow(input, ctx, resuming = false, readOnly = false) {
|
|
189
|
+
const value = await loadFlowValue(input, ctx);
|
|
190
|
+
const parsed = parseGraphValue(value);
|
|
191
|
+
if (!parsed.ok) {
|
|
192
|
+
throw new ToolExecutionError({
|
|
193
|
+
code: ToolErrorCode.INVALID_INPUT,
|
|
194
|
+
message: `Flow document is structurally invalid: ${parsed.problems.length} problem(s).`,
|
|
195
|
+
details: { diagnostics: parsed.problems },
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
const registry = createStandardRegistry().registerAll(aiNodes);
|
|
199
|
+
const doc = parsed.doc;
|
|
200
|
+
const wiring = validateFlowWiring(doc, registry);
|
|
201
|
+
if (wiring.length > 0) {
|
|
202
|
+
throw new ToolExecutionError({
|
|
203
|
+
code: ToolErrorCode.INVALID_INPUT,
|
|
204
|
+
message: `Flow document has ${wiring.length} wiring problem(s); call describe_flow first.`,
|
|
205
|
+
details: { diagnostics: wiring },
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
if (readOnly) {
|
|
209
|
+
const allowed = new Set(['model.read', 'network.ai']);
|
|
210
|
+
if (doc.capabilities.some(capability => !allowed.has(capability)) || doc.nodes.some(node => {
|
|
211
|
+
const definition = registry.get(node.type);
|
|
212
|
+
return definition?.writes || definition?.capabilities?.some(capability => !allowed.has(capability));
|
|
213
|
+
}))
|
|
214
|
+
throw new ToolExecutionError({ code: ToolErrorCode.PERMISSION_DENIED, message: 'propose_flow accepts only native read/AI nodes with model.read and network.ai; use authorized run_flow for effects' });
|
|
215
|
+
}
|
|
216
|
+
const rawInputs = input.inputs ?? {};
|
|
217
|
+
// The CLI bug this guards against: an `--input` key naming no declared
|
|
218
|
+
// parameter (e.g. missing the node id) used to be dropped silently, so
|
|
219
|
+
// the graph ran on its defaults and reported success anyway (#5167).
|
|
220
|
+
const unknown = unknownInputKeys(rawInputs, doc, registry);
|
|
221
|
+
if (unknown.length > 0) {
|
|
222
|
+
const known = declaredInputKeys(doc);
|
|
223
|
+
throw new ToolExecutionError({
|
|
224
|
+
code: ToolErrorCode.INVALID_INPUT,
|
|
225
|
+
message: `inputs key(s) ${unknown.map((k) => `"${k}"`).join(', ')} name no declared parameter${known.length > 0 ? `; this graph declares ${known.join(', ')}` : ''}.`,
|
|
226
|
+
});
|
|
227
|
+
}
|
|
228
|
+
// Capabilities first, so a malformed one is reported as itself rather
|
|
229
|
+
// than as every secret being undeclared (#5446 review).
|
|
230
|
+
const capsResult = parseCapabilities(doc.capabilities);
|
|
231
|
+
if (!capsResult.ok) {
|
|
232
|
+
throw new ToolExecutionError({
|
|
233
|
+
code: ToolErrorCode.INVALID_INPUT,
|
|
234
|
+
message: `the graph declares malformed capabilities: ${capsResult.errors.map((e) => e.message).join('; ')}`,
|
|
235
|
+
});
|
|
236
|
+
}
|
|
237
|
+
// Secrets: validated against the real environment BEFORE anything else
|
|
238
|
+
// touches the graph (see module doc above).
|
|
239
|
+
const secretErrors = validateSecretReferences(doc, process.env);
|
|
240
|
+
if (secretErrors.length > 0) {
|
|
241
|
+
throw new ToolExecutionError({
|
|
242
|
+
code: ToolErrorCode.INVALID_INPUT,
|
|
243
|
+
message: `${secretErrors.length} secret reference problem(s): ${secretErrors.map((e) => e.message).join('; ')}`,
|
|
244
|
+
});
|
|
245
|
+
}
|
|
246
|
+
const restored = await restoredMcpNodes(input, ctx, resuming);
|
|
247
|
+
const unavailable = checkAvailability(doc, registry, mcpFlowFeatures())
|
|
248
|
+
.filter((node) => !restored.has(node.nodeId) && (node.status === 'unknown' || node.status === 'unavailable'));
|
|
249
|
+
if (unavailable.length)
|
|
250
|
+
throw new ToolExecutionError({
|
|
251
|
+
code: ToolErrorCode.UNSUPPORTED_OPERATION,
|
|
252
|
+
message: `Flow cannot run on this host: ${unavailable.map((node) => `${node.nodeId}: ${node.reasons.join('; ')}`).join(' | ')}`,
|
|
253
|
+
details: { availability: unavailable },
|
|
254
|
+
});
|
|
255
|
+
const model = resolveModel(ctx, input.model_id);
|
|
256
|
+
const secretValues = new Map(resolveSecretValues(doc, process.env));
|
|
257
|
+
const aiConfig = flowAiConfig(process.env);
|
|
258
|
+
if (aiConfig)
|
|
259
|
+
secretValues.set('IFC_LITE_AI_API_KEY', aiConfig.apiKey);
|
|
260
|
+
reviewCaptures(ctx).enrollCredentials([...secretValues.values()]);
|
|
261
|
+
const redaction = buildRedactionMap(secretValues);
|
|
262
|
+
const runDoc = interpolateSecrets(doc, secretValues);
|
|
263
|
+
const review = await prepareMcpFlowReview(input, ctx, model, runDoc, registry, rawInputs, resuming, readOnly);
|
|
264
|
+
// `networkGrants` is the graph's own declared capabilities (module doc);
|
|
265
|
+
// `model.openFromSource` can switch the host to a model it opened.
|
|
266
|
+
const host = createMcpFlowHost(model, ctx.registry, capsResult.value, { ai: review.ai, grants: capsResult.value }, ctx);
|
|
267
|
+
const resume = await review.claim();
|
|
268
|
+
let result;
|
|
269
|
+
try {
|
|
270
|
+
result = await runFlow(runDoc, {
|
|
249
271
|
host,
|
|
272
|
+
resume,
|
|
250
273
|
registry,
|
|
251
274
|
inputs: rawInputs,
|
|
252
|
-
features:
|
|
275
|
+
features: mcpFlowFeatures(),
|
|
253
276
|
modelRevisions: { [model.id]: 0 },
|
|
254
277
|
tracking: new MemoryTrackingStore(),
|
|
255
278
|
signal: ctx.signal,
|
|
256
279
|
});
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
280
|
+
}
|
|
281
|
+
catch (error) {
|
|
282
|
+
await review.fail();
|
|
283
|
+
throw error;
|
|
284
|
+
}
|
|
285
|
+
const pending = await review.settle(result, redaction, host.defaultModelId);
|
|
286
|
+
const outputs = result.graphOutputs.map((o) => ({ label: o.label, key: `${o.nodeId}.${o.port}`, data: serializeFlowData(o.data) }));
|
|
287
|
+
const statuses = {};
|
|
288
|
+
for (const r of result.reports)
|
|
289
|
+
statuses[r.status] = (statuses[r.status] ?? 0) + 1;
|
|
290
|
+
// Redacted at the OUTER boundary — the whole tool result, right before
|
|
291
|
+
// it crosses back to the MCP client — so a secret that came back inside
|
|
292
|
+
// a fetched response body (an output or an error message) is caught
|
|
293
|
+
// too, not just the literal param it was interpolated into.
|
|
294
|
+
return okResult(result.ok
|
|
295
|
+
? pending ? `Flow '${doc.name}' paused for review; no downstream effects ran.` : `Flow '${doc.name}' ran: ${outputs.length} output(s).`
|
|
296
|
+
: `Flow '${doc.name}' FAILED.`, redactDeep({
|
|
297
|
+
ok: result.ok,
|
|
298
|
+
usage_receipts: review.receipts,
|
|
299
|
+
...(pending ? { pending } : {}),
|
|
300
|
+
nodes: statuses,
|
|
301
|
+
writes: result.writes,
|
|
302
|
+
tracking: trackingSummary(result),
|
|
303
|
+
outputs,
|
|
304
|
+
errors: result.log.filter((l) => l.level === 'error'),
|
|
305
|
+
warnings: result.log.filter((l) => l.level === 'warn'),
|
|
306
|
+
}, redaction));
|
|
307
|
+
}
|
|
308
|
+
const resumeFlowTool = {
|
|
309
|
+
...runFlowTool,
|
|
310
|
+
name: 'resume_flow',
|
|
311
|
+
description: 'Consume one separately reviewed pending Flow artifact by exact proposal digest. Rechecks current sources, graph, permissions and original budget before restoring completed nodes and running downstream effects. Completed or lost-owner claims cannot run twice.',
|
|
312
|
+
inputSchema: { ...runFlowTool.inputSchema, required: ['checkpoint_path', 'approved_digest'], properties: {
|
|
313
|
+
...runFlowTool.inputSchema.properties,
|
|
314
|
+
approved_digest: { type: 'string', description: 'The exact proposal_digest reviewed from the pending artifact.' },
|
|
315
|
+
next_checkpoint_path: { type: 'string', description: 'A distinct new destination when downstream nodes pause for review again.' },
|
|
316
|
+
} },
|
|
317
|
+
handler: (input, ctx) => executeFlow(input, ctx, true),
|
|
318
|
+
};
|
|
319
|
+
const proposeFlowTool = {
|
|
320
|
+
...runFlowTool, name: 'propose_flow', scope: 'read',
|
|
321
|
+
description: 'Run a native read/AI-only graph to a durable pending artifact. Model and external effect nodes are refused before requesting; applying requires a separate authorized resume_flow call.',
|
|
322
|
+
handler: (input, ctx) => executeFlow(input, ctx, false, true),
|
|
277
323
|
};
|
|
278
|
-
export const flowTools = [describeFlow, runFlowTool];
|
|
324
|
+
export const flowTools = [describeFlow, runFlowTool, proposeFlowTool, resumeFlowTool];
|
|
279
325
|
//# sourceMappingURL=flow.js.map
|
package/dist/tools/flow.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow.js","sourceRoot":"","sources":["../../src/tools/flow.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"flow.js","sourceRoot":"","sources":["../../src/tools/flow.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hosted-edit.d.ts","sourceRoot":"","sources":["../../src/tools/hosted-edit.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAGvC,sFAAsF;AACtF,eAAO,MAAM,cAAc,EAAE,IA4B5B,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
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 { ToolErrorCode, ToolExecutionError } from '../errors.js';
|
|
5
|
+
import { okResult, resolveModel } from './util.js';
|
|
6
|
+
/** #6232 D5: hosted.slide and inspector dimensions share their physical edit core. */
|
|
7
|
+
export const hostedEditTool = {
|
|
8
|
+
name: 'edit_hosted_element',
|
|
9
|
+
description: 'Move or resize a live wall-hosted opening, door or window together with its actual cut. '
|
|
10
|
+
+ 'Offset and Sill are metres in the host frame; OverallWidth/OverallHeight are metres. '
|
|
11
|
+
+ 'Identity and relationships are retained. Overlap, out-of-host and unsupported geometry edits are refused atomically. '
|
|
12
|
+
+ 'One mutation_undo restores the preceding graph.',
|
|
13
|
+
scope: 'mutate',
|
|
14
|
+
inputSchema: {
|
|
15
|
+
type: 'object', properties: {
|
|
16
|
+
model_id: { type: 'string', description: 'Required when multiple models are loaded.' },
|
|
17
|
+
express_id: { type: 'integer', minimum: 1 },
|
|
18
|
+
patch: {
|
|
19
|
+
type: 'object', properties: {
|
|
20
|
+
OverallWidth: { type: 'number', minimum: 0 }, OverallHeight: { type: 'number', minimum: 0 },
|
|
21
|
+
Offset: { type: 'number' }, Sill: { type: 'number' },
|
|
22
|
+
}, additionalProperties: false, anyOf: ['OverallWidth', 'OverallHeight', 'Offset', 'Sill'].map(name => ({ required: [name] })),
|
|
23
|
+
},
|
|
24
|
+
}, required: ['express_id', 'patch'], additionalProperties: false,
|
|
25
|
+
},
|
|
26
|
+
handler(input, ctx) {
|
|
27
|
+
const model = resolveModel(ctx, input.model_id);
|
|
28
|
+
try {
|
|
29
|
+
const ref = model.bim.store.editHostedElement({ modelId: model.id, expressId: input.express_id }, input.patch);
|
|
30
|
+
return okResult(`Edited hosted element #${ref.expressId}.`, { ...ref });
|
|
31
|
+
}
|
|
32
|
+
catch (error) {
|
|
33
|
+
throw new ToolExecutionError({ code: ToolErrorCode.INVALID_INPUT, message: error instanceof Error ? error.message : String(error) });
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=hosted-edit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hosted-edit.js","sourceRoot":"","sources":["../../src/tools/hosted-edit.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAG/D,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEjE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEnD,sFAAsF;AACtF,MAAM,CAAC,MAAM,cAAc,GAAS;IAClC,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EAAE,0FAA0F;UACnG,uFAAuF;UACvF,uHAAuH;UACvH,iDAAiD;IACrD,KAAK,EAAE,QAAQ;IACf,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE;YAC1B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2CAA2C,EAAE;YACtF,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE;YAC3C,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE;oBAC1B,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE;oBAC3F,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBACrD,EAAE,oBAAoB,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aAC/H;SACF,EAAE,QAAQ,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE,oBAAoB,EAAE,KAAK;KAClE;IACD,OAAO,CAAC,KAAK,EAAE,GAAG;QAChB,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,QAA8B,CAAC,CAAC;QACtE,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,UAAoB,EAAE,EAAE,KAAK,CAAC,KAA0B,CAAC,CAAC;YAC9I,OAAO,QAAQ,CAAC,0BAA0B,GAAG,CAAC,SAAS,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC;QAC1E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,kBAAkB,CAAC,EAAE,IAAI,EAAE,aAAa,CAAC,aAAa,EAAE,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACvI,CAAC;IACH,CAAC;CACF,CAAC"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import type { IfcDataStore } from '@ifc-lite/parser';
|
|
9
9
|
import type { MutablePropertyView } from '@ifc-lite/mutations';
|
|
10
|
+
import type { IFCDataAccessor } from '@ifc-lite/ids';
|
|
10
11
|
/**
|
|
11
12
|
* `mutationView`, when supplied, is consulted for entity membership only.
|
|
12
13
|
* Enumeration excludes tombstones and includes overlay-created entities, and
|
|
@@ -14,5 +15,5 @@ import type { MutablePropertyView } from '@ifc-lite/mutations';
|
|
|
14
15
|
* `EntityVisibilityView` structurally, so no adapter is needed. Omitting it
|
|
15
16
|
* leaves the accessor answering for the file as parsed.
|
|
16
17
|
*/
|
|
17
|
-
export declare function buildIdsAccessor(store: IfcDataStore, mutationView?: MutablePropertyView | null):
|
|
18
|
+
export declare function buildIdsAccessor(store: IfcDataStore, mutationView?: MutablePropertyView | null): IFCDataAccessor;
|
|
18
19
|
//# sourceMappingURL=ids-accessor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ids-accessor.d.ts","sourceRoot":"","sources":["../../src/tools/ids-accessor.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"ids-accessor.d.ts","sourceRoot":"","sources":["../../src/tools/ids-accessor.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGrD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,YAAY,EACnB,YAAY,CAAC,EAAE,mBAAmB,GAAG,IAAI,GACxC,eAAe,CAEjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ids-accessor.js","sourceRoot":"","sources":["../../src/tools/ids-accessor.ts"],"names":[],"mappings":"AAAA;;+DAE+D;
|
|
1
|
+
{"version":3,"file":"ids-accessor.js","sourceRoot":"","sources":["../../src/tools/ids-accessor.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAa/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAmB,EACnB,YAAyC;IAEzC,OAAO,kBAAkB,CAAC,KAAK,EAAE,SAAS,EAAE,YAAY,IAAI,SAAS,CAAC,CAAC;AACzE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ids-authoring-model.d.ts","sourceRoot":"","sources":["../../src/tools/ids-authoring-model.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAgGvC,eAAO,MAAM,sBAAsB,EAAE,IAAI,EAA0D,CAAC"}
|
|
@@ -0,0 +1,112 @@
|
|
|
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
|
+
/**
|
|
5
|
+
* IDS authoring tools, batch 2 (IDS-119): `ids_diff`, plus the model-loop
|
|
6
|
+
* and test-suite tools `ids_preview`, `ids_infer`, `ids_coverage` and
|
|
7
|
+
* `ids_test`.
|
|
8
|
+
*
|
|
9
|
+
* `ids_diff` works today (re-identification matcher, `diffIds`). The other
|
|
10
|
+
* four are declared with their final input schemas and answer
|
|
11
|
+
* UNSUPPORTED_OPERATION, the same convention as `gherkin_check`: the
|
|
12
|
+
* funnel, inference and coverage engines (IDS model loop) and the
|
|
13
|
+
* test-suite runner (IDS-110) are not in this release. Each replaces its
|
|
14
|
+
* stub handler when its engine lands; the names and inputs do not change.
|
|
15
|
+
*/
|
|
16
|
+
import { readFile } from 'node:fs/promises';
|
|
17
|
+
import { IDSParseError, parseIDS } from '@ifc-lite/ids';
|
|
18
|
+
import { diffIds } from '@ifc-lite/ids-authoring';
|
|
19
|
+
import { ToolErrorCode, ToolExecutionError } from '../errors.js';
|
|
20
|
+
import { resolveSafePath } from '../safe-path.js';
|
|
21
|
+
import { okResult } from './util.js';
|
|
22
|
+
async function loadSide(input, side, ctx) {
|
|
23
|
+
const inline = input[`${side}_xml`];
|
|
24
|
+
const path = input[`${side}_path`];
|
|
25
|
+
let xml;
|
|
26
|
+
if (typeof inline === 'string')
|
|
27
|
+
xml = inline;
|
|
28
|
+
else if (typeof path === 'string')
|
|
29
|
+
xml = await readFile(await resolveSafePath(path, ctx, 'read'), 'utf-8');
|
|
30
|
+
else
|
|
31
|
+
throw new ToolExecutionError({ code: ToolErrorCode.INVALID_INPUT, message: `Provide ${side}_xml or ${side}_path.` });
|
|
32
|
+
try {
|
|
33
|
+
return parseIDS(xml);
|
|
34
|
+
}
|
|
35
|
+
catch (err) {
|
|
36
|
+
if (!(err instanceof IDSParseError))
|
|
37
|
+
throw err;
|
|
38
|
+
throw new ToolExecutionError({ code: ToolErrorCode.PARSE_FAILED, message: `The ${side} IDS does not parse: ${err.message}` });
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
const idsDiff = {
|
|
42
|
+
name: 'ids_diff',
|
|
43
|
+
description: 'Semantic diff of two IDS revisions. Specifications and facets are paired by identifier, then name and applicability, then similarity, so a rename or an edited requirement is one change. Returns added / removed / changed entries with XML paths and a plain-language line each.',
|
|
44
|
+
scope: 'read',
|
|
45
|
+
inputSchema: {
|
|
46
|
+
type: 'object',
|
|
47
|
+
properties: {
|
|
48
|
+
before_xml: { type: 'string' },
|
|
49
|
+
before_path: { type: 'string', description: 'Subject to allowedPaths.' },
|
|
50
|
+
after_xml: { type: 'string' },
|
|
51
|
+
after_path: { type: 'string', description: 'Subject to allowedPaths.' },
|
|
52
|
+
},
|
|
53
|
+
additionalProperties: false,
|
|
54
|
+
},
|
|
55
|
+
async handler(input, ctx) {
|
|
56
|
+
const diff = diffIds(await loadSide(input, 'before', ctx), await loadSide(input, 'after', ctx));
|
|
57
|
+
const head = diff.identical ? 'No changes.' : `${diff.entries.length} change(s):`;
|
|
58
|
+
const lines = diff.entries.slice(0, 20).map((e) => `- ${e.text}`);
|
|
59
|
+
return okResult([head, ...lines].join('\n'), { identical: diff.identical, entries: diff.entries });
|
|
60
|
+
},
|
|
61
|
+
};
|
|
62
|
+
function notInThisRelease(name, engine) {
|
|
63
|
+
return () => {
|
|
64
|
+
throw new ToolExecutionError({
|
|
65
|
+
code: ToolErrorCode.UNSUPPORTED_OPERATION,
|
|
66
|
+
message: `${name} is not available in this release: it needs ${engine}, which has not shipped yet.`,
|
|
67
|
+
hint: 'Use ids_validate to check a model against an IDS, and ids_lint for static checks.',
|
|
68
|
+
});
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
const MODEL_ID = { type: 'string', description: 'Loaded model to evaluate against (default: the only one).' };
|
|
72
|
+
const IDS_SOURCE = {
|
|
73
|
+
ids_xml: { type: 'string' },
|
|
74
|
+
ids_path: { type: 'string' },
|
|
75
|
+
doc: { type: 'object', description: 'A Studio document from ids_read / ids_apply_ops.' },
|
|
76
|
+
};
|
|
77
|
+
const MODEL_LOOP = 'the IDS model loop (funnel, inference and coverage engines)';
|
|
78
|
+
const idsPreview = {
|
|
79
|
+
name: 'ids_preview',
|
|
80
|
+
description: 'Funnel counts per specification against a loaded model: how many elements each applicability facet keeps, and how many pass each requirement. Not available yet.',
|
|
81
|
+
scope: 'validate',
|
|
82
|
+
inputSchema: { type: 'object', properties: { model_id: MODEL_ID, ...IDS_SOURCE, spec_id: { type: 'string' } }, additionalProperties: false },
|
|
83
|
+
handler: notInThisRelease('ids_preview', MODEL_LOOP),
|
|
84
|
+
};
|
|
85
|
+
const idsInfer = {
|
|
86
|
+
name: 'ids_infer',
|
|
87
|
+
description: 'Infer specifications from the elements a selector picks in a loaded model (IfcOpenShell selector syntax). Returns ops for ids_apply_ops. Not available yet.',
|
|
88
|
+
scope: 'validate',
|
|
89
|
+
inputSchema: {
|
|
90
|
+
type: 'object',
|
|
91
|
+
properties: { model_id: MODEL_ID, select: { type: 'string' }, threshold: { type: 'number', minimum: 0, maximum: 1 } },
|
|
92
|
+
required: ['select'],
|
|
93
|
+
additionalProperties: false,
|
|
94
|
+
},
|
|
95
|
+
handler: notInThisRelease('ids_infer', MODEL_LOOP),
|
|
96
|
+
};
|
|
97
|
+
const idsCoverage = {
|
|
98
|
+
name: 'ids_coverage',
|
|
99
|
+
description: 'Element classes in a loaded model that no specification of the IDS governs. Not available yet.',
|
|
100
|
+
scope: 'validate',
|
|
101
|
+
inputSchema: { type: 'object', properties: { model_id: MODEL_ID, ...IDS_SOURCE }, additionalProperties: false },
|
|
102
|
+
handler: notInThisRelease('ids_coverage', MODEL_LOOP),
|
|
103
|
+
};
|
|
104
|
+
const idsTest = {
|
|
105
|
+
name: 'ids_test',
|
|
106
|
+
description: 'Run the test suites stored in an .idsz bundle (fixtures that must pass or fail each specification). Not available yet.',
|
|
107
|
+
scope: 'validate',
|
|
108
|
+
inputSchema: { type: 'object', properties: { idsz_path: { type: 'string' } }, required: ['idsz_path'], additionalProperties: false },
|
|
109
|
+
handler: notInThisRelease('ids_test', 'the IDS test-suite runner'),
|
|
110
|
+
};
|
|
111
|
+
export const idsAuthoringModelTools = [idsDiff, idsPreview, idsInfer, idsCoverage, idsTest];
|
|
112
|
+
//# sourceMappingURL=ids-authoring-model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ids-authoring-model.js","sourceRoot":"","sources":["../../src/tools/ids-authoring-model.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAoB,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEjE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC,KAAK,UAAU,QAAQ,CAAC,KAA8B,EAAE,IAAwB,EAAE,GAAgB;IAChG,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,IAAI,OAAO,CAAC,CAAC;IACnC,IAAI,GAAW,CAAC;IAChB,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,GAAG,GAAG,MAAM,CAAC;SACxC,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,GAAG,GAAG,MAAM,QAAQ,CAAC,MAAM,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;;QACtG,MAAM,IAAI,kBAAkB,CAAC,EAAE,IAAI,EAAE,aAAa,CAAC,aAAa,EAAE,OAAO,EAAE,WAAW,IAAI,WAAW,IAAI,QAAQ,EAAE,CAAC,CAAC;IAC1H,IAAI,CAAC;QACH,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,CAAC,GAAG,YAAY,aAAa,CAAC;YAAE,MAAM,GAAG,CAAC;QAC/C,MAAM,IAAI,kBAAkB,CAAC,EAAE,IAAI,EAAE,aAAa,CAAC,YAAY,EAAE,OAAO,EAAE,OAAO,IAAI,wBAAwB,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAChI,CAAC;AACH,CAAC;AAED,MAAM,OAAO,GAAS;IACpB,IAAI,EAAE,UAAU;IAChB,WAAW,EACT,oRAAoR;IACtR,KAAK,EAAE,MAAM;IACb,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC9B,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;YACxE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC7B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;SACxE;QACD,oBAAoB,EAAE,KAAK;KAC5B;IACD,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG;QACtB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE,MAAM,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QAChG,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,aAAa,CAAC;QAClF,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAClE,OAAO,QAAQ,CAAC,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IACrG,CAAC;CACF,CAAC;AAEF,SAAS,gBAAgB,CAAC,IAAY,EAAE,MAAc;IACpD,OAAO,GAAG,EAAE;QACV,MAAM,IAAI,kBAAkB,CAAC;YAC3B,IAAI,EAAE,aAAa,CAAC,qBAAqB;YACzC,OAAO,EAAE,GAAG,IAAI,+CAA+C,MAAM,8BAA8B;YACnG,IAAI,EAAE,mFAAmF;SAC1F,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2DAA2D,EAAW,CAAC;AACvH,MAAM,UAAU,GAAG;IACjB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC3B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC5B,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kDAAkD,EAAE;CAChF,CAAC;AACX,MAAM,UAAU,GAAG,6DAA6D,CAAC;AAEjF,MAAM,UAAU,GAAS;IACvB,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,kKAAkK;IAC/K,KAAK,EAAE,UAAU;IACjB,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,oBAAoB,EAAE,KAAK,EAAE;IAC5I,OAAO,EAAE,gBAAgB,CAAC,aAAa,EAAE,UAAU,CAAC;CACrD,CAAC;AAEF,MAAM,QAAQ,GAAS;IACrB,IAAI,EAAE,WAAW;IACjB,WAAW,EAAE,6JAA6J;IAC1K,KAAK,EAAE,UAAU;IACjB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE;QACrH,QAAQ,EAAE,CAAC,QAAQ,CAAC;QACpB,oBAAoB,EAAE,KAAK;KAC5B;IACD,OAAO,EAAE,gBAAgB,CAAC,WAAW,EAAE,UAAU,CAAC;CACnD,CAAC;AAEF,MAAM,WAAW,GAAS;IACxB,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,gGAAgG;IAC7G,KAAK,EAAE,UAAU;IACjB,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,UAAU,EAAE,EAAE,oBAAoB,EAAE,KAAK,EAAE;IAC/G,OAAO,EAAE,gBAAgB,CAAC,cAAc,EAAE,UAAU,CAAC;CACtD,CAAC;AAEF,MAAM,OAAO,GAAS;IACpB,IAAI,EAAE,UAAU;IAChB,WAAW,EAAE,wHAAwH;IACrI,KAAK,EAAE,UAAU;IACjB,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,WAAW,CAAC,EAAE,oBAAoB,EAAE,KAAK,EAAE;IACpI,OAAO,EAAE,gBAAgB,CAAC,UAAU,EAAE,2BAA2B,CAAC;CACnE,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAW,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ids-authoring.d.ts","sourceRoot":"","sources":["../../src/tools/ids-authoring.ts"],"names":[],"mappings":"AA4CA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAiMvC,eAAO,MAAM,iBAAiB,EAAE,IAAI,EAAwD,CAAC"}
|