@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,84 +4,19 @@
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 DEFAULT_ID = 'tinymce.plugins.emoticons';
15
- var getEmoticonDatabase = function (editor) {
16
- return editor.getParam('emoticons_database', 'emojis', 'string');
17
- };
18
- var getEmoticonDatabaseUrl = function (editor, pluginUrl) {
19
- var database = getEmoticonDatabase(editor);
20
- return editor.getParam('emoticons_database_url', pluginUrl + '/js/' + database + editor.suffix + '.js', 'string');
21
- };
22
- var getEmoticonDatabaseId = function (editor) {
23
- return editor.getParam('emoticons_database_id', DEFAULT_ID, 'string');
24
- };
25
- var getAppendedEmoticons = function (editor) {
26
- return editor.getParam('emoticons_append', {}, 'object');
27
- };
28
- var getEmotionsImageUrl = function (editor) {
29
- return editor.getParam('emoticons_images_url', 'https://twemoji.maxcdn.com/v/13.0.1/72x72/', 'string');
30
- };
31
-
32
- var __assign = function () {
33
- __assign = Object.assign || function __assign(t) {
34
- for (var s, i = 1, n = arguments.length; i < n; i++) {
35
- s = arguments[i];
36
- for (var p in s)
37
- if (Object.prototype.hasOwnProperty.call(s, p))
38
- t[p] = s[p];
39
- }
40
- return t;
41
- };
42
- return __assign.apply(this, arguments);
43
- };
44
-
45
- var Cell = function (initial) {
46
- var value = initial;
47
- var get = function () {
48
- return value;
49
- };
50
- var set = function (v) {
51
- value = v;
52
- };
53
- return {
54
- get: get,
55
- set: set
14
+ var eq = function (t) {
15
+ return function (a) {
16
+ return t === a;
56
17
  };
57
18
  };
58
-
59
- var hasOwnProperty = Object.prototype.hasOwnProperty;
60
- var shallow = function (old, nu) {
61
- return nu;
62
- };
63
- var baseMerge = function (merger) {
64
- return function () {
65
- var objects = [];
66
- for (var _i = 0; _i < arguments.length; _i++) {
67
- objects[_i] = arguments[_i];
68
- }
69
- if (objects.length === 0) {
70
- throw new Error('Can\'t merge zero objects');
71
- }
72
- var ret = {};
73
- for (var j = 0; j < objects.length; j++) {
74
- var curObject = objects[j];
75
- for (var key in curObject) {
76
- if (hasOwnProperty.call(curObject, key)) {
77
- ret[key] = merger(ret[key], curObject[key]);
78
- }
79
- }
80
- }
81
- return ret;
82
- };
83
- };
84
- var merge = baseMerge(shallow);
19
+ var isNull = eq(null);
85
20
 
86
21
  var noop = function () {
87
22
  };
@@ -90,6 +25,9 @@
90
25
  return value;
91
26
  };
92
27
  };
28
+ var identity = function (x) {
29
+ return x;
30
+ };
93
31
  var never = constant(false);
94
32
  var always = constant(true);
95
33
 
@@ -97,20 +35,14 @@
97
35
  return NONE;
98
36
  };
99
37
  var NONE = function () {
100
- var eq = function (o) {
101
- return o.isNone();
102
- };
103
38
  var call = function (thunk) {
104
39
  return thunk();
105
40
  };
106
- var id = function (n) {
107
- return n;
108
- };
41
+ var id = identity;
109
42
  var me = {
110
43
  fold: function (n, _s) {
111
44
  return n();
112
45
  },
113
- is: never,
114
46
  isSome: never,
115
47
  isNone: always,
116
48
  getOr: id,
@@ -127,9 +59,9 @@
127
59
  bind: none,
128
60
  exists: never,
129
61
  forall: always,
130
- filter: none,
131
- equals: eq,
132
- equals_: eq,
62
+ filter: function () {
63
+ return none();
64
+ },
133
65
  toArray: function () {
134
66
  return [];
135
67
  },
@@ -149,9 +81,6 @@
149
81
  fold: function (n, s) {
150
82
  return s(a);
151
83
  },
152
- is: function (v) {
153
- return a === v;
154
- },
155
84
  isSome: always,
156
85
  isNone: never,
157
86
  getOr: constant_a,
@@ -178,14 +107,6 @@
178
107
  },
179
108
  toString: function () {
180
109
  return 'some(' + a + ')';
181
- },
182
- equals: function (o) {
183
- return o.is(a);
184
- },
185
- equals_: function (o, elementEq) {
186
- return o.fold(never, function (b) {
187
- return elementEq(a, b);
188
- });
189
110
  }
190
111
  };
