@dr2rai/raid-canvas 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9,7 +9,7 @@
9
9
  * - Cascais Heraldry design tokens.
10
10
  */
11
11
  import { Graph, Node, Edge } from '@antv/x6';
12
- import type { RaidNodeData, RaidEdgeData } from './types.js';
12
+ import type { AimOntologyKind, RaidNodeData, RaidEdgeData, Bounds } from './types.js';
13
13
  /**
14
14
  * Cascais Heraldry color palette constants.
15
15
  */
@@ -131,4 +131,12 @@ export declare function createAimNode(data: RaidNodeData): Node.Metadata;
131
131
  * Factory creating an AntV X6 Edge model from a RaidEdgeData specification.
132
132
  */
133
133
  export declare function createAimEdge(data: RaidEdgeData): Edge.Metadata;
134
+ /**
135
+ * Returns default Cartesian bounds for an instantiated AOAIM archetype.
136
+ */
137
+ export declare function getDefaultNodeBounds(kind: AimOntologyKind | string, x?: number, y?: number): Bounds;
138
+ /**
139
+ * Returns a canonical default display name for an instantiated AOAIM archetype.
140
+ */
141
+ export declare function getDefaultNodeName(kind: AimOntologyKind | string): string;
134
142
  //# sourceMappingURL=X6Shapes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"X6Shapes.d.ts","sourceRoot":"","sources":["../src/X6Shapes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAEV,YAAY,EACZ,YAAY,EAEb,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,eAAO,MAAM,cAAc;aACzB,OAAO,EAAE,SAAS;aAClB,aAAa,EAAE,SAAS;aACxB,YAAY,EAAE,SAAS;aACvB,aAAa,EAAE,SAAS;aACxB,UAAU,EAAE,SAAS;aACrB,cAAc,EAAE,SAAS;aACzB,UAAU,EAAE,SAAS;aACrB,WAAW,EAAE,SAAS;aACtB,UAAU,EAAE,SAAS;aACrB,WAAW,EAAE,SAAS;aACtB,aAAa,EAAE,SAAS;CAChB,CAAC;AAEX;;GAEG;AACH,wBAAgB,qBAAqB;;QAuB/B,GAAG;YACD,QAAQ;YACR,MAAM;;;;YACN,KAAK;;oBAhBP,CAAC;oBACD,MAAM;oBACN,MAAM;oBACN,IAAI;oBACJ,WAAW;oBACX,KAAK;wBACH,UAAU;;;;;QAYZ,KAAK;YACH,QAAQ;YACR,MAAM;;;;YACN,KAAK;;;;;;;;;;;;;QAEP,MAAM;YACJ,QAAQ;YACR,MAAM;;;;YACN,KAAK;;;;;;;;;;;;;QAEP,IAAI;YACF,QAAQ;YACR,MAAM;;;;YACN,KAAK;;;;;;;;;;;;;;;;;;EAUZ;AAOD;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAmPxC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAqBpD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAAC,QAAQ,CAiF/D;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAAC,QAAQ,CAoC/D"}
