wj-elements 0.1.176 → 0.1.178
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/base-path.js +23 -0
- package/dist/base-path.js.map +1 -0
- package/dist/dark.css +6 -0
- package/dist/light.css +5 -0
- package/dist/packages/index.d.ts +4 -2
- package/dist/packages/utils/base-path.d.ts +14 -0
- package/dist/packages/utils/permissions.d.ts +40 -0
- package/dist/packages/wje-color-picker/color-picker.test.d.ts +1 -0
- package/dist/packages/wje-element/element.d.ts +3 -3
- package/dist/packages/wje-icon/service/library.d.ts +3 -0
- package/dist/packages/wje-option/option.element.d.ts +36 -2
- package/dist/packages/wje-select/select.element.d.ts +26 -2
- package/dist/packages/wje-split-view/split-view.element.d.ts +0 -1
- package/dist/packages/wje-tooltip/tooltip.element.d.ts +5 -0
- package/dist/wje-element.js +231 -229
- package/dist/wje-element.js.map +1 -1
- package/dist/wje-icon-library.js +24 -0
- package/dist/wje-icon-library.js.map +1 -0
- package/dist/wje-icon.js +6 -5
- package/dist/wje-icon.js.map +1 -1
- package/dist/wje-input.js +1 -1
- package/dist/wje-master.js +189 -183
- package/dist/wje-master.js.map +1 -1
- package/dist/wje-option.js +193 -25
- package/dist/wje-option.js.map +1 -1
- package/dist/wje-select.js +55 -17
- package/dist/wje-select.js.map +1 -1
- package/dist/wje-split-view.js.map +1 -1
- package/dist/wje-textarea.js +2 -2
- package/dist/wje-textarea.js.map +1 -1
- package/dist/wje-tooltip.js +9 -0
- package/dist/wje-tooltip.js.map +1 -1
- package/package.json +4 -1
- package/dist/packages/utils/permissions-api.d.ts +0 -34
- package/dist/packages/utils/wje-import.d.ts +0 -0
- /package/dist/packages/{utils/wje-import-firefox.d.ts → wje-accordion/accordion.test.d.ts} +0 -0
package/dist/wje-element.js
CHANGED
|
@@ -11,6 +11,235 @@ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "
|
|
|
11
11
|
var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
|
|
12
12
|
var _Event_instances, dispatch_fn, _drawingStatus, _isAttached, _isRendering, _originalVisibility, _pristine, _WJElement_instances, enqueueUpdate_fn, refresh_fn, resolveRender_fn;
|
|
13
13
|
import { store, defaultStoreActions } from "./wje-store.js";
|
|
14
|
+
var self;
|
|
15
|
+
class Event {
|
|
16
|
+
constructor() {
|
|
17
|
+
__privateAdd(this, _Event_instances);
|
|
18
|
+
this.customEventWeakMap = /* @__PURE__ */ new WeakMap();
|
|
19
|
+
self = this;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Dispatch custom event to the element with the specified event name and detail.
|
|
23
|
+
* @param element
|
|
24
|
+
* @param event
|
|
25
|
+
* @param detail
|
|
26
|
+
*/
|
|
27
|
+
dispatchCustomEvent(element, event2, detail) {
|
|
28
|
+
element.dispatchEvent(
|
|
29
|
+
new CustomEvent(event2, {
|
|
30
|
+
detail: detail || {
|
|
31
|
+
context: element,
|
|
32
|
+
event: self
|
|
33
|
+
},
|
|
34
|
+
bubbles: true,
|
|
35
|
+
composed: true,
|
|
36
|
+
cancelable: true
|
|
37
|
+
})
|
|
38
|
+
);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Find record by element in the storage.
|
|
42
|
+
* @param element
|
|
43
|
+
* @returns {*}
|
|
44
|
+
*/
|
|
45
|
+
findRecordByElement(element) {
|
|
46
|
+
return this.customEventWeakMap.get(element);
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Add listener to the element. If the element is an array, the listener will be added to all elements in the array.
|
|
50
|
+
* @param element
|
|
51
|
+
* @param originalEvent
|
|
52
|
+
* @param event
|
|
53
|
+
* @param listener
|
|
54
|
+
* @param options
|
|
55
|
+
*/
|
|
56
|
+
addListener(element, originalEvent, event2, listener, options) {
|
|
57
|
+
if (!element) return;
|
|
58
|
+
if (!Array.isArray(element)) element = [element];
|
|
59
|
+
element.forEach((el) => {
|
|
60
|
+
this.writeRecord(el, originalEvent, event2, listener, options);
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Write record to the storage.
|
|
65
|
+
* @param element
|
|
66
|
+
* @param originalEvent
|
|
67
|
+
* @param event
|
|
68
|
+
* @param listener
|
|
69
|
+
* @param options
|
|
70
|
+
*/
|
|
71
|
+
writeRecord(element, originalEvent, event2, listener, options) {
|
|
72
|
+
let recordListeners = this.findRecordByElement(element);
|
|
73
|
+
if (!recordListeners) {
|
|
74
|
+
this.customEventWeakMap.set(element, {
|
|
75
|
+
[originalEvent]: []
|
|
76
|
+
});
|
|
77
|
+
recordListeners = this.findRecordByElement(element);
|
|
78
|
+
} else {
|
|
79
|
+
recordListeners[originalEvent] = recordListeners[originalEvent] || [];
|
|
80
|
+
}
|
|
81
|
+
listener = listener || __privateMethod(this, _Event_instances, dispatch_fn);
|
|
82
|
+
let obj = {
|
|
83
|
+
listener,
|
|
84
|
+
options,
|
|
85
|
+
event: event2
|
|
86
|
+
};
|
|
87
|
+
if (!this.isRecordExists(recordListeners[originalEvent], obj)) {
|
|
88
|
+
if (!this.listenerExists(recordListeners[originalEvent], obj)) {
|
|
89
|
+
element.addEventListener(originalEvent, listener, options);
|
|
90
|
+
obj.unbind = () => {
|
|
91
|
+
element.removeEventListener(originalEvent, listener, options);
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
recordListeners[originalEvent].push(obj);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Performs a deep equality check between two objects.
|
|
99
|
+
* @param x The first object to compare.
|
|
100
|
+
* @param y The second object to compare.
|
|
101
|
+
* @returns - Returns `true` if the objects are deeply equal, `false` otherwise.
|
|
102
|
+
*/
|
|
103
|
+
deepEqual(x, y) {
|
|
104
|
+
return x && y && typeof x === "object" && typeof x === typeof y ? Object.keys(x).length === Object.keys(y).length && Object.keys(x).every((key) => this.deepEqual(x[key], y[key])) : x === y;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Check if the listener already exists on the element.
|
|
108
|
+
* @param records
|
|
109
|
+
* @param eventObj
|
|
110
|
+
* @returns
|
|
111
|
+
*/
|
|
112
|
+
listenerExists(records, eventObj) {
|
|
113
|
+
return records.some((e) => e.listener === eventObj.listener);
|
|
114
|
+
}
|
|
115
|
+
isRecordExists(records, eventObj) {
|
|
116
|
+
return records.some((e) => this.deepEqual(e, eventObj));
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Remove listener from the element and delete the listener from the custom event storage.
|
|
120
|
+
* @param element
|
|
121
|
+
* @param originalEvent
|
|
122
|
+
* @param event
|
|
123
|
+
* @param listener
|
|
124
|
+
* @param options
|
|
125
|
+
*/
|
|
126
|
+
removeListener(element, originalEvent, event2, listener, options) {
|
|
127
|
+
let records = this.findRecordByElement(element);
|
|
128
|
+
let listeners = records == null ? void 0 : records[originalEvent];
|
|
129
|
+
listener = listener || __privateMethod(this, _Event_instances, dispatch_fn);
|
|
130
|
+
if (listeners) {
|
|
131
|
+
let listenerOfWeakMap = listeners.find((e) => e.listener === listener);
|
|
132
|
+
if (listenerOfWeakMap) {
|
|
133
|
+
listeners.splice(listeners.indexOf(listenerOfWeakMap), 1);
|
|
134
|
+
}
|
|
135
|
+
if (!listeners.length) {
|
|
136
|
+
delete records[originalEvent];
|
|
137
|
+
element == null ? void 0 : element.removeEventListener(originalEvent, listener, options);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Remove all event listeners from the specified element and delete the element from the custom event storage.
|
|
143
|
+
* @param {HTMLElement} element The element from which all listeners will be removed.
|
|
144
|
+
*/
|
|
145
|
+
removeElement(element) {
|
|
146
|
+
let listeners = this.customEventWeakMap.get(element);
|
|
147
|
+
if (listeners) {
|
|
148
|
+
queueMicrotask(() => {
|
|
149
|
+
for (let event2 in listeners) {
|
|
150
|
+
listeners[event2].forEach((e) => {
|
|
151
|
+
element.removeEventListener(event2, e.listener, e.options);
|
|
152
|
+
e.unbind();
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
this.customEventWeakMap.delete(element);
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
// TODO
|
|
160
|
+
createPromiseFromEvent(element, event2) {
|
|
161
|
+
return new Promise((resolve) => {
|
|
162
|
+
let success = () => {
|
|
163
|
+
element.removeEventListener(event2, success);
|
|
164
|
+
resolve();
|
|
165
|
+
};
|
|
166
|
+
element.addEventListener(event2, success);
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
_Event_instances = new WeakSet();
|
|
171
|
+
/**
|
|
172
|
+
* Dispatch event to the element and trigger the listener.
|
|
173
|
+
* @param e
|
|
174
|
+
*/
|
|
175
|
+
dispatch_fn = function(e) {
|
|
176
|
+
let element = this;
|
|
177
|
+
let record = self.customEventWeakMap.get(this);
|
|
178
|
+
if (!record) return;
|
|
179
|
+
let listeners = record[e.type];
|
|
180
|
+
listeners.forEach((listener) => {
|
|
181
|
+
self.dispatchCustomEvent(element, listener.event, {
|
|
182
|
+
originalEvent: (e == null ? void 0 : e.type) || null,
|
|
183
|
+
context: element,
|
|
184
|
+
event: self
|
|
185
|
+
});
|
|
186
|
+
if (listener.options && listener.options.stopPropagation === true) {
|
|
187
|
+
e.stopPropagation();
|
|
188
|
+
e.stopImmediatePropagation();
|
|
189
|
+
e.preventDefault();
|
|
190
|
+
}
|
|
191
|
+
});
|
|
192
|
+
};
|
|
193
|
+
let event = new Event();
|
|
194
|
+
const _Permissions = class _Permissions {
|
|
195
|
+
/**
|
|
196
|
+
* Sets the permission key for the PermissionsApi.
|
|
197
|
+
* The key is stored internally and defaults to 'permissions' if no value is provided.
|
|
198
|
+
* @param {string} value The key to set for permissions. If no value is provided, the default is 'permissions'.
|
|
199
|
+
*/
|
|
200
|
+
static set permissionKey(value) {
|
|
201
|
+
_Permissions._permissionKey = value || "permissions";
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Retrieves the permission key used for accessing the permissions API.
|
|
205
|
+
* @returns {string} The permission key associated with the PermissionsApi.
|
|
206
|
+
*/
|
|
207
|
+
static get permissionKey() {
|
|
208
|
+
return _Permissions._permissionKey;
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Sets the permissions by storing them in the local storage.
|
|
212
|
+
* @param {object} value The permissions object to be stored.
|
|
213
|
+
*/
|
|
214
|
+
static set permissions(value) {
|
|
215
|
+
window.localStorage.setItem(_Permissions.permissionKey, JSON.stringify(value));
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Retrieves the list of permissions stored in the browser's local storage.
|
|
219
|
+
* @returns {Array} An array of permissions. If no permissions are found, returns an empty array.
|
|
220
|
+
*/
|
|
221
|
+
static get permissions() {
|
|
222
|
+
return JSON.parse(window.localStorage.getItem(_Permissions.permissionKey)) || [];
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Determines whether the specified key exists in the permissions list.
|
|
226
|
+
* @param {string} key The key to check for existence in the permissions list.
|
|
227
|
+
* @returns {boolean} Returns true if the key exists in the permissions list; otherwise, returns false.
|
|
228
|
+
*/
|
|
229
|
+
static includesKey(key) {
|
|
230
|
+
return _Permissions.permissions.includes(key);
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* Checks if at least one of the given permissions is fulfilled, based on the permissions available in `PermissionsApi`.
|
|
234
|
+
* @param {Array<string>} permissions The list of permissions to check against the permissions available in `PermissionsApi`.
|
|
235
|
+
* @returns {boolean} Returns `true` if any of the given permissions match the permissions available in `PermissionsApi`, otherwise returns `false`.
|
|
236
|
+
*/
|
|
237
|
+
static isPermissionFulfilled(permissions) {
|
|
238
|
+
return permissions.some((perm) => _Permissions.permissions.includes(perm));
|
|
239
|
+
}
|
|
240
|
+
};
|
|
241
|
+
__publicField(_Permissions, "_permissionKey", "permissions");
|
|
242
|
+
let Permissions = _Permissions;
|
|
14
243
|
class UniversalService {
|
|
15
244
|
constructor(props = {}) {
|
|
16
245
|
__publicField(this, "findByKey", (attrName, key, keyValue) => {
|
|
@@ -121,53 +350,6 @@ class UniversalService {
|
|
|
121
350
|
return promise;
|
|
122
351
|
}
|
|
123
352
|
}
|
|
124
|
-
const _WjePermissionsApi = class _WjePermissionsApi {
|
|
125
|
-
/**
|
|
126
|
-
* Sets the permission key.
|
|
127
|
-
* @param value
|
|
128
|
-
*/
|
|
129
|
-
static set permissionKey(value) {
|
|
130
|
-
_WjePermissionsApi._permissionKey = value || "permissions";
|
|
131
|
-
}
|
|
132
|
-
/**
|
|
133
|
-
* Returns the permission key.
|
|
134
|
-
* @returns {*|string}
|
|
135
|
-
*/
|
|
136
|
-
static get permissionKey() {
|
|
137
|
-
return _WjePermissionsApi._permissionKey;
|
|
138
|
-
}
|
|
139
|
-
/**
|
|
140
|
-
* Sets the permissions.
|
|
141
|
-
* @param value
|
|
142
|
-
*/
|
|
143
|
-
static set permissions(value) {
|
|
144
|
-
window.localStorage.setItem(_WjePermissionsApi.permissionKey, JSON.stringify(value));
|
|
145
|
-
}
|
|
146
|
-
/**
|
|
147
|
-
* Returns the permissions.
|
|
148
|
-
* @returns {string[]}
|
|
149
|
-
*/
|
|
150
|
-
static get permissions() {
|
|
151
|
-
return JSON.parse(window.localStorage.getItem(_WjePermissionsApi.permissionKey)) || [];
|
|
152
|
-
}
|
|
153
|
-
/**
|
|
154
|
-
* Checks if the permission is included.
|
|
155
|
-
* @param key
|
|
156
|
-
* @returns {boolean}
|
|
157
|
-
*/
|
|
158
|
-
static includesKey(key) {
|
|
159
|
-
return _WjePermissionsApi.permissions.includes(key);
|
|
160
|
-
}
|
|
161
|
-
/**
|
|
162
|
-
* Checks if the permission is fulfilled.
|
|
163
|
-
* @returns {boolean}
|
|
164
|
-
*/
|
|
165
|
-
static isPermissionFulfilled(permissions) {
|
|
166
|
-
return permissions.some((perm) => _WjePermissionsApi.permissions.includes(perm));
|
|
167
|
-
}
|
|
168
|
-
};
|
|
169
|
-
__publicField(_WjePermissionsApi, "_permissionKey", "permissions");
|
|
170
|
-
let WjePermissionsApi = _WjePermissionsApi;
|
|
171
353
|
class WjElementUtils {
|
|
172
354
|
/**
|
|
173
355
|
* This function creates an element.
|
|
@@ -259,186 +441,6 @@ class WjElementUtils {
|
|
|
259
441
|
return !["false", "0", 0].includes(value);
|
|
260
442
|
}
|
|
261
443
|
}
|
|
262
|
-
var self;
|
|
263
|
-
class Event {
|
|
264
|
-
constructor() {
|
|
265
|
-
__privateAdd(this, _Event_instances);
|
|
266
|
-
this.customEventWeakMap = /* @__PURE__ */ new WeakMap();
|
|
267
|
-
self = this;
|
|
268
|
-
}
|
|
269
|
-
/**
|
|
270
|
-
* Dispatch custom event to the element with the specified event name and detail.
|
|
271
|
-
* @param element
|
|
272
|
-
* @param event
|
|
273
|
-
* @param detail
|
|
274
|
-
*/
|
|
275
|
-
dispatchCustomEvent(element, event2, detail) {
|
|
276
|
-
element.dispatchEvent(
|
|
277
|
-
new CustomEvent(event2, {
|
|
278
|
-
detail: detail || {
|
|
279
|
-
context: element,
|
|
280
|
-
event: self
|
|
281
|
-
},
|
|
282
|
-
bubbles: true,
|
|
283
|
-
composed: true,
|
|
284
|
-
cancelable: true
|
|
285
|
-
})
|
|
286
|
-
);
|
|
287
|
-
}
|
|
288
|
-
/**
|
|
289
|
-
* Find record by element in the storage.
|
|
290
|
-
* @param element
|
|
291
|
-
* @returns {*}
|
|
292
|
-
*/
|
|
293
|
-
findRecordByElement(element) {
|
|
294
|
-
return this.customEventWeakMap.get(element);
|
|
295
|
-
}
|
|
296
|
-
/**
|
|
297
|
-
* Add listener to the element. If the element is an array, the listener will be added to all elements in the array.
|
|
298
|
-
* @param element
|
|
299
|
-
* @param originalEvent
|
|
300
|
-
* @param event
|
|
301
|
-
* @param listener
|
|
302
|
-
* @param options
|
|
303
|
-
*/
|
|
304
|
-
addListener(element, originalEvent, event2, listener, options) {
|
|
305
|
-
if (!element) return;
|
|
306
|
-
if (!Array.isArray(element)) element = [element];
|
|
307
|
-
element.forEach((el) => {
|
|
308
|
-
this.writeRecord(el, originalEvent, event2, listener, options);
|
|
309
|
-
});
|
|
310
|
-
}
|
|
311
|
-
/**
|
|
312
|
-
* Write record to the storage.
|
|
313
|
-
* @param element
|
|
314
|
-
* @param originalEvent
|
|
315
|
-
* @param event
|
|
316
|
-
* @param listener
|
|
317
|
-
* @param options
|
|
318
|
-
*/
|
|
319
|
-
writeRecord(element, originalEvent, event2, listener, options) {
|
|
320
|
-
let recordListeners = this.findRecordByElement(element);
|
|
321
|
-
if (!recordListeners) {
|
|
322
|
-
this.customEventWeakMap.set(element, {
|
|
323
|
-
[originalEvent]: []
|
|
324
|
-
});
|
|
325
|
-
recordListeners = this.findRecordByElement(element);
|
|
326
|
-
} else {
|
|
327
|
-
recordListeners[originalEvent] = recordListeners[originalEvent] || [];
|
|
328
|
-
}
|
|
329
|
-
listener = listener || __privateMethod(this, _Event_instances, dispatch_fn);
|
|
330
|
-
let obj = {
|
|
331
|
-
listener,
|
|
332
|
-
options,
|
|
333
|
-
event: event2
|
|
334
|
-
};
|
|
335
|
-
if (!this.isRecordExists(recordListeners[originalEvent], obj)) {
|
|
336
|
-
if (!this.listenerExists(recordListeners[originalEvent], obj)) {
|
|
337
|
-
element.addEventListener(originalEvent, listener, options);
|
|
338
|
-
obj.unbind = () => {
|
|
339
|
-
element.removeEventListener(originalEvent, listener, options);
|
|
340
|
-
};
|
|
341
|
-
}
|
|
342
|
-
recordListeners[originalEvent].push(obj);
|
|
343
|
-
}
|
|
344
|
-
}
|
|
345
|
-
/**
|
|
346
|
-
* Performs a deep equality check between two objects.
|
|
347
|
-
* @param x The first object to compare.
|
|
348
|
-
* @param y The second object to compare.
|
|
349
|
-
* @returns - Returns `true` if the objects are deeply equal, `false` otherwise.
|
|
350
|
-
*/
|
|
351
|
-
deepEqual(x, y) {
|
|
352
|
-
return x && y && typeof x === "object" && typeof x === typeof y ? Object.keys(x).length === Object.keys(y).length && Object.keys(x).every((key) => this.deepEqual(x[key], y[key])) : x === y;
|
|
353
|
-
}
|
|
354
|
-
/**
|
|
355
|
-
* Check if the listener already exists on the element.
|
|
356
|
-
* @param records
|
|
357
|
-
* @param eventObj
|
|
358
|
-
* @returns
|
|
359
|
-
*/
|
|
360
|
-
listenerExists(records, eventObj) {
|
|
361
|
-
return records.some((e) => e.listener === eventObj.listener);
|
|
362
|
-
}
|
|
363
|
-
isRecordExists(records, eventObj) {
|
|
364
|
-
return records.some((e) => this.deepEqual(e, eventObj));
|
|
365
|
-
}
|
|
366
|
-
/**
|
|
367
|
-
* Remove listener from the element and delete the listener from the custom event storage.
|
|
368
|
-
* @param element
|
|
369
|
-
* @param originalEvent
|
|
370
|
-
* @param event
|
|
371
|
-
* @param listener
|
|
372
|
-
* @param options
|
|
373
|
-
*/
|
|
374
|
-
removeListener(element, originalEvent, event2, listener, options) {
|
|
375
|
-
let records = this.findRecordByElement(element);
|
|
376
|
-
let listeners = records == null ? void 0 : records[originalEvent];
|
|
377
|
-
listener = listener || __privateMethod(this, _Event_instances, dispatch_fn);
|
|
378
|
-
if (listeners) {
|
|
379
|
-
let listenerOfWeakMap = listeners.find((e) => e.listener === listener);
|
|
380
|
-
if (listenerOfWeakMap) {
|
|
381
|
-
listeners.splice(listeners.indexOf(listenerOfWeakMap), 1);
|
|
382
|
-
}
|
|
383
|
-
if (!listeners.length) {
|
|
384
|
-
delete records[originalEvent];
|
|
385
|
-
element == null ? void 0 : element.removeEventListener(originalEvent, listener, options);
|
|
386
|
-
}
|
|
387
|
-
}
|
|
388
|
-
}
|
|
389
|
-
/**
|
|
390
|
-
* Remove all event listeners from the specified element and delete the element from the custom event storage.
|
|
391
|
-
* @param {HTMLElement} element The element from which all listeners will be removed.
|
|
392
|
-
*/
|
|
393
|
-
removeElement(element) {
|
|
394
|
-
let listeners = this.customEventWeakMap.get(element);
|
|
395
|
-
if (listeners) {
|
|
396
|
-
queueMicrotask(() => {
|
|
397
|
-
for (let event2 in listeners) {
|
|
398
|
-
listeners[event2].forEach((e) => {
|
|
399
|
-
element.removeEventListener(event2, e.listener, e.options);
|
|
400
|
-
e.unbind();
|
|
401
|
-
});
|
|
402
|
-
}
|
|
403
|
-
this.customEventWeakMap.delete(element);
|
|
404
|
-
});
|
|
405
|
-
}
|
|
406
|
-
}
|
|
407
|
-
// TODO
|
|
408
|
-
createPromiseFromEvent(element, event2) {
|
|
409
|
-
return new Promise((resolve) => {
|
|
410
|
-
let success = () => {
|
|
411
|
-
element.removeEventListener(event2, success);
|
|
412
|
-
resolve();
|
|
413
|
-
};
|
|
414
|
-
element.addEventListener(event2, success);
|
|
415
|
-
});
|
|
416
|
-
}
|
|
417
|
-
}
|
|
418
|
-
_Event_instances = new WeakSet();
|
|
419
|
-
/**
|
|
420
|
-
* Dispatch event to the element and trigger the listener.
|
|
421
|
-
* @param e
|
|
422
|
-
*/
|
|
423
|
-
dispatch_fn = function(e) {
|
|
424
|
-
let element = this;
|
|
425
|
-
let record = self.customEventWeakMap.get(this);
|
|
426
|
-
if (!record) return;
|
|
427
|
-
let listeners = record[e.type];
|
|
428
|
-
listeners.forEach((listener) => {
|
|
429
|
-
self.dispatchCustomEvent(element, listener.event, {
|
|
430
|
-
originalEvent: (e == null ? void 0 : e.type) || null,
|
|
431
|
-
context: element,
|
|
432
|
-
event: self
|
|
433
|
-
});
|
|
434
|
-
if (listener.options && listener.options.stopPropagation === true) {
|
|
435
|
-
e.stopPropagation();
|
|
436
|
-
e.stopImmediatePropagation();
|
|
437
|
-
e.preventDefault();
|
|
438
|
-
}
|
|
439
|
-
});
|
|
440
|
-
};
|
|
441
|
-
let event = new Event();
|
|
442
444
|
const template = document.createElement("template");
|
|
443
445
|
template.innerHTML = ``;
|
|
444
446
|
const _WJElement = class _WJElement extends HTMLElement {
|
|
@@ -814,7 +816,7 @@ const _WJElement = class _WJElement extends HTMLElement {
|
|
|
814
816
|
[...this.context.childNodes].forEach(this.context.removeChild.bind(this.context));
|
|
815
817
|
}
|
|
816
818
|
this.context.append(this.template.content.cloneNode(true));
|
|
817
|
-
if (this.noShow || this.isPermissionCheck && !
|
|
819
|
+
if (this.noShow || this.isPermissionCheck && !Permissions.isPermissionFulfilled(this.permission)) {
|
|
818
820
|
this.remove();
|
|
819
821
|
return Promise.resolve();
|
|
820
822
|
}
|
|
@@ -990,8 +992,8 @@ __publicField(_WJElement, "processTemplates", (pTemplate, inputTemplate) => {
|
|
|
990
992
|
let WJElement = _WJElement;
|
|
991
993
|
let __esModule = "true";
|
|
992
994
|
export {
|
|
995
|
+
Permissions,
|
|
993
996
|
WjElementUtils,
|
|
994
|
-
WjePermissionsApi,
|
|
995
997
|
__esModule,
|
|
996
998
|
WJElement as default,
|
|
997
999
|
event
|