@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.
Files changed (168) hide show
  1. package/README.md +72 -0
  2. package/dist/cli.js +2 -1
  3. package/dist/cli.js.map +1 -1
  4. package/dist/context.d.ts +2 -0
  5. package/dist/context.d.ts.map +1 -1
  6. package/dist/context.js +5 -0
  7. package/dist/context.js.map +1 -1
  8. package/dist/errors.d.ts +2 -0
  9. package/dist/errors.d.ts.map +1 -1
  10. package/dist/errors.js +2 -0
  11. package/dist/errors.js.map +1 -1
  12. package/dist/headless-backend-align.d.ts +6 -0
  13. package/dist/headless-backend-align.d.ts.map +1 -0
  14. package/dist/headless-backend-align.js +35 -0
  15. package/dist/headless-backend-align.js.map +1 -0
  16. package/dist/headless-backend-modelling.d.ts +41 -1
  17. package/dist/headless-backend-modelling.d.ts.map +1 -1
  18. package/dist/headless-backend-modelling.js +112 -6
  19. package/dist/headless-backend-modelling.js.map +1 -1
  20. package/dist/headless-backend-room.d.ts +8 -0
  21. package/dist/headless-backend-room.d.ts.map +1 -0
  22. package/dist/headless-backend-room.js +24 -0
  23. package/dist/headless-backend-room.js.map +1 -0
  24. package/dist/headless-backend-store-stubs.d.ts +4 -6
  25. package/dist/headless-backend-store-stubs.d.ts.map +1 -1
  26. package/dist/headless-backend-store-stubs.js +1 -12
  27. package/dist/headless-backend-store-stubs.js.map +1 -1
  28. package/dist/headless-backend-store.d.ts +3 -1
  29. package/dist/headless-backend-store.d.ts.map +1 -1
  30. package/dist/headless-backend-store.js +14 -22
  31. package/dist/headless-backend-store.js.map +1 -1
  32. package/dist/headless-backend.d.ts +4 -0
  33. package/dist/headless-backend.d.ts.map +1 -1
  34. package/dist/headless-backend.js +7 -1
  35. package/dist/headless-backend.js.map +1 -1
  36. package/dist/headless-native-geometry.d.ts +6 -0
  37. package/dist/headless-native-geometry.d.ts.map +1 -0
  38. package/dist/headless-native-geometry.js +31 -0
  39. package/dist/headless-native-geometry.js.map +1 -0
  40. package/dist/headless-room-geometry.d.ts +9 -0
  41. package/dist/headless-room-geometry.d.ts.map +1 -0
  42. package/dist/headless-room-geometry.js +66 -0
  43. package/dist/headless-room-geometry.js.map +1 -0
  44. package/dist/protocol/types.d.ts +1 -0
  45. package/dist/protocol/types.d.ts.map +1 -1
  46. package/dist/resources/providers.d.ts.map +1 -1
  47. package/dist/resources/providers.js +10 -1
  48. package/dist/resources/providers.js.map +1 -1
  49. package/dist/server.d.ts.map +1 -1
  50. package/dist/server.js +7 -17
  51. package/dist/server.js.map +1 -1
  52. package/dist/session-cleanup.d.ts +5 -0
  53. package/dist/session-cleanup.d.ts.map +1 -0
  54. package/dist/session-cleanup.js +36 -0
  55. package/dist/session-cleanup.js.map +1 -0
  56. package/dist/test/live-tool-session.d.ts +9 -0
  57. package/dist/test/live-tool-session.d.ts.map +1 -0
  58. package/dist/test/live-tool-session.js +30 -0
  59. package/dist/test/live-tool-session.js.map +1 -0
  60. package/dist/tools/bcf.js +2 -2
  61. package/dist/tools/bcf.js.map +1 -1
  62. package/dist/tools/check-rules.d.ts.map +1 -1
  63. package/dist/tools/check-rules.js +18 -5
  64. package/dist/tools/check-rules.js.map +1 -1
  65. package/dist/tools/copy-elements.d.ts +4 -0
  66. package/dist/tools/copy-elements.d.ts.map +1 -0
  67. package/dist/tools/copy-elements.js +76 -0
  68. package/dist/tools/copy-elements.js.map +1 -0
  69. package/dist/tools/design-place.d.ts +3 -0
  70. package/dist/tools/design-place.d.ts.map +1 -0
  71. package/dist/tools/design-place.js +79 -0
  72. package/dist/tools/design-place.js.map +1 -0
  73. package/dist/tools/discovery.js +3 -3
  74. package/dist/tools/discovery.js.map +1 -1
  75. package/dist/tools/export.js +7 -7
  76. package/dist/tools/export.js.map +1 -1
  77. package/dist/tools/flow-ai.d.ts +10 -0
  78. package/dist/tools/flow-ai.d.ts.map +1 -0
  79. package/dist/tools/flow-ai.js +24 -0
  80. package/dist/tools/flow-ai.js.map +1 -0
  81. package/dist/tools/flow-host.d.ts +2 -2
  82. package/dist/tools/flow-host.d.ts.map +1 -1
  83. package/dist/tools/flow-host.js +15 -1
  84. package/dist/tools/flow-host.js.map +1 -1
  85. package/dist/tools/flow-review-host.d.ts +28 -0
  86. package/dist/tools/flow-review-host.d.ts.map +1 -0
  87. package/dist/tools/flow-review-host.js +142 -0
  88. package/dist/tools/flow-review-host.js.map +1 -0
  89. package/dist/tools/flow.d.ts.map +1 -1
  90. package/dist/tools/flow.js +145 -99
  91. package/dist/tools/flow.js.map +1 -1
  92. package/dist/tools/hosted-edit.d.ts +4 -0
  93. package/dist/tools/hosted-edit.d.ts.map +1 -0
  94. package/dist/tools/hosted-edit.js +37 -0
  95. package/dist/tools/hosted-edit.js.map +1 -0
  96. package/dist/tools/ids-accessor.d.ts +2 -1
  97. package/dist/tools/ids-accessor.d.ts.map +1 -1
  98. package/dist/tools/ids-accessor.js.map +1 -1
  99. package/dist/tools/ids-authoring-model.d.ts +3 -0
  100. package/dist/tools/ids-authoring-model.d.ts.map +1 -0
  101. package/dist/tools/ids-authoring-model.js +112 -0
  102. package/dist/tools/ids-authoring-model.js.map +1 -0
  103. package/dist/tools/ids-authoring.d.ts +3 -0
  104. package/dist/tools/ids-authoring.d.ts.map +1 -0
  105. package/dist/tools/ids-authoring.js +202 -0
  106. package/dist/tools/ids-authoring.js.map +1 -0
  107. package/dist/tools/ids-schema.d.ts +3 -0
  108. package/dist/tools/ids-schema.d.ts.map +1 -0
  109. package/dist/tools/ids-schema.js +91 -0
  110. package/dist/tools/ids-schema.js.map +1 -0
  111. package/dist/tools/index.d.ts +5 -2
  112. package/dist/tools/index.d.ts.map +1 -1
  113. package/dist/tools/index.js +10 -2
  114. package/dist/tools/index.js.map +1 -1
  115. package/dist/tools/layer-store.d.ts +2 -0
  116. package/dist/tools/layer-store.d.ts.map +1 -1
  117. package/dist/tools/layer-store.js +4 -0
  118. package/dist/tools/layer-store.js.map +1 -1
  119. package/dist/tools/mutate.d.ts.map +1 -1
  120. package/dist/tools/mutate.js +12 -2
  121. package/dist/tools/mutate.js.map +1 -1
  122. package/dist/tools/mutation-undo.d.ts.map +1 -1
  123. package/dist/tools/mutation-undo.js +3 -0
  124. package/dist/tools/mutation-undo.js.map +1 -1
  125. package/dist/tools/physical-edit.d.ts +4 -0
  126. package/dist/tools/physical-edit.d.ts.map +1 -0
  127. package/dist/tools/physical-edit.js +77 -0
  128. package/dist/tools/physical-edit.js.map +1 -0
  129. package/dist/tools/query-tools.d.ts +3 -0
  130. package/dist/tools/query-tools.d.ts.map +1 -0
  131. package/dist/tools/query-tools.js +8 -0
  132. package/dist/tools/query-tools.js.map +1 -0
  133. package/dist/tools/query.d.ts +1 -1
  134. package/dist/tools/query.d.ts.map +1 -1
  135. package/dist/tools/query.js +4 -4
  136. package/dist/tools/query.js.map +1 -1
  137. package/dist/tools/review-captures.d.ts +10 -0
  138. package/dist/tools/review-captures.d.ts.map +1 -0
  139. package/dist/tools/review-captures.js +40 -0
  140. package/dist/tools/review-captures.js.map +1 -0
  141. package/dist/tools/review-findings.d.ts +4 -0
  142. package/dist/tools/review-findings.d.ts.map +1 -0
  143. package/dist/tools/review-findings.js +51 -0
  144. package/dist/tools/review-findings.js.map +1 -0
  145. package/dist/tools/room-command.d.ts +6 -0
  146. package/dist/tools/room-command.d.ts.map +1 -0
  147. package/dist/tools/room-command.js +75 -0
  148. package/dist/tools/room-command.js.map +1 -0
  149. package/dist/tools/util.d.ts +10 -0
  150. package/dist/tools/util.d.ts.map +1 -1
  151. package/dist/tools/util.js +13 -1
  152. package/dist/tools/util.js.map +1 -1
  153. package/dist/tools/validation.d.ts +9 -0
  154. package/dist/tools/validation.d.ts.map +1 -1
  155. package/dist/tools/validation.js +25 -11
  156. package/dist/tools/validation.js.map +1 -1
  157. package/dist/transport/http-helpers.d.ts +85 -0
  158. package/dist/transport/http-helpers.d.ts.map +1 -0
  159. package/dist/transport/http-helpers.js +149 -0
  160. package/dist/transport/http-helpers.js.map +1 -0
  161. package/dist/transport/http.d.ts +14 -1
  162. package/dist/transport/http.d.ts.map +1 -1
  163. package/dist/transport/http.js +80 -90
  164. package/dist/transport/http.js.map +1 -1
  165. package/dist/validate.d.ts +1 -1
  166. package/dist/validate.js +3 -0
  167. package/dist/validate.js.map +1 -1
  168. package/package.json +22 -19
