@coral-viz/viz 0.2.3 → 0.2.5
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 +25 -4
- package/dist/compatibility/CompatibilityEdge.d.ts +16 -11
- package/dist/compatibility/CompatibilityEdge.d.ts.map +1 -1
- package/dist/compatibility/CompatibilityEdge.js +144 -28
- package/dist/compatibility/CompatibilityEdge.js.map +1 -1
- package/dist/components/DiagramFontFaces.d.ts +8 -0
- package/dist/components/DiagramFontFaces.d.ts.map +1 -0
- package/dist/components/DiagramFontFaces.js +18 -0
- package/dist/components/DiagramFontFaces.js.map +1 -0
- package/dist/components/SymbolNode.d.ts.map +1 -1
- package/dist/components/SymbolNode.js +59 -11
- package/dist/components/SymbolNode.js.map +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +1 -0
- package/dist/components/index.js.map +1 -1
- package/dist/editor/CoralEditor.js +1 -1
- package/dist/editor/CoralEditor.js.map +1 -1
- package/dist/editor/converter.d.ts +1 -1
- package/dist/editor/converter.d.ts.map +1 -1
- package/dist/editor/converter.js +41 -21
- package/dist/editor/converter.js.map +1 -1
- package/dist/editor/dimensions.d.ts +7 -0
- package/dist/editor/dimensions.d.ts.map +1 -0
- package/dist/editor/dimensions.js +26 -0
- package/dist/editor/dimensions.js.map +1 -0
- package/dist/file/deserialize.d.ts.map +1 -1
- package/dist/file/deserialize.js +9 -14
- package/dist/file/deserialize.js.map +1 -1
- package/dist/file/index.d.ts +2 -1
- package/dist/file/index.d.ts.map +1 -1
- package/dist/file/index.js +2 -1
- package/dist/file/index.js.map +1 -1
- package/dist/file/layoutProfile.d.ts +11 -0
- package/dist/file/layoutProfile.d.ts.map +1 -0
- package/dist/file/layoutProfile.js +89 -0
- package/dist/file/layoutProfile.js.map +1 -0
- package/dist/file/migrate.d.ts.map +1 -1
- package/dist/file/migrate.js +15 -3
- package/dist/file/migrate.js.map +1 -1
- package/dist/file/schema.d.ts +27 -0
- package/dist/file/schema.d.ts.map +1 -1
- package/dist/file/schema.js +70 -0
- package/dist/file/schema.js.map +1 -1
- package/dist/file/serialize.d.ts.map +1 -1
- package/dist/file/serialize.js +61 -16
- package/dist/file/serialize.js.map +1 -1
- package/dist/index.d.ts +6 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -3
- package/dist/index.js.map +1 -1
- package/dist/layout/elk.d.ts +2 -51
- package/dist/layout/elk.d.ts.map +1 -1
- package/dist/layout/elk.js +107 -337
- package/dist/layout/elk.js.map +1 -1
- package/dist/layout/nodeSizing.d.ts +4 -61
- package/dist/layout/nodeSizing.d.ts.map +1 -1
- package/dist/layout/nodeSizing.js +4 -315
- package/dist/layout/nodeSizing.js.map +1 -1
- package/dist/layout/positionStability.d.ts +2 -1
- package/dist/layout/positionStability.d.ts.map +1 -1
- package/dist/layout/positionStability.js +40 -29
- package/dist/layout/positionStability.js.map +1 -1
- package/dist/layout/useAxisConstrain.d.ts.map +1 -1
- package/dist/layout/useAxisConstrain.js +20 -20
- package/dist/layout/useAxisConstrain.js.map +1 -1
- package/dist/layout/useDiagramState.d.ts +2 -1
- package/dist/layout/useDiagramState.d.ts.map +1 -1
- package/dist/layout/useLayoutHistory.d.ts +8 -0
- package/dist/layout/useLayoutHistory.d.ts.map +1 -1
- package/dist/layout/useLayoutHistory.js +78 -100
- package/dist/layout/useLayoutHistory.js.map +1 -1
- package/dist/properties/NodePropertiesPanel.d.ts +5 -1
- package/dist/properties/NodePropertiesPanel.d.ts.map +1 -1
- package/dist/properties/NodePropertiesPanel.js +95 -28
- package/dist/properties/NodePropertiesPanel.js.map +1 -1
- package/dist/settings/FontSettingsForm.d.ts.map +1 -1
- package/dist/settings/FontSettingsForm.js +9 -4
- package/dist/settings/FontSettingsForm.js.map +1 -1
- package/dist/settings/LayoutSettingsForm.d.ts +3 -1
- package/dist/settings/LayoutSettingsForm.d.ts.map +1 -1
- package/dist/settings/LayoutSettingsForm.js +43 -20
- package/dist/settings/LayoutSettingsForm.js.map +1 -1
- package/dist/settings/SettingsPanel.d.ts +10 -2
- package/dist/settings/SettingsPanel.d.ts.map +1 -1
- package/dist/settings/SettingsPanel.js +45 -3
- package/dist/settings/SettingsPanel.js.map +1 -1
- package/dist/settings/useSettings.d.ts +8 -2
- package/dist/settings/useSettings.d.ts.map +1 -1
- package/dist/settings/useSettings.js +29 -7
- package/dist/settings/useSettings.js.map +1 -1
- package/dist/text-editor/SplitEditor.d.ts +5 -1
- package/dist/text-editor/SplitEditor.d.ts.map +1 -1
- package/dist/text-editor/SplitEditor.js +5 -12
- package/dist/text-editor/SplitEditor.js.map +1 -1
- package/dist/text-editor/TextEditor.d.ts +45 -33
- package/dist/text-editor/TextEditor.d.ts.map +1 -1
- package/dist/text-editor/TextEditor.js +178 -168
- package/dist/text-editor/TextEditor.js.map +1 -1
- package/dist/text-editor/hooks/useBidirectionalSync.d.ts +15 -0
- package/dist/text-editor/hooks/useBidirectionalSync.d.ts.map +1 -1
- package/dist/text-editor/hooks/useBidirectionalSync.js +9 -22
- package/dist/text-editor/hooks/useBidirectionalSync.js.map +1 -1
- package/dist/text-editor/index.d.ts +2 -2
- package/dist/text-editor/index.d.ts.map +1 -1
- package/dist/text-editor/index.js +1 -1
- package/dist/text-editor/index.js.map +1 -1
- package/dist/types.d.ts +24 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +4 -1
- package/dist/types.js.map +1 -1
- package/dist/viewMetadata.d.ts +4 -0
- package/dist/viewMetadata.d.ts.map +1 -0
- package/dist/viewMetadata.js +63 -0
- package/dist/viewMetadata.js.map +1 -0
- package/dist/waypoints/useWaypointManager.d.ts.map +1 -1
- package/dist/waypoints/useWaypointManager.js +60 -84
- package/dist/waypoints/useWaypointManager.js.map +1 -1
- package/package.json +10 -9
package/dist/file/schema.d.ts
CHANGED
|
@@ -45,6 +45,13 @@ export interface LayoutSpacing {
|
|
|
45
45
|
/** Spacing between layers (for layered algorithm) */
|
|
46
46
|
layerSpacing?: number;
|
|
47
47
|
}
|
|
48
|
+
export interface LayoutProfileOverrides {
|
|
49
|
+
algorithm?: string;
|
|
50
|
+
direction?: LayoutDirection;
|
|
51
|
+
spacing?: LayoutSpacing;
|
|
52
|
+
edgeRouting?: EdgeRouting;
|
|
53
|
+
elkOptions?: Record<string, string | number | boolean>;
|
|
54
|
+
}
|
|
48
55
|
/**
|
|
49
56
|
* Layout configuration
|
|
50
57
|
*/
|
|
@@ -59,6 +66,10 @@ export interface LayoutSettings {
|
|
|
59
66
|
elkOptions?: Record<string, string | number | boolean>;
|
|
60
67
|
/** Node sizing mode (CORAL-REQ-011) */
|
|
61
68
|
sizingMode?: SizingMode;
|
|
69
|
+
/** Opt in to the active notation's conservative layout profile. */
|
|
70
|
+
profile?: 'notation';
|
|
71
|
+
/** Sparse changes layered over the active notation profile. */
|
|
72
|
+
profileOverrides?: LayoutProfileOverrides;
|
|
62
73
|
}
|
|
63
74
|
/**
|
|
64
75
|
* Document settings (saved with file)
|
|
@@ -269,6 +280,17 @@ export interface FontSizePreset {
|
|
|
269
280
|
* Default font settings
|
|
270
281
|
*/
|
|
271
282
|
export declare const DEFAULT_FONT_SETTINGS: FontSettings;
|
|
283
|
+
/**
|
|
284
|
+
* Default requested font settings for a new diagram.
|
|
285
|
+
*
|
|
286
|
+
* This intentionally differs from the renderer's compatibility default.
|
|
287
|
+
*/
|
|
288
|
+
export declare const DEFAULT_DIAGRAM_FONT_SETTINGS: DiagramFontSettings;
|
|
289
|
+
/**
|
|
290
|
+
* Build a safe, complete requested-font view without mutating or
|
|
291
|
+
* canonicalizing the stored document value.
|
|
292
|
+
*/
|
|
293
|
+
export declare function normalizeDiagramFontSettings(value: unknown): DiagramFontSettings;
|
|
272
294
|
/**
|
|
273
295
|
* Font family presets
|
|
274
296
|
*/
|
|
@@ -338,6 +360,8 @@ export interface UserPreferences {
|
|
|
338
360
|
showControls: boolean;
|
|
339
361
|
/** Fit view on load */
|
|
340
362
|
fitViewOnLoad: boolean;
|
|
363
|
+
/** Highlight exact entity declarations and references in the DSL editor. */
|
|
364
|
+
editorEntityHighlighting?: boolean;
|
|
341
365
|
/** Auto-save interval in ms (0 = disabled) */
|
|
342
366
|
autoSaveInterval: number;
|
|
343
367
|
/** Remember last opened files */
|
|
@@ -352,6 +376,8 @@ export interface UserPreferences {
|
|
|
352
376
|
llmSaveApiKey: boolean;
|
|
353
377
|
/** Saved API key (only if llmSaveApiKey is true) */
|
|
354
378
|
llmSavedApiKey: string;
|
|
379
|
+
/** Editor generation retries, constrained to one through three. */
|
|
380
|
+
llmMaxRetries?: number;
|
|
355
381
|
/** Speech recognition mode for voice input (#49) */
|
|
356
382
|
speechRecognitionMode: SpeechRecognitionMode;
|
|
357
383
|
}
|
|
@@ -359,6 +385,7 @@ export interface UserPreferences {
|
|
|
359
385
|
* Default user preferences
|
|
360
386
|
*/
|
|
361
387
|
export declare const DEFAULT_USER_PREFERENCES: UserPreferences;
|
|
388
|
+
export declare function normalizeLlmMaxRetries(value: unknown): number;
|
|
362
389
|
/**
|
|
363
390
|
* Default layout settings
|
|
364
391
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/file/schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,sBAAsB,UAAU,CAAC;AAE9C;;GAEG;AACH,eAAO,MAAM,yBAAyB,oCAAqC,CAAC;AAE5E;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,2BAA2B;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,oCAAoC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qCAAqC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,4DAA4D;IAC5D,SAAS,EAAE,MAAM,CAAC;IAClB,uBAAuB;IACvB,SAAS,EAAE,eAAe,CAAC;IAC3B,sBAAsB;IACtB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,gDAAgD;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;IACvD,uCAAuC;IACvC,UAAU,CAAC,EAAE,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/file/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/file/schema.js
CHANGED
|
@@ -21,6 +21,69 @@ export const DEFAULT_FONT_SETTINGS = {
|
|
|
21
21
|
weight: 'normal',
|
|
22
22
|
lineHeight: 1.3,
|
|
23
23
|
};
|
|
24
|
+
/**
|
|
25
|
+
* Default requested font settings for a new diagram.
|
|
26
|
+
*
|
|
27
|
+
* This intentionally differs from the renderer's compatibility default.
|
|
28
|
+
*/
|
|
29
|
+
export const DEFAULT_DIAGRAM_FONT_SETTINGS = {
|
|
30
|
+
default: DEFAULT_FONT_SETTINGS,
|
|
31
|
+
};
|
|
32
|
+
function isRecord(value) {
|
|
33
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
34
|
+
}
|
|
35
|
+
function isFamily(value) {
|
|
36
|
+
return typeof value === 'string' && value.trim().length > 0;
|
|
37
|
+
}
|
|
38
|
+
function isPositiveFiniteNumber(value) {
|
|
39
|
+
return typeof value === 'number' && Number.isFinite(value) && value > 0;
|
|
40
|
+
}
|
|
41
|
+
function isFontWeight(value) {
|
|
42
|
+
return value === 'normal'
|
|
43
|
+
|| value === 'bold'
|
|
44
|
+
|| (typeof value === 'number' && Number.isFinite(value));
|
|
45
|
+
}
|
|
46
|
+
function normalizePartialFontSettings(value) {
|
|
47
|
+
if (!isRecord(value))
|
|
48
|
+
return {};
|
|
49
|
+
const normalized = {};
|
|
50
|
+
if (isFamily(value.family))
|
|
51
|
+
normalized.family = value.family;
|
|
52
|
+
if (isPositiveFiniteNumber(value.size))
|
|
53
|
+
normalized.size = value.size;
|
|
54
|
+
if (isFontWeight(value.weight))
|
|
55
|
+
normalized.weight = value.weight;
|
|
56
|
+
if (isPositiveFiniteNumber(value.lineHeight))
|
|
57
|
+
normalized.lineHeight = value.lineHeight;
|
|
58
|
+
return normalized;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Build a safe, complete requested-font view without mutating or
|
|
62
|
+
* canonicalizing the stored document value.
|
|
63
|
+
*/
|
|
64
|
+
export function normalizeDiagramFontSettings(value) {
|
|
65
|
+
const input = isRecord(value) ? value : {};
|
|
66
|
+
const normalizedDefault = normalizePartialFontSettings(input.default);
|
|
67
|
+
const result = {
|
|
68
|
+
default: {
|
|
69
|
+
...DEFAULT_FONT_SETTINGS,
|
|
70
|
+
...normalizedDefault,
|
|
71
|
+
},
|
|
72
|
+
};
|
|
73
|
+
if (!isRecord(input.symbolOverrides))
|
|
74
|
+
return result;
|
|
75
|
+
const symbolOverrides = {};
|
|
76
|
+
for (const [symbolId, override] of Object.entries(input.symbolOverrides)) {
|
|
77
|
+
const normalized = normalizePartialFontSettings(override);
|
|
78
|
+
if (Object.keys(normalized).length > 0) {
|
|
79
|
+
symbolOverrides[symbolId] = normalized;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
if (Object.keys(symbolOverrides).length > 0) {
|
|
83
|
+
result.symbolOverrides = symbolOverrides;
|
|
84
|
+
}
|
|
85
|
+
return result;
|
|
86
|
+
}
|
|
24
87
|
/**
|
|
25
88
|
* Font family presets
|
|
26
89
|
*/
|
|
@@ -82,6 +145,7 @@ export const DEFAULT_USER_PREFERENCES = {
|
|
|
82
145
|
showMinimap: true,
|
|
83
146
|
showControls: true,
|
|
84
147
|
fitViewOnLoad: true,
|
|
148
|
+
editorEntityHighlighting: false,
|
|
85
149
|
autoSaveInterval: 0,
|
|
86
150
|
recentFiles: [],
|
|
87
151
|
maxRecentFiles: 10,
|
|
@@ -89,8 +153,14 @@ export const DEFAULT_USER_PREFERENCES = {
|
|
|
89
153
|
llmModel: 'claude-sonnet-4-5-20250929',
|
|
90
154
|
llmSaveApiKey: false,
|
|
91
155
|
llmSavedApiKey: '',
|
|
156
|
+
llmMaxRetries: 2,
|
|
92
157
|
speechRecognitionMode: 'local',
|
|
93
158
|
};
|
|
159
|
+
export function normalizeLlmMaxRetries(value) {
|
|
160
|
+
if (typeof value !== 'number' || !Number.isFinite(value))
|
|
161
|
+
return 2;
|
|
162
|
+
return Math.min(3, Math.max(1, Math.floor(value)));
|
|
163
|
+
}
|
|
94
164
|
/**
|
|
95
165
|
* Default layout settings
|
|
96
166
|
*/
|
package/dist/file/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/file/schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,OAAO,CAAC;AAE9C;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/file/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../../src/file/serialize.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAiC,MAAM,aAAa,CAAC;AACvF,OAAO,KAAK,EACV,aAAa,EACb,qBAAqB,EACrB,gBAAgB,EAKjB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../../src/file/serialize.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAiC,MAAM,aAAa,CAAC;AACvF,OAAO,KAAK,EACV,aAAa,EACb,qBAAqB,EACrB,gBAAgB,EAKjB,MAAM,aAAa,CAAC;AAwBrB;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,aAAa,CAyC5E;AAyED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CACvB,KAAK,EAAE,SAAS,EAAE,EAClB,KAAK,EAAE,SAAS,EAAE,EAClB,OAAO,EAAE,gBAAgB,EACzB,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,GACnF,aAAa,CAkHf"}
|
package/dist/file/serialize.js
CHANGED
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Converts React Flow nodes/edges to CoralDocument format.
|
|
5
5
|
*/
|
|
6
|
-
import { CURRENT_SCHEMA_VERSION } from './schema.js';
|
|
6
|
+
import { CURRENT_SCHEMA_VERSION, DEFAULT_DIAGRAM_FONT_SETTINGS } from './schema.js';
|
|
7
|
+
import { dimensionsForGraphProjection } from '../editor/dimensions.js';
|
|
7
8
|
/**
|
|
8
9
|
* Default layout settings
|
|
9
10
|
*/
|
|
@@ -30,6 +31,9 @@ const DEFAULT_SETTINGS = {
|
|
|
30
31
|
*/
|
|
31
32
|
export function createDocument(options) {
|
|
32
33
|
const now = new Date().toISOString();
|
|
34
|
+
const font = options.settings?.font === undefined
|
|
35
|
+
? { default: { ...DEFAULT_DIAGRAM_FONT_SETTINGS.default } }
|
|
36
|
+
: options.settings.font;
|
|
33
37
|
const settings = {
|
|
34
38
|
...options.settings,
|
|
35
39
|
notation: options.settings?.notation ?? DEFAULT_SETTINGS.notation,
|
|
@@ -37,6 +41,7 @@ export function createDocument(options) {
|
|
|
37
41
|
...DEFAULT_LAYOUT_SETTINGS,
|
|
38
42
|
...options.settings?.layout,
|
|
39
43
|
},
|
|
44
|
+
font,
|
|
40
45
|
};
|
|
41
46
|
return {
|
|
42
47
|
schemaVersion: CURRENT_SCHEMA_VERSION,
|
|
@@ -53,7 +58,7 @@ export function createDocument(options) {
|
|
|
53
58
|
dslType: options.content?.dslType,
|
|
54
59
|
text: options.content?.text,
|
|
55
60
|
graphIR: options.content?.graphIR ?? {
|
|
56
|
-
version: '
|
|
61
|
+
version: '2.0.0',
|
|
57
62
|
id: 'untitled',
|
|
58
63
|
nodes: [],
|
|
59
64
|
edges: [],
|
|
@@ -69,20 +74,23 @@ export function createDocument(options) {
|
|
|
69
74
|
*/
|
|
70
75
|
function nodeToGraphNode(node) {
|
|
71
76
|
const canonical = node.data.canonical;
|
|
72
|
-
|
|
77
|
+
const graphNode = {
|
|
73
78
|
...canonical,
|
|
74
79
|
id: node.id,
|
|
75
80
|
type: node.data.nodeType || node.type || 'default',
|
|
76
81
|
label: node.data.label,
|
|
77
82
|
description: node.data.description,
|
|
78
83
|
properties: node.data.properties,
|
|
79
|
-
parent: node.parentId
|
|
84
|
+
parent: node.parentId,
|
|
80
85
|
position: { x: node.position.x, y: node.position.y },
|
|
81
86
|
...(node.data.pinned !== undefined ? { pinned: node.data.pinned } : {}),
|
|
82
|
-
dimensions: (typeof node.width === 'number' && typeof node.height === 'number')
|
|
83
|
-
? { width: node.width, height: node.height }
|
|
84
|
-
: canonical?.dimensions,
|
|
85
87
|
};
|
|
88
|
+
const dimensions = dimensionsForGraphProjection(node);
|
|
89
|
+
if (dimensions)
|
|
90
|
+
graphNode.dimensions = dimensions;
|
|
91
|
+
else
|
|
92
|
+
delete graphNode.dimensions;
|
|
93
|
+
return graphNode;
|
|
86
94
|
}
|
|
87
95
|
/**
|
|
88
96
|
* Convert a CoralEdge to a GraphEdge
|
|
@@ -94,7 +102,11 @@ function edgeToGraphEdge(edge) {
|
|
|
94
102
|
?? (edge.style?.strokeDasharray
|
|
95
103
|
? (String(edge.style.strokeDasharray).includes('2') ? 'dotted' : 'dashed')
|
|
96
104
|
: undefined);
|
|
97
|
-
|
|
105
|
+
const { lineStyle: _oldLineStyle, ...canonicalStyle } = edge.data?.canonical?.style ?? {};
|
|
106
|
+
const style = lineStyle || Object.keys(canonicalStyle).length > 0
|
|
107
|
+
? { ...canonicalStyle, ...(lineStyle ? { lineStyle } : {}) }
|
|
108
|
+
: undefined;
|
|
109
|
+
const graphEdge = {
|
|
98
110
|
...edge.data?.canonical,
|
|
99
111
|
id: edge.id,
|
|
100
112
|
source: edge.source,
|
|
@@ -104,11 +116,11 @@ function edgeToGraphEdge(edge) {
|
|
|
104
116
|
type: edge.data?.edgeType,
|
|
105
117
|
label,
|
|
106
118
|
properties: edge.data?.properties,
|
|
107
|
-
...(
|
|
108
|
-
? { style: { ...edge.data?.canonical?.style, ...(lineStyle ? { lineStyle } : {}) } }
|
|
109
|
-
: {}),
|
|
110
|
-
routingPoints: edge.data?.routingPoints,
|
|
119
|
+
...(style ? { style } : {}),
|
|
111
120
|
};
|
|
121
|
+
if (!style)
|
|
122
|
+
delete graphEdge.style;
|
|
123
|
+
return graphEdge;
|
|
112
124
|
}
|
|
113
125
|
/**
|
|
114
126
|
* Extract node positions from CoralNodes
|
|
@@ -158,11 +170,24 @@ export function serialize(nodes, edges, options, waypointMap) {
|
|
|
158
170
|
};
|
|
159
171
|
const graphIR = {
|
|
160
172
|
...options.graphIR,
|
|
161
|
-
version:
|
|
173
|
+
version: '2.0.0',
|
|
162
174
|
id: options.graphIR?.id ?? options.name.toLowerCase().replace(/\s+/g, '-'),
|
|
163
175
|
name: options.graphIR?.name ?? options.name,
|
|
164
|
-
|
|
165
|
-
|
|
176
|
+
// A supplied canonical graph owns authored Exact positions. React Flow
|
|
177
|
+
// coordinates are still persisted below as view state, but must not turn
|
|
178
|
+
// a released/computed position back into an authored constraint.
|
|
179
|
+
nodes: options.graphIR?.nodes.length ? options.graphIR.nodes : topLevel.map(attachChildren),
|
|
180
|
+
edges: options.graphIR?.edges.length
|
|
181
|
+
? options.graphIR.edges.map((edge) => ({
|
|
182
|
+
...edge,
|
|
183
|
+
...(edge.routeIntent ? { routeIntent: { waypoints: edge.routeIntent.waypoints.map((waypoint) => ({
|
|
184
|
+
...waypoint,
|
|
185
|
+
placement: waypoint.placement.kind === 'absolute'
|
|
186
|
+
? { ...waypoint.placement, position: { ...waypoint.placement.position } }
|
|
187
|
+
: { ...waypoint.placement, anchor: { ...waypoint.placement.anchor }, offset: { ...waypoint.placement.offset } },
|
|
188
|
+
})) } } : {}),
|
|
189
|
+
}))
|
|
190
|
+
: edges.map(edgeToGraphEdge),
|
|
166
191
|
};
|
|
167
192
|
const settings = {
|
|
168
193
|
...options.settings,
|
|
@@ -180,7 +205,27 @@ export function serialize(nodes, edges, options, waypointMap) {
|
|
|
180
205
|
if (waypoints.length > 0) {
|
|
181
206
|
const graphEdge = graphIR.edges.find((edge) => edge.id === edgeId);
|
|
182
207
|
if (graphEdge) {
|
|
183
|
-
|
|
208
|
+
const absoluteById = new Map(waypoints.map((waypoint) => [waypoint.id, waypoint]));
|
|
209
|
+
const merged = (graphEdge.routeIntent?.waypoints ?? []).flatMap((waypoint) => {
|
|
210
|
+
if (waypoint.placement.kind !== 'absolute')
|
|
211
|
+
return [waypoint];
|
|
212
|
+
const edited = absoluteById.get(waypoint.id);
|
|
213
|
+
if (!edited)
|
|
214
|
+
return [];
|
|
215
|
+
absoluteById.delete(waypoint.id);
|
|
216
|
+
return [{
|
|
217
|
+
id: edited.id,
|
|
218
|
+
placement: { kind: 'absolute', position: { x: edited.x, y: edited.y } },
|
|
219
|
+
}];
|
|
220
|
+
});
|
|
221
|
+
for (const waypoint of absoluteById.values())
|
|
222
|
+
merged.push({
|
|
223
|
+
id: waypoint.id,
|
|
224
|
+
placement: { kind: 'absolute', position: { x: waypoint.x, y: waypoint.y } },
|
|
225
|
+
});
|
|
226
|
+
graphEdge.routeIntent = {
|
|
227
|
+
waypoints: merged,
|
|
228
|
+
};
|
|
184
229
|
}
|
|
185
230
|
edgeRouting[edgeId] = {
|
|
186
231
|
bendPoints: waypoints.map((wp) => ({ x: wp.x, y: wp.y })),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serialize.js","sourceRoot":"","sources":["../../src/file/serialize.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAYH,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"serialize.js","sourceRoot":"","sources":["../../src/file/serialize.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
export { CoralEditor, useGraphIR, type CoralEditorProps } from './editor/index.js';
|
|
5
5
|
export { LayoutControls, type LayoutControlsProps } from './editor/index.js';
|
|
6
6
|
export { FileControls, type FileControlsProps } from './editor/index.js';
|
|
7
|
-
export { TextEditor, SplitEditor, useBidirectionalSync, type TextEditorProps, type SplitEditorProps, type SyntaxLanguage, type SplitLayout, type PrimaryPane, type SyncState, type SyncActions, type SyncOptions, type ParseFunction, type PrintFunction, type SyncParseResult, type SyncParseError, type ParseResult, type ParseError, type ChangeSource, } from './text-editor/index.js';
|
|
7
|
+
export { TextEditor, SplitEditor, useBidirectionalSync, type TextEditorProps, type SplitEditorProps, type SyntaxLanguage, type EditorTheme, type EditorSourcePosition, type EditorSourceRange, type EditorDiagnostic, type EditorDecoration, type EditorAnalysisOwner, type SplitLayout, type PrimaryPane, type SyncState, type SyncActions, type SyncOptions, type ParseFunction, type PrintFunction, type SyncParseResult, type SyncParseError, type ParseResult, type ParseError, type ChangeSource, } from './text-editor/index.js';
|
|
8
8
|
export { convertGraphToFlow, convertNode, convertEdge, flattenNodes, convertFlowToGraphNodes, convertFlowToGraphEdges, } from './editor/index.js';
|
|
9
|
-
export { ServiceNode, DatabaseNode, ExternalApiNode, ActorNode, ModuleNode, GroupNode, nodeTypes, ShapeRenderer, SymbolNode, type ShapeRendererProps, type SymbolNodeData, EditProvider, useEditContext, useIsEditing, type EditProviderProps, type OnLabelEditCallback, } from './components/index.js';
|
|
9
|
+
export { ServiceNode, DatabaseNode, ExternalApiNode, ActorNode, ModuleNode, GroupNode, nodeTypes, ShapeRenderer, SymbolNode, type ShapeRendererProps, type SymbolNodeData, DiagramFontFaces, type DiagramFontFacesProps, EditProvider, useEditContext, useIsEditing, type EditProviderProps, type OnLabelEditCallback, } from './components/index.js';
|
|
10
10
|
export { layoutGraph, layoutFlowNodes, layoutFlowNodesWithEdges, extractEdgeSections, getElk, type LayoutFlowResult, type ElkEdgeRouting, } from './layout/index.js';
|
|
11
11
|
export { useLayoutHistory, type PositionSnapshot, type UndoRedoResult, type UseLayoutHistoryOptions, type UseLayoutHistoryResult, } from './layout/index.js';
|
|
12
12
|
export { useAxisConstrain, type UseAxisConstrainResult, } from './layout/index.js';
|
|
@@ -15,10 +15,11 @@ export { useDiagramState, type ParsedGraph, type DiagramNode, type DiagramEdge,
|
|
|
15
15
|
export { shapeRegistry, getShape, getAllShapes, } from '@coral-viz/render';
|
|
16
16
|
export { symbolRegistry, getSymbol, getSymbolsByTag, getSymbolsForNotation, getAllSymbols, getAllLibraries, flowchartSymbols, bpmnSymbols, erdSymbols, codeSymbols, architectureSymbols, aimlSymbols, dataEngineeringSymbols, sketchSymbols, } from '@coral-viz/render';
|
|
17
17
|
export { notationRegistry, getNotation, getAllNotations, validateDiagram, flowchartNotation, bpmnNotation, erdNotation, codeNotation, architectureNotation, aimlNotation, dataEngineeringNotation, sketchNotation, } from '@coral-viz/render';
|
|
18
|
-
export { CURRENT_SCHEMA_VERSION, SUPPORTED_SCHEMA_VERSIONS, createDocument, serialize, deserialize, validateDocument, migrateDocument, needsMigration, getMigrationSteps, type CoralDocument, type DocumentMetadata, type DocumentContent, type DocumentSettings, type LayoutDirection, type LayoutSettings, type LayoutSpacing, type ViewState, type NodePosition, type DslType, type CreateDocumentOptions, type SerializeOptions, type DeserializeResult, type ValidationResult as FileValidationResult, type EdgeRouting, type LayoutAlgorithm, type LayoutPresetId, type LayoutPreset, type UserPreferences, type LLMProviderPreference, type SpeechRecognitionMode, type SettingsPanelState, DEFAULT_USER_PREFERENCES, DEFAULT_LAYOUT_SETTINGS, LAYOUT_PRESETS, getLayoutPreset, } from './file/index.js';
|
|
19
|
-
export { useSettings, type UseSettingsOptions, type UseSettingsResult, LayoutSettingsForm, type LayoutSettingsFormProps, SettingsPanel, type SettingsPanelProps, type SettingsPanelTheme, } from './settings/index.js';
|
|
18
|
+
export { CURRENT_SCHEMA_VERSION, SUPPORTED_SCHEMA_VERSIONS, createDocument, serialize, deserialize, validateDocument, migrateDocument, needsMigration, getMigrationSteps, type CoralDocument, type DocumentMetadata, type DocumentContent, type DocumentSettings, type LayoutDirection, type LayoutSettings, type LayoutSpacing, type ViewState, type NodePosition, type DslType, type CreateDocumentOptions, type SerializeOptions, type DeserializeResult, type ValidationResult as FileValidationResult, type FontSettings, type DiagramFontSettings, type FontFamilyPreset, type FontSizePreset, DEFAULT_FONT_SETTINGS, DEFAULT_DIAGRAM_FONT_SETTINGS, FONT_FAMILY_PRESETS, FONT_SIZE_PRESETS, getFontFamilyPreset, getFontSizePreset, normalizeDiagramFontSettings, type EdgeRouting, type LayoutAlgorithm, type LayoutPresetId, type LayoutPreset, type UserPreferences, type LLMProviderPreference, type SpeechRecognitionMode, type SettingsPanelState, DEFAULT_USER_PREFERENCES, normalizeLlmMaxRetries, DEFAULT_LAYOUT_SETTINGS, LAYOUT_PRESETS, getLayoutPreset, resolveNotationLayout, type LayoutProfileOverrides, type LayoutProfileDiagnostic, type ResolvedLayoutProfile, } from './file/index.js';
|
|
19
|
+
export { useSettings, type UseSettingsOptions, type UseSettingsResult, LayoutSettingsForm, type LayoutSettingsFormProps, SettingsPanel, type SettingsPanelProps, type SettingsPanelTheme, FontSettingsForm, type FontSettingsFormProps, } from './settings/index.js';
|
|
20
20
|
export { validateConnection, checkPortDirection, checkMaxConnections, getEdgeCompatibility, useEdgeCompatibility, IncompatibilityTooltip, CompatibilityEdge, getEdgeStyleForStatus, buildRoutedPath, type UseEdgeCompatibilityOptions, type UseEdgeCompatibilityResult, type IncompatibilityTooltipProps, type CompatibilityEdgeProps, type CompatibilityEdgeData, } from './compatibility/index.js';
|
|
21
21
|
export { NodePropertiesPanel, type NodePropertiesPanelProps, type PropertyChange, detectPropertyType, isEditableProperty, parsePropertyValue, extractPropertyFields, type PropertyType, type PropertyValue, type PropertyFieldMeta, } from './properties/index.js';
|
|
22
22
|
export { createWaypoint, addWaypointToEdge, removeWaypointFromEdge, moveWaypoint, insertWaypointAtPosition, routeWithWaypoints, useWaypointManager, type EdgeWaypoint, type RoutedPath, type UseWaypointManagerOptions, type UseWaypointManagerResult, } from './waypoints/index.js';
|
|
23
|
-
export type { GraphIR, GraphNode, GraphEdge, Position, Dimensions, EdgeStyle, LayoutOptions, CoralNode, CoralEdge, CoralNodeData, CoralEdgeData, CoralNodeProps, EditorState, EditorCallbacks, EditorConfig, PortAnchor, ShapeParameter, ShapeDefinition, SymbolPort, SymbolVariant, SymbolDefinition, SymbolLibrary, NotationEdgeStyle, ConnectionConstraints, ConnectionRule, ValidationRule, FlowPoint, NotationValidation, NotationDefinition, ShapeRegistry, SymbolRegistry, NotationRegistry, ValidationResult, PositionSource, PositionedNode, GraphDiff, PositionResolution, DiffableNode, DiffableGraph, IncompatibilityReason, ConnectionValidation, ConnectionInfo, NodeConnectionInfo, EdgeCompatibilityStatus, EdgeCompatibility, HandleDragState, ConnectionValidationContext, } from './types.js';
|
|
23
|
+
export type { GraphIR, GraphNode, GraphEdge, Position, Dimensions, EdgeStyle, LayoutOptions, CoralNode, CoralEdge, CoralNodeData, CoralEdgeData, FontAwareCoralNodeData, FontAwareCoralEdgeData, CoralNodeViewMetadata, CoralEdgeViewMetadata, DimensionSource, CoralNodeProps, EditorState, EditorCallbacks, EditorConfig, PortAnchor, ShapeParameter, ShapeDefinition, SymbolPort, SymbolVariant, SymbolDefinition, SymbolLibrary, NotationEdgeStyle, ConnectionConstraints, ConnectionRule, ValidationRule, FlowPoint, NotationValidation, NotationDefinition, ShapeRegistry, SymbolRegistry, NotationRegistry, ValidationResult, PositionSource, PositionedNode, GraphDiff, PositionResolution, DiffableNode, DiffableGraph, IncompatibilityReason, ConnectionValidation, ConnectionInfo, NodeConnectionInfo, EdgeCompatibilityStatus, EdgeCompatibility, HandleDragState, ConnectionValidationContext, } from './types.js';
|
|
24
|
+
export { CORAL_NODE_VIEW_METADATA, CORAL_EDGE_VIEW_METADATA, } from './types.js';
|
|
24
25
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGzE,OAAO,EACL,UAAU,EACV,WAAW,EACX,oBAAoB,EACpB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,cAAc,EAEnB,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,YAAY,GAClB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,WAAW,EACX,YAAY,EACZ,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,WAAW,EACX,YAAY,EACZ,eAAe,EACf,SAAS,EACT,UAAU,EACV,SAAS,EACT,SAAS,EAET,aAAa,EACb,UAAU,EACV,KAAK,kBAAkB,EACvB,KAAK,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGzE,OAAO,EACL,UAAU,EACV,WAAW,EACX,oBAAoB,EACpB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,cAAc,EAEnB,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,YAAY,GAClB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,WAAW,EACX,YAAY,EACZ,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,WAAW,EACX,YAAY,EACZ,eAAe,EACf,SAAS,EACT,UAAU,EACV,SAAS,EACT,SAAS,EAET,aAAa,EACb,UAAU,EACV,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,gBAAgB,EAChB,KAAK,qBAAqB,EAE1B,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,GACzB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,WAAW,EACX,eAAe,EACf,wBAAwB,EACxB,mBAAmB,EACnB,MAAM,EACN,KAAK,gBAAgB,EACrB,KAAK,cAAc,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,GAC5B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,gBAAgB,EAChB,KAAK,sBAAsB,GAC5B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,eAAe,EACf,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,GAC3B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,aAAa,EACb,QAAQ,EACR,YAAY,GACb,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,cAAc,EACd,SAAS,EACT,eAAe,EACf,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,WAAW,EACX,mBAAmB,EACnB,WAAW,EACX,sBAAsB,EACtB,aAAa,GACd,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,oBAAoB,EACpB,YAAY,EACZ,uBAAuB,EACvB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,cAAc,EACd,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,IAAI,oBAAoB,EAC7C,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,qBAAqB,EACrB,6BAA6B,EAC7B,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,4BAA4B,EAE5B,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACvB,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,GAC3B,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,WAAW,EACX,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,kBAAkB,EAClB,KAAK,uBAAuB,EAC5B,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,gBAAgB,EAChB,KAAK,qBAAqB,GAC3B,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,iBAAiB,EACjB,qBAAqB,EACrB,eAAe,EACf,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,GAC3B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,mBAAmB,EACnB,KAAK,wBAAwB,EAC7B,KAAK,cAAc,EAEnB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,iBAAiB,GACvB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,sBAAsB,EACtB,YAAY,EACZ,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,EAClB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,GAC9B,MAAM,sBAAsB,CAAC;AAG9B,YAAY,EACV,OAAO,EACP,SAAS,EACT,SAAS,EACT,QAAQ,EACR,UAAU,EACV,SAAS,EACT,aAAa,EACb,SAAS,EACT,SAAS,EACT,aAAa,EACb,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,eAAe,EACf,cAAc,EACd,WAAW,EACX,eAAe,EACf,YAAY,EAEZ,UAAU,EACV,cAAc,EACd,eAAe,EACf,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,EACd,cAAc,EACd,SAAS,EACT,kBAAkB,EAClB,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAEhB,cAAc,EACd,cAAc,EACd,SAAS,EACT,kBAAkB,EAClB,YAAY,EACZ,aAAa,EAEb,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,EACjB,eAAe,EACf,2BAA2B,GAC5B,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,YAAY,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -12,7 +12,7 @@ export { convertGraphToFlow, convertNode, convertEdge, flattenNodes, convertFlow
|
|
|
12
12
|
// Components
|
|
13
13
|
export { ServiceNode, DatabaseNode, ExternalApiNode, ActorNode, ModuleNode, GroupNode, nodeTypes,
|
|
14
14
|
// New symbol-aware components
|
|
15
|
-
ShapeRenderer, SymbolNode,
|
|
15
|
+
ShapeRenderer, SymbolNode, DiagramFontFaces,
|
|
16
16
|
// Edit context for inline label editing
|
|
17
17
|
EditProvider, useEditContext, useIsEditing, } from './components/index.js';
|
|
18
18
|
// Layout
|
|
@@ -28,9 +28,9 @@ export { shapeRegistry, getShape, getAllShapes, } from '@coral-viz/render';
|
|
|
28
28
|
export { symbolRegistry, getSymbol, getSymbolsByTag, getSymbolsForNotation, getAllSymbols, getAllLibraries, flowchartSymbols, bpmnSymbols, erdSymbols, codeSymbols, architectureSymbols, aimlSymbols, dataEngineeringSymbols, sketchSymbols, } from '@coral-viz/render';
|
|
29
29
|
export { notationRegistry, getNotation, getAllNotations, validateDiagram, flowchartNotation, bpmnNotation, erdNotation, codeNotation, architectureNotation, aimlNotation, dataEngineeringNotation, sketchNotation, } from '@coral-viz/render';
|
|
30
30
|
// File Format (CORAL-REQ-008)
|
|
31
|
-
export { CURRENT_SCHEMA_VERSION, SUPPORTED_SCHEMA_VERSIONS, createDocument, serialize, deserialize, validateDocument, migrateDocument, needsMigration, getMigrationSteps, DEFAULT_USER_PREFERENCES, DEFAULT_LAYOUT_SETTINGS, LAYOUT_PRESETS, getLayoutPreset, } from './file/index.js';
|
|
31
|
+
export { CURRENT_SCHEMA_VERSION, SUPPORTED_SCHEMA_VERSIONS, createDocument, serialize, deserialize, validateDocument, migrateDocument, needsMigration, getMigrationSteps, DEFAULT_FONT_SETTINGS, DEFAULT_DIAGRAM_FONT_SETTINGS, FONT_FAMILY_PRESETS, FONT_SIZE_PRESETS, getFontFamilyPreset, getFontSizePreset, normalizeDiagramFontSettings, DEFAULT_USER_PREFERENCES, normalizeLlmMaxRetries, DEFAULT_LAYOUT_SETTINGS, LAYOUT_PRESETS, getLayoutPreset, resolveNotationLayout, } from './file/index.js';
|
|
32
32
|
// Settings (CORAL-REQ-009)
|
|
33
|
-
export { useSettings, LayoutSettingsForm, SettingsPanel, } from './settings/index.js';
|
|
33
|
+
export { useSettings, LayoutSettingsForm, SettingsPanel, FontSettingsForm, } from './settings/index.js';
|
|
34
34
|
// Compatibility (CORAL-REQ-010)
|
|
35
35
|
export { validateConnection, checkPortDirection, checkMaxConnections, getEdgeCompatibility, useEdgeCompatibility, IncompatibilityTooltip, CompatibilityEdge, getEdgeStyleForStatus, buildRoutedPath, } from './compatibility/index.js';
|
|
36
36
|
// Properties Panel
|
|
@@ -39,4 +39,5 @@ export { NodePropertiesPanel,
|
|
|
39
39
|
detectPropertyType, isEditableProperty, parsePropertyValue, extractPropertyFields, } from './properties/index.js';
|
|
40
40
|
// Waypoints (CORAL-REQ-015)
|
|
41
41
|
export { createWaypoint, addWaypointToEdge, removeWaypointFromEdge, moveWaypoint, insertWaypointAtPosition, routeWithWaypoints, useWaypointManager, } from './waypoints/index.js';
|
|
42
|
+
export { CORAL_NODE_VIEW_METADATA, CORAL_EDGE_VIEW_METADATA, } from './types.js';
|
|
42
43
|
//# 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;;GAEG;AAEH,cAAc;AACd,OAAO,EAAE,WAAW,EAAE,UAAU,EAAyB,MAAM,mBAAmB,CAAC;AACnF,OAAO,EAAE,cAAc,EAA4B,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,YAAY,EAA0B,MAAM,mBAAmB,CAAC;AAEzE,cAAc;AACd,OAAO,EACL,UAAU,EACV,WAAW,EACX,oBAAoB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/layout/elk.d.ts
CHANGED
|
@@ -1,44 +1,14 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ELK Layout Integration
|
|
3
|
-
*
|
|
4
|
-
* Uses elkjs to compute automatic layouts for Graph-IR diagrams.
|
|
5
|
-
*/
|
|
1
|
+
/** Compatibility adapters over the shared headless ELK owner. */
|
|
6
2
|
import type { ElkExtendedEdge } from 'elkjs';
|
|
7
|
-
import type {
|
|
3
|
+
import type { CoralEdge, CoralNode, GraphIR, LayoutOptions, Position, SizingMode } from '../types.js';
|
|
8
4
|
declare const elk: import("elkjs").ELK;
|
|
9
|
-
/**
|
|
10
|
-
* Layout a Graph-IR structure using ELK
|
|
11
|
-
*
|
|
12
|
-
* @param graph - The Graph-IR to layout
|
|
13
|
-
* @returns Graph-IR with positions computed for all nodes
|
|
14
|
-
*/
|
|
15
5
|
export declare function layoutGraph(graph: GraphIR): Promise<GraphIR>;
|
|
16
|
-
/**
|
|
17
|
-
* Extended layout options including sizing (CORAL-REQ-011)
|
|
18
|
-
*/
|
|
19
6
|
export interface LayoutFlowOptions extends LayoutOptions {
|
|
20
|
-
/** Node sizing mode */
|
|
21
7
|
sizingMode?: SizingMode;
|
|
22
|
-
/** Font size for text measurement */
|
|
23
8
|
fontSize?: number;
|
|
24
|
-
/** Font family for text measurement */
|
|
25
9
|
fontFamily?: string;
|
|
26
10
|
}
|
|
27
|
-
/**
|
|
28
|
-
* Layout React Flow nodes using ELK
|
|
29
|
-
*
|
|
30
|
-
* This is a convenience function for use directly with React Flow state.
|
|
31
|
-
*
|
|
32
|
-
* @param nodes - React Flow nodes
|
|
33
|
-
* @param edges - React Flow edges
|
|
34
|
-
* @param options - Layout options (including sizing mode)
|
|
35
|
-
* @returns Nodes with positions updated
|
|
36
|
-
*/
|
|
37
11
|
export declare function layoutFlowNodes(nodes: CoralNode[], edges: CoralEdge[], options?: LayoutFlowOptions): Promise<CoralNode[]>;
|
|
38
|
-
/**
|
|
39
|
-
* Edge routing data extracted from ELK layout.
|
|
40
|
-
* Matches ELK's ElkEdgeSection shape for zero-adapter integration.
|
|
41
|
-
*/
|
|
42
12
|
export interface ElkEdgeRouting {
|
|
43
13
|
id: string;
|
|
44
14
|
startPoint: Position;
|
|
@@ -47,31 +17,12 @@ export interface ElkEdgeRouting {
|
|
|
47
17
|
sourceId: string;
|
|
48
18
|
targetId: string;
|
|
49
19
|
}
|
|
50
|
-
/**
|
|
51
|
-
* Result from layoutFlowNodes including edge routing data.
|
|
52
|
-
*/
|
|
53
20
|
export interface LayoutFlowResult {
|
|
54
21
|
nodes: CoralNode[];
|
|
55
22
|
edgeRouting: Map<string, ElkEdgeRouting>;
|
|
56
23
|
}
|
|
57
|
-
/**
|
|
58
|
-
* Extract edge routing sections from ELK layout result.
|
|
59
|
-
*
|
|
60
|
-
* ELK computes edge sections with start/end points and bend points.
|
|
61
|
-
* Previously Coral discarded this data — now we capture it.
|
|
62
|
-
*/
|
|
63
24
|
export declare function extractEdgeSections(elkEdges: ElkExtendedEdge[] | undefined): Map<string, ElkEdgeRouting>;
|
|
64
|
-
/**
|
|
65
|
-
* Layout React Flow nodes and extract edge routing from ELK.
|
|
66
|
-
*
|
|
67
|
-
* Same as layoutFlowNodes but also returns the edge routing data
|
|
68
|
-
* that ELK computes. Use this when you want to render edges through
|
|
69
|
-
* ELK's computed bend points instead of React Flow's smoothstep.
|
|
70
|
-
*/
|
|
71
25
|
export declare function layoutFlowNodesWithEdges(nodes: CoralNode[], edges: CoralEdge[], options?: LayoutFlowOptions): Promise<LayoutFlowResult>;
|
|
72
|
-
/**
|
|
73
|
-
* Get ELK instance for advanced usage
|
|
74
|
-
*/
|
|
75
26
|
export declare function getElk(): typeof elk;
|
|
76
27
|
export {};
|
|
77
28
|
//# sourceMappingURL=elk.d.ts.map
|
package/dist/layout/elk.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elk.d.ts","sourceRoot":"","sources":["../../src/layout/elk.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"elk.d.ts","sourceRoot":"","sources":["../../src/layout/elk.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAU7C,OAAO,KAAK,EACV,SAAS,EAAE,SAAS,EAAE,OAAO,EAAa,aAAa,EACvD,QAAQ,EAAE,UAAU,EACrB,MAAM,aAAa,CAAC;AAGrB,QAAA,MAAM,GAAG,EAAsC,OAAO,OAAO,EAAE,GAAG,CAAC;AA6BnE,wBAAsB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CASlE;AAED,MAAM,WAAW,iBAAkB,SAAQ,aAAa;IACtD,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA6DD,wBAAsB,eAAe,CACnC,KAAK,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAClE,OAAO,CAAC,SAAS,EAAE,CAAC,CAItB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,QAAQ,CAAC;IACrB,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,QAAQ,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CAC1C;AAED,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,eAAe,EAAE,GAAG,SAAS,GACtC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAe7B;AAqBD,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAClE,OAAO,CAAC,gBAAgB,CAAC,CAO3B;AAED,wBAAgB,MAAM,IAAI,OAAO,GAAG,CAEnC"}
|