mirror of
https://github.com/Combodo/iTop.git
synced 2026-02-12 23:14:18 +01:00
N°8617 - New portal theme doesn't work with Safari
This commit is contained in:
@@ -162,6 +162,8 @@
|
||||
<script type="text/javascript" src="{{ app['combodo.portal.base.absolute_url'] ~ 'js/portal-clipboard.js'|add_itop_version }}"></script>
|
||||
{# User Preferences #}
|
||||
<script type="text/javascript" src="{{ app['combodo.portal.base.absolute_url'] ~ 'js/user_preferences.js'|add_itop_version }}"></script>
|
||||
{# Polyfill for custom elements #}
|
||||
<script type="text/javascript" src="{{ app['combodo.absolute_url'] ~ 'node_modules/@ungap/custom-elements/es.js'|add_itop_version }}"></script>
|
||||
{# custom elements #}
|
||||
<script type="text/javascript" src="{{ app['combodo.portal.base.absolute_url'] ~ 'js/custom_elements/base_element.js'|add_itop_version }}"></script>
|
||||
<script type="text/javascript" src="{{ app['combodo.portal.base.absolute_url'] ~ 'js/custom_elements/tile_element.js'|add_itop_version }}"></script>
|
||||
|
||||
6
node_modules/.package-lock.json
generated
vendored
6
node_modules/.package-lock.json
generated
vendored
@@ -22,6 +22,12 @@
|
||||
"url": "https://opencollective.com/popperjs"
|
||||
}
|
||||
},
|
||||
"node_modules/@ungap/custom-elements": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/@ungap/custom-elements/-/custom-elements-1.3.0.tgz",
|
||||
"integrity": "sha512-f4q/s76+8nOy+fhrNHyetuoPDR01lmlZB5czfCG+OOnBw/Wf+x48DcCDPmMQY7oL8xYFL8qfenMoiS8DUkKBUw==",
|
||||
"license": "ISC"
|
||||
},
|
||||
"node_modules/ace-builds": {
|
||||
"version": "1.32.7",
|
||||
"resolved": "https://registry.npmjs.org/ace-builds/-/ace-builds-1.32.7.tgz",
|
||||
|
||||
15
node_modules/@ungap/custom-elements/LICENSE
generated
vendored
Normal file
15
node_modules/@ungap/custom-elements/LICENSE
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
ISC License
|
||||
|
||||
Copyright (c) 2020, Andrea Giammarchi, @WebReflection
|
||||
|
||||
Permission to use, copy, modify, and/or distribute this software for any
|
||||
purpose with or without fee is hereby granted, provided that the above
|
||||
copyright notice and this permission notice appear in all copies.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||
OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
PERFORMANCE OF THIS SOFTWARE.
|
||||
50
node_modules/@ungap/custom-elements/README.md
generated
vendored
Normal file
50
node_modules/@ungap/custom-elements/README.md
generated
vendored
Normal file
@@ -0,0 +1,50 @@
|
||||
# Custom Elements Polyfill
|
||||
|
||||
This module provides the [Custom Elements V1 API](https://html.spec.whatwg.org/multipage/custom-elements.html#custom-elements-api) as defined by standards, including the ability to [extend builtin elements](https://html.spec.whatwg.org/multipage/custom-elements.html#custom-elements-customized-builtin-example), all in ~2K _minified_ and _gzipped_ / _brotlied_.
|
||||
|
||||
|
||||
## Compatibility
|
||||
|
||||
The polyfill gracefully enhances the following minimum versions of at least these browsers, up to their latest version:
|
||||
|
||||
* Chrome 38
|
||||
* Firefox 14
|
||||
* Opera 25
|
||||
* Internet Explorer 11 and Edge 12
|
||||
* Safari 8 and WebKit based
|
||||
* Samsung Internet 3
|
||||
|
||||
|
||||
## How To
|
||||
|
||||
Either install this module via `npm i @ungap/custom-elements`, and include it in your project, or use a CDN such as [unpkg.com](https://unpkg.com/@ungap/custom-elements) to obtain the _minified_ version of this module.
|
||||
|
||||
```html
|
||||
<!-- this should be on top of your HTML <head> scripts -->
|
||||
<script src="//unpkg.com/@ungap/custom-elements"></script>
|
||||
```
|
||||
|
||||
If targeted browsers are ES2015 compatible, the `es.js` file would provide the same polyfill, just lighter, as no transpilation is used.
|
||||
|
||||
```html
|
||||
<script src="//unpkg.com/@ungap/custom-elements/es.js"></script>
|
||||
```
|
||||
|
||||
|
||||
|
||||
If installed as module, please remember to include it on top of your main JS file.
|
||||
|
||||
```js
|
||||
// ESM
|
||||
import '@ungap/custom-elements';
|
||||
|
||||
// CJS
|
||||
require('@ungap/custom-elements');
|
||||
```
|
||||
|
||||
The module will incrementally patch the global `window`/`self` reference, adding a `customElements` object that is compatible with the API.
|
||||
|
||||
|
||||
## Source Code
|
||||
|
||||
This module simply provides [@webreflection/custom-elements](https://github.com/WebReflection/custom-elements#readme) module under the [ungap](https://ungap.github.io/) umbrella.
|
||||
2
node_modules/@ungap/custom-elements/es.js
generated
vendored
Normal file
2
node_modules/@ungap/custom-elements/es.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
554
node_modules/@ungap/custom-elements/index.js
generated
vendored
Normal file
554
node_modules/@ungap/custom-elements/index.js
generated
vendored
Normal file
@@ -0,0 +1,554 @@
|
||||
/*! (c) Andrea Giammarchi @webreflection ISC */
|
||||
(function () {
|
||||
'use strict';
|
||||
|
||||
var attributesObserver = (function (whenDefined, MutationObserver) {
|
||||
var attributeChanged = function attributeChanged(records) {
|
||||
for (var i = 0, length = records.length; i < length; i++) dispatch(records[i]);
|
||||
};
|
||||
var dispatch = function dispatch(_ref) {
|
||||
var target = _ref.target,
|
||||
attributeName = _ref.attributeName,
|
||||
oldValue = _ref.oldValue;
|
||||
target.attributeChangedCallback(attributeName, oldValue, target.getAttribute(attributeName));
|
||||
};
|
||||
return function (target, is) {
|
||||
var attributeFilter = target.constructor.observedAttributes;
|
||||
if (attributeFilter) {
|
||||
whenDefined(is).then(function () {
|
||||
new MutationObserver(attributeChanged).observe(target, {
|
||||
attributes: true,
|
||||
attributeOldValue: true,
|
||||
attributeFilter: attributeFilter
|
||||
});
|
||||
for (var i = 0, length = attributeFilter.length; i < length; i++) {
|
||||
if (target.hasAttribute(attributeFilter[i])) dispatch({
|
||||
target: target,
|
||||
attributeName: attributeFilter[i],
|
||||
oldValue: null
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
return target;
|
||||
};
|
||||
});
|
||||
|
||||
function _unsupportedIterableToArray(o, minLen) {
|
||||
if (!o) return;
|
||||
if (typeof o === "string") return _arrayLikeToArray(o, minLen);
|
||||
var n = Object.prototype.toString.call(o).slice(8, -1);
|
||||
if (n === "Object" && o.constructor) n = o.constructor.name;
|
||||
if (n === "Map" || n === "Set") return Array.from(o);
|
||||
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
|
||||
}
|
||||
function _arrayLikeToArray(arr, len) {
|
||||
if (len == null || len > arr.length) len = arr.length;
|
||||
for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
|
||||
return arr2;
|
||||
}
|
||||
function _createForOfIteratorHelper(o, allowArrayLike) {
|
||||
var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
|
||||
if (!it) {
|
||||
if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
|
||||
if (it) o = it;
|
||||
var i = 0;
|
||||
var F = function () {};
|
||||
return {
|
||||
s: F,
|
||||
n: function () {
|
||||
if (i >= o.length) return {
|
||||
done: true
|
||||
};
|
||||
return {
|
||||
done: false,
|
||||
value: o[i++]
|
||||
};
|
||||
},
|
||||
e: function (e) {
|
||||
throw e;
|
||||
},
|
||||
f: F
|
||||
};
|
||||
}
|
||||
throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
||||
}
|
||||
var normalCompletion = true,
|
||||
didErr = false,
|
||||
err;
|
||||
return {
|
||||
s: function () {
|
||||
it = it.call(o);
|
||||
},
|
||||
n: function () {
|
||||
var step = it.next();
|
||||
normalCompletion = step.done;
|
||||
return step;
|
||||
},
|
||||
e: function (e) {
|
||||
didErr = true;
|
||||
err = e;
|
||||
},
|
||||
f: function () {
|
||||
try {
|
||||
if (!normalCompletion && it.return != null) it.return();
|
||||
} finally {
|
||||
if (didErr) throw err;
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/*! (c) Andrea Giammarchi - ISC */
|
||||
var TRUE = true,
|
||||
FALSE = false,
|
||||
QSA$1 = 'querySelectorAll';
|
||||
|
||||
/**
|
||||
* Start observing a generic document or root element.
|
||||
* @param {(node:Element, connected:boolean) => void} callback triggered per each dis/connected element
|
||||
* @param {Document|Element} [root=document] by default, the global document to observe
|
||||
* @param {Function} [MO=MutationObserver] by default, the global MutationObserver
|
||||
* @param {string[]} [query=['*']] the selectors to use within nodes
|
||||
* @returns {MutationObserver}
|
||||
*/
|
||||
var notify = function notify(callback) {
|
||||
var root = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : document;
|
||||
var MO = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : MutationObserver;
|
||||
var query = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : ['*'];
|
||||
var loop = function loop(nodes, selectors, added, removed, connected, pass) {
|
||||
var _iterator = _createForOfIteratorHelper(nodes),
|
||||
_step;
|
||||
try {
|
||||
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
||||
var node = _step.value;
|
||||
if (pass || QSA$1 in node) {
|
||||
if (connected) {
|
||||
if (!added.has(node)) {
|
||||
added.add(node);
|
||||
removed["delete"](node);
|
||||
callback(node, connected);
|
||||
}
|
||||
} else if (!removed.has(node)) {
|
||||
removed.add(node);
|
||||
added["delete"](node);
|
||||
callback(node, connected);
|
||||
}
|
||||
if (!pass) loop(node[QSA$1](selectors), selectors, added, removed, connected, TRUE);
|
||||
}
|
||||
}
|
||||
} catch (err) {
|
||||
_iterator.e(err);
|
||||
} finally {
|
||||
_iterator.f();
|
||||
}
|
||||
};
|
||||
var mo = new MO(function (records) {
|
||||
if (query.length) {
|
||||
var selectors = query.join(',');
|
||||
var added = new Set(),
|
||||
removed = new Set();
|
||||
var _iterator2 = _createForOfIteratorHelper(records),
|
||||
_step2;
|
||||
try {
|
||||
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
||||
var _step2$value = _step2.value,
|
||||
addedNodes = _step2$value.addedNodes,
|
||||
removedNodes = _step2$value.removedNodes;
|
||||
loop(removedNodes, selectors, added, removed, FALSE, FALSE);
|
||||
loop(addedNodes, selectors, added, removed, TRUE, FALSE);
|
||||
}
|
||||
} catch (err) {
|
||||
_iterator2.e(err);
|
||||
} finally {
|
||||
_iterator2.f();
|
||||
}
|
||||
}
|
||||
});
|
||||
var observe = mo.observe;
|
||||
(mo.observe = function (node) {
|
||||
return observe.call(mo, node, {
|
||||
subtree: TRUE,
|
||||
childList: TRUE
|
||||
});
|
||||
})(root);
|
||||
return mo;
|
||||
};
|
||||
|
||||
var QSA = 'querySelectorAll';
|
||||
var _self$1 = self,
|
||||
document$2 = _self$1.document,
|
||||
Element$1 = _self$1.Element,
|
||||
MutationObserver$2 = _self$1.MutationObserver,
|
||||
Set$2 = _self$1.Set,
|
||||
WeakMap$1 = _self$1.WeakMap;
|
||||
var elements = function elements(element) {
|
||||
return QSA in element;
|
||||
};
|
||||
var filter = [].filter;
|
||||
var qsaObserver = (function (options) {
|
||||
var live = new WeakMap$1();
|
||||
var drop = function drop(elements) {
|
||||
for (var i = 0, length = elements.length; i < length; i++) live["delete"](elements[i]);
|
||||
};
|
||||
var flush = function flush() {
|
||||
var records = observer.takeRecords();
|
||||
for (var i = 0, length = records.length; i < length; i++) {
|
||||
parse(filter.call(records[i].removedNodes, elements), false);
|
||||
parse(filter.call(records[i].addedNodes, elements), true);
|
||||
}
|
||||
};
|
||||
var matches = function matches(element) {
|
||||
return element.matches || element.webkitMatchesSelector || element.msMatchesSelector;
|
||||
};
|
||||
var notifier = function notifier(element, connected) {
|
||||
var selectors;
|
||||
if (connected) {
|
||||
for (var q, m = matches(element), i = 0, length = query.length; i < length; i++) {
|
||||
if (m.call(element, q = query[i])) {
|
||||
if (!live.has(element)) live.set(element, new Set$2());
|
||||
selectors = live.get(element);
|
||||
if (!selectors.has(q)) {
|
||||
selectors.add(q);
|
||||
options.handle(element, connected, q);
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if (live.has(element)) {
|
||||
selectors = live.get(element);
|
||||
live["delete"](element);
|
||||
selectors.forEach(function (q) {
|
||||
options.handle(element, connected, q);
|
||||
});
|
||||
}
|
||||
};
|
||||
var parse = function parse(elements) {
|
||||
var connected = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
||||
for (var i = 0, length = elements.length; i < length; i++) notifier(elements[i], connected);
|
||||
};
|
||||
var query = options.query;
|
||||
var root = options.root || document$2;
|
||||
var observer = notify(notifier, root, MutationObserver$2, query);
|
||||
var attachShadow = Element$1.prototype.attachShadow;
|
||||
if (attachShadow) Element$1.prototype.attachShadow = function (init) {
|
||||
var shadowRoot = attachShadow.call(this, init);
|
||||
observer.observe(shadowRoot);
|
||||
return shadowRoot;
|
||||
};
|
||||
if (query.length) parse(root[QSA](query));
|
||||
return {
|
||||
drop: drop,
|
||||
flush: flush,
|
||||
observer: observer,
|
||||
parse: parse
|
||||
};
|
||||
});
|
||||
|
||||
var _self = self,
|
||||
document$1 = _self.document,
|
||||
Map = _self.Map,
|
||||
MutationObserver$1 = _self.MutationObserver,
|
||||
Object$1 = _self.Object,
|
||||
Set$1 = _self.Set,
|
||||
WeakMap = _self.WeakMap,
|
||||
Element = _self.Element,
|
||||
HTMLElement = _self.HTMLElement,
|
||||
Node = _self.Node,
|
||||
Error = _self.Error,
|
||||
TypeError$1 = _self.TypeError,
|
||||
Reflect = _self.Reflect;
|
||||
var defineProperty = Object$1.defineProperty,
|
||||
keys = Object$1.keys,
|
||||
getOwnPropertyNames = Object$1.getOwnPropertyNames,
|
||||
setPrototypeOf = Object$1.setPrototypeOf;
|
||||
var legacy = !self.customElements;
|
||||
var expando = function expando(element) {
|
||||
var key = keys(element);
|
||||
var value = [];
|
||||
var ignore = new Set$1();
|
||||
var length = key.length;
|
||||
for (var i = 0; i < length; i++) {
|
||||
value[i] = element[key[i]];
|
||||
try {
|
||||
delete element[key[i]];
|
||||
} catch (SafariTP) {
|
||||
ignore.add(i);
|
||||
}
|
||||
}
|
||||
return function () {
|
||||
for (var _i = 0; _i < length; _i++) ignore.has(_i) || (element[key[_i]] = value[_i]);
|
||||
};
|
||||
};
|
||||
if (legacy) {
|
||||
var HTMLBuiltIn = function HTMLBuiltIn() {
|
||||
var constructor = this.constructor;
|
||||
if (!classes.has(constructor)) throw new TypeError$1('Illegal constructor');
|
||||
var is = classes.get(constructor);
|
||||
if (override) return augment(override, is);
|
||||
var element = createElement.call(document$1, is);
|
||||
return augment(setPrototypeOf(element, constructor.prototype), is);
|
||||
};
|
||||
var createElement = document$1.createElement;
|
||||
var classes = new Map();
|
||||
var defined = new Map();
|
||||
var prototypes = new Map();
|
||||
var registry = new Map();
|
||||
var query = [];
|
||||
var handle = function handle(element, connected, selector) {
|
||||
var proto = prototypes.get(selector);
|
||||
if (connected && !proto.isPrototypeOf(element)) {
|
||||
var redefine = expando(element);
|
||||
override = setPrototypeOf(element, proto);
|
||||
try {
|
||||
new proto.constructor();
|
||||
} finally {
|
||||
override = null;
|
||||
redefine();
|
||||
}
|
||||
}
|
||||
var method = "".concat(connected ? '' : 'dis', "connectedCallback");
|
||||
if (method in proto) element[method]();
|
||||
};
|
||||
var _qsaObserver = qsaObserver({
|
||||
query: query,
|
||||
handle: handle
|
||||
}),
|
||||
parse = _qsaObserver.parse;
|
||||
var override = null;
|
||||
var whenDefined = function whenDefined(name) {
|
||||
if (!defined.has(name)) {
|
||||
var _,
|
||||
$ = new Promise(function ($) {
|
||||
_ = $;
|
||||
});
|
||||
defined.set(name, {
|
||||
$: $,
|
||||
_: _
|
||||
});
|
||||
}
|
||||
return defined.get(name).$;
|
||||
};
|
||||
var augment = attributesObserver(whenDefined, MutationObserver$1);
|
||||
self.customElements = {
|
||||
define: function define(is, Class) {
|
||||
if (registry.has(is)) throw new Error("the name \"".concat(is, "\" has already been used with this registry"));
|
||||
classes.set(Class, is);
|
||||
prototypes.set(is, Class.prototype);
|
||||
registry.set(is, Class);
|
||||
query.push(is);
|
||||
whenDefined(is).then(function () {
|
||||
parse(document$1.querySelectorAll(is));
|
||||
});
|
||||
defined.get(is)._(Class);
|
||||
},
|
||||
get: function get(is) {
|
||||
return registry.get(is);
|
||||
},
|
||||
whenDefined: whenDefined
|
||||
};
|
||||
defineProperty(HTMLBuiltIn.prototype = HTMLElement.prototype, 'constructor', {
|
||||
value: HTMLBuiltIn
|
||||
});
|
||||
self.HTMLElement = HTMLBuiltIn;
|
||||
document$1.createElement = function (name, options) {
|
||||
var is = options && options.is;
|
||||
var Class = is ? registry.get(is) : registry.get(name);
|
||||
return Class ? new Class() : createElement.call(document$1, name);
|
||||
};
|
||||
// in case ShadowDOM is used through a polyfill, to avoid issues
|
||||
// with builtin extends within shadow roots
|
||||
if (!('isConnected' in Node.prototype)) defineProperty(Node.prototype, 'isConnected', {
|
||||
configurable: true,
|
||||
get: function get() {
|
||||
return !(this.ownerDocument.compareDocumentPosition(this) & this.DOCUMENT_POSITION_DISCONNECTED);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
legacy = !self.customElements.get('extends-br');
|
||||
if (legacy) {
|
||||
try {
|
||||
var BR = function BR() {
|
||||
return self.Reflect.construct(HTMLBRElement, [], BR);
|
||||
};
|
||||
BR.prototype = HTMLLIElement.prototype;
|
||||
var is = 'extends-br';
|
||||
self.customElements.define('extends-br', BR, {
|
||||
'extends': 'br'
|
||||
});
|
||||
legacy = document$1.createElement('br', {
|
||||
is: is
|
||||
}).outerHTML.indexOf(is) < 0;
|
||||
var _self$customElements = self.customElements,
|
||||
get = _self$customElements.get,
|
||||
_whenDefined = _self$customElements.whenDefined;
|
||||
self.customElements.whenDefined = function (is) {
|
||||
var _this = this;
|
||||
return _whenDefined.call(this, is).then(function (Class) {
|
||||
return Class || get.call(_this, is);
|
||||
});
|
||||
};
|
||||
} catch (o_O) {}
|
||||
}
|
||||
}
|
||||
if (legacy) {
|
||||
var _parseShadow = function _parseShadow(element) {
|
||||
var root = shadowRoots.get(element);
|
||||
_parse(root.querySelectorAll(this), element.isConnected);
|
||||
};
|
||||
var customElements = self.customElements;
|
||||
var _createElement = document$1.createElement;
|
||||
var define = customElements.define,
|
||||
_get = customElements.get,
|
||||
upgrade = customElements.upgrade;
|
||||
var _ref = Reflect || {
|
||||
construct: function construct(HTMLElement) {
|
||||
return HTMLElement.call(this);
|
||||
}
|
||||
},
|
||||
construct = _ref.construct;
|
||||
var shadowRoots = new WeakMap();
|
||||
var shadows = new Set$1();
|
||||
var _classes = new Map();
|
||||
var _defined = new Map();
|
||||
var _prototypes = new Map();
|
||||
var _registry = new Map();
|
||||
var shadowed = [];
|
||||
var _query = [];
|
||||
var getCE = function getCE(is) {
|
||||
return _registry.get(is) || _get.call(customElements, is);
|
||||
};
|
||||
var _handle = function _handle(element, connected, selector) {
|
||||
var proto = _prototypes.get(selector);
|
||||
if (connected && !proto.isPrototypeOf(element)) {
|
||||
var redefine = expando(element);
|
||||
_override = setPrototypeOf(element, proto);
|
||||
try {
|
||||
new proto.constructor();
|
||||
} finally {
|
||||
_override = null;
|
||||
redefine();
|
||||
}
|
||||
}
|
||||
var method = "".concat(connected ? '' : 'dis', "connectedCallback");
|
||||
if (method in proto) element[method]();
|
||||
};
|
||||
var _qsaObserver2 = qsaObserver({
|
||||
query: _query,
|
||||
handle: _handle
|
||||
}),
|
||||
_parse = _qsaObserver2.parse;
|
||||
var _qsaObserver3 = qsaObserver({
|
||||
query: shadowed,
|
||||
handle: function handle(element, connected) {
|
||||
if (shadowRoots.has(element)) {
|
||||
if (connected) shadows.add(element);else shadows["delete"](element);
|
||||
if (_query.length) _parseShadow.call(_query, element);
|
||||
}
|
||||
}
|
||||
}),
|
||||
parseShadowed = _qsaObserver3.parse;
|
||||
// qsaObserver also patches attachShadow
|
||||
// be sure this runs *after* that
|
||||
var attachShadow = Element.prototype.attachShadow;
|
||||
if (attachShadow) Element.prototype.attachShadow = function (init) {
|
||||
var root = attachShadow.call(this, init);
|
||||
shadowRoots.set(this, root);
|
||||
return root;
|
||||
};
|
||||
var _whenDefined2 = function _whenDefined2(name) {
|
||||
if (!_defined.has(name)) {
|
||||
var _,
|
||||
$ = new Promise(function ($) {
|
||||
_ = $;
|
||||
});
|
||||
_defined.set(name, {
|
||||
$: $,
|
||||
_: _
|
||||
});
|
||||
}
|
||||
return _defined.get(name).$;
|
||||
};
|
||||
var _augment = attributesObserver(_whenDefined2, MutationObserver$1);
|
||||
var _override = null;
|
||||
getOwnPropertyNames(self).filter(function (k) {
|
||||
return /^HTML.*Element$/.test(k);
|
||||
}).forEach(function (k) {
|
||||
var HTMLElement = self[k];
|
||||
function HTMLBuiltIn() {
|
||||
var constructor = this.constructor;
|
||||
if (!_classes.has(constructor)) throw new TypeError$1('Illegal constructor');
|
||||
var _classes$get = _classes.get(constructor),
|
||||
is = _classes$get.is,
|
||||
tag = _classes$get.tag;
|
||||
if (is) {
|
||||
if (_override) return _augment(_override, is);
|
||||
var element = _createElement.call(document$1, tag);
|
||||
element.setAttribute('is', is);
|
||||
return _augment(setPrototypeOf(element, constructor.prototype), is);
|
||||
} else return construct.call(this, HTMLElement, [], constructor);
|
||||
}
|
||||
|
||||
defineProperty(HTMLBuiltIn.prototype = HTMLElement.prototype, 'constructor', {
|
||||
value: HTMLBuiltIn
|
||||
});
|
||||
defineProperty(self, k, {
|
||||
value: HTMLBuiltIn
|
||||
});
|
||||
});
|
||||
document$1.createElement = function (name, options) {
|
||||
var is = options && options.is;
|
||||
if (is) {
|
||||
var Class = _registry.get(is);
|
||||
if (Class && _classes.get(Class).tag === name) return new Class();
|
||||
}
|
||||
var element = _createElement.call(document$1, name);
|
||||
if (is) element.setAttribute('is', is);
|
||||
return element;
|
||||
};
|
||||
customElements.get = getCE;
|
||||
customElements.whenDefined = _whenDefined2;
|
||||
customElements.upgrade = function (element) {
|
||||
var is = element.getAttribute('is');
|
||||
if (is) {
|
||||
var _constructor = _registry.get(is);
|
||||
if (_constructor) {
|
||||
_augment(setPrototypeOf(element, _constructor.prototype), is);
|
||||
// apparently unnecessary because this is handled by qsa observer
|
||||
// if (element.isConnected && element.connectedCallback)
|
||||
// element.connectedCallback();
|
||||
return;
|
||||
}
|
||||
}
|
||||
upgrade.call(customElements, element);
|
||||
};
|
||||
customElements.define = function (is, Class, options) {
|
||||
if (getCE(is)) throw new Error("'".concat(is, "' has already been defined as a custom element"));
|
||||
var selector;
|
||||
var tag = options && options["extends"];
|
||||
_classes.set(Class, tag ? {
|
||||
is: is,
|
||||
tag: tag
|
||||
} : {
|
||||
is: '',
|
||||
tag: is
|
||||
});
|
||||
if (tag) {
|
||||
selector = "".concat(tag, "[is=\"").concat(is, "\"]");
|
||||
_prototypes.set(selector, Class.prototype);
|
||||
_registry.set(is, Class);
|
||||
_query.push(selector);
|
||||
} else {
|
||||
define.apply(customElements, arguments);
|
||||
shadowed.push(selector = is);
|
||||
}
|
||||
_whenDefined2(is).then(function () {
|
||||
if (tag) {
|
||||
_parse(document$1.querySelectorAll(selector));
|
||||
shadows.forEach(_parseShadow, [selector]);
|
||||
} else parseShadowed(document$1.querySelectorAll(selector));
|
||||
});
|
||||
_defined.get(is)._(Class);
|
||||
};
|
||||
}
|
||||
|
||||
})();
|
||||
3
node_modules/@ungap/custom-elements/min.js
generated
vendored
Normal file
3
node_modules/@ungap/custom-elements/min.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
30
node_modules/@ungap/custom-elements/package.json
generated
vendored
Normal file
30
node_modules/@ungap/custom-elements/package.json
generated
vendored
Normal file
@@ -0,0 +1,30 @@
|
||||
{
|
||||
"name": "@ungap/custom-elements",
|
||||
"version": "1.3.0",
|
||||
"description": "All inclusive customElements polyfill for every browser",
|
||||
"main": "index.js",
|
||||
"module": "index.js",
|
||||
"unpkg": "min.js",
|
||||
"scripts": {
|
||||
"build": "cp ./node_modules/@webreflection/custom-elements/*.js ./"
|
||||
},
|
||||
"keywords": [
|
||||
"custom",
|
||||
"elements",
|
||||
"polyfill",
|
||||
"customElements"
|
||||
],
|
||||
"author": "Andrea Giammarchi",
|
||||
"license": "ISC",
|
||||
"devDependencies": {
|
||||
"@webreflection/custom-elements": "^1.3.0"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/ungap/custom-elements.git"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/ungap/custom-elements/issues"
|
||||
},
|
||||
"homepage": "https://github.com/ungap/custom-elements#readme"
|
||||
}
|
||||
14
package-lock.json
generated
14
package-lock.json
generated
@@ -10,6 +10,7 @@
|
||||
"@cityssm/fa5-power-transforms-css": "github:cityssm/fa5-power-transforms-css",
|
||||
"@fontsource/raleway": "^4.5.0",
|
||||
"@popperjs/core": "^2.11.8",
|
||||
"@ungap/custom-elements": "^1.3.0",
|
||||
"ace-builds": "^1.32.7",
|
||||
"blueimp-file-upload": "^10.32.0",
|
||||
"bulma-scss": "^0.9.4",
|
||||
@@ -56,6 +57,12 @@
|
||||
"url": "https://opencollective.com/popperjs"
|
||||
}
|
||||
},
|
||||
"node_modules/@ungap/custom-elements": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/@ungap/custom-elements/-/custom-elements-1.3.0.tgz",
|
||||
"integrity": "sha512-f4q/s76+8nOy+fhrNHyetuoPDR01lmlZB5czfCG+OOnBw/Wf+x48DcCDPmMQY7oL8xYFL8qfenMoiS8DUkKBUw==",
|
||||
"license": "ISC"
|
||||
},
|
||||
"node_modules/ace-builds": {
|
||||
"version": "1.32.7",
|
||||
"resolved": "https://registry.npmjs.org/ace-builds/-/ace-builds-1.32.7.tgz",
|
||||
@@ -320,6 +327,11 @@
|
||||
"resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz",
|
||||
"integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A=="
|
||||
},
|
||||
"@ungap/custom-elements": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/@ungap/custom-elements/-/custom-elements-1.3.0.tgz",
|
||||
"integrity": "sha512-f4q/s76+8nOy+fhrNHyetuoPDR01lmlZB5czfCG+OOnBw/Wf+x48DcCDPmMQY7oL8xYFL8qfenMoiS8DUkKBUw=="
|
||||
},
|
||||
"ace-builds": {
|
||||
"version": "1.32.7",
|
||||
"resolved": "https://registry.npmjs.org/ace-builds/-/ace-builds-1.32.7.tgz",
|
||||
@@ -368,7 +380,7 @@
|
||||
},
|
||||
"ckeditor5-itop-build": {
|
||||
"version": "git+ssh://git@github.com/Combodo/ckeditor5-itop-build.git#303d2091805b12fce8807019f599b0a9601c9cfa",
|
||||
"from": "ckeditor5-itop-build@https://github.com/Combodo/ckeditor5-itop-build.git"
|
||||
"from": "ckeditor5-itop-build@github:Combodo/ckeditor5-itop-build"
|
||||
},
|
||||
"clipboard": {
|
||||
"version": "2.0.11",
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
"@cityssm/fa5-power-transforms-css": "github:cityssm/fa5-power-transforms-css",
|
||||
"@fontsource/raleway": "^4.5.0",
|
||||
"@popperjs/core": "^2.11.8",
|
||||
"@ungap/custom-elements": "^1.3.0",
|
||||
"ace-builds": "^1.32.7",
|
||||
"blueimp-file-upload": "^10.32.0",
|
||||
"bulma-scss": "^0.9.4",
|
||||
|
||||
Reference in New Issue
Block a user