@knotx/plugins-canvas 0.2.9 → 0.2.11
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 +40 -2
- package/dist/index.d.cts +10 -2
- package/dist/index.d.mts +10 -2
- package/dist/index.d.ts +10 -2
- package/dist/index.js +41 -3
- package/package.json +8 -11
package/dist/index.cjs
CHANGED
|
@@ -75,8 +75,8 @@ var __privateIn = (member, obj) => Object(obj) !== obj ? __typeError('Cannot use
|
|
|
75
75
|
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
76
76
|
var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
|
|
77
77
|
var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
|
|
78
|
-
var _init_dec, _render_dec, _scrollNodeIntoView_dec, _container_dec, _getNode_dec, _transform_dec, _ref_dec, _a, _init;
|
|
79
|
-
class Canvas extends (_a = core.BasePlugin, _ref_dec = [decorators.register("ref")], _transform_dec = [decorators.register("transform")], _getNode_dec = [decorators.inject.getNode()], _container_dec = [decorators.inject.container()], _scrollNodeIntoView_dec = [decorators.tool("Scroll node into viewport center", {
|
|
78
|
+
var _init_dec, _render_dec, _scrollNodeIntoView_dec, _removeListener_dec, _addListener_dec, _container_dec, _getNode_dec, _transform_dec, _ref_dec, _a, _init;
|
|
79
|
+
class Canvas extends (_a = core.BasePlugin, _ref_dec = [decorators.register("ref")], _transform_dec = [decorators.register("transform")], _getNode_dec = [decorators.inject.getNode()], _container_dec = [decorators.inject.container()], _addListener_dec = [decorators.register("addListener")], _removeListener_dec = [decorators.register("removeListener")], _scrollNodeIntoView_dec = [decorators.tool("Scroll node into viewport center", {
|
|
80
80
|
type: "object",
|
|
81
81
|
properties: {
|
|
82
82
|
nodeId: { type: "string" },
|
|
@@ -94,6 +94,16 @@ class Canvas extends (_a = core.BasePlugin, _ref_dec = [decorators.register("ref
|
|
|
94
94
|
__publicField(this, "transform", __runInitializers(_init, 12, this)), __runInitializers(_init, 15, this);
|
|
95
95
|
__publicField(this, "getNode", __runInitializers(_init, 16, this)), __runInitializers(_init, 19, this);
|
|
96
96
|
__publicField(this, "container", __runInitializers(_init, 20, this)), __runInitializers(_init, 23, this);
|
|
97
|
+
__publicField(this, "listeners", {
|
|
98
|
+
click: /* @__PURE__ */ new Set(),
|
|
99
|
+
contextmenu: /* @__PURE__ */ new Set()
|
|
100
|
+
});
|
|
101
|
+
__publicField(this, "addListener", __runInitializers(_init, 24, this, (type, listener) => {
|
|
102
|
+
this.listeners[type].add(listener);
|
|
103
|
+
})), __runInitializers(_init, 27, this);
|
|
104
|
+
__publicField(this, "removeListener", __runInitializers(_init, 28, this, (type, listener) => {
|
|
105
|
+
this.listeners[type].delete(listener);
|
|
106
|
+
})), __runInitializers(_init, 31, this);
|
|
97
107
|
}
|
|
98
108
|
scrollNodeIntoView({ nodeId, scale = this.transform.scale, animationTime }) {
|
|
99
109
|
var _a2, _b, _c, _d, _e;
|
|
@@ -154,6 +164,22 @@ class Canvas extends (_a = core.BasePlugin, _ref_dec = [decorators.register("ref
|
|
|
154
164
|
});
|
|
155
165
|
});
|
|
156
166
|
}, [transform]);
|
|
167
|
+
const onClick = react.useCallback((e) => {
|
|
168
|
+
if (!this.isCanvasEvent(e)) {
|
|
169
|
+
return;
|
|
170
|
+
}
|
|
171
|
+
this.listeners.click.forEach((listener) => {
|
|
172
|
+
listener(e);
|
|
173
|
+
});
|
|
174
|
+
}, []);
|
|
175
|
+
const onContextMenu = react.useCallback((e) => {
|
|
176
|
+
if (!this.isCanvasEvent(e)) {
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
this.listeners.contextmenu.forEach((listener) => {
|
|
180
|
+
listener(e);
|
|
181
|
+
});
|
|
182
|
+
}, []);
|
|
157
183
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
158
184
|
reactZoomPanPinch.TransformWrapper,
|
|
159
185
|
__spreadProps(__spreadValues({}, this.config), {
|
|
@@ -170,6 +196,10 @@ class Canvas extends (_a = core.BasePlugin, _ref_dec = [decorators.register("ref
|
|
|
170
196
|
zIndex: core.Layer.Nodes | core.Layer.Edges,
|
|
171
197
|
contain: "strict"
|
|
172
198
|
},
|
|
199
|
+
wrapperProps: {
|
|
200
|
+
onClick,
|
|
201
|
+
onContextMenu
|
|
202
|
+
},
|
|
173
203
|
contentClass: core.bem(this.name, "content"),
|
|
174
204
|
contentStyle: {
|
|
175
205
|
position: "relative",
|
|
@@ -196,6 +226,12 @@ class Canvas extends (_a = core.BasePlugin, _ref_dec = [decorators.register("ref
|
|
|
196
226
|
positionX: config.initialPositionX || 0,
|
|
197
227
|
positionY: config.initialPositionY || 0
|
|
198
228
|
};
|
|
229
|
+
this.subscriptions.push(() => {
|
|
230
|
+
Object.values(this.listeners).forEach((set) => set.clear());
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
isCanvasEvent(e) {
|
|
234
|
+
return e.target === e.currentTarget || e.target.classList.contains(core.bem(this.name, "content"));
|
|
199
235
|
}
|
|
200
236
|
}
|
|
201
237
|
_init = __decoratorStart(_a);
|
|
@@ -206,6 +242,8 @@ __decorateElement(_init, 5, "ref", _ref_dec, Canvas);
|
|
|
206
242
|
__decorateElement(_init, 5, "transform", _transform_dec, Canvas);
|
|
207
243
|
__decorateElement(_init, 5, "getNode", _getNode_dec, Canvas);
|
|
208
244
|
__decorateElement(_init, 5, "container", _container_dec, Canvas);
|
|
245
|
+
__decorateElement(_init, 5, "addListener", _addListener_dec, Canvas);
|
|
246
|
+
__decorateElement(_init, 5, "removeListener", _removeListener_dec, Canvas);
|
|
209
247
|
__decoratorMetadata(_init, Canvas);
|
|
210
248
|
|
|
211
249
|
exports.Canvas = Canvas;
|
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { InferParamsFromSchema } from '@knotx/decorators';
|
|
2
|
-
import { ReactNode } from 'react';
|
|
2
|
+
import { MouseEvent, ReactNode } from 'react';
|
|
3
3
|
import { ReactZoomPanPinchContentRef, ReactZoomPanPinchState, ReactZoomPanPinchProps } from 'react-zoom-pan-pinch';
|
|
4
4
|
import { BasePlugin } from '@knotx/core';
|
|
5
5
|
|
|
@@ -11,6 +11,8 @@ declare module '@knotx/core' {
|
|
|
11
11
|
canvas: {
|
|
12
12
|
ref: CanvasRef | null;
|
|
13
13
|
transform: CanvasTransformState;
|
|
14
|
+
addListener: (event: CanvasEventType, listener: CanvasEventListener) => void;
|
|
15
|
+
removeListener: (event: CanvasEventType, listener: CanvasEventListener) => void;
|
|
14
16
|
};
|
|
15
17
|
}
|
|
16
18
|
interface PluginTools {
|
|
@@ -23,6 +25,8 @@ declare module '@knotx/core' {
|
|
|
23
25
|
};
|
|
24
26
|
}
|
|
25
27
|
}
|
|
28
|
+
type CanvasEventType = 'click' | 'contextmenu';
|
|
29
|
+
type CanvasEventListener = (event: MouseEvent<HTMLElement>) => void;
|
|
26
30
|
declare class Canvas extends BasePlugin<'canvas', CanvasConfig> {
|
|
27
31
|
private config;
|
|
28
32
|
name: "canvas";
|
|
@@ -30,6 +34,9 @@ declare class Canvas extends BasePlugin<'canvas', CanvasConfig> {
|
|
|
30
34
|
transform: CanvasTransformState;
|
|
31
35
|
private getNode;
|
|
32
36
|
private container;
|
|
37
|
+
private listeners;
|
|
38
|
+
addListener: (event: CanvasEventType, listener: CanvasEventListener) => void;
|
|
39
|
+
removeListener: (event: CanvasEventType, listener: CanvasEventListener) => void;
|
|
33
40
|
scrollNodeIntoView({ nodeId, scale, animationTime }: InferParamsFromSchema<{
|
|
34
41
|
type: 'object';
|
|
35
42
|
properties: {
|
|
@@ -49,6 +56,7 @@ declare class Canvas extends BasePlugin<'canvas', CanvasConfig> {
|
|
|
49
56
|
children: ReactNode;
|
|
50
57
|
}): JSX.Element;
|
|
51
58
|
init(config: CanvasConfig): void;
|
|
59
|
+
private isCanvasEvent;
|
|
52
60
|
}
|
|
53
61
|
|
|
54
|
-
export { Canvas, type CanvasConfig, type CanvasRef, type CanvasTransformState };
|
|
62
|
+
export { Canvas, type CanvasConfig, type CanvasEventListener, type CanvasEventType, type CanvasRef, type CanvasTransformState };
|
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { InferParamsFromSchema } from '@knotx/decorators';
|
|
2
|
-
import { ReactNode } from 'react';
|
|
2
|
+
import { MouseEvent, ReactNode } from 'react';
|
|
3
3
|
import { ReactZoomPanPinchContentRef, ReactZoomPanPinchState, ReactZoomPanPinchProps } from 'react-zoom-pan-pinch';
|
|
4
4
|
import { BasePlugin } from '@knotx/core';
|
|
5
5
|
|
|
@@ -11,6 +11,8 @@ declare module '@knotx/core' {
|
|
|
11
11
|
canvas: {
|
|
12
12
|
ref: CanvasRef | null;
|
|
13
13
|
transform: CanvasTransformState;
|
|
14
|
+
addListener: (event: CanvasEventType, listener: CanvasEventListener) => void;
|
|
15
|
+
removeListener: (event: CanvasEventType, listener: CanvasEventListener) => void;
|
|
14
16
|
};
|
|
15
17
|
}
|
|
16
18
|
interface PluginTools {
|
|
@@ -23,6 +25,8 @@ declare module '@knotx/core' {
|
|
|
23
25
|
};
|
|
24
26
|
}
|
|
25
27
|
}
|
|
28
|
+
type CanvasEventType = 'click' | 'contextmenu';
|
|
29
|
+
type CanvasEventListener = (event: MouseEvent<HTMLElement>) => void;
|
|
26
30
|
declare class Canvas extends BasePlugin<'canvas', CanvasConfig> {
|
|
27
31
|
private config;
|
|
28
32
|
name: "canvas";
|
|
@@ -30,6 +34,9 @@ declare class Canvas extends BasePlugin<'canvas', CanvasConfig> {
|
|
|
30
34
|
transform: CanvasTransformState;
|
|
31
35
|
private getNode;
|
|
32
36
|
private container;
|
|
37
|
+
private listeners;
|
|
38
|
+
addListener: (event: CanvasEventType, listener: CanvasEventListener) => void;
|
|
39
|
+
removeListener: (event: CanvasEventType, listener: CanvasEventListener) => void;
|
|
33
40
|
scrollNodeIntoView({ nodeId, scale, animationTime }: InferParamsFromSchema<{
|
|
34
41
|
type: 'object';
|
|
35
42
|
properties: {
|
|
@@ -49,6 +56,7 @@ declare class Canvas extends BasePlugin<'canvas', CanvasConfig> {
|
|
|
49
56
|
children: ReactNode;
|
|
50
57
|
}): JSX.Element;
|
|
51
58
|
init(config: CanvasConfig): void;
|
|
59
|
+
private isCanvasEvent;
|
|
52
60
|
}
|
|
53
61
|
|
|
54
|
-
export { Canvas, type CanvasConfig, type CanvasRef, type CanvasTransformState };
|
|
62
|
+
export { Canvas, type CanvasConfig, type CanvasEventListener, type CanvasEventType, type CanvasRef, type CanvasTransformState };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { InferParamsFromSchema } from '@knotx/decorators';
|
|
2
|
-
import { ReactNode } from 'react';
|
|
2
|
+
import { MouseEvent, ReactNode } from 'react';
|
|
3
3
|
import { ReactZoomPanPinchContentRef, ReactZoomPanPinchState, ReactZoomPanPinchProps } from 'react-zoom-pan-pinch';
|
|
4
4
|
import { BasePlugin } from '@knotx/core';
|
|
5
5
|
|
|
@@ -11,6 +11,8 @@ declare module '@knotx/core' {
|
|
|
11
11
|
canvas: {
|
|
12
12
|
ref: CanvasRef | null;
|
|
13
13
|
transform: CanvasTransformState;
|
|
14
|
+
addListener: (event: CanvasEventType, listener: CanvasEventListener) => void;
|
|
15
|
+
removeListener: (event: CanvasEventType, listener: CanvasEventListener) => void;
|
|
14
16
|
};
|
|
15
17
|
}
|
|
16
18
|
interface PluginTools {
|
|
@@ -23,6 +25,8 @@ declare module '@knotx/core' {
|
|
|
23
25
|
};
|
|
24
26
|
}
|
|
25
27
|
}
|
|
28
|
+
type CanvasEventType = 'click' | 'contextmenu';
|
|
29
|
+
type CanvasEventListener = (event: MouseEvent<HTMLElement>) => void;
|
|
26
30
|
declare class Canvas extends BasePlugin<'canvas', CanvasConfig> {
|
|
27
31
|
private config;
|
|
28
32
|
name: "canvas";
|
|
@@ -30,6 +34,9 @@ declare class Canvas extends BasePlugin<'canvas', CanvasConfig> {
|
|
|
30
34
|
transform: CanvasTransformState;
|
|
31
35
|
private getNode;
|
|
32
36
|
private container;
|
|
37
|
+
private listeners;
|
|
38
|
+
addListener: (event: CanvasEventType, listener: CanvasEventListener) => void;
|
|
39
|
+
removeListener: (event: CanvasEventType, listener: CanvasEventListener) => void;
|
|
33
40
|
scrollNodeIntoView({ nodeId, scale, animationTime }: InferParamsFromSchema<{
|
|
34
41
|
type: 'object';
|
|
35
42
|
properties: {
|
|
@@ -49,6 +56,7 @@ declare class Canvas extends BasePlugin<'canvas', CanvasConfig> {
|
|
|
49
56
|
children: ReactNode;
|
|
50
57
|
}): JSX.Element;
|
|
51
58
|
init(config: CanvasConfig): void;
|
|
59
|
+
private isCanvasEvent;
|
|
52
60
|
}
|
|
53
61
|
|
|
54
|
-
export { Canvas, type CanvasConfig, type CanvasRef, type CanvasTransformState };
|
|
62
|
+
export { Canvas, type CanvasConfig, type CanvasEventListener, type CanvasEventType, type CanvasRef, type CanvasTransformState };
|
package/dist/index.js
CHANGED
|
@@ -2,7 +2,7 @@ import { jsxs, jsx } from '@knotx/jsx/jsx-runtime';
|
|
|
2
2
|
import { Layer, bem, BasePlugin } from '@knotx/core';
|
|
3
3
|
import { register, inject, tool, layer, OnInit } from '@knotx/decorators';
|
|
4
4
|
import { merge } from 'lodash-es';
|
|
5
|
-
import { useState, useMemo, useEffect, Fragment } from 'react';
|
|
5
|
+
import { useState, useMemo, useEffect, useCallback, Fragment } from 'react';
|
|
6
6
|
import { TransformWrapper, TransformComponent } from 'react-zoom-pan-pinch';
|
|
7
7
|
|
|
8
8
|
var __create = Object.create;
|
|
@@ -73,8 +73,8 @@ var __privateIn = (member, obj) => Object(obj) !== obj ? __typeError('Cannot use
|
|
|
73
73
|
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
74
74
|
var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
|
|
75
75
|
var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
|
|
76
|
-
var _init_dec, _render_dec, _scrollNodeIntoView_dec, _container_dec, _getNode_dec, _transform_dec, _ref_dec, _a, _init;
|
|
77
|
-
class Canvas extends (_a = BasePlugin, _ref_dec = [register("ref")], _transform_dec = [register("transform")], _getNode_dec = [inject.getNode()], _container_dec = [inject.container()], _scrollNodeIntoView_dec = [tool("Scroll node into viewport center", {
|
|
76
|
+
var _init_dec, _render_dec, _scrollNodeIntoView_dec, _removeListener_dec, _addListener_dec, _container_dec, _getNode_dec, _transform_dec, _ref_dec, _a, _init;
|
|
77
|
+
class Canvas extends (_a = BasePlugin, _ref_dec = [register("ref")], _transform_dec = [register("transform")], _getNode_dec = [inject.getNode()], _container_dec = [inject.container()], _addListener_dec = [register("addListener")], _removeListener_dec = [register("removeListener")], _scrollNodeIntoView_dec = [tool("Scroll node into viewport center", {
|
|
78
78
|
type: "object",
|
|
79
79
|
properties: {
|
|
80
80
|
nodeId: { type: "string" },
|
|
@@ -92,6 +92,16 @@ class Canvas extends (_a = BasePlugin, _ref_dec = [register("ref")], _transform_
|
|
|
92
92
|
__publicField(this, "transform", __runInitializers(_init, 12, this)), __runInitializers(_init, 15, this);
|
|
93
93
|
__publicField(this, "getNode", __runInitializers(_init, 16, this)), __runInitializers(_init, 19, this);
|
|
94
94
|
__publicField(this, "container", __runInitializers(_init, 20, this)), __runInitializers(_init, 23, this);
|
|
95
|
+
__publicField(this, "listeners", {
|
|
96
|
+
click: /* @__PURE__ */ new Set(),
|
|
97
|
+
contextmenu: /* @__PURE__ */ new Set()
|
|
98
|
+
});
|
|
99
|
+
__publicField(this, "addListener", __runInitializers(_init, 24, this, (type, listener) => {
|
|
100
|
+
this.listeners[type].add(listener);
|
|
101
|
+
})), __runInitializers(_init, 27, this);
|
|
102
|
+
__publicField(this, "removeListener", __runInitializers(_init, 28, this, (type, listener) => {
|
|
103
|
+
this.listeners[type].delete(listener);
|
|
104
|
+
})), __runInitializers(_init, 31, this);
|
|
95
105
|
}
|
|
96
106
|
scrollNodeIntoView({ nodeId, scale = this.transform.scale, animationTime }) {
|
|
97
107
|
var _a2, _b, _c, _d, _e;
|
|
@@ -152,6 +162,22 @@ class Canvas extends (_a = BasePlugin, _ref_dec = [register("ref")], _transform_
|
|
|
152
162
|
});
|
|
153
163
|
});
|
|
154
164
|
}, [transform]);
|
|
165
|
+
const onClick = useCallback((e) => {
|
|
166
|
+
if (!this.isCanvasEvent(e)) {
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
this.listeners.click.forEach((listener) => {
|
|
170
|
+
listener(e);
|
|
171
|
+
});
|
|
172
|
+
}, []);
|
|
173
|
+
const onContextMenu = useCallback((e) => {
|
|
174
|
+
if (!this.isCanvasEvent(e)) {
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
177
|
+
this.listeners.contextmenu.forEach((listener) => {
|
|
178
|
+
listener(e);
|
|
179
|
+
});
|
|
180
|
+
}, []);
|
|
155
181
|
return /* @__PURE__ */ jsxs(
|
|
156
182
|
TransformWrapper,
|
|
157
183
|
__spreadProps(__spreadValues({}, this.config), {
|
|
@@ -168,6 +194,10 @@ class Canvas extends (_a = BasePlugin, _ref_dec = [register("ref")], _transform_
|
|
|
168
194
|
zIndex: Layer.Nodes | Layer.Edges,
|
|
169
195
|
contain: "strict"
|
|
170
196
|
},
|
|
197
|
+
wrapperProps: {
|
|
198
|
+
onClick,
|
|
199
|
+
onContextMenu
|
|
200
|
+
},
|
|
171
201
|
contentClass: bem(this.name, "content"),
|
|
172
202
|
contentStyle: {
|
|
173
203
|
position: "relative",
|
|
@@ -194,6 +224,12 @@ class Canvas extends (_a = BasePlugin, _ref_dec = [register("ref")], _transform_
|
|
|
194
224
|
positionX: config.initialPositionX || 0,
|
|
195
225
|
positionY: config.initialPositionY || 0
|
|
196
226
|
};
|
|
227
|
+
this.subscriptions.push(() => {
|
|
228
|
+
Object.values(this.listeners).forEach((set) => set.clear());
|
|
229
|
+
});
|
|
230
|
+
}
|
|
231
|
+
isCanvasEvent(e) {
|
|
232
|
+
return e.target === e.currentTarget || e.target.classList.contains(bem(this.name, "content"));
|
|
197
233
|
}
|
|
198
234
|
}
|
|
199
235
|
_init = __decoratorStart(_a);
|
|
@@ -204,6 +240,8 @@ __decorateElement(_init, 5, "ref", _ref_dec, Canvas);
|
|
|
204
240
|
__decorateElement(_init, 5, "transform", _transform_dec, Canvas);
|
|
205
241
|
__decorateElement(_init, 5, "getNode", _getNode_dec, Canvas);
|
|
206
242
|
__decorateElement(_init, 5, "container", _container_dec, Canvas);
|
|
243
|
+
__decorateElement(_init, 5, "addListener", _addListener_dec, Canvas);
|
|
244
|
+
__decorateElement(_init, 5, "removeListener", _removeListener_dec, Canvas);
|
|
207
245
|
__decoratorMetadata(_init, Canvas);
|
|
208
246
|
|
|
209
247
|
export { Canvas };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@knotx/plugins-canvas",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.11",
|
|
4
4
|
"description": "Canvas Plugin for Knotx",
|
|
5
5
|
"author": "boenfu",
|
|
6
6
|
"license": "MIT",
|
|
@@ -29,26 +29,23 @@
|
|
|
29
29
|
],
|
|
30
30
|
"peerDependencies": {
|
|
31
31
|
"react": ">=17.0.0",
|
|
32
|
-
"
|
|
33
|
-
"@knotx/jsx": "0.2.9"
|
|
32
|
+
"@knotx/jsx": "0.2.10"
|
|
34
33
|
},
|
|
35
34
|
"dependencies": {
|
|
36
35
|
"lodash-es": "^4.17.21",
|
|
37
36
|
"react-zoom-pan-pinch": "^3.7.0",
|
|
38
37
|
"rxjs": "^7.8.1",
|
|
39
|
-
"@knotx/core": "0.2.
|
|
40
|
-
"@knotx/decorators": "0.2.
|
|
38
|
+
"@knotx/core": "0.2.10",
|
|
39
|
+
"@knotx/decorators": "0.2.11"
|
|
41
40
|
},
|
|
42
41
|
"devDependencies": {
|
|
43
42
|
"@types/lodash-es": "^4.17.12",
|
|
44
43
|
"@types/react": "^17.0.0",
|
|
45
|
-
"@types/react-dom": "^17.0.0",
|
|
46
44
|
"react": "^17.0.0",
|
|
47
|
-
"
|
|
48
|
-
"@knotx/
|
|
49
|
-
"@knotx/
|
|
50
|
-
"@knotx/
|
|
51
|
-
"@knotx/typescript-config": "0.2.9"
|
|
45
|
+
"@knotx/build-config": "0.2.10",
|
|
46
|
+
"@knotx/eslint-config": "0.2.10",
|
|
47
|
+
"@knotx/jsx": "0.2.10",
|
|
48
|
+
"@knotx/typescript-config": "0.2.10"
|
|
52
49
|
},
|
|
53
50
|
"scripts": {
|
|
54
51
|
"build": "unbuild",
|