191
112
  return me;
@@ -199,8 +120,89 @@
199
120
  from: from
200
121
  };
201
122
 
123
+ var exists = function (xs, pred) {
124
+ for (var i = 0, len = xs.length; i < len; i++) {
125
+ var x = xs[i];
126
+ if (pred(x, i)) {
127
+ return true;
128
+ }
129
+ }
130
+ return false;
131
+ };
132
+ var map$1 = function (xs, f) {
133
+ var len = xs.length;
134
+ var r = new Array(len);
135
+ for (var i = 0; i < len; i++) {
136
+ var x = xs[i];
137
+ r[i] = f(x, i);
138
+ }
139
+ return r;
140
+ };
141
+ var each$1 = function (xs, f) {
142
+ for (var i = 0, len = xs.length; i < len; i++) {
143
+ var x = xs[i];
144
+ f(x, i);
145
+ }
146
+ };
147
+
148
+ var Cell = function (initial) {
149
+ var value = initial;
150
+ var get = function () {
151
+ return value;
152
+ };
153
+ var set = function (v) {
154
+ value = v;
155
+ };
156
+ return {
157
+ get: get,
158
+ set: set
159
+ };
160
+ };
161
+
162
+ var last = function (fn, rate) {
163
+ var timer = null;
164
+ var cancel = function () {
165
+ if (!isNull(timer)) {
166
+ clearTimeout(timer);
167
+ timer = null;
168
+ }
169
+ };
170
+ var throttle = function () {
171
+ var args = [];
172
+ for (var _i = 0; _i < arguments.length; _i++) {
173
+ args[_i] = arguments[_i];
174
+ }
175
+ cancel();
176
+ timer = setTimeout(function () {
177
+ timer = null;
178
+ fn.apply(null, args);
179
+ }, rate);
180
+ };
181
+ return {
182
+ cancel: cancel,
183
+ throttle: throttle
184
+ };
185
+ };
186
+
187
+ var insertEmoticon = function (editor, ch) {
188
+ editor.insertContent(ch);
189
+ };
190
+
191
+ var __assign = function () {
192
+ __assign = Object.assign || function __assign(t) {
193
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
194
+ s = arguments[i];
195
+ for (var p in s)
196
+ if (Object.prototype.hasOwnProperty.call(s, p))
197
+ t[p] = s[p];
198
+ }
199
+ return t;
200
+ };
201
+ return __assign.apply(this, arguments);
202
+ };
203
+
202
204
  var keys = Object.keys;
