@knotx/plugins-base-render 0.2.9 → 0.2.10
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/dist/index.cjs +56 -61
- package/dist/index.d.cts +45 -31
- package/dist/index.d.mts +45 -31
- package/dist/index.d.ts +45 -31
- package/dist/index.js +57 -62
- package/package.json +9 -9
package/dist/index.cjs
CHANGED
|
@@ -87,11 +87,11 @@ var __privateIn = (member, obj) => Object(obj) !== obj ? __typeError('Cannot use
|
|
|
87
87
|
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
88
88
|
var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
|
|
89
89
|
var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
|
|
90
|
-
var _edgesLayer_dec, _nodesLayer_dec, _registerNodeLevelGetter_dec, _registerNodePositionGetter_dec, _registerNodeFilter_dec, _defaultEdgeType_dec, _defaultNodeType_dec,
|
|
91
|
-
const _BaseRender = class _BaseRender extends (_a = core.BasePlugin, _nodes_dec = [decorators.inject.nodes()], _edges_dec = [decorators.inject.edges()], _getNodeRenderer_dec = [decorators.inject.getNodeRenderer()], _getEdgeRenderer_dec = [decorators.inject.getEdgeRenderer()],
|
|
90
|
+
var _edgesLayer_dec, _nodesLayer_dec, _registerNodeLevelGetter_dec, _registerNodePositionGetter_dec, _registerNodeFilter_dec, _defaultEdgeType_dec, _defaultNodeType_dec, _draftNode_dec, _getEdge_dec, _getNode_dec, _edgesVersion_dec, _nodesVersion_dec, _getEdgeRenderer_dec, _getNodeRenderer_dec, _edges_dec, _nodes_dec, _a, _init;
|
|
91
|
+
const _BaseRender = class _BaseRender extends (_a = core.BasePlugin, _nodes_dec = [decorators.inject.nodes()], _edges_dec = [decorators.inject.edges()], _getNodeRenderer_dec = [decorators.inject.getNodeRenderer()], _getEdgeRenderer_dec = [decorators.inject.getEdgeRenderer()], _nodesVersion_dec = [decorators.inject((injectable) => injectable.nodesManager.patchVersion$.value + injectable.nodesManager.mapVersion$.value)], _edgesVersion_dec = [decorators.inject((injectable) => injectable.edgesManager.patchVersion$.value + injectable.edgesManager.mapVersion$.value + injectable.nodesManager.patchVersion$.value + injectable.nodesManager.mapVersion$.value)], _getNode_dec = [decorators.inject.getNode()], _getEdge_dec = [decorators.inject.getEdge()], _draftNode_dec = [decorators.inject((injectable, context) => {
|
|
92
92
|
var _a2, _b;
|
|
93
93
|
return ((_b = (_a2 = injectable.nodesManager.currentDraftDataMap$) == null ? void 0 : _a2.value) == null ? void 0 : _b.get(context.node)) || void 0;
|
|
94
|
-
})],
|
|
94
|
+
})], _defaultNodeType_dec = [decorators.nodeType("default")], _defaultEdgeType_dec = [decorators.edgeType("default")], _registerNodeFilter_dec = [decorators.register("registerNodeFilter")], _registerNodePositionGetter_dec = [decorators.register("registerNodePositionGetter")], _registerNodeLevelGetter_dec = [decorators.register("registerNodeLevelGetter")], _nodesLayer_dec = [decorators.layer(core.Layer.Nodes)], _edgesLayer_dec = [decorators.layer(core.Layer.Edges)], _a) {
|
|
95
95
|
constructor() {
|
|
96
96
|
super(...arguments);
|
|
97
97
|
__runInitializers(_init, 5, this);
|
|
@@ -100,11 +100,11 @@ const _BaseRender = class _BaseRender extends (_a = core.BasePlugin, _nodes_dec
|
|
|
100
100
|
__publicField(this, "edges", __runInitializers(_init, 12, this, [])), __runInitializers(_init, 15, this);
|
|
101
101
|
__publicField(this, "getNodeRenderer", __runInitializers(_init, 16, this)), __runInitializers(_init, 19, this);
|
|
102
102
|
__publicField(this, "getEdgeRenderer", __runInitializers(_init, 20, this)), __runInitializers(_init, 23, this);
|
|
103
|
-
__publicField(this, "
|
|
104
|
-
__publicField(this, "
|
|
105
|
-
__publicField(this, "
|
|
106
|
-
__publicField(this, "
|
|
107
|
-
__publicField(this, "
|
|
103
|
+
__publicField(this, "nodesVersion", __runInitializers(_init, 24, this)), __runInitializers(_init, 27, this);
|
|
104
|
+
__publicField(this, "edgesVersion", __runInitializers(_init, 28, this)), __runInitializers(_init, 31, this);
|
|
105
|
+
__publicField(this, "getNode", __runInitializers(_init, 32, this)), __runInitializers(_init, 35, this);
|
|
106
|
+
__publicField(this, "getEdge", __runInitializers(_init, 36, this)), __runInitializers(_init, 39, this);
|
|
107
|
+
__publicField(this, "draftNode", __runInitializers(_init, 40, this)), __runInitializers(_init, 43, this);
|
|
108
108
|
__publicField(this, "nodeFilters", new rxjs.BehaviorSubject([]));
|
|
109
109
|
__publicField(this, "nodePositionGetter", new rxjs.BehaviorSubject({}));
|
|
110
110
|
__publicField(this, "nodeLevelGetter", new rxjs.BehaviorSubject([]));
|
|
@@ -129,54 +129,46 @@ const _BaseRender = class _BaseRender extends (_a = core.BasePlugin, _nodes_dec
|
|
|
129
129
|
this.nodeLevelGetter.next(this.nodeLevelGetter.value.filter((g) => g !== getter));
|
|
130
130
|
};
|
|
131
131
|
})), __runInitializers(_init, 63, this);
|
|
132
|
+
__publicField(this, "nodeRenderProps", {
|
|
133
|
+
useNode: (id) => {
|
|
134
|
+
const draftNode = core.use(() => this.draftNode, { node: id });
|
|
135
|
+
return draftNode || this.getNode(id);
|
|
136
|
+
},
|
|
137
|
+
useNodes: () => {
|
|
138
|
+
core.use(() => this.nodesVersion);
|
|
139
|
+
return this.nodes.filter((node) => this.nodeFilters.value.every((filter) => filter(node)));
|
|
140
|
+
},
|
|
141
|
+
getNodeRenderer: (type) => this.getNodeRenderer(type != null ? type : "default") || this.defaultNodeType,
|
|
142
|
+
getNodePosition: (node) => {
|
|
143
|
+
var _a2, _b;
|
|
144
|
+
return ((_b = (_a2 = this.nodePositionGetter.value)[node.type]) == null ? void 0 : _b.call(_a2, node)) || node.position;
|
|
145
|
+
},
|
|
146
|
+
getNodeMeasured: (node) => node.measured,
|
|
147
|
+
getNodeLevel: (node) => this.nodeLevelGetter.value.reduce((level, getter) => {
|
|
148
|
+
const newLevel = getter(node);
|
|
149
|
+
return newLevel ? Math.max(level != null ? level : 0, newLevel) : level;
|
|
150
|
+
}, void 0),
|
|
151
|
+
getNodeWrapper: () => _BaseRender.DEFAULT_NODE_WRAPPER
|
|
152
|
+
});
|
|
153
|
+
__publicField(this, "edgeRenderProps", {
|
|
154
|
+
useEdge: (id) => this.getEdge(id),
|
|
155
|
+
useEdges: () => {
|
|
156
|
+
core.use(() => this.edgesVersion);
|
|
157
|
+
return this.edges;
|
|
158
|
+
},
|
|
159
|
+
useNode: (id) => {
|
|
160
|
+
const draftNode = core.use(() => this.draftNode, { node: id });
|
|
161
|
+
return draftNode || this.getNode(id);
|
|
162
|
+
},
|
|
163
|
+
getEdgeRenderer: (type) => this.getEdgeRenderer(type != null ? type : "default") || this.defaultEdgeType,
|
|
164
|
+
getEdgeWrapper: () => _BaseRender.DEFAULT_EDGE_WRAPPER
|
|
165
|
+
});
|
|
132
166
|
}
|
|
133
167
|
nodesLayer() {
|
|
134
|
-
|
|
135
|
-
const draftNode = core.use(() => this.draftNode, { node: id });
|
|
136
|
-
const node = core.use(() => this.node, { node: id });
|
|
137
|
-
return draftNode || node;
|
|
138
|
-
};
|
|
139
|
-
const useNodes = () => {
|
|
140
|
-
core.use(() => this.nodeMapVersion);
|
|
141
|
-
return this.nodes.filter((node) => this.nodeFilters.value.every((filter) => filter(node)));
|
|
142
|
-
};
|
|
143
|
-
const getNodeRenderer = (type) => this.getNodeRenderer(type != null ? type : "default") || this.defaultNodeType;
|
|
144
|
-
const getNodePosition = (node) => {
|
|
145
|
-
var _a2, _b;
|
|
146
|
-
return ((_b = (_a2 = this.nodePositionGetter.value)[node.type]) == null ? void 0 : _b.call(_a2, node)) || node.position;
|
|
147
|
-
};
|
|
148
|
-
const getNodeMeasured = (node) => node.measured;
|
|
149
|
-
const getNodeLevel = (node) => this.nodeLevelGetter.value.reduce((level, getter) => {
|
|
150
|
-
const newLevel = getter(node);
|
|
151
|
-
return newLevel ? Math.max(level != null ? level : 0, newLevel) : level;
|
|
152
|
-
}, void 0);
|
|
153
|
-
return _BaseRender.DEFAULT_NODES_RENDERER({
|
|
154
|
-
useNode,
|
|
155
|
-
useNodes,
|
|
156
|
-
getNodeRenderer,
|
|
157
|
-
getNodePosition,
|
|
158
|
-
getNodeMeasured,
|
|
159
|
-
getNodeLevel
|
|
160
|
-
});
|
|
168
|
+
return _BaseRender.DEFAULT_NODES_RENDERER(this.nodeRenderProps);
|
|
161
169
|
}
|
|
162
170
|
edgesLayer() {
|
|
163
|
-
|
|
164
|
-
const useNode = (id) => {
|
|
165
|
-
const draftNode = core.use(() => this.draftNode, { node: id });
|
|
166
|
-
const node = core.use(() => this.node, { node: id });
|
|
167
|
-
return draftNode || node;
|
|
168
|
-
};
|
|
169
|
-
const useEdges = () => {
|
|
170
|
-
core.use(() => this.edgeMapVersion);
|
|
171
|
-
return this.edges;
|
|
172
|
-
};
|
|
173
|
-
const getEdgeRenderer = (type) => this.getEdgeRenderer(type != null ? type : "default") || this.defaultEdgeType;
|
|
174
|
-
return _BaseRender.DEFAULT_EDGES_RENDERER({
|
|
175
|
-
useEdge,
|
|
176
|
-
useEdges,
|
|
177
|
-
useNode,
|
|
178
|
-
getEdgeRenderer
|
|
179
|
-
});
|
|
171
|
+
return _BaseRender.DEFAULT_EDGES_RENDERER(this.edgeRenderProps);
|
|
180
172
|
}
|
|
181
173
|
};
|
|
182
174
|
_init = __decoratorStart(_a);
|
|
@@ -186,11 +178,11 @@ __decorateElement(_init, 5, "nodes", _nodes_dec, _BaseRender);
|
|
|
186
178
|
__decorateElement(_init, 5, "edges", _edges_dec, _BaseRender);
|
|
187
179
|
__decorateElement(_init, 5, "getNodeRenderer", _getNodeRenderer_dec, _BaseRender);
|
|
188
180
|
__decorateElement(_init, 5, "getEdgeRenderer", _getEdgeRenderer_dec, _BaseRender);
|
|
189
|
-
__decorateElement(_init, 5, "
|
|
190
|
-
__decorateElement(_init, 5, "
|
|
181
|
+
__decorateElement(_init, 5, "nodesVersion", _nodesVersion_dec, _BaseRender);
|
|
182
|
+
__decorateElement(_init, 5, "edgesVersion", _edgesVersion_dec, _BaseRender);
|
|
183
|
+
__decorateElement(_init, 5, "getNode", _getNode_dec, _BaseRender);
|
|
184
|
+
__decorateElement(_init, 5, "getEdge", _getEdge_dec, _BaseRender);
|
|
191
185
|
__decorateElement(_init, 5, "draftNode", _draftNode_dec, _BaseRender);
|
|
192
|
-
__decorateElement(_init, 5, "edgeMapVersion", _edgeMapVersion_dec, _BaseRender);
|
|
193
|
-
__decorateElement(_init, 5, "edge", _edge_dec, _BaseRender);
|
|
194
186
|
__decorateElement(_init, 5, "defaultNodeType", _defaultNodeType_dec, _BaseRender);
|
|
195
187
|
__decorateElement(_init, 5, "defaultEdgeType", _defaultEdgeType_dec, _BaseRender);
|
|
196
188
|
__decorateElement(_init, 5, "registerNodeFilter", _registerNodeFilter_dec, _BaseRender);
|
|
@@ -211,6 +203,7 @@ __publicField(_BaseRender, "DEFAULT_NODE_WRAPPER", ({
|
|
|
211
203
|
}
|
|
212
204
|
const position = getNodePosition(node);
|
|
213
205
|
const measured = getNodeMeasured(node);
|
|
206
|
+
const Renderer = getNodeRenderer(node.type);
|
|
214
207
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
215
208
|
"div",
|
|
216
209
|
{
|
|
@@ -223,7 +216,7 @@ __publicField(_BaseRender, "DEFAULT_NODE_WRAPPER", ({
|
|
|
223
216
|
zIndex: getNodeLevel(node)
|
|
224
217
|
},
|
|
225
218
|
"data-node-id": node.id,
|
|
226
|
-
children:
|
|
219
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(Renderer, { node })
|
|
227
220
|
},
|
|
228
221
|
node.id
|
|
229
222
|
);
|
|
@@ -234,10 +227,11 @@ __publicField(_BaseRender, "DEFAULT_NODES_RENDERER", ({
|
|
|
234
227
|
getNodeRenderer,
|
|
235
228
|
getNodePosition,
|
|
236
229
|
getNodeMeasured,
|
|
237
|
-
getNodeLevel
|
|
230
|
+
getNodeLevel,
|
|
231
|
+
getNodeWrapper
|
|
238
232
|
}) => {
|
|
239
233
|
const nodes = useNodes();
|
|
240
|
-
const NodeWrapper =
|
|
234
|
+
const NodeWrapper = getNodeWrapper();
|
|
241
235
|
return nodes.map((data) => {
|
|
242
236
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
243
237
|
NodeWrapper,
|
|
@@ -287,10 +281,11 @@ __publicField(_BaseRender, "DEFAULT_EDGES_RENDERER", ({
|
|
|
287
281
|
useEdge,
|
|
288
282
|
useEdges,
|
|
289
283
|
useNode,
|
|
290
|
-
getEdgeRenderer
|
|
284
|
+
getEdgeRenderer,
|
|
285
|
+
getEdgeWrapper
|
|
291
286
|
}) => {
|
|
292
287
|
const edges = useEdges();
|
|
293
|
-
const EdgeWrapper =
|
|
288
|
+
const EdgeWrapper = getEdgeWrapper();
|
|
294
289
|
return edges.map((data) => {
|
|
295
290
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
296
291
|
EdgeWrapper,
|
package/dist/index.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { NodeData, NodePosition,
|
|
1
|
+
import { NodeData, NodePosition, NodeRenderType, NodeMeasured, EdgeData, EdgeRenderType, BasePlugin } from '@knotx/core';
|
|
2
2
|
import { StraightEdge } from '@knotx/render';
|
|
3
3
|
|
|
4
4
|
declare module '@knotx/core' {
|
|
@@ -10,17 +10,39 @@ declare module '@knotx/core' {
|
|
|
10
10
|
};
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
|
+
interface BaseRenderNodeWrapperProps {
|
|
14
|
+
id: string;
|
|
15
|
+
useNode: (id: string) => NodeData | undefined;
|
|
16
|
+
getNodeRenderer: (type?: string) => NodeRenderType;
|
|
17
|
+
getNodePosition: (node: NodeData) => NodePosition;
|
|
18
|
+
getNodeMeasured: (node: NodeData) => NodeMeasured | undefined;
|
|
19
|
+
getNodeLevel: (node: NodeData) => number | undefined;
|
|
20
|
+
}
|
|
21
|
+
interface BaseRenderNodesWrapperProps extends Omit<BaseRenderNodeWrapperProps, 'id'> {
|
|
22
|
+
useNodes: () => NodeData[];
|
|
23
|
+
getNodeWrapper: () => (props: BaseRenderNodeWrapperProps) => any;
|
|
24
|
+
}
|
|
25
|
+
interface BaseRenderEdgeWrapperProps {
|
|
26
|
+
id: string;
|
|
27
|
+
useEdge: (id: string) => EdgeData | undefined;
|
|
28
|
+
useNode: (id: string) => NodeData | undefined;
|
|
29
|
+
getEdgeRenderer: (type?: string) => EdgeRenderType;
|
|
30
|
+
}
|
|
31
|
+
interface BaseRenderEdgesWrapperProps extends Omit<BaseRenderEdgeWrapperProps, 'id'> {
|
|
32
|
+
useEdges: () => EdgeData[];
|
|
33
|
+
getEdgeWrapper: () => (props: BaseRenderEdgeWrapperProps) => any;
|
|
34
|
+
}
|
|
13
35
|
declare class BaseRender extends BasePlugin<'baseRender'> {
|
|
14
36
|
name: "baseRender";
|
|
15
37
|
private nodes;
|
|
16
38
|
private edges;
|
|
17
39
|
private getNodeRenderer;
|
|
18
40
|
private getEdgeRenderer;
|
|
19
|
-
private
|
|
20
|
-
private
|
|
41
|
+
private nodesVersion;
|
|
42
|
+
private edgesVersion;
|
|
43
|
+
private getNode;
|
|
44
|
+
private getEdge;
|
|
21
45
|
private draftNode;
|
|
22
|
-
private edgeMapVersion;
|
|
23
|
-
private edge;
|
|
24
46
|
private nodeFilters;
|
|
25
47
|
private nodePositionGetter;
|
|
26
48
|
private nodeLevelGetter;
|
|
@@ -29,36 +51,28 @@ declare class BaseRender extends BasePlugin<'baseRender'> {
|
|
|
29
51
|
registerNodeFilter: (filter: (node: NodeData) => boolean) => (() => void);
|
|
30
52
|
registerNodePositionGetter: (type: string, getter: (node: NodeData) => NodePosition | undefined) => (() => void);
|
|
31
53
|
registerNodeLevelGetter: (getter: (node: NodeData) => number | undefined) => (() => void);
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
id: string;
|
|
36
|
-
useNode: (id: string) => NodeData | undefined;
|
|
54
|
+
nodeRenderProps: {
|
|
55
|
+
useNode: (id: string) => NodeData<any> | undefined;
|
|
56
|
+
useNodes: () => NodeData<any>[];
|
|
37
57
|
getNodeRenderer: (type?: string) => NodeRenderType;
|
|
38
58
|
getNodePosition: (node: NodeData) => NodePosition;
|
|
39
59
|
getNodeMeasured: (node: NodeData) => NodeMeasured | undefined;
|
|
40
60
|
getNodeLevel: (node: NodeData) => number | undefined;
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
getNodeLevel: (node: NodeData) => number | undefined;
|
|
49
|
-
}) => JSX.Element[];
|
|
50
|
-
static DEFAULT_EDGE_WRAPPER: ({ id, useEdge, useNode, getEdgeRenderer, }: {
|
|
51
|
-
id: string;
|
|
52
|
-
useEdge: (id: string) => EdgeData | undefined;
|
|
53
|
-
useNode: (id: string) => NodeData | undefined;
|
|
54
|
-
getEdgeRenderer: (type?: string) => EdgeRenderType;
|
|
55
|
-
}) => JSX.Element | null;
|
|
56
|
-
static DEFAULT_EDGES_RENDERER: ({ useEdge, useEdges, useNode, getEdgeRenderer, }: {
|
|
57
|
-
useEdge: (id: string) => EdgeData | undefined;
|
|
58
|
-
useEdges: () => EdgeData[];
|
|
59
|
-
useNode: (id: string) => NodeData | undefined;
|
|
61
|
+
getNodeWrapper: () => ({ id, useNode, getNodeRenderer, getNodePosition, getNodeMeasured, getNodeLevel, }: BaseRenderNodeWrapperProps) => JSX.Element | null;
|
|
62
|
+
};
|
|
63
|
+
nodesLayer(): JSX.Element[];
|
|
64
|
+
edgeRenderProps: {
|
|
65
|
+
useEdge: (id: string) => EdgeData<any> | undefined;
|
|
66
|
+
useEdges: () => EdgeData<any>[];
|
|
67
|
+
useNode: (id: string) => NodeData<any> | undefined;
|
|
60
68
|
getEdgeRenderer: (type?: string) => EdgeRenderType;
|
|
61
|
-
|
|
69
|
+
getEdgeWrapper: () => ({ id, useEdge, useNode, getEdgeRenderer, }: BaseRenderEdgeWrapperProps) => JSX.Element | null;
|
|
70
|
+
};
|
|
71
|
+
edgesLayer(): JSX.Element[];
|
|
72
|
+
static DEFAULT_NODE_WRAPPER: ({ id, useNode, getNodeRenderer, getNodePosition, getNodeMeasured, getNodeLevel, }: BaseRenderNodeWrapperProps) => JSX.Element | null;
|
|
73
|
+
static DEFAULT_NODES_RENDERER: ({ useNode, useNodes, getNodeRenderer, getNodePosition, getNodeMeasured, getNodeLevel, getNodeWrapper, }: BaseRenderNodesWrapperProps) => JSX.Element[];
|
|
74
|
+
static DEFAULT_EDGE_WRAPPER: ({ id, useEdge, useNode, getEdgeRenderer, }: BaseRenderEdgeWrapperProps) => JSX.Element | null;
|
|
75
|
+
static DEFAULT_EDGES_RENDERER: ({ useEdge, useEdges, useNode, getEdgeRenderer, getEdgeWrapper, }: BaseRenderEdgesWrapperProps) => JSX.Element[];
|
|
62
76
|
}
|
|
63
77
|
|
|
64
|
-
export { BaseRender };
|
|
78
|
+
export { BaseRender, type BaseRenderEdgeWrapperProps, type BaseRenderEdgesWrapperProps, type BaseRenderNodeWrapperProps, type BaseRenderNodesWrapperProps };
|
package/dist/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { NodeData, NodePosition,
|
|
1
|
+
import { NodeData, NodePosition, NodeRenderType, NodeMeasured, EdgeData, EdgeRenderType, BasePlugin } from '@knotx/core';
|
|
2
2
|
import { StraightEdge } from '@knotx/render';
|
|
3
3
|
|
|
4
4
|
declare module '@knotx/core' {
|
|
@@ -10,17 +10,39 @@ declare module '@knotx/core' {
|
|
|
10
10
|
};
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
|
+
interface BaseRenderNodeWrapperProps {
|
|
14
|
+
id: string;
|
|
15
|
+
useNode: (id: string) => NodeData | undefined;
|
|
16
|
+
getNodeRenderer: (type?: string) => NodeRenderType;
|
|
17
|
+
getNodePosition: (node: NodeData) => NodePosition;
|
|
18
|
+
getNodeMeasured: (node: NodeData) => NodeMeasured | undefined;
|
|
19
|
+
getNodeLevel: (node: NodeData) => number | undefined;
|
|
20
|
+
}
|
|
21
|
+
interface BaseRenderNodesWrapperProps extends Omit<BaseRenderNodeWrapperProps, 'id'> {
|
|
22
|
+
useNodes: () => NodeData[];
|
|
23
|
+
getNodeWrapper: () => (props: BaseRenderNodeWrapperProps) => any;
|
|
24
|
+
}
|
|
25
|
+
interface BaseRenderEdgeWrapperProps {
|
|
26
|
+
id: string;
|
|
27
|
+
useEdge: (id: string) => EdgeData | undefined;
|
|
28
|
+
useNode: (id: string) => NodeData | undefined;
|
|
29
|
+
getEdgeRenderer: (type?: string) => EdgeRenderType;
|
|
30
|
+
}
|
|
31
|
+
interface BaseRenderEdgesWrapperProps extends Omit<BaseRenderEdgeWrapperProps, 'id'> {
|
|
32
|
+
useEdges: () => EdgeData[];
|
|
33
|
+
getEdgeWrapper: () => (props: BaseRenderEdgeWrapperProps) => any;
|
|
34
|
+
}
|
|
13
35
|
declare class BaseRender extends BasePlugin<'baseRender'> {
|
|
14
36
|
name: "baseRender";
|
|
15
37
|
private nodes;
|
|
16
38
|
private edges;
|
|
17
39
|
private getNodeRenderer;
|
|
18
40
|
private getEdgeRenderer;
|
|
19
|
-
private
|
|
20
|
-
private
|
|
41
|
+
private nodesVersion;
|
|
42
|
+
private edgesVersion;
|
|
43
|
+
private getNode;
|
|
44
|
+
private getEdge;
|
|
21
45
|
private draftNode;
|
|
22
|
-
private edgeMapVersion;
|
|
23
|
-
private edge;
|
|
24
46
|
private nodeFilters;
|
|
25
47
|
private nodePositionGetter;
|
|
26
48
|
private nodeLevelGetter;
|
|
@@ -29,36 +51,28 @@ declare class BaseRender extends BasePlugin<'baseRender'> {
|
|
|
29
51
|
registerNodeFilter: (filter: (node: NodeData) => boolean) => (() => void);
|
|
30
52
|
registerNodePositionGetter: (type: string, getter: (node: NodeData) => NodePosition | undefined) => (() => void);
|
|
31
53
|
registerNodeLevelGetter: (getter: (node: NodeData) => number | undefined) => (() => void);
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
id: string;
|
|
36
|
-
useNode: (id: string) => NodeData | undefined;
|
|
54
|
+
nodeRenderProps: {
|
|
55
|
+
useNode: (id: string) => NodeData<any> | undefined;
|
|
56
|
+
useNodes: () => NodeData<any>[];
|
|
37
57
|
getNodeRenderer: (type?: string) => NodeRenderType;
|
|
38
58
|
getNodePosition: (node: NodeData) => NodePosition;
|
|
39
59
|
getNodeMeasured: (node: NodeData) => NodeMeasured | undefined;
|
|
40
60
|
getNodeLevel: (node: NodeData) => number | undefined;
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
getNodeLevel: (node: NodeData) => number | undefined;
|
|
49
|
-
}) => JSX.Element[];
|
|
50
|
-
static DEFAULT_EDGE_WRAPPER: ({ id, useEdge, useNode, getEdgeRenderer, }: {
|
|
51
|
-
id: string;
|
|
52
|
-
useEdge: (id: string) => EdgeData | undefined;
|
|
53
|
-
useNode: (id: string) => NodeData | undefined;
|
|
54
|
-
getEdgeRenderer: (type?: string) => EdgeRenderType;
|
|
55
|
-
}) => JSX.Element | null;
|
|
56
|
-
static DEFAULT_EDGES_RENDERER: ({ useEdge, useEdges, useNode, getEdgeRenderer, }: {
|
|
57
|
-
useEdge: (id: string) => EdgeData | undefined;
|
|
58
|
-
useEdges: () => EdgeData[];
|
|
59
|
-
useNode: (id: string) => NodeData | undefined;
|
|
61
|
+
getNodeWrapper: () => ({ id, useNode, getNodeRenderer, getNodePosition, getNodeMeasured, getNodeLevel, }: BaseRenderNodeWrapperProps) => JSX.Element | null;
|
|
62
|
+
};
|
|
63
|
+
nodesLayer(): JSX.Element[];
|
|
64
|
+
edgeRenderProps: {
|
|
65
|
+
useEdge: (id: string) => EdgeData<any> | undefined;
|
|
66
|
+
useEdges: () => EdgeData<any>[];
|
|
67
|
+
useNode: (id: string) => NodeData<any> | undefined;
|
|
60
68
|
getEdgeRenderer: (type?: string) => EdgeRenderType;
|
|
61
|
-
|
|
69
|
+
getEdgeWrapper: () => ({ id, useEdge, useNode, getEdgeRenderer, }: BaseRenderEdgeWrapperProps) => JSX.Element | null;
|
|
70
|
+
};
|
|
71
|
+
edgesLayer(): JSX.Element[];
|
|
72
|
+
static DEFAULT_NODE_WRAPPER: ({ id, useNode, getNodeRenderer, getNodePosition, getNodeMeasured, getNodeLevel, }: BaseRenderNodeWrapperProps) => JSX.Element | null;
|
|
73
|
+
static DEFAULT_NODES_RENDERER: ({ useNode, useNodes, getNodeRenderer, getNodePosition, getNodeMeasured, getNodeLevel, getNodeWrapper, }: BaseRenderNodesWrapperProps) => JSX.Element[];
|
|
74
|
+
static DEFAULT_EDGE_WRAPPER: ({ id, useEdge, useNode, getEdgeRenderer, }: BaseRenderEdgeWrapperProps) => JSX.Element | null;
|
|
75
|
+
static DEFAULT_EDGES_RENDERER: ({ useEdge, useEdges, useNode, getEdgeRenderer, getEdgeWrapper, }: BaseRenderEdgesWrapperProps) => JSX.Element[];
|
|
62
76
|
}
|
|
63
77
|
|
|
64
|
-
export { BaseRender };
|
|
78
|
+
export { BaseRender, type BaseRenderEdgeWrapperProps, type BaseRenderEdgesWrapperProps, type BaseRenderNodeWrapperProps, type BaseRenderNodesWrapperProps };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { NodeData, NodePosition,
|
|
1
|
+
import { NodeData, NodePosition, NodeRenderType, NodeMeasured, EdgeData, EdgeRenderType, BasePlugin } from '@knotx/core';
|
|
2
2
|
import { StraightEdge } from '@knotx/render';
|
|
3
3
|
|
|
4
4
|
declare module '@knotx/core' {
|
|
@@ -10,17 +10,39 @@ declare module '@knotx/core' {
|
|
|
10
10
|
};
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
|
+
interface BaseRenderNodeWrapperProps {
|
|
14
|
+
id: string;
|
|
15
|
+
useNode: (id: string) => NodeData | undefined;
|
|
16
|
+
getNodeRenderer: (type?: string) => NodeRenderType;
|
|
17
|
+
getNodePosition: (node: NodeData) => NodePosition;
|
|
18
|
+
getNodeMeasured: (node: NodeData) => NodeMeasured | undefined;
|
|
19
|
+
getNodeLevel: (node: NodeData) => number | undefined;
|
|
20
|
+
}
|
|
21
|
+
interface BaseRenderNodesWrapperProps extends Omit<BaseRenderNodeWrapperProps, 'id'> {
|
|
22
|
+
useNodes: () => NodeData[];
|
|
23
|
+
getNodeWrapper: () => (props: BaseRenderNodeWrapperProps) => any;
|
|
24
|
+
}
|
|
25
|
+
interface BaseRenderEdgeWrapperProps {
|
|
26
|
+
id: string;
|
|
27
|
+
useEdge: (id: string) => EdgeData | undefined;
|
|
28
|
+
useNode: (id: string) => NodeData | undefined;
|
|
29
|
+
getEdgeRenderer: (type?: string) => EdgeRenderType;
|
|
30
|
+
}
|
|
31
|
+
interface BaseRenderEdgesWrapperProps extends Omit<BaseRenderEdgeWrapperProps, 'id'> {
|
|
32
|
+
useEdges: () => EdgeData[];
|
|
33
|
+
getEdgeWrapper: () => (props: BaseRenderEdgeWrapperProps) => any;
|
|
34
|
+
}
|
|
13
35
|
declare class BaseRender extends BasePlugin<'baseRender'> {
|
|
14
36
|
name: "baseRender";
|
|
15
37
|
private nodes;
|
|
16
38
|
private edges;
|
|
17
39
|
private getNodeRenderer;
|
|
18
40
|
private getEdgeRenderer;
|
|
19
|
-
private
|
|
20
|
-
private
|
|
41
|
+
private nodesVersion;
|
|
42
|
+
private edgesVersion;
|
|
43
|
+
private getNode;
|
|
44
|
+
private getEdge;
|
|
21
45
|
private draftNode;
|
|
22
|
-
private edgeMapVersion;
|
|
23
|
-
private edge;
|
|
24
46
|
private nodeFilters;
|
|
25
47
|
private nodePositionGetter;
|
|
26
48
|
private nodeLevelGetter;
|
|
@@ -29,36 +51,28 @@ declare class BaseRender extends BasePlugin<'baseRender'> {
|
|
|
29
51
|
registerNodeFilter: (filter: (node: NodeData) => boolean) => (() => void);
|
|
30
52
|
registerNodePositionGetter: (type: string, getter: (node: NodeData) => NodePosition | undefined) => (() => void);
|
|
31
53
|
registerNodeLevelGetter: (getter: (node: NodeData) => number | undefined) => (() => void);
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
id: string;
|
|
36
|
-
useNode: (id: string) => NodeData | undefined;
|
|
54
|
+
nodeRenderProps: {
|
|
55
|
+
useNode: (id: string) => NodeData<any> | undefined;
|
|
56
|
+
useNodes: () => NodeData<any>[];
|
|
37
57
|
getNodeRenderer: (type?: string) => NodeRenderType;
|
|
38
58
|
getNodePosition: (node: NodeData) => NodePosition;
|
|
39
59
|
getNodeMeasured: (node: NodeData) => NodeMeasured | undefined;
|
|
40
60
|
getNodeLevel: (node: NodeData) => number | undefined;
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
getNodeLevel: (node: NodeData) => number | undefined;
|
|
49
|
-
}) => JSX.Element[];
|
|
50
|
-
static DEFAULT_EDGE_WRAPPER: ({ id, useEdge, useNode, getEdgeRenderer, }: {
|
|
51
|
-
id: string;
|
|
52
|
-
useEdge: (id: string) => EdgeData | undefined;
|
|
53
|
-
useNode: (id: string) => NodeData | undefined;
|
|
54
|
-
getEdgeRenderer: (type?: string) => EdgeRenderType;
|
|
55
|
-
}) => JSX.Element | null;
|
|
56
|
-
static DEFAULT_EDGES_RENDERER: ({ useEdge, useEdges, useNode, getEdgeRenderer, }: {
|
|
57
|
-
useEdge: (id: string) => EdgeData | undefined;
|
|
58
|
-
useEdges: () => EdgeData[];
|
|
59
|
-
useNode: (id: string) => NodeData | undefined;
|
|
61
|
+
getNodeWrapper: () => ({ id, useNode, getNodeRenderer, getNodePosition, getNodeMeasured, getNodeLevel, }: BaseRenderNodeWrapperProps) => JSX.Element | null;
|
|
62
|
+
};
|
|
63
|
+
nodesLayer(): JSX.Element[];
|
|
64
|
+
edgeRenderProps: {
|
|
65
|
+
useEdge: (id: string) => EdgeData<any> | undefined;
|
|
66
|
+
useEdges: () => EdgeData<any>[];
|
|
67
|
+
useNode: (id: string) => NodeData<any> | undefined;
|
|
60
68
|
getEdgeRenderer: (type?: string) => EdgeRenderType;
|
|
61
|
-
|
|
69
|
+
getEdgeWrapper: () => ({ id, useEdge, useNode, getEdgeRenderer, }: BaseRenderEdgeWrapperProps) => JSX.Element | null;
|
|
70
|
+
};
|
|
71
|
+
edgesLayer(): JSX.Element[];
|
|
72
|
+
static DEFAULT_NODE_WRAPPER: ({ id, useNode, getNodeRenderer, getNodePosition, getNodeMeasured, getNodeLevel, }: BaseRenderNodeWrapperProps) => JSX.Element | null;
|
|
73
|
+
static DEFAULT_NODES_RENDERER: ({ useNode, useNodes, getNodeRenderer, getNodePosition, getNodeMeasured, getNodeLevel, getNodeWrapper, }: BaseRenderNodesWrapperProps) => JSX.Element[];
|
|
74
|
+
static DEFAULT_EDGE_WRAPPER: ({ id, useEdge, useNode, getEdgeRenderer, }: BaseRenderEdgeWrapperProps) => JSX.Element | null;
|
|
75
|
+
static DEFAULT_EDGES_RENDERER: ({ useEdge, useEdges, useNode, getEdgeRenderer, getEdgeWrapper, }: BaseRenderEdgesWrapperProps) => JSX.Element[];
|
|
62
76
|
}
|
|
63
77
|
|
|
64
|
-
export { BaseRender };
|
|
78
|
+
export { BaseRender, type BaseRenderEdgeWrapperProps, type BaseRenderEdgesWrapperProps, type BaseRenderNodeWrapperProps, type BaseRenderNodesWrapperProps };
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx } from '@knotx/jsx/jsx-runtime';
|
|
2
|
-
import { Layer,
|
|
2
|
+
import { Layer, BasePlugin, use, bem } from '@knotx/core';
|
|
3
3
|
import { inject, nodeType, edgeType, register, layer } from '@knotx/decorators';
|
|
4
4
|
import { StraightEdge } from '@knotx/render';
|
|
5
5
|
import { BehaviorSubject } from 'rxjs';
|
|
@@ -85,11 +85,11 @@ var __privateIn = (member, obj) => Object(obj) !== obj ? __typeError('Cannot use
|
|
|
85
85
|
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
86
86
|
var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
|
|
87
87
|
var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
|
|
88
|
-
var _edgesLayer_dec, _nodesLayer_dec, _registerNodeLevelGetter_dec, _registerNodePositionGetter_dec, _registerNodeFilter_dec, _defaultEdgeType_dec, _defaultNodeType_dec,
|
|
89
|
-
const _BaseRender = class _BaseRender extends (_a = BasePlugin, _nodes_dec = [inject.nodes()], _edges_dec = [inject.edges()], _getNodeRenderer_dec = [inject.getNodeRenderer()], _getEdgeRenderer_dec = [inject.getEdgeRenderer()],
|
|
88
|
+
var _edgesLayer_dec, _nodesLayer_dec, _registerNodeLevelGetter_dec, _registerNodePositionGetter_dec, _registerNodeFilter_dec, _defaultEdgeType_dec, _defaultNodeType_dec, _draftNode_dec, _getEdge_dec, _getNode_dec, _edgesVersion_dec, _nodesVersion_dec, _getEdgeRenderer_dec, _getNodeRenderer_dec, _edges_dec, _nodes_dec, _a, _init;
|
|
89
|
+
const _BaseRender = class _BaseRender extends (_a = BasePlugin, _nodes_dec = [inject.nodes()], _edges_dec = [inject.edges()], _getNodeRenderer_dec = [inject.getNodeRenderer()], _getEdgeRenderer_dec = [inject.getEdgeRenderer()], _nodesVersion_dec = [inject((injectable) => injectable.nodesManager.patchVersion$.value + injectable.nodesManager.mapVersion$.value)], _edgesVersion_dec = [inject((injectable) => injectable.edgesManager.patchVersion$.value + injectable.edgesManager.mapVersion$.value + injectable.nodesManager.patchVersion$.value + injectable.nodesManager.mapVersion$.value)], _getNode_dec = [inject.getNode()], _getEdge_dec = [inject.getEdge()], _draftNode_dec = [inject((injectable, context) => {
|
|
90
90
|
var _a2, _b;
|
|
91
91
|
return ((_b = (_a2 = injectable.nodesManager.currentDraftDataMap$) == null ? void 0 : _a2.value) == null ? void 0 : _b.get(context.node)) || void 0;
|
|
92
|
-
})],
|
|
92
|
+
})], _defaultNodeType_dec = [nodeType("default")], _defaultEdgeType_dec = [edgeType("default")], _registerNodeFilter_dec = [register("registerNodeFilter")], _registerNodePositionGetter_dec = [register("registerNodePositionGetter")], _registerNodeLevelGetter_dec = [register("registerNodeLevelGetter")], _nodesLayer_dec = [layer(Layer.Nodes)], _edgesLayer_dec = [layer(Layer.Edges)], _a) {
|
|
93
93
|
constructor() {
|
|
94
94
|
super(...arguments);
|
|
95
95
|
__runInitializers(_init, 5, this);
|
|
@@ -98,11 +98,11 @@ const _BaseRender = class _BaseRender extends (_a = BasePlugin, _nodes_dec = [in
|
|
|
98
98
|
__publicField(this, "edges", __runInitializers(_init, 12, this, [])), __runInitializers(_init, 15, this);
|
|
99
99
|
__publicField(this, "getNodeRenderer", __runInitializers(_init, 16, this)), __runInitializers(_init, 19, this);
|
|
100
100
|
__publicField(this, "getEdgeRenderer", __runInitializers(_init, 20, this)), __runInitializers(_init, 23, this);
|
|
101
|
-
__publicField(this, "
|
|
102
|
-
__publicField(this, "
|
|
103
|
-
__publicField(this, "
|
|
104
|
-
__publicField(this, "
|
|
105
|
-
__publicField(this, "
|
|
101
|
+
__publicField(this, "nodesVersion", __runInitializers(_init, 24, this)), __runInitializers(_init, 27, this);
|
|
102
|
+
__publicField(this, "edgesVersion", __runInitializers(_init, 28, this)), __runInitializers(_init, 31, this);
|
|
103
|
+
__publicField(this, "getNode", __runInitializers(_init, 32, this)), __runInitializers(_init, 35, this);
|
|
104
|
+
__publicField(this, "getEdge", __runInitializers(_init, 36, this)), __runInitializers(_init, 39, this);
|
|
105
|
+
__publicField(this, "draftNode", __runInitializers(_init, 40, this)), __runInitializers(_init, 43, this);
|
|
106
106
|
__publicField(this, "nodeFilters", new BehaviorSubject([]));
|
|
107
107
|
__publicField(this, "nodePositionGetter", new BehaviorSubject({}));
|
|
108
108
|
__publicField(this, "nodeLevelGetter", new BehaviorSubject([]));
|
|
@@ -127,54 +127,46 @@ const _BaseRender = class _BaseRender extends (_a = BasePlugin, _nodes_dec = [in
|
|
|
127
127
|
this.nodeLevelGetter.next(this.nodeLevelGetter.value.filter((g) => g !== getter));
|
|
128
128
|
};
|
|
129
129
|
})), __runInitializers(_init, 63, this);
|
|
130
|
+
__publicField(this, "nodeRenderProps", {
|
|
131
|
+
useNode: (id) => {
|
|
132
|
+
const draftNode = use(() => this.draftNode, { node: id });
|
|
133
|
+
return draftNode || this.getNode(id);
|
|
134
|
+
},
|
|
135
|
+
useNodes: () => {
|
|
136
|
+
use(() => this.nodesVersion);
|
|
137
|
+
return this.nodes.filter((node) => this.nodeFilters.value.every((filter) => filter(node)));
|
|
138
|
+
},
|
|
139
|
+
getNodeRenderer: (type) => this.getNodeRenderer(type != null ? type : "default") || this.defaultNodeType,
|
|
140
|
+
getNodePosition: (node) => {
|
|
141
|
+
var _a2, _b;
|
|
142
|
+
return ((_b = (_a2 = this.nodePositionGetter.value)[node.type]) == null ? void 0 : _b.call(_a2, node)) || node.position;
|
|
143
|
+
},
|
|
144
|
+
getNodeMeasured: (node) => node.measured,
|
|
145
|
+
getNodeLevel: (node) => this.nodeLevelGetter.value.reduce((level, getter) => {
|
|
146
|
+
const newLevel = getter(node);
|
|
147
|
+
return newLevel ? Math.max(level != null ? level : 0, newLevel) : level;
|
|
148
|
+
}, void 0),
|
|
149
|
+
getNodeWrapper: () => _BaseRender.DEFAULT_NODE_WRAPPER
|
|
150
|
+
});
|
|
151
|
+
__publicField(this, "edgeRenderProps", {
|
|
152
|
+
useEdge: (id) => this.getEdge(id),
|
|
153
|
+
useEdges: () => {
|
|
154
|
+
use(() => this.edgesVersion);
|
|
155
|
+
return this.edges;
|
|
156
|
+
},
|
|
157
|
+
useNode: (id) => {
|
|
158
|
+
const draftNode = use(() => this.draftNode, { node: id });
|
|
159
|
+
return draftNode || this.getNode(id);
|
|
160
|
+
},
|
|
161
|
+
getEdgeRenderer: (type) => this.getEdgeRenderer(type != null ? type : "default") || this.defaultEdgeType,
|
|
162
|
+
getEdgeWrapper: () => _BaseRender.DEFAULT_EDGE_WRAPPER
|
|
163
|
+
});
|
|
130
164
|
}
|
|
131
165
|
nodesLayer() {
|
|
132
|
-
|
|
133
|
-
const draftNode = use(() => this.draftNode, { node: id });
|
|
134
|
-
const node = use(() => this.node, { node: id });
|
|
135
|
-
return draftNode || node;
|
|
136
|
-
};
|
|
137
|
-
const useNodes = () => {
|
|
138
|
-
use(() => this.nodeMapVersion);
|
|
139
|
-
return this.nodes.filter((node) => this.nodeFilters.value.every((filter) => filter(node)));
|
|
140
|
-
};
|
|
141
|
-
const getNodeRenderer = (type) => this.getNodeRenderer(type != null ? type : "default") || this.defaultNodeType;
|
|
142
|
-
const getNodePosition = (node) => {
|
|
143
|
-
var _a2, _b;
|
|
144
|
-
return ((_b = (_a2 = this.nodePositionGetter.value)[node.type]) == null ? void 0 : _b.call(_a2, node)) || node.position;
|
|
145
|
-
};
|
|
146
|
-
const getNodeMeasured = (node) => node.measured;
|
|
147
|
-
const getNodeLevel = (node) => this.nodeLevelGetter.value.reduce((level, getter) => {
|
|
148
|
-
const newLevel = getter(node);
|
|
149
|
-
return newLevel ? Math.max(level != null ? level : 0, newLevel) : level;
|
|
150
|
-
}, void 0);
|
|
151
|
-
return _BaseRender.DEFAULT_NODES_RENDERER({
|
|
152
|
-
useNode,
|
|
153
|
-
useNodes,
|
|
154
|
-
getNodeRenderer,
|
|
155
|
-
getNodePosition,
|
|
156
|
-
getNodeMeasured,
|
|
157
|
-
getNodeLevel
|
|
158
|
-
});
|
|
166
|
+
return _BaseRender.DEFAULT_NODES_RENDERER(this.nodeRenderProps);
|
|
159
167
|
}
|
|
160
168
|
edgesLayer() {
|
|
161
|
-
|
|
162
|
-
const useNode = (id) => {
|
|
163
|
-
const draftNode = use(() => this.draftNode, { node: id });
|
|
164
|
-
const node = use(() => this.node, { node: id });
|
|
165
|
-
return draftNode || node;
|
|
166
|
-
};
|
|
167
|
-
const useEdges = () => {
|
|
168
|
-
use(() => this.edgeMapVersion);
|
|
169
|
-
return this.edges;
|
|
170
|
-
};
|
|
171
|
-
const getEdgeRenderer = (type) => this.getEdgeRenderer(type != null ? type : "default") || this.defaultEdgeType;
|
|
172
|
-
return _BaseRender.DEFAULT_EDGES_RENDERER({
|
|
173
|
-
useEdge,
|
|
174
|
-
useEdges,
|
|
175
|
-
useNode,
|
|
176
|
-
getEdgeRenderer
|
|
177
|
-
});
|
|
169
|
+
return _BaseRender.DEFAULT_EDGES_RENDERER(this.edgeRenderProps);
|
|
178
170
|
}
|
|
179
171
|
};
|
|
180
172
|
_init = __decoratorStart(_a);
|
|
@@ -184,11 +176,11 @@ __decorateElement(_init, 5, "nodes", _nodes_dec, _BaseRender);
|
|
|
184
176
|
__decorateElement(_init, 5, "edges", _edges_dec, _BaseRender);
|
|
185
177
|
__decorateElement(_init, 5, "getNodeRenderer", _getNodeRenderer_dec, _BaseRender);
|
|
186
178
|
__decorateElement(_init, 5, "getEdgeRenderer", _getEdgeRenderer_dec, _BaseRender);
|
|
187
|
-
__decorateElement(_init, 5, "
|
|
188
|
-
__decorateElement(_init, 5, "
|
|
179
|
+
__decorateElement(_init, 5, "nodesVersion", _nodesVersion_dec, _BaseRender);
|
|
180
|
+
__decorateElement(_init, 5, "edgesVersion", _edgesVersion_dec, _BaseRender);
|
|
181
|
+
__decorateElement(_init, 5, "getNode", _getNode_dec, _BaseRender);
|
|
182
|
+
__decorateElement(_init, 5, "getEdge", _getEdge_dec, _BaseRender);
|
|
189
183
|
__decorateElement(_init, 5, "draftNode", _draftNode_dec, _BaseRender);
|
|
190
|
-
__decorateElement(_init, 5, "edgeMapVersion", _edgeMapVersion_dec, _BaseRender);
|
|
191
|
-
__decorateElement(_init, 5, "edge", _edge_dec, _BaseRender);
|
|
192
184
|
__decorateElement(_init, 5, "defaultNodeType", _defaultNodeType_dec, _BaseRender);
|
|
193
185
|
__decorateElement(_init, 5, "defaultEdgeType", _defaultEdgeType_dec, _BaseRender);
|
|
194
186
|
__decorateElement(_init, 5, "registerNodeFilter", _registerNodeFilter_dec, _BaseRender);
|
|
@@ -209,6 +201,7 @@ __publicField(_BaseRender, "DEFAULT_NODE_WRAPPER", ({
|
|
|
209
201
|
}
|
|
210
202
|
const position = getNodePosition(node);
|
|
211
203
|
const measured = getNodeMeasured(node);
|
|
204
|
+
const Renderer = getNodeRenderer(node.type);
|
|
212
205
|
return /* @__PURE__ */ jsx(
|
|
213
206
|
"div",
|
|
214
207
|
{
|
|
@@ -221,7 +214,7 @@ __publicField(_BaseRender, "DEFAULT_NODE_WRAPPER", ({
|
|
|
221
214
|
zIndex: getNodeLevel(node)
|
|
222
215
|
},
|
|
223
216
|
"data-node-id": node.id,
|
|
224
|
-
children:
|
|
217
|
+
children: /* @__PURE__ */ jsx(Renderer, { node })
|
|
225
218
|
},
|
|
226
219
|
node.id
|
|
227
220
|
);
|
|
@@ -232,10 +225,11 @@ __publicField(_BaseRender, "DEFAULT_NODES_RENDERER", ({
|
|
|
232
225
|
getNodeRenderer,
|
|
233
226
|
getNodePosition,
|
|
234
227
|
getNodeMeasured,
|
|
235
|
-
getNodeLevel
|
|
228
|
+
getNodeLevel,
|
|
229
|
+
getNodeWrapper
|
|
236
230
|
}) => {
|
|
237
231
|
const nodes = useNodes();
|
|
238
|
-
const NodeWrapper =
|
|
232
|
+
const NodeWrapper = getNodeWrapper();
|
|
239
233
|
return nodes.map((data) => {
|
|
240
234
|
return /* @__PURE__ */ jsx(
|
|
241
235
|
NodeWrapper,
|
|
@@ -285,10 +279,11 @@ __publicField(_BaseRender, "DEFAULT_EDGES_RENDERER", ({
|
|
|
285
279
|
useEdge,
|
|
286
280
|
useEdges,
|
|
287
281
|
useNode,
|
|
288
|
-
getEdgeRenderer
|
|
282
|
+
getEdgeRenderer,
|
|
283
|
+
getEdgeWrapper
|
|
289
284
|
}) => {
|
|
290
285
|
const edges = useEdges();
|
|
291
|
-
const EdgeWrapper =
|
|
286
|
+
const EdgeWrapper = getEdgeWrapper();
|
|
292
287
|
return edges.map((data) => {
|
|
293
288
|
return /* @__PURE__ */ jsx(
|
|
294
289
|
EdgeWrapper,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@knotx/plugins-base-render",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.10",
|
|
4
4
|
"description": "Base Render Plugin for Knotx",
|
|
5
5
|
"author": "boenfu",
|
|
6
6
|
"license": "MIT",
|
|
@@ -28,19 +28,19 @@
|
|
|
28
28
|
"dist"
|
|
29
29
|
],
|
|
30
30
|
"peerDependencies": {
|
|
31
|
-
"@knotx/jsx": "0.2.
|
|
31
|
+
"@knotx/jsx": "0.2.9"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"rxjs": "^7.8.1",
|
|
35
|
-
"@knotx/core": "0.2.
|
|
36
|
-
"@knotx/decorators": "0.2.
|
|
37
|
-
"@knotx/render": "0.2.
|
|
35
|
+
"@knotx/core": "0.2.9",
|
|
36
|
+
"@knotx/decorators": "0.2.9",
|
|
37
|
+
"@knotx/render": "0.2.9"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
|
-
"@knotx/build-config": "0.2.
|
|
41
|
-
"@knotx/eslint-config": "0.2.
|
|
42
|
-
"@knotx/jsx": "0.2.
|
|
43
|
-
"@knotx/typescript-config": "0.2.
|
|
40
|
+
"@knotx/build-config": "0.2.9",
|
|
41
|
+
"@knotx/eslint-config": "0.2.9",
|
|
42
|
+
"@knotx/jsx": "0.2.9",
|
|
43
|
+
"@knotx/typescript-config": "0.2.9"
|
|
44
44
|
},
|
|
45
45
|
"scripts": {
|
|
46
46
|
"build": "unbuild",
|