@knotx/plugins-selection 0.3.4 → 0.3.6
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 +20 -3
- package/dist/index.d.cts +8 -1
- package/dist/index.d.mts +8 -1
- package/dist/index.d.ts +8 -1
- package/dist/index.js +20 -3
- package/package.json +10 -6
package/dist/index.cjs
CHANGED
|
@@ -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 _destroy_dec, _clearSelection_dec, _select_dec, _getSelected_dec, _init_dec, _interaction_dec, _setElementOverlap_dec, _setClearSelectionBeforeStart_dec, _clearSelectionBeforeStart_dec, _setRuleEnabled_dec, _registerRules_dec, _selected_dec, _a, _init;
|
|
77
|
-
class Selection extends (_a = core.BasePlugin, _selected_dec = [decorators.register("selected")], _registerRules_dec = [decorators.register("registerRules")], _setRuleEnabled_dec = [decorators.register("setRuleEnabled")], _clearSelectionBeforeStart_dec = [decorators.observable()], _setClearSelectionBeforeStart_dec = [decorators.register("setClearSelectionBeforeStart")], _setElementOverlap_dec = [decorators.register("setElementOverlap")], _interaction_dec = [decorators.inject.interaction()], _init_dec = [decorators.OnInit], _getSelected_dec = [decorators.tool("Get selected items", {})], _select_dec = [decorators.tool("Items that match the registered rules will be selected, manifested as the item showing a selected style.", {
|
|
76
|
+
var _destroy_dec, _clearSelection_dec, _select_dec, _getSelected_dec, _init_dec, _edgeScroll_dec, _interaction_dec, _setElementOverlap_dec, _setClearSelectionBeforeStart_dec, _clearSelectionBeforeStart_dec, _setRuleEnabled_dec, _registerRules_dec, _selected_dec, _a, _init;
|
|
77
|
+
class Selection extends (_a = core.BasePlugin, _selected_dec = [decorators.register("selected")], _registerRules_dec = [decorators.register("registerRules")], _setRuleEnabled_dec = [decorators.register("setRuleEnabled")], _clearSelectionBeforeStart_dec = [decorators.observable()], _setClearSelectionBeforeStart_dec = [decorators.register("setClearSelectionBeforeStart")], _setElementOverlap_dec = [decorators.register("setElementOverlap")], _interaction_dec = [decorators.inject.interaction()], _edgeScroll_dec = [decorators.inject.canvas.edgeScroll()], _init_dec = [decorators.OnInit], _getSelected_dec = [decorators.tool("Get selected items", {})], _select_dec = [decorators.tool("Items that match the registered rules will be selected, manifested as the item showing a selected style.", {
|
|
78
78
|
type: "array",
|
|
79
79
|
items: {
|
|
80
80
|
type: "object",
|
|
@@ -105,6 +105,7 @@ class Selection extends (_a = core.BasePlugin, _selected_dec = [decorators.regis
|
|
|
105
105
|
__publicField(this, "ruleMap", /* @__PURE__ */ new Map());
|
|
106
106
|
__publicField(this, "enableDrag", true);
|
|
107
107
|
__publicField(this, "isDragging", false);
|
|
108
|
+
__publicField(this, "enableEdgeScroll", false);
|
|
108
109
|
__publicField(this, "updateFrameId");
|
|
109
110
|
__publicField(this, "selected", __runInitializers(_init, 8, this, [])), __runInitializers(_init, 11, this);
|
|
110
111
|
__publicField(this, "registerRules", __runInitializers(_init, 12, this, (rules) => {
|
|
@@ -136,6 +137,7 @@ class Selection extends (_a = core.BasePlugin, _selected_dec = [decorators.regis
|
|
|
136
137
|
}
|
|
137
138
|
})), __runInitializers(_init, 31, this);
|
|
138
139
|
__publicField(this, "interaction", __runInitializers(_init, 32, this)), __runInitializers(_init, 35, this);
|
|
140
|
+
__publicField(this, "edgeScroll", __runInitializers(_init, 36, this)), __runInitializers(_init, 39, this);
|
|
139
141
|
__publicField(this, "onBeforeStart", (_) => {
|
|
140
142
|
});
|
|
141
143
|
__publicField(this, "onBeforeDrag", () => {
|
|
@@ -145,6 +147,9 @@ class Selection extends (_a = core.BasePlugin, _selected_dec = [decorators.regis
|
|
|
145
147
|
__publicField(this, "onStart", ({ event, store }) => {
|
|
146
148
|
var _a2;
|
|
147
149
|
this.interaction.start(this.pluginId, "select", core.InteractionPriority.MarqueeSelection);
|
|
150
|
+
if (this.enableEdgeScroll && this.edgeScroll) {
|
|
151
|
+
this.edgeScroll.setConfig({ enabled: true });
|
|
152
|
+
}
|
|
148
153
|
if (!(event == null ? void 0 : event.ctrlKey) && !(event == null ? void 0 : event.metaKey) && !(event == null ? void 0 : event.shiftKey)) {
|
|
149
154
|
if (this.clearSelectionBeforeStart) {
|
|
150
155
|
store.stored.forEach((element) => {
|
|
@@ -215,6 +220,9 @@ class Selection extends (_a = core.BasePlugin, _selected_dec = [decorators.regis
|
|
|
215
220
|
});
|
|
216
221
|
__publicField(this, "onStop", ({ event }) => {
|
|
217
222
|
this.interaction.end(this.pluginId, "select");
|
|
223
|
+
if (this.enableEdgeScroll && this.edgeScroll) {
|
|
224
|
+
this.edgeScroll.setConfig({ enabled: false });
|
|
225
|
+
}
|
|
218
226
|
if (event) {
|
|
219
227
|
if (this.isDragging) {
|
|
220
228
|
this.isDragging = false;
|
|
@@ -253,6 +261,9 @@ class Selection extends (_a = core.BasePlugin, _selected_dec = [decorators.regis
|
|
|
253
261
|
if (config.enableDrag !== void 0) {
|
|
254
262
|
this.enableDrag = config.enableDrag;
|
|
255
263
|
}
|
|
264
|
+
if (config.enableEdgeScroll !== void 0) {
|
|
265
|
+
this.enableEdgeScroll = config.enableEdgeScroll;
|
|
266
|
+
}
|
|
256
267
|
queueMicrotask(() => this.createSelection());
|
|
257
268
|
}
|
|
258
269
|
createSelection() {
|
|
@@ -261,7 +272,12 @@ class Selection extends (_a = core.BasePlugin, _selected_dec = [decorators.regis
|
|
|
261
272
|
// container,
|
|
262
273
|
boundaries: [container],
|
|
263
274
|
selectionAreaClass: this.selectionAreaClassName,
|
|
264
|
-
selectables: Array.from(new Set(Array.from(this.ruleMap.values()).map(({ className }) => `.${className}`)))
|
|
275
|
+
selectables: Array.from(new Set(Array.from(this.ruleMap.values()).map(({ className }) => `.${className}`))),
|
|
276
|
+
behaviour: {
|
|
277
|
+
scrolling: {
|
|
278
|
+
manualSpeed: 0
|
|
279
|
+
}
|
|
280
|
+
}
|
|
265
281
|
}).on("beforedrag", this.onBeforeDrag).on("beforestart", this.onBeforeStart).on("start", this.onStart).on("move", this.onMove).on("stop", this.onStop);
|
|
266
282
|
}
|
|
267
283
|
getElementRule(element) {
|
|
@@ -309,6 +325,7 @@ __decorateElement(_init, 5, "clearSelectionBeforeStart", _clearSelectionBeforeSt
|
|
|
309
325
|
__decorateElement(_init, 5, "setClearSelectionBeforeStart", _setClearSelectionBeforeStart_dec, Selection);
|
|
310
326
|
__decorateElement(_init, 5, "setElementOverlap", _setElementOverlap_dec, Selection);
|
|
311
327
|
__decorateElement(_init, 5, "interaction", _interaction_dec, Selection);
|
|
328
|
+
__decorateElement(_init, 5, "edgeScroll", _edgeScroll_dec, Selection);
|
|
312
329
|
__decoratorMetadata(_init, Selection);
|
|
313
330
|
|
|
314
331
|
exports.Selection = Selection;
|
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { BasePlugin, PluginData } from '@knotx/core';
|
|
1
2
|
import { OverlapMode } from '@viselect/vanilla';
|
|
2
|
-
import { BasePlugin } from '@knotx/core';
|
|
3
3
|
|
|
4
4
|
interface SelectionSelectedItem {
|
|
5
5
|
type: string;
|
|
@@ -89,6 +89,11 @@ interface SelectionConfig {
|
|
|
89
89
|
* default: bemSelector('canvas', 'wrapper')
|
|
90
90
|
*/
|
|
91
91
|
container?: string;
|
|
92
|
+
/**
|
|
93
|
+
* 是否启用边缘滚动
|
|
94
|
+
* default: false
|
|
95
|
+
*/
|
|
96
|
+
enableEdgeScroll?: boolean;
|
|
92
97
|
}
|
|
93
98
|
declare class Selection extends BasePlugin<'selection', SelectionConfig> {
|
|
94
99
|
name: "selection";
|
|
@@ -98,6 +103,7 @@ declare class Selection extends BasePlugin<'selection', SelectionConfig> {
|
|
|
98
103
|
private ruleMap;
|
|
99
104
|
private enableDrag;
|
|
100
105
|
private isDragging;
|
|
106
|
+
private enableEdgeScroll;
|
|
101
107
|
private updateFrameId;
|
|
102
108
|
selected: SelectionSelectedItem[];
|
|
103
109
|
registerRules: (rules: SelectionRule[]) => () => void;
|
|
@@ -106,6 +112,7 @@ declare class Selection extends BasePlugin<'selection', SelectionConfig> {
|
|
|
106
112
|
setClearSelectionBeforeStart: (clearSelectionBeforeStart: boolean) => void;
|
|
107
113
|
setElementOverlap: (overlap: OverlapMode) => void;
|
|
108
114
|
private interaction;
|
|
115
|
+
edgeScroll: PluginData['canvas']['edgeScroll'];
|
|
109
116
|
init(config?: SelectionConfig): void;
|
|
110
117
|
private createSelection;
|
|
111
118
|
private onBeforeStart;
|
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { BasePlugin, PluginData } from '@knotx/core';
|
|
1
2
|
import { OverlapMode } from '@viselect/vanilla';
|
|
2
|
-
import { BasePlugin } from '@knotx/core';
|
|
3
3
|
|
|
4
4
|
interface SelectionSelectedItem {
|
|
5
5
|
type: string;
|
|
@@ -89,6 +89,11 @@ interface SelectionConfig {
|
|
|
89
89
|
* default: bemSelector('canvas', 'wrapper')
|
|
90
90
|
*/
|
|
91
91
|
container?: string;
|
|
92
|
+
/**
|
|
93
|
+
* 是否启用边缘滚动
|
|
94
|
+
* default: false
|
|
95
|
+
*/
|
|
96
|
+
enableEdgeScroll?: boolean;
|
|
92
97
|
}
|
|
93
98
|
declare class Selection extends BasePlugin<'selection', SelectionConfig> {
|
|
94
99
|
name: "selection";
|
|
@@ -98,6 +103,7 @@ declare class Selection extends BasePlugin<'selection', SelectionConfig> {
|
|
|
98
103
|
private ruleMap;
|
|
99
104
|
private enableDrag;
|
|
100
105
|
private isDragging;
|
|
106
|
+
private enableEdgeScroll;
|
|
101
107
|
private updateFrameId;
|
|
102
108
|
selected: SelectionSelectedItem[];
|
|
103
109
|
registerRules: (rules: SelectionRule[]) => () => void;
|
|
@@ -106,6 +112,7 @@ declare class Selection extends BasePlugin<'selection', SelectionConfig> {
|
|
|
106
112
|
setClearSelectionBeforeStart: (clearSelectionBeforeStart: boolean) => void;
|
|
107
113
|
setElementOverlap: (overlap: OverlapMode) => void;
|
|
108
114
|
private interaction;
|
|
115
|
+
edgeScroll: PluginData['canvas']['edgeScroll'];
|
|
109
116
|
init(config?: SelectionConfig): void;
|
|
110
117
|
private createSelection;
|
|
111
118
|
private onBeforeStart;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { BasePlugin, PluginData } from '@knotx/core';
|
|
1
2
|
import { OverlapMode } from '@viselect/vanilla';
|
|
2
|
-
import { BasePlugin } from '@knotx/core';
|
|
3
3
|
|
|
4
4
|
interface SelectionSelectedItem {
|
|
5
5
|
type: string;
|
|
@@ -89,6 +89,11 @@ interface SelectionConfig {
|
|
|
89
89
|
* default: bemSelector('canvas', 'wrapper')
|
|
90
90
|
*/
|
|
91
91
|
container?: string;
|
|
92
|
+
/**
|
|
93
|
+
* 是否启用边缘滚动
|
|
94
|
+
* default: false
|
|
95
|
+
*/
|
|
96
|
+
enableEdgeScroll?: boolean;
|
|
92
97
|
}
|
|
93
98
|
declare class Selection extends BasePlugin<'selection', SelectionConfig> {
|
|
94
99
|
name: "selection";
|
|
@@ -98,6 +103,7 @@ declare class Selection extends BasePlugin<'selection', SelectionConfig> {
|
|
|
98
103
|
private ruleMap;
|
|
99
104
|
private enableDrag;
|
|
100
105
|
private isDragging;
|
|
106
|
+
private enableEdgeScroll;
|
|
101
107
|
private updateFrameId;
|
|
102
108
|
selected: SelectionSelectedItem[];
|
|
103
109
|
registerRules: (rules: SelectionRule[]) => () => void;
|
|
@@ -106,6 +112,7 @@ declare class Selection extends BasePlugin<'selection', SelectionConfig> {
|
|
|
106
112
|
setClearSelectionBeforeStart: (clearSelectionBeforeStart: boolean) => void;
|
|
107
113
|
setElementOverlap: (overlap: OverlapMode) => void;
|
|
108
114
|
private interaction;
|
|
115
|
+
edgeScroll: PluginData['canvas']['edgeScroll'];
|
|
109
116
|
init(config?: SelectionConfig): void;
|
|
110
117
|
private createSelection;
|
|
111
118
|
private onBeforeStart;
|
package/dist/index.js
CHANGED
|
@@ -67,8 +67,8 @@ var __privateIn = (member, obj) => Object(obj) !== obj ? __typeError('Cannot use
|
|
|
67
67
|
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
68
68
|
var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
|
|
69
69
|
var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
|
|
70
|
-
var _destroy_dec, _clearSelection_dec, _select_dec, _getSelected_dec, _init_dec, _interaction_dec, _setElementOverlap_dec, _setClearSelectionBeforeStart_dec, _clearSelectionBeforeStart_dec, _setRuleEnabled_dec, _registerRules_dec, _selected_dec, _a, _init;
|
|
71
|
-
class Selection extends (_a = BasePlugin, _selected_dec = [register("selected")], _registerRules_dec = [register("registerRules")], _setRuleEnabled_dec = [register("setRuleEnabled")], _clearSelectionBeforeStart_dec = [observable()], _setClearSelectionBeforeStart_dec = [register("setClearSelectionBeforeStart")], _setElementOverlap_dec = [register("setElementOverlap")], _interaction_dec = [inject.interaction()], _init_dec = [OnInit], _getSelected_dec = [tool("Get selected items", {})], _select_dec = [tool("Items that match the registered rules will be selected, manifested as the item showing a selected style.", {
|
|
70
|
+
var _destroy_dec, _clearSelection_dec, _select_dec, _getSelected_dec, _init_dec, _edgeScroll_dec, _interaction_dec, _setElementOverlap_dec, _setClearSelectionBeforeStart_dec, _clearSelectionBeforeStart_dec, _setRuleEnabled_dec, _registerRules_dec, _selected_dec, _a, _init;
|
|
71
|
+
class Selection extends (_a = BasePlugin, _selected_dec = [register("selected")], _registerRules_dec = [register("registerRules")], _setRuleEnabled_dec = [register("setRuleEnabled")], _clearSelectionBeforeStart_dec = [observable()], _setClearSelectionBeforeStart_dec = [register("setClearSelectionBeforeStart")], _setElementOverlap_dec = [register("setElementOverlap")], _interaction_dec = [inject.interaction()], _edgeScroll_dec = [inject.canvas.edgeScroll()], _init_dec = [OnInit], _getSelected_dec = [tool("Get selected items", {})], _select_dec = [tool("Items that match the registered rules will be selected, manifested as the item showing a selected style.", {
|
|
72
72
|
type: "array",
|
|
73
73
|
items: {
|
|
74
74
|
type: "object",
|
|
@@ -99,6 +99,7 @@ class Selection extends (_a = BasePlugin, _selected_dec = [register("selected")]
|
|
|
99
99
|
__publicField(this, "ruleMap", /* @__PURE__ */ new Map());
|
|
100
100
|
__publicField(this, "enableDrag", true);
|
|
101
101
|
__publicField(this, "isDragging", false);
|
|
102
|
+
__publicField(this, "enableEdgeScroll", false);
|
|
102
103
|
__publicField(this, "updateFrameId");
|
|
103
104
|
__publicField(this, "selected", __runInitializers(_init, 8, this, [])), __runInitializers(_init, 11, this);
|
|
104
105
|
__publicField(this, "registerRules", __runInitializers(_init, 12, this, (rules) => {
|
|
@@ -130,6 +131,7 @@ class Selection extends (_a = BasePlugin, _selected_dec = [register("selected")]
|
|
|
130
131
|
}
|
|
131
132
|
})), __runInitializers(_init, 31, this);
|
|
132
133
|
__publicField(this, "interaction", __runInitializers(_init, 32, this)), __runInitializers(_init, 35, this);
|
|
134
|
+
__publicField(this, "edgeScroll", __runInitializers(_init, 36, this)), __runInitializers(_init, 39, this);
|
|
133
135
|
__publicField(this, "onBeforeStart", (_) => {
|
|
134
136
|
});
|
|
135
137
|
__publicField(this, "onBeforeDrag", () => {
|
|
@@ -139,6 +141,9 @@ class Selection extends (_a = BasePlugin, _selected_dec = [register("selected")]
|
|
|
139
141
|
__publicField(this, "onStart", ({ event, store }) => {
|
|
140
142
|
var _a2;
|
|
141
143
|
this.interaction.start(this.pluginId, "select", InteractionPriority.MarqueeSelection);
|
|
144
|
+
if (this.enableEdgeScroll && this.edgeScroll) {
|
|
145
|
+
this.edgeScroll.setConfig({ enabled: true });
|
|
146
|
+
}
|
|
142
147
|
if (!(event == null ? void 0 : event.ctrlKey) && !(event == null ? void 0 : event.metaKey) && !(event == null ? void 0 : event.shiftKey)) {
|
|
143
148
|
if (this.clearSelectionBeforeStart) {
|
|
144
149
|
store.stored.forEach((element) => {
|
|
@@ -209,6 +214,9 @@ class Selection extends (_a = BasePlugin, _selected_dec = [register("selected")]
|
|
|
209
214
|
});
|
|
210
215
|
__publicField(this, "onStop", ({ event }) => {
|
|
211
216
|
this.interaction.end(this.pluginId, "select");
|
|
217
|
+
if (this.enableEdgeScroll && this.edgeScroll) {
|
|
218
|
+
this.edgeScroll.setConfig({ enabled: false });
|
|
219
|
+
}
|
|
212
220
|
if (event) {
|
|
213
221
|
if (this.isDragging) {
|
|
214
222
|
this.isDragging = false;
|
|
@@ -247,6 +255,9 @@ class Selection extends (_a = BasePlugin, _selected_dec = [register("selected")]
|
|
|
247
255
|
if (config.enableDrag !== void 0) {
|
|
248
256
|
this.enableDrag = config.enableDrag;
|
|
249
257
|
}
|
|
258
|
+
if (config.enableEdgeScroll !== void 0) {
|
|
259
|
+
this.enableEdgeScroll = config.enableEdgeScroll;
|
|
260
|
+
}
|
|
250
261
|
queueMicrotask(() => this.createSelection());
|
|
251
262
|
}
|
|
252
263
|
createSelection() {
|
|
@@ -255,7 +266,12 @@ class Selection extends (_a = BasePlugin, _selected_dec = [register("selected")]
|
|
|
255
266
|
// container,
|
|
256
267
|
boundaries: [container],
|
|
257
268
|
selectionAreaClass: this.selectionAreaClassName,
|
|
258
|
-
selectables: Array.from(new Set(Array.from(this.ruleMap.values()).map(({ className }) => `.${className}`)))
|
|
269
|
+
selectables: Array.from(new Set(Array.from(this.ruleMap.values()).map(({ className }) => `.${className}`))),
|
|
270
|
+
behaviour: {
|
|
271
|
+
scrolling: {
|
|
272
|
+
manualSpeed: 0
|
|
273
|
+
}
|
|
274
|
+
}
|
|
259
275
|
}).on("beforedrag", this.onBeforeDrag).on("beforestart", this.onBeforeStart).on("start", this.onStart).on("move", this.onMove).on("stop", this.onStop);
|
|
260
276
|
}
|
|
261
277
|
getElementRule(element) {
|
|
@@ -303,6 +319,7 @@ __decorateElement(_init, 5, "clearSelectionBeforeStart", _clearSelectionBeforeSt
|
|
|
303
319
|
__decorateElement(_init, 5, "setClearSelectionBeforeStart", _setClearSelectionBeforeStart_dec, Selection);
|
|
304
320
|
__decorateElement(_init, 5, "setElementOverlap", _setElementOverlap_dec, Selection);
|
|
305
321
|
__decorateElement(_init, 5, "interaction", _interaction_dec, Selection);
|
|
322
|
+
__decorateElement(_init, 5, "edgeScroll", _edgeScroll_dec, Selection);
|
|
306
323
|
__decoratorMetadata(_init, Selection);
|
|
307
324
|
|
|
308
325
|
export { Selection };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@knotx/plugins-selection",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.6",
|
|
4
4
|
"description": "Selection Plugin for Knotx",
|
|
5
5
|
"author": "boenfu",
|
|
6
6
|
"license": "MIT",
|
|
@@ -27,16 +27,20 @@
|
|
|
27
27
|
"files": [
|
|
28
28
|
"dist"
|
|
29
29
|
],
|
|
30
|
+
"peerDependencies": {
|
|
31
|
+
"@knotx/plugins-canvas": "0.3.6"
|
|
32
|
+
},
|
|
30
33
|
"dependencies": {
|
|
31
34
|
"@viselect/vanilla": "^3.9.0",
|
|
32
35
|
"rxjs": "^7.8.1",
|
|
33
|
-
"@knotx/core": "0.3.
|
|
34
|
-
"@knotx/decorators": "0.3.
|
|
36
|
+
"@knotx/core": "0.3.6",
|
|
37
|
+
"@knotx/decorators": "0.3.6"
|
|
35
38
|
},
|
|
36
39
|
"devDependencies": {
|
|
37
|
-
"@knotx/build-config": "0.3.
|
|
38
|
-
"@knotx/eslint-config": "0.3.
|
|
39
|
-
"@knotx/
|
|
40
|
+
"@knotx/build-config": "0.3.6",
|
|
41
|
+
"@knotx/eslint-config": "0.3.6",
|
|
42
|
+
"@knotx/plugins-canvas": "0.3.6",
|
|
43
|
+
"@knotx/typescript-config": "0.3.6"
|
|
40
44
|
},
|
|
41
45
|
"scripts": {
|
|
42
46
|
"build": "unbuild",
|