@ngroznykh/papirus 0.6.0 → 0.6.2
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 +42 -0
- package/README.ru.md +42 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/core/HistoryManager.d.ts +1 -1
- package/dist/core/HistoryManager.d.ts.map +1 -1
- package/dist/core/InteractionManager.d.ts +10 -0
- package/dist/core/InteractionManager.d.ts.map +1 -1
- package/dist/core/history/commands.d.ts +13 -0
- package/dist/core/history/commands.d.ts.map +1 -1
- package/dist/elements/Edge.d.ts +1 -0
- package/dist/elements/Edge.d.ts.map +1 -1
- package/dist/elements/composite/CText.d.ts +5 -1
- package/dist/elements/composite/CText.d.ts.map +1 -1
- package/dist/elements/composite/deserialize.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/papirus.js +165 -7
- package/dist/papirus.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/markers.d.ts +4 -0
- package/dist/utils/markers.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -145,6 +145,9 @@ const edge = new Edge({
|
|
|
145
145
|
to: { nodeId: nodeB.id },
|
|
146
146
|
label: 'API call',
|
|
147
147
|
labelOffset: 12,
|
|
148
|
+
labelPosition: 0.65, // 0..1 along edge path (0 = start, 1 = end)
|
|
149
|
+
labelFollowPath: true, // rotate label with local edge direction
|
|
150
|
+
labelLineGap: true, // line is cut under label bounds
|
|
148
151
|
labelBackground: {
|
|
149
152
|
color: '#ffffff',
|
|
150
153
|
opacity: 0.9,
|
|
@@ -153,6 +156,45 @@ const edge = new Edge({
|
|
|
153
156
|
});
|
|
154
157
|
```
|
|
155
158
|
|
|
159
|
+
### CompositeNode (Flex Components)
|
|
160
|
+
|
|
161
|
+
`CompositeNode` lets you build notation-specific visual structures as a component tree (`container`, `text`, `icon`, `shape`, `divider`) with a flexbox-like layout engine:
|
|
162
|
+
|
|
163
|
+
```ts
|
|
164
|
+
import { CompositeNode, container, text, icon, divider } from '@ngroznykh/papirus';
|
|
165
|
+
|
|
166
|
+
const composite = new CompositeNode({
|
|
167
|
+
x: 120,
|
|
168
|
+
y: 80,
|
|
169
|
+
width: 220,
|
|
170
|
+
height: 120,
|
|
171
|
+
shapeType: 'rectangle',
|
|
172
|
+
autoSize: true,
|
|
173
|
+
content: container({
|
|
174
|
+
direction: 'column',
|
|
175
|
+
padding: 10,
|
|
176
|
+
gap: 6,
|
|
177
|
+
children: [
|
|
178
|
+
text({ id: 'name', text: 'Service API', role: 'name', style: { alignSelf: 'center' } }),
|
|
179
|
+
divider({}),
|
|
180
|
+
container({
|
|
181
|
+
direction: 'row',
|
|
182
|
+
justifyContent: 'space-between',
|
|
183
|
+
children: [
|
|
184
|
+
text({ text: 'v2.1.0', color: '#64748b' }),
|
|
185
|
+
icon({ source: '/icons/cloud.svg', width: 16, height: 16, bindsNotationIcon: true }),
|
|
186
|
+
],
|
|
187
|
+
}),
|
|
188
|
+
],
|
|
189
|
+
}),
|
|
190
|
+
});
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
Serialized composite components (`SerializedCComponent`) include editor/integration fields:
|
|
194
|
+
- `label` — human-readable component caption for host editors.
|
|
195
|
+
- `bindToProperty` — bind `text` value to a property name (`'__name__'` for node display name).
|
|
196
|
+
- `bindsNotationIcon` — mark `icon` source as notation-level icon binding.
|
|
197
|
+
|
|
156
198
|
### Styling
|
|
157
199
|
|
|
158
200
|
`StyleManager` applies themes and classes to nodes/edges/text/ports/groups.
|
package/README.ru.md
CHANGED
|
@@ -146,6 +146,9 @@ const edge = new Edge({
|
|
|
146
146
|
to: { nodeId: nodeB.id },
|
|
147
147
|
label: 'API call',
|
|
148
148
|
labelOffset: 12,
|
|
149
|
+
labelPosition: 0.65, // 0..1 вдоль пути ребра (0 = начало, 1 = конец)
|
|
150
|
+
labelFollowPath: true, // поворачивать подпись по направлению ребра
|
|
151
|
+
labelLineGap: true, // линия разрывается под подписью
|
|
149
152
|
labelBackground: {
|
|
150
153
|
color: '#ffffff',
|
|
151
154
|
opacity: 0.9,
|
|
@@ -154,6 +157,45 @@ const edge = new Edge({
|
|
|
154
157
|
});
|
|
155
158
|
```
|
|
156
159
|
|
|
160
|
+
### CompositeNode (компонентная flex-компоновка)
|
|
161
|
+
|
|
162
|
+
`CompositeNode` позволяет собирать нотационные элементы как дерево компонентов (`container`, `text`, `icon`, `shape`, `divider`) с flexbox-подобной раскладкой:
|
|
163
|
+
|
|
164
|
+
```ts
|
|
165
|
+
import { CompositeNode, container, text, icon, divider } from '@ngroznykh/papirus';
|
|
166
|
+
|
|
167
|
+
const composite = new CompositeNode({
|
|
168
|
+
x: 120,
|
|
169
|
+
y: 80,
|
|
170
|
+
width: 220,
|
|
171
|
+
height: 120,
|
|
172
|
+
shapeType: 'rectangle',
|
|
173
|
+
autoSize: true,
|
|
174
|
+
content: container({
|
|
175
|
+
direction: 'column',
|
|
176
|
+
padding: 10,
|
|
177
|
+
gap: 6,
|
|
178
|
+
children: [
|
|
179
|
+
text({ id: 'name', text: 'Service API', role: 'name', style: { alignSelf: 'center' } }),
|
|
180
|
+
divider({}),
|
|
181
|
+
container({
|
|
182
|
+
direction: 'row',
|
|
183
|
+
justifyContent: 'space-between',
|
|
184
|
+
children: [
|
|
185
|
+
text({ text: 'v2.1.0', color: '#64748b' }),
|
|
186
|
+
icon({ source: '/icons/cloud.svg', width: 16, height: 16, bindsNotationIcon: true }),
|
|
187
|
+
],
|
|
188
|
+
}),
|
|
189
|
+
],
|
|
190
|
+
}),
|
|
191
|
+
});
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
Сериализация компонентов (`SerializedCComponent`) включает поля для редакторов и интеграций:
|
|
195
|
+
- `label` — человекочитаемая подпись компонента для host-редактора.
|
|
196
|
+
- `bindToProperty` — привязка значения `text` к имени свойства (`'__name__'` для отображаемого имени узла).
|
|
197
|
+
- `bindsNotationIcon` — признак того, что `icon` привязан к иконке на уровне нотации.
|
|
198
|
+
|
|
157
199
|
### Стили
|
|
158
200
|
|
|
159
201
|
`StyleManager` применяет темы и классы к узлам/рёбрам/тексту/портам/группам.
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,eAAO,MAAM,WAAW,QAAc,CAAC;AAGvC,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,eAAO,MAAM,WAAW,QAAc,CAAC;AAGvC,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAM/C,CAAC;AAGF,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAG9C,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAGtC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAGtC,eAAO,MAAM,kBAAkB,YAAY,CAAC;AAG5C,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC,kGAAkG;AAClG,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAGhD,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,uBAAuB,YAAY,CAAC;AACjD,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAG7C,qDAAqD;AACrD,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,sHAAsH;AACtH,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAG5C,2FAA2F;AAC3F,eAAO,MAAM,sCAAsC,IAAI,CAAC;AACxD,sFAAsF;AACtF,eAAO,MAAM,iCAAiC,KAAK,CAAC"}
|
|
@@ -58,5 +58,5 @@ export declare class HistoryManager extends EventEmitter<HistoryEvents> {
|
|
|
58
58
|
handleKeyDown(event: KeyboardEvent): boolean;
|
|
59
59
|
private emitChange;
|
|
60
60
|
}
|
|
61
|
-
export { MoveNodesCommand, AddNodeCommand, RemoveNodeCommand, CompositeCommand, ChangeNodePropertiesCommand, ChangeEdgePropertiesCommand, ChangeGroupPropertiesCommand, RemoveNodeFromGroupsCommand, createNodeSnapshot, createEdgeSnapshot, createGroupSnapshot, } from './history/commands';
|
|
61
|
+
export { MoveNodesCommand, AddNodeCommand, RemoveNodeCommand, CompositeCommand, ChangeEditablePolylineControlPointsCommand, ChangeNodePropertiesCommand, ChangeEdgePropertiesCommand, ChangeGroupPropertiesCommand, RemoveNodeFromGroupsCommand, createNodeSnapshot, createEdgeSnapshot, createGroupSnapshot, } from './history/commands';
|
|
62
62
|
//# sourceMappingURL=HistoryManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HistoryManager.d.ts","sourceRoot":"","sources":["../../src/core/HistoryManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7C,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACzB,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,YAAY,CAAC,aAAa,CAAC;IAC7D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,OAAO,GAAE,qBAA0B;IAK/C;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAe/B;;OAEG;IACH,IAAI,IAAI,OAAO;IAcf;;OAEG;IACH,IAAI,IAAI,OAAO;IAcf;;OAEG;IACH,KAAK,IAAI,IAAI;IAMb;;;OAGG;IACH,aAAa,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO;IAmB5C,OAAO,CAAC,UAAU;CAGnB;AAED,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,2BAA2B,EAC3B,2BAA2B,EAC3B,4BAA4B,EAC5B,2BAA2B,EAC3B,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"HistoryManager.d.ts","sourceRoot":"","sources":["../../src/core/HistoryManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7C,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACzB,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,YAAY,CAAC,aAAa,CAAC;IAC7D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,OAAO,GAAE,qBAA0B;IAK/C;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAe/B;;OAEG;IACH,IAAI,IAAI,OAAO;IAcf;;OAEG;IACH,IAAI,IAAI,OAAO;IAcf;;OAEG;IACH,KAAK,IAAI,IAAI;IAMb;;;OAGG;IACH,aAAa,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO;IAmB5C,OAAO,CAAC,UAAU;CAGnB;AAED,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,0CAA0C,EAC1C,2BAA2B,EAC3B,2BAA2B,EAC3B,4BAA4B,EAC5B,2BAA2B,EAC3B,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC"}
|
|
@@ -47,6 +47,7 @@ export declare class InteractionManager {
|
|
|
47
47
|
private keymap;
|
|
48
48
|
private overlayCleanup;
|
|
49
49
|
private dragStartPositions;
|
|
50
|
+
private dragStartEditablePolylinePoints;
|
|
50
51
|
private reconnectOrigins;
|
|
51
52
|
private clipboard;
|
|
52
53
|
private pendingPropertyChanges;
|
|
@@ -63,6 +64,15 @@ export declare class InteractionManager {
|
|
|
63
64
|
get navigation(): NavigationManager;
|
|
64
65
|
get connection(): ConnectionManager;
|
|
65
66
|
get history(): HistoryManager;
|
|
67
|
+
/**
|
|
68
|
+
* Records drag-start positions for node IDs moved together with the selection by the host app
|
|
69
|
+
* (e.g. contained nodes while Papirus only reports the container in drag events).
|
|
70
|
+
* Call from a `dragstart` listener after the default handler; skips IDs already captured.
|
|
71
|
+
* Also snapshots editable-polyline control points for edges incident to those nodes (for undo).
|
|
72
|
+
*/
|
|
73
|
+
recordAdditionalDragStartPositions(nodeIds: string[]): void;
|
|
74
|
+
private snapshotEditablePolylineControlPointsForEdgesTouchingNodes;
|
|
75
|
+
private editablePolylinePointsEqual;
|
|
66
76
|
changeNodeProperties(nodeId: string, apply: (node: Node) => void): void;
|
|
67
77
|
changeEdgeProperties(edgeId: string, apply: (edge: Edge) => void): void;
|
|
68
78
|
changeGroupProperties(groupId: string, apply: (group: Group) => void): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InteractionManager.d.ts","sourceRoot":"","sources":["../../src/core/InteractionManager.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,eAAe,EAAsB,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAIL,cAAc,EAMf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAU,YAAY,EAAS,cAAc,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC3F,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"InteractionManager.d.ts","sourceRoot":"","sources":["../../src/core/InteractionManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -60,6 +60,19 @@ export declare class MoveNodesCommand implements Command {
|
|
|
60
60
|
execute(): void;
|
|
61
61
|
undo(): void;
|
|
62
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Restores editable-polyline control points on undo (used with node drag composite).
|
|
65
|
+
*/
|
|
66
|
+
export declare class ChangeEditablePolylineControlPointsCommand implements Command {
|
|
67
|
+
private readonly changes;
|
|
68
|
+
private readonly getEdge;
|
|
69
|
+
constructor(getEdge: (id: string) => Edge | undefined, changes: Map<string, {
|
|
70
|
+
before: Point[];
|
|
71
|
+
after: Point[];
|
|
72
|
+
}>);
|
|
73
|
+
execute(): void;
|
|
74
|
+
undo(): void;
|
|
75
|
+
}
|
|
63
76
|
/**
|
|
64
77
|
* Command for adding a node
|
|
65
78
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/core/history/commands.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EACV,iBAAiB,EACjB,SAAS,EACT,OAAO,EACP,mBAAmB,EACnB,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,SAAS,EACT,KAAK,EACL,SAAS,EACV,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/core/history/commands.ts"],"names":[],"mappings":"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"}
|
package/dist/elements/Edge.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Edge.d.ts","sourceRoot":"","sources":["../../src/elements/Edge.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Edge.d.ts","sourceRoot":"","sources":["../../src/elements/Edge.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,8 +12,10 @@ export interface CTextOptions {
|
|
|
12
12
|
verticalAlign?: 'top' | 'middle' | 'bottom';
|
|
13
13
|
maxLines?: number;
|
|
14
14
|
lineHeight?: number;
|
|
15
|
-
/**
|
|
15
|
+
/** Optional marker for host apps (not used for composite name edit; use `bindToProperty: '__name__'`). */
|
|
16
16
|
role?: string;
|
|
17
|
+
/** Bind displayed text to a property (`__name__` = node display name; enables double-click name edit on composite). */
|
|
18
|
+
bindToProperty?: string;
|
|
17
19
|
/** Rotation in degrees (e.g. -90 for vertical swimlane text) */
|
|
18
20
|
rotation?: number;
|
|
19
21
|
style?: CComponentStyle;
|
|
@@ -37,6 +39,7 @@ export declare class CText implements CComponent {
|
|
|
37
39
|
private _maxLines?;
|
|
38
40
|
private _lineHeight;
|
|
39
41
|
private _role?;
|
|
42
|
+
private _bindToProperty?;
|
|
40
43
|
private _rotation;
|
|
41
44
|
private _onChange?;
|
|
42
45
|
private _cachedLines;
|
|
@@ -61,6 +64,7 @@ export declare class CText implements CComponent {
|
|
|
61
64
|
set maxLines(value: number | undefined);
|
|
62
65
|
get lineHeight(): number;
|
|
63
66
|
get role(): string | undefined;
|
|
67
|
+
get bindToProperty(): string | undefined;
|
|
64
68
|
get rotation(): number;
|
|
65
69
|
set rotation(value: number);
|
|
66
70
|
setOnChange(cb: (() => void) | undefined): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CText.d.ts","sourceRoot":"","sources":["../../../src/elements/composite/CText.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEtF,MAAM,WAAW,YAAY;IAC3B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,aAAa,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,
|
|
1
|
+
{"version":3,"file":"CText.d.ts","sourceRoot":"","sources":["../../../src/elements/composite/CText.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deserialize.d.ts","sourceRoot":"","sources":["../../../src/elements/composite/deserialize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAOrE;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,oBAAoB,GAAG,UAAU,
|
|
1
|
+
{"version":3,"file":"deserialize.d.ts","sourceRoot":"","sources":["../../../src/elements/composite/deserialize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAOrE;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,oBAAoB,GAAG,UAAU,CAsE5E"}
|
package/dist/index.d.ts
CHANGED
|
@@ -19,7 +19,7 @@ export type { SearchManagerOptions, SearchFindOptions, SearchFilterOptions, Sear
|
|
|
19
19
|
export { AnimationManager } from './core/AnimationManager';
|
|
20
20
|
export type { AnimationState } from './core/AnimationManager';
|
|
21
21
|
export { HistoryManager } from './core/HistoryManager';
|
|
22
|
-
export { MoveNodesCommand, AddNodeCommand, RemoveNodeCommand, CompositeCommand } from './core/history/commands';
|
|
22
|
+
export { MoveNodesCommand, AddNodeCommand, RemoveNodeCommand, CompositeCommand, ChangeEditablePolylineControlPointsCommand, } from './core/history/commands';
|
|
23
23
|
export type { HistoryEvents, HistoryManagerOptions } from './core/HistoryManager';
|
|
24
24
|
export { Element, generateId, resetIdCounter } from './elements/Element';
|
|
25
25
|
export { Node } from './elements/Node';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,YAAY,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAEzE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,YAAY,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,YAAY,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAE3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,YAAY,EACV,gBAAgB,EAChB,wBAAwB,EACxB,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,YAAY,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9F,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,YAAY,EACV,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,YAAY,EACV,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,YAAY,GACb,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,YAAY,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/papirus.js
CHANGED
|
@@ -515,7 +515,8 @@ const MARKER_SIZES = {
|
|
|
515
515
|
arrow: 12,
|
|
516
516
|
open: 12,
|
|
517
517
|
diamond: 14,
|
|
518
|
-
circle: 6
|
|
518
|
+
circle: 6,
|
|
519
|
+
square: 6
|
|
519
520
|
};
|
|
520
521
|
const EDGE_LABEL_BACKGROUND_RADIUS = 2;
|
|
521
522
|
const RESIZE_HANDLE_SIZE = 8;
|
|
@@ -3125,6 +3126,33 @@ class MoveNodesCommand {
|
|
|
3125
3126
|
}
|
|
3126
3127
|
}
|
|
3127
3128
|
}
|
|
3129
|
+
class ChangeEditablePolylineControlPointsCommand {
|
|
3130
|
+
constructor(getEdge, changes) {
|
|
3131
|
+
this.getEdge = getEdge;
|
|
3132
|
+
this.changes = new Map(
|
|
3133
|
+
Array.from(changes.entries()).map(([id, v]) => [
|
|
3134
|
+
id,
|
|
3135
|
+
{ before: clonePoints(v.before), after: clonePoints(v.after) }
|
|
3136
|
+
])
|
|
3137
|
+
);
|
|
3138
|
+
}
|
|
3139
|
+
execute() {
|
|
3140
|
+
for (const [id, { after }] of this.changes) {
|
|
3141
|
+
const edge = this.getEdge(id);
|
|
3142
|
+
if (edge?.isEditablePolyline()) {
|
|
3143
|
+
edge.controlPoints = clonePoints(after);
|
|
3144
|
+
}
|
|
3145
|
+
}
|
|
3146
|
+
}
|
|
3147
|
+
undo() {
|
|
3148
|
+
for (const [id, { before }] of this.changes) {
|
|
3149
|
+
const edge = this.getEdge(id);
|
|
3150
|
+
if (edge?.isEditablePolyline()) {
|
|
3151
|
+
edge.controlPoints = clonePoints(before);
|
|
3152
|
+
}
|
|
3153
|
+
}
|
|
3154
|
+
}
|
|
3155
|
+
}
|
|
3128
3156
|
class AddNodeCommand {
|
|
3129
3157
|
constructor(nodeId, addNode, removeNode) {
|
|
3130
3158
|
this.nodeId = nodeId;
|
|
@@ -4958,6 +4986,9 @@ class Edge extends Element {
|
|
|
4958
4986
|
case "circle":
|
|
4959
4987
|
return size * 2;
|
|
4960
4988
|
// Circle diameter
|
|
4989
|
+
case "square":
|
|
4990
|
+
return size * 2;
|
|
4991
|
+
// Square depth along edge (matches circle footprint)
|
|
4961
4992
|
default:
|
|
4962
4993
|
return 0;
|
|
4963
4994
|
}
|
|
@@ -4985,6 +5016,9 @@ class Edge extends Element {
|
|
|
4985
5016
|
case "circle":
|
|
4986
5017
|
this.drawCircleMarker(ctx, to, angle2, size, fillColor, fillOpacity);
|
|
4987
5018
|
break;
|
|
5019
|
+
case "square":
|
|
5020
|
+
this.drawSquareMarker(ctx, to, angle2, size, fillColor, fillOpacity);
|
|
5021
|
+
break;
|
|
4988
5022
|
}
|
|
4989
5023
|
ctx.restore();
|
|
4990
5024
|
}
|
|
@@ -5058,6 +5092,29 @@ class Edge extends Element {
|
|
|
5058
5092
|
ctx.globalAlpha = 1;
|
|
5059
5093
|
ctx.stroke();
|
|
5060
5094
|
}
|
|
5095
|
+
drawSquareMarker(ctx, to, angle2, size, fillColor, fillOpacity) {
|
|
5096
|
+
const cos = Math.cos(angle2);
|
|
5097
|
+
const sin = Math.sin(angle2);
|
|
5098
|
+
const px = -sin;
|
|
5099
|
+
const py = cos;
|
|
5100
|
+
const p1 = { x: to.x + size * px, y: to.y + size * py };
|
|
5101
|
+
const p2 = { x: to.x - size * px, y: to.y - size * py };
|
|
5102
|
+
const bx = 2 * size * cos;
|
|
5103
|
+
const by = 2 * size * sin;
|
|
5104
|
+
const p3 = { x: p2.x - bx, y: p2.y - by };
|
|
5105
|
+
const p4 = { x: p1.x - bx, y: p1.y - by };
|
|
5106
|
+
ctx.beginPath();
|
|
5107
|
+
ctx.moveTo(p1.x, p1.y);
|
|
5108
|
+
ctx.lineTo(p2.x, p2.y);
|
|
5109
|
+
ctx.lineTo(p3.x, p3.y);
|
|
5110
|
+
ctx.lineTo(p4.x, p4.y);
|
|
5111
|
+
ctx.closePath();
|
|
5112
|
+
ctx.globalAlpha = fillOpacity;
|
|
5113
|
+
ctx.fillStyle = fillColor;
|
|
5114
|
+
ctx.fill();
|
|
5115
|
+
ctx.globalAlpha = 1;
|
|
5116
|
+
ctx.stroke();
|
|
5117
|
+
}
|
|
5061
5118
|
drawArrowHead(ctx, from, to) {
|
|
5062
5119
|
const angle2 = Math.atan2(to.y - from.y, to.x - from.x);
|
|
5063
5120
|
ctx.save();
|
|
@@ -5357,6 +5414,7 @@ class InteractionManager {
|
|
|
5357
5414
|
constructor(options) {
|
|
5358
5415
|
this.overlayCleanup = null;
|
|
5359
5416
|
this.dragStartPositions = /* @__PURE__ */ new Map();
|
|
5417
|
+
this.dragStartEditablePolylinePoints = /* @__PURE__ */ new Map();
|
|
5360
5418
|
this.reconnectOrigins = /* @__PURE__ */ new Map();
|
|
5361
5419
|
this.clipboard = null;
|
|
5362
5420
|
this.pendingPropertyChanges = /* @__PURE__ */ new Map();
|
|
@@ -5428,6 +5486,52 @@ class InteractionManager {
|
|
|
5428
5486
|
get history() {
|
|
5429
5487
|
return this.historyManager;
|
|
5430
5488
|
}
|
|
5489
|
+
/**
|
|
5490
|
+
* Records drag-start positions for node IDs moved together with the selection by the host app
|
|
5491
|
+
* (e.g. contained nodes while Papirus only reports the container in drag events).
|
|
5492
|
+
* Call from a `dragstart` listener after the default handler; skips IDs already captured.
|
|
5493
|
+
* Also snapshots editable-polyline control points for edges incident to those nodes (for undo).
|
|
5494
|
+
*/
|
|
5495
|
+
recordAdditionalDragStartPositions(nodeIds) {
|
|
5496
|
+
for (const id of nodeIds) {
|
|
5497
|
+
if (this.dragStartPositions.has(id)) {
|
|
5498
|
+
continue;
|
|
5499
|
+
}
|
|
5500
|
+
const node = this.renderer.getNode(id);
|
|
5501
|
+
if (node !== void 0) {
|
|
5502
|
+
this.dragStartPositions.set(id, { x: node.x, y: node.y });
|
|
5503
|
+
}
|
|
5504
|
+
}
|
|
5505
|
+
this.snapshotEditablePolylineControlPointsForEdgesTouchingNodes(nodeIds);
|
|
5506
|
+
}
|
|
5507
|
+
snapshotEditablePolylineControlPointsForEdgesTouchingNodes(nodeIds) {
|
|
5508
|
+
const idSet = new Set(nodeIds);
|
|
5509
|
+
for (const edge of this.renderer.edges.values()) {
|
|
5510
|
+
if (!edge.hasEditableControlPoints()) {
|
|
5511
|
+
continue;
|
|
5512
|
+
}
|
|
5513
|
+
if (!idSet.has(edge.from.nodeId) && !idSet.has(edge.to.nodeId)) {
|
|
5514
|
+
continue;
|
|
5515
|
+
}
|
|
5516
|
+
if (this.dragStartEditablePolylinePoints.has(edge.id)) {
|
|
5517
|
+
continue;
|
|
5518
|
+
}
|
|
5519
|
+
this.dragStartEditablePolylinePoints.set(edge.id, clonePoints(edge.controlPoints));
|
|
5520
|
+
}
|
|
5521
|
+
}
|
|
5522
|
+
editablePolylinePointsEqual(a, b) {
|
|
5523
|
+
if (a.length !== b.length) {
|
|
5524
|
+
return false;
|
|
5525
|
+
}
|
|
5526
|
+
for (let i = 0; i < a.length; i++) {
|
|
5527
|
+
const p = a[i];
|
|
5528
|
+
const q = b[i];
|
|
5529
|
+
if (p.x !== q.x || p.y !== q.y) {
|
|
5530
|
+
return false;
|
|
5531
|
+
}
|
|
5532
|
+
}
|
|
5533
|
+
return true;
|
|
5534
|
+
}
|
|
5431
5535
|
changeNodeProperties(nodeId, apply) {
|
|
5432
5536
|
const node = this.renderer.getNode(nodeId);
|
|
5433
5537
|
if (!node) {
|
|
@@ -5547,17 +5651,19 @@ class InteractionManager {
|
|
|
5547
5651
|
this.dragManager.on("dragstart", (nodeIds) => {
|
|
5548
5652
|
this.connectionManager.disableHover();
|
|
5549
5653
|
this.dragStartPositions.clear();
|
|
5654
|
+
this.dragStartEditablePolylinePoints.clear();
|
|
5550
5655
|
for (const id of nodeIds) {
|
|
5551
5656
|
const node = this.renderer.getNode(id);
|
|
5552
5657
|
if (node) {
|
|
5553
5658
|
this.dragStartPositions.set(id, { x: node.x, y: node.y });
|
|
5554
5659
|
}
|
|
5555
5660
|
}
|
|
5661
|
+
this.snapshotEditablePolylineControlPointsForEdgesTouchingNodes(nodeIds);
|
|
5556
5662
|
});
|
|
5557
|
-
this.dragManager.on("dragend", (
|
|
5663
|
+
this.dragManager.on("dragend", () => {
|
|
5558
5664
|
this.connectionManager.enableHover();
|
|
5559
5665
|
const nodePositions = /* @__PURE__ */ new Map();
|
|
5560
|
-
for (const id of
|
|
5666
|
+
for (const id of this.dragStartPositions.keys()) {
|
|
5561
5667
|
const node = this.renderer.getNode(id);
|
|
5562
5668
|
const before = this.dragStartPositions.get(id);
|
|
5563
5669
|
if (!node || !before) continue;
|
|
@@ -5566,11 +5672,40 @@ class InteractionManager {
|
|
|
5566
5672
|
nodePositions.set(id, { before, after });
|
|
5567
5673
|
}
|
|
5568
5674
|
}
|
|
5569
|
-
|
|
5570
|
-
|
|
5571
|
-
|
|
5675
|
+
const polylineChanges = /* @__PURE__ */ new Map();
|
|
5676
|
+
for (const edge of this.renderer.edges.values()) {
|
|
5677
|
+
if (!edge.hasEditableControlPoints()) {
|
|
5678
|
+
continue;
|
|
5679
|
+
}
|
|
5680
|
+
const beforePts = this.dragStartEditablePolylinePoints.get(edge.id);
|
|
5681
|
+
if (beforePts === void 0) {
|
|
5682
|
+
continue;
|
|
5683
|
+
}
|
|
5684
|
+
const afterPts = clonePoints(edge.controlPoints);
|
|
5685
|
+
if (!this.editablePolylinePointsEqual(beforePts, afterPts)) {
|
|
5686
|
+
polylineChanges.set(edge.id, {
|
|
5687
|
+
before: clonePoints(beforePts),
|
|
5688
|
+
after: afterPts
|
|
5689
|
+
});
|
|
5690
|
+
}
|
|
5691
|
+
}
|
|
5692
|
+
const parts = [];
|
|
5693
|
+
if (polylineChanges.size > 0) {
|
|
5694
|
+
parts.push(
|
|
5695
|
+
new ChangeEditablePolylineControlPointsCommand(
|
|
5696
|
+
(id) => this.renderer.getEdge(id),
|
|
5697
|
+
polylineChanges
|
|
5698
|
+
)
|
|
5572
5699
|
);
|
|
5573
5700
|
}
|
|
5701
|
+
if (nodePositions.size > 0) {
|
|
5702
|
+
parts.push(new MoveNodesCommand((id) => this.renderer.getNode(id), nodePositions));
|
|
5703
|
+
}
|
|
5704
|
+
if (parts.length === 1) {
|
|
5705
|
+
this.historyManager.execute(parts[0]);
|
|
5706
|
+
} else if (parts.length > 1) {
|
|
5707
|
+
this.historyManager.execute(new CompositeCommand(parts));
|
|
5708
|
+
}
|
|
5574
5709
|
});
|
|
5575
5710
|
this.connectionManager.on("edgeReconnectStart", (edge, endpoint, original) => {
|
|
5576
5711
|
this.reconnectOrigins.set(edge.id, { endpoint, original: { ...original } });
|
|
@@ -5983,10 +6118,11 @@ class InteractionManager {
|
|
|
5983
6118
|
);
|
|
5984
6119
|
}
|
|
5985
6120
|
findNameComponent(container2) {
|
|
6121
|
+
const bindToDisplayName = "__name__";
|
|
5986
6122
|
for (const child of container2.children) {
|
|
5987
6123
|
if (child.type === "text") {
|
|
5988
6124
|
const ctext = child;
|
|
5989
|
-
if (ctext.
|
|
6125
|
+
if (ctext.bindToProperty === bindToDisplayName) return ctext;
|
|
5990
6126
|
}
|
|
5991
6127
|
if (child.type === "container") {
|
|
5992
6128
|
const found = this.findNameComponent(
|
|
@@ -10520,6 +10656,7 @@ class CText {
|
|
|
10520
10656
|
this._maxLines = options.maxLines;
|
|
10521
10657
|
this._lineHeight = options.lineHeight ?? DEFAULT_LINE_HEIGHT;
|
|
10522
10658
|
this._role = options.role;
|
|
10659
|
+
this._bindToProperty = options.bindToProperty;
|
|
10523
10660
|
this._rotation = options.rotation ?? 0;
|
|
10524
10661
|
this.style = options.style ?? {};
|
|
10525
10662
|
}
|
|
@@ -10612,6 +10749,9 @@ class CText {
|
|
|
10612
10749
|
get role() {
|
|
10613
10750
|
return this._role;
|
|
10614
10751
|
}
|
|
10752
|
+
get bindToProperty() {
|
|
10753
|
+
return this._bindToProperty;
|
|
10754
|
+
}
|
|
10615
10755
|
get rotation() {
|
|
10616
10756
|
return this._rotation;
|
|
10617
10757
|
}
|
|
@@ -10767,6 +10907,7 @@ class CText {
|
|
|
10767
10907
|
if (this._verticalAlign !== "middle") data.verticalAlign = this._verticalAlign;
|
|
10768
10908
|
if (this._maxLines !== void 0) data.maxLines = this._maxLines;
|
|
10769
10909
|
if (this._lineHeight !== DEFAULT_LINE_HEIGHT) data.lineHeight = this._lineHeight;
|
|
10910
|
+
if (this._bindToProperty !== void 0) data.bindToProperty = this._bindToProperty;
|
|
10770
10911
|
if (this._role !== void 0) data.role = this._role;
|
|
10771
10912
|
if (this._rotation !== 0) data.rotation = this._rotation;
|
|
10772
10913
|
return data;
|
|
@@ -11640,6 +11781,7 @@ function deserializeCComponent(data) {
|
|
|
11640
11781
|
maxLines: data.maxLines,
|
|
11641
11782
|
lineHeight: data.lineHeight,
|
|
11642
11783
|
role: data.role,
|
|
11784
|
+
bindToProperty: data.bindToProperty,
|
|
11643
11785
|
rotation: data.rotation,
|
|
11644
11786
|
style: data.style
|
|
11645
11787
|
});
|
|
@@ -12765,6 +12907,19 @@ function generateSvgCircleMarker(to, angle2, size, fill, fillOpacity, stroke) {
|
|
|
12765
12907
|
const { x: cx, y: cy } = calculateCircleMarkerCenter(to, angle2, size);
|
|
12766
12908
|
return `<circle cx="${cx}" cy="${cy}" r="${size}" fill="${fill}" fill-opacity="${fillOpacity}" stroke="${stroke}" stroke-width="1"/>`;
|
|
12767
12909
|
}
|
|
12910
|
+
function generateSvgSquareMarker(to, angle2, size, fill, fillOpacity, stroke) {
|
|
12911
|
+
const cos = Math.cos(angle2);
|
|
12912
|
+
const sin = Math.sin(angle2);
|
|
12913
|
+
const px = -sin;
|
|
12914
|
+
const py = cos;
|
|
12915
|
+
const p1 = { x: to.x + size * px, y: to.y + size * py };
|
|
12916
|
+
const p2 = { x: to.x - size * px, y: to.y - size * py };
|
|
12917
|
+
const bx = 2 * size * cos;
|
|
12918
|
+
const by = 2 * size * sin;
|
|
12919
|
+
const p3 = { x: p2.x - bx, y: p2.y - by };
|
|
12920
|
+
const p4 = { x: p1.x - bx, y: p1.y - by };
|
|
12921
|
+
return `<path d="M ${p1.x} ${p1.y} L ${p2.x} ${p2.y} L ${p3.x} ${p3.y} L ${p4.x} ${p4.y} Z" fill="${fill}" fill-opacity="${fillOpacity}" stroke="${stroke}" stroke-width="1"/>`;
|
|
12922
|
+
}
|
|
12768
12923
|
function generateSvgMarker(marker, from, to, edgeStroke) {
|
|
12769
12924
|
const angle2 = Math.atan2(to.y - from.y, to.x - from.x);
|
|
12770
12925
|
const size = marker.size ?? 12;
|
|
@@ -12778,6 +12933,8 @@ function generateSvgMarker(marker, from, to, edgeStroke) {
|
|
|
12778
12933
|
return generateSvgDiamondMarker(to, angle2, size, fill, fillOpacity, stroke);
|
|
12779
12934
|
case "circle":
|
|
12780
12935
|
return generateSvgCircleMarker(to, angle2, size, fill, fillOpacity, stroke);
|
|
12936
|
+
case "square":
|
|
12937
|
+
return generateSvgSquareMarker(to, angle2, size, fill, fillOpacity, stroke);
|
|
12781
12938
|
case "arrow":
|
|
12782
12939
|
default:
|
|
12783
12940
|
return generateSvgArrowMarker(to, angle2, size, fill, fillOpacity, stroke);
|
|
@@ -13995,6 +14152,7 @@ export {
|
|
|
13995
14152
|
CIcon,
|
|
13996
14153
|
CShape,
|
|
13997
14154
|
CText,
|
|
14155
|
+
ChangeEditablePolylineControlPointsCommand,
|
|
13998
14156
|
CircleNode,
|
|
13999
14157
|
CompositeCommand,
|
|
14000
14158
|
CompositeNode,
|