@@ -0,0 +1,202 @@
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 1 (IDS-118): `ids_audit`, `ids_lint`,
6
+ * `ids_read`, `ids_apply_ops`, `ids_write`. The `ids_schema_*` lookups
7
+ * live in `ids-schema.ts`.
8
+ *
9
+ * Stateless by design: a document travels as Studio JSON (`ids_read`
10
+ * output) between calls, and node ids are derived from the content, so
11
+ * reading the same XML twice gives the same ids.
12
+ *
13
+ * External agents get the grounding gate. `ids_apply_ops` is the only tool
14
+ * that changes a document, and it goes through `applyOpsGated`: every op is
15
+ * validated against the op JSON Schema and the batch is checked against the
16
+ * IFC schema tables; a refused batch changes nothing and the refusal (code,
17
+ * path, message, candidates) goes back to the caller. Because Studio JSON
18
+ * can be edited by hand between calls, `ids_write` audits what it
19
+ * serialises and refuses a document with audit errors.
20
+ */
21
+ import { auditIDSDocument, IDSParseError } from '@ifc-lite/ids';
22
+ import { applyOpsGated, createGateContext, createLintContext, createSidecar, createStudioDocument, getOpJsonSchema, lintDocument, nodePath, parseStudioDocument, readStudioDocument, serializeSidecar, writeStudioDocument, } from '@ifc-lite/ids-authoring';
23
+ import { writeIdsXml } from '@ifc-lite/ids';
24
+ import { ToolErrorCode, ToolExecutionError } from '../errors.js';
25
+ import { okResult } from './util.js';
26
+ import { loadIdsXml } from './validation.js';
27
+ const XML_INPUT = {
28
+ ids_xml: { type: 'string', description: 'Inline IDS XML.' },
29
+ ids_path: { type: 'string', description: 'Path to an .ids file (subject to allowedPaths).' },
30
+ };
31
+ const DOC_INPUT = {
32
+ type: 'object',
33
+ description: 'A Studio document as returned by ids_read or ids_apply_ops (`doc`).',
34
+ };
35
+ function parseError(err) {
36
+ if (err instanceof IDSParseError) {
37
+ throw new ToolExecutionError({ code: ToolErrorCode.PARSE_FAILED, message: `IDS does not parse: ${err.message}`, hint: 'Run ids_audit for details.' });
38
+ }
39
+ throw err;
40
+ }
41
+ /** `doc` when given, else the IDS in `ids_xml` / `ids_path`, else `fallback` (or an error). */
42
+ async function loadDocument(input, ctx, fallback) {
43
+ if (input.doc !== undefined) {
44
+ try {
45
+ return parseStudioDocument(input.doc);
46
+ }
47
+ catch (err) {
48
+ throw new ToolExecutionError({ code: ToolErrorCode.INVALID_INPUT, message: `doc is not a Studio document: ${err instanceof Error ? err.message : String(err)}` });
49
+ }
50
+ }
51
+ if (fallback && input.ids_xml === undefined && input.ids_path === undefined)
52
+ return fallback();
53
+ const xml = await loadIdsXml(input, ctx);
54
+ try {
55
+ return readStudioDocument(xml);
56
+ }
57
+ catch (err) {
58
+ return parseError(err);
59
+ }
60
+ }
61
+ async function lintSummary(doc, options = {}) {
62
+ const result = lintDocument(doc, await createLintContext(), options);
63
+ const diagnostics = result.diagnostics.map((d) => ({ ...d, path: nodePath(doc, d.nodeId) }));
64
+ const counts = { error: 0, warning: 0, info: 0 };
65
+ for (const d of diagnostics)
66
+ counts[d.severity]++;
67
+ return { counts, diagnostics, suppressed: result.suppressed.length };
68
+ }
69
+ function outline(doc) {
70
+ return doc.ids.specifications.map((spec, i) => ({
71
+ id: doc.nodes.specs[i].id,
72
+ name: spec.name,
73
+ applicability: doc.nodes.specs[i].applicability.map((n, j) => ({ id: n.id, type: spec.applicability.facets[j].type })),
74
+ requirements: doc.nodes.specs[i].requirements.map((n, j) => ({ id: n.id, type: spec.requirements[j].facet.type })),
75
+ }));
76
+ }
77
+ const idsAudit = {
78
+ name: 'ids_audit',
79
+ description: 'Conformance audit of an IDS file: XML and XSD shape, IFC entity/property names, restriction coherence. Answers "is this a valid IDS 1.0 file?". No model needed.',
80
+ scope: 'validate',
81
+ inputSchema: { type: 'object', properties: { ...XML_INPUT }, additionalProperties: false },
82
+ async handler(input, ctx) {
83
+ const report = await auditIDSDocument(await loadIdsXml(input, ctx));
84
+ const counts = { error: 0, warning: 0, info: 0 };
85
+ for (const issue of report.issues)
86
+ counts[issue.severity]++;
87
+ return okResult(`IDS audit: ${report.status} (${counts.error} errors, ${counts.warning} warnings, ${counts.info} info).`, {
88
+ status: report.status,
89
+ counts,
90
+ issues: report.issues,
91
+ });
92
+ },
93
+ };
94
+ const idsLint = {
95
+ name: 'ids_lint',
96
+ description: 'Lint an IDS document with the IDSL rule catalogue: does it mean what the author intends? Each diagnostic names its node (`nodeId`, `path`) and may carry quick fixes: op batches you can pass to ids_apply_ops unchanged. Pass `doc` (from ids_read / ids_apply_ops) or the XML.',
97
+ scope: 'validate',
98
+ inputSchema: {
99
+ type: 'object',
100
+ properties: {
101
+ doc: DOC_INPUT,
102
+ ...XML_INPUT,
103
+ rules: { type: 'array', items: { type: 'string' }, description: 'Only these rule codes, e.g. ["IDSL-PROP-001"].' },
104
+ severity: { type: 'object', description: 'Per-rule severity override: {"IDSL-SPEC-008": "off"}. Values: error, warning, info, off.' },
105
+ },
106
+ additionalProperties: false,
107
+ },
108
+ async handler(input, ctx) {
109
+ const doc = await loadDocument(input, ctx);
110
+ const severity = input.severity;
111
+ const summary = await lintSummary(doc, { rules: input.rules, severity });
112
+ const { counts } = summary;
113
+ return okResult(`IDS lint: ${counts.error} errors, ${counts.warning} warnings, ${counts.info} info.`, { docId: doc.docId, ...summary });
114
+ },
115
+ };
116
+ const idsRead = {
117
+ name: 'ids_read',
118
+ description: 'Read IDS XML into a Studio document (JSON with a stable UUID for every specification, facet and constraint). Pass the returned `doc` to ids_apply_ops, ids_lint and ids_write. Reading the same XML twice gives the same ids.',
119
+ scope: 'read',
120
+ inputSchema: { type: 'object', properties: { ...XML_INPUT }, additionalProperties: false },
121
+ async handler(input, ctx) {
122
+ const doc = await loadDocument(input, ctx);
123
+ return okResult(`Read "${doc.ids.info.title}": ${doc.ids.specifications.length} specification(s).`, { doc, outline: outline(doc) });
124
+ },
125
+ };
126
+ function opsInputSchema() {
127
+ const ops = getOpJsonSchema();
128
+ return {
129
+ type: 'object',
130
+ properties: {
131
+ doc: DOC_INPUT,
132
+ ...XML_INPUT,
133
+ title: { type: 'string', description: 'Title of a new, empty document (when neither doc nor XML is given).' },
134
+ ops: { type: 'array', minItems: 1, items: { oneOf: ops.oneOf }, description: 'Operations of IDS ops vocabulary v1, applied in order as one batch.' },
135
+ },
136
+ required: ['ops'],
137
+ additionalProperties: false,
138
+ $defs: ops.$defs,
139
+ };
140
+ }
141
+ function refusalText(issues) {
142
+ const lines = issues.slice(0, 5).map((i) => {
143
+ const near = i.candidates.slice(0, 3).map((c) => c.value);
144
+ return `- ${i.code} at ${i.path}: ${i.message}${near.length ? ` Did you mean: ${near.join(', ')}?` : ''}`;
145
+ });
146
+ const more = issues.length > 5 ? `\n- … ${issues.length - 5} more in structuredContent.details.issues` : '';
147
+ return `The grounding gate refused the batch; nothing was applied.\n${lines.join('\n')}${more}`;
148
+ }
149
+ const idsApplyOps = {
150
+ name: 'ids_apply_ops',
151
+ description: 'Change an IDS document by applying typed operations. Every op is validated and the batch is checked by the grounding gate against the IFC schema tables (entities, predefined types, attributes, property sets, properties, enumerations, data types). A refused batch changes nothing and returns each problem with a path and ranked candidates; fix the names and resend the whole batch. Starts from `doc`, from the XML, or from an empty document. Returns the new `doc` and its lint diagnostics.',
152
+ scope: 'read',
153
+ inputSchema: opsInputSchema(),
154
+ async handler(input, ctx) {
155
+ const doc = await loadDocument(input, ctx, () => createStudioDocument({ title: typeof input.title === 'string' ? input.title : '' }));
156
+ const result = applyOpsGated(doc, input.ops, await createGateContext());
157
+ if (!result.ok) {
158
+ throw new ToolExecutionError({
159
+ code: ToolErrorCode.INVALID_INPUT,
160
+ message: refusalText(result.issues),
161
+ details: { refused: true, issues: result.issues },
162
+ hint: 'Use ids_schema_search / ids_schema_entity / ids_schema_pset to look names up.',
163
+ });
164
+ }
165
+ const lint = await lintSummary(result.doc);
166
+ return okResult(`Applied ${result.applied.length} op(s). Lint: ${lint.counts.error} errors, ${lint.counts.warning} warnings, ${lint.counts.info} info.`, { doc: result.doc, applied: result.applied.length, touched: result.touched, lint });
167
+ },
168
+ };
169
+ const idsWrite = {
170
+ name: 'ids_write',
171
+ description: 'Serialise a Studio document to IDS 1.0 XML. The XML is read back to prove nothing was lost and audited; a document with audit errors is refused. Also returns the studio.json sidecar that keeps node ids next to the XML.',
172
+ scope: 'read',
173
+ inputSchema: { type: 'object', properties: { doc: DOC_INPUT }, required: ['doc'], additionalProperties: false },
174
+ async handler(input, ctx) {
175
+ const doc = await loadDocument(input, ctx);
176
+ const out = writeStudioDocument(doc, writeIdsXml);
177
+ if (!out.ok) {
178
+ throw new ToolExecutionError({
179
+ code: ToolErrorCode.UNSUPPORTED_OPERATION,
180
+ message: `Cannot write this document: ${out.message}`,
181
+ details: { reason: out.reason, lost: out.lost ?? [] },
182
+ });
183
+ }
184
+ const audit = await auditIDSDocument(out.xml);
185
+ const errors = audit.issues.filter((i) => i.severity === 'error');
186
+ if (errors.length > 0) {
187
+ throw new ToolExecutionError({
188
+ code: ToolErrorCode.INVALID_INPUT,
189
+ message: `The document fails the IDS audit (${errors.length} error(s)); it was not written. First: ${errors[0].message}`,
190
+ details: { issues: errors },
191
+ hint: 'Change documents through ids_apply_ops, which grounds names before they enter the document.',
192
+ });
193
+ }
194
+ return okResult(`Wrote "${doc.ids.info.title}" (${out.xml.length} characters).`, {
195
+ xml: out.xml,
196
+ sidecar: serializeSidecar(createSidecar(doc, out.xml)),
197
+ audit: { status: audit.status, issues: audit.issues },
198
+ });
199
+ },
200
+ };
201
+ export const idsAuthoringTools = [idsAudit, idsLint, idsRead, idsApplyOps, idsWrite];
202
+ //# sourceMappingURL=ids-authoring.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ids-authoring.js","sourceRoot":"","sources":["../../src/tools/ids-authoring.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { Tool } from './types.js';
2
+ export declare const idsSchemaTools: Tool[];
3
+ //# sourceMappingURL=ids-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ids-schema.d.ts","sourceRoot":"","sources":["../../src/tools/ids-schema.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AA0FvC,eAAO,MAAM,cAAc,EAAE,IAAI,EAAsD,CAAC"}
@@ -0,0 +1,91 @@
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 { createGateContext, describeEntity, describePset, searchSchema } from '@ifc-lite/ids-authoring';
5
+ import { ToolErrorCode, ToolExecutionError } from '../errors.js';
6
+ import { okResult } from './util.js';
7
+ const VERSION = {
8
+ type: 'string',
9
+ enum: ['IFC2X3', 'IFC4', 'IFC4X3', 'IFC4X3_ADD2'],
10
+ default: 'IFC4',
11
+ description: 'IFC schema version of the specification.',
12
+ };
13
+ const idsSchemaSearch = {
14
+ name: 'ids_schema_search',
15
+ description: 'Find IFC entity, property set, property or data type names close to a query (typo-tolerant). Use before writing a name into an IDS facet.',
16
+ scope: 'read',
17
+ inputSchema: {
18
+ type: 'object',
19
+ properties: {
20
+ query: { type: 'string', minLength: 1 },
21
+ kind: { type: 'string', enum: ['entity', 'pset', 'property', 'dataType'], description: 'Restrict to one kind.' },
22
+ ifc_version: VERSION,
23
+ limit: { type: 'integer', minimum: 1, maximum: 50, default: 10 },
24
+ },
25
+ required: ['query'],
26
+ additionalProperties: false,
27
+ },
28
+ async handler(input) {
29
+ const hits = searchSchema(await createGateContext(), input.query, {
30
+ kind: input.kind,
31
+ version: input.ifc_version,
32
+ limit: input.limit,
33
+ });
34
+ const top = hits.slice(0, 5).map((h) => `${h.value} (${h.kind})`).join(', ');
35
+ return okResult(hits.length ? `Closest: ${top}.` : 'No close names.', { hits });
36
+ },
37
+ };
38
+ const idsSchemaEntity = {
39
+ name: 'ids_schema_entity',
40
+ description: 'Describe an IFC entity for IDS authoring: supertypes, abstract flag, predefined types, attributes and the standard property sets that apply to it.',
41
+ scope: 'read',
42
+ inputSchema: {
43
+ type: 'object',
44
+ properties: { name: { type: 'string', minLength: 1, description: 'Entity name, any case (IfcDoor or IFCDOOR).' }, ifc_version: VERSION },
45
+ required: ['name'],
46
+ additionalProperties: false,
47
+ },
48
+ async handler(input) {
49
+ const ctx = await createGateContext();
50
+ const version = input.ifc_version;
51
+ const name = input.name;
52
+ const entity = describeEntity(ctx, name, version);
53
+ if (!entity) {
54
+ const candidates = searchSchema(ctx, name, { kind: 'entity', version, limit: 5 });
55
+ throw new ToolExecutionError({
56
+ code: ToolErrorCode.INVALID_INPUT,
57
+ message: `"${name}" is not an entity of ${version}.${candidates.length ? ` Did you mean: ${candidates.map((c) => c.value).join(', ')}?` : ''}`,
58
+ details: { candidates },
59
+ });
60
+ }
61
+ return okResult(`${entity.name} (${version}): ${entity.propertySets.length} applicable property set(s).`, { entity });
62
+ },
63
+ };
64
+ const idsSchemaPset = {
65
+ name: 'ids_schema_pset',
66
+ description: 'Describe a standard property or quantity set: the entities it applies to and its properties with data types and enumerations.',
67
+ scope: 'read',
68
+ inputSchema: {
69
+ type: 'object',
70
+ properties: { name: { type: 'string', minLength: 1, description: 'Exact set name, e.g. Pset_DoorCommon.' }, ifc_version: VERSION },
71
+ required: ['name'],
72
+ additionalProperties: false,
73
+ },
74
+ async handler(input) {
75
+ const ctx = await createGateContext();
76
+ const version = input.ifc_version;
77
+ const name = input.name;
78
+ const pset = describePset(ctx, name, version);
79
+ if (!pset) {
80
+ const candidates = searchSchema(ctx, name, { kind: 'pset', version, limit: 5 });
81
+ throw new ToolExecutionError({
82
+ code: ToolErrorCode.INVALID_INPUT,
83
+ message: `"${name}" is not a standard property set of ${version}.${candidates.length ? ` Did you mean: ${candidates.map((c) => c.value).join(', ')}?` : ''}`,
84
+ details: { candidates },
85
+ });
86
+ }
87
+ return okResult(`${pset.name} (${version}): ${pset.properties.length} propert${pset.properties.length === 1 ? 'y' : 'ies'}.`, { pset });
88
+ },
89
+ };
90
+ export const idsSchemaTools = [idsSchemaSearch, idsSchemaEntity, idsSchemaPset];
91
+ //# sourceMappingURL=ids-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ids-schema.js","sourceRoot":"","sources":["../../src/tools/ids-schema.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { ToolRegistry } from './types.js';
2
2
  import { discoveryTools } from './discovery.js';
