@knotx/plugins-selection 0.3.2 → 0.3.3
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 +41 -2
- package/dist/index.d.cts +2 -0
- package/dist/index.d.mts +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +41 -2
- package/package.json +6 -6
package/dist/index.cjs
CHANGED
|
@@ -73,8 +73,28 @@ 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, _getSelected_dec, _init_dec, _interaction_dec, _registerRules_dec, _selected_dec, _a, _init;
|
|
77
|
-
class Selection extends (_a = core.BasePlugin, _selected_dec = [decorators.register("selected")], _registerRules_dec = [decorators.register("registerRules")], _interaction_dec = [decorators.inject.interaction()], _init_dec = [decorators.OnInit], _getSelected_dec = [decorators.tool("Get selected items", {})],
|
|
76
|
+
var _destroy_dec, _clearSelection_dec, _select_dec, _getSelected_dec, _init_dec, _interaction_dec, _registerRules_dec, _selected_dec, _a, _init;
|
|
77
|
+
class Selection extends (_a = core.BasePlugin, _selected_dec = [decorators.register("selected")], _registerRules_dec = [decorators.register("registerRules")], _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.", {
|
|
78
|
+
type: "array",
|
|
79
|
+
items: {
|
|
80
|
+
type: "object",
|
|
81
|
+
properties: {
|
|
82
|
+
type: {
|
|
83
|
+
type: "string",
|
|
84
|
+
description: "item type such as node, group, etc."
|
|
85
|
+
},
|
|
86
|
+
id: {
|
|
87
|
+
type: "string"
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
additionalProperties: false,
|
|
91
|
+
required: [
|
|
92
|
+
"id",
|
|
93
|
+
"type"
|
|
94
|
+
]
|
|
95
|
+
},
|
|
96
|
+
$schema: "http://json-schema.org/draft-07/schema#"
|
|
97
|
+
})], _clearSelection_dec = [decorators.tool("Clear selection", {})], _destroy_dec = [decorators.OnDestroy], _a) {
|
|
78
98
|
constructor() {
|
|
79
99
|
super(...arguments);
|
|
80
100
|
__runInitializers(_init, 5, this);
|
|
@@ -114,6 +134,7 @@ class Selection extends (_a = core.BasePlugin, _selected_dec = [decorators.regis
|
|
|
114
134
|
const rule = this.getElementRule(element);
|
|
115
135
|
if (rule == null ? void 0 : rule.activeClassName) {
|
|
116
136
|
element.classList.remove(rule.activeClassName);
|
|
137
|
+
element.removeAttribute("data-selected");
|
|
117
138
|
}
|
|
118
139
|
});
|
|
119
140
|
(_a2 = this.selection) == null ? void 0 : _a2.clearSelection(true, true);
|
|
@@ -150,6 +171,7 @@ class Selection extends (_a = core.BasePlugin, _selected_dec = [decorators.regis
|
|
|
150
171
|
}
|
|
151
172
|
if (rule.activeClassName) {
|
|
152
173
|
element.classList.remove(rule.activeClassName);
|
|
174
|
+
element.removeAttribute("data-selected");
|
|
153
175
|
}
|
|
154
176
|
});
|
|
155
177
|
added.forEach((element) => {
|
|
@@ -169,6 +191,7 @@ class Selection extends (_a = core.BasePlugin, _selected_dec = [decorators.regis
|
|
|
169
191
|
}
|
|
170
192
|
if (rule.activeClassName) {
|
|
171
193
|
element.classList.add(rule.activeClassName);
|
|
194
|
+
element.setAttribute("data-selected", "true");
|
|
172
195
|
}
|
|
173
196
|
});
|
|
174
197
|
});
|
|
@@ -234,6 +257,21 @@ class Selection extends (_a = core.BasePlugin, _selected_dec = [decorators.regis
|
|
|
234
257
|
getSelected() {
|
|
235
258
|
return this.selected;
|
|
236
259
|
}
|
|
260
|
+
select(items) {
|
|
261
|
+
var _a2;
|
|
262
|
+
const typeToClassName = /* @__PURE__ */ new Map();
|
|
263
|
+
this.ruleMap.forEach((rule, className) => {
|
|
264
|
+
typeToClassName.set(rule.type, className);
|
|
265
|
+
});
|
|
266
|
+
const selectors = [];
|
|
267
|
+
for (const item of items) {
|
|
268
|
+
const className = typeToClassName.get(item.type);
|
|
269
|
+
if (className) {
|
|
270
|
+
selectors.push(`.${className}[data-${item.type}-id="${item.id}"]`);
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
(_a2 = this.selection) == null ? void 0 : _a2.select(selectors);
|
|
274
|
+
}
|
|
237
275
|
clearSelection() {
|
|
238
276
|
var _a2;
|
|
239
277
|
(_a2 = this.selection) == null ? void 0 : _a2.clearSelection(true, false);
|
|
@@ -247,6 +285,7 @@ class Selection extends (_a = core.BasePlugin, _selected_dec = [decorators.regis
|
|
|
247
285
|
_init = __decoratorStart(_a);
|
|
248
286
|
__decorateElement(_init, 1, "init", _init_dec, Selection);
|
|
249
287
|
__decorateElement(_init, 1, "getSelected", _getSelected_dec, Selection);
|
|
288
|
+
__decorateElement(_init, 1, "select", _select_dec, Selection);
|
|
250
289
|
__decorateElement(_init, 1, "clearSelection", _clearSelection_dec, Selection);
|
|
251
290
|
__decorateElement(_init, 1, "destroy", _destroy_dec, Selection);
|
|
252
291
|
__decorateElement(_init, 5, "selected", _selected_dec, Selection);
|
package/dist/index.d.cts
CHANGED
|
@@ -13,6 +13,7 @@ declare module '@knotx/core' {
|
|
|
13
13
|
}
|
|
14
14
|
interface PluginTools {
|
|
15
15
|
selection: {
|
|
16
|
+
select: (items: SelectionSelectedItem[]) => void;
|
|
16
17
|
getSelected: () => SelectionSelectedItem[];
|
|
17
18
|
clearSelection: () => void;
|
|
18
19
|
};
|
|
@@ -81,6 +82,7 @@ declare class Selection extends BasePlugin<'selection', SelectionConfig> {
|
|
|
81
82
|
private getElementRule;
|
|
82
83
|
private updateSelected;
|
|
83
84
|
getSelected(): SelectionSelectedItem[];
|
|
85
|
+
select(items: SelectionSelectedItem[]): void;
|
|
84
86
|
clearSelection(): void;
|
|
85
87
|
destroy(): void;
|
|
86
88
|
}
|
package/dist/index.d.mts
CHANGED
|
@@ -13,6 +13,7 @@ declare module '@knotx/core' {
|
|
|
13
13
|
}
|
|
14
14
|
interface PluginTools {
|
|
15
15
|
selection: {
|
|
16
|
+
select: (items: SelectionSelectedItem[]) => void;
|
|
16
17
|
getSelected: () => SelectionSelectedItem[];
|
|
17
18
|
clearSelection: () => void;
|
|
18
19
|
};
|
|
@@ -81,6 +82,7 @@ declare class Selection extends BasePlugin<'selection', SelectionConfig> {
|
|
|
81
82
|
private getElementRule;
|
|
82
83
|
private updateSelected;
|
|
83
84
|
getSelected(): SelectionSelectedItem[];
|
|
85
|
+
select(items: SelectionSelectedItem[]): void;
|
|
84
86
|
clearSelection(): void;
|
|
85
87
|
destroy(): void;
|
|
86
88
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -13,6 +13,7 @@ declare module '@knotx/core' {
|
|
|
13
13
|
}
|
|
14
14
|
interface PluginTools {
|
|
15
15
|
selection: {
|
|
16
|
+
select: (items: SelectionSelectedItem[]) => void;
|
|
16
17
|
getSelected: () => SelectionSelectedItem[];
|
|
17
18
|
clearSelection: () => void;
|
|
18
19
|
};
|
|
@@ -81,6 +82,7 @@ declare class Selection extends BasePlugin<'selection', SelectionConfig> {
|
|
|
81
82
|
private getElementRule;
|
|
82
83
|
private updateSelected;
|
|
83
84
|
getSelected(): SelectionSelectedItem[];
|
|
85
|
+
select(items: SelectionSelectedItem[]): void;
|
|
84
86
|
clearSelection(): void;
|
|
85
87
|
destroy(): void;
|
|
86
88
|
}
|
package/dist/index.js
CHANGED
|
@@ -67,8 +67,28 @@ 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, _getSelected_dec, _init_dec, _interaction_dec, _registerRules_dec, _selected_dec, _a, _init;
|
|
71
|
-
class Selection extends (_a = BasePlugin, _selected_dec = [register("selected")], _registerRules_dec = [register("registerRules")], _interaction_dec = [inject.interaction()], _init_dec = [OnInit], _getSelected_dec = [tool("Get selected items", {})],
|
|
70
|
+
var _destroy_dec, _clearSelection_dec, _select_dec, _getSelected_dec, _init_dec, _interaction_dec, _registerRules_dec, _selected_dec, _a, _init;
|
|
71
|
+
class Selection extends (_a = BasePlugin, _selected_dec = [register("selected")], _registerRules_dec = [register("registerRules")], _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.", {
|
|
72
|
+
type: "array",
|
|
73
|
+
items: {
|
|
74
|
+
type: "object",
|
|
75
|
+
properties: {
|
|
76
|
+
type: {
|
|
77
|
+
type: "string",
|
|
78
|
+
description: "item type such as node, group, etc."
|
|
79
|
+
},
|
|
80
|
+
id: {
|
|
81
|
+
type: "string"
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
additionalProperties: false,
|
|
85
|
+
required: [
|
|
86
|
+
"id",
|
|
87
|
+
"type"
|
|
88
|
+
]
|
|
89
|
+
},
|
|
90
|
+
$schema: "http://json-schema.org/draft-07/schema#"
|
|
91
|
+
})], _clearSelection_dec = [tool("Clear selection", {})], _destroy_dec = [OnDestroy], _a) {
|
|
72
92
|
constructor() {
|
|
73
93
|
super(...arguments);
|
|
74
94
|
__runInitializers(_init, 5, this);
|
|
@@ -108,6 +128,7 @@ class Selection extends (_a = BasePlugin, _selected_dec = [register("selected")]
|
|
|
108
128
|
const rule = this.getElementRule(element);
|
|
109
129
|
if (rule == null ? void 0 : rule.activeClassName) {
|
|
110
130
|
element.classList.remove(rule.activeClassName);
|
|
131
|
+
element.removeAttribute("data-selected");
|
|
111
132
|
}
|
|
112
133
|
});
|
|
113
134
|
(_a2 = this.selection) == null ? void 0 : _a2.clearSelection(true, true);
|
|
@@ -144,6 +165,7 @@ class Selection extends (_a = BasePlugin, _selected_dec = [register("selected")]
|
|
|
144
165
|
}
|
|
145
166
|
if (rule.activeClassName) {
|
|
146
167
|
element.classList.remove(rule.activeClassName);
|
|
168
|
+
element.removeAttribute("data-selected");
|
|
147
169
|
}
|
|
148
170
|
});
|
|
149
171
|
added.forEach((element) => {
|
|
@@ -163,6 +185,7 @@ class Selection extends (_a = BasePlugin, _selected_dec = [register("selected")]
|
|
|
163
185
|
}
|
|
164
186
|
if (rule.activeClassName) {
|
|
165
187
|
element.classList.add(rule.activeClassName);
|
|
188
|
+
element.setAttribute("data-selected", "true");
|
|
166
189
|
}
|
|
167
190
|
});
|
|
168
191
|
});
|
|
@@ -228,6 +251,21 @@ class Selection extends (_a = BasePlugin, _selected_dec = [register("selected")]
|
|
|
228
251
|
getSelected() {
|
|
229
252
|
return this.selected;
|
|
230
253
|
}
|
|
254
|
+
select(items) {
|
|
255
|
+
var _a2;
|
|
256
|
+
const typeToClassName = /* @__PURE__ */ new Map();
|
|
257
|
+
this.ruleMap.forEach((rule, className) => {
|
|
258
|
+
typeToClassName.set(rule.type, className);
|
|
259
|
+
});
|
|
260
|
+
const selectors = [];
|
|
261
|
+
for (const item of items) {
|
|
262
|
+
const className = typeToClassName.get(item.type);
|
|
263
|
+
if (className) {
|
|
264
|
+
selectors.push(`.${className}[data-${item.type}-id="${item.id}"]`);
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
(_a2 = this.selection) == null ? void 0 : _a2.select(selectors);
|
|
268
|
+
}
|
|
231
269
|
clearSelection() {
|
|
232
270
|
var _a2;
|
|
233
271
|
(_a2 = this.selection) == null ? void 0 : _a2.clearSelection(true, false);
|
|
@@ -241,6 +279,7 @@ class Selection extends (_a = BasePlugin, _selected_dec = [register("selected")]
|
|
|
241
279
|
_init = __decoratorStart(_a);
|
|
242
280
|
__decorateElement(_init, 1, "init", _init_dec, Selection);
|
|
243
281
|
__decorateElement(_init, 1, "getSelected", _getSelected_dec, Selection);
|
|
282
|
+
__decorateElement(_init, 1, "select", _select_dec, Selection);
|
|
244
283
|
__decorateElement(_init, 1, "clearSelection", _clearSelection_dec, Selection);
|
|
245
284
|
__decorateElement(_init, 1, "destroy", _destroy_dec, Selection);
|
|
246
285
|
__decorateElement(_init, 5, "selected", _selected_dec, 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.3",
|
|
4
4
|
"description": "Selection Plugin for Knotx",
|
|
5
5
|
"author": "boenfu",
|
|
6
6
|
"license": "MIT",
|
|
@@ -30,13 +30,13 @@
|
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"@viselect/vanilla": "^3.9.0",
|
|
32
32
|
"rxjs": "^7.8.1",
|
|
33
|
-
"@knotx/core": "0.3.
|
|
34
|
-
"@knotx/decorators": "0.3.
|
|
33
|
+
"@knotx/core": "0.3.3",
|
|
34
|
+
"@knotx/decorators": "0.3.3"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@knotx/build-config": "0.3.
|
|
38
|
-
"@knotx/eslint-config": "0.3.
|
|
39
|
-
"@knotx/typescript-config": "0.3.
|
|
37
|
+
"@knotx/build-config": "0.3.3",
|
|
38
|
+
"@knotx/eslint-config": "0.3.3",
|
|
39
|
+
"@knotx/typescript-config": "0.3.3"
|
|
40
40
|
},
|
|
41
41
|
"scripts": {
|
|
42
42
|
"build": "unbuild",
|