@cda/adapter-xma 0.3.0 → 0.4.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 +35 -7
- package/dist/geometry/geometry.d.ts +13 -1
- package/dist/geometry/geometry.d.ts.map +1 -1
- package/dist/geometry/geometry.js +14 -6
- package/dist/geometry/geometry.js.map +1 -1
- package/dist/serializer/graphical-writer.d.ts +5 -3
- package/dist/serializer/graphical-writer.d.ts.map +1 -1
- package/dist/serializer/graphical-writer.js +48 -18
- package/dist/serializer/graphical-writer.js.map +1 -1
- package/dist/serializer/view-writer.d.ts +6 -5
- package/dist/serializer/view-writer.d.ts.map +1 -1
- package/dist/serializer/view-writer.js +17 -19
- package/dist/serializer/view-writer.js.map +1 -1
- package/package.json +7 -2
package/README.md
CHANGED
|
@@ -55,10 +55,13 @@ const xma = serializeXma(model, {
|
|
|
55
55
|
|
|
56
56
|
`serializeXma` is **strict by default**: if the model contains a construct
|
|
57
57
|
that would cause semantic or presentation loss (an unmapped element type, an
|
|
58
|
-
unconfirmed relationship, more than one view,
|
|
59
|
-
throws `XmaSerializationError` carrying a structured
|
|
60
|
-
problem found, rather than silently dropping content or
|
|
61
|
-
approximate result.
|
|
58
|
+
unconfirmed relationship, more than one view, a diagram object missing
|
|
59
|
+
width/height, ...) it throws `XmaSerializationError` carrying a structured
|
|
60
|
+
diagnostic for every problem found, rather than silently dropping content or
|
|
61
|
+
fabricating an approximate result. Lower-severity findings (`warning`) don't
|
|
62
|
+
block serialization — e.g. an explicit font-size override, or a
|
|
63
|
+
`DiagramModelReference` that gets omitted the same way Archi's own XMA
|
|
64
|
+
export omits it.
|
|
62
65
|
|
|
63
66
|
To preview what is and isn't supported without throwing:
|
|
64
67
|
|
|
@@ -109,6 +112,11 @@ extrapolated beyond that evidence.
|
|
|
109
112
|
opacity, and font are unaffected by view count.
|
|
110
113
|
- Notes and Groups (as `ArchiMate:ViewGraphic`), including Group
|
|
111
114
|
documentation.
|
|
115
|
+
- **Nested diagram objects, up to 3 levels deep** — a child's `MM_Node`
|
|
116
|
+
nests inside its parent's `MM_Graphics`, using its bounds as-is (already
|
|
117
|
+
relative to the parent in Archi, no offset math). Groups nest children the
|
|
118
|
+
same way. Confirmed against 283-nested-object and 15-nested-object
|
|
119
|
+
real-world fixtures. See `tests/fixtures/README.md`.
|
|
112
120
|
- **90 confirmed exact-triple semantic relationship mappings** (up from 3),
|
|
113
121
|
spanning all eight schemes, plus **3 confirmed generic (type-independent)
|
|
114
122
|
forms** — `AssociationRelationship`, a `Grouping` endpoint (Composition,
|
|
@@ -125,7 +133,21 @@ extrapolated beyond that evidence.
|
|
|
125
133
|
calls this `...Use`, not `...Serving`)
|
|
126
134
|
- `FlowRelationship` `BusinessProcess` → `BusinessProcess`
|
|
127
135
|
- Manually routed connection bendpoints (source/target-relative offsets,
|
|
128
|
-
cross-checked against each other).
|
|
136
|
+
cross-checked against each other). When both offsets are present but
|
|
137
|
+
disagree, the source-relative point is used and a `warning` diagnostic is
|
|
138
|
+
reported — this is a precision discrepancy in Archi's own stored data, not
|
|
139
|
+
a construct XMA can't represent, so it does not block serialization.
|
|
140
|
+
- An omitted `x`/`y` bounds coordinate. Confirmed across all four fixtures
|
|
141
|
+
(three omitted-`x`, one omitted-`y`, always alone, never alongside a
|
|
142
|
+
missing `width`/`height`): Archi omits a bounds coordinate specifically
|
|
143
|
+
when its value is `0`, per the ArchiMate Exchange Format convention. Not
|
|
144
|
+
treated as incomplete geometry; JS's null-coerces-to-0 arithmetic applies
|
|
145
|
+
the default when scaling/centering. See `src/geometry/geometry.ts`.
|
|
146
|
+
- `DiagramModelReference` ("insert view as reference") nodes are recognized
|
|
147
|
+
and omitted with a `warning` diagnostic, not a blocking error — confirmed
|
|
148
|
+
against the agile-manifesto fixture, whose real XMA export contains no
|
|
149
|
+
trace whatsoever of such a node or its connections. See
|
|
150
|
+
`src/serializer/view-writer.ts`.
|
|
129
151
|
- A configurable output language, applied consistently — never inferred
|
|
130
152
|
from element names.
|
|
131
153
|
- Direct, lossless mapping of explicit Archi `fillColor`/`lineColor`
|
|
@@ -146,8 +168,14 @@ extrapolated beyond that evidence.
|
|
|
146
168
|
remains circumstantial (one otherwise-unexplained count mismatch, no
|
|
147
169
|
direct confirmation) and is **not** implemented. See "Generic and
|
|
148
170
|
collapsed forms" in [`tests/fixtures/README.md`](tests/fixtures/README.md).
|
|
149
|
-
-
|
|
150
|
-
|
|
171
|
+
- A nested `ArchiNote` (as opposed to a nested `ArchiDiagramObject`, now
|
|
172
|
+
supported) — only one instance exists across all four fixtures, not
|
|
173
|
+
enough to confirm its representation.
|
|
174
|
+
- Purely visual (non-semantic) connections not touching a
|
|
175
|
+
`DiagramModelReference` — no fixture evidence either way (the one
|
|
176
|
+
purely-visual connection found, between two `DiagramModelReference`
|
|
177
|
+
nodes, isn't even parsed as a diagram connection by
|
|
178
|
+
`@cda/archi-semantic-core`, since it lacks an `xsi:type`).
|
|
151
179
|
- Profiles/specializations and arbitrary model properties.
|
|
152
180
|
- Explicit font size, bold/italic, line width, font color, or connector
|
|
153
181
|
line color overrides (reported as diagnostics; the confirmed defaults are
|
|
@@ -30,7 +30,19 @@ interface NullableBounds {
|
|
|
30
30
|
width: number | null;
|
|
31
31
|
height: number | null;
|
|
32
32
|
}
|
|
33
|
-
/**
|
|
33
|
+
/**
|
|
34
|
+
* Type guard: true when a bounds is usable as a `Rect`.
|
|
35
|
+
*
|
|
36
|
+
* `width`/`height` must be set — there is no fixture evidence of Archi ever
|
|
37
|
+
* omitting either. `x`/`y` are allowed to be `null`: confirmed across all
|
|
38
|
+
* four fixtures (three omitted-`x` cases in sabsa, one omitted-`y` case in
|
|
39
|
+
* agile-manifesto — always alone, never alongside a missing `width`/
|
|
40
|
+
* `height`) that Archi omits a bounds coordinate specifically when its value
|
|
41
|
+
* is `0`, per the ArchiMate Exchange Format convention. Downstream numeric
|
|
42
|
+
* use of `bounds.x`/`bounds.y` (scaling, center-of) relies on JS's
|
|
43
|
+
* null-coerces-to-0 arithmetic to apply that default — no explicit
|
|
44
|
+
* substitution needed here.
|
|
45
|
+
*/
|
|
34
46
|
export declare function hasCompleteBounds(bounds: NullableBounds | null): bounds is Rect;
|
|
35
47
|
export {};
|
|
36
48
|
//# sourceMappingURL=geometry.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"geometry.d.ts","sourceRoot":"","sources":["../../src/geometry/geometry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,SAAS,IAAI,CAAC;AAE3B,MAAM,WAAW,IAAI;IACnB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,IAAI,GAAG,IAAI,CAO5C;AAED,MAAM,WAAW,KAAK;IACpB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAE9C;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,IAAI,GAAG,KAAK,CAK5C;AAED,UAAU,cAAc;IACtB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED
|
|
1
|
+
{"version":3,"file":"geometry.d.ts","sourceRoot":"","sources":["../../src/geometry/geometry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,SAAS,IAAI,CAAC;AAE3B,MAAM,WAAW,IAAI;IACnB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,IAAI,GAAG,IAAI,CAO5C;AAED,MAAM,WAAW,KAAK;IACpB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAE9C;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,IAAI,GAAG,KAAK,CAK5C;AAED,UAAU,cAAc;IACtB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,MAAM,IAAI,IAAI,CAE/E"}
|
|
@@ -30,12 +30,20 @@ export function centerOf(bounds) {
|
|
|
30
30
|
y: Math.floor(bounds.y + bounds.height / 2),
|
|
31
31
|
};
|
|
32
32
|
}
|
|
33
|
-
/**
|
|
33
|
+
/**
|
|
34
|
+
* Type guard: true when a bounds is usable as a `Rect`.
|
|
35
|
+
*
|
|
36
|
+
* `width`/`height` must be set — there is no fixture evidence of Archi ever
|
|
37
|
+
* omitting either. `x`/`y` are allowed to be `null`: confirmed across all
|
|
38
|
+
* four fixtures (three omitted-`x` cases in sabsa, one omitted-`y` case in
|
|
39
|
+
* agile-manifesto — always alone, never alongside a missing `width`/
|
|
40
|
+
* `height`) that Archi omits a bounds coordinate specifically when its value
|
|
41
|
+
* is `0`, per the ArchiMate Exchange Format convention. Downstream numeric
|
|
42
|
+
* use of `bounds.x`/`bounds.y` (scaling, center-of) relies on JS's
|
|
43
|
+
* null-coerces-to-0 arithmetic to apply that default — no explicit
|
|
44
|
+
* substitution needed here.
|
|
45
|
+
*/
|
|
34
46
|
export function hasCompleteBounds(bounds) {
|
|
35
|
-
return
|
|
36
|
-
bounds.x !== null &&
|
|
37
|
-
bounds.y !== null &&
|
|
38
|
-
bounds.width !== null &&
|
|
39
|
-
bounds.height !== null);
|
|
47
|
+
return bounds !== null && bounds.width !== null && bounds.height !== null;
|
|
40
48
|
}
|
|
41
49
|
//# sourceMappingURL=geometry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"geometry.js","sourceRoot":"","sources":["../../src/geometry/geometry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC;AAS3B,MAAM,UAAU,UAAU,CAAC,UAAkB;IAC3C,OAAO,UAAU,GAAG,SAAS,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,MAAY;IACpC,OAAO;QACL,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QACvB,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QACvB,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC;QAC/B,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC;KAClC,CAAC;AACJ,CAAC;AAOD,MAAM,UAAU,UAAU,CAAC,KAAY;IACrC,OAAO,EAAE,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CAAC,MAAY;IACnC,OAAO;QACL,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;QAC1C,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;KAC5C,CAAC;AACJ,CAAC;AASD
|
|
1
|
+
{"version":3,"file":"geometry.js","sourceRoot":"","sources":["../../src/geometry/geometry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC;AAS3B,MAAM,UAAU,UAAU,CAAC,UAAkB;IAC3C,OAAO,UAAU,GAAG,SAAS,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,MAAY;IACpC,OAAO;QACL,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QACvB,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QACvB,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC;QAC/B,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC;KAClC,CAAC;AACJ,CAAC;AAOD,MAAM,UAAU,UAAU,CAAC,KAAY;IACrC,OAAO,EAAE,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CAAC,MAAY;IACnC,OAAO;QACL,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;QAC1C,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;KAC5C,CAAC;AACJ,CAAC;AASD;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAA6B;IAC7D,OAAO,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,CAAC;AAC5E,CAAC"}
|
|
@@ -9,9 +9,11 @@ export interface GraphicalModuleResult {
|
|
|
9
9
|
diagramXml: XmlElement;
|
|
10
10
|
}
|
|
11
11
|
/**
|
|
12
|
-
* Builds the `GraphicalModule`'s `MM_Diagram` for
|
|
13
|
-
*
|
|
14
|
-
*
|
|
12
|
+
* Builds the `GraphicalModule`'s `MM_Diagram` for one view: a Canvas node
|
|
13
|
+
* wrapping one `MM_Node` per drawable diagram object/group/note (nested
|
|
14
|
+
* diagram objects recursively nested inside their parent's `MM_Node`, via
|
|
15
|
+
* `buildNodeTree` — see `tests/fixtures/README.md`, "Nested diagram
|
|
16
|
+
* objects"), and one `MM_DirectedRel` per drawable connection.
|
|
15
17
|
*
|
|
16
18
|
* `mm_fromx`/`mm_fromy`/`mm_tox`/`mm_toy` (manual connector anchor
|
|
17
19
|
* metadata) are deliberately omitted — exactly one fixture exhibited them,
|
|
@@ -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,EAIV,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE,OAAO,EAAE,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACvF,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,EAIV,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE,OAAO,EAAE,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACvF,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;AA6ND;;;;;;;;;;;;;;GAcG;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,CAuMvB"}
|
|
@@ -117,13 +117,22 @@ function buildIconDecoration(id) {
|
|
|
117
117
|
['mm_concept', 'icon'],
|
|
118
118
|
]);
|
|
119
119
|
}
|
|
120
|
-
/**
|
|
121
|
-
|
|
120
|
+
/**
|
|
121
|
+
* Builds a fully-styled `MM_Node` for an element-backed diagram object, a
|
|
122
|
+
* Group, or a Note/ViewGraphic. `nestedChildrenXml` are already-built child
|
|
123
|
+
* `MM_Node`s (from nested diagram objects) — confirmed to nest as siblings
|
|
124
|
+
* of the icon/label `MM_Decoration`s inside the same `MM_Graphics`, after
|
|
125
|
+
* them, in both fixtures. Their `MM_Rect` bounds are used as-is (the same
|
|
126
|
+
* ×3 scale as every other node) — confirmed to already be relative to the
|
|
127
|
+
* parent in both Archi and XMA, so no offset math is needed.
|
|
128
|
+
*/
|
|
129
|
+
function buildStyledNode(ids, nodeXmaId, concept, semanticObject, hasIcon, visuals, bounds, symbolName, labelExtraAttrs = [], nestedChildrenXml = []) {
|
|
122
130
|
const graphicsChildren = [];
|
|
123
131
|
if (hasIcon) {
|
|
124
132
|
graphicsChildren.push(buildIconDecoration(ids.fresh()));
|
|
125
133
|
}
|
|
126
134
|
graphicsChildren.push(buildLabelDecoration(ids.fresh(), visuals.fontName, labelExtraAttrs));
|
|
135
|
+
graphicsChildren.push(...nestedChildrenXml);
|
|
127
136
|
const attrs = [
|
|
128
137
|
['id', String(nodeXmaId)],
|
|
129
138
|
['mm_graphicType', '5'],
|
|
@@ -164,9 +173,11 @@ function buildJunctionNode(ids, nodeXmaId, concept, semanticObject, bounds) {
|
|
|
164
173
|
]);
|
|
165
174
|
}
|
|
166
175
|
/**
|
|
167
|
-
* Builds the `GraphicalModule`'s `MM_Diagram` for
|
|
168
|
-
*
|
|
169
|
-
*
|
|
176
|
+
* Builds the `GraphicalModule`'s `MM_Diagram` for one view: a Canvas node
|
|
177
|
+
* wrapping one `MM_Node` per drawable diagram object/group/note (nested
|
|
178
|
+
* diagram objects recursively nested inside their parent's `MM_Node`, via
|
|
179
|
+
* `buildNodeTree` — see `tests/fixtures/README.md`, "Nested diagram
|
|
180
|
+
* objects"), and one `MM_DirectedRel` per drawable connection.
|
|
170
181
|
*
|
|
171
182
|
* `mm_fromx`/`mm_fromy`/`mm_tox`/`mm_toy` (manual connector anchor
|
|
172
183
|
* metadata) are deliberately omitted — exactly one fixture exhibited them,
|
|
@@ -181,30 +192,44 @@ export function buildGraphicalModule(model, view, ids, refIds, allocator, mapped
|
|
|
181
192
|
const noteById = new Map(model.notes.map((n) => [n.id, n]));
|
|
182
193
|
const nodeIds = new XmaIdRegistry(allocator);
|
|
183
194
|
const canvasChildren = [];
|
|
184
|
-
|
|
195
|
+
/**
|
|
196
|
+
* Builds one diagram object's node, recursively building and nesting its
|
|
197
|
+
* children first (bottom-up) — confirmed structure: a child `MM_Node`
|
|
198
|
+
* nests as a sibling of its parent's icon/label decorations, inside the
|
|
199
|
+
* same `MM_Graphics`, up to 3 levels deep in the sabsa fixture. Applies
|
|
200
|
+
* equally to element-backed objects and Groups (both confirmed to nest
|
|
201
|
+
* children this way). Returns `null` for an object this pass can't draw
|
|
202
|
+
* (already diagnosed elsewhere).
|
|
203
|
+
*/
|
|
204
|
+
function buildNodeTree(objId) {
|
|
185
205
|
const obj = diagramObjectById.get(objId);
|
|
186
206
|
if (!obj)
|
|
187
|
-
|
|
207
|
+
return null;
|
|
208
|
+
const nestedChildrenXml = obj.childrenIds
|
|
209
|
+
.map((childId) => buildNodeTree(childId))
|
|
210
|
+
.filter((xml) => xml !== null);
|
|
188
211
|
if (viewResult.validElementNodeObjectIds.has(objId) && obj.archimateElementId) {
|
|
189
212
|
const mapping = mappedElements.get(obj.archimateElementId);
|
|
190
213
|
const refId = refIds.get(obj.archimateElementId);
|
|
191
214
|
const nodeXmaId = nodeIds.idFor(obj.id);
|
|
192
215
|
if (JUNCTION_XMA_TYPES.has(mapping.xmaType)) {
|
|
193
|
-
|
|
194
|
-
}
|
|
195
|
-
else {
|
|
196
|
-
const visuals = resolveNodeVisuals(obj.style, CATEGORY_FILL_COLOR[mapping.category], diagnostics, obj.id, 'ArchiDiagramObject');
|
|
197
|
-
canvasChildren.push(buildStyledNode(ids, nodeXmaId, mapping.xmaType, refId, mapping.hasIcon, visuals, obj.bounds, null));
|
|
216
|
+
return buildJunctionNode(ids, nodeXmaId, mapping.xmaType, refId, obj.bounds);
|
|
198
217
|
}
|
|
218
|
+
const visuals = resolveNodeVisuals(obj.style, CATEGORY_FILL_COLOR[mapping.category], diagnostics, obj.id, 'ArchiDiagramObject');
|
|
219
|
+
return buildStyledNode(ids, nodeXmaId, mapping.xmaType, refId, mapping.hasIcon, visuals, obj.bounds, null, [], nestedChildrenXml);
|
|
199
220
|
}
|
|
200
|
-
|
|
221
|
+
if (viewResult.validGroupObjectIds.has(objId)) {
|
|
201
222
|
const groupSemanticId = ids.get(obj.id);
|
|
202
223
|
const visuals = resolveNodeVisuals(obj.style, GROUP_FILL_COLOR, diagnostics, obj.id, 'ArchiDiagramObject');
|
|
203
224
|
const nodeXmaId = nodeIds.idFor(obj.id);
|
|
204
|
-
|
|
205
|
-
['mm_frameStrategy', '12'],
|
|
206
|
-
]));
|
|
225
|
+
return buildStyledNode(ids, nodeXmaId, 'ViewGraphic', groupSemanticId, false, visuals, obj.bounds, 'group', [['mm_frameStrategy', '12']], nestedChildrenXml);
|
|
207
226
|
}
|
|
227
|
+
return null;
|
|
228
|
+
}
|
|
229
|
+
for (const objId of view.diagramObjectIds) {
|
|
230
|
+
const nodeXml = buildNodeTree(objId);
|
|
231
|
+
if (nodeXml)
|
|
232
|
+
canvasChildren.push(nodeXml);
|
|
208
233
|
}
|
|
209
234
|
for (const noteId of view.noteIds) {
|
|
210
235
|
if (!viewResult.validNoteIds.has(noteId))
|
|
@@ -255,9 +280,14 @@ export function buildGraphicalModule(model, view, ids, refIds, allocator, mapped
|
|
|
255
280
|
continue;
|
|
256
281
|
}
|
|
257
282
|
if (resolution.mismatch) {
|
|
258
|
-
|
|
283
|
+
// Not a data-loss case: resolution.point (the source-relative form,
|
|
284
|
+
// used below regardless) is a perfectly usable point — this is a
|
|
285
|
+
// small precision disagreement in Archi's own stored offsets, not a
|
|
286
|
+
// construct XMA has no representation for. Warning, not an error
|
|
287
|
+
// that discards the whole document.
|
|
288
|
+
diagnostics.warning({
|
|
259
289
|
code: 'bendpoint-endpoint-mismatch',
|
|
260
|
-
message: `Connection "${connection.id}" has a bendpoint whose source-relative and target-relative offsets disagree materially (source: ${resolution.mismatch.fromSource.x},${resolution.mismatch.fromSource.y}; target: ${resolution.mismatch.fromTarget.x},${resolution.mismatch.fromTarget.y}).`,
|
|
290
|
+
message: `Connection "${connection.id}" has a bendpoint whose source-relative and target-relative offsets disagree materially (source: ${resolution.mismatch.fromSource.x},${resolution.mismatch.fromSource.y}; target: ${resolution.mismatch.fromTarget.x},${resolution.mismatch.fromTarget.y}); used the source-relative point.`,
|
|
261
291
|
entityId: connection.id,
|
|
262
292
|
entityType: 'ArchiDiagramConnection',
|
|
263
293
|
});
|
|
@@ -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":"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"}
|
|
@@ -15,12 +15,13 @@ export interface ViewBuildResult {
|
|
|
15
15
|
validNoteIds: Set<string>;
|
|
16
16
|
}
|
|
17
17
|
/**
|
|
18
|
-
* Builds
|
|
18
|
+
* Builds one `AllView`'s `ViewGraphics` (Notes/Groups) and `RefObjects`
|
|
19
19
|
* (the three-layer view-reference indirection — see module docs on
|
|
20
|
-
* `graphical-writer.ts`)
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
20
|
+
* `graphical-writer.ts`). Also validates every diagram object/note/connection
|
|
21
|
+
* in the view, since geometry and view membership are model-wide
|
|
22
|
+
* preservation guarantees, not just node drawing concerns. Nested diagram
|
|
23
|
+
* objects (a `parentId` or non-empty `childrenIds`) are valid here — see
|
|
24
|
+
* `graphical-writer.ts`'s recursive node building for how nesting is drawn.
|
|
24
25
|
*/
|
|
25
26
|
export declare function buildView(model: ArchiModel, view: ArchiView, ids: XmaIdRegistry, refIds: XmaIdRegistry, mappedElements: ReadonlyMap<string, ElementMappingEntry>, mappedRelationships: ReadonlyMap<string, ResolvedRelationshipMapping>, diagnostics: DiagnosticCollector, language: string): ViewBuildResult;
|
|
26
27
|
//# sourceMappingURL=view-writer.d.ts.map
|
|
@@ -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;CAC3B;
|
|
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;CAC3B;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,CAiJjB"}
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
import { element } from '../infrastructure/xml-writer.js';
|
|
2
2
|
import { buildProfileValues } from './profile-values.js';
|
|
3
3
|
import { hasCompleteBounds } from '../geometry/geometry.js';
|
|
4
|
-
function hasNesting(parentId, childrenIds) {
|
|
5
|
-
return parentId !== null || childrenIds.length > 0;
|
|
6
|
-
}
|
|
7
4
|
/**
|
|
8
|
-
* Builds
|
|
5
|
+
* Builds one `AllView`'s `ViewGraphics` (Notes/Groups) and `RefObjects`
|
|
9
6
|
* (the three-layer view-reference indirection — see module docs on
|
|
10
|
-
* `graphical-writer.ts`)
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
7
|
+
* `graphical-writer.ts`). Also validates every diagram object/note/connection
|
|
8
|
+
* in the view, since geometry and view membership are model-wide
|
|
9
|
+
* preservation guarantees, not just node drawing concerns. Nested diagram
|
|
10
|
+
* objects (a `parentId` or non-empty `childrenIds`) are valid here — see
|
|
11
|
+
* `graphical-writer.ts`'s recursive node building for how nesting is drawn.
|
|
14
12
|
*/
|
|
15
13
|
export function buildView(model, view, ids, refIds, mappedElements, mappedRelationships, diagnostics, language) {
|
|
16
14
|
const viewGraphicsXml = [];
|
|
@@ -22,19 +20,16 @@ export function buildView(model, view, ids, refIds, mappedElements, mappedRelati
|
|
|
22
20
|
if (obj.viewId !== view.id) {
|
|
23
21
|
continue;
|
|
24
22
|
}
|
|
25
|
-
if (hasNesting(obj.parentId, obj.childrenIds)) {
|
|
26
|
-
diagnostics.error({
|
|
27
|
-
code: 'unsupported-nested-diagram-object',
|
|
28
|
-
message: `Diagram object "${obj.id}" is nested (has a parent or children) — nested diagram objects are not supported in XMA v0.1.`,
|
|
29
|
-
entityId: obj.id,
|
|
30
|
-
entityType: 'ArchiDiagramObject',
|
|
31
|
-
});
|
|
32
|
-
continue;
|
|
33
|
-
}
|
|
34
23
|
if (obj.referencedModelId !== null) {
|
|
35
|
-
|
|
24
|
+
// Confirmed against the agile-manifesto fixture: Archi's own XMA export
|
|
25
|
+
// contains no trace whatsoever of a DiagramModelReference node or its
|
|
26
|
+
// connections (grepped for both ids and the referenced view ids — zero
|
|
27
|
+
// matches). Dropping it here, like the rest of this loop's unsupported
|
|
28
|
+
// cases, exactly reproduces that behavior, so it's a warning, not a
|
|
29
|
+
// blocking error.
|
|
30
|
+
diagnostics.warning({
|
|
36
31
|
code: 'unsupported-diagram-model-reference',
|
|
37
|
-
message: `Diagram object "${obj.id}" is a view-reference (DiagramModelReference)
|
|
32
|
+
message: `Diagram object "${obj.id}" is a view-reference (DiagramModelReference) and was omitted, matching Archi's own XMA export.`,
|
|
38
33
|
entityId: obj.id,
|
|
39
34
|
entityType: 'ArchiDiagramObject',
|
|
40
35
|
});
|
|
@@ -95,6 +90,9 @@ export function buildView(model, view, ids, refIds, mappedElements, mappedRelati
|
|
|
95
90
|
continue;
|
|
96
91
|
}
|
|
97
92
|
if (note.parentId !== null) {
|
|
93
|
+
// Unlike nested ArchiDiagramObjects (supported — see graphical-writer.ts's
|
|
94
|
+
// buildNodeTree), a nested Note has no fixture evidence: only one instance
|
|
95
|
+
// exists across all four fixtures, not enough to confirm its representation.
|
|
98
96
|
diagnostics.error({
|
|
99
97
|
code: 'unsupported-nested-diagram-object',
|
|
100
98
|
message: `Note "${note.id}" is nested inside another diagram object — not supported in XMA v0.1.`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-writer.js","sourceRoot":"","sources":["../../src/serializer/view-writer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAK1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAa5D
|
|
1
|
+
{"version":3,"file":"view-writer.js","sourceRoot":"","sources":["../../src/serializer/view-writer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cda/adapter-xma",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.1",
|
|
4
4
|
"description": "XMA output adapter for the Continuous-Driven Architecture (CDA) ecosystem. Serializes the ArchiModel produced by @cda/archi-semantic-core into an XMA document.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"archimate",
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
],
|
|
28
28
|
"publishConfig": {
|
|
29
29
|
"access": "public",
|
|
30
|
-
"provenance":
|
|
30
|
+
"provenance": false
|
|
31
31
|
},
|
|
32
32
|
"sideEffects": false,
|
|
33
33
|
"scripts": {
|
|
@@ -42,8 +42,13 @@
|
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@cda/archi-semantic-core": "^0.4.2",
|
|
45
|
+
"@semantic-release/changelog": "^7.0.0",
|
|
46
|
+
"@semantic-release/git": "^11.0.1",
|
|
47
|
+
"@semantic-release/github": "^12.0.9",
|
|
45
48
|
"@types/node": "^24.0.0",
|
|
49
|
+
"conventional-changelog-conventionalcommits": "^9.3.1",
|
|
46
50
|
"fast-xml-parser": "^5.10.1",
|
|
51
|
+
"semantic-release": "^25.0.9",
|
|
47
52
|
"typescript": "5.9.3",
|
|
48
53
|
"vitest": "^4.1.10"
|
|
49
54
|
},
|