@graphty/graphty-element 2.3.0 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +4 -3
- package/dist/ai.js +115 -222
- package/dist/catalog.js +46 -44
- package/dist/chunks/{AiManager-Bd_r1Hei.js → AiManager-BD9XK30e.js} +793 -654
- package/dist/chunks/{DataSource-bt0DhBjG.js → DataSource-B8vf2uhW.js} +3 -3
- package/dist/chunks/{GraphSession-iNyKm7Ds.js → GraphSession-dcwOjGJh.js} +3028 -2918
- package/dist/chunks/{GraphStyle-D0PXnZKu.js → GraphStyle-Cwr55SAE.js} +5 -2
- package/dist/chunks/{GraphtyError-BwcnblTH.js → GraphtyError-B93WRH3e.js} +8 -6
- package/dist/chunks/{GraphtyLogger-5KEttFUo.js → GraphtyLogger-CqOVV13Y.js} +2 -2
- package/dist/chunks/{NodeStyle-DKj7HjMJ.js → NodeStyle-CtmA7dXi.js} +16 -14
- package/dist/chunks/{VoiceInputAdapter-DszYl6Ha.js → VoiceInputAdapter-D0tHHi9G.js} +1 -1
- package/dist/chunks/{XRPivotCameraController-XtxbbZ-D.js → XRPivotCameraController-DTfhvhHz.js} +2 -2
- package/dist/chunks/algorithms-BF0X6RPw.js +3627 -0
- package/dist/chunks/{capability-check-BqIEXcun.js → capability-check-BJzlK4oL.js} +1 -1
- package/dist/chunks/{detect-DM29BEaB.js → detect-vJxK7n0D.js} +2 -2
- package/dist/chunks/{format-detection-BEdmtvsy.js → format-detection-C80TLQ2e.js} +1 -1
- package/dist/chunks/{index-CD0_RJv-.js → index-2xkq7wyD.js} +11482 -10971
- package/dist/chunks/optionsFromZod-BuTOFgVM.js +2572 -0
- package/dist/chunks/paletteRegistry-A63C71Gn.js +1155 -0
- package/dist/chunks/{registry-CSba5QGJ.js → registry-jB46Gmeb.js} +1 -1
- package/dist/chunks/scales-B2d-7Bf0.js +3220 -0
- package/dist/chunks/{types-B7bX5c0K.js → types-C_c53VgR.js} +31 -26
- package/dist/commands.d.ts +4 -0
- package/dist/custom-elements.json +1 -1
- package/dist/extend.js +45 -45
- package/dist/graphty-catalog.json +245 -12
- package/dist/graphty.bundle.js +40762 -39403
- package/dist/graphty.js +33 -33
- package/dist/logging.js +2 -2
- package/dist/schema.d.ts +1 -1
- package/dist/schema.js +42 -40
- package/dist/session.d.ts +1 -1
- package/dist/session.js +29 -30
- package/dist/src/Graph.d.ts +112 -10
- package/dist/src/acceleration/AccelerationController.d.ts +14 -3
- package/dist/src/acceleration/types.d.ts +78 -0
- package/dist/src/algorithms/KCoreAlgorithm.d.ts +26 -0
- package/dist/src/algorithms/LinkPredictionAlgorithm.d.ts +41 -0
- package/dist/src/camera/builtins.d.ts +14 -1
- package/dist/src/camera/types.d.ts +7 -0
- package/dist/src/cameras/CameraManager.d.ts +13 -0
- package/dist/src/cameras/OrbitCameraController.d.ts +9 -0
- package/dist/src/catalog/algorithms.d.ts +5 -5
- package/dist/src/catalog/index.d.ts +2 -2
- package/dist/src/catalog/layouts.d.ts +7 -6
- package/dist/src/catalog/types.d.ts +87 -6
- package/dist/src/config/EdgeStyle.d.ts +35 -0
- package/dist/src/config/GraphStyle.d.ts +5 -1
- package/dist/src/config/StyleTemplate.d.ts +2 -2
- package/dist/src/config/index.d.ts +1 -1
- package/dist/src/data/GEXFDataSource.d.ts +23 -0
- package/dist/src/errors/codes.d.ts +14 -0
- package/dist/src/events.d.ts +30 -0
- package/dist/src/graphty-element.d.ts +77 -32
- package/dist/src/layout/GridLayoutEngine.d.ts +37 -0
- package/dist/src/layout/LayoutEngine.d.ts +7 -7
- package/dist/src/layout/NGraphLayoutEngine.d.ts +2 -0
- package/dist/src/layout/RadialLayoutEngine.d.ts +37 -0
- package/dist/src/layout/SimulationLayoutEngine.d.ts +12 -0
- package/dist/src/managers/DataManager.d.ts +69 -2
- package/dist/src/managers/EventManager.d.ts +10 -4
- package/dist/src/managers/GraphContext.d.ts +2 -1
- package/dist/src/managers/LayoutManager.d.ts +30 -3
- package/dist/src/managers/StylePainter.d.ts +9 -0
- package/dist/src/managers/UpdateManager.d.ts +5 -0
- package/dist/src/meshes/MeshCache.d.ts +18 -0
- package/dist/src/meshes/NodeEffects.d.ts +16 -11
- package/dist/src/meshes/NodeMesh.d.ts +2 -2
- package/dist/src/meshes/RichTextParser.d.ts +26 -0
- package/dist/src/meshes/RichTextRenderer.d.ts +0 -1
- package/dist/src/session/cost/estimate.d.ts +1 -1
- package/dist/src/session/layout.d.ts +3 -3
- package/dist/src/session/results/index.d.ts +1 -1
- package/dist/src/session/results/statistics.d.ts +8 -1
- package/dist/src/session/results/types.d.ts +33 -0
- package/dist/src/session/runs/RunsApi.d.ts +1 -1
- package/dist/src/session/selection/targets.d.ts +4 -1
- package/dist/src/session/styles/StylesApi.d.ts +6 -0
- package/dist/src/session/styles/intern.d.ts +26 -5
- package/dist/src/session/styles/predicate.d.ts +26 -1
- package/dist/src/session/styles/repaint.d.ts +13 -1
- package/dist/src/session/styles/selector.d.ts +13 -1
- package/dist/src/session/styles/sources.d.ts +9 -0
- package/dist/src/session/types.d.ts +6 -6
- package/dist/webgpu.js +2 -2
- package/package.json +6 -6
- package/dist/chunks/Algorithm-RQ629NLb.js +0 -494
- package/dist/chunks/cameras-ii4vngYY.js +0 -435
- package/dist/chunks/paletteRegistry-DnWHQsAD.js +0 -3166
- package/dist/chunks/scales-DyuwlJKI.js +0 -6087
|
@@ -1,435 +0,0 @@
|
|
|
1
|
-
import { c as y } from "./common-DWNKjpH_.js";
|
|
2
|
-
import { N as b, E as g } from "./NodeStyle-DKj7HjMJ.js";
|
|
3
|
-
import { j as f, e as N } from "./Algorithm-RQ629NLb.js";
|
|
4
|
-
var L = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
|
|
5
|
-
function z(e) {
|
|
6
|
-
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
|
|
7
|
-
}
|
|
8
|
-
const T = /^#?(?:[\da-f]{3,4}|[\da-f]{6}|[\da-f]{8})$/i;
|
|
9
|
-
function s(e) {
|
|
10
|
-
return Number.isFinite(e) ? Math.max(0, Math.min(255, Math.round(e))) : 0;
|
|
11
|
-
}
|
|
12
|
-
function i(e) {
|
|
13
|
-
return e.toString(16).padStart(2, "0");
|
|
14
|
-
}
|
|
15
|
-
function S(e) {
|
|
16
|
-
if (!T.test(e))
|
|
17
|
-
return null;
|
|
18
|
-
const a = e.startsWith("#") ? e.slice(1) : e, t = a.length <= 4, n = (r) => {
|
|
19
|
-
const m = t ? a[r].repeat(2) : a.slice(r * 2, r * 2 + 2);
|
|
20
|
-
return parseInt(m, 16);
|
|
21
|
-
}, o = a.length === 4 || a.length === 8;
|
|
22
|
-
return {
|
|
23
|
-
r: n(0),
|
|
24
|
-
g: n(1),
|
|
25
|
-
b: n(2),
|
|
26
|
-
a: o ? n(3) / 255 : 1
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
function _(e) {
|
|
30
|
-
return typeof e != "object" || e === null || !("hex" in e) ? null : e;
|
|
31
|
-
}
|
|
32
|
-
function P(e) {
|
|
33
|
-
if (e == null)
|
|
34
|
-
return null;
|
|
35
|
-
if (typeof e == "object")
|
|
36
|
-
return c(e);
|
|
37
|
-
const a = S(e);
|
|
38
|
-
if (a !== null)
|
|
39
|
-
return c(a);
|
|
40
|
-
try {
|
|
41
|
-
const t = y(e);
|
|
42
|
-
return t === void 0 ? null : P(t);
|
|
43
|
-
} catch {
|
|
44
|
-
return null;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
function c(e) {
|
|
48
|
-
const a = s(e.r), t = s(e.g), n = s(e.b), o = Number.isFinite(e.a) ? Math.max(0, Math.min(1, e.a)) : 1, r = `#${i(a)}${i(t)}${i(n)}`;
|
|
49
|
-
return { r: a, g: t, b: n, a: o, hex: o === 1 ? r : `${r}${i(Math.round(o * 255))}` };
|
|
50
|
-
}
|
|
51
|
-
const A = b.options, x = g.shape.line.unwrap().shape.type.unwrap().options, h = g.shape.arrowHead.unwrap().shape.type.unwrap().unwrap().options, C = "An outline has a colour and no width. Babylon draws it with a highlight LAYER, and the stroke's blur size belongs to that layer rather than to a mesh, so every outline on screen is drawn at one width whatever a style asks for -- which is why the node style declares no outline width to ask with. The outline's COLOUR is per style; a width per style would need one highlight layer per width, at a full-screen pass each.", d = 'A caption hangs from the cap at that end of the edge, so an end drawn with no arrow carries none: a tail caption needs `edge.arrowTail` set to something other than "none". The words are what switch a caption on, so a layer that writes only the caption\'s appearance and no words draws nothing, exactly as `node.labelStyle` draws nothing without `node.label`.', p = "A tooltip is drawn on hover and only on hover, so a graph at rest shows none: a layer that writes one changes nothing until a reader points at the node. The words are what switch it on, so a layer that writes only the tooltip's appearance and no words draws nothing, exactly as `node.labelStyle` draws nothing without `node.label`. Only a NODE has a tooltip; `edge.tooltip` was withdrawn in 2.0 because an edge cannot be hovered.", l = {
|
|
52
|
-
"node.color": {
|
|
53
|
-
channel: "node.color",
|
|
54
|
-
target: "node",
|
|
55
|
-
plainName: "Node Colour",
|
|
56
|
-
accepts: "color",
|
|
57
|
-
stylePath: "texture.color",
|
|
58
|
-
renderable: !0
|
|
59
|
-
},
|
|
60
|
-
"node.size": {
|
|
61
|
-
channel: "node.size",
|
|
62
|
-
target: "node",
|
|
63
|
-
plainName: "Node Size",
|
|
64
|
-
accepts: "number",
|
|
65
|
-
min: 0,
|
|
66
|
-
stylePath: "shape.size",
|
|
67
|
-
renderable: !0
|
|
68
|
-
},
|
|
69
|
-
"node.shape": {
|
|
70
|
-
channel: "node.shape",
|
|
71
|
-
target: "node",
|
|
72
|
-
plainName: "Node Shape",
|
|
73
|
-
accepts: "enum",
|
|
74
|
-
values: A,
|
|
75
|
-
stylePath: "shape.type",
|
|
76
|
-
renderable: !0
|
|
77
|
-
},
|
|
78
|
-
"node.label": {
|
|
79
|
-
channel: "node.label",
|
|
80
|
-
target: "node",
|
|
81
|
-
plainName: "Node Label",
|
|
82
|
-
accepts: "text",
|
|
83
|
-
stylePath: "label.text",
|
|
84
|
-
renderable: !0
|
|
85
|
-
},
|
|
86
|
-
"node.labelStyle": {
|
|
87
|
-
channel: "node.labelStyle",
|
|
88
|
-
target: "node",
|
|
89
|
-
plainName: "Node Label Style",
|
|
90
|
-
accepts: "labelStyle",
|
|
91
|
-
stylePath: "label",
|
|
92
|
-
renderable: !0
|
|
93
|
-
},
|
|
94
|
-
"node.tooltip": {
|
|
95
|
-
channel: "node.tooltip",
|
|
96
|
-
target: "node",
|
|
97
|
-
plainName: "Node Tooltip",
|
|
98
|
-
accepts: "text",
|
|
99
|
-
stylePath: "tooltip.text",
|
|
100
|
-
renderable: !0,
|
|
101
|
-
caveat: p
|
|
102
|
-
},
|
|
103
|
-
"node.tooltipStyle": {
|
|
104
|
-
channel: "node.tooltipStyle",
|
|
105
|
-
target: "node",
|
|
106
|
-
plainName: "Node Tooltip Style",
|
|
107
|
-
accepts: "labelStyle",
|
|
108
|
-
stylePath: "tooltip",
|
|
109
|
-
renderable: !0,
|
|
110
|
-
caveat: p
|
|
111
|
-
},
|
|
112
|
-
"node.opacity": {
|
|
113
|
-
channel: "node.opacity",
|
|
114
|
-
target: "node",
|
|
115
|
-
plainName: "Node Opacity",
|
|
116
|
-
accepts: "number",
|
|
117
|
-
min: 0,
|
|
118
|
-
max: 1,
|
|
119
|
-
stylePath: "texture.color.opacity",
|
|
120
|
-
renderable: !0
|
|
121
|
-
},
|
|
122
|
-
"node.outline": {
|
|
123
|
-
channel: "node.outline",
|
|
124
|
-
target: "node",
|
|
125
|
-
plainName: "Node Outline",
|
|
126
|
-
accepts: "color",
|
|
127
|
-
stylePath: "effect.outline.color",
|
|
128
|
-
renderable: !0,
|
|
129
|
-
caveat: C
|
|
130
|
-
},
|
|
131
|
-
"node.glow": {
|
|
132
|
-
channel: "node.glow",
|
|
133
|
-
target: "node",
|
|
134
|
-
plainName: "Node Glow",
|
|
135
|
-
accepts: "color",
|
|
136
|
-
stylePath: "effect.glow.color",
|
|
137
|
-
renderable: !0
|
|
138
|
-
},
|
|
139
|
-
"node.glowStrength": {
|
|
140
|
-
channel: "node.glowStrength",
|
|
141
|
-
target: "node",
|
|
142
|
-
plainName: "Node Glow Strength",
|
|
143
|
-
accepts: "number",
|
|
144
|
-
min: 0,
|
|
145
|
-
stylePath: "effect.glow.strength",
|
|
146
|
-
renderable: !0
|
|
147
|
-
},
|
|
148
|
-
"node.wireframe": {
|
|
149
|
-
channel: "node.wireframe",
|
|
150
|
-
target: "node",
|
|
151
|
-
plainName: "Node Wireframe",
|
|
152
|
-
accepts: "boolean",
|
|
153
|
-
stylePath: "effect.wireframe",
|
|
154
|
-
renderable: !0
|
|
155
|
-
},
|
|
156
|
-
"node.flat": {
|
|
157
|
-
channel: "node.flat",
|
|
158
|
-
target: "node",
|
|
159
|
-
plainName: "Node Flat Shading",
|
|
160
|
-
accepts: "boolean",
|
|
161
|
-
stylePath: "effect.flatShaded",
|
|
162
|
-
renderable: !0
|
|
163
|
-
},
|
|
164
|
-
"node.marker": {
|
|
165
|
-
channel: "node.marker",
|
|
166
|
-
target: "node",
|
|
167
|
-
plainName: "Node Marker",
|
|
168
|
-
accepts: "nothing",
|
|
169
|
-
stylePath: "texture.icon",
|
|
170
|
-
renderable: !1,
|
|
171
|
-
caveat: "The element draws no marker. texture.icon is in the node schema and no renderer reads it, and the badge vocabulary belongs to a label rather than to a node."
|
|
172
|
-
},
|
|
173
|
-
"edge.color": {
|
|
174
|
-
channel: "edge.color",
|
|
175
|
-
target: "edge",
|
|
176
|
-
plainName: "Edge Colour",
|
|
177
|
-
accepts: "color",
|
|
178
|
-
stylePath: "line.color",
|
|
179
|
-
renderable: !0
|
|
180
|
-
},
|
|
181
|
-
"edge.width": {
|
|
182
|
-
channel: "edge.width",
|
|
183
|
-
target: "edge",
|
|
184
|
-
plainName: "Edge Width",
|
|
185
|
-
accepts: "number",
|
|
186
|
-
min: 0,
|
|
187
|
-
stylePath: "line.width",
|
|
188
|
-
renderable: !0
|
|
189
|
-
},
|
|
190
|
-
"edge.opacity": {
|
|
191
|
-
channel: "edge.opacity",
|
|
192
|
-
target: "edge",
|
|
193
|
-
plainName: "Edge Opacity",
|
|
194
|
-
accepts: "number",
|
|
195
|
-
min: 0,
|
|
196
|
-
max: 1,
|
|
197
|
-
stylePath: "line.opacity",
|
|
198
|
-
renderable: !0
|
|
199
|
-
},
|
|
200
|
-
"edge.style": {
|
|
201
|
-
channel: "edge.style",
|
|
202
|
-
target: "edge",
|
|
203
|
-
plainName: "Edge Line Pattern",
|
|
204
|
-
accepts: "enum",
|
|
205
|
-
values: x,
|
|
206
|
-
stylePath: "line.type",
|
|
207
|
-
renderable: !0
|
|
208
|
-
},
|
|
209
|
-
"edge.patternCount": {
|
|
210
|
-
channel: "edge.patternCount",
|
|
211
|
-
target: "edge",
|
|
212
|
-
plainName: "Edge Pattern Count",
|
|
213
|
-
accepts: "number",
|
|
214
|
-
min: 2,
|
|
215
|
-
stylePath: "line.patternCount",
|
|
216
|
-
renderable: !0,
|
|
217
|
-
caveat: "A cap on how many dots or dashes a patterned edge draws, and it applies to a patterned line only: a solid line has no elements to count, and zigzag and sinewave always tile the whole edge, so they ignore it. Left unset, the spacing rule decides, so a long edge or a thin one draws more of them."
|
|
218
|
-
},
|
|
219
|
-
"edge.curvature": {
|
|
220
|
-
channel: "edge.curvature",
|
|
221
|
-
target: "edge",
|
|
222
|
-
plainName: "Edge Curve",
|
|
223
|
-
accepts: "boolean",
|
|
224
|
-
stylePath: "line.bezier",
|
|
225
|
-
renderable: !0,
|
|
226
|
-
caveat: "A switch, not an amount: the renderer offsets its control points by a fixed fraction of the edge's length, so how far an edge bows cannot be set."
|
|
227
|
-
},
|
|
228
|
-
"edge.arrowHead": {
|
|
229
|
-
channel: "edge.arrowHead",
|
|
230
|
-
target: "edge",
|
|
231
|
-
plainName: "Arrow Head",
|
|
232
|
-
accepts: "enum",
|
|
233
|
-
values: h,
|
|
234
|
-
stylePath: "arrowHead.type",
|
|
235
|
-
renderable: !0
|
|
236
|
-
},
|
|
237
|
-
"edge.arrowHeadSize": {
|
|
238
|
-
channel: "edge.arrowHeadSize",
|
|
239
|
-
target: "edge",
|
|
240
|
-
plainName: "Arrow Head Size",
|
|
241
|
-
accepts: "number",
|
|
242
|
-
min: 0,
|
|
243
|
-
stylePath: "arrowHead.size",
|
|
244
|
-
renderable: !0
|
|
245
|
-
},
|
|
246
|
-
"edge.arrowHeadColor": {
|
|
247
|
-
channel: "edge.arrowHeadColor",
|
|
248
|
-
target: "edge",
|
|
249
|
-
plainName: "Arrow Head Colour",
|
|
250
|
-
accepts: "color",
|
|
251
|
-
stylePath: "arrowHead.color",
|
|
252
|
-
renderable: !0
|
|
253
|
-
},
|
|
254
|
-
"edge.arrowHeadOpacity": {
|
|
255
|
-
channel: "edge.arrowHeadOpacity",
|
|
256
|
-
target: "edge",
|
|
257
|
-
plainName: "Arrow Head Opacity",
|
|
258
|
-
accepts: "number",
|
|
259
|
-
min: 0,
|
|
260
|
-
max: 1,
|
|
261
|
-
stylePath: "arrowHead.opacity",
|
|
262
|
-
renderable: !0
|
|
263
|
-
},
|
|
264
|
-
"edge.arrowHeadText": {
|
|
265
|
-
channel: "edge.arrowHeadText",
|
|
266
|
-
target: "edge",
|
|
267
|
-
plainName: "Arrow Head Caption",
|
|
268
|
-
accepts: "text",
|
|
269
|
-
stylePath: "arrowHead.text.text",
|
|
270
|
-
renderable: !0,
|
|
271
|
-
caveat: d
|
|
272
|
-
},
|
|
273
|
-
"edge.arrowHeadTextStyle": {
|
|
274
|
-
channel: "edge.arrowHeadTextStyle",
|
|
275
|
-
target: "edge",
|
|
276
|
-
plainName: "Arrow Head Caption Style",
|
|
277
|
-
accepts: "labelStyle",
|
|
278
|
-
stylePath: "arrowHead.text",
|
|
279
|
-
renderable: !0,
|
|
280
|
-
caveat: d
|
|
281
|
-
},
|
|
282
|
-
"edge.arrowTail": {
|
|
283
|
-
channel: "edge.arrowTail",
|
|
284
|
-
target: "edge",
|
|
285
|
-
plainName: "Arrow Tail",
|
|
286
|
-
accepts: "enum",
|
|
287
|
-
values: h,
|
|
288
|
-
stylePath: "arrowTail.type",
|
|
289
|
-
renderable: !0
|
|
290
|
-
},
|
|
291
|
-
"edge.arrowTailSize": {
|
|
292
|
-
channel: "edge.arrowTailSize",
|
|
293
|
-
target: "edge",
|
|
294
|
-
plainName: "Arrow Tail Size",
|
|
295
|
-
accepts: "number",
|
|
296
|
-
min: 0,
|
|
297
|
-
stylePath: "arrowTail.size",
|
|
298
|
-
renderable: !0
|
|
299
|
-
},
|
|
300
|
-
"edge.arrowTailColor": {
|
|
301
|
-
channel: "edge.arrowTailColor",
|
|
302
|
-
target: "edge",
|
|
303
|
-
plainName: "Arrow Tail Colour",
|
|
304
|
-
accepts: "color",
|
|
305
|
-
stylePath: "arrowTail.color",
|
|
306
|
-
renderable: !0
|
|
307
|
-
},
|
|
308
|
-
"edge.arrowTailOpacity": {
|
|
309
|
-
channel: "edge.arrowTailOpacity",
|
|
310
|
-
target: "edge",
|
|
311
|
-
plainName: "Arrow Tail Opacity",
|
|
312
|
-
accepts: "number",
|
|
313
|
-
min: 0,
|
|
314
|
-
max: 1,
|
|
315
|
-
stylePath: "arrowTail.opacity",
|
|
316
|
-
renderable: !0
|
|
317
|
-
},
|
|
318
|
-
"edge.arrowTailText": {
|
|
319
|
-
channel: "edge.arrowTailText",
|
|
320
|
-
target: "edge",
|
|
321
|
-
plainName: "Arrow Tail Caption",
|
|
322
|
-
accepts: "text",
|
|
323
|
-
stylePath: "arrowTail.text.text",
|
|
324
|
-
renderable: !0,
|
|
325
|
-
caveat: d
|
|
326
|
-
},
|
|
327
|
-
"edge.arrowTailTextStyle": {
|
|
328
|
-
channel: "edge.arrowTailTextStyle",
|
|
329
|
-
target: "edge",
|
|
330
|
-
plainName: "Arrow Tail Caption Style",
|
|
331
|
-
accepts: "labelStyle",
|
|
332
|
-
stylePath: "arrowTail.text",
|
|
333
|
-
renderable: !0,
|
|
334
|
-
caveat: d
|
|
335
|
-
},
|
|
336
|
-
"edge.animationSpeed": {
|
|
337
|
-
channel: "edge.animationSpeed",
|
|
338
|
-
target: "edge",
|
|
339
|
-
plainName: "Edge Animation Speed",
|
|
340
|
-
accepts: "number",
|
|
341
|
-
min: 0,
|
|
342
|
-
stylePath: "line.animationSpeed",
|
|
343
|
-
renderable: !0
|
|
344
|
-
},
|
|
345
|
-
"edge.label": {
|
|
346
|
-
channel: "edge.label",
|
|
347
|
-
target: "edge",
|
|
348
|
-
plainName: "Edge Label",
|
|
349
|
-
accepts: "text",
|
|
350
|
-
stylePath: "label.text",
|
|
351
|
-
renderable: !0
|
|
352
|
-
},
|
|
353
|
-
"edge.labelStyle": {
|
|
354
|
-
channel: "edge.labelStyle",
|
|
355
|
-
target: "edge",
|
|
356
|
-
plainName: "Edge Label Style",
|
|
357
|
-
accepts: "labelStyle",
|
|
358
|
-
stylePath: "label",
|
|
359
|
-
renderable: !0
|
|
360
|
-
}
|
|
361
|
-
}, u = Object.keys(l);
|
|
362
|
-
u.filter(
|
|
363
|
-
(e) => l[e].accepts === "color"
|
|
364
|
-
);
|
|
365
|
-
function E(e) {
|
|
366
|
-
return typeof e == "string" && Object.hasOwn(l, e);
|
|
367
|
-
}
|
|
368
|
-
function D(e) {
|
|
369
|
-
return E(e) ? l[e] : void 0;
|
|
370
|
-
}
|
|
371
|
-
function R(e) {
|
|
372
|
-
return u.map((a) => l[a]).filter(
|
|
373
|
-
(a) => a.target === e
|
|
374
|
-
);
|
|
375
|
-
}
|
|
376
|
-
const w = Object.freeze([
|
|
377
|
-
{
|
|
378
|
-
id: "fitToGraph",
|
|
379
|
-
plainName: "Fit to graph",
|
|
380
|
-
description: "Frames every element, from an angle in 3D and straight on in 2D.",
|
|
381
|
-
modes: ["2d", "3d"],
|
|
382
|
-
options: []
|
|
383
|
-
},
|
|
384
|
-
{
|
|
385
|
-
id: "topView",
|
|
386
|
-
plainName: "From above",
|
|
387
|
-
description: "Looks straight down at the graph. The natural view for a flat arrangement.",
|
|
388
|
-
modes: ["2d", "3d"],
|
|
389
|
-
options: []
|
|
390
|
-
},
|
|
391
|
-
{
|
|
392
|
-
id: "sideView",
|
|
393
|
-
plainName: "From the side",
|
|
394
|
-
description: "Looks along the x axis, which shows how deep an arrangement is.",
|
|
395
|
-
modes: ["3d"],
|
|
396
|
-
options: []
|
|
397
|
-
},
|
|
398
|
-
{
|
|
399
|
-
id: "frontView",
|
|
400
|
-
plainName: "From the front",
|
|
401
|
-
description: "Looks along the z axis, straight at the face of the arrangement.",
|
|
402
|
-
modes: ["3d"],
|
|
403
|
-
options: []
|
|
404
|
-
},
|
|
405
|
-
{
|
|
406
|
-
id: "isometric",
|
|
407
|
-
plainName: "Isometric",
|
|
408
|
-
description: "The classic three-quarter view: 45 degrees around and about 35 degrees up.",
|
|
409
|
-
modes: ["3d"],
|
|
410
|
-
options: []
|
|
411
|
-
}
|
|
412
|
-
]);
|
|
413
|
-
function k(e) {
|
|
414
|
-
return w.find((a) => a.id === e) ?? f(e)?.descriptor;
|
|
415
|
-
}
|
|
416
|
-
function F(e) {
|
|
417
|
-
return [...w, ...N()].filter(
|
|
418
|
-
(a) => a.modes.includes(e)
|
|
419
|
-
);
|
|
420
|
-
}
|
|
421
|
-
export {
|
|
422
|
-
w as C,
|
|
423
|
-
C as N,
|
|
424
|
-
u as a,
|
|
425
|
-
l as b,
|
|
426
|
-
k as c,
|
|
427
|
-
F as d,
|
|
428
|
-
D as e,
|
|
429
|
-
R as f,
|
|
430
|
-
L as g,
|
|
431
|
-
z as h,
|
|
432
|
-
E as i,
|
|
433
|
-
_ as j,
|
|
434
|
-
P as t
|
|
435
|
-
};
|