@metadev/daga 4.2.3 → 4.2.4
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/Changelog.md
CHANGED
|
@@ -6,6 +6,13 @@ List of releases and changes.
|
|
|
6
6
|
|
|
7
7
|
## Next release Joyeuse
|
|
8
8
|
|
|
9
|
+
## v. 4.2.4
|
|
10
|
+
|
|
11
|
+
- Enable configuring line style in shaped looks [#313](https://github.com/metadevpro/daga/pull/313)
|
|
12
|
+
- Enable default values for parameters of looks [#313](https://github.com/metadevpro/daga/pull/313)
|
|
13
|
+
- Use optional `label` fields in `Property` [#314](https://github.com/metadevpro/daga/pull/314)
|
|
14
|
+
- Use default values for `basic` and `editable` fields of `Property` [#315](https://github.com/metadevpro/daga/pull/315)
|
|
15
|
+
|
|
9
16
|
## v. 4.2.3
|
|
10
17
|
|
|
11
18
|
- Enable toggling whether individual sections can be highlighted or entire nodes [#308](https://github.com/metadevpro/daga/pull/308)
|
package/index.cjs.js
CHANGED
|
@@ -1224,8 +1224,9 @@ class DiagramElementSet extends DiagramEntitySet {
|
|
|
1224
1224
|
* @see ValueSet
|
|
1225
1225
|
*/
|
|
1226
1226
|
class Property {
|
|
1227
|
-
constructor(name, type, defaultValue, basic, editable, rootAttribute) {
|
|
1227
|
+
constructor(name, label, type, defaultValue, basic, editable, rootAttribute) {
|
|
1228
1228
|
this.name = name;
|
|
1229
|
+
this.label = label;
|
|
1229
1230
|
this.type = type;
|
|
1230
1231
|
this.defaultValue = defaultValue;
|
|
1231
1232
|
this.basic = basic;
|
|
@@ -1745,7 +1746,7 @@ class ValueSet {
|
|
|
1745
1746
|
this.setRootElementValue(rootAttribute, this.values[key]);
|
|
1746
1747
|
}
|
|
1747
1748
|
}
|
|
1748
|
-
if (property.basic) {
|
|
1749
|
+
if (property.basic !== false) {
|
|
1749
1750
|
this.displayedProperties.push(property);
|
|
1750
1751
|
} else {
|
|
1751
1752
|
this.hiddenProperties.push(property);
|
|
@@ -6254,8 +6255,14 @@ const initializeLook = selection => {
|
|
|
6254
6255
|
selection.filter('.stretchable-image-look').append('image').attr('class', 'bottom-image').attr('preserveAspectRatio', 'none');
|
|
6255
6256
|
selection.filter('.stretchable-image-look').append('image').attr('class', 'bottom-right-image').attr('preserveAspectRatio', 'none');
|
|
6256
6257
|
};
|
|
6258
|
+
const SHAPED_LOOK_DEFAULTS = {
|
|
6259
|
+
fillColor: '#FFFFFF',
|
|
6260
|
+
borderColor: '#000000',
|
|
6261
|
+
borderThickness: 1,
|
|
6262
|
+
borderStyle: exports.LineStyle.Solid
|
|
6263
|
+
};
|
|
6257
6264
|
const updateLook = selection => {
|
|
6258
|
-
selection.filter('.shaped-look').select('path').attr('d', d => generalClosedPath(d.look.shape, 0, 0, d.width, d.height)).attr('fill', d => d.look.fillColor).attr('stroke', d => d.look.borderColor).attr('stroke-width', d => `${d.look.borderThickness}px`);
|
|
6265
|
+
selection.filter('.shaped-look').select('path').attr('d', d => generalClosedPath(d.look.shape || exports.ClosedShape.Rectangle, 0, 0, d.width, d.height)).attr('fill', d => d.look.fillColor || SHAPED_LOOK_DEFAULTS.fillColor).attr('stroke', d => d.look.borderColor || SHAPED_LOOK_DEFAULTS.borderColor).attr('stroke-width', d => `${d.look.borderThickness || SHAPED_LOOK_DEFAULTS.borderThickness}px`).attr('stroke-dasharray', d => lineStyleDasharray(d.look.borderStyle || SHAPED_LOOK_DEFAULTS.borderStyle, d.look.borderThickness || SHAPED_LOOK_DEFAULTS.borderThickness));
|
|
6259
6266
|
selection.filter('.image-look').select('image').attr('x', 0).attr('y', 0).attr('width', d => d.width).attr('height', d => d.height).attr('href', d => d.look.backgroundImage);
|
|
6260
6267
|
selection.filter('.stretchable-image-look').select('image.top-left-image').attr('x', 0).attr('y', 0).attr('width', d => d.look.leftMargin).attr('height', d => d.look.topMargin).attr('href', d => d.look.backgroundImageTopLeft);
|
|
6261
6268
|
selection.filter('.stretchable-image-look').select('image.top-image').attr('x', d => d.look.leftMargin).attr('y', 0).attr('width', d => d.width - d.look.rightMargin - d.look.leftMargin).attr('height', d => d.look.topMargin).attr('href', d => d.look.backgroundImageTop);
|
|
@@ -7920,7 +7927,7 @@ class DiagramCanvas {
|
|
|
7920
7927
|
if (this.canUserPerformAction(exports.DiagramActions.AddConnection) && !d.removed) {
|
|
7921
7928
|
if (this.unfinishedConnection !== undefined) {
|
|
7922
7929
|
const endCoords = [event.x, event.y];
|
|
7923
|
-
(_a = this.unfinishedConnectionTracer) === null || _a === void 0 ? void 0 : _a.attr('d', getConnectionPath(this.unfinishedConnection.look.shape, this.unfinishedConnection.startCoords, endCoords, this.unfinishedConnection.startDirection, this.unfinishedConnection.endDirection, this.unfinishedConnection.look.thickness, (_b = this.unfinishedConnection.startMarkerLook) === null || _b === void 0 ? void 0 : _b.width, (_c = this.unfinishedConnection.endMarkerLook) === null || _c === void 0 ? void 0 : _c.width));
|
|
7930
|
+
(_a = this.unfinishedConnectionTracer) === null || _a === void 0 ? void 0 : _a.attr('d', getConnectionPath(this.unfinishedConnection.look.shape || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.shape, this.unfinishedConnection.startCoords, endCoords, this.unfinishedConnection.startDirection, this.unfinishedConnection.endDirection, this.unfinishedConnection.look.thickness || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.thickness, (_b = this.unfinishedConnection.startMarkerLook) === null || _b === void 0 ? void 0 : _b.width, (_c = this.unfinishedConnection.endMarkerLook) === null || _c === void 0 ? void 0 : _c.width));
|
|
7924
7931
|
const unfinishedConnectionGhostNode = (_d = this.unfinishedConnectionTracer) === null || _d === void 0 ? void 0 : _d.node();
|
|
7925
7932
|
if (unfinishedConnectionGhostNode) {
|
|
7926
7933
|
let margin = 2;
|
|
@@ -8068,14 +8075,14 @@ class DiagramCanvas {
|
|
|
8068
8075
|
enterSelection.select('g.diagram-connection-end-label').append('text').style('user-select', 'none');
|
|
8069
8076
|
mergeSelection.attr('opacity', d => d.removed ? 0.5 : 1).select('path.diagram-connection-path').attr('d', d => {
|
|
8070
8077
|
var _a, _b;
|
|
8071
|
-
return getConnectionPath(d.look.shape, d.startCoords, d.endCoords, d.startDirection, d.endDirection, d.look.thickness, (_a = d.startMarkerLook) === null || _a === void 0 ? void 0 : _a.width, (_b = d.endMarkerLook) === null || _b === void 0 ? void 0 : _b.width);
|
|
8072
|
-
}).attr('marker-start', d => `url(#${d.id}-start-marker)`).attr('marker-end', d => `url(#${d.id}-end-marker)`).attr('stroke', d => d.look.color).attr('stroke-width', d => `${d.look.thickness}px`).attr('stroke-dasharray', d => lineStyleDasharray(d.look.style, d.look.thickness)).attr('fill', 'none');
|
|
8078
|
+
return getConnectionPath(d.look.shape || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.shape, d.startCoords, d.endCoords, d.startDirection, d.endDirection, d.look.thickness || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.thickness, (_a = d.startMarkerLook) === null || _a === void 0 ? void 0 : _a.width, (_b = d.endMarkerLook) === null || _b === void 0 ? void 0 : _b.width);
|
|
8079
|
+
}).attr('marker-start', d => `url(#${d.id}-start-marker)`).attr('marker-end', d => `url(#${d.id}-end-marker)`).attr('stroke', d => d.look.color || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.color).attr('stroke-width', d => `${d.look.thickness}px`).attr('stroke-dasharray', d => lineStyleDasharray(d.look.style || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.style, d.look.thickness || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.thickness)).attr('fill', 'none');
|
|
8073
8080
|
mergeSelection.select('path.diagram-connection-path-box').attr('d', d => {
|
|
8074
8081
|
var _a, _b;
|
|
8075
|
-
return getConnectionPath(d.look.shape, d.startCoords, d.endCoords, d.startDirection, d.endDirection, d.look.thickness, (_a = d.startMarkerLook) === null || _a === void 0 ? void 0 : _a.width, (_b = d.endMarkerLook) === null || _b === void 0 ? void 0 : _b.width);
|
|
8082
|
+
return getConnectionPath(d.look.shape || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.shape, d.startCoords, d.endCoords, d.startDirection, d.endDirection, d.look.thickness || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.thickness, (_a = d.startMarkerLook) === null || _a === void 0 ? void 0 : _a.width, (_b = d.endMarkerLook) === null || _b === void 0 ? void 0 : _b.width);
|
|
8076
8083
|
}).attr('stroke', 'transparent')
|
|
8077
8084
|
// allow generating pointer events even when it is transparent
|
|
8078
|
-
.attr('pointer-events', 'stroke').attr('stroke-width', d => `${d.look.thickness + CONNECTION_PATH_BOX_THICKNESS}px`).attr('stroke-dasharray', d => lineStyleDasharray(d.look.style, d.look.thickness)).attr('fill', 'none');
|
|
8085
|
+
.attr('pointer-events', 'stroke').attr('stroke-width', d => `${(d.look.thickness || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.thickness) + CONNECTION_PATH_BOX_THICKNESS}px`).attr('stroke-dasharray', d => lineStyleDasharray(d.look.style || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.style, d.look.thickness || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.thickness)).attr('fill', 'none');
|
|
8079
8086
|
mergeSelection.data().forEach(connection => {
|
|
8080
8087
|
this.updateConnectionLabelsInView(connection);
|
|
8081
8088
|
this.updateConnectionMarkersInView(connection);
|
package/index.esm.js
CHANGED
|
@@ -1203,8 +1203,9 @@ class DiagramElementSet extends DiagramEntitySet {
|
|
|
1203
1203
|
* @see ValueSet
|
|
1204
1204
|
*/
|
|
1205
1205
|
class Property {
|
|
1206
|
-
constructor(name, type, defaultValue, basic, editable, rootAttribute) {
|
|
1206
|
+
constructor(name, label, type, defaultValue, basic, editable, rootAttribute) {
|
|
1207
1207
|
this.name = name;
|
|
1208
|
+
this.label = label;
|
|
1208
1209
|
this.type = type;
|
|
1209
1210
|
this.defaultValue = defaultValue;
|
|
1210
1211
|
this.basic = basic;
|
|
@@ -1724,7 +1725,7 @@ class ValueSet {
|
|
|
1724
1725
|
this.setRootElementValue(rootAttribute, this.values[key]);
|
|
1725
1726
|
}
|
|
1726
1727
|
}
|
|
1727
|
-
if (property.basic) {
|
|
1728
|
+
if (property.basic !== false) {
|
|
1728
1729
|
this.displayedProperties.push(property);
|
|
1729
1730
|
} else {
|
|
1730
1731
|
this.hiddenProperties.push(property);
|
|
@@ -6233,8 +6234,14 @@ const initializeLook = selection => {
|
|
|
6233
6234
|
selection.filter('.stretchable-image-look').append('image').attr('class', 'bottom-image').attr('preserveAspectRatio', 'none');
|
|
6234
6235
|
selection.filter('.stretchable-image-look').append('image').attr('class', 'bottom-right-image').attr('preserveAspectRatio', 'none');
|
|
6235
6236
|
};
|
|
6237
|
+
const SHAPED_LOOK_DEFAULTS = {
|
|
6238
|
+
fillColor: '#FFFFFF',
|
|
6239
|
+
borderColor: '#000000',
|
|
6240
|
+
borderThickness: 1,
|
|
6241
|
+
borderStyle: LineStyle.Solid
|
|
6242
|
+
};
|
|
6236
6243
|
const updateLook = selection => {
|
|
6237
|
-
selection.filter('.shaped-look').select('path').attr('d', d => generalClosedPath(d.look.shape, 0, 0, d.width, d.height)).attr('fill', d => d.look.fillColor).attr('stroke', d => d.look.borderColor).attr('stroke-width', d => `${d.look.borderThickness}px`);
|
|
6244
|
+
selection.filter('.shaped-look').select('path').attr('d', d => generalClosedPath(d.look.shape || ClosedShape.Rectangle, 0, 0, d.width, d.height)).attr('fill', d => d.look.fillColor || SHAPED_LOOK_DEFAULTS.fillColor).attr('stroke', d => d.look.borderColor || SHAPED_LOOK_DEFAULTS.borderColor).attr('stroke-width', d => `${d.look.borderThickness || SHAPED_LOOK_DEFAULTS.borderThickness}px`).attr('stroke-dasharray', d => lineStyleDasharray(d.look.borderStyle || SHAPED_LOOK_DEFAULTS.borderStyle, d.look.borderThickness || SHAPED_LOOK_DEFAULTS.borderThickness));
|
|
6238
6245
|
selection.filter('.image-look').select('image').attr('x', 0).attr('y', 0).attr('width', d => d.width).attr('height', d => d.height).attr('href', d => d.look.backgroundImage);
|
|
6239
6246
|
selection.filter('.stretchable-image-look').select('image.top-left-image').attr('x', 0).attr('y', 0).attr('width', d => d.look.leftMargin).attr('height', d => d.look.topMargin).attr('href', d => d.look.backgroundImageTopLeft);
|
|
6240
6247
|
selection.filter('.stretchable-image-look').select('image.top-image').attr('x', d => d.look.leftMargin).attr('y', 0).attr('width', d => d.width - d.look.rightMargin - d.look.leftMargin).attr('height', d => d.look.topMargin).attr('href', d => d.look.backgroundImageTop);
|
|
@@ -7899,7 +7906,7 @@ class DiagramCanvas {
|
|
|
7899
7906
|
if (this.canUserPerformAction(DiagramActions.AddConnection) && !d.removed) {
|
|
7900
7907
|
if (this.unfinishedConnection !== undefined) {
|
|
7901
7908
|
const endCoords = [event.x, event.y];
|
|
7902
|
-
(_a = this.unfinishedConnectionTracer) === null || _a === void 0 ? void 0 : _a.attr('d', getConnectionPath(this.unfinishedConnection.look.shape, this.unfinishedConnection.startCoords, endCoords, this.unfinishedConnection.startDirection, this.unfinishedConnection.endDirection, this.unfinishedConnection.look.thickness, (_b = this.unfinishedConnection.startMarkerLook) === null || _b === void 0 ? void 0 : _b.width, (_c = this.unfinishedConnection.endMarkerLook) === null || _c === void 0 ? void 0 : _c.width));
|
|
7909
|
+
(_a = this.unfinishedConnectionTracer) === null || _a === void 0 ? void 0 : _a.attr('d', getConnectionPath(this.unfinishedConnection.look.shape || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.shape, this.unfinishedConnection.startCoords, endCoords, this.unfinishedConnection.startDirection, this.unfinishedConnection.endDirection, this.unfinishedConnection.look.thickness || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.thickness, (_b = this.unfinishedConnection.startMarkerLook) === null || _b === void 0 ? void 0 : _b.width, (_c = this.unfinishedConnection.endMarkerLook) === null || _c === void 0 ? void 0 : _c.width));
|
|
7903
7910
|
const unfinishedConnectionGhostNode = (_d = this.unfinishedConnectionTracer) === null || _d === void 0 ? void 0 : _d.node();
|
|
7904
7911
|
if (unfinishedConnectionGhostNode) {
|
|
7905
7912
|
let margin = 2;
|
|
@@ -8047,14 +8054,14 @@ class DiagramCanvas {
|
|
|
8047
8054
|
enterSelection.select('g.diagram-connection-end-label').append('text').style('user-select', 'none');
|
|
8048
8055
|
mergeSelection.attr('opacity', d => d.removed ? 0.5 : 1).select('path.diagram-connection-path').attr('d', d => {
|
|
8049
8056
|
var _a, _b;
|
|
8050
|
-
return getConnectionPath(d.look.shape, d.startCoords, d.endCoords, d.startDirection, d.endDirection, d.look.thickness, (_a = d.startMarkerLook) === null || _a === void 0 ? void 0 : _a.width, (_b = d.endMarkerLook) === null || _b === void 0 ? void 0 : _b.width);
|
|
8051
|
-
}).attr('marker-start', d => `url(#${d.id}-start-marker)`).attr('marker-end', d => `url(#${d.id}-end-marker)`).attr('stroke', d => d.look.color).attr('stroke-width', d => `${d.look.thickness}px`).attr('stroke-dasharray', d => lineStyleDasharray(d.look.style, d.look.thickness)).attr('fill', 'none');
|
|
8057
|
+
return getConnectionPath(d.look.shape || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.shape, d.startCoords, d.endCoords, d.startDirection, d.endDirection, d.look.thickness || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.thickness, (_a = d.startMarkerLook) === null || _a === void 0 ? void 0 : _a.width, (_b = d.endMarkerLook) === null || _b === void 0 ? void 0 : _b.width);
|
|
8058
|
+
}).attr('marker-start', d => `url(#${d.id}-start-marker)`).attr('marker-end', d => `url(#${d.id}-end-marker)`).attr('stroke', d => d.look.color || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.color).attr('stroke-width', d => `${d.look.thickness}px`).attr('stroke-dasharray', d => lineStyleDasharray(d.look.style || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.style, d.look.thickness || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.thickness)).attr('fill', 'none');
|
|
8052
8059
|
mergeSelection.select('path.diagram-connection-path-box').attr('d', d => {
|
|
8053
8060
|
var _a, _b;
|
|
8054
|
-
return getConnectionPath(d.look.shape, d.startCoords, d.endCoords, d.startDirection, d.endDirection, d.look.thickness, (_a = d.startMarkerLook) === null || _a === void 0 ? void 0 : _a.width, (_b = d.endMarkerLook) === null || _b === void 0 ? void 0 : _b.width);
|
|
8061
|
+
return getConnectionPath(d.look.shape || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.shape, d.startCoords, d.endCoords, d.startDirection, d.endDirection, d.look.thickness || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.thickness, (_a = d.startMarkerLook) === null || _a === void 0 ? void 0 : _a.width, (_b = d.endMarkerLook) === null || _b === void 0 ? void 0 : _b.width);
|
|
8055
8062
|
}).attr('stroke', 'transparent')
|
|
8056
8063
|
// allow generating pointer events even when it is transparent
|
|
8057
|
-
.attr('pointer-events', 'stroke').attr('stroke-width', d => `${d.look.thickness + CONNECTION_PATH_BOX_THICKNESS}px`).attr('stroke-dasharray', d => lineStyleDasharray(d.look.style, d.look.thickness)).attr('fill', 'none');
|
|
8064
|
+
.attr('pointer-events', 'stroke').attr('stroke-width', d => `${(d.look.thickness || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.thickness) + CONNECTION_PATH_BOX_THICKNESS}px`).attr('stroke-dasharray', d => lineStyleDasharray(d.look.style || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.style, d.look.thickness || DIAGRAM_CONNECTION_TYPE_DEFAULTS.look.thickness)).attr('fill', 'none');
|
|
8058
8065
|
mergeSelection.data().forEach(connection => {
|
|
8059
8066
|
this.updateConnectionLabelsInView(connection);
|
|
8060
8067
|
this.updateConnectionMarkersInView(connection);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as d3 from 'd3';
|
|
2
2
|
import { Point } from '../../util/canvas-util';
|
|
3
|
-
import { LineFunction, LineShape } from '../../util/line';
|
|
3
|
+
import { LineFunction, LineShape, LineStyle } from '../../util/line';
|
|
4
4
|
import { CursorStyle } from '../../util/style';
|
|
5
5
|
import { Side } from '../../util/svg-util';
|
|
6
6
|
import { DiagramField } from '../model/diagram-field';
|
|
@@ -24,6 +24,12 @@ export declare const getConnectionPath: (shape: LineShape | LineFunction, startC
|
|
|
24
24
|
export declare const setCursorStyle: (style?: CursorStyle) => void;
|
|
25
25
|
export declare const getRelatedNodeOrItself: (element: DiagramNode | DiagramSection | DiagramPort | DiagramField) => DiagramNode | DiagramSection | DiagramPort | DiagramField;
|
|
26
26
|
export declare const initializeLook: (selection: d3.Selection<SVGGElement, DiagramNode | DiagramSection | DiagramPort, d3.BaseType, unknown>) => void;
|
|
27
|
+
export declare const SHAPED_LOOK_DEFAULTS: {
|
|
28
|
+
fillColor: string;
|
|
29
|
+
borderColor: string;
|
|
30
|
+
borderThickness: number;
|
|
31
|
+
borderStyle: LineStyle;
|
|
32
|
+
};
|
|
27
33
|
export declare const updateLook: (selection: d3.Selection<SVGGElement, DiagramNode | DiagramSection | DiagramPort, d3.BaseType, unknown>) => void;
|
|
28
34
|
export declare const GRID_DEFAULTS: {
|
|
29
35
|
enabled: boolean;
|
|
@@ -71,20 +71,29 @@ export interface ShapedLook extends Look {
|
|
|
71
71
|
lookType: 'shaped-look';
|
|
72
72
|
/**
|
|
73
73
|
* Shape of nodes using this look.
|
|
74
|
+
* @default 'rectangle'
|
|
74
75
|
*/
|
|
75
|
-
shape
|
|
76
|
+
shape?: ClosedShape | ShapeFunction;
|
|
76
77
|
/**
|
|
77
78
|
* Background color of this look.
|
|
79
|
+
* @default '#FFFFFF'
|
|
78
80
|
*/
|
|
79
|
-
fillColor
|
|
81
|
+
fillColor?: string;
|
|
80
82
|
/**
|
|
81
83
|
* Border color of this look.
|
|
84
|
+
* @default '#000000'
|
|
82
85
|
*/
|
|
83
|
-
borderColor
|
|
86
|
+
borderColor?: string;
|
|
84
87
|
/**
|
|
85
88
|
* Border thickness of this look in diagram units.
|
|
89
|
+
* @default 1
|
|
90
|
+
*/
|
|
91
|
+
borderThickness?: number;
|
|
92
|
+
/**
|
|
93
|
+
* Border style of this look.
|
|
94
|
+
* @default 'solid'
|
|
86
95
|
*/
|
|
87
|
-
|
|
96
|
+
borderStyle?: LineStyle;
|
|
88
97
|
}
|
|
89
98
|
/**
|
|
90
99
|
* Configuration for a look given by an image.
|
|
@@ -201,20 +210,20 @@ export interface ConnectionLook extends Look {
|
|
|
201
210
|
* Color of the line of connections of this type.
|
|
202
211
|
* @default '#000000'
|
|
203
212
|
*/
|
|
204
|
-
color
|
|
213
|
+
color?: string;
|
|
205
214
|
/**
|
|
206
215
|
* Thickness of the line of connections of this type in diagram units.
|
|
207
216
|
* @default 1
|
|
208
217
|
*/
|
|
209
|
-
thickness
|
|
218
|
+
thickness?: number;
|
|
210
219
|
/**
|
|
211
220
|
* Shape of the line of connections of this type.
|
|
212
221
|
* @default 'straight'
|
|
213
222
|
*/
|
|
214
|
-
shape
|
|
223
|
+
shape?: LineShape | LineFunction;
|
|
215
224
|
/**
|
|
216
225
|
* Style of the line of connections of this type.
|
|
217
226
|
* @default 'solid'
|
|
218
227
|
*/
|
|
219
|
-
style
|
|
228
|
+
style?: LineStyle;
|
|
220
229
|
}
|
|
@@ -6,9 +6,13 @@
|
|
|
6
6
|
*/
|
|
7
7
|
export declare class Property {
|
|
8
8
|
/**
|
|
9
|
-
* The name of this property. Used to distinguish this property from others.
|
|
9
|
+
* The name of this property. Used to distinguish this property from others. Must be unique.
|
|
10
10
|
*/
|
|
11
11
|
name: string;
|
|
12
|
+
/**
|
|
13
|
+
* The label of this property. Used when displaying this property to the user.
|
|
14
|
+
*/
|
|
15
|
+
label?: string;
|
|
12
16
|
/**
|
|
13
17
|
* The type of this property, which indicates the possible values that this property can have.
|
|
14
18
|
*/
|
|
@@ -20,13 +24,15 @@ export declare class Property {
|
|
|
20
24
|
defaultValue?: unknown;
|
|
21
25
|
/**
|
|
22
26
|
* Whether this property should always appear in the property editor component.
|
|
27
|
+
* @default true
|
|
23
28
|
* @see PropertyEditorComponent
|
|
24
29
|
*/
|
|
25
|
-
basic
|
|
30
|
+
basic?: boolean;
|
|
26
31
|
/**
|
|
27
32
|
* Whether the value of this property can be edited.
|
|
33
|
+
* @default true
|
|
28
34
|
*/
|
|
29
|
-
editable
|
|
35
|
+
editable?: boolean;
|
|
30
36
|
/**
|
|
31
37
|
* Which attribute of the parent component the value of this property is linked to. By default, it is not linked to any.
|
|
32
38
|
* @default undefined
|
|
@@ -44,7 +50,7 @@ export declare class Property {
|
|
|
44
50
|
* @default undefined
|
|
45
51
|
*/
|
|
46
52
|
properties?: Property[];
|
|
47
|
-
constructor(name: string, type: Type, defaultValue: unknown, basic: boolean, editable: boolean, rootAttribute?: string[] | string);
|
|
53
|
+
constructor(name: string, label: string | undefined, type: Type, defaultValue: unknown, basic: boolean | undefined, editable: boolean | undefined, rootAttribute?: string[] | string);
|
|
48
54
|
}
|
|
49
55
|
/**
|
|
50
56
|
* Each of the possible values that a property of type option can have.
|