3
- import { queryTools } from './query.js';
3
+ import { queryTools } from './query-tools.js';
4
4
  import { geometryTools } from './geometry.js';
5
5
  import { clashTools } from './clash.js';
6
6
  import { validationTools } from './validation.js';
@@ -14,11 +14,14 @@ import { viewerTools } from './viewer.js';
14
14
  import { costTools } from './cost.js';
15
15
  import { structuralTools } from './structural.js';
16
16
  import { flowTools } from './flow.js';
17
+ import { idsAuthoringTools } from './ids-authoring.js';
18
+ import { idsAuthoringModelTools } from './ids-authoring-model.js';
19
+ import { idsSchemaTools } from './ids-schema.js';
17
20
  /** Agent draft-layer family (06-agents.md): draft lifecycle + review loop. */
18
21
  export declare const layerTools: import("./types.js").Tool[];
19
22
  export { ToolRegistry } from './types.js';
20
23
  export type { Tool } from './types.js';
21
- export { discoveryTools, queryTools, geometryTools, clashTools, validationTools, checkRulesTools, mutationTools, bcfTools, bsddTools, diffTools, exportTools, viewerTools, costTools, structuralTools, flowTools, };
24
+ export { discoveryTools, queryTools, geometryTools, clashTools, validationTools, checkRulesTools, mutationTools, bcfTools, bsddTools, diffTools, exportTools, viewerTools, costTools, structuralTools, flowTools, idsAuthoringTools, idsAuthoringModelTools, idsSchemaTools, };
22
25
  export { resetLayerWorkspace, getLayerWorkspace, disposeLayerWorkspace } from './layer-store.js';
