@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.
Files changed (172) hide show
  1. package/{esm2015/dangl-angular-material-shared.js → esm2020/dangl-angular-material-shared.mjs} +0 -0
  2. package/esm2020/lib/angular-material-shared.module.mjs +38 -0
  3. package/esm2020/lib/components/footer/footer.component.mjs +33 -0
  4. package/esm2020/lib/components/header/header.component.mjs +80 -0
  5. package/esm2020/lib/components/tiny-mce/tiny-mce.component.mjs +104 -0
  6. package/{esm2015/lib/models/footer-options.js → esm2020/lib/models/footer-options.mjs} +0 -0
  7. package/{esm2015/lib/utils/guid-generator.js → esm2020/lib/utils/guid-generator.mjs} +0 -0
  8. package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
  9. package/fesm2015/dangl-angular-material-shared.mjs +292 -0
  10. package/fesm2015/dangl-angular-material-shared.mjs.map +1 -0
  11. package/fesm2020/dangl-angular-material-shared.mjs +290 -0
  12. package/fesm2020/dangl-angular-material-shared.mjs.map +1 -0
  13. package/{dangl-angular-material-shared.d.ts → index.d.ts} +1 -0
  14. package/lib/angular-material-shared.module.d.ts +12 -0
  15. package/lib/components/footer/footer.component.d.ts +3 -0
  16. package/lib/components/header/header.component.d.ts +3 -0
  17. package/lib/components/tiny-mce/tiny-mce.component.d.ts +3 -0
  18. package/package.json +28 -16
  19. package/styles/material-style.scss +1 -1
  20. package/styles/material-theme.scss +4 -3
  21. package/styles/material-variables.scss +9 -8
  22. package/tinymce-assets/icons/default/icons.js +11 -1
  23. package/tinymce-assets/icons/default/icons.min.js +1 -1
  24. package/tinymce-assets/langs/cs.js +118 -75
  25. package/tinymce-assets/langs/cy.js +61 -18
  26. package/tinymce-assets/langs/da.js +60 -17
  27. package/tinymce-assets/langs/de.js +60 -17
  28. package/tinymce-assets/langs/eo.js +334 -138
  29. package/tinymce-assets/langs/es_ES.js +32 -2
  30. package/tinymce-assets/langs/fa.js +60 -17
  31. package/tinymce-assets/langs/fa_IR.js +31 -1
  32. package/tinymce-assets/langs/fr_FR.js +60 -17
  33. package/tinymce-assets/langs/hu_HU.js +60 -17
  34. package/tinymce-assets/langs/ja.js +60 -17
  35. package/tinymce-assets/langs/ko_KR.js +3 -3
  36. package/tinymce-assets/langs/nb_NO.js +61 -18
  37. package/tinymce-assets/langs/nl.js +60 -17
  38. package/tinymce-assets/langs/pl.js +60 -17
  39. package/tinymce-assets/langs/pt_BR.js +60 -17
  40. package/tinymce-assets/langs/pt_PT.js +60 -17
  41. package/tinymce-assets/langs/ro.js +60 -17
  42. package/tinymce-assets/langs/ro_RO.js +32 -2
  43. package/tinymce-assets/langs/ru.js +60 -17
  44. package/tinymce-assets/langs/ru_RU.js +445 -0
  45. package/tinymce-assets/langs/sl.js +59 -14
  46. package/tinymce-assets/langs/ta.js +60 -17
  47. package/tinymce-assets/langs/ta_IN.js +60 -17
  48. package/tinymce-assets/langs/th_TH.js +60 -17
  49. package/tinymce-assets/langs/tr_TR.js +81 -8
  50. package/tinymce-assets/langs/vi.js +179 -21
  51. package/tinymce-assets/langs/zh_CN.js +60 -17
  52. package/tinymce-assets/plugins/advlist/plugin.js +29 -48
  53. package/tinymce-assets/plugins/advlist/plugin.min.js +2 -2
  54. package/tinymce-assets/plugins/anchor/plugin.js +8 -8
  55. package/tinymce-assets/plugins/anchor/plugin.min.js +2 -2
  56. package/tinymce-assets/plugins/autolink/plugin.js +58 -30
  57. package/tinymce-assets/plugins/autolink/plugin.min.js +2 -2
  58. package/tinymce-assets/plugins/autoresize/plugin.js +25 -12
  59. package/tinymce-assets/plugins/autoresize/plugin.min.js +2 -2
  60. package/tinymce-assets/plugins/autosave/plugin.js +9 -9
  61. package/tinymce-assets/plugins/autosave/plugin.min.js +2 -2
  62. package/tinymce-assets/plugins/bbcode/plugin.js +6 -6
  63. package/tinymce-assets/plugins/bbcode/plugin.min.js +2 -2
  64. package/tinymce-assets/plugins/charmap/plugin.js +39 -49
  65. package/tinymce-assets/plugins/charmap/plugin.min.js +2 -2
  66. package/tinymce-assets/plugins/code/plugin.js +9 -10
  67. package/tinymce-assets/plugins/code/plugin.min.js +2 -2
  68. package/tinymce-assets/plugins/codesample/plugin.js +1921 -1914
  69. package/tinymce-assets/plugins/codesample/plugin.min.js +2 -2
  70. package/tinymce-assets/plugins/colorpicker/plugin.js +1 -2
  71. package/tinymce-assets/plugins/colorpicker/plugin.min.js +2 -2
  72. package/tinymce-assets/plugins/contextmenu/plugin.js +1 -2
  73. package/tinymce-assets/plugins/contextmenu/plugin.min.js +2 -2
  74. package/tinymce-assets/plugins/directionality/plugin.js +186 -53
  75. package/tinymce-assets/plugins/directionality/plugin.min.js +2 -2
  76. package/tinymce-assets/plugins/emoticons/js/emojiimages.js +1572 -1572
  77. package/tinymce-assets/plugins/emoticons/js/emojiimages.min.js +1 -1
  78. package/tinymce-assets/plugins/emoticons/js/emojis.js +1572 -1572
  79. package/tinymce-assets/plugins/emoticons/js/emojis.min.js +1 -1
  80. package/tinymce-assets/plugins/emoticons/plugin.js +231 -200
  81. package/tinymce-assets/plugins/emoticons/plugin.min.js +2 -2
  82. package/tinymce-assets/plugins/fullpage/plugin.js +42 -42
  83. package/tinymce-assets/plugins/fullpage/plugin.min.js +2 -2
  84. package/tinymce-assets/plugins/fullscreen/plugin.js +496 -129
  85. package/tinymce-assets/plugins/fullscreen/plugin.min.js +2 -2
  86. package/tinymce-assets/plugins/help/plugin.js +101 -122
  87. package/tinymce-assets/plugins/help/plugin.min.js +2 -2
  88. package/tinymce-assets/plugins/hr/plugin.js +9 -10
  89. package/tinymce-assets/plugins/hr/plugin.min.js +2 -2
  90. package/tinymce-assets/plugins/image/plugin.js +78 -73
  91. package/tinymce-assets/plugins/image/plugin.min.js +2 -2
  92. package/tinymce-assets/plugins/imagetools/plugin.js +484 -307
  93. package/tinymce-assets/plugins/imagetools/plugin.min.js +2 -2
  94. package/tinymce-assets/plugins/importcss/plugin.js +50 -51
  95. package/tinymce-assets/plugins/importcss/plugin.min.js +2 -2
  96. package/tinymce-assets/plugins/insertdatetime/plugin.js +22 -17
  97. package/tinymce-assets/plugins/insertdatetime/plugin.min.js +2 -2
  98. package/tinymce-assets/plugins/legacyoutput/plugin.js +8 -8
  99. package/tinymce-assets/plugins/legacyoutput/plugin.min.js +2 -2
  100. package/tinymce-assets/plugins/link/plugin.js +131 -125
  101. package/tinymce-assets/plugins/link/plugin.min.js +2 -2
  102. package/tinymce-assets/plugins/lists/plugin.js +256 -229
  103. package/tinymce-assets/plugins/lists/plugin.min.js +2 -2
  104. package/tinymce-assets/plugins/media/plugin.js +124 -147
  105. package/tinymce-assets/plugins/media/plugin.min.js +2 -2
  106. package/tinymce-assets/plugins/nonbreaking/plugin.js +13 -14
  107. package/tinymce-assets/plugins/nonbreaking/plugin.min.js +2 -2
  108. package/tinymce-assets/plugins/noneditable/plugin.js +6 -6
  109. package/tinymce-assets/plugins/noneditable/plugin.min.js +2 -2
  110. package/tinymce-assets/plugins/pagebreak/plugin.js +16 -17
  111. package/tinymce-assets/plugins/pagebreak/plugin.min.js +2 -2
  112. package/tinymce-assets/plugins/paste/plugin.js +196 -157
  113. package/tinymce-assets/plugins/paste/plugin.min.js +2 -2
  114. package/tinymce-assets/plugins/preview/plugin.js +13 -14
  115. package/tinymce-assets/plugins/preview/plugin.min.js +2 -2
  116. package/tinymce-assets/plugins/print/plugin.js +13 -14
  117. package/tinymce-assets/plugins/print/plugin.min.js +2 -2
  118. package/tinymce-assets/plugins/quickbars/plugin.js +33 -48
  119. package/tinymce-assets/plugins/quickbars/plugin.min.js +2 -2
  120. package/tinymce-assets/plugins/save/plugin.js +9 -8
  121. package/tinymce-assets/plugins/save/plugin.min.js +2 -2
  122. package/tinymce-assets/plugins/searchreplace/plugin.js +73 -70
  123. package/tinymce-assets/plugins/searchreplace/plugin.min.js +2 -2
  124. package/tinymce-assets/plugins/spellchecker/plugin.js +22 -23
  125. package/tinymce-assets/plugins/spellchecker/plugin.min.js +2 -2
  126. package/tinymce-assets/plugins/tabfocus/plugin.js +21 -20
  127. package/tinymce-assets/plugins/tabfocus/plugin.min.js +2 -2
  128. package/tinymce-assets/plugins/table/plugin.js +2831 -2264
  129. package/tinymce-assets/plugins/table/plugin.min.js +2 -2
  130. package/tinymce-assets/plugins/template/plugin.js +84 -70
  131. package/tinymce-assets/plugins/template/plugin.min.js +2 -2
  132. package/tinymce-assets/plugins/textcolor/plugin.js +1 -2
  133. package/tinymce-assets/plugins/textcolor/plugin.min.js +2 -2
  134. package/tinymce-assets/plugins/textpattern/plugin.js +76 -96
  135. package/tinymce-assets/plugins/textpattern/plugin.min.js +2 -2
  136. package/tinymce-assets/plugins/toc/plugin.js +31 -29
  137. package/tinymce-assets/plugins/toc/plugin.min.js +2 -2
  138. package/tinymce-assets/plugins/visualblocks/plugin.js +10 -11
  139. package/tinymce-assets/plugins/visualblocks/plugin.min.js +2 -2
  140. package/tinymce-assets/plugins/visualchars/plugin.js +52 -67
  141. package/tinymce-assets/plugins/visualchars/plugin.min.js +2 -2
  142. package/tinymce-assets/plugins/wordcount/plugin.js +67 -58
  143. package/tinymce-assets/plugins/wordcount/plugin.min.js +2 -2
  144. package/tinymce-assets/skins/ui/oxide/content.css +1 -1
  145. package/tinymce-assets/skins/ui/oxide/content.inline.css +1 -1
  146. package/tinymce-assets/skins/ui/oxide/content.inline.min.css +1 -1
  147. package/tinymce-assets/skins/ui/oxide/content.min.css +1 -1
  148. package/tinymce-assets/skins/ui/oxide/skin.css +35 -22
  149. package/tinymce-assets/skins/ui/oxide/skin.min.css +1 -1
  150. package/tinymce-assets/skins/ui/oxide/skin.shadowdom.css +7 -7
  151. package/tinymce-assets/skins/ui/oxide/skin.shadowdom.min.css +1 -1
  152. package/tinymce-assets/skins/ui/oxide-dark/content.css +1 -1
  153. package/tinymce-assets/skins/ui/oxide-dark/content.inline.css +1 -1
  154. package/tinymce-assets/skins/ui/oxide-dark/content.inline.min.css +1 -1
  155. package/tinymce-assets/skins/ui/oxide-dark/content.min.css +1 -1
  156. package/tinymce-assets/skins/ui/oxide-dark/skin.css +35 -22
  157. package/tinymce-assets/skins/ui/oxide-dark/skin.min.css +1 -1
  158. package/tinymce-assets/skins/ui/oxide-dark/skin.shadowdom.css +7 -7
  159. package/tinymce-assets/skins/ui/oxide-dark/skin.shadowdom.min.css +1 -1
  160. package/tinymce-assets/themes/mobile/theme.js +2798 -3255
  161. package/tinymce-assets/themes/mobile/theme.min.js +2 -2
  162. package/tinymce-assets/themes/silver/theme.js +25400 -25371
  163. package/tinymce-assets/themes/silver/theme.min.js +2 -2
  164. package/bundles/dangl-angular-material-shared.umd.js +0 -285
  165. package/bundles/dangl-angular-material-shared.umd.js.map +0 -1
  166. package/dangl-angular-material-shared.metadata.json +0 -1
  167. package/esm2015/lib/angular-material-shared.module.js +0 -25
  168. package/esm2015/lib/components/footer/footer.component.js +0 -27
  169. package/esm2015/lib/components/header/header.component.js +0 -67
  170. package/esm2015/lib/components/tiny-mce/tiny-mce.component.js +0 -100
  171. package/fesm2015/dangl-angular-material-shared.js +0 -259
  172. 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.8.2 (2021-06-23)
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$1 = tinymce.util.Tools.resolve('tinymce.dom.DOMUtils');
14
+ var global$2 = tinymce.util.Tools.resolve('tinymce.dom.DOMUtils');
15
15
 
