suneditor 2.44.12 → 2.45.0
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/LICENSE.txt +20 -20
- package/README.md +1588 -1585
- package/dist/suneditor.min.js +2 -2
- package/package.json +71 -71
- package/src/assets/css/suneditor-contents.css +561 -561
- package/src/assets/css/suneditor.css +0 -0
- package/src/assets/defaultIcons.js +103 -103
- package/src/lang/Lang.d.ts +143 -143
- package/src/lang/ckb.d.ts +4 -4
- package/src/lang/ckb.js +187 -187
- package/src/lang/da.d.ts +4 -4
- package/src/lang/da.js +191 -191
- package/src/lang/de.d.ts +4 -4
- package/src/lang/de.js +188 -188
- package/src/lang/en.d.ts +4 -4
- package/src/lang/en.js +187 -187
- package/src/lang/es.d.ts +4 -4
- package/src/lang/es.js +187 -187
- package/src/lang/fr.d.ts +4 -4
- package/src/lang/fr.js +188 -188
- package/src/lang/he.d.ts +4 -4
- package/src/lang/he.js +188 -188
- package/src/lang/index.d.ts +22 -22
- package/src/lang/index.js +25 -25
- package/src/lang/it.d.ts +4 -4
- package/src/lang/it.js +188 -188
- package/src/lang/ja.d.ts +4 -4
- package/src/lang/ja.js +187 -187
- package/src/lang/ko.d.ts +4 -4
- package/src/lang/ko.js +187 -187
- package/src/lang/lv.d.ts +4 -4
- package/src/lang/lv.js +187 -187
- package/src/lang/nl.d.ts +4 -4
- package/src/lang/nl.js +187 -187
- package/src/lang/pl.d.ts +4 -4
- package/src/lang/pl.js +187 -187
- package/src/lang/pt_br.d.ts +4 -4
- package/src/lang/pt_br.js +189 -189
- package/src/lang/ro.d.ts +4 -4
- package/src/lang/ro.js +187 -187
- package/src/lang/ru.d.ts +4 -4
- package/src/lang/ru.js +187 -187
- package/src/lang/se.d.ts +4 -4
- package/src/lang/se.js +191 -191
- package/src/lang/ua.d.ts +5 -5
- package/src/lang/ua.js +188 -188
- package/src/lang/ur.d.ts +4 -4
- package/src/lang/ur.js +187 -187
- package/src/lang/zh_cn.d.ts +4 -4
- package/src/lang/zh_cn.js +187 -187
- package/src/lib/constructor.js +3 -1
- package/src/lib/context.d.ts +42 -42
- package/src/lib/context.js +0 -0
- package/src/lib/core.d.ts +1101 -1101
- package/src/lib/core.js +96 -51
- package/src/lib/history.d.ts +48 -48
- package/src/lib/history.js +218 -218
- package/src/lib/util.d.ts +677 -677
- package/src/lib/util.js +39 -11
- package/src/options.d.ts +608 -608
- package/src/plugins/CommandPlugin.d.ts +7 -7
- package/src/plugins/DialogPlugin.d.ts +19 -19
- package/src/plugins/FileBrowserPlugin.d.ts +29 -29
- package/src/plugins/Module.d.ts +14 -14
- package/src/plugins/Plugin.d.ts +41 -41
- package/src/plugins/SubmenuPlugin.d.ts +7 -7
- package/src/plugins/command/blockquote.d.ts +4 -4
- package/src/plugins/command/blockquote.js +46 -46
- package/src/plugins/dialog/audio.d.ts +4 -4
- package/src/plugins/dialog/audio.js +556 -556
- package/src/plugins/dialog/image.d.ts +4 -4
- package/src/plugins/dialog/image.js +1115 -1115
- package/src/plugins/dialog/link.d.ts +4 -4
- package/src/plugins/dialog/link.js +223 -223
- package/src/plugins/dialog/math.d.ts +4 -4
- package/src/plugins/dialog/math.js +295 -295
- package/src/plugins/dialog/mention.d.ts +5 -5
- package/src/plugins/dialog/mention.js +242 -242
- package/src/plugins/dialog/video.d.ts +4 -4
- package/src/plugins/dialog/video.js +977 -977
- package/src/plugins/fileBrowser/imageGallery.d.ts +4 -4
- package/src/plugins/fileBrowser/imageGallery.js +63 -63
- package/src/plugins/index.d.ts +79 -79
- package/src/plugins/index.js +32 -32
- package/src/plugins/modules/_anchor.js +461 -461
- package/src/plugins/modules/_colorPicker.d.ts +59 -59
- package/src/plugins/modules/_colorPicker.js +0 -0
- package/src/plugins/modules/_notice.d.ts +20 -20
- package/src/plugins/modules/_notice.js +72 -72
- package/src/plugins/modules/_selectMenu.js +118 -118
- package/src/plugins/modules/component.d.ts +24 -24
- package/src/plugins/modules/component.js +80 -80
- package/src/plugins/modules/dialog.d.ts +27 -27
- package/src/plugins/modules/dialog.js +174 -174
- package/src/plugins/modules/fileBrowser.d.ts +41 -41
- package/src/plugins/modules/fileBrowser.js +373 -373
- package/src/plugins/modules/fileManager.d.ts +66 -66
- package/src/plugins/modules/fileManager.js +325 -325
- package/src/plugins/modules/index.d.ts +10 -10
- package/src/plugins/modules/index.js +8 -8
- package/src/plugins/modules/resizing.d.ts +153 -153
- package/src/plugins/modules/resizing.js +895 -895
- package/src/plugins/submenu/align.d.ts +4 -4
- package/src/plugins/submenu/align.js +160 -160
- package/src/plugins/submenu/font.d.ts +4 -4
- package/src/plugins/submenu/font.js +120 -120
- package/src/plugins/submenu/fontColor.d.ts +4 -4
- package/src/plugins/submenu/fontColor.js +0 -0
- package/src/plugins/submenu/fontSize.d.ts +4 -4
- package/src/plugins/submenu/fontSize.js +112 -112
- package/src/plugins/submenu/formatBlock.d.ts +4 -4
- package/src/plugins/submenu/formatBlock.js +273 -273
- package/src/plugins/submenu/hiliteColor.d.ts +4 -4
- package/src/plugins/submenu/hiliteColor.js +0 -0
- package/src/plugins/submenu/horizontalRule.d.ts +4 -4
- package/src/plugins/submenu/horizontalRule.js +98 -98
- package/src/plugins/submenu/lineHeight.d.ts +4 -4
- package/src/plugins/submenu/lineHeight.js +104 -104
- package/src/plugins/submenu/list.d.ts +4 -4
- package/src/plugins/submenu/list.js +456 -456
- package/src/plugins/submenu/paragraphStyle.d.ts +4 -4
- package/src/plugins/submenu/paragraphStyle.js +135 -135
- package/src/plugins/submenu/table.d.ts +4 -4
- package/src/plugins/submenu/template.d.ts +4 -4
- package/src/plugins/submenu/template.js +71 -71
- package/src/plugins/submenu/textStyle.d.ts +4 -4
- package/src/plugins/submenu/textStyle.js +167 -167
- package/src/suneditor.d.ts +9 -9
- package/src/suneditor.js +75 -75
- package/src/suneditor_build.js +17 -17
package/src/lib/util.js
CHANGED
|
@@ -365,6 +365,15 @@ const util = {
|
|
|
365
365
|
return element && element.nodeType !== 3 && /^(strong|span|font|b|var|i|em|u|ins|s|strike|del|sub|sup|mark|a|label|code|summary)$/i.test(element.nodeName);
|
|
366
366
|
},
|
|
367
367
|
|
|
368
|
+
/**
|
|
369
|
+
* @description It is judged whether it is the input element (INPUT, TEXTAREA)
|
|
370
|
+
* @param {Node} element The node to check
|
|
371
|
+
* @returns
|
|
372
|
+
*/
|
|
373
|
+
isInputElement: function (element) {
|
|
374
|
+
return element && element.nodeType === 1 && /^(INPUT|TEXTAREA)$/i.test(element.nodeName);
|
|
375
|
+
},
|
|
376
|
+
|
|
368
377
|
/**
|
|
369
378
|
* @description It is judged whether it is the format element (P, DIV, H[1-6], PRE, LI | class="__se__format__replace_xxx")
|
|
370
379
|
* Format element also contain "free format Element"
|
|
@@ -1449,8 +1458,10 @@ const util = {
|
|
|
1449
1458
|
}
|
|
1450
1459
|
|
|
1451
1460
|
const bp = baseNode.parentNode;
|
|
1452
|
-
let index = 0
|
|
1461
|
+
let index = 0;
|
|
1462
|
+
let suffixIndex = 1;
|
|
1453
1463
|
let next = true;
|
|
1464
|
+
let newEl, children, temp;
|
|
1454
1465
|
if (!depth || depth < 0) depth = 0;
|
|
1455
1466
|
|
|
1456
1467
|
if (baseNode.nodeType === 3) {
|
|
@@ -1461,6 +1472,16 @@ const util = {
|
|
|
1461
1472
|
if (this.onlyZeroWidthSpace(after)) after.data = this.zeroWidthSpace;
|
|
1462
1473
|
}
|
|
1463
1474
|
} else if (baseNode.nodeType === 1) {
|
|
1475
|
+
if (offset === 0) {
|
|
1476
|
+
while (baseNode.firstChild) {
|
|
1477
|
+
baseNode = baseNode.firstChild;
|
|
1478
|
+
}
|
|
1479
|
+
if (baseNode.nodeType === 3) {
|
|
1480
|
+
const after = this.createTextNode(this.zeroWidthSpace);
|
|
1481
|
+
baseNode.parentNode.insertBefore(after, baseNode);
|
|
1482
|
+
baseNode = after;
|
|
1483
|
+
}
|
|
1484
|
+
}
|
|
1464
1485
|
if (!baseNode.previousSibling) {
|
|
1465
1486
|
if (this.getElementDepth(baseNode) === depth) next = false;
|
|
1466
1487
|
} else {
|
|
@@ -1468,9 +1489,10 @@ const util = {
|
|
|
1468
1489
|
}
|
|
1469
1490
|
}
|
|
1470
1491
|
|
|
1492
|
+
if (baseNode.nodeType === 1) suffixIndex = 0;
|
|
1471
1493
|
let depthEl = baseNode;
|
|
1472
1494
|
while (this.getElementDepth(depthEl) > depth) {
|
|
1473
|
-
index = this.getPositionIndex(depthEl) +
|
|
1495
|
+
index = this.getPositionIndex(depthEl) + suffixIndex;
|
|
1474
1496
|
depthEl = depthEl.parentNode;
|
|
1475
1497
|
|
|
1476
1498
|
temp = newEl;
|
|
@@ -1735,6 +1757,15 @@ const util = {
|
|
|
1735
1757
|
return html.trim().replace(/<\/?(?!strong|span|font|b|var|i|em|u|ins|s|strike|del|sub|sup|mark|a|label|code|summary)[^>^<]+>\s+(?=<)/ig, function (m) { return m.replace(/\n/g, '').replace(/\s+/, ' '); });
|
|
1736
1758
|
},
|
|
1737
1759
|
|
|
1760
|
+
/**
|
|
1761
|
+
* @description HTML code compression
|
|
1762
|
+
* @param {string} html HTML string
|
|
1763
|
+
* @returns {string} HTML string
|
|
1764
|
+
*/
|
|
1765
|
+
htmlCompress: function (html) {
|
|
1766
|
+
return html.replace(/\n/g, '').replace(/(>)(?:\s+)(<)/g, '$1$2');
|
|
1767
|
+
},
|
|
1768
|
+
|
|
1738
1769
|
/**
|
|
1739
1770
|
* @description Sort a element array by depth of element.
|
|
1740
1771
|
* @param {Array} array Array object
|
|
@@ -1797,6 +1828,7 @@ const util = {
|
|
|
1797
1828
|
},
|
|
1798
1829
|
|
|
1799
1830
|
/**
|
|
1831
|
+
* @deprecated
|
|
1800
1832
|
* @description Check disallowed tags
|
|
1801
1833
|
* @param {Node} element Element to check
|
|
1802
1834
|
* @returns {Boolean}
|
|
@@ -1831,10 +1863,10 @@ const util = {
|
|
|
1831
1863
|
* @param {Element} documentFragment Document fragment "DOCUMENT_FRAGMENT_NODE" (nodeType === 11)
|
|
1832
1864
|
* @param {RegExp} htmlCheckWhitelistRegExp Editor tags whitelist (core._htmlCheckWhitelistRegExp)
|
|
1833
1865
|
* @param {RegExp} htmlCheckBlacklistRegExp Editor tags blacklist (core._htmlCheckBlacklistRegExp)
|
|
1834
|
-
* @param {
|
|
1866
|
+
* @param {Function} classNameFilter Class name filter function
|
|
1835
1867
|
* @private
|
|
1836
1868
|
*/
|
|
1837
|
-
_consistencyCheckOfHTML: function (documentFragment, htmlCheckWhitelistRegExp, htmlCheckBlacklistRegExp,
|
|
1869
|
+
_consistencyCheckOfHTML: function (documentFragment, htmlCheckWhitelistRegExp, htmlCheckBlacklistRegExp, classNameFilter) {
|
|
1838
1870
|
/**
|
|
1839
1871
|
* It is can use ".children(util.getListChildren)" to exclude text nodes, but "documentFragment.children" is not supported in IE.
|
|
1840
1872
|
* So check the node type and exclude the text no (current.nodeType !== 1)
|
|
@@ -1877,15 +1909,15 @@ const util = {
|
|
|
1877
1909
|
}
|
|
1878
1910
|
|
|
1879
1911
|
// class filter
|
|
1880
|
-
if (
|
|
1881
|
-
const className = new this._w.Array(current.classList).map(
|
|
1912
|
+
if (nrtag && current.className) {
|
|
1913
|
+
const className = new this._w.Array(current.classList).map(classNameFilter).join(' ').trim();
|
|
1882
1914
|
if (className) current.className = className;
|
|
1883
1915
|
else current.removeAttribute('class');
|
|
1884
1916
|
}
|
|
1885
1917
|
|
|
1886
1918
|
const result = current.parentNode !== documentFragment && nrtag &&
|
|
1887
1919
|
((this.isListCell(current) && !this.isList(current.parentNode)) ||
|
|
1888
|
-
(
|
|
1920
|
+
((this.isFormatElement(current) || this.isComponent(current)) && !this.isRangeFormatElement(current.parentNode) && !this.getParentElement(current, this.isComponent)));
|
|
1889
1921
|
|
|
1890
1922
|
return result;
|
|
1891
1923
|
}.bind(this));
|
|
@@ -1952,10 +1984,6 @@ const util = {
|
|
|
1952
1984
|
}
|
|
1953
1985
|
},
|
|
1954
1986
|
|
|
1955
|
-
_classNameFilter: function (v) {
|
|
1956
|
-
return /(^__se__|^se-|katex)/.test(v) ? v : '';
|
|
1957
|
-
},
|
|
1958
|
-
|
|
1959
1987
|
_setDefaultOptionStyle: function (options, defaultStyle) {
|
|
1960
1988
|
let optionStyle = '';
|
|
1961
1989
|
if (options.height) optionStyle += 'height:' + options.height + ';';
|