@coral-viz/viz 0.2.4 → 0.2.6
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 +30 -7
- package/dist/compatibility/CompatibilityEdge.d.ts +12 -1
- package/dist/compatibility/CompatibilityEdge.d.ts.map +1 -1
- package/dist/compatibility/CompatibilityEdge.js +30 -5
- package/dist/compatibility/CompatibilityEdge.js.map +1 -1
- package/dist/compatibility/EndpointMarkerDefinitions.d.ts +10 -0
- package/dist/compatibility/EndpointMarkerDefinitions.d.ts.map +1 -0
- package/dist/compatibility/EndpointMarkerDefinitions.js +25 -0
- package/dist/compatibility/EndpointMarkerDefinitions.js.map +1 -0
- package/dist/compatibility/effectivePorts.d.ts +17 -0
- package/dist/compatibility/effectivePorts.d.ts.map +1 -0
- package/dist/compatibility/effectivePorts.js +31 -0
- package/dist/compatibility/effectivePorts.js.map +1 -0
- package/dist/compatibility/index.d.ts +1 -0
- package/dist/compatibility/index.d.ts.map +1 -1
- package/dist/compatibility/index.js +1 -0
- package/dist/compatibility/index.js.map +1 -1
- package/dist/compatibility/useEdgeCompatibility.d.ts.map +1 -1
- package/dist/compatibility/useEdgeCompatibility.js +10 -2
- package/dist/compatibility/useEdgeCompatibility.js.map +1 -1
- package/dist/compatibility/validateConnection.d.ts.map +1 -1
- package/dist/compatibility/validateConnection.js +22 -28
- package/dist/compatibility/validateConnection.js.map +1 -1
- package/dist/components/SequenceDiagram.d.ts +26 -0
- package/dist/components/SequenceDiagram.d.ts.map +1 -0
- package/dist/components/SequenceDiagram.js +68 -0
- package/dist/components/SequenceDiagram.js.map +1 -0
- package/dist/components/ShapeRenderer.d.ts +3 -1
- package/dist/components/ShapeRenderer.d.ts.map +1 -1
- package/dist/components/ShapeRenderer.js +5 -29
- package/dist/components/ShapeRenderer.js.map +1 -1
- package/dist/components/SymbolNode.d.ts +3 -0
- package/dist/components/SymbolNode.d.ts.map +1 -1
- package/dist/components/SymbolNode.js +61 -88
- 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.d.ts +1 -1
- package/dist/editor/CoralEditor.d.ts.map +1 -1
- package/dist/editor/CoralEditor.js +13 -4
- package/dist/editor/CoralEditor.js.map +1 -1
- package/dist/editor/FileControls.d.ts +16 -1
- package/dist/editor/FileControls.d.ts.map +1 -1
- package/dist/editor/FileControls.js +21 -6
- package/dist/editor/FileControls.js.map +1 -1
- package/dist/editor/converter.d.ts +7 -2
- package/dist/editor/converter.d.ts.map +1 -1
- package/dist/editor/converter.js +18 -20
- package/dist/editor/converter.js.map +1 -1
- package/dist/file/deserialize.d.ts +2 -1
- package/dist/file/deserialize.d.ts.map +1 -1
- package/dist/file/deserialize.js +4 -4
- 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/migrate.d.ts +18 -1
- package/dist/file/migrate.d.ts.map +1 -1
- package/dist/file/migrate.js +107 -6
- package/dist/file/migrate.js.map +1 -1
- package/dist/file/portMaterialization.d.ts +19 -0
- package/dist/file/portMaterialization.d.ts.map +1 -0
- package/dist/file/portMaterialization.js +105 -0
- package/dist/file/portMaterialization.js.map +1 -0
- package/dist/file/serialize.d.ts.map +1 -1
- package/dist/file/serialize.js +42 -6
- package/dist/file/serialize.js.map +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -5
- package/dist/index.js.map +1 -1
- package/dist/layout/elk.d.ts.map +1 -1
- package/dist/layout/elk.js +5 -31
- package/dist/layout/elk.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 +22 -6
- package/dist/layout/positionStability.js.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 +14 -3
- package/dist/layout/useLayoutHistory.js.map +1 -1
- package/dist/properties/NodePropertiesPanel.d.ts +6 -2
- package/dist/properties/NodePropertiesPanel.d.ts.map +1 -1
- package/dist/properties/NodePropertiesPanel.js +246 -28
- package/dist/properties/NodePropertiesPanel.js.map +1 -1
- package/dist/settings/useSettings.d.ts.map +1 -1
- package/dist/settings/useSettings.js +9 -2
- package/dist/settings/useSettings.js.map +1 -1
- package/dist/text-editor/TextEditor.d.ts +12 -0
- package/dist/text-editor/TextEditor.d.ts.map +1 -1
- package/dist/text-editor/TextEditor.js +52 -24
- package/dist/text-editor/TextEditor.js.map +1 -1
- package/dist/text-editor/hooks/useBidirectionalSync.d.ts +3 -2
- package/dist/text-editor/hooks/useBidirectionalSync.d.ts.map +1 -1
- package/dist/text-editor/hooks/useBidirectionalSync.js.map +1 -1
- package/dist/types.d.ts +4 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +12 -11
|
@@ -6,7 +6,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
6
6
|
* Shows node info (ID, type), basic properties (label, description),
|
|
7
7
|
* and custom properties with type-appropriate input controls.
|
|
8
8
|
*/
|
|
9
|
-
import { useState, useCallback, useMemo } from 'react';
|
|
9
|
+
import { useState, useCallback, useEffect, useMemo, useRef } from 'react';
|
|
10
|
+
import { formatUmlMember, parseCoralUmlMember, } from '@coral-viz/language';
|
|
10
11
|
import { extractPropertyFields, } from './propertyUtils.js';
|
|
11
12
|
// ============================================================================
|
|
12
13
|
// Styles
|
|
@@ -41,6 +42,38 @@ const formGroupStyles = {
|
|
|
41
42
|
};
|
|
42
43
|
function PropertyInput({ meta, onChange, disabled }) {
|
|
43
44
|
const { type, value, isEditable } = meta;
|
|
45
|
+
const [draft, setDraft] = useState(String(value ?? ''));
|
|
46
|
+
const skipBlur = useRef(false);
|
|
47
|
+
useEffect(() => setDraft(String(value ?? '')), [value]);
|
|
48
|
+
const commitDraft = () => {
|
|
49
|
+
if (skipBlur.current) {
|
|
50
|
+
skipBlur.current = false;
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
if (type === 'number') {
|
|
54
|
+
const parsed = Number(draft);
|
|
55
|
+
if (draft.trim() === '' || !Number.isFinite(parsed)) {
|
|
56
|
+
setDraft(String(value ?? ''));
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
if (parsed !== value)
|
|
60
|
+
onChange(parsed);
|
|
61
|
+
}
|
|
62
|
+
else if (draft !== String(value ?? ''))
|
|
63
|
+
onChange(draft);
|
|
64
|
+
};
|
|
65
|
+
const handleDraftKey = (event) => {
|
|
66
|
+
if (event.key === 'Enter') {
|
|
67
|
+
commitDraft();
|
|
68
|
+
skipBlur.current = true;
|
|
69
|
+
event.currentTarget.blur();
|
|
70
|
+
}
|
|
71
|
+
else if (event.key === 'Escape') {
|
|
72
|
+
skipBlur.current = true;
|
|
73
|
+
setDraft(String(value ?? ''));
|
|
74
|
+
event.currentTarget.blur();
|
|
75
|
+
}
|
|
76
|
+
};
|
|
44
77
|
// Non-editable types show as read-only
|
|
45
78
|
if (!isEditable) {
|
|
46
79
|
return (_jsx("div", { style: {
|
|
@@ -54,49 +87,191 @@ function PropertyInput({ meta, onChange, disabled }) {
|
|
|
54
87
|
}
|
|
55
88
|
// Boolean: checkbox
|
|
56
89
|
if (type === 'boolean') {
|
|
57
|
-
return (_jsx("input", { type: "checkbox", checked: Boolean(value), onChange: (e) => onChange(e.target.checked), disabled: disabled }));
|
|
90
|
+
return (_jsx("input", { type: "checkbox", "aria-label": `Property ${meta.key}`, checked: Boolean(value), onChange: (e) => onChange(e.target.checked), disabled: disabled }));
|
|
58
91
|
}
|
|
59
92
|
// Number: number input
|
|
60
93
|
if (type === 'number') {
|
|
61
|
-
return (_jsx("input", { type: "number", value:
|
|
62
|
-
const parsed = parseFloat(e.target.value);
|
|
63
|
-
onChange(isNaN(parsed) ? 0 : parsed);
|
|
64
|
-
}, disabled: disabled, style: inputStyles }));
|
|
94
|
+
return (_jsx("input", { type: "number", "aria-label": `Property ${meta.key}`, value: draft, onChange: (e) => setDraft(e.target.value), onBlur: commitDraft, onKeyDown: handleDraftKey, disabled: disabled, style: inputStyles }));
|
|
65
95
|
}
|
|
66
96
|
// String (default): text input
|
|
67
|
-
return (_jsx("input", { type: "text",
|
|
97
|
+
return (_jsx("input", { type: "text", "aria-label": `Property ${meta.key}`, value: draft, onChange: (e) => setDraft(e.target.value), onBlur: commitDraft, onKeyDown: handleDraftKey, disabled: disabled, style: inputStyles }));
|
|
98
|
+
}
|
|
99
|
+
function ClassifierMemberInput({ member, compartment, ordinal, disabled, onCommit, }) {
|
|
100
|
+
const canonical = useMemo(() => formatUmlMember(member, `${member.kind}-${ordinal}`), [member, ordinal]);
|
|
101
|
+
const [draft, setDraft] = useState(canonical);
|
|
102
|
+
const [error, setError] = useState();
|
|
103
|
+
const skipBlur = useRef(false);
|
|
104
|
+
useEffect(() => { setDraft(canonical); setError(undefined); }, [canonical]);
|
|
105
|
+
const commit = () => {
|
|
106
|
+
if (skipBlur.current) {
|
|
107
|
+
skipBlur.current = false;
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
const parsed = parseCoralUmlMember(draft.trim(), compartment, ordinal);
|
|
111
|
+
if (!parsed.value) {
|
|
112
|
+
setError(parsed.error ?? 'Invalid UML member');
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
const conflict = onCommit(parsed.value);
|
|
116
|
+
if (conflict) {
|
|
117
|
+
setError(conflict);
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
setError(undefined);
|
|
121
|
+
};
|
|
122
|
+
return (_jsxs("div", { style: { flex: 1 }, children: [_jsx("input", { type: "text", "aria-label": `${compartment} ${ordinal} member`, value: draft, onChange: (event) => { setDraft(event.target.value); setError(undefined); }, onBlur: commit, onKeyDown: (event) => {
|
|
123
|
+
if (event.key === 'Enter')
|
|
124
|
+
event.currentTarget.blur();
|
|
125
|
+
if (event.key === 'Escape') {
|
|
126
|
+
skipBlur.current = true;
|
|
127
|
+
setDraft(canonical);
|
|
128
|
+
setError(undefined);
|
|
129
|
+
event.currentTarget.blur();
|
|
130
|
+
}
|
|
131
|
+
}, "aria-invalid": error ? true : undefined, disabled: disabled, style: inputStyles }), error && _jsx("div", { role: "alert", style: { color: '#b91c1c', fontSize: '11px' }, children: error })] }));
|
|
68
132
|
}
|
|
69
133
|
// ============================================================================
|
|
70
134
|
// NodePropertiesPanel Component
|
|
71
135
|
// ============================================================================
|
|
72
|
-
export function NodePropertiesPanel({ selectedNode, onPropertyChange, onAddProperty, onRemoveProperty, disabled = false, width = 320, showNodeId = true, showNodeType = true, allowAddProperties = true, allowRemoveProperties = true, }) {
|
|
136
|
+
export function NodePropertiesPanel({ selectedNode, onPropertyChange, onAddProperty, onRemoveProperty, onEditSessionStart, onEditSessionEnd, onEditSessionCancel, disabled = false, width = 320, showNodeId = true, showNodeType = true, allowAddProperties = true, allowRemoveProperties = true, }) {
|
|
73
137
|
const [newPropertyKey, setNewPropertyKey] = useState('');
|
|
74
138
|
const [newPropertyValue, setNewPropertyValue] = useState('');
|
|
75
139
|
const [newPropertyType, setNewPropertyType] = useState('string');
|
|
140
|
+
const [labelDraft, setLabelDraft] = useState(selectedNode?.data.label ?? '');
|
|
141
|
+
const [labelError, setLabelError] = useState();
|
|
142
|
+
const [descriptionDraft, setDescriptionDraft] = useState(selectedNode?.data.description ?? '');
|
|
143
|
+
const cancelledBlur = useRef(null);
|
|
144
|
+
useEffect(() => {
|
|
145
|
+
setLabelDraft(selectedNode?.data.label ?? '');
|
|
146
|
+
setLabelError(undefined);
|
|
147
|
+
setDescriptionDraft(selectedNode?.data.description ?? '');
|
|
148
|
+
}, [selectedNode?.id, selectedNode?.data.label, selectedNode?.data.description]);
|
|
76
149
|
// Extract custom properties
|
|
77
150
|
const customProperties = useMemo(() => extractPropertyFields(selectedNode?.data?.properties), [selectedNode?.data?.properties]);
|
|
78
|
-
|
|
79
|
-
const
|
|
80
|
-
if (!selectedNode)
|
|
151
|
+
const classifier = selectedNode?.data.canonical?.classifier;
|
|
152
|
+
const updateClassifier = useCallback((next) => {
|
|
153
|
+
if (!selectedNode || !classifier)
|
|
81
154
|
return;
|
|
82
155
|
onPropertyChange({
|
|
83
156
|
nodeId: selectedNode.id,
|
|
84
|
-
field: '
|
|
85
|
-
oldValue:
|
|
86
|
-
newValue:
|
|
157
|
+
field: 'classifier',
|
|
158
|
+
oldValue: classifier,
|
|
159
|
+
newValue: next,
|
|
87
160
|
});
|
|
88
|
-
}, [
|
|
161
|
+
}, [classifier, onPropertyChange, selectedNode]);
|
|
162
|
+
const changeClassifierKind = useCallback((kind) => {
|
|
163
|
+
if (!classifier || kind === classifier.kind)
|
|
164
|
+
return;
|
|
165
|
+
const incompatible = classifier.compartments.some((part) => kind === 'enum'
|
|
166
|
+
? part.kind === 'attributes'
|
|
167
|
+
: part.kind === 'literals')
|
|
168
|
+
|| kind === 'interface' && Boolean(classifier.modifiers?.includes('static'))
|
|
169
|
+
|| kind === 'enum' && Boolean(classifier.modifiers?.length);
|
|
170
|
+
if (incompatible)
|
|
171
|
+
return;
|
|
172
|
+
const members = classifier.compartments.filter((part) => part.kind !== 'name');
|
|
173
|
+
updateClassifier({
|
|
174
|
+
...classifier,
|
|
175
|
+
kind,
|
|
176
|
+
compartments: [
|
|
177
|
+
{ id: 'name', kind: 'name' },
|
|
178
|
+
...members,
|
|
179
|
+
...(kind === 'enum' && !members.some((part) => part.kind === 'literals')
|
|
180
|
+
? [{ id: 'literals', kind: 'literals', items: [] }]
|
|
181
|
+
: !members.length ? [{ id: 'attributes', kind: 'attributes', items: [] }] : []),
|
|
182
|
+
],
|
|
183
|
+
});
|
|
184
|
+
}, [classifier, updateClassifier]);
|
|
185
|
+
const changeClassifierModifier = useCallback((modifier, checked) => {
|
|
186
|
+
if (!classifier)
|
|
187
|
+
return;
|
|
188
|
+
const modifiers = (classifier.modifiers ?? []).filter((value) => value !== modifier);
|
|
189
|
+
if (checked)
|
|
190
|
+
modifiers.push(modifier);
|
|
191
|
+
modifiers.sort((left, right) => ['abstract', 'static'].indexOf(left) - ['abstract', 'static'].indexOf(right));
|
|
192
|
+
updateClassifier({ ...classifier, ...(modifiers.length ? { modifiers } : { modifiers: undefined }) });
|
|
193
|
+
}, [classifier, updateClassifier]);
|
|
194
|
+
const replaceCompartment = useCallback((next) => {
|
|
195
|
+
if (!classifier)
|
|
196
|
+
return;
|
|
197
|
+
updateClassifier({
|
|
198
|
+
...classifier,
|
|
199
|
+
compartments: classifier.compartments.map((part) => part.id === next.id ? next : part),
|
|
200
|
+
});
|
|
201
|
+
}, [classifier, updateClassifier]);
|
|
202
|
+
const replaceClassifierMember = useCallback((part, index, member) => {
|
|
203
|
+
if (!classifier)
|
|
204
|
+
return 'No classifier is selected';
|
|
205
|
+
const collision = classifier.compartments.some((candidate) => candidate.id === member.id
|
|
206
|
+
|| ('items' in candidate && candidate.items.some((item, candidateIndex) => item.id === member.id && !(candidate.id === part.id && candidateIndex === index))));
|
|
207
|
+
if (!member.id || collision)
|
|
208
|
+
return member.id
|
|
209
|
+
? `Classifier identity "${member.id}" is already used`
|
|
210
|
+
: 'Classifier member id must not be empty';
|
|
211
|
+
replaceCompartment({
|
|
212
|
+
...part,
|
|
213
|
+
items: part.items.map((candidate, itemIndex) => itemIndex === index ? member : candidate),
|
|
214
|
+
});
|
|
215
|
+
return undefined;
|
|
216
|
+
}, [classifier, replaceCompartment]);
|
|
217
|
+
const addClassifierMember = useCallback((kind) => {
|
|
218
|
+
if (!classifier)
|
|
219
|
+
return;
|
|
220
|
+
const existing = classifier.compartments.find((part) => part.kind === kind);
|
|
221
|
+
const prefix = kind === 'attributes' ? 'attribute' : kind === 'operations' ? 'operation' : 'literal';
|
|
222
|
+
const used = new Set(classifier.compartments.flatMap((part) => [
|
|
223
|
+
part.id, ...('items' in part ? part.items.map((item) => item.id) : []),
|
|
224
|
+
]));
|
|
225
|
+
let ordinal = 1;
|
|
226
|
+
while (used.has(`${prefix}-${ordinal}`))
|
|
227
|
+
ordinal++;
|
|
228
|
+
const item = kind === 'attributes'
|
|
229
|
+
? { id: `attribute-${ordinal}`, kind: 'attribute', name: `attribute${ordinal}` }
|
|
230
|
+
: kind === 'operations'
|
|
231
|
+
? { id: `operation-${ordinal}`, kind: 'operation', name: `operation${ordinal}`, parameters: [] }
|
|
232
|
+
: { id: `literal-${ordinal}`, kind: 'literal', name: `VALUE_${ordinal}` };
|
|
233
|
+
if (existing && 'items' in existing) {
|
|
234
|
+
replaceCompartment({ ...existing, items: [...existing.items, item] });
|
|
235
|
+
return;
|
|
236
|
+
}
|
|
237
|
+
updateClassifier({
|
|
238
|
+
...classifier,
|
|
239
|
+
compartments: [...classifier.compartments, { id: kind, kind, items: [item] }],
|
|
240
|
+
});
|
|
241
|
+
}, [classifier, replaceCompartment, updateClassifier]);
|
|
242
|
+
// Handle label change
|
|
243
|
+
const handleLabelChange = useCallback((e) => {
|
|
244
|
+
setLabelDraft(e.target.value);
|
|
245
|
+
setLabelError(undefined);
|
|
246
|
+
}, []);
|
|
247
|
+
const commitLabel = useCallback(() => {
|
|
248
|
+
if (!selectedNode || cancelledBlur.current === 'label') {
|
|
249
|
+
cancelledBlur.current = null;
|
|
250
|
+
return;
|
|
251
|
+
}
|
|
252
|
+
if (classifier && !labelDraft.trim()) {
|
|
253
|
+
setLabelError('UML classifier names must not be empty');
|
|
254
|
+
return;
|
|
255
|
+
}
|
|
256
|
+
if (labelDraft !== selectedNode.data.label)
|
|
257
|
+
onPropertyChange({
|
|
258
|
+
nodeId: selectedNode.id, field: 'label', oldValue: selectedNode.data.label, newValue: labelDraft,
|
|
259
|
+
});
|
|
260
|
+
}, [classifier, labelDraft, onPropertyChange, selectedNode]);
|
|
89
261
|
// Handle description change
|
|
90
262
|
const handleDescriptionChange = useCallback((e) => {
|
|
91
|
-
|
|
263
|
+
setDescriptionDraft(e.target.value);
|
|
264
|
+
}, []);
|
|
265
|
+
const commitDescription = useCallback(() => {
|
|
266
|
+
if (!selectedNode || cancelledBlur.current === 'description') {
|
|
267
|
+
cancelledBlur.current = null;
|
|
92
268
|
return;
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
}, [selectedNode, onPropertyChange]);
|
|
269
|
+
}
|
|
270
|
+
if (descriptionDraft !== (selectedNode.data.description ?? ''))
|
|
271
|
+
onPropertyChange({
|
|
272
|
+
nodeId: selectedNode.id, field: 'description', oldValue: selectedNode.data.description, newValue: descriptionDraft,
|
|
273
|
+
});
|
|
274
|
+
}, [descriptionDraft, onPropertyChange, selectedNode]);
|
|
100
275
|
// Handle custom property change
|
|
101
276
|
const handlePropertyValueChange = useCallback((key, oldValue, newValue) => {
|
|
102
277
|
if (!selectedNode)
|
|
@@ -154,11 +329,49 @@ export function NodePropertiesPanel({ selectedNode, onPropertyChange, onAddPrope
|
|
|
154
329
|
borderBottom: '1px solid #e0e0e0',
|
|
155
330
|
fontWeight: 600,
|
|
156
331
|
fontSize: '14px',
|
|
157
|
-
}, children: "Node Properties" }), _jsxs("div", { style: { padding: '12px', maxHeight: '500px', overflowY: 'auto' }, children: [_jsx("div", { style: sectionHeaderStyles, children: "Node Info" }), showNodeId && (_jsxs("div", { style: { ...formGroupStyles, display: 'flex', gap: '8px' }, children: [_jsx("span", { style: { ...labelStyles, width: '50px', marginBottom: 0 }, children: "ID:" }), _jsx("span", { style: { fontSize: '12px', color: '#666', fontFamily: 'monospace' }, children: selectedNode.id })] })), showNodeType && (_jsxs("div", { style: { ...formGroupStyles, display: 'flex', gap: '8px' }, children: [_jsx("span", { style: { ...labelStyles, width: '50px', marginBottom: 0 }, children: "Type:" }), _jsx("span", { style: { fontSize: '12px', color: '#666' }, children: selectedNode.data.nodeType })] })), _jsx("div", { style: sectionHeaderStyles, children: "Basic Properties" }), _jsxs("div", { style: formGroupStyles, children: [_jsx("label", { style: labelStyles, children: "Label" }), _jsx("input", { type: "text",
|
|
332
|
+
}, children: "Node Properties" }), _jsxs("div", { style: { padding: '12px', maxHeight: '500px', overflowY: 'auto' }, children: [_jsx("div", { style: sectionHeaderStyles, children: "Node Info" }), showNodeId && (_jsxs("div", { style: { ...formGroupStyles, display: 'flex', gap: '8px' }, children: [_jsx("span", { style: { ...labelStyles, width: '50px', marginBottom: 0 }, children: "ID:" }), _jsx("span", { style: { fontSize: '12px', color: '#666', fontFamily: 'monospace' }, children: selectedNode.id })] })), showNodeType && (_jsxs("div", { style: { ...formGroupStyles, display: 'flex', gap: '8px' }, children: [_jsx("span", { style: { ...labelStyles, width: '50px', marginBottom: 0 }, children: "Type:" }), _jsx("span", { style: { fontSize: '12px', color: '#666' }, children: selectedNode.data.nodeType })] })), _jsx("div", { style: sectionHeaderStyles, children: "Basic Properties" }), _jsxs("div", { style: formGroupStyles, children: [_jsx("label", { style: labelStyles, children: "Label" }), _jsx("input", { type: "text", "aria-label": "Node label", value: labelDraft, onChange: handleLabelChange, onFocus: () => onEditSessionStart?.('label'), onBlur: () => { commitLabel(); onEditSessionEnd?.('label'); }, onKeyDown: (event) => {
|
|
333
|
+
if (event.key === 'Enter') {
|
|
334
|
+
commitLabel();
|
|
335
|
+
cancelledBlur.current = 'label';
|
|
336
|
+
onEditSessionEnd?.('label');
|
|
337
|
+
event.currentTarget.blur();
|
|
338
|
+
}
|
|
339
|
+
else if (event.key === 'Escape') {
|
|
340
|
+
cancelledBlur.current = 'label';
|
|
341
|
+
setLabelDraft(selectedNode.data.label);
|
|
342
|
+
onEditSessionCancel?.('label');
|
|
343
|
+
event.currentTarget.blur();
|
|
344
|
+
}
|
|
345
|
+
}, disabled: disabled, "aria-invalid": labelError ? true : undefined, style: inputStyles }), labelError && _jsx("div", { role: "alert", style: { color: '#b91c1c', fontSize: '11px' }, children: labelError })] }), _jsxs("div", { style: formGroupStyles, children: [_jsx("label", { style: labelStyles, children: "Description" }), _jsx("textarea", { "aria-label": "Node description", value: descriptionDraft, onChange: handleDescriptionChange, onFocus: () => onEditSessionStart?.('description'), onBlur: () => { commitDescription(); onEditSessionEnd?.('description'); }, onKeyDown: (event) => {
|
|
346
|
+
if (event.key === 'Escape') {
|
|
347
|
+
cancelledBlur.current = 'description';
|
|
348
|
+
setDescriptionDraft(selectedNode.data.description ?? '');
|
|
349
|
+
onEditSessionCancel?.('description');
|
|
350
|
+
event.currentTarget.blur();
|
|
351
|
+
}
|
|
352
|
+
}, disabled: disabled, placeholder: "Optional description...", rows: 3, style: {
|
|
158
353
|
...inputStyles,
|
|
159
354
|
resize: 'vertical',
|
|
160
355
|
minHeight: '60px',
|
|
161
|
-
} })] }), _jsx("div", { style: sectionHeaderStyles, children: "
|
|
356
|
+
} })] }), classifier && (_jsxs("div", { "data-coral-classifier-editor": true, children: [_jsx("div", { style: sectionHeaderStyles, children: "UML Classifier" }), _jsxs("div", { style: formGroupStyles, children: [_jsx("label", { style: labelStyles, children: "Kind" }), _jsx("select", { "aria-label": "Classifier kind", value: classifier.kind, onChange: (event) => changeClassifierKind(event.target.value), disabled: disabled, style: inputStyles, children: ['class', 'interface', 'enum'].map((kind) => {
|
|
357
|
+
const incompatible = classifier.compartments.some((part) => kind === 'enum'
|
|
358
|
+
? part.kind === 'attributes'
|
|
359
|
+
: part.kind === 'literals')
|
|
360
|
+
|| kind === 'interface' && Boolean(classifier.modifiers?.includes('static'))
|
|
361
|
+
|| kind === 'enum' && Boolean(classifier.modifiers?.length);
|
|
362
|
+
return _jsx("option", { value: kind, disabled: incompatible, children: kind }, kind);
|
|
363
|
+
}) }), _jsx("div", { style: { color: '#666', fontSize: '11px' }, children: "Kind choices that would discard compartments or modifiers are disabled." })] }), _jsx("div", { style: { ...formGroupStyles, display: 'flex', gap: '12px' }, children: ['abstract', 'static'].map((modifier) => (_jsxs("label", { style: { ...labelStyles, display: 'flex', gap: '4px' }, children: [_jsx("input", { type: "checkbox", "aria-label": `Classifier ${modifier}`, checked: classifier.modifiers?.includes(modifier) ?? false, onChange: (event) => changeClassifierModifier(modifier, event.target.checked), disabled: disabled || classifier.kind === 'enum'
|
|
364
|
+
|| (modifier === 'static' && classifier.kind === 'interface') }), modifier] }, modifier))) }), classifier.compartments.filter((part) => part.kind !== 'name').map((part) => (_jsxs("div", { style: formGroupStyles, children: [_jsx("label", { style: labelStyles, children: part.kind }), part.items.map((item, index) => (_jsxs("div", { style: { display: 'flex', gap: '4px', marginBottom: '4px' }, children: [_jsx(ClassifierMemberInput, { member: item, compartment: part.kind, ordinal: index + 1, disabled: disabled, onCommit: (member) => replaceClassifierMember(part, index, member) }), _jsx("button", { type: "button", "aria-label": `Move ${item.name} up`, disabled: disabled || index === 0, onClick: () => {
|
|
365
|
+
const items = [...part.items];
|
|
366
|
+
[items[index - 1], items[index]] = [items[index], items[index - 1]];
|
|
367
|
+
replaceCompartment({ ...part, items });
|
|
368
|
+
}, children: "\u2191" }), _jsx("button", { type: "button", "aria-label": `Move ${item.name} down`, disabled: disabled || index === part.items.length - 1, onClick: () => {
|
|
369
|
+
const items = [...part.items];
|
|
370
|
+
[items[index], items[index + 1]] = [items[index + 1], items[index]];
|
|
371
|
+
replaceCompartment({ ...part, items });
|
|
372
|
+
}, children: "\u2193" }), _jsx("button", { type: "button", "aria-label": `Remove ${item.name}`, disabled: disabled, onClick: () => replaceCompartment({
|
|
373
|
+
...part, items: part.items.filter((_, itemIndex) => itemIndex !== index),
|
|
374
|
+
}), children: "\u00D7" })] }, item.id))), _jsxs("button", { type: "button", disabled: disabled, onClick: () => addClassifierMember(part.kind), children: ["Add ", part.kind === 'literals' ? 'literal' : part.kind === 'operations' ? 'operation' : 'attribute'] })] }, part.id))), !classifier.compartments.some((part) => part.kind === 'operations') && (_jsx("button", { type: "button", disabled: disabled, onClick: () => addClassifierMember('operations'), children: "Add operation" })), classifier.kind !== 'enum' && !classifier.compartments.some((part) => part.kind === 'attributes') && (_jsx("button", { type: "button", disabled: disabled, onClick: () => addClassifierMember('attributes'), children: "Add attribute" }))] })), _jsx("div", { style: sectionHeaderStyles, children: "Custom Properties" }), customProperties.length === 0 ? (_jsx("div", { style: {
|
|
162
375
|
fontSize: '12px',
|
|
163
376
|
color: '#999',
|
|
164
377
|
fontStyle: 'italic',
|
|
@@ -173,19 +386,24 @@ export function NodePropertiesPanel({ selectedNode, onPropertyChange, onAddPrope
|
|
|
173
386
|
fontWeight: 500,
|
|
174
387
|
minWidth: '80px',
|
|
175
388
|
color: '#555',
|
|
176
|
-
}, children: prop.key }), _jsx("div", { style: { flex: 1 }, children: _jsx(
|
|
389
|
+
}, children: prop.key }), _jsx("div", { style: { flex: 1 }, children: _jsx("div", { onFocusCapture: () => onEditSessionStart?.(`property:${prop.key}`), onBlurCapture: () => onEditSessionEnd?.(`property:${prop.key}`), onKeyDown: (event) => {
|
|
390
|
+
if (event.key === 'Enter')
|
|
391
|
+
onEditSessionEnd?.(`property:${prop.key}`);
|
|
392
|
+
else if (event.key === 'Escape')
|
|
393
|
+
onEditSessionCancel?.(`property:${prop.key}`);
|
|
394
|
+
}, children: _jsx(PropertyInput, { meta: prop, onChange: (newValue) => handlePropertyValueChange(prop.key, prop.value, newValue), disabled: disabled }) }) }), allowRemoveProperties && onRemoveProperty && (_jsx("button", { type: "button", onClick: () => onRemoveProperty(selectedNode.id, prop.key), disabled: disabled, style: {
|
|
177
395
|
padding: '4px 8px',
|
|
178
396
|
border: 'none',
|
|
179
397
|
background: 'transparent',
|
|
180
398
|
color: '#d32f2f',
|
|
181
399
|
cursor: disabled ? 'default' : 'pointer',
|
|
182
400
|
fontSize: '14px',
|
|
183
|
-
}, title: "Remove property", children: "\u00D7" }))] }, prop.key))) })), allowAddProperties && onAddProperty && (_jsxs("div", { style: {
|
|
401
|
+
}, title: "Remove property", "aria-label": `Remove property ${prop.key}`, children: "\u00D7" }))] }, prop.key))) })), allowAddProperties && onAddProperty && (_jsxs("div", { style: {
|
|
184
402
|
padding: '12px',
|
|
185
403
|
backgroundColor: '#f5f5f5',
|
|
186
404
|
borderRadius: '4px',
|
|
187
405
|
marginTop: '8px',
|
|
188
|
-
}, children: [_jsxs("div", { style: { display: 'flex', gap: '8px', marginBottom: '8px' }, children: [_jsx("input", { type: "text", placeholder: "Property name", value: newPropertyKey, onChange: (e) => setNewPropertyKey(e.target.value), disabled: disabled, style: { ...inputStyles, flex: 1 } }), _jsxs("select", { value: newPropertyType, onChange: (e) => setNewPropertyType(e.target.value), disabled: disabled, style: { ...inputStyles, width: '80px' }, children: [_jsx("option", { value: "string", children: "Text" }), _jsx("option", { value: "number", children: "Number" }), _jsx("option", { value: "boolean", children: "Boolean" })] })] }), newPropertyType !== 'boolean' && (_jsx("input", { type: newPropertyType === 'number' ? 'number' : 'text', placeholder: "Value", value: newPropertyValue, onChange: (e) => setNewPropertyValue(e.target.value), disabled: disabled, style: { ...inputStyles, marginBottom: '8px' } })), newPropertyType === 'boolean' && (_jsxs("select", { value: newPropertyValue, onChange: (e) => setNewPropertyValue(e.target.value), disabled: disabled, style: { ...inputStyles, marginBottom: '8px' }, children: [_jsx("option", { value: "true", children: "True" }), _jsx("option", { value: "false", children: "False" })] })), _jsx("button", { type: "button", onClick: handleAddProperty, disabled: disabled || !newPropertyKey.trim(), style: {
|
|
406
|
+
}, children: [_jsxs("div", { style: { display: 'flex', gap: '8px', marginBottom: '8px' }, children: [_jsx("input", { type: "text", "aria-label": "New property name", placeholder: "Property name", value: newPropertyKey, onChange: (e) => setNewPropertyKey(e.target.value), disabled: disabled, style: { ...inputStyles, flex: 1 } }), _jsxs("select", { "aria-label": "New property type", value: newPropertyType, onChange: (e) => setNewPropertyType(e.target.value), disabled: disabled, style: { ...inputStyles, width: '80px' }, children: [_jsx("option", { value: "string", children: "Text" }), _jsx("option", { value: "number", children: "Number" }), _jsx("option", { value: "boolean", children: "Boolean" })] })] }), newPropertyType !== 'boolean' && (_jsx("input", { "aria-label": "New property value", type: newPropertyType === 'number' ? 'number' : 'text', placeholder: "Value", value: newPropertyValue, onChange: (e) => setNewPropertyValue(e.target.value), disabled: disabled, style: { ...inputStyles, marginBottom: '8px' } })), newPropertyType === 'boolean' && (_jsxs("select", { "aria-label": "New property value", value: newPropertyValue, onChange: (e) => setNewPropertyValue(e.target.value), disabled: disabled, style: { ...inputStyles, marginBottom: '8px' }, children: [_jsx("option", { value: "true", children: "True" }), _jsx("option", { value: "false", children: "False" })] })), _jsx("button", { type: "button", onClick: handleAddProperty, disabled: disabled || !newPropertyKey.trim(), style: {
|
|
189
407
|
width: '100%',
|
|
190
408
|
padding: '8px',
|
|
191
409
|
border: 'none',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodePropertiesPanel.js","sourceRoot":"","sources":["../../src/properties/NodePropertiesPanel.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NodePropertiesPanel.js","sourceRoot":"","sources":["../../src/properties/NodePropertiesPanel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSettings.d.ts","sourceRoot":"","sources":["../../src/settings/useSettings.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EAQzB,MAAM,mBAAmB,CAAC;AAI3B;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,mDAAmD;IACnD,uBAAuB,CAAC,EAAE,gBAAgB,CAAC;IAC3C,wDAAwD;IACxD,sBAAsB,CAAC,EAAE,eAAe,CAAC;IACzC,6CAA6C;IAC7C,wBAAwB,CAAC,EAAE,CAAC,QAAQ,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAChE,mEAAmE;IACnE,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,CAAC;IAClD,6EAA6E;IAC7E,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,+BAA+B;IAC/B,eAAe,EAAE,eAAe,CAAC;IACjC,gCAAgC;IAChC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,oEAAoE;IACpE,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,yCAAyC;IACzC,cAAc,EAAE,cAAc,CAAC;IAE/B,qDAAqD;IACrD,qBAAqB,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC;IACnE,yCAAyC;IACzC,oBAAoB,EAAE,MAAM,IAAI,CAAC;IAEjC,+BAA+B;IAC/B,sBAAsB,EAAE,CAAC,QAAQ,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC7D,kEAAkE;IAClE,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAE1D,4BAA4B;IAC5B,iBAAiB,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK,IAAI,CAAC;IAEtD,sCAAsC;IACtC,aAAa,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,8BAA8B;IAC9B,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAE7B,wCAAwC;IACxC,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;CACjD;AAiED;;GAEG;AACH,wBAAgB,WAAW,CACzB,OAAO,GAAE,kBAAuB,GAC/B,iBAAiB,GAAG,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,WAAW,GAAG,iBAAiB,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"useSettings.d.ts","sourceRoot":"","sources":["../../src/settings/useSettings.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EAQzB,MAAM,mBAAmB,CAAC;AAI3B;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,mDAAmD;IACnD,uBAAuB,CAAC,EAAE,gBAAgB,CAAC;IAC3C,wDAAwD;IACxD,sBAAsB,CAAC,EAAE,eAAe,CAAC;IACzC,6CAA6C;IAC7C,wBAAwB,CAAC,EAAE,CAAC,QAAQ,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAChE,mEAAmE;IACnE,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,CAAC;IAClD,6EAA6E;IAC7E,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,+BAA+B;IAC/B,eAAe,EAAE,eAAe,CAAC;IACjC,gCAAgC;IAChC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,oEAAoE;IACpE,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,yCAAyC;IACzC,cAAc,EAAE,cAAc,CAAC;IAE/B,qDAAqD;IACrD,qBAAqB,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC;IACnE,yCAAyC;IACzC,oBAAoB,EAAE,MAAM,IAAI,CAAC;IAEjC,+BAA+B;IAC/B,sBAAsB,EAAE,CAAC,QAAQ,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC7D,kEAAkE;IAClE,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAE1D,4BAA4B;IAC5B,iBAAiB,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK,IAAI,CAAC;IAEtD,sCAAsC;IACtC,aAAa,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,8BAA8B;IAC9B,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAE7B,wCAAwC;IACxC,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;CACjD;AAiED;;GAEG;AACH,wBAAgB,WAAW,CACzB,OAAO,GAAE,kBAAuB,GAC/B,iBAAiB,GAAG,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,WAAW,GAAG,iBAAiB,CAAC,CAAC,CAwIxF"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* - Document Settings: Saved with the diagram file
|
|
6
6
|
* - User Preferences: Saved to localStorage
|
|
7
7
|
*/
|
|
8
|
-
import { useState, useCallback, useEffect, useMemo } from 'react';
|
|
8
|
+
import { useState, useCallback, useEffect, useMemo, useRef } from 'react';
|
|
9
9
|
import { DEFAULT_USER_PREFERENCES, DEFAULT_LAYOUT_SETTINGS, DEFAULT_DIAGRAM_FONT_SETTINGS, LAYOUT_PRESETS, getLayoutPreset, normalizeDiagramFontSettings, normalizeLlmMaxRetries, } from '../file/schema.js';
|
|
10
10
|
const STORAGE_KEY = 'coral:user-preferences';
|
|
11
11
|
/**
|
|
@@ -78,6 +78,7 @@ export function useSettings(options = {}) {
|
|
|
78
78
|
}
|
|
79
79
|
return loadUserPreferences();
|
|
80
80
|
});
|
|
81
|
+
const userPreferencesChangedRef = useRef(false);
|
|
81
82
|
// Document settings state (NOT persisted - saved with document)
|
|
82
83
|
const [documentSettings, setDocumentSettings] = useState(() => {
|
|
83
84
|
if (initialDocumentSettings) {
|
|
@@ -97,16 +98,20 @@ export function useSettings(options = {}) {
|
|
|
97
98
|
const selectedPreset = useMemo(() => detectPreset(documentSettings.layout), [documentSettings.layout]);
|
|
98
99
|
// Persist user preferences to localStorage when they change
|
|
99
100
|
useEffect(() => {
|
|
101
|
+
if (initialUserPreferences && !userPreferencesChangedRef.current)
|
|
102
|
+
return;
|
|
100
103
|
saveUserPreferences(userPreferences);
|
|
101
|
-
}, [userPreferences]);
|
|
104
|
+
}, [initialUserPreferences, userPreferences]);
|
|
102
105
|
// Update user preferences
|
|
103
106
|
const updateUserPreferences = useCallback((updates) => {
|
|
107
|
+
userPreferencesChangedRef.current = true;
|
|
104
108
|
setUserPreferences((prev) => ({ ...prev, ...updates,
|
|
105
109
|
...(Object.prototype.hasOwnProperty.call(updates, 'llmMaxRetries')
|
|
106
110
|
? { llmMaxRetries: normalizeLlmMaxRetries(updates.llmMaxRetries) } : {}) }));
|
|
107
111
|
}, []);
|
|
108
112
|
// Reset user preferences to defaults
|
|
109
113
|
const resetUserPreferences = useCallback(() => {
|
|
114
|
+
userPreferencesChangedRef.current = true;
|
|
110
115
|
setUserPreferences(DEFAULT_USER_PREFERENCES);
|
|
111
116
|
}, []);
|
|
112
117
|
// Update document settings
|
|
@@ -129,6 +134,7 @@ export function useSettings(options = {}) {
|
|
|
129
134
|
}, [documentSettings, onDocumentSettingsChange, onLayoutChange]);
|
|
130
135
|
// Add file to recent files
|
|
131
136
|
const addRecentFile = useCallback((filePath) => {
|
|
137
|
+
userPreferencesChangedRef.current = true;
|
|
132
138
|
setUserPreferences((prev) => {
|
|
133
139
|
// Remove if already exists
|
|
134
140
|
const filtered = prev.recentFiles.filter((f) => f !== filePath);
|
|
@@ -141,6 +147,7 @@ export function useSettings(options = {}) {
|
|
|
141
147
|
}, []);
|
|
142
148
|
// Clear recent files
|
|
143
149
|
const clearRecentFiles = useCallback(() => {
|
|
150
|
+
userPreferencesChangedRef.current = true;
|
|
144
151
|
setUserPreferences((prev) => ({ ...prev, recentFiles: [] }));
|
|
145
152
|
}, []);
|
|
146
153
|
// Get combined settings panel state
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSettings.js","sourceRoot":"","sources":["../../src/settings/useSettings.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"useSettings.js","sourceRoot":"","sources":["../../src/settings/useSettings.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,17 @@ export interface EditorDiagnostic {
|
|
|
19
19
|
line?: number;
|
|
20
20
|
position?: EditorSourcePosition;
|
|
21
21
|
range?: EditorSourceRange;
|
|
22
|
+
related?: readonly {
|
|
23
|
+
message: string;
|
|
24
|
+
position: EditorSourcePosition;
|
|
25
|
+
range?: EditorSourceRange;
|
|
26
|
+
}[];
|
|
27
|
+
source?: string;
|
|
28
|
+
subject?: {
|
|
29
|
+
kind: 'node' | 'edge' | 'graph';
|
|
30
|
+
id: string;
|
|
31
|
+
};
|
|
32
|
+
hint?: string;
|
|
22
33
|
}
|
|
23
34
|
export interface EditorDecoration {
|
|
24
35
|
start: number;
|
|
@@ -33,6 +44,7 @@ export interface EditorAnalysisOwner {
|
|
|
33
44
|
export interface TextEditorProps {
|
|
34
45
|
value: string;
|
|
35
46
|
onChange: (value: string) => void;
|
|
47
|
+
onSelectionChange?: (start: number, end: number) => void;
|
|
36
48
|
language?: SyntaxLanguage;
|
|
37
49
|
/** Legacy locations use one-based columns. */
|
|
38
50
|
errors?: ParseError[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextEditor.d.ts","sourceRoot":"","sources":["../../src/text-editor/TextEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,KASN,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,SAAS,GAAG,KAAK,GAAG,OAAO,CAAC;AACnE,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;AAE3C,MAAM,WAAW,oBAAoB;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE;AACtF,MAAM,WAAW,iBAAiB;IAAG,KAAK,EAAE,oBAAoB,CAAC;IAAC,GAAG,EAAE,oBAAoB,CAAA;CAAE;AAC7F,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACxC,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAChC,KAAK,CAAC,EAAE,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"TextEditor.d.ts","sourceRoot":"","sources":["../../src/text-editor/TextEditor.tsx"],"names":[],"mappings":"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"}
|