23
26
  /**
24
27
  * Build a ToolRegistry pre-loaded with every tool ifc-lite-mcp ships in v0.1.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,8EAA8E;AAC9E,eAAO,MAAM,UAAU,6BAA4C,CAAC;AAEpE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,YAAY,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EACL,cAAc,EACd,UAAU,EACV,aAAa,EACb,UAAU,EACV,eAAe,EACf,eAAe,EACf,aAAa,EACb,QAAQ,EACR,SAAS,EACT,SAAS,EACT,WAAW,EACX,WAAW,EACX,SAAS,EACT,eAAe,EACf,SAAS,GACV,CAAC;AACF,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEjG;;;;GAIG;AACH,wBAAgB,wBAAwB,IAAI,YAAY,CAmBvD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,8EAA8E;AAC9E,eAAO,MAAM,UAAU,6BAA4C,CAAC;AAEpE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,YAAY,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EACL,cAAc,EACd,UAAU,EACV,aAAa,EACb,UAAU,EACV,eAAe,EACf,eAAe,EACf,aAAa,EACb,QAAQ,EACR,SAAS,EACT,SAAS,EACT,WAAW,EACX,WAAW,EACX,SAAS,EACT,eAAe,EACf,SAAS,EACT,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,GACf,CAAC;AACF,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEjG;;;;GAIG;AACH,wBAAgB,wBAAwB,IAAI,YAAY,CAuBvD"}
@@ -3,11 +3,12 @@
3
3
  * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
4
4
  import { ToolRegistry } from './types.js';
5
5
  import { discoveryTools } from './discovery.js';
6
- import { queryTools } from './query.js';
6
+ import { queryTools } from './query-tools.js';
7
7
  import { geometryTools } from './geometry.js';
8
8
  import { clashTools } from './clash.js';
9
9
  import { validationTools } from './validation.js';
10
10
  import { checkRulesTools } from './check-rules.js';
11
+ import { reviewFindingsTools } from './review-findings.js';
11
12
  import { mutationTools } from './mutate.js';
12
13
  import { bcfTools } from './bcf.js';
13
14
  import { bsddTools } from './bsdd.js';
@@ -19,10 +20,13 @@ import { layerReviewTools } from './layer-review.js';
19
20
  import { costTools } from './cost.js';
20
21
  import { structuralTools } from './structural.js';
21
22
  import { flowTools } from './flow.js';
23
+ import { idsAuthoringTools } from './ids-authoring.js';
24
+ import { idsAuthoringModelTools } from './ids-authoring-model.js';
25
+ import { idsSchemaTools } from './ids-schema.js';
22
26
  /** Agent draft-layer family (06-agents.md): draft lifecycle + review loop. */