203
- var hasOwnProperty$1 = Object.hasOwnProperty;
205
+ var hasOwnProperty = Object.hasOwnProperty;
204
206
  var each = function (obj, f) {
205
207
  var props = keys(obj);
206
208
  for (var k = 0, len = props.length; k < len; k++) {
@@ -226,7 +228,67 @@
226
228
  return r;
227
229
  };
228
230
  var has = function (obj, key) {
229
- return hasOwnProperty$1.call(obj, key);
231
+ return hasOwnProperty.call(obj, key);
232
+ };
233
+
234
+ var shallow = function (old, nu) {
235
+ return nu;
236
+ };
237
+ var baseMerge = function (merger) {
238
+ return function () {
239
+ var objects = [];
240
+ for (var _i = 0; _i < arguments.length; _i++) {
241
+ objects[_i] = arguments[_i];
242
+ }
243
+ if (objects.length === 0) {
244
+ throw new Error('Can\'t merge zero objects');
245
+ }
246
+ var ret = {};
247
+ for (var j = 0; j < objects.length; j++) {
248
+ var curObject = objects[j];
249
+ for (var key in curObject) {
250
+ if (has(curObject, key)) {
251
+ ret[key] = merger(ret[key], curObject[key]);
252
+ }
253
+ }
254
+ }
255
+ return ret;
256
+ };
257
+ };
258
+ var merge = baseMerge(shallow);
259
+
260
+ var singleton = function (doRevoke) {
261
+ var subject = Cell(Optional.none());
262
+ var revoke = function () {
263
+ return subject.get().each(doRevoke);
264
+ };
265
+ var clear = function () {
266
+ revoke();
267
+ subject.set(Optional.none());
268
+ };
269
+ var isSet = function () {
270
+ return subject.get().isSome();
271
+ };
272
+ var get = function () {
273
+ return subject.get();
274
+ };
275
+ var set = function (s) {
276
+ revoke();
277
+ subject.set(Optional.some(s));
278
+ };
279
+ return {
280
+ clear: clear,
281
+ isSet: isSet,
282
+ get: get,
283
+ set: set
284
+ };
285
+ };
286
+ var value = function () {
287
+ var subject = singleton(noop);
288
+ var on = function (f) {
289
+ return subject.get().each(f);
290
+ };
291
+ return __assign(__assign({}, subject), { on: on });
230
292
  };
231
293
 
232
294
  var checkRange = function (str, substr, start) {
@@ -239,11 +301,29 @@
239
301
  return checkRange(str, prefix, 0);
240
302
  };
241
303
 
242
- var global$1 = tinymce.util.Tools.resolve('tinymce.Resource');
304
+ var global$2 = tinymce.util.Tools.resolve('tinymce.Resource');
243
305
 
244
- var global$2 = tinymce.util.Tools.resolve('tinymce.util.Delay');
306
+ var global$1 = tinymce.util.Tools.resolve('tinymce.util.Delay');
245
307
 
246
- var global$3 = tinymce.util.Tools.resolve('tinymce.util.Promise');
308
+ var global = tinymce.util.Tools.resolve('tinymce.util.Promise');
309
+
310
+ var DEFAULT_ID = 'tinymce.plugins.emoticons';
311
+ var getEmoticonDatabase = function (editor) {
312
+ return editor.getParam('emoticons_database', 'emojis', 'string');
313
+ };
314
+ var getEmoticonDatabaseUrl = function (editor, pluginUrl) {
315
+ var database = getEmoticonDatabase(editor);
316
+ return editor.getParam('emoticons_database_url', pluginUrl + '/js/' + database + editor.suffix + '.js', 'string');
317
+ };
318
+ var getEmoticonDatabaseId = function (editor) {
319
+ return editor.getParam('emoticons_database_id', DEFAULT_ID, 'string');
320
+ };
321
+ var getAppendedEmoticons = function (editor) {
322
+ return editor.getParam('emoticons_append', {}, 'object');
323
+ };
324
+ var getEmotionsImageUrl = function (editor) {
325
+ return editor.getParam('emoticons_images_url', 'https://twemoji.maxcdn.com/v/13.0.1/72x72/', 'string');
326
+ };
247
327
 
248
328
  var ALL_CATEGORY = 'All';
249
329
  var categoryNameMap = {
@@ -270,8 +350,8 @@
270
350
  });
271
351
  };
272
352
  var initDatabase = function (editor, databaseUrl, databaseId) {
273
- var categories = Cell(Optional.none());
274
- var all = Cell(Optional.none());
353
+ var categories = value();
354
+ var all = value();
275
355
  var emojiImagesUrl = getEmotionsImageUrl(editor);
276
356
  var getEmoji = function (lib) {
277
357
  if (startsWith(lib.char, '<img')) {
@@ -296,17 +376,17 @@
296
376
  cats[entry.category] = current.concat([entry]);
297
377
  everything.push(entry);
298
378
  });
299
- categories.set(Optional.some(cats));
300
- all.set(Optional.some(everything));
379
+ categories.set(cats);
380
+ all.set(everything);
301
381
  };
