@dangl/angular-material-shared 2.2.0 → 2.3.0-beta0037
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/{esm2015/dangl-angular-material-shared.js → esm2020/dangl-angular-material-shared.mjs} +0 -0
- package/esm2020/lib/angular-material-shared.module.mjs +38 -0
- package/esm2020/lib/components/footer/footer.component.mjs +33 -0
- package/esm2020/lib/components/header/header.component.mjs +80 -0
- package/esm2020/lib/components/tiny-mce/tiny-mce.component.mjs +104 -0
- package/{esm2015/lib/models/footer-options.js → esm2020/lib/models/footer-options.mjs} +0 -0
- package/{esm2015/lib/utils/guid-generator.js → esm2020/lib/utils/guid-generator.mjs} +0 -0
- package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
- package/fesm2015/dangl-angular-material-shared.mjs +292 -0
- package/fesm2015/dangl-angular-material-shared.mjs.map +1 -0
- package/fesm2020/dangl-angular-material-shared.mjs +290 -0
- package/fesm2020/dangl-angular-material-shared.mjs.map +1 -0
- package/{dangl-angular-material-shared.d.ts → index.d.ts} +1 -0
- package/lib/angular-material-shared.module.d.ts +12 -0
- package/lib/components/footer/footer.component.d.ts +3 -0
- package/lib/components/header/header.component.d.ts +3 -0
- package/lib/components/tiny-mce/tiny-mce.component.d.ts +3 -0
- package/package.json +28 -16
- package/styles/material-style.scss +1 -1
- package/styles/material-theme.scss +4 -3
- package/styles/material-variables.scss +9 -8
- package/tinymce-assets/icons/default/icons.js +11 -1
- package/tinymce-assets/icons/default/icons.min.js +1 -1
- package/tinymce-assets/langs/cs.js +118 -75
- package/tinymce-assets/langs/cy.js +61 -18
- package/tinymce-assets/langs/da.js +60 -17
- package/tinymce-assets/langs/de.js +60 -17
- package/tinymce-assets/langs/eo.js +334 -138
- package/tinymce-assets/langs/es_ES.js +32 -2
- package/tinymce-assets/langs/fa.js +60 -17
- package/tinymce-assets/langs/fa_IR.js +31 -1
- package/tinymce-assets/langs/fr_FR.js +60 -17
- package/tinymce-assets/langs/hu_HU.js +60 -17
- package/tinymce-assets/langs/ja.js +60 -17
- package/tinymce-assets/langs/ko_KR.js +3 -3
- package/tinymce-assets/langs/nb_NO.js +61 -18
- package/tinymce-assets/langs/nl.js +60 -17
- package/tinymce-assets/langs/pl.js +60 -17
- package/tinymce-assets/langs/pt_BR.js +60 -17
- package/tinymce-assets/langs/pt_PT.js +60 -17
- package/tinymce-assets/langs/ro.js +60 -17
- package/tinymce-assets/langs/ro_RO.js +32 -2
- package/tinymce-assets/langs/ru.js +60 -17
- package/tinymce-assets/langs/ru_RU.js +445 -0
- package/tinymce-assets/langs/sl.js +59 -14
- package/tinymce-assets/langs/ta.js +60 -17
- package/tinymce-assets/langs/ta_IN.js +60 -17
- package/tinymce-assets/langs/th_TH.js +60 -17
- package/tinymce-assets/langs/tr_TR.js +81 -8
- package/tinymce-assets/langs/vi.js +179 -21
- package/tinymce-assets/langs/zh_CN.js +60 -17
- package/tinymce-assets/plugins/advlist/plugin.js +29 -48
- package/tinymce-assets/plugins/advlist/plugin.min.js +2 -2
- package/tinymce-assets/plugins/anchor/plugin.js +8 -8
- package/tinymce-assets/plugins/anchor/plugin.min.js +2 -2
- package/tinymce-assets/plugins/autolink/plugin.js +58 -30
- package/tinymce-assets/plugins/autolink/plugin.min.js +2 -2
- package/tinymce-assets/plugins/autoresize/plugin.js +25 -12
- package/tinymce-assets/plugins/autoresize/plugin.min.js +2 -2
- package/tinymce-assets/plugins/autosave/plugin.js +9 -9
- package/tinymce-assets/plugins/autosave/plugin.min.js +2 -2
- package/tinymce-assets/plugins/bbcode/plugin.js +6 -6
- package/tinymce-assets/plugins/bbcode/plugin.min.js +2 -2
- package/tinymce-assets/plugins/charmap/plugin.js +39 -49
- package/tinymce-assets/plugins/charmap/plugin.min.js +2 -2
- package/tinymce-assets/plugins/code/plugin.js +9 -10
- package/tinymce-assets/plugins/code/plugin.min.js +2 -2
- package/tinymce-assets/plugins/codesample/plugin.js +1921 -1914
- package/tinymce-assets/plugins/codesample/plugin.min.js +2 -2
- package/tinymce-assets/plugins/colorpicker/plugin.js +1 -2
- package/tinymce-assets/plugins/colorpicker/plugin.min.js +2 -2
- package/tinymce-assets/plugins/contextmenu/plugin.js +1 -2
- package/tinymce-assets/plugins/contextmenu/plugin.min.js +2 -2
- package/tinymce-assets/plugins/directionality/plugin.js +186 -53
- package/tinymce-assets/plugins/directionality/plugin.min.js +2 -2
- package/tinymce-assets/plugins/emoticons/js/emojiimages.js +1572 -1572
- package/tinymce-assets/plugins/emoticons/js/emojiimages.min.js +1 -1
- package/tinymce-assets/plugins/emoticons/js/emojis.js +1572 -1572
- package/tinymce-assets/plugins/emoticons/js/emojis.min.js +1 -1
- package/tinymce-assets/plugins/emoticons/plugin.js +231 -200
- package/tinymce-assets/plugins/emoticons/plugin.min.js +2 -2
- package/tinymce-assets/plugins/fullpage/plugin.js +42 -42
- package/tinymce-assets/plugins/fullpage/plugin.min.js +2 -2
- package/tinymce-assets/plugins/fullscreen/plugin.js +496 -129
- package/tinymce-assets/plugins/fullscreen/plugin.min.js +2 -2
- package/tinymce-assets/plugins/help/plugin.js +101 -122
- package/tinymce-assets/plugins/help/plugin.min.js +2 -2
- package/tinymce-assets/plugins/hr/plugin.js +9 -10
- package/tinymce-assets/plugins/hr/plugin.min.js +2 -2
- package/tinymce-assets/plugins/image/plugin.js +78 -73
- package/tinymce-assets/plugins/image/plugin.min.js +2 -2
- package/tinymce-assets/plugins/imagetools/plugin.js +484 -307
- package/tinymce-assets/plugins/imagetools/plugin.min.js +2 -2
- package/tinymce-assets/plugins/importcss/plugin.js +50 -51
- package/tinymce-assets/plugins/importcss/plugin.min.js +2 -2
- package/tinymce-assets/plugins/insertdatetime/plugin.js +22 -17
- package/tinymce-assets/plugins/insertdatetime/plugin.min.js +2 -2
- package/tinymce-assets/plugins/legacyoutput/plugin.js +8 -8
- package/tinymce-assets/plugins/legacyoutput/plugin.min.js +2 -2
- package/tinymce-assets/plugins/link/plugin.js +131 -125
- package/tinymce-assets/plugins/link/plugin.min.js +2 -2
- package/tinymce-assets/plugins/lists/plugin.js +256 -229
- package/tinymce-assets/plugins/lists/plugin.min.js +2 -2
- package/tinymce-assets/plugins/media/plugin.js +124 -147
- package/tinymce-assets/plugins/media/plugin.min.js +2 -2
- package/tinymce-assets/plugins/nonbreaking/plugin.js +13 -14
- package/tinymce-assets/plugins/nonbreaking/plugin.min.js +2 -2
- package/tinymce-assets/plugins/noneditable/plugin.js +6 -6
- package/tinymce-assets/plugins/noneditable/plugin.min.js +2 -2
- package/tinymce-assets/plugins/pagebreak/plugin.js +16 -17
- package/tinymce-assets/plugins/pagebreak/plugin.min.js +2 -2
- package/tinymce-assets/plugins/paste/plugin.js +196 -157
- package/tinymce-assets/plugins/paste/plugin.min.js +2 -2
- package/tinymce-assets/plugins/preview/plugin.js +13 -14
- package/tinymce-assets/plugins/preview/plugin.min.js +2 -2
- package/tinymce-assets/plugins/print/plugin.js +13 -14
- package/tinymce-assets/plugins/print/plugin.min.js +2 -2
- package/tinymce-assets/plugins/quickbars/plugin.js +33 -48
- package/tinymce-assets/plugins/quickbars/plugin.min.js +2 -2
- package/tinymce-assets/plugins/save/plugin.js +9 -8
- package/tinymce-assets/plugins/save/plugin.min.js +2 -2
- package/tinymce-assets/plugins/searchreplace/plugin.js +73 -70
- package/tinymce-assets/plugins/searchreplace/plugin.min.js +2 -2
- package/tinymce-assets/plugins/spellchecker/plugin.js +22 -23
- package/tinymce-assets/plugins/spellchecker/plugin.min.js +2 -2
- package/tinymce-assets/plugins/tabfocus/plugin.js +21 -20
- package/tinymce-assets/plugins/tabfocus/plugin.min.js +2 -2
- package/tinymce-assets/plugins/table/plugin.js +2831 -2264
- package/tinymce-assets/plugins/table/plugin.min.js +2 -2
- package/tinymce-assets/plugins/template/plugin.js +84 -70
- package/tinymce-assets/plugins/template/plugin.min.js +2 -2
- package/tinymce-assets/plugins/textcolor/plugin.js +1 -2
- package/tinymce-assets/plugins/textcolor/plugin.min.js +2 -2
- package/tinymce-assets/plugins/textpattern/plugin.js +76 -96
- package/tinymce-assets/plugins/textpattern/plugin.min.js +2 -2
- package/tinymce-assets/plugins/toc/plugin.js +31 -29
- package/tinymce-assets/plugins/toc/plugin.min.js +2 -2
- package/tinymce-assets/plugins/visualblocks/plugin.js +10 -11
- package/tinymce-assets/plugins/visualblocks/plugin.min.js +2 -2
- package/tinymce-assets/plugins/visualchars/plugin.js +52 -67
- package/tinymce-assets/plugins/visualchars/plugin.min.js +2 -2
- package/tinymce-assets/plugins/wordcount/plugin.js +67 -58
- package/tinymce-assets/plugins/wordcount/plugin.min.js +2 -2
- package/tinymce-assets/skins/ui/oxide/content.css +1 -1
- package/tinymce-assets/skins/ui/oxide/content.inline.css +1 -1
- package/tinymce-assets/skins/ui/oxide/content.inline.min.css +1 -1
- package/tinymce-assets/skins/ui/oxide/content.min.css +1 -1
- package/tinymce-assets/skins/ui/oxide/skin.css +35 -22
- package/tinymce-assets/skins/ui/oxide/skin.min.css +1 -1
- package/tinymce-assets/skins/ui/oxide/skin.shadowdom.css +7 -7
- package/tinymce-assets/skins/ui/oxide/skin.shadowdom.min.css +1 -1
- package/tinymce-assets/skins/ui/oxide-dark/content.css +1 -1
- package/tinymce-assets/skins/ui/oxide-dark/content.inline.css +1 -1
- package/tinymce-assets/skins/ui/oxide-dark/content.inline.min.css +1 -1
- package/tinymce-assets/skins/ui/oxide-dark/content.min.css +1 -1
- package/tinymce-assets/skins/ui/oxide-dark/skin.css +35 -22
- package/tinymce-assets/skins/ui/oxide-dark/skin.min.css +1 -1
- package/tinymce-assets/skins/ui/oxide-dark/skin.shadowdom.css +7 -7
- package/tinymce-assets/skins/ui/oxide-dark/skin.shadowdom.min.css +1 -1
- package/tinymce-assets/themes/mobile/theme.js +2798 -3255
- package/tinymce-assets/themes/mobile/theme.min.js +2 -2
- package/tinymce-assets/themes/silver/theme.js +25400 -25371
- package/tinymce-assets/themes/silver/theme.min.js +2 -2
- package/bundles/dangl-angular-material-shared.umd.js +0 -285
- package/bundles/dangl-angular-material-shared.umd.js.map +0 -1
- package/dangl-angular-material-shared.metadata.json +0 -1
- package/esm2015/lib/angular-material-shared.module.js +0 -25
- package/esm2015/lib/components/footer/footer.component.js +0 -27
- package/esm2015/lib/components/header/header.component.js +0 -67
- package/esm2015/lib/components/tiny-mce/tiny-mce.component.js +0 -100
- package/fesm2015/dangl-angular-material-shared.js +0 -259
- package/fesm2015/dangl-angular-material-shared.js.map +0 -1
|
@@ -4,18 +4,18 @@
|
|
|
4
4
|
* For LGPL see License.txt in the project root for license information.
|
|
5
5
|
* For commercial licenses see https://www.tiny.cloud/
|
|
6
6
|
*
|
|
7
|
-
* Version: 5.
|
|
7
|
+
* Version: 5.10.3 (2022-02-09)
|
|
8
8
|
*/
|
|
9
9
|
(function () {
|
|
10
10
|
'use strict';
|
|
11
11
|
|
|
12
|
-
var global = tinymce.util.Tools.resolve('tinymce.PluginManager');
|
|
12
|
+
var global$3 = tinymce.util.Tools.resolve('tinymce.PluginManager');
|
|
13
13
|
|
|
14
|
-
var global$
|
|
14
|
+
var global$2 = tinymce.util.Tools.resolve('tinymce.dom.DOMUtils');
|
|
15
15
|
|
|
16
|
-
var global$
|
|
16
|
+
var global$1 = tinymce.util.Tools.resolve('tinymce.util.I18n');
|
|
17
17
|
|
|
18
|
-
var global
|
|
18
|
+
var global = tinymce.util.Tools.resolve('tinymce.util.Tools');
|
|
19
19
|
|
|
20
20
|
var getTocClass = function (editor) {
|
|
21
21
|
return editor.getParam('toc_class', 'mce-toc');
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
return !editor.dom.hasClass(el.parentNode, tocClass);
|
|
60
60
|
});
|
|
61
61
|
}
|
|
62
|
-
return global
|
|
62
|
+
return global.map(headers, function (h) {
|
|
63
63
|
var id = h.id;
|
|
64
64
|
return {
|
|
65
65
|
id: id ? id : tocId(),
|
|
@@ -70,8 +70,8 @@
|
|
|
70
70
|
});
|
|
71
71
|
};
|
|
72
72
|
var getMinLevel = function (headers) {
|
|
73
|
-
var
|
|
74
|
-
for (i = 0; i < headers.length; i++) {
|
|
73
|
+
var minLevel = 9;
|
|
74
|
+
for (var i = 0; i < headers.length; i++) {
|
|
75
75
|
if (headers[i].level < minLevel) {
|
|
76
76
|
minLevel = headers[i].level;
|
|
77
77
|
}
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
var generateTitle = function (tag, title) {
|
|
85
85
|
var openTag = '<' + tag + ' contenteditable="true">';
|
|
86
86
|
var closeTag = '</' + tag + '>';
|
|
87
|
-
return openTag + global$
|
|
87
|
+
return openTag + global$2.DOM.encode(title) + closeTag;
|
|
88
88
|
};
|
|
89
89
|
var generateTocHtml = function (editor) {
|
|
90
90
|
var html = generateTocContentHtml(editor);
|
|
@@ -94,19 +94,18 @@
|
|
|
94
94
|
var html = '';
|
|
95
95
|
var headers = readHeaders(editor);
|
|
96
96
|
var prevLevel = getMinLevel(headers) - 1;
|
|
97
|
-
var i, ii, h, nextLevel;
|
|
98
97
|
if (!headers.length) {
|
|
99
98
|
return '';
|
|
100
99
|
}
|
|
101
|
-
html += generateTitle(getTocHeader(editor), global$
|
|
102
|
-
for (i = 0; i < headers.length; i++) {
|
|
103
|
-
h = headers[i];
|
|
100
|
+
html += generateTitle(getTocHeader(editor), global$1.translate('Table of Contents'));
|
|
101
|
+
for (var i = 0; i < headers.length; i++) {
|
|
102
|
+
var h = headers[i];
|
|
104
103
|
h.element.id = h.id;
|
|
105
|
-
nextLevel = headers[i + 1] && headers[i + 1].level;
|
|
104
|
+
var nextLevel = headers[i + 1] && headers[i + 1].level;
|
|
106
105
|
if (prevLevel === h.level) {
|
|
107
106
|
html += '<li>';
|
|
108
107
|
} else {
|
|
109
|
-
for (ii = prevLevel; ii < h.level; ii++) {
|
|
108
|
+
for (var ii = prevLevel; ii < h.level; ii++) {
|
|
110
109
|
html += '<ul><li>';
|
|
111
110
|
}
|
|
112
111
|
}
|
|
@@ -117,21 +116,25 @@
|
|
|
117
116
|
html += '</ul>';
|
|
118
117
|
}
|
|
119
118
|
} else {
|
|
120
|
-
for (ii = h.level; ii > nextLevel; ii--) {
|
|
121
|
-
|
|
119
|
+
for (var ii = h.level; ii > nextLevel; ii--) {
|
|
120
|
+
if (ii === nextLevel + 1) {
|
|
121
|
+
html += '</li></ul><li>';
|
|
122
|
+
} else {
|
|
123
|
+
html += '</li></ul>';
|
|
124
|
+
}
|
|
122
125
|
}
|
|
123
126
|
}
|
|
124
127
|
prevLevel = h.level;
|
|
125
128
|
}
|
|
126
129
|
return html;
|
|
127
130
|
};
|
|
128
|
-
var
|
|
131
|
+
var isEmptyOrOffscreen = function (editor, nodes) {
|
|
129
132
|
return !nodes.length || editor.dom.getParents(nodes[0], '.mce-offscreen-selection').length > 0;
|
|
130
133
|
};
|
|
131
134
|
var insertToc = function (editor) {
|
|
132
135
|
var tocClass = getTocClass(editor);
|
|
133
136
|
var $tocElm = editor.$('.' + tocClass);
|
|
134
|
-
if (
|
|
137
|
+
if (isEmptyOrOffscreen(editor, $tocElm)) {
|
|
135
138
|
editor.insertContent(generateTocHtml(editor));
|
|
136
139
|
} else {
|
|
137
140
|
updateToc(editor);
|
|
@@ -147,7 +150,7 @@
|
|
|
147
150
|
}
|
|
148
151
|
};
|
|
149
152
|
|
|
150
|
-
var register = function (editor) {
|
|
153
|
+
var register$1 = function (editor) {
|
|
151
154
|
editor.addCommand('mceInsertToc', function () {
|
|
152
155
|
insertToc(editor);
|
|
153
156
|
});
|
|
@@ -191,13 +194,14 @@
|
|
|
191
194
|
return elm && editor.dom.is(elm, '.' + getTocClass(editor)) && editor.getBody().contains(elm);
|
|
192
195
|
};
|
|
193
196
|
};
|
|
194
|
-
var register
|
|
197
|
+
var register = function (editor) {
|
|
198
|
+
var insertTocAction = function () {
|
|
199
|
+
return editor.execCommand('mceInsertToc');
|
|
200
|
+
};
|
|
195
201
|
editor.ui.registry.addButton('toc', {
|
|
196
202
|
icon: 'toc',
|
|
197
203
|
tooltip: 'Table of contents',
|
|
198
|
-
onAction:
|
|
199
|
-
return editor.execCommand('mceInsertToc');
|
|
200
|
-
},
|
|
204
|
+
onAction: insertTocAction,
|
|
201
205
|
onSetup: toggleState(editor)
|
|
202
206
|
});
|
|
203
207
|
editor.ui.registry.addButton('tocupdate', {
|
|
@@ -210,9 +214,7 @@
|
|
|
210
214
|
editor.ui.registry.addMenuItem('toc', {
|
|
211
215
|
icon: 'toc',
|
|
212
216
|
text: 'Table of contents',
|
|
213
|
-
onAction:
|
|
214
|
-
return editor.execCommand('mceInsertToc');
|
|
215
|
-
},
|
|
217
|
+
onAction: insertTocAction,
|
|
216
218
|
onSetup: toggleState(editor)
|
|
217
219
|
});
|
|
218
220
|
editor.ui.registry.addContextToolbar('toc', {
|
|
@@ -224,9 +226,9 @@
|
|
|
224
226
|
};
|
|
225
227
|
|
|
226
228
|
function Plugin () {
|
|
227
|
-
global.add('toc', function (editor) {
|
|
228
|
-
register(editor);
|
|
229
|
+
global$3.add('toc', function (editor) {
|
|
229
230
|
register$1(editor);
|
|
231
|
+
register(editor);
|
|
230
232
|
setup(editor);
|
|
231
233
|
});
|
|
232
234
|
}
|
|
@@ -4,6 +4,6 @@
|
|
|
4
4
|
* For LGPL see License.txt in the project root for license information.
|
|
5
5
|
* For commercial licenses see https://www.tiny.cloud/
|
|
6
6
|
*
|
|
7
|
-
* Version: 5.
|
|
7
|
+
* Version: 5.10.3 (2022-02-09)
|
|
8
8
|
*/
|
|
9
|
-
!function(){"use strict";
|
|
9
|
+
!function(){"use strict";function a(t){return t.getParam("toc_class","mce-toc")}function s(t){var e=t.getParam("toc_header","h2");return/^h[1-6]$/.test(e)?e:"h2"}function u(n){return function(t){function e(){return t.setDisabled(n.mode.isReadOnly()||!(0<g(n).length))}return e(),n.on("LoadContent SetContent change",e),function(){return n.on("LoadContent SetContent change",e)}}}function d(t){var e,n,o,i="",r=g(t),c=function(t){for(var e=9,n=0;n<t.length;n++)if(1===(e=t[n].level<e?t[n].level:e))return e;return e}(r)-1;if(!r.length)return"";i+=(e=s(t),n=v.translate("Table of Contents"),o="</"+e+">","<"+e+' contenteditable="true">'+m.DOM.encode(n)+o);for(var l=0;l<r.length;l++){var a=r[l];a.element.id=a.id;var u=r[l+1]&&r[l+1].level;if(c===a.level)i+="<li>";else for(var d=c;d<a.level;d++)i+="<ul><li>";if(i+='<a href="#'+a.id+'">'+a.title+"</a>",u!==a.level&&u)for(d=a.level;u<d;d--)i+=d===u+1?"</li></ul><li>":"</li></ul>";else i+="</li>",u||(i+="</ul>");c=a.level}return i}function f(t){var e=a(t),n=t.$("."+e);n.length&&t.undoManager.transact(function(){n.html(d(t))})}var t,e=tinymce.util.Tools.resolve("tinymce.PluginManager"),m=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),v=tinymce.util.Tools.resolve("tinymce.util.I18n"),c=tinymce.util.Tools.resolve("tinymce.util.Tools"),l=(t=0,function(){return"mcetoc_"+(new Date).getTime().toString(32)+(t++).toString(32)}),g=function(n){var t,o=a(n),e=s(n),i=function(t){for(var e=[],n=1;n<=t;n++)e.push("h"+n);return e.join(",")}(1<=(t=parseInt(n.getParam("toc_depth","3"),10))&&t<=9?t:3),r=n.$(i);return r.length&&/^h[1-9]$/i.test(e)&&(r=r.filter(function(t,e){return!n.dom.hasClass(e.parentNode,o)})),c.map(r,function(t){return{id:t.id||l(),level:parseInt(t.nodeName.replace(/^H/i,""),10),title:n.$.text(t),element:t}})};e.add("toc",function(t){var c,e,n,o,i,r;function l(){return i.execCommand("mceInsertToc")}(c=t).addCommand("mceInsertToc",function(){var t,e,n,o,i,r;o=a(t=c),i=t.$("."+o),r=t,!i.length||0<r.dom.getParents(i[0],".mce-offscreen-selection").length?t.insertContent((n=d(e=t),'<div class="'+e.dom.encode(a(e))+'" contenteditable="false">'+n+"</div>")):f(t)}),c.addCommand("mceUpdateToc",function(){f(c)}),(i=t).ui.registry.addButton("toc",{icon:"toc",tooltip:"Table of contents",onAction:l,onSetup:u(i)}),i.ui.registry.addButton("tocupdate",{icon:"reload",tooltip:"Update",onAction:function(){return i.execCommand("mceUpdateToc")}}),i.ui.registry.addMenuItem("toc",{icon:"toc",text:"Table of contents",onAction:l,onSetup:u(i)}),i.ui.registry.addContextToolbar("toc",{items:"tocupdate",predicate:(r=i,function(t){return t&&r.dom.is(t,"."+a(r))&&r.getBody().contains(t)}),scope:"node",position:"node"}),n=(e=t).$,o=a(e),e.on("PreProcess",function(t){var e=n("."+o,t.node);e.length&&(e.removeAttr("contentEditable"),e.find("[contenteditable]").removeAttr("contentEditable"))}),e.on("SetContent",function(){var t=n("."+o);t.length&&(t.attr("contentEditable",!1),t.children(":first-child").attr("contentEditable",!0))})})}();
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* For LGPL see License.txt in the project root for license information.
|
|
5
5
|
* For commercial licenses see https://www.tiny.cloud/
|
|
6
6
|
*
|
|
7
|
-
* Version: 5.
|
|
7
|
+
* Version: 5.10.3 (2022-02-09)
|
|
8
8
|
*/
|
|
9
9
|
(function () {
|
|
10
10
|
'use strict';
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
fireVisualBlocks(editor, enabledState.get());
|
|
37
37
|
};
|
|
38
38
|
|
|
39
|
-
var register = function (editor, pluginUrl, enabledState) {
|
|
39
|
+
var register$1 = function (editor, pluginUrl, enabledState) {
|
|
40
40
|
editor.addCommand('mceVisualBlocks', function () {
|
|
41
41
|
toggleVisualBlocks(editor, pluginUrl, enabledState);
|
|
42
42
|
});
|
|
@@ -71,21 +71,20 @@
|
|
|
71
71
|
};
|
|
72
72
|
};
|
|
73
73
|
};
|
|
74
|
-
var register
|
|
74
|
+
var register = function (editor, enabledState) {
|
|
75
|
+
var onAction = function () {
|
|
76
|
+
return editor.execCommand('mceVisualBlocks');
|
|
77
|
+
};
|
|
75
78
|
editor.ui.registry.addToggleButton('visualblocks', {
|
|
76
79
|
icon: 'visualblocks',
|
|
77
80
|
tooltip: 'Show blocks',
|
|
78
|
-
onAction:
|
|
79
|
-
return editor.execCommand('mceVisualBlocks');
|
|
80
|
-
},
|
|
81
|
+
onAction: onAction,
|
|
81
82
|
onSetup: toggleActiveState(editor, enabledState)
|
|
82
83
|
});
|
|
83
84
|
editor.ui.registry.addToggleMenuItem('visualblocks', {
|
|
84
85
|
text: 'Show blocks',
|
|
85
86
|
icon: 'visualblocks',
|
|
86
|
-
onAction:
|
|
87
|
-
return editor.execCommand('mceVisualBlocks');
|
|
88
|
-
},
|
|
87
|
+
onAction: onAction,
|
|
89
88
|
onSetup: toggleActiveState(editor, enabledState)
|
|
90
89
|
});
|
|
91
90
|
};
|
|
@@ -93,8 +92,8 @@
|
|
|
93
92
|
function Plugin () {
|
|
94
93
|
global.add('visualblocks', function (editor, pluginUrl) {
|
|
95
94
|
var enabledState = Cell(false);
|
|
96
|
-
register(editor, pluginUrl, enabledState);
|
|
97
|
-
register
|
|
95
|
+
register$1(editor, pluginUrl, enabledState);
|
|
96
|
+
register(editor, enabledState);
|
|
98
97
|
setup(editor, pluginUrl, enabledState);
|
|
99
98
|
});
|
|
100
99
|
}
|
|
@@ -4,6 +4,6 @@
|
|
|
4
4
|
* For LGPL see License.txt in the project root for license information.
|
|
5
5
|
* For commercial licenses see https://www.tiny.cloud/
|
|
6
6
|
*
|
|
7
|
-
* Version: 5.
|
|
7
|
+
* Version: 5.10.3 (2022-02-09)
|
|
8
8
|
*/
|
|
9
|
-
!function(){"use strict";
|
|
9
|
+
!function(){"use strict";function f(t,o,e){var n,i;t.dom.toggleClass(t.getBody(),"mce-visualblocks"),e.set(!e.get()),n=t,i=e.get(),n.fire("VisualBlocks",{state:i})}function g(e,n){return function(o){function t(t){return o.setActive(t.state)}return o.setActive(n.get()),e.on("VisualBlocks",t),function(){return e.off("VisualBlocks",t)}}}tinymce.util.Tools.resolve("tinymce.PluginManager").add("visualblocks",function(t,o){var e,n,i,s,c,u,l,a=(e=!1,{get:function(){return e},set:function(t){e=t}});function r(){return s.execCommand("mceVisualBlocks")}i=a,(n=t).addCommand("mceVisualBlocks",function(){f(n,0,i)}),(s=t).ui.registry.addToggleButton("visualblocks",{icon:"visualblocks",tooltip:"Show blocks",onAction:r,onSetup:g(s,c=a)}),s.ui.registry.addToggleMenuItem("visualblocks",{text:"Show blocks",icon:"visualblocks",onAction:r,onSetup:g(s,c)}),l=a,(u=t).on("PreviewFormats AfterPreviewFormats",function(t){l.get()&&u.dom.toggleClass(u.getBody(),"mce-visualblocks","afterpreviewformats"===t.type)}),u.on("init",function(){u.getParam("visualblocks_default_state",!1,"boolean")&&f(u,0,l)})})}();
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* For LGPL see License.txt in the project root for license information.
|
|
5
5
|
* For commercial licenses see https://www.tiny.cloud/
|
|
6
6
|
*
|
|
7
|
-
* Version: 5.
|
|
7
|
+
* Version: 5.10.3 (2022-02-09)
|
|
8
8
|
*/
|
|
9
9
|
(function () {
|
|
10
10
|
'use strict';
|
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
};
|
|
24
24
|
};
|
|
25
25
|
|
|
26
|
-
var global = tinymce.util.Tools.resolve('tinymce.PluginManager');
|
|
26
|
+
var global$1 = tinymce.util.Tools.resolve('tinymce.PluginManager');
|
|
27
27
|
|
|
28
|
-
var get = function (toggleState) {
|
|
28
|
+
var get$2 = function (toggleState) {
|
|
29
29
|
var isEnabled = function () {
|
|
30
30
|
return toggleState.get();
|
|
31
31
|
};
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
return t;
|
|
49
49
|
}
|
|
50
50
|
};
|
|
51
|
-
var isType = function (type) {
|
|
51
|
+
var isType$1 = function (type) {
|
|
52
52
|
return function (value) {
|
|
53
53
|
return typeOf(value) === type;
|
|
54
54
|
};
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
return typeof value === type;
|
|
59
59
|
};
|
|
60
60
|
};
|
|
61
|
-
var isString = isType('string');
|
|
61
|
+
var isString = isType$1('string');
|
|
62
62
|
var isBoolean = isSimpleType('boolean');
|
|
63
63
|
var isNumber = isSimpleType('number');
|
|
64
64
|
|
|
@@ -69,6 +69,9 @@
|
|
|
69
69
|
return value;
|
|
70
70
|
};
|
|
71
71
|
};
|
|
72
|
+
var identity = function (x) {
|
|
73
|
+
return x;
|
|
74
|
+
};
|
|
72
75
|
var never = constant(false);
|
|
73
76
|
var always = constant(true);
|
|
74
77
|
|
|
@@ -76,20 +79,14 @@
|
|
|
76
79
|
return NONE;
|
|
77
80
|
};
|
|
78
81
|
var NONE = function () {
|
|
79
|
-
var eq = function (o) {
|
|
80
|
-
return o.isNone();
|
|
81
|
-
};
|
|
82
82
|
var call = function (thunk) {
|
|
83
83
|
return thunk();
|
|
84
84
|
};
|
|
85
|
-
var id =
|
|
86
|
-
return n;
|
|
87
|
-
};
|
|
85
|
+
var id = identity;
|
|
88
86
|
var me = {
|
|
89
87
|
fold: function (n, _s) {
|
|
90
88
|
return n();
|
|
91
89
|
},
|
|
92
|
-
is: never,
|
|
93
90
|
isSome: never,
|
|
94
91
|
isNone: always,
|
|
95
92
|
getOr: id,
|
|
@@ -106,9 +103,9 @@
|
|
|
106
103
|
bind: none,
|
|
107
104
|
exists: never,
|
|
108
105
|
forall: always,
|
|
109
|
-
filter:
|
|
110
|
-
|
|
111
|
-
|
|
106
|
+
filter: function () {
|
|
107
|
+
return none();
|
|
108
|
+
},
|
|
112
109
|
toArray: function () {
|
|
113
110
|
return [];
|
|
114
111
|
},
|
|
@@ -128,9 +125,6 @@
|
|
|
128
125
|
fold: function (n, s) {
|
|
129
126
|
return s(a);
|
|
130
127
|
},
|
|
131
|
-
is: function (v) {
|
|
132
|
-
return a === v;
|
|
133
|
-
},
|
|
134
128
|
isSome: always,
|
|
135
129
|
isNone: never,
|
|
136
130
|
getOr: constant_a,
|
|
@@ -157,14 +151,6 @@
|
|
|
157
151
|
},
|
|
158
152
|
toString: function () {
|
|
159
153
|
return 'some(' + a + ')';
|
|
160
|
-
},
|
|
161
|
-
equals: function (o) {
|
|
162
|
-
return o.is(a);
|
|
163
|
-
},
|
|
164
|
-
equals_: function (o, elementEq) {
|
|
165
|
-
return o.fold(never, function (b) {
|
|
166
|
-
return elementEq(a, b);
|
|
167
|
-
});
|
|
168
154
|
}
|
|
169
155
|
};
|
|
170
156
|
return me;
|
|
@@ -187,7 +173,7 @@
|
|
|
187
173
|
}
|
|
188
174
|
return r;
|
|
189
175
|
};
|
|
190
|
-
var each = function (xs, f) {
|
|
176
|
+
var each$1 = function (xs, f) {
|
|
191
177
|
for (var i = 0, len = xs.length; i < len; i++) {
|
|
192
178
|
var x = xs[i];
|
|
193
179
|
f(x, i);
|
|
@@ -205,7 +191,7 @@
|
|
|
205
191
|
};
|
|
206
192
|
|
|
207
193
|
var keys = Object.keys;
|
|
208
|
-
var each
|
|
194
|
+
var each = function (obj, f) {
|
|
209
195
|
var props = keys(obj);
|
|
210
196
|
for (var k = 0, len = props.length; k < len; k++) {
|
|
211
197
|
var i = props[k];
|
|
@@ -214,7 +200,7 @@
|
|
|
214
200
|
}
|
|
215
201
|
};
|
|
216
202
|
|
|
217
|
-
|
|
203
|
+
typeof window !== 'undefined' ? window : Function('return this;')();
|
|
218
204
|
|
|
219
205
|
var TEXT = 3;
|
|
220
206
|
|
|
@@ -224,12 +210,12 @@
|
|
|
224
210
|
var value = function (element) {
|
|
225
211
|
return element.dom.nodeValue;
|
|
226
212
|
};
|
|
227
|
-
var isType
|
|
213
|
+
var isType = function (t) {
|
|
228
214
|
return function (element) {
|
|
229
215
|
return type(element) === t;
|
|
230
216
|
};
|
|
231
217
|
};
|
|
232
|
-
var isText = isType
|
|
218
|
+
var isText = isType(TEXT);
|
|
233
219
|
|
|
234
220
|
var rawSet = function (dom, key, value) {
|
|
235
221
|
if (isString(value) || isBoolean(value) || isNumber(value)) {
|
|
@@ -246,7 +232,7 @@
|
|
|
246
232
|
var v = element.dom.getAttribute(key);
|
|
247
233
|
return v === null ? undefined : v;
|
|
248
234
|
};
|
|
249
|
-
var remove = function (element, key) {
|
|
235
|
+
var remove$3 = function (element, key) {
|
|
250
236
|
element.dom.removeAttribute(key);
|
|
251
237
|
};
|
|
252
238
|
|
|
@@ -254,20 +240,20 @@
|
|
|
254
240
|
var value = get$1(element, attr);
|
|
255
241
|
return value === undefined || value === '' ? [] : value.split(' ');
|
|
256
242
|
};
|
|
257
|
-
var add = function (element, attr, id) {
|
|
243
|
+
var add$2 = function (element, attr, id) {
|
|
258
244
|
var old = read(element, attr);
|
|
259
245
|
var nu = old.concat([id]);
|
|
260
246
|
set(element, attr, nu.join(' '));
|
|
261
247
|
return true;
|
|
262
248
|
};
|
|
263
|
-
var remove$
|
|
249
|
+
var remove$2 = function (element, attr, id) {
|
|
264
250
|
var nu = filter(read(element, attr), function (v) {
|
|
265
251
|
return v !== id;
|
|
266
252
|
});
|
|
267
253
|
if (nu.length > 0) {
|
|
268
254
|
set(element, attr, nu.join(' '));
|
|
269
255
|
} else {
|
|
270
|
-
remove(element, attr);
|
|
256
|
+
remove$3(element, attr);
|
|
271
257
|
}
|
|
272
258
|
return false;
|
|
273
259
|
};
|
|
@@ -275,17 +261,17 @@
|
|
|
275
261
|
var supports = function (element) {
|
|
276
262
|
return element.dom.classList !== undefined;
|
|
277
263
|
};
|
|
278
|
-
var get
|
|
264
|
+
var get = function (element) {
|
|
279
265
|
return read(element, 'class');
|
|
280
266
|
};
|
|
281
267
|
var add$1 = function (element, clazz) {
|
|
282
|
-
return add(element, 'class', clazz);
|
|
268
|
+
return add$2(element, 'class', clazz);
|
|
283
269
|
};
|
|
284
|
-
var remove$
|
|
285
|
-
return remove$
|
|
270
|
+
var remove$1 = function (element, clazz) {
|
|
271
|
+
return remove$2(element, 'class', clazz);
|
|
286
272
|
};
|
|
287
273
|
|
|
288
|
-
var add
|
|
274
|
+
var add = function (element, clazz) {
|
|
289
275
|
if (supports(element)) {
|
|
290
276
|
element.dom.classList.add(clazz);
|
|
291
277
|
} else {
|
|
@@ -293,17 +279,17 @@
|
|
|
293
279
|
}
|
|
294
280
|
};
|
|
295
281
|
var cleanClass = function (element) {
|
|
296
|
-
var classList = supports(element) ? element.dom.classList : get
|
|
282
|
+
var classList = supports(element) ? element.dom.classList : get(element);
|
|
297
283
|
if (classList.length === 0) {
|
|
298
|
-
remove(element, 'class');
|
|
284
|
+
remove$3(element, 'class');
|
|
299
285
|
}
|
|
300
286
|
};
|
|
301
|
-
var remove
|
|
287
|
+
var remove = function (element, clazz) {
|
|
302
288
|
if (supports(element)) {
|
|
303
289
|
var classList = element.dom.classList;
|
|
304
290
|
classList.remove(clazz);
|
|
305
291
|
} else {
|
|
306
|
-
remove$
|
|
292
|
+
remove$1(element, clazz);
|
|
307
293
|
}
|
|
308
294
|
cleanClass(element);
|
|
309
295
|
};
|
|
@@ -351,14 +337,14 @@
|
|
|
351
337
|
};
|
|
352
338
|
var charMapToRegExp = function (charMap, global) {
|
|
353
339
|
var regExp = '';
|
|
354
|
-
each
|
|
340
|
+
each(charMap, function (_value, key) {
|
|
355
341
|
regExp += key;
|
|
356
342
|
});
|
|
357
343
|
return new RegExp('[' + regExp + ']', global ? 'g' : '');
|
|
358
344
|
};
|
|
359
345
|
var charMapToSelector = function (charMap) {
|
|
360
346
|
var selector = '';
|
|
361
|
-
each
|
|
347
|
+
each(charMap, function (value) {
|
|
362
348
|
if (selector) {
|
|
363
349
|
selector += ',';
|
|
364
350
|
}
|
|
@@ -383,7 +369,7 @@
|
|
|
383
369
|
var result = [];
|
|
384
370
|
var dom = scope.dom;
|
|
385
371
|
var children = map(dom.childNodes, SugarElement.fromDom);
|
|
386
|
-
each(children, function (x) {
|
|
372
|
+
each$1(children, function (x) {
|
|
387
373
|
if (predicate(x)) {
|
|
388
374
|
result = result.concat([x]);
|
|
389
375
|
}
|
|
@@ -408,10 +394,10 @@
|
|
|
408
394
|
};
|
|
409
395
|
var show = function (editor, rootElm) {
|
|
410
396
|
var nodeList = filterDescendants(SugarElement.fromDom(rootElm), isMatch);
|
|
411
|
-
each(nodeList, function (n) {
|
|
397
|
+
each$1(nodeList, function (n) {
|
|
412
398
|
var parent = n.dom.parentNode;
|
|
413
399
|
if (isWrappedNbsp(parent)) {
|
|
414
|
-
add
|
|
400
|
+
add(SugarElement.fromDom(parent), nbspClass);
|
|
415
401
|
} else {
|
|
416
402
|
var withSpans = replaceWithSpans(editor.dom.encode(value(n)));
|
|
417
403
|
var div = editor.dom.create('div', null, withSpans);
|
|
@@ -425,9 +411,9 @@
|
|
|
425
411
|
};
|
|
426
412
|
var hide = function (editor, rootElm) {
|
|
427
413
|
var nodeList = editor.dom.select(selector, rootElm);
|
|
428
|
-
each(nodeList, function (node) {
|
|
414
|
+
each$1(nodeList, function (node) {
|
|
429
415
|
if (isWrappedNbsp(node)) {
|
|
430
|
-
remove
|
|
416
|
+
remove(SugarElement.fromDom(node), nbspClass);
|
|
431
417
|
} else {
|
|
432
418
|
editor.dom.remove(node, true);
|
|
433
419
|
}
|
|
@@ -459,7 +445,7 @@
|
|
|
459
445
|
editor.selection.moveToBookmark(bookmark);
|
|
460
446
|
};
|
|
461
447
|
|
|
462
|
-
var register = function (editor, toggleState) {
|
|
448
|
+
var register$1 = function (editor, toggleState) {
|
|
463
449
|
editor.addCommand('mceVisualChars', function () {
|
|
464
450
|
toggleVisualChars(editor, toggleState);
|
|
465
451
|
});
|
|
@@ -472,16 +458,16 @@
|
|
|
472
458
|
return editor.getParam('forced_root_block') !== false;
|
|
473
459
|
};
|
|
474
460
|
|
|
475
|
-
var setup = function (editor, toggleState) {
|
|
461
|
+
var setup$1 = function (editor, toggleState) {
|
|
476
462
|
editor.on('init', function () {
|
|
477
463
|
applyVisualChars(editor, toggleState);
|
|
478
464
|
});
|
|
479
465
|
};
|
|
480
466
|
|
|
481
|
-
var global
|
|
467
|
+
var global = tinymce.util.Tools.resolve('tinymce.util.Delay');
|
|
482
468
|
|
|
483
|
-
var setup
|
|
484
|
-
var debouncedToggle = global
|
|
469
|
+
var setup = function (editor, toggleState) {
|
|
470
|
+
var debouncedToggle = global.debounce(function () {
|
|
485
471
|
toggle(editor);
|
|
486
472
|
}, 300);
|
|
487
473
|
if (hasForcedRootBlock(editor)) {
|
|
@@ -506,33 +492,32 @@
|
|
|
506
492
|
};
|
|
507
493
|
};
|
|
508
494
|
};
|
|
509
|
-
var register
|
|
495
|
+
var register = function (editor, toggleState) {
|
|
496
|
+
var onAction = function () {
|
|
497
|
+
return editor.execCommand('mceVisualChars');
|
|
498
|
+
};
|
|
510
499
|
editor.ui.registry.addToggleButton('visualchars', {
|
|
511
500
|
tooltip: 'Show invisible characters',
|
|
512
501
|
icon: 'visualchars',
|
|
513
|
-
onAction:
|
|
514
|
-
return editor.execCommand('mceVisualChars');
|
|
515
|
-
},
|
|
502
|
+
onAction: onAction,
|
|
516
503
|
onSetup: toggleActiveState(editor, toggleState)
|
|
517
504
|
});
|
|
518
505
|
editor.ui.registry.addToggleMenuItem('visualchars', {
|
|
519
506
|
text: 'Show invisible characters',
|
|
520
507
|
icon: 'visualchars',
|
|
521
|
-
onAction:
|
|
522
|
-
return editor.execCommand('mceVisualChars');
|
|
523
|
-
},
|
|
508
|
+
onAction: onAction,
|
|
524
509
|
onSetup: toggleActiveState(editor, toggleState)
|
|
525
510
|
});
|
|
526
511
|
};
|
|
527
512
|
|
|
528
513
|
function Plugin () {
|
|
529
|
-
global.add('visualchars', function (editor) {
|
|
514
|
+
global$1.add('visualchars', function (editor) {
|
|
530
515
|
var toggleState = Cell(isEnabledByDefault(editor));
|
|
531
|
-
register(editor, toggleState);
|
|
532
516
|
register$1(editor, toggleState);
|
|
533
|
-
|
|
517
|
+
register(editor, toggleState);
|
|
534
518
|
setup(editor, toggleState);
|
|
535
|
-
|
|
519
|
+
setup$1(editor, toggleState);
|
|
520
|
+
return get$2(toggleState);
|
|
536
521
|
});
|
|
537
522
|
}
|
|
538
523
|
|
|
@@ -4,6 +4,6 @@
|
|
|
4
4
|
* For LGPL see License.txt in the project root for license information.
|
|
5
5
|
* For commercial licenses see https://www.tiny.cloud/
|
|
6
6
|
*
|
|
7
|
-
* Version: 5.
|
|
7
|
+
* Version: 5.10.3 (2022-02-09)
|
|
8
8
|
*/
|
|
9
|
-
!function(){"use strict";
|
|
9
|
+
!function(){"use strict";function n(t){return function(n){return typeof n===t}}function i(n){return function(){return n}}function t(n){return n}function e(){return l}var o,r=tinymce.util.Tools.resolve("tinymce.PluginManager"),u=function(n){return e=typeof(t=n),(null===t?"null":"object"==e&&(Array.prototype.isPrototypeOf(t)||t.constructor&&"Array"===t.constructor.name)?"array":"object"==e&&(String.prototype.isPrototypeOf(t)||t.constructor&&"String"===t.constructor.name)?"string":e)===o;var t,e},c=n("boolean"),a=n("number"),s=i(!(o="string")),f=i(!0),l={fold:function(n,t){return n()},isSome:s,isNone:f,getOr:t,getOrThunk:d,getOrDie:function(n){throw new Error(n||"error: getOrDie called on none.")},getOrNull:i(null),getOrUndefined:i(void 0),or:t,orThunk:d,map:e,each:function(){},bind:e,exists:s,forall:f,filter:function(){return l},toArray:function(){return[]},toString:i("none()")};function d(n){return n()}function m(n,t){for(var e=0,o=n.length;e<o;e++)t(n[e],e)}function v(n,t){for(var e=h(n),o=0,r=e.length;o<r;o++){var i=e[o];t(n[i],i)}}var g=function(e){function n(){return r}function t(n){return n(e)}var o=i(e),r={fold:function(n,t){return t(e)},isSome:f,isNone:s,getOr:o,getOrThunk:o,getOrDie:o,getOrNull:o,getOrUndefined:o,or:n,orThunk:n,map:function(n){return g(n(e))},each:function(n){n(e)},bind:t,exists:t,forall:t,filter:function(n){return n(e)?r:l},toArray:function(){return[e]},toString:function(){return"some("+e+")"}};return r},h=Object.keys;function p(n){return n.dom.nodeValue}function y(n,t,e){!function(n,t,e){if(!(u(e)||c(e)||a(e)))throw console.error("Invalid call to Attribute.set. Key ",t,":: Value ",e,":: Element ",n),new Error("Attribute value was not simple");n.setAttribute(t,e+"")}(n.dom,t,e)}function b(n,t){n.dom.removeAttribute(t)}function w(n,t){var e,o=null===(e=n.dom.getAttribute(t))?void 0:e;return void 0===o||""===o?[]:o.split(" ")}function T(n){return void 0!==n.dom.classList}function k(n,t){return i=t,0<(o=function(n){for(var t=[],e=0,o=n.length;e<o;e++){var r=n[e];r!==i&&t.push(r)}return t}(w(e=n,"class"))).length?y(e,"class",o.join(" ")):b(e,"class"),0;var e,i,o}function N(n,t){var e="";return v(n,function(n,t){e+=t}),new RegExp("["+e+"]",t?"g":"")}function A(n){return'<span data-mce-bogus="1" class="mce-'+H[n]+'">'+n+"</span>"}function O(n){var t=p(n);return j(n)&&void 0!==t&&_.test(t)}function C(n){return"span"===n.nodeName.toLowerCase()&&n.classList.contains("mce-nbsp-wrap")}function S(f,n){m(K(M.fromDom(n),O),function(n){var t,e,o,r,i,u=n.dom.parentNode;if(C(u))t=M.fromDom(u),e=U,T(t)?t.dom.classList.add(e):(r=e,i=w(o=t,"class").concat([r]),y(o,"class",i.join(" ")));else{for(var c,a=f.dom.encode(p(n)).replace(F,A),s=f.dom.create("div",null,a);c=s.lastChild;)f.dom.insertAfter(c,n.dom);f.dom.remove(n.dom)}})}function D(r,n){m(r.dom.select(I,n),function(n){var t,e,o;C(n)?(t=M.fromDom(n),e=U,T(t)?t.dom.classList.remove(e):k(t,e),0===(T(o=t)?o.dom.classList:w(o,"class")).length&&b(o,"class")):r.dom.remove(n,!0)})}function E(n){var t=n.getBody(),e=n.selection.getBookmark(),o=function(n,t){for(;n.parentNode;){if(n.parentNode===t)return n;n=n.parentNode}}(n.selection.getNode(),t);D(n,o=void 0!==o?o:t),S(n,o),n.selection.moveToBookmark(e)}function L(n,t){var e=n,o=t.get();e.fire("VisualChars",{state:o});var r=n.getBody();(!0===t.get()?S:D)(n,r)}function x(n,t){n.addCommand("mceVisualChars",function(){!function(n,t){t.set(!t.get());var e=n.selection.getBookmark();L(n,t),n.selection.moveToBookmark(e)}(n,t)})}function B(e,o){return function(t){function n(n){return t.setActive(n.state)}return t.setActive(o.get()),e.on("VisualChars",n),function(){return e.off("VisualChars",n)}}}"undefined"!=typeof window||Function("return this;")();function P(n){if(null==n)throw new Error("Node cannot be null or undefined");return{dom:n}}var V,j=function(n){return 3===n.dom.nodeType},M={fromHtml:function(n,t){var e=(t||document).createElement("div");if(e.innerHTML=n,!e.hasChildNodes()||1<e.childNodes.length)throw console.error("HTML does not have a single root node",n),new Error("HTML must have a single root node");return P(e.childNodes[0])},fromTag:function(n,t){var e=(t||document).createElement(n);return P(e)},fromText:function(n,t){var e=(t||document).createTextNode(n);return P(e)},fromDom:P,fromPoint:function(n,t,e){return(null==(o=n.dom.elementFromPoint(t,e))?l:g(o)).map(P);var o}},H={"\xa0":"nbsp","\xad":"shy"},_=N(H),F=N(H,!0),I=(V="",v(H,function(n){V&&(V+=","),V+="span.mce-"+n}),V),U="mce-nbsp",K=function(n,t){var e=[];return m(function(n,t){for(var e=n.length,o=new Array(e),r=0;r<e;r++){var i=n[r];o[r]=t(i,r)}return o}(n.dom.childNodes,M.fromDom),function(n){e=(e=t(n)?e.concat([n]):e).concat(K(n,t))}),e},R=tinymce.util.Tools.resolve("tinymce.util.Delay");r.add("visualchars",function(n){var t,e,o,r,i,u,c,a,s,f,l=(t=n.getParam("visualchars_default_state",!1),e=t,{get:function(){return e},set:function(n){e=n}});function d(){return o.execCommand("mceVisualChars")}return x(n,l),(o=n).ui.registry.addToggleButton("visualchars",{tooltip:"Show invisible characters",icon:"visualchars",onAction:d,onSetup:B(o,r=l)}),o.ui.registry.addToggleMenuItem("visualchars",{text:"Show invisible characters",icon:"visualchars",onAction:d,onSetup:B(o,r)}),i=n,u=l,c=R.debounce(function(){E(i)},300),!1!==i.getParam("forced_root_block")&&i.on("keydown",function(n){!0===u.get()&&(13===n.keyCode?E(i):c())}),i.on("remove",c.stop),s=l,(a=n).on("init",function(){L(a,s)}),f=l,{isEnabled:function(){return f.get()}}})}();
|