23
27
  export const layerTools = [...draftLayerTools, ...layerReviewTools];
24
28
  export { ToolRegistry } from './types.js';
25
- export { discoveryTools, queryTools, geometryTools, clashTools, validationTools, checkRulesTools, mutationTools, bcfTools, bsddTools, diffTools, exportTools, viewerTools, costTools, structuralTools, flowTools, };
29
+ export { discoveryTools, queryTools, geometryTools, clashTools, validationTools, checkRulesTools, mutationTools, bcfTools, bsddTools, diffTools, exportTools, viewerTools, costTools, structuralTools, flowTools, idsAuthoringTools, idsAuthoringModelTools, idsSchemaTools, };
26
30
  export { resetLayerWorkspace, getLayerWorkspace, disposeLayerWorkspace } from './layer-store.js';
27
31
  /**
28
32
  * Build a ToolRegistry pre-loaded with every tool ifc-lite-mcp ships in v0.1.
@@ -37,6 +41,7 @@ export function buildDefaultToolRegistry() {
37
41
  registry.registerAll(clashTools);
38
42
  registry.registerAll(validationTools);
39
43
  registry.registerAll(checkRulesTools);
44
+ registry.registerAll(reviewFindingsTools);
40
45
  registry.registerAll(mutationTools);
41
46
  registry.registerAll(bcfTools);
42
47
  registry.registerAll(bsddTools);
@@ -46,6 +51,9 @@ export function buildDefaultToolRegistry() {
46
51
  registry.registerAll(costTools);
47
52
  registry.registerAll(structuralTools);
48
53
  registry.registerAll(flowTools);
54
+ registry.registerAll(idsAuthoringTools);
55
+ registry.registerAll(idsAuthoringModelTools);
56
+ registry.registerAll(idsSchemaTools);
49
57
  registry.registerAll(layerTools);
50
58
  return registry;
51
59
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,8EAA8E;AAC9E,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAG,eAAe,EAAE,GAAG,gBAAgB,CAAC,CAAC;AAEpE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EACL,cAAc,EACd,UAAU,EACV,aAAa,EACb,UAAU,EACV,eAAe,EACf,eAAe,EACf,aAAa,EACb,QAAQ,EACR,SAAS,EACT,SAAS,EACT,WAAW,EACX,WAAW,EACX,SAAS,EACT,eAAe,EACf,SAAS,GACV,CAAC;AACF,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEjG;;;;GAIG;AACH,MAAM,UAAU,wBAAwB;IACtC,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;IACpC,QAAQ,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IACrC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACjC,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;IACpC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACjC,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IACtC,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IACtC,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;IACpC,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAClC,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAClC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IACtC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACjC,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
@@ -60,6 +60,8 @@ export interface LayerWorkspace {
60
60
  }
61
61
  export declare function createLayerWorkspace(): LayerWorkspace;
62
62
  export declare function getLayerWorkspace(sessionId?: string): LayerWorkspace;
63
+ /** Unpublished drafts a transport session holds; unlike `getLayerWorkspace`, never creates a draft space. */
64
+ export declare function draftCount(sessionId: string): number;
63
65
  /**
64
66
  * Drop a session's draft space when the transport session ends. Layers,
65
67
  * refs, and reviews deliberately survive — they are the published shared
@@ -1 +1 @@
1
- {"version":3,"file":"layer-store.d.ts","sourceRoot":"","sources":["../../src/tools/layer-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layer-store.d.ts","sourceRoot":"","sources":["../../src/tools/layer-store.ts"],"names":[],"mappings":"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"}
@@ -53,6 +53,10 @@ export function getLayerWorkspace(sessionId) {
53
53
  }
54
54
  return { drafts, layers: shared.layers, refs: shared.refs, reviews: shared.reviews };
55
55
  }
56
+ /** Unpublished drafts a transport session holds; unlike `getLayerWorkspace`, never creates a draft space. */
57
+ export function draftCount(sessionId) {
58
+ return draftSpaces.get(sessionId)?.size ?? 0;
59
+ }
56
60
  /** Drafts hold live Y.Docs — destroy them or the CRDT state lingers. */
