@cda/adapter-xma 0.5.0 → 0.6.1
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 +33 -22
- package/dist/cjs/mapping/generic-relationship-mapping.d.ts.map +1 -1
- package/dist/cjs/mapping/generic-relationship-mapping.js +19 -10
- package/dist/cjs/mapping/generic-relationship-mapping.js.map +1 -1
- package/dist/cjs/mapping/relationship-mapping.d.ts +9 -7
- package/dist/cjs/mapping/relationship-mapping.d.ts.map +1 -1
- package/dist/cjs/mapping/relationship-mapping.js +189 -7
- package/dist/cjs/mapping/relationship-mapping.js.map +1 -1
- package/dist/cjs/mapping/visual-mapping.d.ts +8 -0
- package/dist/cjs/mapping/visual-mapping.d.ts.map +1 -1
- package/dist/cjs/mapping/visual-mapping.js +9 -1
- package/dist/cjs/mapping/visual-mapping.js.map +1 -1
- package/dist/cjs/serializer/document-writer.d.ts.map +1 -1
- package/dist/cjs/serializer/document-writer.js +5 -0
- package/dist/cjs/serializer/document-writer.js.map +1 -1
- package/dist/cjs/serializer/graphical-writer.d.ts +8 -6
- package/dist/cjs/serializer/graphical-writer.d.ts.map +1 -1
- package/dist/cjs/serializer/graphical-writer.js +71 -14
- package/dist/cjs/serializer/graphical-writer.js.map +1 -1
- package/dist/cjs/serializer/relationship-writer.d.ts.map +1 -1
- package/dist/cjs/serializer/relationship-writer.js +28 -1
- package/dist/cjs/serializer/relationship-writer.js.map +1 -1
- package/dist/cjs/serializer/view-writer.d.ts +6 -0
- package/dist/cjs/serializer/view-writer.d.ts.map +1 -1
- package/dist/cjs/serializer/view-writer.js +110 -19
- package/dist/cjs/serializer/view-writer.js.map +1 -1
- package/dist/esm/mapping/generic-relationship-mapping.d.ts.map +1 -1
- package/dist/esm/mapping/generic-relationship-mapping.js +19 -10
- package/dist/esm/mapping/generic-relationship-mapping.js.map +1 -1
- package/dist/esm/mapping/relationship-mapping.d.ts +9 -7
- package/dist/esm/mapping/relationship-mapping.d.ts.map +1 -1
- package/dist/esm/mapping/relationship-mapping.js +189 -7
- package/dist/esm/mapping/relationship-mapping.js.map +1 -1
- package/dist/esm/mapping/visual-mapping.d.ts +8 -0
- package/dist/esm/mapping/visual-mapping.d.ts.map +1 -1
- package/dist/esm/mapping/visual-mapping.js +8 -0
- package/dist/esm/mapping/visual-mapping.js.map +1 -1
- package/dist/esm/serializer/document-writer.d.ts.map +1 -1
- package/dist/esm/serializer/document-writer.js +5 -0
- package/dist/esm/serializer/document-writer.js.map +1 -1
- package/dist/esm/serializer/graphical-writer.d.ts +8 -6
- package/dist/esm/serializer/graphical-writer.d.ts.map +1 -1
- package/dist/esm/serializer/graphical-writer.js +72 -15
- package/dist/esm/serializer/graphical-writer.js.map +1 -1
- package/dist/esm/serializer/relationship-writer.d.ts.map +1 -1
- package/dist/esm/serializer/relationship-writer.js +29 -2
- package/dist/esm/serializer/relationship-writer.js.map +1 -1
- package/dist/esm/serializer/view-writer.d.ts +6 -0
- package/dist/esm/serializer/view-writer.d.ts.map +1 -1
- package/dist/esm/serializer/view-writer.js +110 -19
- package/dist/esm/serializer/view-writer.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graphical-writer.d.ts","sourceRoot":"","sources":["../../../src/serializer/graphical-writer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,SAAS,EAKV,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE,OAAO,EAAE,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAEvF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAI5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,UAAU,CAAC;CACxB;
|
|
1
|
+
{"version":3,"file":"graphical-writer.d.ts","sourceRoot":"","sources":["../../../src/serializer/graphical-writer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,SAAS,EAKV,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE,OAAO,EAAE,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAEvF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAI5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,UAAU,CAAC;CACxB;AAkVD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,SAAS,EACf,GAAG,EAAE,aAAa,EAClB,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,cAAc,EACzB,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,mBAAmB,CAAC,EACxD,mBAAmB,EAAE,WAAW,CAAC,MAAM,EAAE,2BAA2B,CAAC,EACrE,UAAU,EAAE,eAAe,EAC3B,WAAW,EAAE,mBAAmB,GAC/B,qBAAqB,CA6QvB"}
|
|
@@ -245,6 +245,35 @@ function buildJunctionNode(ids, nodeXmaId, concept, semanticObject, bounds) {
|
|
|
245
245
|
rectElement(ids.fresh(), bounds),
|
|
246
246
|
]);
|
|
247
247
|
}
|
|
248
|
+
/**
|
|
249
|
+
* Builds a `DiagramModelReference` ("insert view as reference") node —
|
|
250
|
+
* confirmed against both instances in the agile-manifesto fixture:
|
|
251
|
+
* `mm_graphicType="3"` (like Junction, not the usual `"5"`), but *unlike*
|
|
252
|
+
* Junction it does carry an icon decoration and a fixed fill/line color
|
|
253
|
+
* (`VIEW_REFERENCE_FILL_COLOR`/`DEFAULT_LINE_COLOR` — no `style` element on
|
|
254
|
+
* either source object, so this is the construct's fixed default, not a
|
|
255
|
+
* style-resolution result). `semanticObject` is the Ref id pointing at the
|
|
256
|
+
* *referenced view's own* `ArchiMate:AllView` — see `view-writer.ts`.
|
|
257
|
+
*/
|
|
258
|
+
function buildViewReferenceNode(ids, nodeXmaId, semanticObject, bounds, nestedChildrenXml = []) {
|
|
259
|
+
return (0, xml_writer_js_1.element)('MM_Diagram:MM_Node', [
|
|
260
|
+
['id', String(nodeXmaId)],
|
|
261
|
+
['mm_graphicType', '3'],
|
|
262
|
+
['mm_concept', 'AllView'],
|
|
263
|
+
['mm_lineOpacity', String(visual_mapping_js_1.DEFAULT_OPACITY)],
|
|
264
|
+
['mm_fillOpacity', String(visual_mapping_js_1.DEFAULT_OPACITY)],
|
|
265
|
+
['mm_semanticObject', String(semanticObject)],
|
|
266
|
+
], [
|
|
267
|
+
(0, xml_writer_js_1.element)('MM_Diagram:MM_Graphics', [['name', 'mm_graphics'], ['id', String(ids.fresh())]], [
|
|
268
|
+
buildIconDecoration(ids.fresh()),
|
|
269
|
+
buildLabelDecoration(ids.fresh(), visual_mapping_js_1.DEFAULT_FONT_NAME, visual_mapping_js_1.DEFAULT_FONT_SIZE),
|
|
270
|
+
...nestedChildrenXml,
|
|
271
|
+
]),
|
|
272
|
+
colorElement('mm_lineColor', visual_mapping_js_1.DEFAULT_LINE_COLOR, ids.fresh()),
|
|
273
|
+
(0, xml_writer_js_1.element)('MM_Diagram:MM_Colors', [['name', 'mm_fillColors'], ['id', String(ids.fresh())]], [colorElement(null, visual_mapping_js_1.VIEW_REFERENCE_FILL_COLOR, ids.fresh())]),
|
|
274
|
+
rectElement(ids.fresh(), bounds),
|
|
275
|
+
]);
|
|
276
|
+
}
|
|
248
277
|
/**
|
|
249
278
|
* Builds the `GraphicalModule`'s `MM_Diagram` for one view: a Canvas node
|
|
250
279
|
* wrapping one `MM_Node` per drawable diagram object/group/note (nested
|
|
@@ -253,12 +282,14 @@ function buildJunctionNode(ids, nodeXmaId, concept, semanticObject, bounds) {
|
|
|
253
282
|
* objects"), and one `MM_DirectedRel` per drawable connection.
|
|
254
283
|
*
|
|
255
284
|
* `mm_fromx`/`mm_fromy`/`mm_tox`/`mm_toy` (manual connector anchor
|
|
256
|
-
* metadata) are deliberately omitted —
|
|
257
|
-
*
|
|
258
|
-
*
|
|
259
|
-
*
|
|
260
|
-
*
|
|
261
|
-
*
|
|
285
|
+
* metadata) are deliberately omitted — present on only a minority of
|
|
286
|
+
* connections in three of the four fixtures (5/93 in agile-manifesto, 1/3
|
|
287
|
+
* in relaciones, 15/346 in sabsa), never on all of them, which isn't
|
|
288
|
+
* enough evidence to derive a general formula for which connections get
|
|
289
|
+
* one or confirm they're mandatory for import (see project docs,
|
|
290
|
+
* "unresolved reverse-engineering limitations"). If a future fixture
|
|
291
|
+
* proves them required, add that behavior here, isolated from the rest of
|
|
292
|
+
* this function.
|
|
262
293
|
*/
|
|
263
294
|
function buildGraphicalModule(model, view, ids, refIds, allocator, mappedElements, mappedRelationships, viewResult, diagnostics) {
|
|
264
295
|
const diagramObjectById = new Map(model.diagramObjects.map((o) => [o.id, o]));
|
|
@@ -314,6 +345,17 @@ function buildGraphicalModule(model, view, ids, refIds, allocator, mappedElement
|
|
|
314
345
|
return null;
|
|
315
346
|
return buildStyledNode(ids, nodeXmaId, 'ViewGraphic', groupSemanticId, false, visuals, bounds, 'group', [['mm_frameStrategy', '12']], nestedChildrenXml);
|
|
316
347
|
}
|
|
348
|
+
if (viewResult.validViewReferenceObjectIds.has(objId)) {
|
|
349
|
+
if (obj.referencedModelId === null) {
|
|
350
|
+
throw new Error(`Internal invariant violation: diagram object "${obj.id}" is in validViewReferenceObjectIds but has no referencedModelId.`);
|
|
351
|
+
}
|
|
352
|
+
const refId = (0, assert_js_1.assertDefined)(refIds.get(obj.referencedModelId), `no ref id registered for referenced view "${obj.referencedModelId}" (view-writer should have registered it before graphical-writer runs)`);
|
|
353
|
+
const nodeXmaId = nodeIds.idFor(obj.id);
|
|
354
|
+
const bounds = resolveDrawableBounds(obj.bounds, diagnostics, obj.id, 'ArchiDiagramObject');
|
|
355
|
+
if (!bounds)
|
|
356
|
+
return null;
|
|
357
|
+
return buildViewReferenceNode(ids, nodeXmaId, refId, bounds, nestedChildrenXml);
|
|
358
|
+
}
|
|
317
359
|
return null;
|
|
318
360
|
}
|
|
319
361
|
for (const objId of view.diagramObjectIds) {
|
|
@@ -341,11 +383,27 @@ function buildGraphicalModule(model, view, ids, refIds, allocator, mappedElement
|
|
|
341
383
|
if (!connection || connection.viewId !== view.id)
|
|
342
384
|
continue;
|
|
343
385
|
const relId = connection.archimateRelationshipId;
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
386
|
+
let xmaType;
|
|
387
|
+
let semanticObjectId;
|
|
388
|
+
if (relId) {
|
|
389
|
+
const mapping = mappedRelationships.get(relId);
|
|
390
|
+
if (!mapping)
|
|
391
|
+
continue; // already diagnosed by relationship-writer
|
|
392
|
+
xmaType = mapping.xmaType;
|
|
393
|
+
semanticObjectId = (0, assert_js_1.assertDefined)(refIds.get(relId), `no ref id registered for relationship "${relId}" (view-writer should have registered it before graphical-writer runs)`);
|
|
394
|
+
}
|
|
395
|
+
else {
|
|
396
|
+
// A purely-visual connection (no underlying ArchiMate relationship) —
|
|
397
|
+
// view-writer already resolved this to a ViewEdge if both endpoints
|
|
398
|
+
// had a semantic id to reference; otherwise it already diagnosed the
|
|
399
|
+
// unsupported-connection-no-relationship error, so there's nothing to
|
|
400
|
+
// draw here.
|
|
401
|
+
const viewEdgeSemanticId = viewResult.viewEdgeSemanticIds.get(connection.id);
|
|
402
|
+
if (viewEdgeSemanticId === undefined)
|
|
403
|
+
continue;
|
|
404
|
+
xmaType = 'ViewEdge';
|
|
405
|
+
semanticObjectId = viewEdgeSemanticId;
|
|
406
|
+
}
|
|
349
407
|
const sourceNodeXmaId = nodeIds.get(connection.sourceId);
|
|
350
408
|
const targetNodeXmaId = nodeIds.get(connection.targetId);
|
|
351
409
|
if (sourceNodeXmaId === undefined || targetNodeXmaId === undefined) {
|
|
@@ -405,7 +463,6 @@ function buildGraphicalModule(model, view, ids, refIds, allocator, mappedElement
|
|
|
405
463
|
points.push((0, xml_writer_js_1.element)('MM_Diagram:MM_Point', [['id', String(ids.fresh())], ['mm_x', String(scaled.x)], ['mm_y', String(scaled.y)]]));
|
|
406
464
|
}
|
|
407
465
|
}
|
|
408
|
-
const relRefId = (0, assert_js_1.assertDefined)(refIds.get(relId), `no ref id registered for relationship "${relId}" (view-writer should have registered it before graphical-writer runs)`);
|
|
409
466
|
const directedRelChildren = [];
|
|
410
467
|
if (points.length > 0) {
|
|
411
468
|
directedRelChildren.push((0, xml_writer_js_1.element)('MM_Diagram:MM_MultiLine', [['name', 'mm_line'], ['id', String(ids.fresh())]], points));
|
|
@@ -437,8 +494,8 @@ function buildGraphicalModule(model, view, ids, refIds, allocator, mappedElement
|
|
|
437
494
|
['mm_from', String(sourceNodeXmaId)],
|
|
438
495
|
['mm_to', String(targetNodeXmaId)],
|
|
439
496
|
['mm_graphicType', '7'],
|
|
440
|
-
['mm_concept',
|
|
441
|
-
['mm_semanticObject', String(
|
|
497
|
+
['mm_concept', xmaType],
|
|
498
|
+
['mm_semanticObject', String(semanticObjectId)],
|
|
442
499
|
], directedRelChildren));
|
|
443
500
|
}
|
|
444
501
|
const canvasSemanticId = ids.idFor(view.id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graphical-writer.js","sourceRoot":"","sources":["../../../src/serializer/graphical-writer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"graphical-writer.js","sourceRoot":"","sources":["../../../src/serializer/graphical-writer.ts"],"names":[],"mappings":";;AAyXA,oDAuRC;AAvoBD,mEAAuE;AACvE,uEAAuF;AACvF,2DAA4D;AAI5D,oEAAyP;AACzP,yDAAsG;AACtG,6DAA6D;AAO7D;;;;;;;;GAQG;AACH,SAAS,qBAAqB,CAC5B,MAA0B,EAC1B,WAAgC,EAChC,QAAgB,EAChB,UAAkB;IAElB,IAAI,CAAC,IAAA,+BAAiB,EAAC,MAAM,CAAC,EAAE,CAAC;QAC/B,WAAW,CAAC,KAAK,CAAC;YAChB,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,IAAI,QAAQ,+EAA+E;YACpG,QAAQ;YACR,UAAU;SACX,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,IAAA,oBAAM,EAAC,MAAM,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,YAAY,CAAC,IAAmB,EAAE,GAAe,EAAE,EAAU;IACpE,MAAM,KAAK,GAA4B,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5D,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;IAC7B,CAAC;IACD,sHAAsH;IACtH,uEAAuE;IACvE,0EAA0E;IAC1E,uEAAuE;IACvE,0EAA0E;IAC1E,2CAA2C;IAC3C,IAAI,GAAG,EAAE,CAAC;QACR,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,IAAA,uBAAO,EAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,WAAW,CAAC,EAAU,EAAE,IAAU;IACzC,MAAM,MAAM,GAAG,IAAA,uBAAS,EAAC,IAAI,CAAC,CAAC;IAC/B,OAAO,IAAA,uBAAO,EAAC,SAAS,EAAE;QACxB,CAAC,MAAM,EAAE,SAAS,CAAC;QACnB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;KAC7B,CAAC,CAAC;AACL,CAAC;AAUD;;;;;;;GAOG;AACH,SAAS,kBAAkB,CACzB,KAAwB,EACxB,WAAgB,EAChB,WAAgC,EAChC,QAAgB,EAChB,UAAkB;IAElB,IAAI,IAAI,GAAG,WAAW,CAAC;IACvB,IAAI,IAAI,GAAG,sCAAkB,CAAC;IAC9B,IAAI,QAAQ,GAAG,qCAAiB,CAAC;IACjC,IAAI,QAAQ,GAAG,qCAAiB,CAAC;IACjC,uEAAuE;IACvE,0EAA0E;IAC1E,MAAM,WAAW,GAAG,mCAAe,CAAC;IAEpC,IAAI,KAAK,EAAE,CAAC;QACV,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,IAAA,sCAAkB,EAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACnD,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,GAAG,MAAM,CAAC;YAChB,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,OAAO,CAAC;oBAClB,IAAI,EAAE,8BAA8B;oBACpC,OAAO,EAAE,eAAe,KAAK,CAAC,SAAS,sDAAsD;oBAC7F,QAAQ;oBACR,UAAU;iBACX,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,IAAA,sCAAkB,EAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACnD,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,GAAG,MAAM,CAAC;YAChB,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,OAAO,CAAC;oBAClB,IAAI,EAAE,8BAA8B;oBACpC,OAAO,EAAE,eAAe,KAAK,CAAC,SAAS,sDAAsD;oBAC7F,QAAQ;oBACR,UAAU;iBACX,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC5B,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QAC5B,CAAC;QACD,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YACzB,qEAAqE;YACrE,qEAAqE;YACrE,uEAAuE;YACvE,iDAAiD;YACjD,WAAW,CAAC,OAAO,CAAC;gBAClB,IAAI,EAAE,yBAAyB;gBAC/B,OAAO,EAAE,uGAAuG;gBAChH,QAAQ;gBACR,UAAU;aACX,CAAC,CAAC;QACL,CAAC;QACD,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAC7B,WAAW,CAAC,OAAO,CAAC;gBAClB,IAAI,EAAE,8BAA8B;gBACpC,OAAO,EAAE,8EAA8E;gBACvF,QAAQ;gBACR,UAAU;aACX,CAAC,CAAC;QACL,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC5B,oEAAoE;YACpE,uEAAuE;YACvE,yCAAyC;YACzC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;QAC7C,CAAC;QACD,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YACjF,WAAW,CAAC,OAAO,CAAC;gBAClB,IAAI,EAAE,8BAA8B;gBACpC,OAAO,EAAE,0FAA0F;gBACnG,QAAQ;gBACR,UAAU;aACX,CAAC,CAAC;QACL,CAAC;QACD,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAC7B,WAAW,CAAC,OAAO,CAAC;gBAClB,IAAI,EAAE,8BAA8B;gBACpC,OAAO,EAAE,8EAA8E;gBACvF,QAAQ;gBACR,UAAU;aACX,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;AACzD,CAAC;AAED,SAAS,oBAAoB,CAAC,EAAU,EAAE,QAAgB,EAAE,QAAgB,EAAE,aAAsC,EAAE;IACpH,OAAO,IAAA,uBAAO,EACZ,0BAA0B,EAC1B,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,gBAAgB,EAAE,GAAG,CAAC,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE,GAAG,UAAU,CAAC,EACxH,CAAC,IAAA,2BAAW,EAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CACnC,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,EAAU;IACrC,OAAO,IAAA,uBAAO,EAAC,0BAA0B,EAAE;QACzC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC,gBAAgB,EAAE,GAAG,CAAC;QACvB,CAAC,YAAY,EAAE,MAAM,CAAC;KACvB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,eAAe,CACtB,GAAkB,EAClB,SAAiB,EACjB,OAAe,EACf,cAAsB,EACtB,OAAgB,EAChB,OAAwB,EACxB,MAAY,EACZ,UAAyB,EACzB,kBAA2C,EAAE,EAC7C,oBAAkC,EAAE;IAEpC,MAAM,gBAAgB,GAAiB,EAAE,CAAC;IAC1C,IAAI,OAAO,EAAE,CAAC;QACZ,gBAAgB,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC1D,CAAC;IACD,gBAAgB,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;IAC9G,gBAAgB,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,CAAC;IAE5C,MAAM,KAAK,GAA4B;QACrC,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QACzB,CAAC,gBAAgB,EAAE,GAAG,CAAC;QACvB,CAAC,YAAY,EAAE,OAAO,CAAC;KACxB,CAAC;IACF,IAAI,UAAU,EAAE,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC,CAAC;IAC5C,CAAC;IACD,KAAK,CAAC,IAAI,CACR,CAAC,gBAAgB,EAAE,MAAM,CAAC,mCAAe,CAAC,CAAC,EAC3C,CAAC,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,EAC/C,CAAC,mBAAmB,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC,CAC9C,CAAC;IAEF,OAAO,IAAA,uBAAO,EAAC,oBAAoB,EAAE,KAAK,EAAE;QAC1C,IAAA,uBAAO,EAAC,wBAAwB,EAAE,CAAC,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC;QAC3G,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;QACvD,IAAA,uBAAO,EACL,sBAAsB,EACtB,CAAC,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EACxD,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAChD;QACD,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC;KACjC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;AAE/D;;;;;;GAMG;AACH,SAAS,8BAA8B,CAAC,GAAuB,EAAE,WAAgC;IAC/F,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;IACxB,IAAI,CAAC,KAAK;QAAE,OAAO;IACnB,MAAM,WAAW,GACf,KAAK,CAAC,SAAS,KAAK,IAAI;QACxB,KAAK,CAAC,SAAS,KAAK,IAAI;QACxB,KAAK,CAAC,SAAS,KAAK,IAAI;QACxB,KAAK,CAAC,QAAQ,KAAK,IAAI;QACvB,KAAK,CAAC,QAAQ,KAAK,IAAI;QACvB,KAAK,CAAC,SAAS,KAAK,IAAI;QACxB,KAAK,CAAC,KAAK,KAAK,IAAI;QACpB,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IACjF,IAAI,CAAC,WAAW;QAAE,OAAO;IACzB,WAAW,CAAC,OAAO,CAAC;QAClB,IAAI,EAAE,4BAA4B;QAClC,OAAO,EAAE,mBAAmB,GAAG,CAAC,EAAE,oLAAoL;QACtN,QAAQ,EAAE,GAAG,CAAC,EAAE;QAChB,UAAU,EAAE,oBAAoB;KACjC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,GAAkB,EAAE,SAAiB,EAAE,OAAe,EAAE,cAAsB,EAAE,MAAY;IACrH,OAAO,IAAA,uBAAO,EACZ,oBAAoB,EACpB;QACE,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QACzB,CAAC,gBAAgB,EAAE,GAAG,CAAC;QACvB,CAAC,YAAY,EAAE,OAAO,CAAC;QACvB,CAAC,gBAAgB,EAAE,MAAM,CAAC,mCAAe,CAAC,CAAC;QAC3C,CAAC,gBAAgB,EAAE,MAAM,CAAC,mCAAe,CAAC,CAAC;QAC3C,CAAC,mBAAmB,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;KAC9C,EACD;QACE,IAAA,uBAAO,EAAC,wBAAwB,EAAE,CAAC,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE;YACxF,oBAAoB,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,qCAAiB,EAAE,qCAAiB,CAAC;SACxE,CAAC;QACF,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC;KACjC,CACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,sBAAsB,CAC7B,GAAkB,EAClB,SAAiB,EACjB,cAAsB,EACtB,MAAY,EACZ,oBAAkC,EAAE;IAEpC,OAAO,IAAA,uBAAO,EACZ,oBAAoB,EACpB;QACE,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QACzB,CAAC,gBAAgB,EAAE,GAAG,CAAC;QACvB,CAAC,YAAY,EAAE,SAAS,CAAC;QACzB,CAAC,gBAAgB,EAAE,MAAM,CAAC,mCAAe,CAAC,CAAC;QAC3C,CAAC,gBAAgB,EAAE,MAAM,CAAC,mCAAe,CAAC,CAAC;QAC3C,CAAC,mBAAmB,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;KAC9C,EACD;QACE,IAAA,uBAAO,EAAC,wBAAwB,EAAE,CAAC,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE;YACxF,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YAChC,oBAAoB,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,qCAAiB,EAAE,qCAAiB,CAAC;YACvE,GAAG,iBAAiB;SACrB,CAAC;QACF,YAAY,CAAC,cAAc,EAAE,sCAAkB,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;QAC7D,IAAA,uBAAO,EACL,sBAAsB,EACtB,CAAC,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EACxD,CAAC,YAAY,CAAC,IAAI,EAAE,6CAAyB,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAC7D;QACD,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC;KACjC,CACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,oBAAoB,CAClC,KAAiB,EACjB,IAAe,EACf,GAAkB,EAClB,MAAqB,EACrB,SAAyB,EACzB,cAAwD,EACxD,mBAAqE,EACrE,UAA2B,EAC3B,WAAgC;IAEhC,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAA6B,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1G,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAoB,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/E,MAAM,OAAO,GAAG,IAAI,+BAAa,CAAC,SAAS,CAAC,CAAC;IAE7C,MAAM,cAAc,GAAiB,EAAE,CAAC;IAExC;;;;;;;;OAQG;IACH,SAAS,aAAa,CAAC,KAAa,EAAE,cAAmC,IAAI,GAAG,EAAE;QAChF,MAAM,GAAG,GAAG,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QAEtB,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,WAAW,CAAC,KAAK,CAAC;gBAChB,IAAI,EAAE,+BAA+B;gBACrC,OAAO,EAAE,mBAAmB,KAAK,4EAA4E;gBAC7G,QAAQ,EAAE,KAAK;gBACf,UAAU,EAAE,oBAAoB;aACjC,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAExD,MAAM,iBAAiB,GAAG,GAAG,CAAC,WAAW;aACtC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;aACzD,MAAM,CAAC,CAAC,GAAG,EAAqB,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC;QAEpD,IAAI,UAAU,CAAC,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,kBAAkB,EAAE,CAAC;YAC9E,MAAM,OAAO,GAAG,IAAA,yBAAa,EAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,2BAA2B,GAAG,CAAC,kBAAkB,sDAAsD,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;YAC7L,MAAM,KAAK,GAAG,IAAA,yBAAa,EAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,qCAAqC,GAAG,CAAC,kBAAkB,wEAAwE,CAAC,CAAC;YACrM,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACxC,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,oBAAoB,CAAC,CAAC;YAC5F,IAAI,CAAC,MAAM;gBAAE,OAAO,IAAI,CAAC;YACzB,IAAI,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC5C,8BAA8B,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;gBACjD,OAAO,iBAAiB,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,KAAK,EAAE,uCAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,oBAAoB,CAAC,CAAC;YAChI,OAAO,eAAe,CACpB,GAAG,EACH,SAAS,EACT,OAAO,CAAC,OAAO,EACf,KAAK,EACL,OAAO,CAAC,OAAO,EACf,OAAO,EACP,MAAM,EACN,IAAI,EACJ,EAAE,EACF,iBAAiB,CAClB,CAAC;QACJ,CAAC;QAED,IAAI,UAAU,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9C,MAAM,eAAe,GAAG,IAAA,yBAAa,EAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,wCAAwC,GAAG,CAAC,EAAE,wEAAwE,CAAC,CAAC;YAC/K,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,KAAK,EAAE,oCAAgB,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,oBAAoB,CAAC,CAAC;YAC3G,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACxC,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,oBAAoB,CAAC,CAAC;YAC5F,IAAI,CAAC,MAAM;gBAAE,OAAO,IAAI,CAAC;YACzB,OAAO,eAAe,CACpB,GAAG,EACH,SAAS,EACT,aAAa,EACb,eAAe,EACf,KAAK,EACL,OAAO,EACP,MAAM,EACN,OAAO,EACP,CAAC,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC,EAC5B,iBAAiB,CAClB,CAAC;QACJ,CAAC;QAED,IAAI,UAAU,CAAC,2BAA2B,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACtD,IAAI,GAAG,CAAC,iBAAiB,KAAK,IAAI,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CAAC,iDAAiD,GAAG,CAAC,EAAE,mEAAmE,CAAC,CAAC;YAC9I,CAAC;YACD,MAAM,KAAK,GAAG,IAAA,yBAAa,EAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,6CAA6C,GAAG,CAAC,iBAAiB,wEAAwE,CAAC,CAAC;YAC3M,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACxC,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,oBAAoB,CAAC,CAAC;YAC5F,IAAI,CAAC,MAAM;gBAAE,OAAO,IAAI,CAAC;YACzB,OAAO,sBAAsB,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;QAClF,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,OAAO;YAAE,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,SAAS;QACnD,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,MAAM,MAAM,GAAG,qBAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;QACrF,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,MAAM,cAAc,GAAG,IAAA,yBAAa,EAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,uCAAuC,IAAI,CAAC,EAAE,wEAAwE,CAAC,CAAC;QAC/K,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,mCAAe,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;QACnG,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzC,cAAc,CAAC,IAAI,CACjB,eAAe,CAAC,GAAG,EAAE,SAAS,EAAE,aAAa,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAC7F,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/E,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC/C,MAAM,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,IAAI,CAAC,EAAE;YAAE,SAAS;QAC3D,MAAM,KAAK,GAAG,UAAU,CAAC,uBAAuB,CAAC;QACjD,IAAI,OAAe,CAAC;QACpB,IAAI,gBAAwB,CAAC;QAC7B,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,OAAO,GAAG,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC/C,IAAI,CAAC,OAAO;gBAAE,SAAS,CAAC,2CAA2C;YACnE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;YAC1B,gBAAgB,GAAG,IAAA,yBAAa,EAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,0CAA0C,KAAK,wEAAwE,CAAC,CAAC;QAC/K,CAAC;aAAM,CAAC;YACN,sEAAsE;YACtE,oEAAoE;YACpE,qEAAqE;YACrE,sEAAsE;YACtE,aAAa;YACb,MAAM,kBAAkB,GAAG,UAAU,CAAC,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAC7E,IAAI,kBAAkB,KAAK,SAAS;gBAAE,SAAS;YAC/C,OAAO,GAAG,UAAU,CAAC;YACrB,gBAAgB,GAAG,kBAAkB,CAAC;QACxC,CAAC;QAED,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACzD,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACzD,IAAI,eAAe,KAAK,SAAS,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YACnE,WAAW,CAAC,KAAK,CAAC;gBAChB,IAAI,EAAE,yCAAyC;gBAC/C,OAAO,EAAE,eAAe,UAAU,CAAC,EAAE,6DAA6D;gBAClG,QAAQ,EAAE,UAAU,CAAC,EAAE;gBACvB,UAAU,EAAE,wBAAwB;aACrC,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAE7D,qEAAqE;QACrE,kEAAkE;QAClE,wEAAwE;QACxE,uEAAuE;QACvE,uEAAuE;QACvE,wEAAwE;QACxE,uEAAuE;QACvE,wEAAwE;QACxE,wEAAwE;QACxE,mEAAmE;QACnE,6BAA6B;QAC7B,IAAI,SAAS,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,QAAQ,KAAK,SAAS,CAAC,EAAE,IAAI,SAAS,CAAC,QAAQ,KAAK,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;YAC3G,SAAS;QACX,CAAC;QAED,MAAM,MAAM,GAAiB,EAAE,CAAC;QAChC,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,IAAI,SAAS,IAAI,IAAA,+BAAiB,EAAC,SAAS,CAAC,MAAM,CAAC,IAAI,IAAA,+BAAiB,EAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7I,MAAM,UAAU,GAAG,IAAA,oBAAM,EAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC5C,MAAM,UAAU,GAAG,IAAA,oBAAM,EAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC5C,KAAK,MAAM,EAAE,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;gBACvC,MAAM,UAAU,GAAG,IAAA,gCAAgB,EAAC,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;gBAChE,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,WAAW,CAAC,KAAK,CAAC;wBAChB,IAAI,EAAE,wBAAwB;wBAC9B,OAAO,EAAE,eAAe,UAAU,CAAC,EAAE,yEAAyE;wBAC9G,QAAQ,EAAE,UAAU,CAAC,EAAE;wBACvB,UAAU,EAAE,wBAAwB;qBACrC,CAAC,CAAC;oBACH,SAAS;gBACX,CAAC;gBACD,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;oBACxB,oEAAoE;oBACpE,iEAAiE;oBACjE,oEAAoE;oBACpE,iEAAiE;oBACjE,oCAAoC;oBACpC,WAAW,CAAC,OAAO,CAAC;wBAClB,IAAI,EAAE,6BAA6B;wBACnC,OAAO,EAAE,eAAe,UAAU,CAAC,EAAE,oGAAoG,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,aAAa,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,oCAAoC;wBAClU,QAAQ,EAAE,UAAU,CAAC,EAAE;wBACvB,UAAU,EAAE,wBAAwB;qBACrC,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM,MAAM,GAAG,IAAA,wBAAU,EAAC,UAAU,CAAC,KAAK,CAAC,CAAC;gBAC5C,MAAM,CAAC,IAAI,CAAC,IAAA,uBAAO,EAAC,qBAAqB,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACrI,CAAC;QACH,CAAC;QAED,MAAM,mBAAmB,GAAiB,EAAE,CAAC;QAC7C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,mBAAmB,CAAC,IAAI,CAAC,IAAA,uBAAO,EAAC,yBAAyB,EAAE,CAAC,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QAC3H,CAAC;QACD,gEAAgE;QAChE,uEAAuE;QACvE,wEAAwE;QACxE,IAAI,mBAAmB,GAAe,IAAI,CAAC;QAC3C,IAAI,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,IAAA,sCAAkB,EAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC9D,IAAI,MAAM,EAAE,CAAC;gBACX,mBAAmB,GAAG,MAAM,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,OAAO,CAAC;oBAClB,IAAI,EAAE,yCAAyC;oBAC/C,OAAO,EAAE,0BAA0B,UAAU,CAAC,KAAK,CAAC,SAAS,sDAAsD;oBACnH,QAAQ,EAAE,UAAU,CAAC,EAAE;oBACvB,UAAU,EAAE,wBAAwB;iBACrC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,mBAAmB,CAAC,IAAI,CACtB,IAAA,uBAAO,EAAC,wBAAwB,EAAE,CAAC,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE;YACxF,oBAAoB,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,qCAAiB,EAAE,qCAAiB,CAAC;SACxE,CAAC,CACH,CAAC;QACF,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,mBAAmB,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAEzF,cAAc,CAAC,IAAI,CACjB,IAAA,uBAAO,EACL,2BAA2B,EAC3B;YACE,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;YAC3B,CAAC,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;YACpC,CAAC,OAAO,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;YAClC,CAAC,gBAAgB,EAAE,GAAG,CAAC;YACvB,CAAC,YAAY,EAAE,OAAO,CAAC;YACvB,CAAC,mBAAmB,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;SAChD,EACD,mBAAmB,CACpB,CACF,CAAC;IACJ,CAAC;IAED,MAAM,gBAAgB,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5C,MAAM,UAAU,GAAG,IAAA,uBAAO,EACxB,oBAAoB,EACpB;QACE,CAAC,MAAM,EAAE,WAAW,CAAC;QACrB,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;QAC3B,CAAC,gBAAgB,EAAE,GAAG,CAAC;QACvB,CAAC,YAAY,EAAE,QAAQ,CAAC;QACxB,CAAC,mBAAmB,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;KAChD,EACD;QACE,IAAA,uBAAO,EAAC,wBAAwB,EAAE,CAAC,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC;QACzG,IAAA,uBAAO,EAAC,SAAS,EAAE;YACjB,CAAC,MAAM,EAAE,SAAS,CAAC;YACnB,CAAC,GAAG,EAAE,GAAG,CAAC;YACV,CAAC,GAAG,EAAE,GAAG,CAAC;YACV,CAAC,GAAG,EAAE,MAAM,CAAC,iCAAa,CAAC,CAAC;YAC5B,CAAC,GAAG,EAAE,MAAM,CAAC,iCAAa,CAAC,CAAC;SAC7B,CAAC;KACH,CACF,CAAC;IAEF,MAAM,UAAU,GAAG,IAAA,uBAAO,EAAC,uBAAuB,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEnH,OAAO,EAAE,UAAU,EAAE,CAAC;AACxB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relationship-writer.d.ts","sourceRoot":"","sources":["../../../src/serializer/relationship-writer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"relationship-writer.d.ts","sourceRoot":"","sources":["../../../src/serializer/relationship-writer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,iBAAiB,EAAmB,MAAM,0BAA0B,CAAC;AAE7G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAEvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAGzE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,2GAA2G;AAC3G,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,MAAM,CAAC;CACjB;AA8BD,MAAM,WAAW,2BAA2B;IAC1C,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;IAC9D;;;;;;;;OAQG;IACH,gBAAgB,EAAE,UAAU,EAAE,CAAC;CAChC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,UAAU,EACjB,GAAG,EAAE,aAAa,EAClB,YAAY,EAAE,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC,EAC/C,iBAAiB,EAAE,WAAW,CAAC,MAAM,EAAE,iBAAiB,CAAC,EACzD,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,mBAAmB,CAAC,EACxD,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EACtC,WAAW,EAAE,mBAAmB,GAC/B,2BAA2B,CAkG7B"}
|
|
@@ -5,6 +5,24 @@ const xml_writer_js_1 = require("../infrastructure/xml-writer.js");
|
|
|
5
5
|
const assert_js_1 = require("../infrastructure/assert.js");
|
|
6
6
|
const relationship_mapping_js_1 = require("../mapping/relationship-mapping.js");
|
|
7
7
|
const generic_relationship_mapping_js_1 = require("../mapping/generic-relationship-mapping.js");
|
|
8
|
+
/**
|
|
9
|
+
* `AccessRelationship`'s access mode, as an `MM_ProfileValues`/`accessType`
|
|
10
|
+
* child on the relation element — confirmed against the sabsa fixture
|
|
11
|
+
* (`accessType="1"` -> `'Read'` -> `r`, `accessType="3"` -> `'ReadWrite'` ->
|
|
12
|
+
* `rw`) and cross-checked exhaustively (all 4 codes, ~180 instances, zero
|
|
13
|
+
* unexplained values on either side) against a private, non-public source
|
|
14
|
+
* model for the remaining two: the default (`'Write'`) -> `w`, and
|
|
15
|
+
* `accessType="2"` -> `'Unspecified'` -> `n`. Every `AccessRelationship`
|
|
16
|
+
* instance in every available fixture carries this child — it was
|
|
17
|
+
* previously omitted entirely, including for the already-confirmed
|
|
18
|
+
* `AccessRelationship` triples.
|
|
19
|
+
*/
|
|
20
|
+
const ACCESS_TYPE_XMA_CODE = {
|
|
21
|
+
Write: 'w',
|
|
22
|
+
Read: 'r',
|
|
23
|
+
ReadWrite: 'rw',
|
|
24
|
+
Unspecified: 'n',
|
|
25
|
+
};
|
|
8
26
|
function getOrCreateScheme(schemeBuilds, tag) {
|
|
9
27
|
let build = schemeBuilds.get(tag);
|
|
10
28
|
if (!build) {
|
|
@@ -92,7 +110,16 @@ function buildSemanticRelationships(model, ids, elementIndex, relationshipIndex,
|
|
|
92
110
|
['id', String(xmaId)],
|
|
93
111
|
['from', String(ids.idFor(sourceEl.id))],
|
|
94
112
|
['to', String(ids.idFor(targetEl.id))],
|
|
95
|
-
]
|
|
113
|
+
], rel.accessType
|
|
114
|
+
? [
|
|
115
|
+
(0, xml_writer_js_1.element)('MM_ProfileValues', undefined, [
|
|
116
|
+
(0, xml_writer_js_1.textElement)('MM_Value', ACCESS_TYPE_XMA_CODE[rel.accessType], [
|
|
117
|
+
['name', 'accessType'],
|
|
118
|
+
['type', 'AccessRelationType'],
|
|
119
|
+
]),
|
|
120
|
+
]),
|
|
121
|
+
]
|
|
122
|
+
: undefined);
|
|
96
123
|
const schemeTag = exactMapping
|
|
97
124
|
? exactMapping.scheme
|
|
98
125
|
: (0, assert_js_1.assertDefined)(mappedElements.get(sourceEl.id), `no mapping for source element "${sourceEl.id}" (checked present earlier in this same function)`).scheme;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relationship-writer.js","sourceRoot":"","sources":["../../../src/serializer/relationship-writer.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"relationship-writer.js","sourceRoot":"","sources":["../../../src/serializer/relationship-writer.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,8 @@ import type { ElementMappingEntry } from '../mapping/element-mapping.js';
|
|
|
6
6
|
import type { ResolvedRelationshipMapping } from './relationship-writer.js';
|
|
7
7
|
export interface ViewBuildResult {
|
|
8
8
|
viewGraphicsXml: XmlElement[];
|
|
9
|
+
/** `<ArchiMate:ViewEdge>` elements for this view's purely-visual connections — see the connection loop below. */
|
|
10
|
+
viewEdgesXml: XmlElement[];
|
|
9
11
|
refObjectsXml: XmlElement[];
|
|
10
12
|
/** Ids of diagram objects that passed validation and should be drawn (element-backed nodes only). */
|
|
11
13
|
validElementNodeObjectIds: Set<string>;
|
|
@@ -13,6 +15,10 @@ export interface ViewBuildResult {
|
|
|
13
15
|
validGroupObjectIds: Set<string>;
|
|
14
16
|
/** Ids of notes that passed validation and should be drawn. */
|
|
15
17
|
validNoteIds: Set<string>;
|
|
18
|
+
/** Ids of DiagramModelReference objects that passed validation and should be drawn. */
|
|
19
|
+
validViewReferenceObjectIds: Set<string>;
|
|
20
|
+
/** Archi connection id -> its ArchiMate:ViewEdge's own semantic XMA id, for graphical-writer's mm_semanticObject. */
|
|
21
|
+
viewEdgeSemanticIds: Map<string, number>;
|
|
16
22
|
}
|
|
17
23
|
/**
|
|
18
24
|
* Builds one `AllView`'s `ViewGraphics` (Notes/Groups) and `RefObjects`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-writer.d.ts","sourceRoot":"","sources":["../../../src/serializer/view-writer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAI5E,MAAM,WAAW,eAAe;IAC9B,eAAe,EAAE,UAAU,EAAE,CAAC;IAC9B,aAAa,EAAE,UAAU,EAAE,CAAC;IAC5B,qGAAqG;IACrG,yBAAyB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvC,+EAA+E;IAC/E,mBAAmB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACjC,+DAA+D;IAC/D,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"view-writer.d.ts","sourceRoot":"","sources":["../../../src/serializer/view-writer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAI5E,MAAM,WAAW,eAAe;IAC9B,eAAe,EAAE,UAAU,EAAE,CAAC;IAC9B,iHAAiH;IACjH,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,aAAa,EAAE,UAAU,EAAE,CAAC;IAC5B,qGAAqG;IACrG,yBAAyB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvC,+EAA+E;IAC/E,mBAAmB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACjC,+DAA+D;IAC/D,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B,uFAAuF;IACvF,2BAA2B,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzC,qHAAqH;IACrH,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1C;AAED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CACvB,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,SAAS,EACf,GAAG,EAAE,aAAa,EAClB,MAAM,EAAE,aAAa,EACrB,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,mBAAmB,CAAC,EACxD,mBAAmB,EAAE,WAAW,CAAC,MAAM,EAAE,2BAA2B,CAAC,EACrE,WAAW,EAAE,mBAAmB,EAChC,QAAQ,EAAE,MAAM,GACf,eAAe,CAiPjB"}
|
|
@@ -15,27 +15,87 @@ const geometry_js_1 = require("../geometry/geometry.js");
|
|
|
15
15
|
*/
|
|
16
16
|
function buildView(model, view, ids, refIds, mappedElements, mappedRelationships, diagnostics, language) {
|
|
17
17
|
const viewGraphicsXml = [];
|
|
18
|
+
const viewEdgesXml = [];
|
|
18
19
|
const refObjectsXml = [];
|
|
19
20
|
const validElementNodeObjectIds = new Set();
|
|
20
21
|
const validGroupObjectIds = new Set();
|
|
21
22
|
const validNoteIds = new Set();
|
|
23
|
+
const validViewReferenceObjectIds = new Set();
|
|
24
|
+
const viewEdgeSemanticIds = new Map();
|
|
25
|
+
const viewIds = new Set(model.views.map((v) => v.id));
|
|
26
|
+
const diagramObjectById = new Map(model.diagramObjects.map((o) => [o.id, o]));
|
|
27
|
+
/**
|
|
28
|
+
* Resolves the semantic XMA id a diagram object (or note) uses for its
|
|
29
|
+
* *own* node's `mm_semanticObject` — confirmed (across an
|
|
30
|
+
* element-backed/Group/Note/DiagramModelReference mix, in two independent
|
|
31
|
+
* fixtures) to be exactly the value an `ArchiMate:ViewEdge`'s `from`/`to`
|
|
32
|
+
* references for that same object. `undefined` when the id isn't a
|
|
33
|
+
* validated, drawable object/note in this view.
|
|
34
|
+
*/
|
|
35
|
+
function resolveObjectSemanticId(objectOrNoteId) {
|
|
36
|
+
if (validElementNodeObjectIds.has(objectOrNoteId)) {
|
|
37
|
+
const archimateElementId = diagramObjectById.get(objectOrNoteId)?.archimateElementId;
|
|
38
|
+
return archimateElementId ? refIds.get(archimateElementId) : undefined;
|
|
39
|
+
}
|
|
40
|
+
if (validGroupObjectIds.has(objectOrNoteId) || validNoteIds.has(objectOrNoteId)) {
|
|
41
|
+
return ids.get(objectOrNoteId);
|
|
42
|
+
}
|
|
43
|
+
if (validViewReferenceObjectIds.has(objectOrNoteId)) {
|
|
44
|
+
const referencedModelId = diagramObjectById.get(objectOrNoteId)?.referencedModelId;
|
|
45
|
+
return referencedModelId ? refIds.get(referencedModelId) : undefined;
|
|
46
|
+
}
|
|
47
|
+
return undefined;
|
|
48
|
+
}
|
|
22
49
|
for (const obj of model.diagramObjects) {
|
|
23
50
|
if (obj.viewId !== view.id) {
|
|
24
51
|
continue;
|
|
25
52
|
}
|
|
26
53
|
if (obj.referencedModelId !== null) {
|
|
27
|
-
//
|
|
28
|
-
//
|
|
29
|
-
//
|
|
30
|
-
//
|
|
31
|
-
//
|
|
32
|
-
//
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
54
|
+
// Corrected finding: an earlier version of this comment claimed "no
|
|
55
|
+
// trace whatsoever" of a DiagramModelReference in the real XMA export,
|
|
56
|
+
// based on grepping for Archi's own string id — which can never match
|
|
57
|
+
// anything, since XMA never reuses Archi's ids (see id-allocator.ts).
|
|
58
|
+
// That verification method was broken, not the underlying claim.
|
|
59
|
+
// Re-verified directly against agile-manifesto.xma: both
|
|
60
|
+
// DiagramModelReference objects there ARE drawn, as an
|
|
61
|
+
// `mm_concept="AllView"`/`mm_graphicType="3"` node whose
|
|
62
|
+
// `mm_semanticObject` resolves — via an `ArchiMate:AllViewRef`, the
|
|
63
|
+
// same Ref-layer indirection used for every other element/relationship
|
|
64
|
+
// — to the *referenced view's own* `ArchiMate:AllView` id (no new
|
|
65
|
+
// semantic concept is minted for the reference itself). See
|
|
66
|
+
// `graphical-writer.ts`'s `buildViewReferenceNode`.
|
|
67
|
+
//
|
|
68
|
+
// This only resolves when the reference targets another `ArchiView` in
|
|
69
|
+
// *this* model. `referencedModelId` can also point at a Sketch/Canvas
|
|
70
|
+
// view (per `archi-semantic-core`'s docs on the field) — archi-mate has
|
|
71
|
+
// no XMA representation at all, so that case remains genuinely
|
|
72
|
+
// unsupported.
|
|
73
|
+
if (!(0, geometry_js_1.hasCompleteBounds)(obj.bounds)) {
|
|
74
|
+
diagnostics.error({
|
|
75
|
+
code: 'missing-bounds',
|
|
76
|
+
message: `Diagram object "${obj.id}" has incomplete geometry (x/y/width/height) and cannot be positioned in XMA.`,
|
|
77
|
+
entityId: obj.id,
|
|
78
|
+
entityType: 'ArchiDiagramObject',
|
|
79
|
+
});
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
82
|
+
if (!viewIds.has(obj.referencedModelId)) {
|
|
83
|
+
diagnostics.warning({
|
|
84
|
+
code: 'unsupported-diagram-model-reference',
|
|
85
|
+
message: `Diagram object "${obj.id}" references a view/model ("${obj.referencedModelId}") not among this model's own ArchiMate views (e.g. a Sketch/Canvas) — not representable in XMA and was omitted.`,
|
|
86
|
+
entityId: obj.id,
|
|
87
|
+
entityType: 'ArchiDiagramObject',
|
|
88
|
+
});
|
|
89
|
+
continue;
|
|
90
|
+
}
|
|
91
|
+
if (!refIds.has(obj.referencedModelId)) {
|
|
92
|
+
const refId = refIds.idFor(obj.referencedModelId);
|
|
93
|
+
refObjectsXml.push((0, xml_writer_js_1.element)('ArchiMate:AllViewRef', [
|
|
94
|
+
['id', String(refId)],
|
|
95
|
+
['to', String(ids.idFor(obj.referencedModelId))],
|
|
96
|
+
]));
|
|
97
|
+
}
|
|
98
|
+
validViewReferenceObjectIds.add(obj.id);
|
|
39
99
|
continue;
|
|
40
100
|
}
|
|
41
101
|
if (obj.archimateElementId === null) {
|
|
@@ -122,12 +182,34 @@ function buildView(model, view, ids, refIds, mappedElements, mappedRelationships
|
|
|
122
182
|
continue;
|
|
123
183
|
}
|
|
124
184
|
if (connection.archimateRelationshipId === null) {
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
185
|
+
// A purely-visual connection (no underlying ArchiMate relationship).
|
|
186
|
+
// Confirmed against two independent real instances — agile-manifesto
|
|
187
|
+
// (between two DiagramModelReferences) and sabsa (between a
|
|
188
|
+
// Note/Group and a BusinessRole element) — that Archi represents
|
|
189
|
+
// this as an ArchiMate:ViewEdge, whose from/to are exactly each
|
|
190
|
+
// endpoint's own semantic id (the same value already used as that
|
|
191
|
+
// endpoint's own node's mm_semanticObject — see
|
|
192
|
+
// resolveObjectSemanticId above). Falls back to the pre-existing
|
|
193
|
+
// diagnostic when either endpoint isn't itself a drawable object —
|
|
194
|
+
// that remains a genuinely unsupported case, not guessed either way.
|
|
195
|
+
const fromSemanticId = resolveObjectSemanticId(connection.sourceId);
|
|
196
|
+
const toSemanticId = resolveObjectSemanticId(connection.targetId);
|
|
197
|
+
if (fromSemanticId === undefined || toSemanticId === undefined) {
|
|
198
|
+
diagnostics.error({
|
|
199
|
+
code: 'unsupported-connection-no-relationship',
|
|
200
|
+
message: `Connection "${connection.id}" has no underlying semantic relationship (a purely visual connector) and at least one endpoint is not a drawable object — not supported in XMA v0.1.`,
|
|
201
|
+
entityId: connection.id,
|
|
202
|
+
entityType: 'ArchiDiagramConnection',
|
|
203
|
+
});
|
|
204
|
+
continue;
|
|
205
|
+
}
|
|
206
|
+
const viewEdgeId = ids.idFor(connection.id);
|
|
207
|
+
viewEdgesXml.push((0, xml_writer_js_1.element)('ArchiMate:ViewEdge', [
|
|
208
|
+
['id', String(viewEdgeId)],
|
|
209
|
+
['from', String(fromSemanticId)],
|
|
210
|
+
['to', String(toSemanticId)],
|
|
211
|
+
]));
|
|
212
|
+
viewEdgeSemanticIds.set(connection.id, viewEdgeId);
|
|
131
213
|
continue;
|
|
132
214
|
}
|
|
133
215
|
const mapping = mappedRelationships.get(connection.archimateRelationshipId);
|
|
@@ -143,6 +225,15 @@ function buildView(model, view, ids, refIds, mappedElements, mappedRelationships
|
|
|
143
225
|
]));
|
|
144
226
|
}
|
|
145
227
|
}
|
|
146
|
-
return {
|
|
228
|
+
return {
|
|
229
|
+
viewGraphicsXml,
|
|
230
|
+
viewEdgesXml,
|
|
231
|
+
refObjectsXml,
|
|
232
|
+
validElementNodeObjectIds,
|
|
233
|
+
validGroupObjectIds,
|
|
234
|
+
validNoteIds,
|
|
235
|
+
validViewReferenceObjectIds,
|
|
236
|
+
viewEdgeSemanticIds,
|
|
237
|
+
};
|
|
147
238
|
}
|
|
148
239
|
//# sourceMappingURL=view-writer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-writer.js","sourceRoot":"","sources":["../../../src/serializer/view-writer.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"view-writer.js","sourceRoot":"","sources":["../../../src/serializer/view-writer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generic-relationship-mapping.d.ts","sourceRoot":"","sources":["../../../src/mapping/generic-relationship-mapping.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;
|
|
1
|
+
{"version":3,"file":"generic-relationship-mapping.d.ts","sourceRoot":"","sources":["../../../src/mapping/generic-relationship-mapping.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AA2CH,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,gCAAgC,CAC9C,qBAAqB,EAAE,MAAM,EAC7B,eAAe,EAAE,MAAM,EACvB,eAAe,EAAE,MAAM,GACtB,0BAA0B,GAAG,SAAS,CA4BxC"}
|
|
@@ -26,20 +26,29 @@ const VERB_BY_ARCHI_TYPE = {
|
|
|
26
26
|
/**
|
|
27
27
|
* Verbs confirmed (directly, not inferred) to produce the generic
|
|
28
28
|
* `{Verb}Relation` form when a `Junction`/`OrJunction` is an endpoint:
|
|
29
|
-
* `RealizationRelationship` (`RealisationRelation`, sabsa + agile-manifesto)
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
29
|
+
* `RealizationRelationship` (`RealisationRelation`, sabsa + agile-manifesto),
|
|
30
|
+
* `InfluenceRelationship` (`InfluenceRelation`, agile-manifesto), and
|
|
31
|
+
* `ServingRelationship` (`UseRelation` — a single confirmed instance from a
|
|
32
|
+
* private, non-public model; cross-referenced by element name between the
|
|
33
|
+
* source `.archimate` and its BizzDesign-generated `.xma` re-export, same
|
|
34
|
+
* method as every other entry here, just not backed by a fixture pair in
|
|
35
|
+
* this repo). Not extended to other verbs without evidence for that
|
|
36
|
+
* specific verb — a relationship type absent from this set is still
|
|
37
|
+
* reported unsupported.
|
|
33
38
|
*/
|
|
34
|
-
const JUNCTION_CONFIRMED_VERBS = new Set(['Realisation', 'Influence']);
|
|
39
|
+
const JUNCTION_CONFIRMED_VERBS = new Set(['Realisation', 'Influence', 'Use']);
|
|
35
40
|
/**
|
|
36
41
|
* Verbs confirmed to produce the `{Grouping|Element}{Grouping|Element}{Verb}`
|
|
37
|
-
* generic form when a `Grouping` is an endpoint
|
|
38
|
-
* `
|
|
39
|
-
*
|
|
40
|
-
*
|
|
42
|
+
* generic form when a `Grouping` is an endpoint: `CompositionRelationship`,
|
|
43
|
+
* `SpecializationRelationship`, `InfluenceRelationship`, `ServingRelationship`
|
|
44
|
+
* (sabsa + agile-manifesto), `RealizationRelationship`
|
|
45
|
+
* (`ElementGroupingRealisation` — two independent confirmed instances), and
|
|
46
|
+
* `AccessRelationship` (`ElementGroupingAccess` — one confirmed instance).
|
|
47
|
+
* The last two came from a private, non-public model; same cross-reference
|
|
48
|
+
* method as every other entry here, just not backed by a fixture pair in
|
|
49
|
+
* this repo. Same "no evidence, no guess" rule as Junction above.
|
|
41
50
|
*/
|
|
42
|
-
const GROUPING_CONFIRMED_VERBS = new Set(['Composition', 'Specialization', 'Influence', 'Use']);
|
|
51
|
+
const GROUPING_CONFIRMED_VERBS = new Set(['Composition', 'Specialization', 'Influence', 'Use', 'Realisation', 'Access']);
|
|
43
52
|
export function lookupGenericRelationshipMapping(archiRelationshipType, sourceArchiType, targetArchiType) {
|
|
44
53
|
// Confirmed universal: every AssociationRelationship instance across dozens of
|
|
45
54
|
// distinct source/target type pairs (sabsa + agile-manifesto) serializes as this
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generic-relationship-mapping.js","sourceRoot":"","sources":["../../../src/mapping/generic-relationship-mapping.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,4FAA4F;AAC5F,MAAM,kBAAkB,GAAqC;IAC3D,sBAAsB,EAAE,YAAY;IACpC,kBAAkB,EAAE,QAAQ;IAC5B,uBAAuB,EAAE,aAAa;IACtC,gBAAgB,EAAE,MAAM;IACxB,sBAAsB,EAAE,YAAY;IACpC,qBAAqB,EAAE,WAAW;IAClC,0BAA0B,EAAE,gBAAgB;IAC5C,uBAAuB,EAAE,aAAa;IACtC,mBAAmB,EAAE,KAAK;CAC3B,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"generic-relationship-mapping.js","sourceRoot":"","sources":["../../../src/mapping/generic-relationship-mapping.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,4FAA4F;AAC5F,MAAM,kBAAkB,GAAqC;IAC3D,sBAAsB,EAAE,YAAY;IACpC,kBAAkB,EAAE,QAAQ;IAC5B,uBAAuB,EAAE,aAAa;IACtC,gBAAgB,EAAE,MAAM;IACxB,sBAAsB,EAAE,YAAY;IACpC,qBAAqB,EAAE,WAAW;IAClC,0BAA0B,EAAE,gBAAgB;IAC5C,uBAAuB,EAAE,aAAa;IACtC,mBAAmB,EAAE,KAAK;CAC3B,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;AAE9E;;;;;;;;;;GAUG;AACH,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,gBAAgB,EAAE,WAAW,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;AAMzH,MAAM,UAAU,gCAAgC,CAC9C,qBAA6B,EAC7B,eAAuB,EACvB,eAAuB;IAEvB,+EAA+E;IAC/E,iFAAiF;IACjF,+CAA+C;IAC/C,IAAI,qBAAqB,KAAK,yBAAyB,EAAE,CAAC;QACxD,OAAO,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC;IAClD,CAAC;IAED,MAAM,IAAI,GAAG,kBAAkB,CAAC,qBAAqB,CAAC,CAAC;IACvD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,gBAAgB,GAAG,eAAe,KAAK,UAAU,CAAC;IACxD,MAAM,gBAAgB,GAAG,eAAe,KAAK,UAAU,CAAC;IACxD,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,IAAI,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QACjF,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,UAAU,EAAE,CAAC;IACxC,CAAC;IAED,MAAM,gBAAgB,GAAG,eAAe,KAAK,UAAU,CAAC;IACxD,MAAM,gBAAgB,GAAG,eAAe,KAAK,UAAU,CAAC;IACxD,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,IAAI,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QACjF,MAAM,UAAU,GAAG,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7D,MAAM,UAAU,GAAG,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7D,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,GAAG,UAAU,GAAG,IAAI,EAAE,EAAE,CAAC;IAC1D,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -2,12 +2,14 @@
|
|
|
2
2
|
* Archi relationship mapping, resolved by (relationship type, source
|
|
3
3
|
* semantic type, target semantic type) — never by relationship type alone.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* 113 exact-triple mappings are proven: the original 3 confirmed against
|
|
6
6
|
* `tests/fixtures/relationships/relaciones.{archimate,xma}`, 64 more
|
|
7
7
|
* confirmed against `tests/fixtures/sabsa/sabsa.{archimate,xma}`, 20 more
|
|
8
8
|
* confirmed against `tests/fixtures/agile-manifesto/agile-manifesto.{archimate,xma}`,
|
|
9
|
-
*
|
|
10
|
-
* counterpart" instances (see below)
|
|
9
|
+
* 3 confirmed "...Collaboration collapses to its singular active-structure
|
|
10
|
+
* counterpart" instances (see below), and 23 more confirmed from a private,
|
|
11
|
+
* non-public model (see the comments on those two blocks, near the end of
|
|
12
|
+
* this file, for the evidence method) — see each fixture pair's entry in
|
|
11
13
|
* `tests/fixtures/README.md` for the full derivation method. Every other
|
|
12
14
|
* relationship type/source/target combination is unsupported for v0.1 and
|
|
13
15
|
* must be diagnosed, never guessed (see `serializer/relationship-writer.ts`).
|
|
@@ -28,10 +30,10 @@
|
|
|
28
30
|
* - `AssociationRelationship` always serializes as the generic
|
|
29
31
|
* `ElementElementAssociation`, regardless of source/target type.
|
|
30
32
|
* - A `Grouping` endpoint (for the confirmed verbs Composition,
|
|
31
|
-
* Specialization, Influence, Use) or a `Junction
|
|
32
|
-
* (for the confirmed verbs Realisation, Influence
|
|
33
|
-
* (e.g. `GroupingElementComposition`,
|
|
34
|
-
* type-specific one.
|
|
33
|
+
* Specialization, Influence, Use, Realisation, Access) or a `Junction`/
|
|
34
|
+
* `OrJunction` endpoint (for the confirmed verbs Realisation, Influence,
|
|
35
|
+
* Use) uses a generic form (e.g. `GroupingElementComposition`,
|
|
36
|
+
* `RealisationRelation`) instead of a type-specific one.
|
|
35
37
|
*/
|
|
36
38
|
export interface RelationshipMappingEntry {
|
|
37
39
|
archiRelationshipType: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relationship-mapping.d.ts","sourceRoot":"","sources":["../../../src/mapping/relationship-mapping.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"relationship-mapping.d.ts","sourceRoot":"","sources":["../../../src/mapping/relationship-mapping.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,MAAM,WAAW,wBAAwB;IACvC,qBAAqB,EAAE,MAAM,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,qFAAqF;IACrF,OAAO,EAAE,MAAM,CAAC;IAChB,oGAAoG;IACpG,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,qBAAqB,EAAE,SAAS,wBAAwB,EAq0BpE,CAAC;AAaF,wBAAgB,yBAAyB,CACvC,gBAAgB,EAAE,MAAM,EACxB,eAAe,EAAE,MAAM,EACvB,eAAe,EAAE,MAAM,GACtB,wBAAwB,GAAG,SAAS,CAEtC"}
|