16
- var global$2 = tinymce.util.Tools.resolve('tinymce.util.I18n');
16
+ var global$1 = tinymce.util.Tools.resolve('tinymce.util.I18n');
17
17
 
18
- var global$3 = tinymce.util.Tools.resolve('tinymce.util.Tools');
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$3.map(headers, function (h) {
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 i, minLevel = 9;
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$1.DOM.encode(title) + closeTag;
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$2.translate('Table of Contents'));
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
- html += '</li></ul><li>';
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 isEmptyOrOffscren = function (editor, nodes) {
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 (isEmptyOrOffscren(editor, $tocElm)) {
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$1 = function (editor) {
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: function () {
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: function () {
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.8.2 (2021-06-23)
7
+ * Version: 5.10.3 (2022-02-09)
8
8
  */
9
- !function(){"use strict";var e,n,t=tinymce.util.Tools.resolve("tinymce.PluginManager"),s=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),f=tinymce.util.Tools.resolve("tinymce.util.I18n"),c=tinymce.util.Tools.resolve("tinymce.util.Tools"),l=function(t){return t.getParam("toc_class","mce-toc")},m=function(t){var e=t.getParam("toc_header","h2");return/^h[1-6]$/.test(e)?e:"h2"},a=(e="mcetoc_",n=0,function(){var t=(new Date).getTime().toString(32);return e+t+(n++).toString(32)}),v=function(n){var t,o=l(n),e=m(n),r=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),i=n.$(r);return i.length&&/^h[1-9]$/i.test(e)&&(i=i.filter(function(t,e){return!n.dom.hasClass(e.parentNode,o)})),c.map(i,function(t){var e=t.id;return{id:e||a(),level:parseInt(t.nodeName.replace(/^H/i,""),10),title:n.$.text(t),element:t}})},u=function(t){var e,n,o,r,i,c,l,a="",u=v(t),d=function(t){for(var e=9,n=0;n<t.length;n++)if(t[n].level<e&&(e=t[n].level),1===e)return e;return e}(u)-1;if(!u.length)return"";for(a+=(i=m(t),c=f.translate("Table of Contents"),l="</"+i+">","<"+i+' contenteditable="true">'+s.DOM.encode(c)+l),e=0;e<u.length;e++){if((o=u[e]).element.id=o.id,r=u[e+1]&&u[e+1].level,d===o.level)a+="<li>";else for(n=d;n<o.level;n++)a+="<ul><li>";if(a+='<a href="#'+o.id+'">'+o.title+"</a>",r!==o.level&&r)for(n=o.level;r<n;n--)a+="</li></ul><li>";else a+="</li>",r||(a+="</ul>");d=o.level}return a},i=function(t){var e,n,o,r,i=l(t),c=t.$("."+i);o=t,!(r=c).length||0<o.dom.getParents(r[0],".mce-offscreen-selection").length?t.insertContent((n=u(e=t),'<div class="'+e.dom.encode(l(e))+'" contenteditable="false">'+n+"</div>")):d(t)},d=function(t){var e=l(t),n=t.$("."+e);n.length&&t.undoManager.transact(function(){n.html(u(t))})},o=function(n){return function(t){var e=function(){return t.setDisabled(n.mode.isReadOnly()||!(0<v(n).length))};return e(),n.on("LoadContent SetContent change",e),function(){return n.on("LoadContent SetContent change",e)}}},g=function(t){var e;t.ui.registry.addButton("toc",{icon:"toc",tooltip:"Table of contents",onAction:function(){return t.execCommand("mceInsertToc")},onSetup:o(t)}),t.ui.registry.addButton("tocupdate",{icon:"reload",tooltip:"Update",onAction:function(){return t.execCommand("mceUpdateToc")}}),t.ui.registry.addMenuItem("toc",{icon:"toc",text:"Table of contents",onAction:function(){return t.execCommand("mceInsertToc")},onSetup:o(t)}),t.ui.registry.addContextToolbar("toc",{items:"tocupdate",predicate:(e=t,function(t){return t&&e.dom.is(t,"."+l(e))&&e.getBody().contains(t)}),scope:"node",position:"node"})};t.add("toc",function(t){var e,n,o,r;(e=t).addCommand("mceInsertToc",function(){i(e)}),e.addCommand("mceUpdateToc",function(){d(e)}),g(t),o=(n=t).$,r=l(n),n.on("PreProcess",function(t){var e=o("."+r,t.node);e.length&&(e.removeAttr("contentEditable"),e.find("[contenteditable]").removeAttr("contentEditable"))}),n.on("SetContent",function(){var t=o("."+r);t.length&&(t.attr("contentEditable",!1),t.children(":first-child").attr("contentEditable",!0))})})}();
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.8.2 (2021-06-23)
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$1 = function (editor, enabledState) {
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: function () {
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: function () {
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$1(editor, enabledState);
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.8.2 (2021-06-23)
7
+ * Version: 5.10.3 (2022-02-09)
8
8
  */
9
- !function(){"use strict";var t=tinymce.util.Tools.resolve("tinymce.PluginManager"),r=function(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})},f=function(e,n){return function(o){o.setActive(n.get());var t=function(t){return o.setActive(t.state)};return e.on("VisualBlocks",t),function(){return e.off("VisualBlocks",t)}}};t.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}});i=a,(n=t).addCommand("mceVisualBlocks",function(){r(n,0,i)}),c=a,(s=t).ui.registry.addToggleButton("visualblocks",{icon:"visualblocks",tooltip:"Show blocks",onAction:function(){return s.execCommand("mceVisualBlocks")},onSetup:f(s,c)}),s.ui.registry.addToggleMenuItem("visualblocks",{text:"Show blocks",icon:"visualblocks",onAction:function(){return s.execCommand("mceVisualBlocks")},onSetup:f(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")&&r(u,0,l)})})}();
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.8.2 (2021-06-23)
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 = function (n) {
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: none,
110
- equals: eq,
111
- equals_: eq,
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$1 = function (obj, f) {
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
- var Global = typeof window !== 'undefined' ? window : Function('return this;')();
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$1 = function (t) {
213
+ var isType = function (t) {
228
214
  return function (element) {
229
215
  return type(element) === t;
230
216
  };
231
217
  };
232
- var isText = isType$1(TEXT);
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$1 = function (element, attr, id) {
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$2 = function (element) {
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$2 = function (element, clazz) {
285
- return remove$1(element, 'class', clazz);
270
+ var remove$1 = function (element, clazz) {
271
+ return remove$2(element, 'class', clazz);
286
272
  };
287
273
 
288
- var add$2 = function (element, clazz) {
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$2(element);
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$3 = function (element, clazz) {
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$2(element, clazz);
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$1(charMap, function (_value, key) {
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$1(charMap, function (value) {
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$2(SugarElement.fromDom(parent), nbspClass);
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$3(SugarElement.fromDom(node), nbspClass);
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$1 = tinymce.util.Tools.resolve('tinymce.util.Delay');
467
+ var global = tinymce.util.Tools.resolve('tinymce.util.Delay');
482
468
 
483
- var setup$1 = function (editor, toggleState) {
484
- var debouncedToggle = global$1.debounce(function () {
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$1 = function (editor, toggleState) {
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: function () {
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: function () {
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
- setup$1(editor, toggleState);
517
+ register(editor, toggleState);
534
518
  setup(editor, toggleState);
535
- return get(toggleState);
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.8.2 (2021-06-23)
7
+ * Version: 5.10.3 (2022-02-09)
8
8
  */
9
- !function(){"use strict";var r,n,t,e,o,u,i=tinymce.util.Tools.resolve("tinymce.PluginManager"),c=function(t){return function(n){return typeof n===t}},a=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)===r;var t,e},s=c("boolean"),f=c("number"),l=function(n){return function(){return n}},d=l(!(r="string")),m=l(!0),v=function(){return g},g=(n=function(n){return n.isNone()},{fold:function(n,t){return n()},is:d,isSome:d,isNone:m,getOr:e=function(n){return n},getOrThunk:t=function(n){return n()},getOrDie:function(n){throw new Error(n||"error: getOrDie called on none.")},getOrNull:l(null),getOrUndefined:l(undefined),or:e,orThunk:t,map:v,each:function(){},bind:v,exists:d,forall:m,filter:v,equals:n,equals_:n,toArray:function(){return[]},toString:l("none()")}),h=function(e){var n=l(e),t=function(){return o},r=function(n){return n(e)},o={fold:function(n,t){return t(e)},is:function(n){return e===n},isSome:m,isNone:d,getOr:n,getOrThunk:n,getOrDie:n,getOrNull:n,getOrUndefined:n,or:t,orThunk:t,map:function(n){return h(n(e))},each:function(n){n(e)},bind:r,exists:r,forall:r,filter:function(n){return n(e)?o:g},toArray:function(){return[e]},toString:function(){return"some("+e+")"},equals:function(n){return n.is(e)},equals_:function(n,t){return n.fold(d,function(n){return t(e,n)})}};return o},p=function(n){return null===n||n===undefined?g:h(n)},y=function(n,t){for(var e=0,r=n.length;e<r;e++){t(n[e],e)}},b=Object.keys,w=function(n,t){for(var e=b(n),r=0,o=e.length;r<o;r++){var u=e[r];t(n[u],u)}},N=("undefined"!=typeof window||Function("return this;")(),function(n){return n.dom.nodeValue}),T=(o=3,function(n){return n.dom.nodeType===o}),k=function(n,t,e){!function(n,t,e){if(!(a(e)||s(e)||f(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)},A=function(n,t){n.dom.removeAttribute(t)},O=function(n,t){var e,r,o=(e=t,null===(r=n.dom.getAttribute(e))?undefined:r);return o===undefined||""===o?[]:o.split(" ")},C=function(n){return n.dom.classList!==undefined},S=function(n,t){return o=t,u=O(e=n,r="class").concat([o]),k(e,r,u.join(" ")),!0;var e,r,o,u},D=function(n,t){return o=t,0<(u=function(n,t){for(var e=[],r=0,o=n.length;r<o;r++){var u=n[r];t(u,r)&&e.push(u)}return e}(O(e=n,r="class"),function(n){return n!==o})).length?k(e,r,u.join(" ")):A(e,r),!1;var e,r,o,u},E=function(n){0===(C(n)?n.dom.classList:O(n,"class")).length&&A(n,"class")},L=function(n){if(null===n||n===undefined)throw new Error("Node cannot be null or undefined");return{dom:n}},x={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 L(e.childNodes[0])},fromTag:function(n,t){var e=(t||document).createElement(n);return L(e)},fromText:function(n,t){var e=(t||document).createTextNode(n);return L(e)},fromDom:L,fromPoint:function(n,t,e){return p(n.dom.elementFromPoint(t,e)).map(L)}},V={"\xa0":"nbsp","\xad":"shy"},B=function(n,t){var e="";return w(n,function(n,t){e+=t}),new RegExp("["+e+"]",t?"g":"")},P=B(V),_=B(V,!0),j=(u="",w(V,function(n){u&&(u+=","),u+="span.mce-"+n}),u),M="mce-nbsp",q=function(n){return'<span data-mce-bogus="1" class="mce-'+V[n]+'">'+n+"</span>"},H=function(n){var t=N(n);return T(n)&&t!==undefined&&P.test(t)},F=function(n,t){var e=[],r=function(n,t){for(var e=n.length,r=new Array(e),o=0;o<e;o++){var u=n[o];r[o]=t(u,o)}return r}(n.dom.childNodes,x.fromDom);return y(r,function(n){t(n)&&(e=e.concat([n])),e=e.concat(F(n,t))}),e},I=function(n){return"span"===n.nodeName.toLowerCase()&&n.classList.contains("mce-nbsp-wrap")},U=function(c,n){var t=F(x.fromDom(n),H);y(t,function(n){var t,e,r=n.dom.parentNode;if(I(r))t=x.fromDom(r),e=M,C(t)?t.dom.classList.add(e):S(t,e);else{for(var o=c.dom.encode(N(n)).replace(_,q),u=c.dom.create("div",null,o),i=void 0;i=u.lastChild;)c.dom.insertAfter(i,n.dom);c.dom.remove(n.dom)}})},K=function(r,n){var t=r.dom.select(j,n);y(t,function(n){var t,e;I(n)?(t=x.fromDom(n),e=M,C(t)?t.dom.classList.remove(e):D(t,e),E(t)):r.dom.remove(n,!0)})},R=function(n){var t=n.getBody(),e=n.selection.getBookmark(),r=(r=function(n,t){for(;n.parentNode;){if(n.parentNode===t)return n;n=n.parentNode}}(n.selection.getNode(),t))!==undefined?r:t;K(n,r),U(n,r),n.selection.moveToBookmark(e)},z=function(n,t){var e,r;e=n,r=t.get(),e.fire("VisualChars",{state:r});var o=n.getBody();(!0===t.get()?U:K)(n,o)},G=function(n,t){n.addCommand("mceVisualChars",function(){!function(n,t){t.set(!t.get());var e=n.selection.getBookmark();z(n,t),n.selection.moveToBookmark(e)}(n,t)})},J=tinymce.util.Tools.resolve("tinymce.util.Delay"),Q=function(e,r){return function(t){t.setActive(r.get());var n=function(n){return t.setActive(n.state)};return e.on("VisualChars",n),function(){return e.off("VisualChars",n)}}};i.add("visualchars",function(n){var t,e,r,o,u,i,c,a,s,f,l=(t=n.getParam("visualchars_default_state",!1),e=t,{get:function(){return e},set:function(n){e=n}});return G(n,l),o=l,(r=n).ui.registry.addToggleButton("visualchars",{tooltip:"Show invisible characters",icon:"visualchars",onAction:function(){return r.execCommand("mceVisualChars")},onSetup:Q(r,o)}),r.ui.registry.addToggleMenuItem("visualchars",{text:"Show invisible characters",icon:"visualchars",onAction:function(){return r.execCommand("mceVisualChars")},onSetup:Q(r,o)}),u=n,i=l,c=J.debounce(function(){R(u)},300),!1!==u.getParam("forced_root_block")&&u.on("keydown",function(n){!0===i.get()&&(13===n.keyCode?R(u):c())}),u.on("remove",c.stop),s=l,(a=n).on("init",function(){z(a,s)}),f=l,{isEnabled:function(){return f.get()}}})}();
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()}}})}();