@memoarchitect/tools 0.10.8 → 0.11.2
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 +1 -1
- package/package.json +2 -2
- package/packages/tools/lib/analysis/dsm.d.ts.map +1 -1
- package/packages/tools/lib/analysis/dsm.js +9 -4
- package/packages/tools/lib/analysis/dsm.js.map +1 -1
- package/packages/tools/lib/commands/dev.d.ts.map +1 -1
- package/packages/tools/lib/commands/dev.js +23 -1
- package/packages/tools/lib/commands/dev.js.map +1 -1
- package/packages/tools/lib/completeness/tracker.d.ts.map +1 -1
- package/packages/tools/lib/completeness/tracker.js +11 -4
- package/packages/tools/lib/completeness/tracker.js.map +1 -1
- package/packages/tools/lib/dhf/query-executor.d.ts +1 -1
- package/packages/tools/lib/dhf/query-executor.d.ts.map +1 -1
- package/packages/tools/lib/dhf/query-executor.js +4 -4
- package/packages/tools/lib/dhf/query-executor.js.map +1 -1
- package/packages/tools/lib/dhf/template-lint.js +1 -1
- package/packages/tools/lib/dhf/template-lint.js.map +1 -1
- package/packages/tools/lib/mcp/tools.d.ts.map +1 -1
- package/packages/tools/lib/mcp/tools.js +2 -1
- package/packages/tools/lib/mcp/tools.js.map +1 -1
- package/packages/tools/lib/model/builder.d.ts.map +1 -1
- package/packages/tools/lib/model/builder.js +223 -9
- package/packages/tools/lib/model/builder.js.map +1 -1
- package/packages/tools/lib/model/parser-utils.d.ts +2 -0
- package/packages/tools/lib/model/parser-utils.d.ts.map +1 -1
- package/packages/tools/lib/model/parser-utils.js +30 -4
- package/packages/tools/lib/model/parser-utils.js.map +1 -1
- package/packages/tools/lib/model/semantic.d.ts +61 -2
- package/packages/tools/lib/model/semantic.d.ts.map +1 -1
- package/packages/tools/lib/model/semantic.js +38 -0
- package/packages/tools/lib/model/semantic.js.map +1 -1
- package/packages/tools/lib/model/view-deriver.d.ts.map +1 -1
- package/packages/tools/lib/model/view-deriver.js +66 -20
- package/packages/tools/lib/model/view-deriver.js.map +1 -1
- package/packages/tools/lib/server/dev-server.d.ts.map +1 -1
- package/packages/tools/lib/server/dev-server.js +40 -4
- package/packages/tools/lib/server/dev-server.js.map +1 -1
- package/packages/tools/lib/server/package-source.d.ts +20 -1
- package/packages/tools/lib/server/package-source.d.ts.map +1 -1
- package/packages/tools/lib/server/package-source.js +23 -4
- package/packages/tools/lib/server/package-source.js.map +1 -1
- package/packages/tools/lib/server/package-writer.d.ts +18 -0
- package/packages/tools/lib/server/package-writer.d.ts.map +1 -1
- package/packages/tools/lib/server/package-writer.js +58 -5
- package/packages/tools/lib/server/package-writer.js.map +1 -1
- package/packages/tools/lib/server/persistor.d.ts.map +1 -1
- package/packages/tools/lib/server/persistor.js +4 -1
- package/packages/tools/lib/server/persistor.js.map +1 -1
- package/packages/tools/lib/validator/behavior-validator.d.ts +3 -5
- package/packages/tools/lib/validator/behavior-validator.d.ts.map +1 -1
- package/packages/tools/lib/validator/behavior-validator.js +28 -54
- package/packages/tools/lib/validator/behavior-validator.js.map +1 -1
- package/packages/tools/lib/validator/builtin-rules.d.ts.map +1 -1
- package/packages/tools/lib/validator/builtin-rules.js +14 -9
- package/packages/tools/lib/validator/builtin-rules.js.map +1 -1
- package/packages/tools/lib/validator/constraint-eval.d.ts.map +1 -1
- package/packages/tools/lib/validator/constraint-eval.js +4 -0
- package/packages/tools/lib/validator/constraint-eval.js.map +1 -1
- package/packages/tools/lib/validator/rule-engine.d.ts.map +1 -1
- package/packages/tools/lib/validator/rule-engine.js +9 -2
- package/packages/tools/lib/validator/rule-engine.js.map +1 -1
|
@@ -186,6 +186,43 @@ function viewpointLabel(ref) {
|
|
|
186
186
|
const spaced = base.replace(/([a-z])([A-Z])/g, '$1 $2');
|
|
187
187
|
return spaced.charAt(0).toUpperCase() + spaced.slice(1);
|
|
188
188
|
}
|
|
189
|
+
/** The DTO id of a viewpoint: its authored id, else the reference that names it. */
|
|
190
|
+
function viewpointId(authored, ref) {
|
|
191
|
+
return authored?.attributes['providedId'] || authored?.attributes['id'] || ref;
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Read one viewpoint element as a resolved viewpoint.
|
|
195
|
+
*
|
|
196
|
+
* `authored` is absent for a viewpoint no document declares — a view may bind
|
|
197
|
+
* to a reference that resolves nowhere — and the reference then stands in for
|
|
198
|
+
* every field the element would have carried.
|
|
199
|
+
*/
|
|
200
|
+
function readViewpoint(authored, ref, model) {
|
|
201
|
+
// Nesting is ownership: `viewpoint vpSoS { viewpoint vpPump; }` puts the
|
|
202
|
+
// system-of-systems viewpoint in the child's `owner`. Only a viewpoint can
|
|
203
|
+
// be a viewpoint's parent — a viewpoint declared inside anything else is
|
|
204
|
+
// still a root of the viewpoint tree.
|
|
205
|
+
const owner = authored?.owner ? model.elements.get(authored.owner) : undefined;
|
|
206
|
+
const parent = owner?.construct === 'viewpoint' ? owner : undefined;
|
|
207
|
+
return {
|
|
208
|
+
id: viewpointId(authored, ref),
|
|
209
|
+
label: authored?.attributes['title']
|
|
210
|
+
|| authored?.attributes['name']
|
|
211
|
+
|| `${viewpointLabel(ref)} Viewpoint`,
|
|
212
|
+
group: authored?.attributes['group'],
|
|
213
|
+
// The viewpoint's own `includedLayers`, as authored. Distinct from
|
|
214
|
+
// the DTO's `visibleLayers`, which is accumulated from the views
|
|
215
|
+
// that bind to it — a viewpoint states which layers it frames even
|
|
216
|
+
// before any view exists.
|
|
217
|
+
declaredLayers: splitList(authored?.attributes['includedLayers'] ?? ''),
|
|
218
|
+
explorerLane: authored?.attributes['explorerLane'],
|
|
219
|
+
explorerOrder: Number.isFinite(Number(authored?.attributes['explorerOrder']))
|
|
220
|
+
? Number(authored?.attributes['explorerOrder'])
|
|
221
|
+
: undefined,
|
|
222
|
+
...(parent ? { parentId: viewpointId(parent, parent.id) } : {}),
|
|
223
|
+
ref,
|
|
224
|
+
};
|
|
225
|
+
}
|
|
189
226
|
/** Resolve the authored ISO 42010 viewpoint usage referenced by a view. */
|
|
190
227
|
function resolveViewpoints(view, model) {
|
|
191
228
|
// `viewpointDefinition` is the canonical property declared by MemoView.
|
|
@@ -194,26 +231,7 @@ function resolveViewpoints(view, model) {
|
|
|
194
231
|
const raw = view.attributes['viewpointDefinition'] || view.attributes['viewpoint'];
|
|
195
232
|
if (!raw)
|
|
196
233
|
return [];
|
|
197
|
-
return splitList(raw).map(ref =>
|
|
198
|
-
const authored = model.elements.get(ref);
|
|
199
|
-
return {
|
|
200
|
-
id: authored?.attributes['providedId'] || authored?.attributes['id'] || ref,
|
|
201
|
-
label: authored?.attributes['title']
|
|
202
|
-
|| authored?.attributes['name']
|
|
203
|
-
|| `${viewpointLabel(ref)} Viewpoint`,
|
|
204
|
-
group: authored?.attributes['group'],
|
|
205
|
-
// The viewpoint's own `includedLayers`, as authored. Distinct from
|
|
206
|
-
// the DTO's `visibleLayers`, which is accumulated from the views
|
|
207
|
-
// that bind to it — a viewpoint states which layers it frames even
|
|
208
|
-
// before any view exists.
|
|
209
|
-
declaredLayers: splitList(authored?.attributes['includedLayers'] ?? ''),
|
|
210
|
-
explorerLane: authored?.attributes['explorerLane'],
|
|
211
|
-
explorerOrder: Number.isFinite(Number(authored?.attributes['explorerOrder']))
|
|
212
|
-
? Number(authored?.attributes['explorerOrder'])
|
|
213
|
-
: undefined,
|
|
214
|
-
ref,
|
|
215
|
-
};
|
|
216
|
-
});
|
|
234
|
+
return splitList(raw).map(ref => readViewpoint(model.elements.get(ref), ref, model));
|
|
217
235
|
}
|
|
218
236
|
/** Scenario links are authored on the view; they are never inferred from content. */
|
|
219
237
|
function resolveScenarioIds(view, model) {
|
|
@@ -264,6 +282,7 @@ export function deriveModelViews(model, kindRegistry) {
|
|
|
264
282
|
explorerOrder: authoredViewpoint.explorerOrder,
|
|
265
283
|
declaredLayers: authoredViewpoint.declaredLayers?.length
|
|
266
284
|
? authoredViewpoint.declaredLayers : undefined,
|
|
285
|
+
...(authoredViewpoint.parentId ? { parentId: authoredViewpoint.parentId } : {}),
|
|
267
286
|
visibleKinds: [],
|
|
268
287
|
visibleRelationships: [],
|
|
269
288
|
visibleLayers: [],
|
|
@@ -359,6 +378,33 @@ export function deriveModelViews(model, kindRegistry) {
|
|
|
359
378
|
diagram.shortId = `${prefix}-${index + 1}`;
|
|
360
379
|
});
|
|
361
380
|
}
|
|
381
|
+
// A nesting viewpoint need not be bound by any view of its own: the
|
|
382
|
+
// system-of-systems viewpoint frames the constituent viewpoints and leaves
|
|
383
|
+
// the drawing to them. Only views put viewpoints in the map above, so walk
|
|
384
|
+
// each parent chain and add the ancestors, or a nested viewpoint would name
|
|
385
|
+
// a parent the consumer cannot find and would render as a root.
|
|
386
|
+
for (const vp of [...viewpointsById.values()]) {
|
|
387
|
+
let parentId = vp.parentId;
|
|
388
|
+
while (parentId && !viewpointsById.has(parentId)) {
|
|
389
|
+
const element = [...model.elements.values()].find(candidate => candidate.construct === 'viewpoint' && viewpointId(candidate, candidate.id) === parentId);
|
|
390
|
+
if (!element)
|
|
391
|
+
break;
|
|
392
|
+
const resolved = readViewpoint(element, element.id, model);
|
|
393
|
+
viewpointsById.set(resolved.id, {
|
|
394
|
+
id: resolved.id,
|
|
395
|
+
label: resolved.label,
|
|
396
|
+
group: resolved.group,
|
|
397
|
+
explorerLane: resolved.explorerLane,
|
|
398
|
+
explorerOrder: resolved.explorerOrder,
|
|
399
|
+
declaredLayers: resolved.declaredLayers?.length ? resolved.declaredLayers : undefined,
|
|
400
|
+
...(resolved.parentId ? { parentId: resolved.parentId } : {}),
|
|
401
|
+
visibleKinds: [],
|
|
402
|
+
visibleRelationships: [],
|
|
403
|
+
visibleLayers: [],
|
|
404
|
+
});
|
|
405
|
+
parentId = resolved.parentId;
|
|
406
|
+
}
|
|
407
|
+
}
|
|
362
408
|
return { viewpoints: [...viewpointsById.values()], diagrams };
|
|
363
409
|
}
|
|
364
410
|
//# sourceMappingURL=view-deriver.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-deriver.js","sourceRoot":"","sources":["../../src/model/view-deriver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"view-deriver.js","sourceRoot":"","sources":["../../src/model/view-deriver.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,EAAE;AACF,0EAA0E;AAC1E,EAAE;AACF,8EAA8E;AAC9E,6EAA6E;AAC7E,gFAAgF;AAChF,2EAA2E;AAC3E,0EAA0E;AAC1E,EAAE;AACF,2EAA2E;AAC3E,0EAA0E;AAC1E,2EAA2E;AAC3E,gFAAgF;AAIhF,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAE7E,gEAAgE;AAChE,SAAS,aAAa,CAAC,EAAe,EAAE,YAA2B;IAC/D,IAAI,EAAE,CAAC,IAAI,KAAK,WAAW,IAAI,EAAE,CAAC,IAAI,KAAK,oBAAoB,IAAI,EAAE,CAAC,IAAI,KAAK,mBAAmB;QAAE,OAAO,KAAK,CAAC;IACjH,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5C,uEAAuE;IACvE,qEAAqE;IACrE,sDAAsD;IACtD,MAAM,KAAK,GAAG,YAAY,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IAC7C,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC,KAAK,KAAK,YAAY,CAAC;IAC5E,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,sEAAsE;AACtE,SAAS,WAAW,CAAC,KAAuB,EAAE,YAA2B;IACrE,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IACzB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;QACvB,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,SAAS;QAC9B,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAChB,MAAM,KAAK,GAAG,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QACvC,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,SAAS,IAAI,EAAE;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,SAAS,SAAS,CAAC,GAAuB;IACtC,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IACpB,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,YAAY,CAAC,OAAe,EAAE,IAAa,EAAE,KAAgB,EAAE,GAAa;IACjF,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;QACvC,IAAI,EAAE,CAAC,KAAK,KAAK,OAAO,IAAI,EAAE,CAAC,YAAY,KAAK,OAAO;YAAE,SAAS;QAClE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAChB,IAAI,IAAI;YAAE,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IACpD,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAS,iBAAiB,CAAC,IAAY,EAAE,KAAgB;IACrD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,WAAW,EAAE,CAAC,CAAC,CAA2B,CAAC;IAC1D,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAExE,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,KAAK,IAAI,CAAC,CAAC;IAC/D,IAAI,GAAG,EAAE,CAAC;QACN,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QACvB,MAAM,GAAG,GAAa,EAAE,CAAC;QACzB,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YACvC,IAAI,EAAE,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC;gBAClF,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACpB,CAAC;QACL,CAAC;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACrD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACrC,IAAI,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACrB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,EAAE,IAAI,KAAK,CAAC,YAAY,KAAK,EAAE,CAAC;YAAE,MAAM;QACvE,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC,EAAE,CAAC;IACR,CAAC;IAED,qEAAqE;IACrE,oEAAoE;IACpE,yEAAyE;IACzE,wEAAwE;IACxE,yEAAyE;IACzE,kEAAkE;IAClE,4BAA4B;IAC5B,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACtC,MAAM,GAAG,GAAa,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChF,IAAI,MAAM;QAAE,YAAY,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAC1D,OAAO,GAAG,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAiB,EAAE,KAAgB;IAChE,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QACtD,KAAK,MAAM,EAAE,IAAI,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;YAC9C,IAAI,EAAE,KAAK,IAAI,CAAC,EAAE;gBAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpC,CAAC;IACL,CAAC;IACD,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;AACpB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CACjC,IAAiB,EACjB,KAAgB,EAChB,YAA2B;IAE3B,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,oCAAoC,CAAC,CAAC,CAAC;IAClF,MAAM,cAAc,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,kCAAkC,CAAC,CAAC,CAAC;IACtF,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC,CAAC;IAE7E,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IAElC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YACvC,IAAI,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE;gBAAE,SAAS;YAChC,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC;gBAAE,SAAS;YACpD,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC;gBAAE,SAAS;YAC3E,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACnB,CAAC;IACL,CAAC;IACD,KAAK,MAAM,SAAS,IAAI,cAAc,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,MAAM,EAAE,CAAC;YAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAAC,SAAS;QAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAC9C,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,SAAS,CAAC,CAAC;QACvF,IAAI,QAAQ;YAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,KAAK,MAAM,EAAE,IAAI,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC;QAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC5D,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;AACpB,CAAC;AAED,4EAA4E;AAC5E,SAAS,cAAc,CAAC,GAAW;IAC/B,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;IACxD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC5D,CAAC;AAcD,oFAAoF;AACpF,SAAS,WAAW,CAAC,QAAiC,EAAE,GAAW;IAC/D,OAAO,QAAQ,EAAE,UAAU,CAAC,YAAY,CAAC,IAAI,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;AACnF,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,QAAiC,EAAE,GAAW,EAAE,KAAgB;IACnF,yEAAyE;IACzE,2EAA2E;IAC3E,yEAAyE;IACzE,sCAAsC;IACtC,MAAM,KAAK,GAAG,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/E,MAAM,MAAM,GAAG,KAAK,EAAE,SAAS,KAAK,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IACpE,OAAO;QACH,EAAE,EAAE,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC;QAC9B,KAAK,EAAE,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC;eAC7B,QAAQ,EAAE,UAAU,CAAC,MAAM,CAAC;eAC5B,GAAG,cAAc,CAAC,GAAG,CAAC,YAAY;QACzC,KAAK,EAAE,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC;QACpC,mEAAmE;QACnE,iEAAiE;QACjE,mEAAmE;QACnE,0BAA0B;QAC1B,cAAc,EAAE,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;QACvE,YAAY,EAAE,QAAQ,EAAE,UAAU,CAAC,cAAc,CAAC;QAClD,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC;YACzE,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;YAC/C,CAAC,CAAC,SAAS;QACf,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,GAAG;KACN,CAAC;AACN,CAAC;AAED,2EAA2E;AAC3E,SAAS,iBAAiB,CACtB,IAAiB,EACjB,KAAgB;IAEhB,wEAAwE;IACxE,uEAAuE;IACvE,0EAA0E;IAC1E,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IACnF,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IAEpB,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;AACzF,CAAC;AAED,qFAAqF;AACrF,SAAS,kBAAkB,CAAC,IAAiB,EAAE,KAAgB;IAC3D,OAAO,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;SACxC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,SAAS,CAAC,CAAC;AAC1E,CAAC;AAOD;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAgB,EAAE,YAA2B;IAC1E,MAAM,cAAc,GAAG,IAAI,GAAG,EAAwB,CAAC;IACvD,MAAM,QAAQ,GAAiB,EAAE,CAAC;IAElC,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;QACvC,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC;YAAE,SAAS;QAE/C,qEAAqE;QACrE,wEAAwE;QACxE,MAAM,gBAAgB,GAAG,EAAE,CAAC,OAAO;YAC/B,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/E,CAAC,CAAC,KAAK,CAAC;QAEZ,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACxD,sEAAsE;QACtE,4DAA4D;QAC5D,mEAAmE;QACnE,8DAA8D;QAC9D,MAAM,0BAA0B,GAAG,gBAAgB,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,CAAC;QACvF,mEAAmE;QACnE,qEAAqE;QACrE,mCAAmC;QACnC,MAAM,KAAK,GAAG,0BAA0B;YACpC,CAAC,CAAC,CAAC,SAAS,CAAC;YACb,CAAC,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC;gBAC3B,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;gBACrC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QAC3B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,KAAK,MAAM,iBAAiB,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC;YACzD,CAAC,CAAC,kBAAkB;YACpB,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC;YAC7E,IAAI,CAAC,0BAA0B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC3E,cAAc,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,EAAE;oBACrC,EAAE,EAAE,iBAAiB,CAAC,EAAE;oBACxB,KAAK,EAAE,iBAAiB,CAAC,KAAK;oBAC9B,KAAK,EAAE,iBAAiB,CAAC,KAAK;oBAC9B,YAAY,EAAE,iBAAiB,CAAC,YAAY;oBAC5C,aAAa,EAAE,iBAAiB,CAAC,aAAa;oBAC9C,cAAc,EAAE,iBAAiB,CAAC,cAAc,EAAE,MAAM;wBACpD,CAAC,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;oBAClD,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/E,YAAY,EAAE,EAAE;oBAChB,oBAAoB,EAAE,EAAE;oBACxB,aAAa,EAAE,EAAE;iBACpB,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QACD,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAsB,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;QAEpG,MAAM,UAAU,GAAG,SAAS,CAAC,EAAE,CAAC,UAAU,CAAC,oCAAoC,CAAC,CAAC,CAAC;QAClF,8DAA8D;QAC9D,sEAAsE;QACtE,qEAAqE;QACrE,wEAAwE;QACxE,sEAAsE;QACtE,uEAAuE;QACvE,2DAA2D;QAC3D,MAAM,SAAS,GAAG,SAAS,CAAC,EAAE,CAAC,UAAU,CAAC,yCAAyC,CAAC,CAAC,CAAC;QACtF,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACnB,iEAAiE;YACjE,oDAAoD;YACpD,iDAAiD;YACjD,KAAK,MAAM,CAAC,IAAI,WAAW,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,CAAC;gBACpD,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC9D,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,SAAS,CAAC,EAAE,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC,EAAE,CAAC;gBACvE,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChE,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;gBACxB,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAAE,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC9E,CAAC;QACL,CAAC;QAED,uEAAuE;QACvE,uEAAuE;QACvE,sEAAsE;QACtE,gBAAgB;QAChB,MAAM,SAAS,GAAG,YAAY,EAAE,eAAe,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/D,MAAM,IAAI,GAAG,CAAC,IAAY,EAAsB,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;QAE1F,wEAAwE;QACxE,mBAAmB;QACnB,MAAM,UAAU,GAA2B,EAAE,CAAC;QAC9C,KAAK,MAAM,IAAI,IAAI,CAAC,YAAY,EAAE,WAAW,EAAE,kBAAkB,CAAU,EAAE,CAAC;YAC1E,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;YACzB,IAAI,KAAK;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACxC,CAAC;QAED,kEAAkE;QAClE,oEAAoE;QACpE,mEAAmE;QACnE,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;QAEjF,QAAQ,CAAC,IAAI,CAAC;YACV,EAAE,EAAE,gBAAgB;gBAChB,CAAC,CAAC,eAAe,EAAE,CAAC,EAAE,EAAE;gBACxB,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE;YACjE,kEAAkE;YAClE,4BAA4B;YAC5B,SAAS,EAAE,EAAE,CAAC,EAAE;YAChB,iEAAiE;YACjE,yDAAyD;YACzD,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,IAAI;YAChE,WAAW,EAAE,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,KAAK;YAClD,QAAQ;YACR,WAAW,EAAE,IAAI;YACjB,YAAY,EAAE,KAAK;YACnB,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;YAC7B,GAAG,CAAC,kBAAkB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,kBAAkB,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnG,IAAI,EAAE,IAAI;YACV,WAAW,EAAE,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC,GAAG;YACxD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,UAAU,EAAE,qBAAqB,CAAC,EAAE,EAAE,KAAK,EAAE,YAAY,CAAC;YAC1D,iBAAiB,EAAE,SAAS;YAC5B,mEAAmE;YACnE,sEAAsE;YACtE,oEAAoE;YACpE,2DAA2D;YAC3D,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;gBACrB,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,WAAW,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,EAAE;gBAC9D,CAAC,CAAC,EAAE,CAAC;YACT,UAAU,EAAE,EAAE,CAAC,IAAI;YACnB,OAAO,EAAE,EAAE,CAAC,OAAO;SACtB,CAAC,CAAC;IACP,CAAC;IAED,2EAA2E;IAC3E,kEAAkE;IAClE,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAwB,CAAC;IACzD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,yBAAyB,CAAC,OAAO,CAAC,QAAkD,CAAC,IAAI,KAAK,CAAC;QAC9G,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IACrF,CAAC;IACD,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,gBAAgB,EAAE,CAAC;QAC7C,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;YACtE,OAAO,CAAC,OAAO,GAAG,GAAG,MAAM,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC/C,CAAC,CAAC,CAAC;IACP,CAAC;IAED,oEAAoE;IACpE,2EAA2E;IAC3E,2EAA2E;IAC3E,4EAA4E;IAC5E,gEAAgE;IAChE,KAAK,MAAM,EAAE,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;QAC5C,IAAI,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC;QAC3B,OAAO,QAAQ,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/C,MAAM,OAAO,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAC7C,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,SAAS,KAAK,WAAW,IAAI,WAAW,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,KAAK,QAAQ,CACxG,CAAC;YACF,IAAI,CAAC,OAAO;gBAAE,MAAM;YACpB,MAAM,QAAQ,GAAG,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAC3D,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE;gBAC5B,EAAE,EAAE,QAAQ,CAAC,EAAE;gBACf,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,YAAY,EAAE,QAAQ,CAAC,YAAY;gBACnC,aAAa,EAAE,QAAQ,CAAC,aAAa;gBACrC,cAAc,EAAE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;gBACrF,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7D,YAAY,EAAE,EAAE;gBAChB,oBAAoB,EAAE,EAAE;gBACxB,aAAa,EAAE,EAAE;aACpB,CAAC,CAAC;YACH,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QACjC,CAAC;IACL,CAAC;IAED,OAAO,EAAE,UAAU,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC;AAClE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev-server.d.ts","sourceRoot":"","sources":["../../src/server/dev-server.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACR,aAAa,EAM6B,sBAAsB,EAChE,sBAAsB,EAEzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"dev-server.d.ts","sourceRoot":"","sources":["../../src/server/dev-server.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACR,aAAa,EAM6B,sBAAsB,EAChE,sBAAsB,EAEzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AA0B9D,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,aAAa,EAAE,CAAC;IACjC,4FAA4F;IAC5F,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;IACvC;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,0DAA0D;IAC1D,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,kEAAkE;IAClE,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C,qEAAqE;IACrE,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAClD;AAED,MAAM,WAAW,SAAS;IACtB,mFAAmF;IACnF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,6DAA6D;IAC7D,SAAS,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAC;IACjF;;;;OAIG;IACH,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IACxC,mEAAmE;IACnE,wBAAwB,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG;QAChD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,cAAc,CAAC,EAAE,MAAM,CAAC;KAC3B,CAAC;IACF,uEAAuE;IACvE,aAAa,CAAC,OAAO,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACrD;;;;;;;OAOG;IACH,kBAAkB,CAAC,OAAO,EAAE,sBAAsB,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;IACrE,KAAK,IAAI,IAAI,CAAC;CACjB;AAaD,iEAAiE;AACjE,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAO3D;AA4CD,qEAAqE;AACrE,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAetG;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,CAohEnF"}
|
|
@@ -15,11 +15,12 @@ import { recompileProject, writeElement } from '../operations/authoring.js';
|
|
|
15
15
|
import { isWritableRelationshipFile, removeRelationship, resolveRelationshipPlacement, updateRelationship, writeRelationship, } from './relationship-writer.js';
|
|
16
16
|
import { removeElement } from './element-writer.js';
|
|
17
17
|
import { projectEntrypoint } from '../model/native-project.js';
|
|
18
|
-
import { createPackage, deletePackage, moveElementToPackage, movePackage, renamePackage, } from './package-writer.js';
|
|
18
|
+
import { createPackage, deletePackage, moveElementToPackage, moveIntoGroupingPackage, movePackage, renamePackage, } from './package-writer.js';
|
|
19
19
|
import { assertSingleDomainMutation, MixedMutationDomainError } from './mutation-domain.js';
|
|
20
20
|
import { classifyConflict } from './conflict-policy.js';
|
|
21
21
|
import { checkRulePolicy, insertRulePolicy, renderRulePolicy } from './rule-policy-writer.js';
|
|
22
22
|
import { loadViewLayouts, saveViewLayout } from './view-layout-store.js';
|
|
23
|
+
import { usageKeyword } from '../model/semantic.js';
|
|
23
24
|
import { loadDhfDocs, saveDhfDoc, deleteDhfDoc, loadDhfSettings, saveDhfSettings, listRepoTemplates, readRepoTemplate, saveRepoTemplate, } from './dhf-doc-store.js';
|
|
24
25
|
const MODEL_MUTATION_MESSAGES = new Set([
|
|
25
26
|
'element:update', 'element:create', 'element:delete', 'element:remap-kinds', 'element:move-package',
|
|
@@ -535,7 +536,9 @@ export async function createDevServer(options) {
|
|
|
535
536
|
id: change.elementId,
|
|
536
537
|
name: change.name,
|
|
537
538
|
kind: change.elementKind,
|
|
538
|
-
|
|
539
|
+
// `sysmlConstruct` is how the kind is DECLARED (`part def`);
|
|
540
|
+
// this writes a usage of it.
|
|
541
|
+
construct: usageKeyword(kindDef?.sysmlConstruct),
|
|
539
542
|
layer: change.layer ?? kindDef?.layer ?? '',
|
|
540
543
|
doc: change.doc ?? '',
|
|
541
544
|
attributes: change.attributes ?? {},
|
|
@@ -799,9 +802,18 @@ export async function createDevServer(options) {
|
|
|
799
802
|
const model = currentModel();
|
|
800
803
|
if (!model)
|
|
801
804
|
return { success: false, filePaths: [], error: 'The model is not loaded yet.' };
|
|
802
|
-
/**
|
|
805
|
+
/**
|
|
806
|
+
* The file declaring a package: its own declaration, else its members'.
|
|
807
|
+
*
|
|
808
|
+
* The last fallback resolves the two things a NAMESPACE package is not:
|
|
809
|
+
* a grouping package declared inside a usage body, and the usage that
|
|
810
|
+
* holds one. Neither appears in `model.packages` — the qualified name
|
|
811
|
+
* runs through the usage — and both are addressed by their final
|
|
812
|
+
* segment, which is a MEMO element id and therefore unique.
|
|
813
|
+
*/
|
|
803
814
|
const fileOf = (qualifiedName) => model.packages?.find(pkg => pkg.qualifiedName === qualifiedName)?.file
|
|
804
|
-
?? Object.values(model.elements).find(el => el.package === qualifiedName)?.file
|
|
815
|
+
?? Object.values(model.elements).find(el => el.package === qualifiedName)?.file
|
|
816
|
+
?? model.elements[qualifiedName.split('::').pop() ?? '']?.file;
|
|
805
817
|
if (type === 'package:create') {
|
|
806
818
|
const parent = payload.parent || undefined;
|
|
807
819
|
const file = payload.file || (parent ? fileOf(parent) : undefined) || projectEntrypoint(projectRoot);
|
|
@@ -845,6 +857,30 @@ export async function createDevServer(options) {
|
|
|
845
857
|
if (targetPackage && !targetFile) {
|
|
846
858
|
return { success: false, filePaths: [], error: `Package "${targetPackage}" was not found.` };
|
|
847
859
|
}
|
|
860
|
+
/** Where a declaration sits in the file, as a path of names. */
|
|
861
|
+
const declarationPath = (start) => {
|
|
862
|
+
const chain = [];
|
|
863
|
+
const seen = new Set();
|
|
864
|
+
for (let node = start; node && !seen.has(node.id);) {
|
|
865
|
+
seen.add(node.id);
|
|
866
|
+
chain.unshift(node.id);
|
|
867
|
+
node = node.owner ? model.elements[node.owner] : undefined;
|
|
868
|
+
}
|
|
869
|
+
return [start.package, ...chain].filter(Boolean).join('::');
|
|
870
|
+
};
|
|
871
|
+
// A grouping package is not a namespace package: it is declared inside
|
|
872
|
+
// a usage body, so neither it nor anything nested in one has an IR
|
|
873
|
+
// identity to be addressed by. Both are addressed by name path, which
|
|
874
|
+
// is an address for the same reason a package's qualified name is.
|
|
875
|
+
const isGroupingTarget = Boolean(targetPackage)
|
|
876
|
+
&& !model.packages?.some(pkg => pkg.qualifiedName === targetPackage);
|
|
877
|
+
if (targetPackage && (isGroupingTarget || element.owner)) {
|
|
878
|
+
return moveIntoGroupingPackage(projectRoot, {
|
|
879
|
+
file: element.file,
|
|
880
|
+
qualifiedName: declarationPath(element),
|
|
881
|
+
targetPackage,
|
|
882
|
+
});
|
|
883
|
+
}
|
|
848
884
|
const irIdentity = irIndex().byMemoElement[elementId];
|
|
849
885
|
if (!irIdentity) {
|
|
850
886
|
return {
|