57
61
  function destroyDrafts(drafts) {
58
62
  for (const draft of drafts.values())
@@ -1 +1 @@
1
- {"version":3,"file":"layer-store.js","sourceRoot":"","sources":["../../src/tools/layer-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layer-store.js","sourceRoot":"","sources":["../../src/tools/layer-store.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mutate.d.ts","sourceRoot":"","sources":["../../src/tools/mutate.ts"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AA4TvC,eAAO,MAAM,aAAa,EAAE,IAAI,EAY/B,CAAC"}
1
+ {"version":3,"file":"mutate.d.ts","sourceRoot":"","sources":["../../src/tools/mutate.ts"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAiUvC,eAAO,MAAM,aAAa,EAAE,IAAI,EAiB/B,CAAC"}
@@ -28,7 +28,7 @@
28
28
  import { writeFile } from 'node:fs/promises';
29
29
  import { entityTargetSchema } from './entity-target-schema.js';
30
30
  import { entityCreate } from './entity-create.js';
31
- import { findByGlobalId, okResult, resolveModel } from './util.js';
31
+ import { findByGlobalId, fmtInt, okResult, resolveModel } from './util.js';
32
32
  import { ToolErrorCode, ToolExecutionError } from '../errors.js';
33
33
  import { resolveSafePath } from '../safe-path.js';
34
34
  import { validateInput } from '../validate.js';
@@ -36,6 +36,11 @@ import { propertyValueTypeOf } from '@ifc-lite/sdk';
36
36
  import { undoPendingMutations } from './mutation-undo.js';
37
37
  import { hostedPlaceTools } from './hosted-place.js';
38
38
  import { joinWallsTool } from './wall-join.js';
39
+ import { hostedEditTool } from './hosted-edit.js';
40
+ import { copyElementsTools } from './copy-elements.js';
41
+ import { physicalEditTool } from './physical-edit.js';
42
+ import { roomCommandTool } from './room-command.js';
43
+ import { designPlaceTools } from './design-place.js';
39
44
  function getBackend(m) {
40
45
  return m.backend;
41
46
  }
@@ -320,7 +325,7 @@ const modelSave = {
320
325
  const content = m.bim.export.ifc(undefined, { schema: schema }); // no ref list: whole model (#4738)
321
326
  const text = typeof content === 'string' ? content : new TextDecoder().decode(content);
322
327
  await writeFile(filePath, text, 'utf-8');
323
- return okResult(`Wrote ${text.length.toLocaleString()} bytes to ${filePath}.`, {
328
+ return okResult(`Wrote ${fmtInt(text.length)} bytes to ${filePath}.`, {
324
329
  filePath,
325
330
  bytes: text.length,
326
331
  schema,
@@ -329,6 +334,11 @@ const modelSave = {
329
334
  };
330
335
  export const mutationTools = [
331
336
  ...hostedPlaceTools,
337
+ ...designPlaceTools,
338
+ hostedEditTool,
339
+ ...copyElementsTools,
340
+ physicalEditTool,
341
+ roomCommandTool,
332
342
  joinWallsTool,
333
343
  entitySetProperty,
334
344
  entityDeleteProperty,
@@ -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":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mutation-undo.d.ts","sourceRoot":"","sources":["../../src/tools/mutation-undo.ts"],"names":[],"mappings":"AAIA,+EAA+E;AAC/E,OAAO,EAAkC,KAAK,mBAAmB,EAAiB,MAAM,qBAAqB,CAAC;AAG9G,KAAK,YAAY,GAAG,mBAAmB,CAAC;AA4DxC,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAE1E"}
1
+ {"version":3,"file":"mutation-undo.d.ts","sourceRoot":"","sources":["../../src/tools/mutation-undo.ts"],"names":[],"mappings":"AAIA,+EAA+E;AAC/E,OAAO,EAAkC,KAAK,mBAAmB,EAAiB,MAAM,qBAAqB,CAAC;AAG9G,KAAK,YAAY,GAAG,mBAAmB,CAAC;AA+DxC,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAE1E"}