@hestia-earth/ui-components 0.0.7 → 0.0.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/README.md +5 -22
- package/bibliographies/bibliographies-search-confirm/bibliographies-search-confirm.component.d.ts +1 -1
- package/bundles/hestia-earth-ui-components.umd.js +2339 -806
- package/bundles/hestia-earth-ui-components.umd.js.map +1 -1
- package/common/blank-node-state/blank-node-state.component.d.ts +2 -2
- package/common/common.light.module.d.ts +19 -0
- package/common/common.module.d.ts +10 -19
- package/common/delta-utils.d.ts +1 -1
- package/common/index.d.ts +1 -0
- package/common/link-key-value/link-key-value.component.d.ts +1 -1
- package/common/maps-utils.d.ts +2 -2
- package/common/precision.pipe.d.ts +1 -1
- package/common/tags-input.directive.d.ts +1 -1
- package/common/utils.d.ts +7 -7
- package/cycles/cycles-emissions-chart/cycles-emissions-chart.component.d.ts +2 -2
- package/cycles/cycles-suggest-form/cycles-suggest-form.component.d.ts +1 -2
- package/cycles/cycles.model.d.ts +1 -1
- package/engine/aggregation-engine.service.d.ts +2 -2
- package/engine/engine.service.d.ts +5 -4
- package/esm2015/common/common.light.module.js +66 -0
- package/esm2015/common/common.module.js +11 -47
- package/esm2015/common/index.js +2 -1
- package/esm2015/common/tags-input.directive.js +3 -3
- package/esm2015/common/utils.js +1 -2
- package/esm2015/engine/engine.service.js +10 -6
- package/esm2015/tags-input/defaultOptions.js +26 -0
- package/esm2015/tags-input/index.js +1053 -0
- package/esm2015/tags-input/templates/dropdown-item.js +3 -0
- package/esm2015/tags-input/templates/tag.js +6 -0
- package/esm2015/tags-input/templates/wrapper.js +10 -0
- package/esm2015/tags-input/utils/component.js +80 -0
- package/esm2015/tags-input/utils/dom.js +98 -0
- package/esm2015/tags-input/utils/events.js +147 -0
- package/esm2015/tags-input/utils/type.js +41 -0
- package/esm2015/tags-input/utils/uuid.js +3 -0
- package/fesm2015/hestia-earth-ui-components.js +1977 -499
- package/fesm2015/hestia-earth-ui-components.js.map +1 -1
- package/files/files-error.model.d.ts +5 -5
- package/files/files-form/files-form.component.d.ts +7 -7
- package/files/files-form.model.d.ts +10 -10
- package/impact-assessments/impact-assessments-indicators-chart/impact-assessments-indicators-chart.component.d.ts +2 -2
- package/impact-assessments/impact-assessments-products/impact-assessments-products.component.d.ts +2 -2
- package/node/node-icon/node-icon.component.d.ts +1 -1
- package/node/node-link/node-link.component.d.ts +1 -1
- package/node/node-logs-models/node-logs-models.component.d.ts +1 -1
- package/node/node.service.d.ts +2 -2
- package/package.json +1 -2
- package/schema/schema.service.d.ts +1 -1
- package/search/search.model.d.ts +18 -17
- package/search/search.service.d.ts +7 -7
- package/sites/sites-maps/sites-maps.component.d.ts +1 -1
- package/sites/sites-measurements/sites-measurements.component.d.ts +1 -1
- package/sites/sites.model.d.ts +1 -1
- package/styles.scss +1 -1
- package/tags-input/defaultOptions.d.ts +25 -0
- package/tags-input/index.d.ts +277 -0
- package/tags-input/styles.sass +154 -0
- package/tags-input/templates/dropdown-item.d.ts +2 -0
- package/tags-input/templates/tag.d.ts +2 -0
- package/tags-input/templates/wrapper.d.ts +2 -0
- package/tags-input/utils/component.d.ts +22 -0
- package/tags-input/utils/dom.d.ts +38 -0
- package/tags-input/utils/events.d.ts +72 -0
- package/tags-input/utils/type.d.ts +17 -0
- package/tags-input/utils/uuid.d.ts +2 -0
- package/terms/terms.model.d.ts +1 -1
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { escape } from '../utils/dom';
|
|
2
|
+
export default (data) => `<a href="javascript:void(0);" class="dropdown-item" data-value="${escape(data.value)}" data-text="${escape(data.text)}">${escape(data.text)}</a>`;
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24taXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90YWdzLWlucHV0L3RlbXBsYXRlcy9kcm9wZG93bi1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFdEMsZUFBZSxDQUFDLElBQUksRUFBRSxFQUFFLENBQ3RCLG1FQUNFLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUNuQixnQkFBZ0IsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBlc2NhcGUgfSBmcm9tICcuLi91dGlscy9kb20nO1xuXG5leHBvcnQgZGVmYXVsdCAoZGF0YSkgPT5cbiAgYDxhIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMCk7XCIgY2xhc3M9XCJkcm9wZG93bi1pdGVtXCIgZGF0YS12YWx1ZT1cIiR7XG4gICAgZXNjYXBlKGRhdGEudmFsdWUpXG4gIH1cIiBkYXRhLXRleHQ9XCIke2VzY2FwZShkYXRhLnRleHQpfVwiPiR7ZXNjYXBlKGRhdGEudGV4dCl9PC9hPmA7XG4iXX0=
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { escape } from '../utils/dom';
|
|
2
|
+
export default (data) => `<span class="tag ${escape(data.style)}" data-value="${escape(data.value)}">
|
|
3
|
+
${escape(data.text)}
|
|
4
|
+
${data.removable ? '<div class="delete is-small" data-tag="delete"></div>' : ''}
|
|
5
|
+
</span>`;
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3RhZ3MtaW5wdXQvdGVtcGxhdGVzL3RhZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXRDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUN0QixvQkFBb0IsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO01BQ3JFLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO01BQ2pCLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLHVEQUF1RCxDQUFDLENBQUMsQ0FBQyxFQUFFO1VBQ3pFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBlc2NhcGUgfSBmcm9tICcuLi91dGlscy9kb20nO1xuXG5leHBvcnQgZGVmYXVsdCAoZGF0YSkgPT5cbiAgYDxzcGFuIGNsYXNzPVwidGFnICR7ZXNjYXBlKGRhdGEuc3R5bGUpfVwiIGRhdGEtdmFsdWU9XCIke2VzY2FwZShkYXRhLnZhbHVlKX1cIj5cbiAgICAke2VzY2FwZShkYXRhLnRleHQpfVxuICAgICR7ZGF0YS5yZW1vdmFibGUgPyAnPGRpdiBjbGFzcz1cImRlbGV0ZSBpcy1zbWFsbFwiIGRhdGEtdGFnPVwiZGVsZXRlXCI+PC9kaXY+JyA6ICcnfVxuICA8L3NwYW4+YDtcbiJdfQ==
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { escape } from '../utils/dom';
|
|
2
|
+
export default (data) => `<div class="tags-input">
|
|
3
|
+
<input class="input" type="text" placeholder="${escape(data.placeholder)}">
|
|
4
|
+
<div id="${escape(data.uuid)}-list" class="dropdown-menu" role="menu">
|
|
5
|
+
<div class="dropdown-content">
|
|
6
|
+
<span class="dropdown-item empty-title">${escape(data.emptyTitle)}</span>
|
|
7
|
+
</div>
|
|
8
|
+
</div>
|
|
9
|
+
</div>`;
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JhcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90YWdzLWlucHV0L3RlbXBsYXRlcy93cmFwcGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFdEMsZUFBZSxDQUFDLElBQUksRUFBRSxFQUFFLENBQ3RCO29EQUNrRCxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQztlQUM3RCxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQzs7a0RBRWtCLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDOzs7U0FHaEUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGVzY2FwZSB9IGZyb20gJy4uL3V0aWxzL2RvbSc7XG5cbmV4cG9ydCBkZWZhdWx0IChkYXRhKSA9PlxuICBgPGRpdiBjbGFzcz1cInRhZ3MtaW5wdXRcIj5cbiAgICA8aW5wdXQgY2xhc3M9XCJpbnB1dFwiIHR5cGU9XCJ0ZXh0XCIgcGxhY2Vob2xkZXI9XCIke2VzY2FwZShkYXRhLnBsYWNlaG9sZGVyKX1cIj5cbiAgICA8ZGl2IGlkPVwiJHtlc2NhcGUoZGF0YS51dWlkKX0tbGlzdFwiIGNsYXNzPVwiZHJvcGRvd24tbWVudVwiIHJvbGU9XCJtZW51XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tY29udGVudFwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImRyb3Bkb3duLWl0ZW0gZW1wdHktdGl0bGVcIj4ke2VzY2FwZShkYXRhLmVtcHR5VGl0bGUpfTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5gO1xuIl19
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
import EventEmitter from './events';
|
|
3
|
+
import { optionsFromDataset, querySelectorAll, querySelector } from './dom';
|
|
4
|
+
import uuid from './uuid';
|
|
5
|
+
export default class Component extends EventEmitter {
|
|
6
|
+
constructor(element, options = {}, defaultOptions = {}) {
|
|
7
|
+
super();
|
|
8
|
+
this.element = querySelector(element, document);
|
|
9
|
+
// An invalid selector or non-DOM node has been provided.
|
|
10
|
+
if (!this.element) {
|
|
11
|
+
throw new Error(`An invalid selector or non-DOM node has been provided for ${this.constructor.name}.`);
|
|
12
|
+
}
|
|
13
|
+
this.id = uuid('c-');
|
|
14
|
+
this.options = Object.assign(Object.assign(Object.assign({}, defaultOptions), options), optionsFromDataset(this.element, defaultOptions) // Use Element dataset values to override options
|
|
15
|
+
);
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Initiate all DOM element corresponding to selector
|
|
19
|
+
*
|
|
20
|
+
* @method
|
|
21
|
+
* @return Array of all Plugin instances
|
|
22
|
+
*/
|
|
23
|
+
static attach(selector = null, options = {}, node = null) {
|
|
24
|
+
const instances = new Array();
|
|
25
|
+
if (selector !== null) {
|
|
26
|
+
querySelectorAll(selector, node).forEach(element => {
|
|
27
|
+
// Check if plugin has already been instantiated for element
|
|
28
|
+
if (typeof element[this.name] === 'undefined') { // If no then instantiate it and register it in element
|
|
29
|
+
instances.push(new this(element, Object.assign({ selector }, options)));
|
|
30
|
+
}
|
|
31
|
+
else { // If Yes then return the existing instance
|
|
32
|
+
instances.push(element[this.name]);
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
if (typeof window[this.name] === 'undefined') {
|
|
36
|
+
window[this.name] = {
|
|
37
|
+
observers: []
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
if (window[this.name]['observers'] && !window[this.name]['observers'].includes(selector)) {
|
|
41
|
+
this.observeDom(selector, options);
|
|
42
|
+
window[this.name]['observers'].push(selector);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return instances;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Observe DOM mutations to automatically initialize plugin on new elements when added to the DOM
|
|
49
|
+
*
|
|
50
|
+
* @param selector
|
|
51
|
+
* @param options
|
|
52
|
+
*/
|
|
53
|
+
static observeDom(selector, options) {
|
|
54
|
+
const observer = new MutationObserver(mutations => {
|
|
55
|
+
mutations.forEach(mutation => {
|
|
56
|
+
for (let i = 0; i < mutation.addedNodes.length; i++) {
|
|
57
|
+
if (typeof window[this.name] !== 'undefined') {
|
|
58
|
+
this.attach(selector, options, mutation.addedNodes[i]);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
if (typeof document !== 'undefined') {
|
|
64
|
+
observer.observe(document, {
|
|
65
|
+
childList: true,
|
|
66
|
+
subtree: true
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
static _interface(name = null, options = {}) {
|
|
71
|
+
if (typeof name === 'string') {
|
|
72
|
+
if (typeof this[name] === 'undefined') {
|
|
73
|
+
throw new TypeError(`No method named "${name}"`);
|
|
74
|
+
}
|
|
75
|
+
return this[name](options);
|
|
76
|
+
}
|
|
77
|
+
return this;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3RhZ3MtaW5wdXQvdXRpbHMvY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9CQUFvQjtBQUNwQixPQUFPLFlBQVksTUFBTSxVQUFVLENBQUM7QUFDcEMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUM1RSxPQUFPLElBQUksTUFBTSxRQUFRLENBQUM7QUFFMUIsTUFBTSxDQUFDLE9BQU8sT0FBTyxTQUFVLFNBQVEsWUFBWTtJQUtqRCxZQUFZLE9BQU8sRUFBRSxPQUFPLEdBQUcsRUFBRSxFQUFFLGNBQWMsR0FBRyxFQUFFO1FBQ3BELEtBQUssRUFBRSxDQUFDO1FBRVIsSUFBSSxDQUFDLE9BQU8sR0FBRyxhQUFhLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRWhELHlEQUF5RDtRQUN6RCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNqQixNQUFNLElBQUksS0FBSyxDQUFDLDZEQUE2RCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUM7U0FDeEc7UUFDRCxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVyQixJQUFJLENBQUMsT0FBTyxpREFDUCxjQUFjLEdBQ2QsT0FBTyxHQUNQLGtCQUFrQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLENBQUMsaURBQWlEO1NBQ3RHLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxNQUFNLENBQUMsTUFBTSxDQUFDLFdBQWdCLElBQUksRUFBRSxPQUFPLEdBQUcsRUFBRSxFQUFFLE9BQVksSUFBSTtRQUNoRSxNQUFNLFNBQVMsR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO1FBRTlCLElBQUksUUFBUSxLQUFLLElBQUksRUFBRTtZQUNyQixnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUNqRCw0REFBNEQ7Z0JBQzVELElBQUksT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLFdBQVcsRUFBRSxFQUFFLHVEQUF1RDtvQkFDdEcsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxPQUFPLGtCQUM3QixRQUFRLElBQ0wsT0FBTyxFQUNWLENBQUMsQ0FBQztpQkFDTDtxQkFBTSxFQUFFLDJDQUEyQztvQkFDbEQsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7aUJBQ3BDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7WUFFSCxJQUFJLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxXQUFXLEVBQUU7Z0JBQzVDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUc7b0JBQ2xCLFNBQVMsRUFBRSxFQUFFO2lCQUNkLENBQUM7YUFDSDtZQUVELElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFO2dCQUN4RixJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztnQkFFbkMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDL0M7U0FDRjtRQUVELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLE9BQU87UUFDakMsTUFBTSxRQUFRLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUNoRCxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO2dCQUMzQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7b0JBQ25ELElBQUksT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLFdBQVcsRUFBRTt3QkFDNUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztxQkFDeEQ7aUJBQ0Y7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxPQUFPLFFBQVEsS0FBSyxXQUFXLEVBQUU7WUFDbkMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUU7Z0JBQ3pCLFNBQVMsRUFBRSxJQUFJO2dCQUNmLE9BQU8sRUFBRSxJQUFJO2FBQ2QsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsSUFBSSxFQUFFLE9BQU8sR0FBRyxFQUFFO1FBQ3pDLElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxFQUFFO1lBQzVCLElBQUksT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssV0FBVyxFQUFFO2dCQUNyQyxNQUFNLElBQUksU0FBUyxDQUFDLG9CQUFvQixJQUFJLEdBQUcsQ0FBQyxDQUFDO2FBQ2xEO1lBRUQsT0FBUSxJQUFJLENBQUMsSUFBSSxDQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDckM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlICovXG5pbXBvcnQgRXZlbnRFbWl0dGVyIGZyb20gJy4vZXZlbnRzJztcbmltcG9ydCB7IG9wdGlvbnNGcm9tRGF0YXNldCwgcXVlcnlTZWxlY3RvckFsbCwgcXVlcnlTZWxlY3RvciB9IGZyb20gJy4vZG9tJztcbmltcG9ydCB1dWlkIGZyb20gJy4vdXVpZCc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIENvbXBvbmVudCBleHRlbmRzIEV2ZW50RW1pdHRlciB7XG4gIHByb3RlY3RlZCBlbGVtZW50OiBhbnk7XG4gIHByb3RlY3RlZCBpZDogc3RyaW5nO1xuICBwcm90ZWN0ZWQgb3B0aW9uczogYW55O1xuXG4gIGNvbnN0cnVjdG9yKGVsZW1lbnQsIG9wdGlvbnMgPSB7fSwgZGVmYXVsdE9wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKCk7XG5cbiAgICB0aGlzLmVsZW1lbnQgPSBxdWVyeVNlbGVjdG9yKGVsZW1lbnQsIGRvY3VtZW50KTtcblxuICAgIC8vIEFuIGludmFsaWQgc2VsZWN0b3Igb3Igbm9uLURPTSBub2RlIGhhcyBiZWVuIHByb3ZpZGVkLlxuICAgIGlmICghdGhpcy5lbGVtZW50KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEFuIGludmFsaWQgc2VsZWN0b3Igb3Igbm9uLURPTSBub2RlIGhhcyBiZWVuIHByb3ZpZGVkIGZvciAke3RoaXMuY29uc3RydWN0b3IubmFtZX0uYCk7XG4gICAgfVxuICAgIHRoaXMuaWQgPSB1dWlkKCdjLScpO1xuXG4gICAgdGhpcy5vcHRpb25zID0ge1xuICAgICAgLi4uZGVmYXVsdE9wdGlvbnMsXG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgLi4ub3B0aW9uc0Zyb21EYXRhc2V0KHRoaXMuZWxlbWVudCwgZGVmYXVsdE9wdGlvbnMpIC8vIFVzZSBFbGVtZW50IGRhdGFzZXQgdmFsdWVzIHRvIG92ZXJyaWRlIG9wdGlvbnNcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYXRlIGFsbCBET00gZWxlbWVudCBjb3JyZXNwb25kaW5nIHRvIHNlbGVjdG9yXG4gICAqXG4gICAqIEBtZXRob2RcbiAgICogQHJldHVybiBBcnJheSBvZiBhbGwgUGx1Z2luIGluc3RhbmNlc1xuICAgKi9cbiAgc3RhdGljIGF0dGFjaChzZWxlY3RvcjogYW55ID0gbnVsbCwgb3B0aW9ucyA9IHt9LCBub2RlOiBhbnkgPSBudWxsKSB7XG4gICAgY29uc3QgaW5zdGFuY2VzID0gbmV3IEFycmF5KCk7XG5cbiAgICBpZiAoc2VsZWN0b3IgIT09IG51bGwpIHtcbiAgICAgIHF1ZXJ5U2VsZWN0b3JBbGwoc2VsZWN0b3IsIG5vZGUpLmZvckVhY2goZWxlbWVudCA9PiB7XG4gICAgICAgIC8vIENoZWNrIGlmIHBsdWdpbiBoYXMgYWxyZWFkeSBiZWVuIGluc3RhbnRpYXRlZCBmb3IgZWxlbWVudFxuICAgICAgICBpZiAodHlwZW9mIGVsZW1lbnRbdGhpcy5uYW1lXSA9PT0gJ3VuZGVmaW5lZCcpIHsgLy8gSWYgbm8gdGhlbiBpbnN0YW50aWF0ZSBpdCBhbmQgcmVnaXN0ZXIgaXQgaW4gZWxlbWVudFxuICAgICAgICAgIGluc3RhbmNlcy5wdXNoKG5ldyB0aGlzKGVsZW1lbnQsIHtcbiAgICAgICAgICAgIHNlbGVjdG9yLFxuICAgICAgICAgICAgLi4ub3B0aW9uc1xuICAgICAgICAgIH0pKTtcbiAgICAgICAgfSBlbHNlIHsgLy8gSWYgWWVzIHRoZW4gcmV0dXJuIHRoZSBleGlzdGluZyBpbnN0YW5jZVxuICAgICAgICAgIGluc3RhbmNlcy5wdXNoKGVsZW1lbnRbdGhpcy5uYW1lXSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICBpZiAodHlwZW9mIHdpbmRvd1t0aGlzLm5hbWVdID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICB3aW5kb3dbdGhpcy5uYW1lXSA9IHtcbiAgICAgICAgICBvYnNlcnZlcnM6IFtdXG4gICAgICAgIH07XG4gICAgICB9XG5cbiAgICAgIGlmICh3aW5kb3dbdGhpcy5uYW1lXVsnb2JzZXJ2ZXJzJ10gJiYgIXdpbmRvd1t0aGlzLm5hbWVdWydvYnNlcnZlcnMnXS5pbmNsdWRlcyhzZWxlY3RvcikpIHtcbiAgICAgICAgdGhpcy5vYnNlcnZlRG9tKHNlbGVjdG9yLCBvcHRpb25zKTtcblxuICAgICAgICB3aW5kb3dbdGhpcy5uYW1lXVsnb2JzZXJ2ZXJzJ10ucHVzaChzZWxlY3Rvcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGluc3RhbmNlcztcbiAgfVxuXG4gIC8qKlxuICAgKiBPYnNlcnZlIERPTSBtdXRhdGlvbnMgdG8gYXV0b21hdGljYWxseSBpbml0aWFsaXplIHBsdWdpbiBvbiBuZXcgZWxlbWVudHMgd2hlbiBhZGRlZCB0byB0aGUgRE9NXG4gICAqXG4gICAqIEBwYXJhbSBzZWxlY3RvclxuICAgKiBAcGFyYW0gb3B0aW9uc1xuICAgKi9cbiAgc3RhdGljIG9ic2VydmVEb20oc2VsZWN0b3IsIG9wdGlvbnMpIHtcbiAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBNdXRhdGlvbk9ic2VydmVyKG11dGF0aW9ucyA9PiB7XG4gICAgICBtdXRhdGlvbnMuZm9yRWFjaChtdXRhdGlvbiA9PiB7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbXV0YXRpb24uYWRkZWROb2Rlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIGlmICh0eXBlb2Ygd2luZG93W3RoaXMubmFtZV0gIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICB0aGlzLmF0dGFjaChzZWxlY3Rvciwgb3B0aW9ucywgbXV0YXRpb24uYWRkZWROb2Rlc1tpXSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGlmICh0eXBlb2YgZG9jdW1lbnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBvYnNlcnZlci5vYnNlcnZlKGRvY3VtZW50LCB7XG4gICAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgICAgc3VidHJlZTogdHJ1ZVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgc3RhdGljIF9pbnRlcmZhY2UobmFtZSA9IG51bGwsIG9wdGlvbnMgPSB7fSkge1xuICAgIGlmICh0eXBlb2YgbmFtZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGlmICh0eXBlb2YgdGhpc1tuYW1lXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgTm8gbWV0aG9kIG5hbWVkIFwiJHtuYW1lfVwiYCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiAodGhpc1tuYW1lXSBhcyBhbnkpKG9wdGlvbnMpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
import { isFunction, isNode, isString } from './type';
|
|
3
|
+
/**
|
|
4
|
+
* querySelector under steroid
|
|
5
|
+
* Can use as selector:
|
|
6
|
+
* - function
|
|
7
|
+
* - DOM Node
|
|
8
|
+
* - String
|
|
9
|
+
*
|
|
10
|
+
* @param selector
|
|
11
|
+
* @param node
|
|
12
|
+
*/
|
|
13
|
+
export const querySelector = (selector, node) => {
|
|
14
|
+
if (isFunction(selector)) {
|
|
15
|
+
return selector(node);
|
|
16
|
+
}
|
|
17
|
+
if (isNode(selector)) {
|
|
18
|
+
return selector;
|
|
19
|
+
}
|
|
20
|
+
if (isString(selector)) {
|
|
21
|
+
if (!node || !isNode(node) || node.nodeType !== 1) {
|
|
22
|
+
node = document;
|
|
23
|
+
}
|
|
24
|
+
return node.querySelector(selector);
|
|
25
|
+
}
|
|
26
|
+
if (Array.isArray(selector) || (typeof NodeList !== 'undefined' && NodeList.prototype.isPrototypeOf(selector))) {
|
|
27
|
+
return selector[0];
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* querySelectorAll under steroid
|
|
32
|
+
* Can use as selector:
|
|
33
|
+
* - function
|
|
34
|
+
* - DOM Node
|
|
35
|
+
* - String
|
|
36
|
+
*
|
|
37
|
+
* @param selector
|
|
38
|
+
* @param node
|
|
39
|
+
*/
|
|
40
|
+
export const querySelectorAll = (selector, node) => {
|
|
41
|
+
if (isFunction(selector)) {
|
|
42
|
+
return selector(node);
|
|
43
|
+
}
|
|
44
|
+
if (isNode(selector)) {
|
|
45
|
+
return [selector];
|
|
46
|
+
}
|
|
47
|
+
if (isString(selector)) {
|
|
48
|
+
if (!node || !isNode(node) || node.nodeType !== 1) {
|
|
49
|
+
node = document;
|
|
50
|
+
}
|
|
51
|
+
return node.querySelectorAll(selector);
|
|
52
|
+
}
|
|
53
|
+
if (typeof NodeList !== 'undefined' && NodeList.prototype.isPrototypeOf(selector)) {
|
|
54
|
+
return selector;
|
|
55
|
+
}
|
|
56
|
+
return [];
|
|
57
|
+
};
|
|
58
|
+
// Convert dataset into Object
|
|
59
|
+
export const optionsFromDataset = (node, defaultOptions = {}) => {
|
|
60
|
+
if (isNode(node)) {
|
|
61
|
+
return node.dataset ? Object.keys(node.dataset)
|
|
62
|
+
.filter(key => Object.keys(defaultOptions).includes(key))
|
|
63
|
+
.reduce((obj, key) => (Object.assign(Object.assign({}, obj), { [key]: node.dataset[key] })), {}) : {};
|
|
64
|
+
}
|
|
65
|
+
return {};
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* Copy HTML attributes from a source element to a target element
|
|
69
|
+
*
|
|
70
|
+
* @param target
|
|
71
|
+
* @param source
|
|
72
|
+
* @param except list of attributes to skip (separated by space)
|
|
73
|
+
*/
|
|
74
|
+
export const cloneAttributes = (target, source, except = null) => {
|
|
75
|
+
if (except !== null) {
|
|
76
|
+
except = except.split(' ');
|
|
77
|
+
}
|
|
78
|
+
[...source.attributes].forEach(attr => {
|
|
79
|
+
if (!except.includes(attr.nodeName)) {
|
|
80
|
+
target.setAttribute(attr.nodeName === 'id' ? 'data-id' : attr.nodeName, attr.nodeValue);
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
};
|
|
84
|
+
/**
|
|
85
|
+
* Escapes string for insertion into HTML, replacing special characters with HTML
|
|
86
|
+
* entities.
|
|
87
|
+
*
|
|
88
|
+
* @param string
|
|
89
|
+
*/
|
|
90
|
+
export const escape = (string) => isString(string) ?
|
|
91
|
+
string.replace(/(['"<>])/g, (char) => ({
|
|
92
|
+
'<': '<',
|
|
93
|
+
'>': '>',
|
|
94
|
+
'"': '"',
|
|
95
|
+
'\'': '''
|
|
96
|
+
}[char]))
|
|
97
|
+
: string;
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3RhZ3MtaW5wdXQvdXRpbHMvZG9tLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9CQUFvQjtBQUNwQixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFdEQ7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxFQUFFO0lBQzlDLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQ3hCLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQ3ZCO0lBRUQsSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDcEIsT0FBTyxRQUFRLENBQUM7S0FDakI7SUFFRCxJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUN0QixJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssQ0FBQyxFQUFFO1lBQ2pELElBQUksR0FBRyxRQUFRLENBQUM7U0FDakI7UUFFRCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7S0FDckM7SUFFRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLFFBQVEsS0FBSyxXQUFXLElBQUksUUFBUSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRTtRQUM5RyxPQUFPLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNwQjtBQUNILENBQUMsQ0FBQztBQUVGOzs7Ozs7Ozs7R0FTRztBQUNILE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxFQUFFO0lBQ2pELElBQUksVUFBVSxDQUFD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bXBvcnQgeyBpc0Z1bmN0aW9uLCBpc05vZGUsIGlzU3RyaW5nIH0gZnJvbSAnLi90eXBlJztcblxuLyoqXG4gKiBxdWVyeVNlbGVjdG9yIHVuZGVyIHN0ZXJvaWRcbiAqIENhbiB1c2UgYXMgc2VsZWN0b3I6XG4gKiAgLSBmdW5jdGlvblxuICogIC0gRE9NIE5vZGVcbiAqICAtIFN0cmluZ1xuICpcbiAqIEBwYXJhbSBzZWxlY3RvclxuICogQHBhcmFtIG5vZGVcbiAqL1xuZXhwb3J0IGNvbnN0IHF1ZXJ5U2VsZWN0b3IgPSAoc2VsZWN0b3IsIG5vZGUpID0+IHtcbiAgaWYgKGlzRnVuY3Rpb24oc2VsZWN0b3IpKSB7XG4gICAgcmV0dXJuIHNlbGVjdG9yKG5vZGUpO1xuICB9XG5cbiAgaWYgKGlzTm9kZShzZWxlY3RvcikpIHtcbiAgICByZXR1cm4gc2VsZWN0b3I7XG4gIH1cblxuICBpZiAoaXNTdHJpbmcoc2VsZWN0b3IpKSB7XG4gICAgaWYgKCFub2RlIHx8ICFpc05vZGUobm9kZSkgfHwgbm9kZS5ub2RlVHlwZSAhPT0gMSkge1xuICAgICAgbm9kZSA9IGRvY3VtZW50O1xuICAgIH1cblxuICAgIHJldHVybiBub2RlLnF1ZXJ5U2VsZWN0b3Ioc2VsZWN0b3IpO1xuICB9XG5cbiAgaWYgKEFycmF5LmlzQXJyYXkoc2VsZWN0b3IpIHx8ICh0eXBlb2YgTm9kZUxpc3QgIT09ICd1bmRlZmluZWQnICYmIE5vZGVMaXN0LnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKHNlbGVjdG9yKSkpIHtcbiAgICByZXR1cm4gc2VsZWN0b3JbMF07XG4gIH1cbn07XG5cbi8qKlxuICogcXVlcnlTZWxlY3RvckFsbCB1bmRlciBzdGVyb2lkXG4gKiBDYW4gdXNlIGFzIHNlbGVjdG9yOlxuICogIC0gZnVuY3Rpb25cbiAqICAtIERPTSBOb2RlXG4gKiAgLSBTdHJpbmdcbiAqXG4gKiBAcGFyYW0gc2VsZWN0b3JcbiAqIEBwYXJhbSBub2RlXG4gKi9cbmV4cG9ydCBjb25zdCBxdWVyeVNlbGVjdG9yQWxsID0gKHNlbGVjdG9yLCBub2RlKSA9PiB7XG4gIGlmIChpc0Z1bmN0aW9uKHNlbGVjdG9yKSkge1xuICAgIHJldHVybiBzZWxlY3Rvcihub2RlKTtcbiAgfVxuXG4gIGlmIChpc05vZGUoc2VsZWN0b3IpKSB7XG4gICAgcmV0dXJuIFtzZWxlY3Rvcl07XG4gIH1cblxuICBpZiAoaXNTdHJpbmcoc2VsZWN0b3IpKSB7XG4gICAgaWYgKCFub2RlIHx8ICFpc05vZGUobm9kZSkgfHwgbm9kZS5ub2RlVHlwZSAhPT0gMSkge1xuICAgICAgbm9kZSA9IGRvY3VtZW50O1xuICAgIH1cblxuICAgIHJldHVybiBub2RlLnF1ZXJ5U2VsZWN0b3JBbGwoc2VsZWN0b3IpO1xuICB9XG5cbiAgaWYgKHR5cGVvZiBOb2RlTGlzdCAhPT0gJ3VuZGVmaW5lZCcgJiYgTm9kZUxpc3QucHJvdG90eXBlLmlzUHJvdG90eXBlT2Yoc2VsZWN0b3IpKSB7XG4gICAgcmV0dXJuIHNlbGVjdG9yO1xuICB9XG4gIHJldHVybiBbXTtcbn07XG5cbi8vIENvbnZlcnQgZGF0YXNldCBpbnRvIE9iamVjdFxuZXhwb3J0IGNvbnN0IG9wdGlvbnNGcm9tRGF0YXNldCA9IChub2RlLCBkZWZhdWx0T3B0aW9ucyA9IHt9KSA9PiB7XG4gIGlmIChpc05vZGUobm9kZSkpIHtcbiAgICByZXR1cm4gbm9kZS5kYXRhc2V0ID8gT2JqZWN0LmtleXMobm9kZS5kYXRhc2V0KVxuICAgICAgLmZpbHRlcihrZXkgPT4gT2JqZWN0LmtleXMoZGVmYXVsdE9wdGlvbnMpLmluY2x1ZGVzKGtleSkpXG4gICAgICAucmVkdWNlKChvYmosIGtleSkgPT4gKHtcbiAgICAgICAgICAuLi5vYmosXG4gICAgICAgICAgW2tleV06IG5vZGUuZGF0YXNldFtrZXldXG4gICAgICAgIH0pLCB7fSkgOiB7fTtcbiAgfVxuICByZXR1cm4ge307XG59O1xuXG4vKipcbiAqIENvcHkgSFRNTCBhdHRyaWJ1dGVzIGZyb20gYSBzb3VyY2UgZWxlbWVudCB0byBhIHRhcmdldCBlbGVtZW50XG4gKlxuICogQHBhcmFtIHRhcmdldFxuICogQHBhcmFtIHNvdXJjZVxuICogQHBhcmFtIGV4Y2VwdCBsaXN0IG9mIGF0dHJpYnV0ZXMgdG8gc2tpcCAoc2VwYXJhdGVkIGJ5IHNwYWNlKVxuICovXG5leHBvcnQgY29uc3QgY2xvbmVBdHRyaWJ1dGVzID0gKHRhcmdldCwgc291cmNlLCBleGNlcHQ6IGFueSA9IG51bGwpID0+IHtcbiAgaWYgKGV4Y2VwdCAhPT0gbnVsbCkge1xuICAgIGV4Y2VwdCA9IGV4Y2VwdC5zcGxpdCgnICcpO1xuICB9XG5cbiAgWy4uLnNvdXJjZS5hdHRyaWJ1dGVzXS5mb3JFYWNoKGF0dHIgPT4ge1xuICAgIGlmICghZXhjZXB0LmluY2x1ZGVzKGF0dHIubm9kZU5hbWUpKSB7XG4gICAgICB0YXJnZXQuc2V0QXR0cmlidXRlKGF0dHIubm9kZU5hbWUgPT09ICdpZCcgPyAnZGF0YS1pZCcgOiBhdHRyLm5vZGVOYW1lLCBhdHRyLm5vZGVWYWx1ZSk7XG4gICAgfVxuICB9KTtcbn07XG5cbi8qKlxuICogRXNjYXBlcyBzdHJpbmcgZm9yIGluc2VydGlvbiBpbnRvIEhUTUwsIHJlcGxhY2luZyBzcGVjaWFsIGNoYXJhY3RlcnMgd2l0aCBIVE1MXG4gKiBlbnRpdGllcy5cbiAqXG4gKiBAcGFyYW0gc3RyaW5nXG4gKi9cbmV4cG9ydCBjb25zdCBlc2NhcGUgPSAoc3RyaW5nKSA9PiBpc1N0cmluZyhzdHJpbmcpID9cbiAgICBzdHJpbmcucmVwbGFjZSgvKFsnXCI8Pl0pL2csIChjaGFyKSA9PiAoe1xuICAgICAgICAnPCc6ICcmbHQ7JyxcbiAgICAgICAgJz4nOiAnJmd0OycsXG4gICAgICAgICdcIic6ICcmcXVvdDsnLFxuICAgICAgICAnXFwnJzogJyYjMzk7J1xuICAgICAgfVtjaGFyXSkpXG4gICAgOiBzdHJpbmc7XG4iXX0=
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
/**
|
|
3
|
+
* @class EventEmitter
|
|
4
|
+
*
|
|
5
|
+
* @property {Array} _listeners
|
|
6
|
+
*/
|
|
7
|
+
export default class EventEmitter {
|
|
8
|
+
/**
|
|
9
|
+
* Construct EventEmitter
|
|
10
|
+
*
|
|
11
|
+
* @param listeners
|
|
12
|
+
*/
|
|
13
|
+
constructor(listeners = []) {
|
|
14
|
+
this._listeners = new Map(listeners);
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Destroys EventEmitter
|
|
18
|
+
*/
|
|
19
|
+
destroy() {
|
|
20
|
+
this._listeners = {};
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Count listeners registered for the provided eventName
|
|
24
|
+
*
|
|
25
|
+
* @param eventName
|
|
26
|
+
*/
|
|
27
|
+
listenerCount(eventName) {
|
|
28
|
+
if (!this._listeners.has(eventName)) {
|
|
29
|
+
return 0;
|
|
30
|
+
}
|
|
31
|
+
return this._listeners.get(eventName).length;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Subscribes on event eventName specified function
|
|
35
|
+
*
|
|
36
|
+
* @param eventName
|
|
37
|
+
* @param listener
|
|
38
|
+
*/
|
|
39
|
+
on(eventName, listener) {
|
|
40
|
+
this._addListener(eventName, listener, false);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Subscribes on event name specified function to fire only once
|
|
44
|
+
*
|
|
45
|
+
* @param eventName
|
|
46
|
+
* @param listener
|
|
47
|
+
*/
|
|
48
|
+
once(eventName, listener) {
|
|
49
|
+
this._addListener(eventName, listener, true);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Removes event with specified eventName.
|
|
53
|
+
*
|
|
54
|
+
* @param eventName
|
|
55
|
+
*/
|
|
56
|
+
off(eventName) {
|
|
57
|
+
this._removeListeners(eventName);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Emits event with specified name and params.
|
|
61
|
+
*
|
|
62
|
+
* @param eventName
|
|
63
|
+
* @param eventArgs
|
|
64
|
+
*/
|
|
65
|
+
emit(eventName, ...eventArgs) {
|
|
66
|
+
return this._applyEvents(eventName, eventArgs);
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Register a new listener
|
|
70
|
+
*
|
|
71
|
+
* @param eventName
|
|
72
|
+
* @param listener
|
|
73
|
+
* @param once
|
|
74
|
+
*/
|
|
75
|
+
_addListener(eventName, listener, once = false) {
|
|
76
|
+
if (Array.isArray(eventName)) {
|
|
77
|
+
eventName.forEach(e => this._addListener(e, listener, once));
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
eventName = eventName.toString();
|
|
81
|
+
const split = eventName.split(/,|, | /);
|
|
82
|
+
if (split.length > 1) {
|
|
83
|
+
split.forEach(e => this._addListener(e, listener, once));
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
if (!Array.isArray(this._listeners.get(eventName))) {
|
|
87
|
+
this._listeners.set(eventName, []);
|
|
88
|
+
}
|
|
89
|
+
(this._listeners.get(eventName)).push({
|
|
90
|
+
once,
|
|
91
|
+
fn: listener
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
*
|
|
98
|
+
* @param eventName
|
|
99
|
+
*/
|
|
100
|
+
_removeListeners(eventName = null) {
|
|
101
|
+
if (eventName !== null) {
|
|
102
|
+
if (Array.isArray(eventName)) {
|
|
103
|
+
eventName.forEach(e => this._removeListeners(e));
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
eventName = eventName.toString();
|
|
107
|
+
const split = eventName.split(/,|, | /);
|
|
108
|
+
if (split.length > 1) {
|
|
109
|
+
split.forEach(e => this._removeListeners(e));
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
this._listeners.delete(eventName);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
this._listeners = new Map();
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Applies arguments to specified event
|
|
122
|
+
*
|
|
123
|
+
* @param eventName
|
|
124
|
+
* @param eventArguments
|
|
125
|
+
* @protected
|
|
126
|
+
*/
|
|
127
|
+
_applyEvents(eventName, eventArguments) {
|
|
128
|
+
let result = eventArguments;
|
|
129
|
+
if (this._listeners.has(eventName)) {
|
|
130
|
+
const listeners = this._listeners.get(eventName);
|
|
131
|
+
const removableListeners = [];
|
|
132
|
+
listeners.forEach((listener, index) => {
|
|
133
|
+
if (result = listener.fn.apply(null, eventArguments)) {
|
|
134
|
+
if (listener.once) {
|
|
135
|
+
removableListeners.unshift(index);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
removableListeners.forEach(index => {
|
|
140
|
+
listeners.splice(index, 1);
|
|
141
|
+
});
|
|
142
|
+
return result;
|
|
143
|
+
}
|
|
144
|
+
return result[0];
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3RhZ3MtaW5wdXQvdXRpbHMvZXZlbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9CQUFvQjtBQUNwQjs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE9BQU8sT0FBTyxZQUFZO0lBRS9COzs7O09BSUc7SUFDSCxZQUFZLFNBQVMsR0FBRyxFQUFFO1FBQ3hCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsT0FBTztRQUNMLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsYUFBYSxDQUFDLFNBQVM7UUFDckIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ25DLE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFFRCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUMvQyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxFQUFFLENBQUMsU0FBUyxFQUFFLFFBQVE7UUFDcEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUTtRQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxHQUFHLENBQUMsU0FBUztRQUNYLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxJQUFJLENBQUMs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QUFJLEVBQUUsY0FBYyxDQUFDLEVBQUU7b0JBQ3BELElBQUksUUFBUSxDQUFDLElBQUksRUFBRTt3QkFDaEIsa0JBQTBCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO3FCQUM1QztpQkFDRjtZQUNILENBQUMsQ0FBQyxDQUFDO1lBRUgsa0JBQWtCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUNqQyxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM3QixDQUFDLENBQUMsQ0FBQztZQUVILE9BQU8sTUFBTSxDQUFDO1NBQ2Y7UUFFRCxPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSAqL1xuLyoqXG4gKiBAY2xhc3MgRXZlbnRFbWl0dGVyXG4gKlxuICogQHByb3BlcnR5IHtBcnJheX0gX2xpc3RlbmVyc1xuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBFdmVudEVtaXR0ZXIge1xuICBwcml2YXRlIF9saXN0ZW5lcnM7XG4gIC8qKlxuICAgKiBDb25zdHJ1Y3QgRXZlbnRFbWl0dGVyXG4gICAqXG4gICAqIEBwYXJhbSBsaXN0ZW5lcnNcbiAgICovXG4gIGNvbnN0cnVjdG9yKGxpc3RlbmVycyA9IFtdKSB7XG4gICAgdGhpcy5fbGlzdGVuZXJzID0gbmV3IE1hcChsaXN0ZW5lcnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlc3Ryb3lzIEV2ZW50RW1pdHRlclxuICAgKi9cbiAgZGVzdHJveSgpIHtcbiAgICB0aGlzLl9saXN0ZW5lcnMgPSB7fTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb3VudCBsaXN0ZW5lcnMgcmVnaXN0ZXJlZCBmb3IgdGhlIHByb3ZpZGVkIGV2ZW50TmFtZVxuICAgKlxuICAgKiBAcGFyYW0gZXZlbnROYW1lXG4gICAqL1xuICBsaXN0ZW5lckNvdW50KGV2ZW50TmFtZSkge1xuICAgIGlmICghdGhpcy5fbGlzdGVuZXJzLmhhcyhldmVudE5hbWUpKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fbGlzdGVuZXJzLmdldChldmVudE5hbWUpLmxlbmd0aDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdWJzY3JpYmVzIG9uIGV2ZW50IGV2ZW50TmFtZSBzcGVjaWZpZWQgZnVuY3Rpb25cbiAgICpcbiAgICogQHBhcmFtIGV2ZW50TmFtZVxuICAgKiBAcGFyYW0gbGlzdGVuZXJcbiAgICovXG4gIG9uKGV2ZW50TmFtZSwgbGlzdGVuZXIpIHtcbiAgICB0aGlzLl9hZGRMaXN0ZW5lcihldmVudE5hbWUsIGxpc3RlbmVyLCBmYWxzZSk7XG4gIH1cblxuICAvKipcbiAgICogU3Vic2NyaWJlcyBvbiBldmVudCBuYW1lIHNwZWNpZmllZCBmdW5jdGlvbiB0byBmaXJlIG9ubHkgb25jZVxuICAgKlxuICAgKiBAcGFyYW0gZXZlbnROYW1lXG4gICAqIEBwYXJhbSBsaXN0ZW5lclxuICAgKi9cbiAgb25jZShldmVudE5hbWUsIGxpc3RlbmVyKSB7XG4gICAgdGhpcy5fYWRkTGlzdGVuZXIoZXZlbnROYW1lLCBsaXN0ZW5lciwgdHJ1ZSk7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyBldmVudCB3aXRoIHNwZWNpZmllZCBldmVudE5hbWUuXG4gICAqXG4gICAqIEBwYXJhbSBldmVudE5hbWVcbiAgICovXG4gIG9mZihldmVudE5hbWUpIHtcbiAgICB0aGlzLl9yZW1vdmVMaXN0ZW5lcnMoZXZlbnROYW1lKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbWl0cyBldmVudCB3aXRoIHNwZWNpZmllZCBuYW1lIGFuZCBwYXJhbXMuXG4gICAqXG4gICAqIEBwYXJhbSBldmVudE5hbWVcbiAgICogQHBhcmFtIGV2ZW50QXJnc1xuICAgKi9cbiAgZW1pdChldmVudE5hbWUsIC4uLmV2ZW50QXJncykge1xuICAgIHJldHVybiB0aGlzLl9hcHBseUV2ZW50cyhldmVudE5hbWUsIGV2ZW50QXJncyk7XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXIgYSBuZXcgbGlzdGVuZXJcbiAgICpcbiAgICogQHBhcmFtIGV2ZW50TmFtZVxuICAgKiBAcGFyYW0gbGlzdGVuZXJcbiAgICogQHBhcmFtIG9uY2VcbiAgICovXG4gIF9hZGRMaXN0ZW5lcihldmVudE5hbWUsIGxpc3RlbmVyLCBvbmNlID0gZmFsc2UpIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShldmVudE5hbWUpKSB7XG4gICAgICBldmVudE5hbWUuZm9yRWFjaChlID0+IHRoaXMuX2FkZExpc3RlbmVyKGUsIGxpc3RlbmVyLCBvbmNlKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGV2ZW50TmFtZSA9IGV2ZW50TmFtZS50b1N0cmluZygpO1xuICAgICAgY29uc3Qgc3BsaXQgPSBldmVudE5hbWUuc3BsaXQoLyx8LCB8IC8pO1xuXG4gICAgICBpZiAoc3BsaXQubGVuZ3RoID4gMSkge1xuICAgICAgICBzcGxpdC5mb3JFYWNoKGUgPT4gdGhpcy5fYWRkTGlzdGVuZXIoZSwgbGlzdGVuZXIsIG9uY2UpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICghQXJyYXkuaXNBcnJheSh0aGlzLl9saXN0ZW5lcnMuZ2V0KGV2ZW50TmFtZSkpKSB7XG4gICAgICAgICAgdGhpcy5fbGlzdGVuZXJzLnNldChldmVudE5hbWUsIFtdKTtcbiAgICAgICAgfVxuXG4gICAgICAgICh0aGlzLl9saXN0ZW5lcnMuZ2V0KGV2ZW50TmFtZSkpLnB1c2goe1xuICAgICAgICAgIG9uY2UsXG4gICAgICAgICAgZm46IGxpc3RlbmVyXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBAcGFyYW0gZXZlbnROYW1lXG4gICAqL1xuICBfcmVtb3ZlTGlzdGVuZXJzKGV2ZW50TmFtZTogYW55ID0gbnVsbCkge1xuICAgIGlmIChldmVudE5hbWUgIT09IG51bGwpIHtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KGV2ZW50TmFtZSkpIHtcbiAgICAgICAgZXZlbnROYW1lLmZvckVhY2goZSA9PiB0aGlzLl9yZW1vdmVMaXN0ZW5lcnMoZSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZXZlbnROYW1lID0gZXZlbnROYW1lLnRvU3RyaW5nKCk7XG4gICAgICAgIGNvbnN0IHNwbGl0ID0gZXZlbnROYW1lLnNwbGl0KC8sfCwgfCAvKTtcblxuICAgICAgICBpZiAoc3BsaXQubGVuZ3RoID4gMSkge1xuICAgICAgICAgIHNwbGl0LmZvckVhY2goZSA9PiB0aGlzLl9yZW1vdmVMaXN0ZW5lcnMoZSkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuX2xpc3RlbmVycy5kZWxldGUoZXZlbnROYW1lKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9saXN0ZW5lcnMgPSBuZXcgTWFwKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEFwcGxpZXMgYXJndW1lbnRzIHRvIHNwZWNpZmllZCBldmVudFxuICAgKlxuICAgKiBAcGFyYW0gZXZlbnROYW1lXG4gICAqIEBwYXJhbSBldmVudEFyZ3VtZW50c1xuICAgKiBAcHJvdGVjdGVkXG4gICAqL1xuICBfYXBwbHlFdmVudHMoZXZlbnROYW1lLCBldmVudEFyZ3VtZW50cykge1xuICAgIGxldCByZXN1bHQgPSBldmVudEFyZ3VtZW50cztcblxuICAgIGlmICh0aGlzLl9saXN0ZW5lcnMuaGFzKGV2ZW50TmFtZSkpIHtcbiAgICAgIGNvbnN0IGxpc3RlbmVycyA9IHRoaXMuX2xpc3RlbmVycy5nZXQoZXZlbnROYW1lKTtcbiAgICAgIGNvbnN0IHJlbW92YWJsZUxpc3RlbmVycyA9IFtdO1xuXG4gICAgICBsaXN0ZW5lcnMuZm9yRWFjaCgobGlzdGVuZXIsIGluZGV4KSA9PiB7XG4gICAgICAgIGlmIChyZXN1bHQgPSBsaXN0ZW5lci5mbi5hcHBseShudWxsLCBldmVudEFyZ3VtZW50cykpIHtcbiAgICAgICAgICBpZiAobGlzdGVuZXIub25jZSkge1xuICAgICAgICAgICAgKHJlbW92YWJsZUxpc3RlbmVycyBhcyBhbnkpLnVuc2hpZnQoaW5kZXgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIHJlbW92YWJsZUxpc3RlbmVycy5mb3JFYWNoKGluZGV4ID0+IHtcbiAgICAgICAgbGlzdGVuZXJzLnNwbGljZShpbmRleCwgMSk7XG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0WzBdO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
export const isFunction = unknown => typeof unknown === 'function';
|
|
2
|
+
export const isString = unknown => (typeof unknown === 'string' ||
|
|
3
|
+
((!!unknown && typeof unknown === 'object') && Object.prototype.toString.call(unknown) === '[object String]'));
|
|
4
|
+
export const isObject = unknown => ((typeof unknown === 'function' || (typeof unknown === 'object' && !!unknown)) && !Array.isArray(unknown));
|
|
5
|
+
// Returns true if the value has a "then" function. Adapted from
|
|
6
|
+
// https://github.com/graphql/graphql-js/blob/499a75939f70c4863d44149371d6a99d57ff7c35/src/jsutils/isPromise.js
|
|
7
|
+
export const isPromise = value => Boolean(value && typeof value.then === 'function');
|
|
8
|
+
export const isNode = unknown => {
|
|
9
|
+
try {
|
|
10
|
+
Node.prototype.cloneNode.call(unknown, false);
|
|
11
|
+
return true;
|
|
12
|
+
}
|
|
13
|
+
catch (err) {
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Convert String (false,False,True,true,no,yes,0,1) to real Boolean
|
|
19
|
+
*
|
|
20
|
+
* @param val
|
|
21
|
+
*/
|
|
22
|
+
export const BooleanParse = (val) => {
|
|
23
|
+
const falsy = /^(?:f(?:alse)?|no?|0+)$/i;
|
|
24
|
+
return !falsy.test(val) && !!val;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Check if given query selector is valid
|
|
28
|
+
*
|
|
29
|
+
* @param selector
|
|
30
|
+
*/
|
|
31
|
+
export const isSelectorValid = selector => {
|
|
32
|
+
const queryCheck = s => document.createDocumentFragment().querySelector(s);
|
|
33
|
+
try {
|
|
34
|
+
queryCheck(selector);
|
|
35
|
+
}
|
|
36
|
+
catch (_a) {
|
|
37
|
+
return false;
|
|
38
|
+
}
|
|
39
|
+
return true;
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90YWdzLWlucHV0L3V0aWxzL3R5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxPQUFPLEtBQUssVUFBVSxDQUFDO0FBQ25FLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQ2pDLE9BQU8sT0FBTyxLQUFLLFFBQVE7SUFDM0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksT0FBTyxPQUFPLEtBQUssUUFBUSxDQUFDLElBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLGlCQUFpQixDQUFDLENBQUMsQ0FBQztBQUNqSCxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUNqQyxDQUFDLE9BQU8sT0FBTyxLQUFLLFVBQVUsSUFBSSxDQUFDLE9BQU8sT0FBTyxLQUFLLFFBQVEsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztBQUM1RyxnRUFBZ0U7QUFDaEUsK0dBQStHO0FBQy9HLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksT0FBTyxLQUFLLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxDQUFDO0FBRXJGLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsRUFBRTtJQUM5QixJQUFJO1FBQ0YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM5QyxPQUFPLElBQUksQ0FBQztLQUNiO0lBQUMsT0FBTyxHQUFHLEVBQUU7UUFDWixPQUFPLEtBQUssQ0FBQztLQUNkO0FBQ0gsQ0FBQyxDQUFDO0FBRUY7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLEdBQUcsRUFBRSxFQUFFO0lBQ2xDLE1BQU0sS0FBSyxHQUFHLDBCQUEwQixDQUFDO0lBQ3pDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUM7QUFDbkMsQ0FBQyxDQUFDO0FBRUY7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxRQUFRLENBQUMsRUFBRTtJQUN4QyxNQUFNLFVBQVUsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzRSxJQUFJO1FBQ0YsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0tBQ3RCO0lBQUMsV0FBTTtRQUNOLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBpc0Z1bmN0aW9uID0gdW5rbm93biA9PiB0eXBlb2YgdW5rbm93biA9PT0gJ2Z1bmN0aW9uJztcbmV4cG9ydCBjb25zdCBpc1N0cmluZyA9IHVua25vd24gPT4gKFxuICB0eXBlb2YgdW5rbm93biA9PT0gJ3N0cmluZycgfHxcbiAgKCghIXVua25vd24gJiYgdHlwZW9mIHVua25vd24gPT09ICdvYmplY3QnKSAmJiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodW5rbm93bikgPT09ICdbb2JqZWN0IFN0cmluZ10nKSk7XG5leHBvcnQgY29uc3QgaXNPYmplY3QgPSB1bmtub3duID0+IChcbiAgKHR5cGVvZiB1bmtub3duID09PSAnZnVuY3Rpb24nIHx8ICh0eXBlb2YgdW5rbm93biA9PT0gJ29iamVjdCcgJiYgISF1bmtub3duKSkgJiYgIUFycmF5LmlzQXJyYXkodW5rbm93bikpO1xuLy8gUmV0dXJucyB0cnVlIGlmIHRoZSB2YWx1ZSBoYXMgYSBcInRoZW5cIiBmdW5jdGlvbi4gQWRhcHRlZCBmcm9tXG4vLyBodHRwczovL2dpdGh1Yi5jb20vZ3JhcGhxbC9ncmFwaHFsLWpzL2Jsb2IvNDk5YTc1OTM5ZjcwYzQ4NjNkNDQxNDkzNzFkNmE5OWQ1N2ZmN2MzNS9zcmMvanN1dGlscy9pc1Byb21pc2UuanNcbmV4cG9ydCBjb25zdCBpc1Byb21pc2UgPSB2YWx1ZSA9PiBCb29sZWFuKHZhbHVlICYmIHR5cGVvZiB2YWx1ZS50aGVuID09PSAnZnVuY3Rpb24nKTtcblxuZXhwb3J0IGNvbnN0IGlzTm9kZSA9IHVua25vd24gPT4ge1xuICB0cnkge1xuICAgIE5vZGUucHJvdG90eXBlLmNsb25lTm9kZS5jYWxsKHVua25vd24sIGZhbHNlKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59O1xuXG4vKipcbiAqIENvbnZlcnQgU3RyaW5nIChmYWxzZSxGYWxzZSxUcnVlLHRydWUsbm8seWVzLDAsMSkgdG8gcmVhbCBCb29sZWFuXG4gKlxuICogQHBhcmFtIHZhbFxuICovXG5leHBvcnQgY29uc3QgQm9vbGVhblBhcnNlID0gKHZhbCkgPT4ge1xuICBjb25zdCBmYWxzeSA9IC9eKD86Zig/OmFsc2UpP3xubz98MCspJC9pO1xuICByZXR1cm4gIWZhbHN5LnRlc3QodmFsKSAmJiAhIXZhbDtcbn07XG5cbi8qKlxuICogQ2hlY2sgaWYgZ2l2ZW4gcXVlcnkgc2VsZWN0b3IgaXMgdmFsaWRcbiAqXG4gKiBAcGFyYW0gc2VsZWN0b3JcbiAqL1xuZXhwb3J0IGNvbnN0IGlzU2VsZWN0b3JWYWxpZCA9IHNlbGVjdG9yID0+IHtcbiAgY29uc3QgcXVlcnlDaGVjayA9IHMgPT4gZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLnF1ZXJ5U2VsZWN0b3Iocyk7XG4gIHRyeSB7XG4gICAgcXVlcnlDaGVjayhzZWxlY3Rvcik7XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHJldHVybiB0cnVlO1xufTtcbiJdfQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
export default (prefix = '') => (prefix + (1e7 + -1e3 + -4e3 + -8e3 + -1e11)).replace(/[018]/g, c => (+c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> +c / 4).toString(16));
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXVpZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90YWdzLWlucHV0L3V0aWxzL3V1aWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0JBQW9CO0FBQ3BCLGVBQWUsQ0FBQyxNQUFNLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxJQUFJLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlICovXG5leHBvcnQgZGVmYXVsdCAocHJlZml4ID0gJycpID0+IChwcmVmaXggKyAoMWU3ICsgLTFlMyArIC00ZTMgKyAtOGUzICsgLTFlMTEpKS5yZXBsYWNlKC9bMDE4XS9nLCBjID0+ICgrYyBeIGNyeXB0by5nZXRSYW5kb21WYWx1ZXMobmV3IFVpbnQ4QXJyYXkoMSkpWzBdICYgMTUgPj4gK2MgLyA0KS50b1N0cmluZygxNikpO1xuIl19
|