302
382
  editor.on('init', function () {
303
- global$1.load(databaseId, databaseUrl).then(function (emojis) {
383
+ global$2.load(databaseId, databaseUrl).then(function (emojis) {
304
384
  var userEmojis = getUserDefinedEmoticons(editor);
305
385
  processEmojis(merge(emojis, userEmojis));
306
386
  }, function (err) {
307
387
  console.log('Failed to load emoticons: ' + err);
308
- categories.set(Optional.some({}));
309
- all.set(Optional.some([]));
388
+ categories.set({});
389
+ all.set([]);
310
390
  });
311
391
  });
312
392
  var listCategory = function (category) {
@@ -325,19 +405,19 @@
325
405
  };
326
406
  var waitForLoad = function () {
327
407
  if (hasLoaded()) {
328
- return global$3.resolve(true);
408
+ return global.resolve(true);
329
409
  } else {
330
- return new global$3(function (resolve, reject) {
410
+ return new global(function (resolve, reject) {
331
411
  var numRetries = 15;
332
- var interval = global$2.setInterval(function () {
412
+ var interval = global$1.setInterval(function () {
333
413
  if (hasLoaded()) {
334
- global$2.clearInterval(interval);
414
+ global$1.clearInterval(interval);
335
415
  resolve(true);
336
416
  } else {
337
417
  numRetries--;
338
418
  if (numRetries < 0) {
339
419
  console.log('Could not load emojis from url: ' + databaseUrl);
340
- global$2.clearInterval(interval);
420
+ global$1.clearInterval(interval);
341
421
  reject(false);
342
422
  }
343
423
  }
@@ -346,7 +426,7 @@
346
426
  }
347
427
  };
348
428
  var hasLoaded = function () {
349
- return categories.get().isSome() && all.get().isSome();
429
+ return categories.isSet() && all.isSet();
350
430
  };
351
431
  return {
352
432
  listCategories: listCategories,
@@ -357,42 +437,6 @@
357
437
  };
358
438
  };
359
439
 
360
- var exists = function (xs, pred) {
361
- for (var i = 0, len = xs.length; i < len; i++) {
362
- var x = xs[i];
363
- if (pred(x, i)) {
364
- return true;
365
- }
366
- }
367
- return false;
368
- };
369
- var map$1 = function (xs, f) {
370
- var len = xs.length;
371
- var r = new Array(len);
372
- for (var i = 0; i < len; i++) {
373
- var x = xs[i];
374
- r[i] = f(x, i);
375
- }
376
- return r;
377
- };
378
- var each$1 = function (xs, f) {
379
- for (var i = 0, len = xs.length; i < len; i++) {
380
- var x = xs[i];
381
- f(x, i);
382
- }
383
- };
384
-
385
- var setup = function (editor) {
386
- editor.on('PreInit', function () {
387
- editor.parser.addAttributeFilter('data-emoticon', function (nodes) {
388
- each$1(nodes, function (node) {
389
- node.attr('data-mce-resize', 'false');
390
- node.attr('data-mce-placeholder', '1');
391
- });
392
- });
393
- });
394
- };
395
-
396
440
  var emojiMatches = function (emoji, lowerCasePattern) {
397
441
  return contains(emoji.title.toLowerCase(), lowerCasePattern) || exists(emoji.keywords, function (k) {
398
442
  return contains(k.toLowerCase(), lowerCasePattern);
@@ -423,56 +467,6 @@
423
467
  return matches;
424
468
  };
425
469
 
426
- var init = function (editor, database) {
427
- editor.ui.registry.addAutocompleter('emoticons', {
428
- ch: ':',
429
- columns: 'auto',
430
- minChars: 2,
431
- fetch: function (pattern, maxResults) {
432
- return database.waitForLoad().then(function () {
433
- var candidates = database.listAll();
434
- return emojisFrom(candidates, pattern, Optional.some(maxResults));
435
- });
436
- },
437
- onAction: function (autocompleteApi, rng, value) {
438
- editor.selection.setRng(rng);
439
- editor.insertContent(value);
440
- autocompleteApi.hide();
441
- }
442
- });
443
- };
444
-
445
- var last = function (fn, rate) {
446
- var timer = null;
447
- var cancel = function () {
448
- if (timer !== null) {
449
- clearTimeout(timer);
450
- timer = null;
451
- }
452
- };
453
- var throttle = function () {
454
- var args = [];
455
- for (var _i = 0; _i < arguments.length; _i++) {
456
- args[_i] = arguments[_i];
457
- }
458
- if (timer !== null) {
459
- clearTimeout(timer);
460
- }
461
- timer = setTimeout(function () {
462
- fn.apply(null, args);
463
- timer = null;
464
- }, rate);
465
- };
466
- return {
467
- cancel: cancel,
468
- throttle: throttle
469
- };
470
- };
471
-
472
- var insertEmoticon = function (editor, ch) {
473
- editor.insertContent(ch);
474
- };
475
-
476
470
  var patternName = 'pattern';
477
471
  var open = function (editor, database) {
478
472
  var initialState = {
@@ -573,9 +567,45 @@
573
567
  }
574
568
  };
575
569
 
576
- var register = function (editor, database) {
577
- var onAction = function () {
570
+ var register$1 = function (editor, database) {
571
+ editor.addCommand('mceEmoticons', function () {
578
572
  return open(editor, database);
573
+ });
574
+ };
575
+
576
+ var setup = function (editor) {
577
+ editor.on('PreInit', function () {
578
+ editor.parser.addAttributeFilter('data-emoticon', function (nodes) {
579
+ each$1(nodes, function (node) {
580
+ node.attr('data-mce-resize', 'false');
581
+ node.attr('data-mce-placeholder', '1');
582
+ });
583
+ });
584
+ });
585
+ };
586
+
587
+ var init = function (editor, database) {
588
+ editor.ui.registry.addAutocompleter('emoticons', {
589
+ ch: ':',
590
+ columns: 'auto',
591
+ minChars: 2,
592
+ fetch: function (pattern, maxResults) {
593
+ return database.waitForLoad().then(function () {
594
+ var candidates = database.listAll();
595
+ return emojisFrom(candidates, pattern, Optional.some(maxResults));
596
+ });
597
+ },
598
+ onAction: function (autocompleteApi, rng, value) {
599
+ editor.selection.setRng(rng);
600
+ editor.insertContent(value);
601
+ autocompleteApi.hide();
602
+ }
603
+ });
604
+ };
605
+
606
+ var register = function (editor) {
607
+ var onAction = function () {
608
+ return editor.execCommand('mceEmoticons');
579
609
  };
580
610
  editor.ui.registry.addButton('emoticons', {
581
611
  tooltip: 'Emoticons',
@@ -590,11 +620,12 @@
590
620
  };
591
621
 
592
622
  function Plugin () {
593
- global.add('emoticons', function (editor, pluginUrl) {
623
+ global$3.add('emoticons', function (editor, pluginUrl) {
594
624
  var databaseUrl = getEmoticonDatabaseUrl(editor, pluginUrl);
595
625
  var databaseId = getEmoticonDatabaseId(editor);
596
626
  var database = initDatabase(editor, databaseUrl, databaseId);
597
- register(editor, database);
627
+ register$1(editor, database);
628
+ register(editor);
598
629
  init(editor, database);
599
630
  setup(editor);
600
631
  });
@@ -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 u,t,n,e,r=tinymce.util.Tools.resolve("tinymce.PluginManager"),o=function(){return(o=Object.assign||function(t){for(var n,e=1,r=arguments.length;e<r;e++)for(var o in n=arguments[e])Object.prototype.hasOwnProperty.call(n,o)&&(t[o]=n[o]);return t}).apply(this,arguments)},m=function(t){var n=t;return{get:function(){return n},set:function(t){n=t}}},a=Object.prototype.hasOwnProperty,c=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];if(0===t.length)throw new Error("Can't merge zero objects");for(var e={},r=0;r<t.length;r++){var o=t[r];for(var i in o)a.call(o,i)&&(e[i]=u(e[i],o[i]))}return e},i=function(t){return function(){return t}},l=i(!(u=function(t,n){return n})),s=i(!0),f=function(){return g},g=(t=function(t){return t.isNone()},{fold:function(t,n){return t()},is:l,isSome:l,isNone:s,getOr:e=function(t){return t},getOrThunk:n=function(t){return t()},getOrDie:function(t){throw new Error(t||"error: getOrDie called on none.")},getOrNull:i(null),getOrUndefined:i(undefined),or:e,orThunk:n,map:f,each:function(){},bind:f,exists:l,forall:s,filter:f,equals:t,equals_:t,toArray:function(){return[]},toString:i("none()")}),d=function(e){var t=i(e),n=function(){return o},r=function(t){return t(e)},o={fold:function(t,n){return n(e)},is:function(t){return e===t},isSome:s,isNone:l,getOr:t,getOrThunk:t,getOrDie:t,getOrNull:t,getOrUndefined:t,or:n,orThunk:n,map:function(t){return d(t(e))},each:function(t){t(e)},bind:r,exists:r,forall:r,filter:function(t){return t(e)?o:g},toArray:function(){return[e]},toString:function(){return"some("+e+")"},equals:function(t){return t.is(e)},equals_:function(t,n){return t.fold(l,function(t){return n(e,t)})}};return o},h={some:d,none:f,from:function(t){return null===t||t===undefined?g:d(t)}},y=Object.keys,v=Object.hasOwnProperty,p=function(t,n){for(var e=y(t),r=0,o=e.length;r<o;r++){var i=e[r];n(t[i],i)}},b=function(t,r){var o={};return p(t,function(t,n){var e=r(t,n);o[e.k]=e.v}),o},w=function(t,n){return-1!==t.indexOf(n)},O=tinymce.util.Tools.resolve("tinymce.Resource"),C=tinymce.util.Tools.resolve("tinymce.util.Delay"),j=tinymce.util.Tools.resolve("tinymce.util.Promise"),k="All",_={symbols:"Symbols",people:"People",animals_and_nature:"Animals and Nature",food_and_drink:"Food and Drink",activity:"Activity",travel_and_places:"Travel and Places",objects:"Objects",flags:"Flags",user:"User Defined"},A=function(t,n){return e=t,r=n,v.call(e,r)?t[n]:n;var e,r},T=function(t){var e,n=t.getParam("emoticons_append",{},"object");return e=function(t){return o({keywords:[],category:"user"},t)},b(n,function(t,n){return{k:n,v:e(t,n)}})},P=function(e,o,t){var r=m(h.none()),n=m(h.none()),f=e.getParam("emoticons_images_url","https://twemoji.maxcdn.com/v/13.0.1/72x72/","string"),i=function(t){var l={},s=[];p(t,function(t,n){var e,r,o,i,u,a={title:n,keywords:t.keywords,"char":(r=(e=t)["char"],u=0,i="<img",(o=r).length>=i.length&&o.substr(u,u+i.length)===i?e["char"].replace(/src="([^"]+)"/,function(t,n){return'src="'+f+n+'"'}):e["char"]),category:A(_,t.category)},c=l[a.category]!==undefined?l[a.category]:[];l[a.category]=c.concat([a]),s.push(a)}),r.set(h.some(l)),n.set(h.some(s))};e.on("init",function(){O.load(t,o).then(function(t){var n=T(e);i(c(t,n))},function(t){console.log("Failed to load emoticons: "+t),r.set(h.some({})),n.set(h.some([]))})});var u=function(){return n.get().getOr([])},a=function(){return r.get().isSome()&&n.get().isSome()};return{listCategories:function(){return[k].concat(y(r.get().getOr({})))},hasLoaded:a,waitForLoad:function(){return a()?j.resolve(!0):new j(function(t,n){var e=15,r=C.setInterval(function(){a()?(C.clearInterval(r),t(!0)):--e<0&&(console.log("Could not load emojis from url: "+o),C.clearInterval(r),n(!1))},100)})},listAll:u,listCategory:function(n){return n===k?u():r.get().bind(function(t){return h.from(t[n])}).getOr([])}}},x=function(t,n,e){for(var r=[],o=n.toLowerCase(),i=e.fold(function(){return l},function(n){return function(t){return n<=t}}),u=0;u<t.length&&(0!==n.length&&!function(t,n){return w(t.title.toLowerCase(),n)||function(t,n){for(var e=0,r=t.length;e<r;e++){if(n(t[e],e))return!0}return!1}(t.keywords,function(t){return w(t.toLowerCase(),n)})}(t[u],o)||(r.push({value:t[u]["char"],text:t[u].title,icon:t[u]["char"]}),!i(r.length)));u++);return r},D="pattern",L=function(o,u){var e,r,i,t={pattern:"",results:x(u.listAll(),"",h.some(300))},a=m(k),c=(e=function(t){var n,e,r,o,i;e=(n=t).getData(),r=a.get(),o=u.listCategory(r),i=x(o,e[D],r===k?h.some(300):h.none()),n.setData({results:i})},r=200,i=null,{cancel:function(){null!==i&&(clearTimeout(i),i=null)},throttle:function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];null!==i&&clearTimeout(i),i=setTimeout(function(){e.apply(null,t),i=null},r)}}),n={label:"Search",type:"input",name:D},l={type:"collection",name:"results"},s=function(){return{title:"Emoticons",size:"normal",body:{type:"tabpanel",tabs:function(t,n){for(var e=t.length,r=new Array(e),o=0;o<e;o++){var i=t[o];r[o]=n(i,o)}return r}(u.listCategories(),function(t){return{title:t,name:t,items:[n,l]}})},initialData:t,onTabChange:function(t,n){a.set(n.newTabName),c.throttle(t)},onChange:c.throttle,onAction:function(t,n){var e,r;"results"===n.name&&(e=o,r=n.value,e.insertContent(r),t.close())},buttons:[{type:"cancel",text:"Close",primary:!0}]}},f=o.windowManager.open(s());f.focus(D),u.hasLoaded()||(f.block("Loading emoticons..."),u.waitForLoad().then(function(){f.redial(s()),c.throttle(f),f.focus(D),f.unblock()})["catch"](function(t){f.redial({title:"Emoticons",body:{type:"panel",items:[{type:"alertbanner",level:"error",icon:"warning",text:"<p>Could not load emoticons</p>"}]},buttons:[{type:"cancel",text:"Close",primary:!0}],initialData:{pattern:"",results:[]}}),f.focus(D),f.unblock()}))};r.add("emoticons",function(t,n){var e,r,o,i,u,a,c,l,s,f=(r=n,o=(e=t).getParam("emoticons_database","emojis","string"),e.getParam("emoticons_database_url",r+"/js/"+o+e.suffix+".js","string")),m=t.getParam("emoticons_database_id","tinymce.plugins.emoticons","string"),g=P(t,f,m);u=g,a=function(){return L(i,u)},(i=t).ui.registry.addButton("emoticons",{tooltip:"Emoticons",icon:"emoji",onAction:a}),i.ui.registry.addMenuItem("emoticons",{text:"Emoticons...",icon:"emoji",onAction:a}),l=g,(c=t).ui.registry.addAutocompleter("emoticons",{ch:":",columns:"auto",minChars:2,fetch:function(n,e){return l.waitForLoad().then(function(){var t=l.listAll();return x(t,n,h.some(e))})},onAction:function(t,n,e){c.selection.setRng(n),c.insertContent(e),t.hide()}}),(s=t).on("PreInit",function(){s.parser.addAttributeFilter("data-emoticon",function(t){!function(t,n){for(var e=0,r=t.length;e<r;e++){n(t[e],e)}}(t,function(t){t.attr("data-mce-resize","false"),t.attr("data-mce-placeholder","1")})})})})}();
9
+ !function(){"use strict";function r(){}function i(t){return function(){return t}}function t(t){return t}function n(){return c}var m,e=tinymce.util.Tools.resolve("tinymce.PluginManager"),l=i(!1),a=i(!(m=null)),c={fold:function(t,n){return t()},isSome:l,isNone:a,getOr:t,getOrThunk:o,getOrDie:function(t){throw new Error(t||"error: getOrDie called on none.")},getOrNull:i(null),getOrUndefined:i(void 0),or:t,orThunk:o,map:n,each:r,bind:n,exists:l,forall:a,filter:function(){return c},toArray:function(){return[]},toString:i("none()")};function o(t){return t()}function g(t){var n=t;return{get:function(){return n},set:function(t){n=t}}}function d(t,n){for(var e=k(t),o=0,r=e.length;o<r;o++){var i=e[o];n(t[i],i)}}function h(t,n){return j.call(t,n)}function s(){var t,n,e=(t=r,n=g(O.none()),{clear:function(){o(),n.set(O.none())},isSet:function(){return n.get().isSome()},get:function(){return n.get()},set:function(t){o(),n.set(O.some(t))}});function o(){return n.get().each(t)}return C(C({},e),{on:function(t){return e.get().each(t)}})}function f(t,n){return-1!==t.indexOf(n)}function v(i,r,t){var a=s(),c=s(),f=i.getParam("emoticons_images_url","https://twemoji.maxcdn.com/v/13.0.1/72x72/","string");i.on("init",function(){_.load(t,r).then(function(t){var n,e,o,l,s,r=(n=i.getParam("emoticons_append",{},"object"),e=function(t){return C({keywords:[],category:"user"},t)},A(n,function(t,n){return{k:n,v:e(t)}}));o=w(t,r),l={},s=[],d(o,function(t,n){var e,o,r,i,a,c={title:n,keywords:t.keywords,char:(i=(r=t).char).length>=(a="<img").length&&i.substr(0,0+a.length)===a?r.char.replace(/src="([^"]+)"/,function(t,n){return'src="'+f+n+'"'}):r.char,category:h(e=D,o=t.category)?e[o]:o},u=void 0!==l[c.category]?l[c.category]:[];l[c.category]=u.concat([c]),s.push(c)}),a.set(l),c.set(s)},function(t){console.log("Failed to load emoticons: "+t),a.set({}),c.set([])})});function e(){return c.get().getOr([])}function u(){return a.isSet()&&c.isSet()}return{listCategories:function(){return[P].concat(k(a.get().getOr({})))},hasLoaded:u,waitForLoad:function(){return u()?x.resolve(!0):new x(function(t,n){var e=15,o=T.setInterval(function(){u()?(T.clearInterval(o),t(!0)):--e<0&&(console.log("Could not load emojis from url: "+r),T.clearInterval(o),n(!1))},100)})},listAll:e,listCategory:function(n){return n===P?e():a.get().bind(function(t){return O.from(t[n])}).getOr([])}}}function y(t,n,e){for(var o,r,i=[],a=n.toLowerCase(),c=e.fold(function(){return l},function(n){return function(t){return n<=t}}),u=0;u<t.length&&(0!==n.length&&(o=t[u],r=a,!f(o.title.toLowerCase(),r)&&!function(t){for(var n=0,e=t.length;n<e;n++)if(f(t[n].toLowerCase(),r))return 1}(o.keywords))||(i.push({value:t[u].char,text:t[u].title,icon:t[u].char}),!c(i.length)));u++);return i}function p(o,i){var e,r,t={pattern:"",results:y(i.listAll(),"",O.some(300))},a=g(P),c=(e=function(t){var n,e=(n=t).getData(),o=a.get(),r=y(i.listCategory(o),e[S],o===P?O.some(300):O.none());n.setData({results:r})},r=null,{cancel:u,throttle:function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];u(),r=setTimeout(function(){r=null,e.apply(null,t)},200)}});function u(){m===r||(clearTimeout(r),r=null)}function n(){return{title:"Emoticons",size:"normal",body:{type:"tabpanel",tabs:function(t){for(var n=t.length,e=new Array(n),o=0;o<n;o++){var r=t[o];e[o]={title:r,name:r,items:[l,s]}}return e}(i.listCategories())},initialData:t,onTabChange:function(t,n){a.set(n.newTabName),c.throttle(t)},onChange:c.throttle,onAction:function(t,n){var e;"results"===n.name&&(e=n.value,o.insertContent(e),t.close())},buttons:[{type:"cancel",text:"Close",primary:!0}]}}var l={label:"Search",type:"input",name:S},s={type:"collection",name:"results"},f=o.windowManager.open(n());f.focus(S),i.hasLoaded()||(f.block("Loading emoticons..."),i.waitForLoad().then(function(){f.redial(n()),c.throttle(f),f.focus(S),f.unblock()}).catch(function(t){f.redial({title:"Emoticons",body:{type:"panel",items:[{type:"alertbanner",level:"error",icon:"warning",text:"<p>Could not load emoticons</p>"}]},buttons:[{type:"cancel",text:"Close",primary:!0}],initialData:{pattern:"",results:[]}}),f.focus(S),f.unblock()}))}function b(t){t.on("PreInit",function(){t.parser.addAttributeFilter("data-emoticon",function(t){!function(t){for(var n,e=0,o=t.length;e<o;e++)(n=t[e]).attr("data-mce-resize","false"),n.attr("data-mce-placeholder","1")}(t)})})}function w(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];if(0===t.length)throw new Error("Can't merge zero objects");for(var e={},o=0;o<t.length;o++){var r,i=t[o];for(r in i)h(i,r)&&(e[r]=(e[r],i[r]))}return e}var u=function(e){function t(){return r}function n(t){return t(e)}var o=i(e),r={fold:function(t,n){return n(e)},isSome:a,isNone:l,getOr:o,getOrThunk:o,getOrDie:o,getOrNull:o,getOrUndefined:o,or:t,orThunk:t,map:function(t){return u(t(e))},each:function(t){t(e)},bind:n,exists:n,forall:n,filter:function(t){return t(e)?r:c},toArray:function(){return[e]},toString:function(){return"some("+e+")"}};return r},O={some:u,none:n,from:function(t){return null==t?c:u(t)}},C=function(){return(C=Object.assign||function(t){for(var n,e=1,o=arguments.length;e<o;e++)for(var r in n=arguments[e])Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r]);return t}).apply(this,arguments)},k=Object.keys,j=Object.hasOwnProperty,A=function(t,o){var r={};return d(t,function(t,n){var e=o(t,n);r[e.k]=e.v}),r},_=tinymce.util.Tools.resolve("tinymce.Resource"),T=tinymce.util.Tools.resolve("tinymce.util.Delay"),x=tinymce.util.Tools.resolve("tinymce.util.Promise"),P="All",D={symbols:"Symbols",people:"People",animals_and_nature:"Animals and Nature",food_and_drink:"Food and Drink",activity:"Activity",travel_and_places:"Travel and Places",objects:"Objects",flags:"Flags",user:"User Defined"},S="pattern";e.add("emoticons",function(t,n){var e,o,r,i,a,c,u,l,s=(o=n,r=(e=t).getParam("emoticons_database","emojis","string"),e.getParam("emoticons_database_url",o+"/js/"+r+e.suffix+".js","string")),f=t.getParam("emoticons_database_id","tinymce.plugins.emoticons","string"),m=v(t,s,f);function g(){return c.execCommand("mceEmoticons")}a=m,(i=t).addCommand("mceEmoticons",function(){return p(i,a)}),(c=t).ui.registry.addButton("emoticons",{tooltip:"Emoticons",icon:"emoji",onAction:g}),c.ui.registry.addMenuItem("emoticons",{text:"Emoticons...",icon:"emoji",onAction:g}),l=m,(u=t).ui.registry.addAutocompleter("emoticons",{ch:":",columns:"auto",minChars:2,fetch:function(t,n){return l.waitForLoad().then(function(){return y(l.listAll(),t,O.some(n))})},onAction:function(t,n,e){u.selection.setRng(n),u.insertContent(e),t.hide()}}),b(t)})}();