1
+ {"version":3,"file":"X6Shapes.d.ts","sourceRoot":"","sources":["../src/X6Shapes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,KAAK,EAAS,IAAI,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,KAAK,EACV,eAAe,EAEf,YAAY,EACZ,YAAY,EAEZ,MAAM,EACP,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,eAAO,MAAM,cAAc;aACzB,OAAO,EAAE,SAAS;aAClB,aAAa,EAAE,SAAS;aACxB,YAAY,EAAE,SAAS;aACvB,aAAa,EAAE,SAAS;aACxB,UAAU,EAAE,SAAS;aACrB,cAAc,EAAE,SAAS;aACzB,UAAU,EAAE,SAAS;aACrB,WAAW,EAAE,SAAS;aACtB,UAAU,EAAE,SAAS;aACrB,WAAW,EAAE,SAAS;aACtB,aAAa,EAAE,SAAS;CAChB,CAAC;AAEX;;GAEG;AACH,wBAAgB,qBAAqB;;QAuB/B,GAAG;YACD,QAAQ;YACR,MAAM;;;;YACN,KAAK;;oBAhBP,CAAC;oBACD,MAAM;oBACN,MAAM;oBACN,IAAI;oBACJ,WAAW;oBACX,KAAK;wBACH,UAAU;;;;;QAYZ,KAAK;YACH,QAAQ;YACR,MAAM;;;;YACN,KAAK;;;;;;;;;;;;;QAEP,MAAM;YACJ,QAAQ;YACR,MAAM;;;;YACN,KAAK;;;;;;;;;;;;;QAEP,IAAI;YACF,QAAQ;YACR,MAAM;;;;YACN,KAAK;;;;;;;;;;;;;;;;;;EAUZ;AAOD;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAiPxC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAqBpD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAAC,QAAQ,CAiF/D;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAAC,QAAQ,CAoC/D;AAiFD;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,eAAe,GAAG,MAAM,EAC9B,CAAC,GAAE,MAAY,EACf,CAAC,GAAE,MAAY,GACd,MAAM,CAeR;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,MAAM,CAezE"}
package/dist/X6Shapes.js CHANGED
@@ -8,7 +8,7 @@
8
8
  * - Entity archetypes: UseCase (uc), Activity (act), Class (cls), Object (obj), Person (per).
9
9
  * - Cascais Heraldry design tokens.
10
10
  */
11
- import { Node, Edge } from '@antv/x6';
11
+ import { Shape } from '@antv/x6';
12
12
  /**
13
13
  * Cascais Heraldry color palette constants.
14
14
  */
@@ -91,9 +91,9 @@ export function registerAimShapes() {
91
91
  return;
92
92
  }
93
93
  // 1. AimUseCaseNode ('uc') — Ellipse with Net Gold border
94
- Node.define({
94
+ Shape.Ellipse.define({
95
95
  shape: 'aim-uc',
96
- inherit: 'ellipse',
96
+ overwrite: true,
97
97
  width: 140,
98
98
  height: 70,
99
99
  attrs: {
@@ -101,8 +101,6 @@ export function registerAimShapes() {
101
101
  fill: CascaisPalette.ChalkWhite,
102
102
  stroke: CascaisPalette.NetGold,
103
103
  strokeWidth: 2,
104
- rx: 70,
105
- ry: 35,
106
104
  class: 'aim-node aim-uc',
107
105
  },
108
106
  label: {
@@ -118,9 +116,9 @@ export function registerAimShapes() {
118
116
  ports: createOrthogonalPorts(),
119
117
  });
120
118
  // 2. AimActivityNode ('act') — Rounded rectangle with Heraldic Green border
121
- Node.define({
119
+ Shape.Rect.define({
122
120
  shape: 'aim-act',
123
- inherit: 'rect',
121
+ overwrite: true,
124
122
  width: 150,
125
123
  height: 60,
126
124
  attrs: {
@@ -145,9 +143,9 @@ export function registerAimShapes() {
145
143
  ports: createOrthogonalPorts(),
146
144
  });
147
145
  // 3. AimClassNode ('cls') — Compartmentalized class card
148
- Node.define({
146
+ Shape.Rect.define({
149
147
  shape: 'aim-cls',
150
- inherit: 'rect',
148
+ overwrite: true,
151
149
  width: 180,
152
150
  height: 100,
153
151
  markup: [
@@ -241,9 +239,9 @@ export function registerAimShapes() {
241
239
  ports: createOrthogonalPorts(),
242
240
  });
243
241
  // 4. AimObjectNode ('obj') — Instance card with underlined title
244
- Node.define({
242
+ Shape.Rect.define({
245
243
  shape: 'aim-obj',
246
- inherit: 'rect',
244
+ overwrite: true,
247
245
  width: 160,
248
246
  height: 80,
249
247
  attrs: {
@@ -254,7 +252,7 @@ export function registerAimShapes() {
254
252
  class: 'aim-node aim-obj',
255
253
  },
256
254
  label: {
257
- text: '<u>instance: Type</u>',
255
+ text: 'instance: Type',
258
256
  fill: CascaisPalette.TextPrimary,
259
257
  fontSize: 12,
260
258
  fontFamily: 'Inter, system-ui, -apple-system, sans-serif',
@@ -265,9 +263,9 @@ export function registerAimShapes() {
265
263
  ports: createOrthogonalPorts(),
266
264
  });
267
265
  // 5. AimPersonNode ('per') — Person / Actor role card
268
- Node.define({
266
+ Shape.Rect.define({
269
267
  shape: 'aim-per',
270
- inherit: 'rect',
268
+ overwrite: true,
271
269
  width: 120,
272
270
  height: 70,
273
271
  attrs: {
@@ -292,9 +290,9 @@ export function registerAimShapes() {
292
290
  ports: createOrthogonalPorts(),
293
291
  });
294
292
  // 6. AimEdge — Orthogonal Manhattan edge with rounded corners
295
- Edge.define({
293
+ Shape.Edge.define({
296
294
  shape: 'aim-edge',
297
- inherit: 'edge',
295
+ overwrite: true,
298
296
  router: {
299
297
  name: 'manhattan',
300
298
  args: {
@@ -474,8 +472,11 @@ function getEdgeStyling(kind) {
474
472
  strokeWidth: 1.5,
475
473
  strokeDasharray: '5,5',
476
474
  targetMarker: {
477
- name: 'open',
478
- size: 8,
475
+ name: 'block',
476
+ args: {
477
+ size: 8,
478
+ open: true,
479
+ },
479
480
  },
480
481
  };
481
482
  case 'generalization':
@@ -533,4 +534,42 @@ function getEdgeStyling(kind) {
533
534
  };
534
535
  }
535
536
  }
537
+ /**
538
+ * Returns default Cartesian bounds for an instantiated AOAIM archetype.
539
+ */
540
+ export function getDefaultNodeBounds(kind, x = 100, y = 100) {
541
+ switch (kind) {
542
+ case 'uc':
543
+ return { x, y, width: 140, height: 70 };
544
+ case 'act':
545
+ return { x, y, width: 150, height: 60 };
546
+ case 'cls':
547
+ return { x, y, width: 180, height: 110 };
548
+ case 'obj':
549
+ return { x, y, width: 160, height: 80 };
550
+ case 'per':
551
+ return { x, y, width: 120, height: 70 };
552
+ default:
553
+ return { x, y, width: 140, height: 60 };
554
+ }
555
+ }
556
+ /**
557
+ * Returns a canonical default display name for an instantiated AOAIM archetype.
558
+ */
559
+ export function getDefaultNodeName(kind) {
560
+ switch (kind) {
561
+ case 'uc':
562
+ return 'New UseCase';
563
+ case 'act':
564
+ return 'New Activity';
565
+ case 'cls':
566
+ return 'NewClass';
567
+ case 'obj':
568
+ return 'new Object';
569
+ case 'per':
570
+ return 'Actor';
571
+ default:
572
+ return 'Entity';
573
+ }
574
+ }
536
575
  //# sourceMappingURL=X6Shapes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"X6Shapes.js","sourceRoot":"","sources":["../src/X6Shapes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"X6Shapes.js","sourceRoot":"","sources":["../src/X6Shapes.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -7,8 +7,12 @@
7
7
  * - 4-way orthogonal ports and Manhattan router integration.
8
8
  * - Cascais Heraldry design tokens and theme styling.
9
9
  * - Bidirectional RaiBridge for hydrating from and serializing to the aim-* SVG contract.
10
+ * - Anti-entropy semantic connection validation and wiring rules.
11
+ * - Reusable <RaidCanvas /> React component with Dnd and imperative control handle.
10
12
  */
11
13
  export { AimSvgContract, type AimOntologyKind, type AimEdgeKind, type Point, type SvgBendPoint, type Bounds, type OrthogonalPortId, type RaidNodeData, type RaidEdgeData, type RaidMetamodel, type HydrationOptions, type SerializationOptions, } from './types.js';
12
- export { CascaisPalette, createOrthogonalPorts, registerAimShapes, configureAimGraph, createAimNode, createAimEdge, } from './X6Shapes.js';
14
+ export { CascaisPalette, createOrthogonalPorts, registerAimShapes, configureAimGraph, createAimNode, createAimEdge, getDefaultNodeBounds, getDefaultNodeName, } from './X6Shapes.js';
15
+ export { SEMANTIC_RULES_MATRIX, validateSemanticConnection, getSemanticEdgeKind, getSemanticEdgeStereotype, getSemanticRuleDescription, getAvailableStereotypes, type SemanticRule, type StereotypeOption, } from './semanticRules.js';
13
16
  export { RaiBridge } from './RaiBridge.js';
17
+ export { RaidCanvas, type RaidCanvasProps, type RaidCanvasHandle, } from './RaidCanvas.js';
14
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EACL,cAAc,EACd,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,KAAK,EACV,KAAK,YAAY,EACjB,KAAK,MAAM,EACX,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,GAC1B,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,aAAa,GACd,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EACL,cAAc,EACd,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,KAAK,EACV,KAAK,YAAY,EACjB,KAAK,MAAM,EACX,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,GAC1B,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC1B,mBAAmB,EACnB,yBAAyB,EACzB,0BAA0B,EAC1B,uBAAuB,EACvB,KAAK,YAAY,EACjB,KAAK,gBAAgB,GACtB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG3C,OAAO,EACL,UAAU,EACV,KAAK,eAAe,EACpB,KAAK,gBAAgB,GACtB,MAAM,iBAAiB,CAAC"}
package/dist/index.js CHANGED
@@ -7,11 +7,17 @@
7
7
  * - 4-way orthogonal ports and Manhattan router integration.
8
8
  * - Cascais Heraldry design tokens and theme styling.
9
9
  * - Bidirectional RaiBridge for hydrating from and serializing to the aim-* SVG contract.
10
+ * - Anti-entropy semantic connection validation and wiring rules.
11
+ * - Reusable <RaidCanvas /> React component with Dnd and imperative control handle.
10
12
  */
11
13
  // Core Metamodel & SVG Contract Types
12
14
  export { AimSvgContract, } from './types.js';
13
15
  // AntV X6 Custom Shapes & Port Registrations
14
- export { CascaisPalette, createOrthogonalPorts, registerAimShapes, configureAimGraph, createAimNode, createAimEdge, } from './X6Shapes.js';
16
+ export { CascaisPalette, createOrthogonalPorts, registerAimShapes, configureAimGraph, createAimNode, createAimEdge, getDefaultNodeBounds, getDefaultNodeName, } from './X6Shapes.js';
17
+ // Anti-Entropy Semantic Connection Rules
18
+ export { SEMANTIC_RULES_MATRIX, validateSemanticConnection, getSemanticEdgeKind, getSemanticEdgeStereotype, getSemanticRuleDescription, getAvailableStereotypes, } from './semanticRules.js';
15
19
  // Bidirectional SVG <-> X6 Synchronization Bridge
16
20
  export { RaiBridge } from './RaiBridge.js';
21
+ // Reusable React Canvas Component & Ref Handle
22
+ export { RaidCanvas, } from './RaidCanvas.js';
17
23
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,sCAAsC;AACtC,OAAO,EACL,cAAc,GAYf,MAAM,YAAY,CAAC;AAEpB,6CAA6C;AAC7C,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,aAAa,GACd,MAAM,eAAe,CAAC;AAEvB,kDAAkD;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,sCAAsC;AACtC,OAAO,EACL,cAAc,GAYf,MAAM,YAAY,CAAC;AAEpB,6CAA6C;AAC7C,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,eAAe,CAAC;AAEvB,yCAAyC;AACzC,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC1B,mBAAmB,EACnB,yBAAyB,EACzB,0BAA0B,EAC1B,uBAAuB,GAGxB,MAAM,oBAAoB,CAAC;AAE5B,kDAAkD;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,+CAA+C;AAC/C,OAAO,EACL,UAAU,GAGX,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * @file semanticRules.ts
3
+ * @description Anti-entropy semantic connection validation and wiring rules
4
+ * for the AOAIM (Activity-Object-AI Model) graphical modeling contract.
5
+ *
6
+ * Enforces ontological integrity during edge creation:
7
+ * - 'per' -> 'uc' : 'association' («initiates», «owns» [0..1], «participates» [0..*])
8
+ * - 'per' -> 'act' : 'association' («executes»)
9
+ * - 'uc' -> 'uc' : 'dependency' («includes», «extends», «dependsOn»)
10
+ * - 'uc' -> 'act' : 'dependency' («includes»)
11
+ * - 'act' -> 'act' : 'association' («sequence» / process flow)
12
+ * - 'cls' -> 'cls' : 'association' («relatesTo»), 'generalization', 'composition', 'aggregation'
13
+ * - 'cls' -> 'obj' : 'dependency' («instantiates»)
14
+ * - 'obj' -> 'obj' : 'association' («link»)
15
+ */
16
+ import type { AimOntologyKind, AimEdgeKind } from './types.js';
17
+ export interface StereotypeOption {
18
+ readonly stereotype: string;
19
+ readonly defaultCardinality?: string;
20
+ readonly description: string;
21
+ }
22
+ export interface SemanticRule {
23
+ readonly valid: boolean;
24
+ readonly defaultEdgeKind: AimEdgeKind;
25
+ readonly defaultStereotype: string;
26
+ readonly defaultCardinality?: string;
27
+ readonly availableStereotypes: readonly StereotypeOption[];
28
+ readonly description: string;
29
+ }
30
+ /**
31
+ * Ontological connection rules matrix.
32
+ * Key: `${sourceKind}->${targetKind}`
33
+ */
34
+ export declare const SEMANTIC_RULES_MATRIX: Readonly<Record<string, SemanticRule>>;
35
+ /**
36
+ * Validates whether an edge connection between source and target archetypes is ontologically allowed.
37
+ */
38
+ export declare function validateSemanticConnection(sourceKind: AimOntologyKind | string, targetKind: AimOntologyKind | string): boolean;
39
+ /**
40
+ * Determines the canonical default relationship edge kind for a connected pair.
41
+ */
42
+ export declare function getSemanticEdgeKind(sourceKind: AimOntologyKind | string, targetKind: AimOntologyKind | string): AimEdgeKind;
43
+ /**
44
+ * Determines the canonical default stereotype annotation for a connected pair.
45
+ */
46
+ export declare function getSemanticEdgeStereotype(sourceKind: AimOntologyKind | string, targetKind: AimOntologyKind | string): string;
47
+ /**
48
+ * Returns available ontological stereotypes and their default cardinalities for a pair.
49
+ */
50
+ export declare function getAvailableStereotypes(sourceKind: AimOntologyKind | string, targetKind: AimOntologyKind | string): readonly StereotypeOption[];
51
+ /**
52
+ * Returns a human-readable description explaining the ontological relationship.
53
+ */
54
+ export declare function getSemanticRuleDescription(sourceKind: AimOntologyKind | string, targetKind: AimOntologyKind | string): string;
55
+ //# sourceMappingURL=semanticRules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semanticRules.d.ts","sourceRoot":"","sources":["../src/semanticRules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE/D,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,eAAe,EAAE,WAAW,CAAC;IACtC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,oBAAoB,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAC3D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CA+IxE,CAAC;AAEF;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,eAAe,GAAG,MAAM,EACpC,UAAU,EAAE,eAAe,GAAG,MAAM,GACnC,OAAO,CAIT;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,eAAe,GAAG,MAAM,EACpC,UAAU,EAAE,eAAe,GAAG,MAAM,GACnC,WAAW,CAGb;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,eAAe,GAAG,MAAM,EACpC,UAAU,EAAE,eAAe,GAAG,MAAM,GACnC,MAAM,CAGR;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,eAAe,GAAG,MAAM,EACpC,UAAU,EAAE,eAAe,GAAG,MAAM,GACnC,SAAS,gBAAgB,EAAE,CAG7B;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,eAAe,GAAG,MAAM,EACpC,UAAU,EAAE,eAAe,GAAG,MAAM,GACnC,MAAM,CAGR"}
@@ -0,0 +1,201 @@
1
+ /**
2
+ * @file semanticRules.ts
3
+ * @description Anti-entropy semantic connection validation and wiring rules
4
+ * for the AOAIM (Activity-Object-AI Model) graphical modeling contract.
5
+ *
6
+ * Enforces ontological integrity during edge creation:
7
+ * - 'per' -> 'uc' : 'association' («initiates», «owns» [0..1], «participates» [0..*])
8
+ * - 'per' -> 'act' : 'association' («executes»)
9
+ * - 'uc' -> 'uc' : 'dependency' («includes», «extends», «dependsOn»)
10
+ * - 'uc' -> 'act' : 'dependency' («includes»)
11
+ * - 'act' -> 'act' : 'association' («sequence» / process flow)
12
+ * - 'cls' -> 'cls' : 'association' («relatesTo»), 'generalization', 'composition', 'aggregation'
13
+ * - 'cls' -> 'obj' : 'dependency' («instantiates»)
14
+ * - 'obj' -> 'obj' : 'association' («link»)
15
+ */
16
+ /**
17
+ * Ontological connection rules matrix.
18
+ * Key: `${sourceKind}->${targetKind}`
19
+ */
20
+ export const SEMANTIC_RULES_MATRIX = {
21
+ 'per->uc': {
22
+ valid: true,
23
+ defaultEdgeKind: 'association',
24
+ defaultStereotype: '«initiates»',
25
+ description: 'Actor initiates, owns, or participates in UseCase',
26
+ availableStereotypes: [
27
+ {
28
+ stereotype: '«initiates»',
29
+ defaultCardinality: '1',
30
+ description: 'Initiating role triggering the UseCase flow',
31
+ },
32
+ {
33
+ stereotype: '«owns»',
34
+ defaultCardinality: '0..1',
35
+ description: 'Ownership relationship representing responsible party (cardinality 0..1)',
36
+ },
37
+ {
38
+ stereotype: '«participates»',
39
+ defaultCardinality: '0..*',
40
+ description: 'Participating role supporting the UseCase execution (cardinality 0..*)',
41
+ },
42
+ ],
43
+ },
44
+ 'per->act': {
45
+ valid: true,
46
+ defaultEdgeKind: 'association',
47
+ defaultStereotype: '«executes»',
48
+ description: 'Actor directly performs or executes Activity',
49
+ availableStereotypes: [
50
+ {
51
+ stereotype: '«executes»',
52
+ description: 'Actor performs this process step',
53
+ },
54
+ {
55
+ stereotype: '«approves»',
56
+ description: 'Actor reviews or approves activity completion',
57
+ },
58
+ ],
59
+ },
60
+ 'uc->uc': {
61
+ valid: true,
62
+ defaultEdgeKind: 'dependency',
63
+ defaultStereotype: '«includes»',
64
+ description: 'UseCase includes or extends sub-UseCase',
65
+ availableStereotypes: [
66
+ {
67
+ stereotype: '«includes»',
68
+ description: 'Mandatory sub-flow inclusion dependency',
69
+ },
70
+ {
71
+ stereotype: '«extends»',
72
+ description: 'Optional conditional extension point',
73
+ },
74
+ {
75
+ stereotype: '«dependsOn»',
76
+ description: 'Prerequisite functional dependency',
77
+ },
78
+ ],
79
+ },
80
+ 'uc->act': {
81
+ valid: true,
82
+ defaultEdgeKind: 'dependency',
83
+ defaultStereotype: '«includes»',
84
+ description: 'UseCase elaborates downflow process Activity',
85
+ availableStereotypes: [
86
+ {
87
+ stereotype: '«includes»',
88
+ description: 'Process activity required by UseCase',
89
+ },
90
+ {
91
+ stereotype: '«triggers»',
92
+ description: 'UseCase execution triggers activity',
93
+ },
94
+ ],
95
+ },
96
+ 'act->act': {
97
+ valid: true,
98
+ defaultEdgeKind: 'association',
99
+ defaultStereotype: '«sequence»',
100
+ description: 'Activity transitions to next process step',
101
+ availableStereotypes: [
102
+ {
103
+ stereotype: '«sequence»',
104
+ description: 'Sequential process transition',
105
+ },
106
+ {
107
+ stereotype: '«branch»',
108
+ description: 'Conditional decision branch',
109
+ },
110
+ ],
111
+ },
112
+ 'cls->cls': {
113
+ valid: true,
114
+ defaultEdgeKind: 'association',
115
+ defaultStereotype: '«relatesTo»',
116
+ description: 'Domain structural relationship between Classes',
117
+ availableStereotypes: [
118
+ {
119
+ stereotype: '«relatesTo»',
120
+ defaultCardinality: '1..*',
121
+ description: 'General domain association',
122
+ },
123
+ {
124
+ stereotype: '«generalization»',
125
+ description: 'Inheritance classification (subclass is-a superclass)',
126
+ },
127
+ {
128
+ stereotype: '«composition»',
129
+ defaultCardinality: '1',
130
+ description: 'Composite whole-part lifecycle binding',
131
+ },
132
+ {
133
+ stereotype: '«aggregation»',
134
+ defaultCardinality: '0..*',
135
+ description: 'Shared aggregation relationship',
136
+ },
137
+ ],
138
+ },
139
+ 'cls->obj': {
140
+ valid: true,
141
+ defaultEdgeKind: 'dependency',
142
+ defaultStereotype: '«instantiates»',
143
+ description: 'Class specifies runtime Object instance',
144
+ availableStereotypes: [
145
+ {
146
+ stereotype: '«instantiates»',
147
+ description: 'Class defines schema for runtime instance',
148
+ },
149
+ ],
150
+ },
151
+ 'obj->obj': {
152
+ valid: true,
153
+ defaultEdgeKind: 'association',
154
+ defaultStereotype: '«link»',
155
+ description: 'Runtime communication link between Objects',
156
+ availableStereotypes: [
157
+ {
158
+ stereotype: '«link»',
159
+ description: 'Runtime object collaboration message link',
160
+ },
161
+ ],
162
+ },
163
+ };
164
+ /**
165
+ * Validates whether an edge connection between source and target archetypes is ontologically allowed.
166
+ */
167
+ export function validateSemanticConnection(sourceKind, targetKind) {
168
+ if (!sourceKind || !targetKind)
169
+ return false;
170
+ const key = `${sourceKind}->${targetKind}`;
171
+ return SEMANTIC_RULES_MATRIX[key]?.valid ?? false;
172
+ }
173
+ /**
174
+ * Determines the canonical default relationship edge kind for a connected pair.
175
+ */
176
+ export function getSemanticEdgeKind(sourceKind, targetKind) {
177
+ const key = `${sourceKind}->${targetKind}`;
178
+ return SEMANTIC_RULES_MATRIX[key]?.defaultEdgeKind ?? 'association';
179
+ }
180
+ /**
181
+ * Determines the canonical default stereotype annotation for a connected pair.
182
+ */
183
+ export function getSemanticEdgeStereotype(sourceKind, targetKind) {
184
+ const key = `${sourceKind}->${targetKind}`;
185
+ return SEMANTIC_RULES_MATRIX[key]?.defaultStereotype ?? '';
186
+ }
187
+ /**
188
+ * Returns available ontological stereotypes and their default cardinalities for a pair.
189
+ */
190
+ export function getAvailableStereotypes(sourceKind, targetKind) {
191
+ const key = `${sourceKind}->${targetKind}`;
192
+ return SEMANTIC_RULES_MATRIX[key]?.availableStereotypes ?? [];
193
+ }
194
+ /**
195
+ * Returns a human-readable description explaining the ontological relationship.
196
+ */
197
+ export function getSemanticRuleDescription(sourceKind, targetKind) {
198
+ const key = `${sourceKind}->${targetKind}`;
199
+ return SEMANTIC_RULES_MATRIX[key]?.description ?? 'Invalid ontological connection';
200
+ }
201
+ //# sourceMappingURL=semanticRules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semanticRules.js","sourceRoot":"","sources":["../src/semanticRules.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dr2rai/raid-canvas",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Interactive AntV X6 diagram canvas for AOAIM (.raid) models and ontological SVG contracts",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -25,8 +25,16 @@
25
25
  "dependencies": {
26
26
  "@antv/x6": "^2.18.1"
27
27
  },
28
+ "peerDependencies": {
29
+ "react": "^18.0.0 || ^19.0.0",
30
+ "react-dom": "^18.0.0 || ^19.0.0"
31
+ },
28
32
  "devDependencies": {
29
33
  "@types/node": "^22.5.5",
34
+ "@types/react": "^19.0.0",
35
+ "@types/react-dom": "^19.0.0",
36
+ "react": "^19.0.0",
37
+ "react-dom": "^19.0.0",
30
38
  "typescript": "^7.0.2"
31
39
  },
32
40
  "publishConfig": {
@@ -37,6 +45,6 @@
37
45
  "scripts": {
38
46
  "build": "tsc -b --force",
39
47
  "typecheck": "tsc --noEmit",
40
- "test": "node --test test/canvas.test.mjs"
48
+ "test": "node --test test/canvas.test.mjs test/RaidCanvas.test.mjs test/semanticRules.test.mjs"
41
49
  }
42
50
  }