- Linting (ESLint): As per latest ash-nazg (jsdoc for classes/methods)
- npm: Update devDeps
This commit is contained in:
113
editor/external/jamilih/jml-es.js
vendored
113
editor/external/jamilih/jml-es.js
vendored
@@ -325,7 +325,7 @@ var win = typeof window !== 'undefined' && window; // istanbul ignore next
|
||||
var doc = typeof document !== 'undefined' && document || win && win.document; // STATIC PROPERTIES
|
||||
|
||||
var possibleOptions = ['$plugins', // '$mode', // Todo (SVG/XML)
|
||||
// 'state', // Used internally
|
||||
// '$state', // Used internally
|
||||
'$map' // Add any other options here
|
||||
];
|
||||
var NS_HTML = 'http://www.w3.org/1999/xhtml',
|
||||
@@ -408,9 +408,7 @@ function _applyAnyStylesheet(node) {
|
||||
|
||||
|
||||
function _appendNode(parent, child) {
|
||||
var parentName = _getHTMLNodeName(parent);
|
||||
|
||||
var childName = _getHTMLNodeName(child); // IE only
|
||||
var parentName = _getHTMLNodeName(parent); // IE only
|
||||
// istanbul ignore if
|
||||
|
||||
|
||||
@@ -436,6 +434,9 @@ function _appendNode(parent, child) {
|
||||
parent.append(child); // IE9 is now ok with this
|
||||
} catch (e) {
|
||||
// istanbul ignore next
|
||||
var childName = _getHTMLNodeName(child); // istanbul ignore next
|
||||
|
||||
|
||||
if (parentName === 'select' && childName === 'option') {
|
||||
try {
|
||||
// Since this is now DOM Level 4 standard behavior (and what IE7+ can handle), we try it first
|
||||
@@ -591,20 +592,6 @@ function _replaceDefiner(xmlnsObj) {
|
||||
return retStr;
|
||||
};
|
||||
}
|
||||
/**
|
||||
*
|
||||
* @param {JamilihArray} args
|
||||
* @returns {Element}
|
||||
*/
|
||||
|
||||
|
||||
function _optsOrUndefinedJML() {
|
||||
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
||||
args[_key] = arguments[_key];
|
||||
}
|
||||
|
||||
return jml.apply(void 0, _toConsumableArray(args[0] === undefined ? args.slice(1) : args));
|
||||
}
|
||||
/**
|
||||
* @typedef {JamilihAttributes} AttributeArray
|
||||
* @property {string} 0 The key
|
||||
@@ -630,7 +617,7 @@ function _childrenToJML(node) {
|
||||
return function (childNodeJML, i) {
|
||||
var cn = node.childNodes[i];
|
||||
var j = Array.isArray(childNodeJML) ? jml.apply(void 0, _toConsumableArray(childNodeJML)) : jml(childNodeJML);
|
||||
cn.parentNode.replaceChild(j, cn);
|
||||
cn.replaceWith(j);
|
||||
};
|
||||
}
|
||||
/**
|
||||
@@ -649,7 +636,11 @@ function _childrenToJML(node) {
|
||||
|
||||
function _appendJML(node) {
|
||||
return function (childJML) {
|
||||
node.append(jml.apply(void 0, _toConsumableArray(childJML)));
|
||||
if (Array.isArray(childJML)) {
|
||||
node.append(jml.apply(void 0, _toConsumableArray(childJML)));
|
||||
} else {
|
||||
node.append(jml(childJML));
|
||||
}
|
||||
};
|
||||
}
|
||||
/**
|
||||
@@ -670,8 +661,10 @@ function _appendJMLOrText(node) {
|
||||
return function (childJML) {
|
||||
if (typeof childJML === 'string') {
|
||||
node.append(childJML);
|
||||
} else {
|
||||
} else if (Array.isArray(childJML)) {
|
||||
node.append(jml.apply(void 0, _toConsumableArray(childJML)));
|
||||
} else {
|
||||
node.append(jml(childJML));
|
||||
}
|
||||
};
|
||||
}
|
||||
@@ -717,15 +710,15 @@ function _DOMfromJMLOrString (childNodeJML) {
|
||||
* Creates an XHTML or HTML element (XHTML is preferred, but only in browsers
|
||||
* that support); any element after element can be omitted, and any subsequent
|
||||
* type or types added afterwards.
|
||||
* @param {JamilihArray} args
|
||||
* @param {...JamilihArray} args
|
||||
* @returns {JamilihReturn} The newly created (and possibly already appended)
|
||||
* element or array of elements
|
||||
*/
|
||||
|
||||
|
||||
var jml = function jml() {
|
||||
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
||||
args[_key2] = arguments[_key2];
|
||||
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
||||
args[_key] = arguments[_key];
|
||||
}
|
||||
|
||||
var elem = doc.createDocumentFragment();
|
||||
@@ -768,7 +761,8 @@ var jml = function jml() {
|
||||
case '#':
|
||||
{
|
||||
// Document fragment
|
||||
nodes[nodes.length] = _optsOrUndefinedJML(opts, attVal);
|
||||
opts.$state = 'fragmentChilden';
|
||||
nodes[nodes.length] = jml(opts, attVal);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -815,6 +809,12 @@ var jml = function jml() {
|
||||
break;
|
||||
}
|
||||
|
||||
case '$state':
|
||||
{
|
||||
// Handled internally
|
||||
break;
|
||||
}
|
||||
|
||||
case 'is':
|
||||
{
|
||||
// Currently only in Chrome
|
||||
@@ -847,6 +847,7 @@ var jml = function jml() {
|
||||
throw new TypeError('Expected `is` with `$define` on built-in');
|
||||
}
|
||||
|
||||
opts.$state = 'attributeValue';
|
||||
elem.setAttribute('is', atts.is);
|
||||
is = atts.is;
|
||||
}
|
||||
@@ -1159,6 +1160,7 @@ var jml = function jml() {
|
||||
break;
|
||||
}
|
||||
|
||||
opts.$state = 'attributeValue';
|
||||
elem.setAttribute(att, attVal);
|
||||
break;
|
||||
|
||||
@@ -1200,6 +1202,7 @@ var jml = function jml() {
|
||||
} // setAttribute unfortunately erases any existing styles
|
||||
|
||||
|
||||
opts.$state = 'attributeValue';
|
||||
elem.setAttribute(att, attVal);
|
||||
/*
|
||||
// The following reorders which is troublesome for serialization, e.g., as used in our testing
|
||||
@@ -1213,12 +1216,13 @@ var jml = function jml() {
|
||||
break;
|
||||
}
|
||||
|
||||
var matchingPlugin = opts && opts.$plugins && opts.$plugins.find(function (p) {
|
||||
var matchingPlugin = opts.$plugins && opts.$plugins.find(function (p) {
|
||||
return p.name === att;
|
||||
});
|
||||
|
||||
if (matchingPlugin) {
|
||||
matchingPlugin.set({
|
||||
opts: opts,
|
||||
element: elem,
|
||||
attribute: {
|
||||
name: att,
|
||||
@@ -1228,6 +1232,7 @@ var jml = function jml() {
|
||||
break;
|
||||
}
|
||||
|
||||
opts.$state = 'attributeValue';
|
||||
elem.setAttribute(att, attVal);
|
||||
break;
|
||||
}
|
||||
@@ -1251,9 +1256,9 @@ var jml = function jml() {
|
||||
})) {
|
||||
opts = args[0];
|
||||
|
||||
if (opts.state !== 'child') {
|
||||
if (opts.$state === undefined) {
|
||||
isRoot = true;
|
||||
opts.state = 'child';
|
||||
opts.$state = 'root';
|
||||
}
|
||||
|
||||
if (opts.$map && !opts.$map.root && opts.$map.root !== false) {
|
||||
@@ -1283,10 +1288,14 @@ var jml = function jml() {
|
||||
}
|
||||
|
||||
args = args.slice(1);
|
||||
} else {
|
||||
opts = {
|
||||
$state: undefined
|
||||
};
|
||||
}
|
||||
|
||||
var argc = args.length;
|
||||
var defaultMap = opts && opts.$map && opts.$map.root;
|
||||
var defaultMap = opts.$map && opts.$map.root;
|
||||
|
||||
var setMap = function setMap(dataVal) {
|
||||
var map, obj; // Boolean indicating use of default map and object
|
||||
@@ -1412,6 +1421,7 @@ var jml = function jml() {
|
||||
|
||||
case '':
|
||||
nodes[nodes.length] = elem = doc.createDocumentFragment();
|
||||
opts.$state = 'fragment';
|
||||
break;
|
||||
|
||||
default:
|
||||
@@ -1440,6 +1450,7 @@ var jml = function jml() {
|
||||
elem = doc.createElement(elStr);
|
||||
}
|
||||
|
||||
opts.$state = 'element';
|
||||
nodes[nodes.length] = elem; // Add to parent
|
||||
|
||||
break;
|
||||
@@ -1469,7 +1480,8 @@ var jml = function jml() {
|
||||
|
||||
|
||||
elem = nodes[nodes.length - 1] = new win.DOMParser().parseFromString(new win.XMLSerializer().serializeToString(elem) // Mozilla adds XHTML namespace
|
||||
.replace(' xmlns="' + NS_HTML + '"', replacer), 'application/xml').documentElement; // }catch(e) {alert(elem.outerHTML);throw e;}
|
||||
.replace(' xmlns="' + NS_HTML + '"', replacer), 'application/xml').documentElement;
|
||||
opts.$state = 'element'; // }catch(e) {alert(elem.outerHTML);throw e;}
|
||||
}
|
||||
|
||||
_checkAtts(_atts);
|
||||
@@ -1487,6 +1499,7 @@ var jml = function jml() {
|
||||
if (i === 0) {
|
||||
// Allow wrapping of element, fragment, or document
|
||||
elem = arg;
|
||||
opts.$state = 'element';
|
||||
}
|
||||
|
||||
if (i === argc - 1 || i === argc - 2 && args[i + 1] === null) {
|
||||
@@ -1534,10 +1547,14 @@ var jml = function jml() {
|
||||
default:
|
||||
if (Array.isArray(childContent)) {
|
||||
// Arrays representing child elements
|
||||
_appendNode(elem, _optsOrUndefinedJML.apply(void 0, [opts].concat(_toConsumableArray(childContent))));
|
||||
opts.$state = 'children';
|
||||
|
||||
_appendNode(elem, jml.apply(void 0, [opts].concat(_toConsumableArray(childContent))));
|
||||
} else if (childContent['#']) {
|
||||
// Fragment
|
||||
_appendNode(elem, _optsOrUndefinedJML(opts, childContent['#']));
|
||||
opts.$state = 'fragmentChildren';
|
||||
|
||||
_appendNode(elem, jml(opts, childContent['#']));
|
||||
} else {
|
||||
// Single DOM element children
|
||||
_appendNode(elem, childContent);
|
||||
@@ -1554,7 +1571,7 @@ var jml = function jml() {
|
||||
|
||||
var ret = nodes[0] || elem;
|
||||
|
||||
if (opts && isRoot && opts.$map && opts.$map.root) {
|
||||
if (isRoot && opts.$map && opts.$map.root) {
|
||||
setMap(true);
|
||||
}
|
||||
|
||||
@@ -1940,7 +1957,7 @@ jml.toJMLString = function (dom, config) {
|
||||
};
|
||||
/**
|
||||
*
|
||||
* @param {JamilihArray} args
|
||||
* @param {...JamilihArray} args
|
||||
* @returns {JamilihReturn}
|
||||
*/
|
||||
|
||||
@@ -1951,7 +1968,7 @@ jml.toDOM = function () {
|
||||
};
|
||||
/**
|
||||
*
|
||||
* @param {JamilihArray} args
|
||||
* @param {...JamilihArray} args
|
||||
* @returns {string}
|
||||
*/
|
||||
|
||||
@@ -1966,7 +1983,7 @@ jml.toHTML = function () {
|
||||
};
|
||||
/**
|
||||
*
|
||||
* @param {JamilihArray} args
|
||||
* @param {...JamilihArray} args
|
||||
* @returns {string}
|
||||
*/
|
||||
|
||||
@@ -1977,7 +1994,7 @@ jml.toDOMString = function () {
|
||||
};
|
||||
/**
|
||||
*
|
||||
* @param {JamilihArray} args
|
||||
* @param {...JamilihArray} args
|
||||
* @returns {string}
|
||||
*/
|
||||
|
||||
@@ -1988,7 +2005,7 @@ jml.toXML = function () {
|
||||
};
|
||||
/**
|
||||
*
|
||||
* @param {JamilihArray} args
|
||||
* @param {...JamilihArray} args
|
||||
* @returns {string}
|
||||
*/
|
||||
|
||||
@@ -2028,8 +2045,8 @@ function (_Map) {
|
||||
|
||||
elem = typeof elem === 'string' ? $(elem) : elem;
|
||||
|
||||
for (var _len3 = arguments.length, args = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {
|
||||
args[_key3 - 2] = arguments[_key3];
|
||||
for (var _len2 = arguments.length, args = new Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {
|
||||
args[_key2 - 2] = arguments[_key2];
|
||||
}
|
||||
|
||||
return (_this$get = this.get(elem))[methodName].apply(_this$get, [elem].concat(args));
|
||||
@@ -2069,8 +2086,8 @@ function (_WeakMap) {
|
||||
|
||||
elem = typeof elem === 'string' ? $(elem) : elem;
|
||||
|
||||
for (var _len4 = arguments.length, args = new Array(_len4 > 2 ? _len4 - 2 : 0), _key4 = 2; _key4 < _len4; _key4++) {
|
||||
args[_key4 - 2] = arguments[_key4];
|
||||
for (var _len3 = arguments.length, args = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {
|
||||
args[_key3 - 2] = arguments[_key3];
|
||||
}
|
||||
|
||||
return (_this$get2 = this.get(elem))[methodName].apply(_this$get2, [elem].concat(args));
|
||||
@@ -2097,8 +2114,8 @@ jml.WeakMap = JamilihWeakMap;
|
||||
jml.weak = function (obj) {
|
||||
var map = new JamilihWeakMap();
|
||||
|
||||
for (var _len5 = arguments.length, args = new Array(_len5 > 1 ? _len5 - 1 : 0), _key5 = 1; _key5 < _len5; _key5++) {
|
||||
args[_key5 - 1] = arguments[_key5];
|
||||
for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {
|
||||
args[_key4 - 1] = arguments[_key4];
|
||||
}
|
||||
|
||||
var elem = jml.apply(void 0, [{
|
||||
@@ -2116,8 +2133,8 @@ jml.weak = function (obj) {
|
||||
jml.strong = function (obj) {
|
||||
var map = new JamilihMap();
|
||||
|
||||
for (var _len6 = arguments.length, args = new Array(_len6 > 1 ? _len6 - 1 : 0), _key6 = 1; _key6 < _len6; _key6++) {
|
||||
args[_key6 - 1] = arguments[_key6];
|
||||
for (var _len5 = arguments.length, args = new Array(_len5 > 1 ? _len5 - 1 : 0), _key5 = 1; _key5 < _len5; _key5++) {
|
||||
args[_key5 - 1] = arguments[_key5];
|
||||
}
|
||||
|
||||
var elem = jml.apply(void 0, [{
|
||||
@@ -2152,8 +2169,8 @@ jml.command = function (elem, symOrMap, methodName) {
|
||||
elem = typeof elem === 'string' ? $(elem) : elem;
|
||||
var func;
|
||||
|
||||
for (var _len7 = arguments.length, args = new Array(_len7 > 3 ? _len7 - 3 : 0), _key7 = 3; _key7 < _len7; _key7++) {
|
||||
args[_key7 - 3] = arguments[_key7];
|
||||
for (var _len6 = arguments.length, args = new Array(_len6 > 3 ? _len6 - 3 : 0), _key6 = 3; _key6 < _len6; _key6++) {
|
||||
args[_key6 - 3] = arguments[_key6];
|
||||
}
|
||||
|
||||
if (['symbol', 'string'].includes(_typeof(symOrMap))) {
|
||||
|
||||
Reference in New Issue
Block a user